NetworkPkg/Application/IpsecConfig/PolicyEntryOperation.c File Reference


Functions

EFI_STATUS CreateSpdSelector (OUT EFI_IPSEC_SPD_SELECTOR *Selector, IN LIST_ENTRY *ParamPackage, IN OUT UINT32 *Mask)
EFI_STATUS CreateSpdEntry (OUT EFI_IPSEC_SPD_SELECTOR **Selector, OUT EFI_IPSEC_SPD_DATA **Data, IN LIST_ENTRY *ParamPackage, OUT UINT32 *Mask, IN BOOLEAN CreateNew)
EFI_STATUS CreateSadEntry (OUT EFI_IPSEC_SA_ID **SaId, OUT EFI_IPSEC_SA_DATA2 **Data, IN LIST_ENTRY *ParamPackage, OUT UINT32 *Mask, IN BOOLEAN CreateNew)
EFI_STATUS CreatePadEntry (OUT EFI_IPSEC_PAD_ID **PadId, OUT EFI_IPSEC_PAD_DATA **Data, IN LIST_ENTRY *ParamPackage, OUT UINT32 *Mask, IN BOOLEAN CreateNew)
EFI_STATUS CombineSpdEntry (IN OUT EFI_IPSEC_SPD_SELECTOR *OldSelector, IN OUT EFI_IPSEC_SPD_DATA *OldData, IN EFI_IPSEC_SPD_SELECTOR *NewSelector, IN EFI_IPSEC_SPD_DATA *NewData, IN UINT32 Mask, OUT BOOLEAN *CreateNew)
EFI_STATUS CombineSadEntry (IN OUT EFI_IPSEC_SA_ID *OldSaId, IN OUT EFI_IPSEC_SA_DATA2 *OldData, IN EFI_IPSEC_SA_ID *NewSaId, IN EFI_IPSEC_SA_DATA2 *NewData, IN UINT32 Mask, OUT BOOLEAN *CreateNew)
EFI_STATUS CombinePadEntry (IN OUT EFI_IPSEC_PAD_ID *OldPadId, IN OUT EFI_IPSEC_PAD_DATA *OldData, IN EFI_IPSEC_PAD_ID *NewPadId, IN EFI_IPSEC_PAD_DATA *NewData, IN UINT32 Mask, OUT BOOLEAN *CreateNew)
EFI_STATUS EditOperatePolicyEntry (IN EFI_IPSEC_CONFIG_SELECTOR *Selector, IN VOID *Data, IN EDIT_POLICY_ENTRY_CONTEXT *Context)
EFI_STATUS EditPolicyEntry (IN EFI_IPSEC_CONFIG_DATA_TYPE DataType, IN LIST_ENTRY *ParamPackage)
EFI_STATUS InsertPolicyEntry (IN EFI_IPSEC_CONFIG_SELECTOR *Selector, IN VOID *Data, IN INSERT_POLICY_ENTRY_CONTEXT *Context)
EFI_STATUS AddOrInsertPolicyEntry (IN EFI_IPSEC_CONFIG_DATA_TYPE DataType, IN LIST_ENTRY *ParamPackage)

Variables

CREATE_POLICY_ENTRY mCreatePolicyEntry []
COMBINE_POLICY_ENTRY mCombinePolicyEntry []

Detailed Description

The implementation of policy entry operation function in IpSecConfig application.

Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.

This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.


Function Documentation

EFI_STATUS AddOrInsertPolicyEntry ( IN EFI_IPSEC_CONFIG_DATA_TYPE  DataType,
IN LIST_ENTRY *  ParamPackage 
)

Insert or add entry information in database according to datatype.

Parameters:
[in] DataType The value of EFI_IPSEC_CONFIG_DATA_TYPE.
[in] ParamPackage The pointer to the ParamPackage list.
Return values:
EFI_SUCCESS Insert or add entry information successfully.
EFI_NOT_FOUND Can't find the specified entry.
EFI_BUFFER_TOO_SMALL The entry already existed.
EFI_UNSUPPORTED The operation is not supported.
Others Some mistaken case.

References INSERT_POLICY_ENTRY_CONTEXT::Data, INSERT_POLICY_ENTRY_CONTEXT::DataType, ForeachPolicyEntry(), INSERT_POLICY_ENTRY_CONTEXT::Indexer, InsertPolicyEntry(), mAppName, mConstructPolicyEntryIndexer, mCreatePolicyEntry, mHiiHandle, mIpSecConfig, INSERT_POLICY_ENTRY_CONTEXT::Selector, and INSERT_POLICY_ENTRY_CONTEXT::Status.

Referenced by InitializeIpSecConfig().

EFI_STATUS CombinePadEntry ( IN OUT EFI_IPSEC_PAD_ID *  OldPadId,
IN OUT EFI_IPSEC_PAD_DATA *  OldData,
IN EFI_IPSEC_PAD_ID *  NewPadId,
IN EFI_IPSEC_PAD_DATA *  NewData,
IN UINT32  Mask,
OUT BOOLEAN *  CreateNew 
)

Combine old PAD entry with new PAD entry.

Parameters:
[in,out] OldPadId The pointer to the EFI_IPSEC_PAD_ID structure.
[in,out] OldData The pointer to the EFI_IPSEC_PAD_DATA structure.
[in] NewPadId The pointer to the EFI_IPSEC_PAD_ID structure.
[in] NewData The pointer to the EFI_IPSEC_PAD_DATA structure.
[in] Mask The pointer to the Mask.
[out] CreateNew The switch to create new.
Return values:
EFI_SUCCESS Combined successfully.
EFI_INVALID_PARAMETER Invalid user input parameter.

References AUTH_DATA, AUTH_METHOD, AUTH_PROTO, IKE_ID, PEER_ADDRESS, PEER_ID, and REVOCATION_DATA.

EFI_STATUS CombineSadEntry ( IN OUT EFI_IPSEC_SA_ID *  OldSaId,
IN OUT EFI_IPSEC_SA_DATA2 *  OldData,
IN EFI_IPSEC_SA_ID *  NewSaId,
IN EFI_IPSEC_SA_DATA2 *  NewData,
IN UINT32  Mask,
OUT BOOLEAN *  CreateNew 
)

Combine old SAD entry with new SAD entry.

Parameters:
[in,out] OldSaId The pointer to the EFI_IPSEC_SA_ID structure.
[in,out] OldData The pointer to the EFI_IPSEC_SA_DATA2 structure.
[in] NewSaId The pointer to the EFI_IPSEC_SA_ID structure.
[in] NewData The pointer to the EFI_IPSEC_SA_DATA2 structure.
[in] Mask The pointer to the Mask.
[out] CreateNew The switch to create new.
Return values:
EFI_SUCCESS Combined successfully.
EFI_INVALID_PARAMETER Invalid user input parameter.

References ANTIREPLAY_WINDOW, AUTH_ALGO, AUTH_KEY, DEST, EFI_IP4_PROTO_ICMP, EFI_IP4_PROTO_TCP, EFI_IP4_PROTO_UDP, ENCRYPT_ALGO, ENCRYPT_KEY, ICMP_CODE, ICMP_TYPE, IPSEC_EALG_NONE, IPSEC_PROTO, LIFEBYTE, LIFETIME, LIFETIME_SOFT, LOCAL, LOCAL_PORT, mAppName, mHiiHandle, MODE, PATH_MTU, PROTO, REMOTE, REMOTE_PORT, SEQUENCE_NUMBER, SOURCE, and SPI.

EFI_STATUS CombineSpdEntry ( IN OUT EFI_IPSEC_SPD_SELECTOR *  OldSelector,
IN OUT EFI_IPSEC_SPD_DATA *  OldData,
IN EFI_IPSEC_SPD_SELECTOR *  NewSelector,
IN EFI_IPSEC_SPD_DATA *  NewData,
IN UINT32  Mask,
OUT BOOLEAN *  CreateNew 
)

Combine old SPD entry with new SPD entry.

Parameters:
[in,out] OldSelector The pointer to the EFI_IPSEC_SPD_SELECTOR structure.
[in,out] OldData The pointer to the EFI_IPSEC_SPD_DATA structure.
[in] NewSelector The pointer to the EFI_IPSEC_SPD_SELECTOR structure.
[in] NewData The pointer to the EFI_IPSEC_SPD_DATA structure.
[in] Mask The pointer to the Mask.
[out] CreateNew The switch to create new.
Return values:
EFI_SUCCESS Combined successfully.
EFI_INVALID_PARAMETER Invalid user input parameter.

References ACTION, AUTH_ALGO, DONT_FRAGMENT, EFI_IP4_PROTO_ICMP, EFI_IP4_PROTO_TCP, EFI_IP4_PROTO_UDP, ENCRYPT_ALGO, EXT_SEQUENCE, FRAGMENT_CHECK, ICMP_CODE, ICMP_TYPE, IPSEC_PROTO, LIFEBYTE, LIFETIME, LIFETIME_SOFT, LOCAL, LOCAL_PORT, mAppName, mHiiHandle, MODE, NAME, PACKET_FLAG, PROTO, REMOTE, REMOTE_PORT, SEQUENCE_OVERFLOW, TUNNEL_LOCAL, and TUNNEL_REMOTE.

EFI_STATUS CreatePadEntry ( OUT EFI_IPSEC_PAD_ID **  PadId,
OUT EFI_IPSEC_PAD_DATA **  Data,
IN LIST_ENTRY *  ParamPackage,
OUT UINT32 *  Mask,
IN BOOLEAN  CreateNew 
)

Fill in EFI_IPSEC_PAD_ID and EFI_IPSEC_PAD_DATA through ParamPackage list.

Parameters:
[out] PadId The pointer to the EFI_IPSEC_PAD_ID structure.
[out] Data The pointer to the EFI_IPSEC_PAD_DATA structure.
[in] ParamPackage The pointer to the ParamPackage list.
[out] Mask The pointer to the Mask.
[in] CreateNew The switch to create new.
Return values:
EFI_SUCCESS Fill in EFI_IPSEC_PAD_ID and EFI_IPSEC_PAD_DATA successfully.
EFI_INVALID_PARAMETER Invalid user input parameter.

References AUTH_DATA, AUTH_METHOD, AUTH_PROTO, EfiInetAddrRange(), FORMAT_STRING, GetNumber(), IKE_ID, mAppName, mHiiHandle, mMapAuthMethod, mMapAuthProto, PEER_ADDRESS, PEER_ID, and REVOCATION_DATA.

EFI_STATUS CreateSadEntry ( OUT EFI_IPSEC_SA_ID **  SaId,
OUT EFI_IPSEC_SA_DATA2 **  Data,
IN LIST_ENTRY *  ParamPackage,
OUT UINT32 *  Mask,
IN BOOLEAN  CreateNew 
)

Fill in EFI_IPSEC_SA_ID and EFI_IPSEC_SA_DATA2 through ParamPackage list.

Parameters:
[out] SaId The pointer to the EFI_IPSEC_SA_ID structure.
[out] Data The pointer to the EFI_IPSEC_SA_DATA2 structure.
[in] ParamPackage The pointer to the ParamPackage list.
[out] Mask The pointer to the Mask.
[in] CreateNew The switch to create new.
Return values:
EFI_SUCCESS Fill in EFI_IPSEC_SA_ID and EFI_IPSEC_SA_DATA2 successfully.
EFI_INVALID_PARAMETER Invalid user input parameter.

References AUTH_ALGO, AUTH_KEY, CreateSpdSelector(), DEST, EfiInetAddr2(), ENCRYPT_ALGO, ENCRYPT_KEY, FORMAT_NUMBER, FORMAT_STRING, GetNumber(), IPSEC_AALG_NONE, IPSEC_EALG_NONE, IPSEC_PROTO, LIFEBYTE, LIFETIME, LIFETIME_SOFT, LOCAL, mAppName, mHiiHandle, mMapAuthAlgo, mMapEncAlgo, mMapIpSecMode, mMapIpSecProtocol, MODE, PATH_MTU, REMOTE, SEQUENCE_NUMBER, SOURCE, and SPI.

EFI_STATUS CreateSpdEntry ( OUT EFI_IPSEC_SPD_SELECTOR **  Selector,
OUT EFI_IPSEC_SPD_DATA **  Data,
IN LIST_ENTRY *  ParamPackage,
OUT UINT32 *  Mask,
IN BOOLEAN  CreateNew 
)

Fill in EFI_IPSEC_SPD_SELECTOR and EFI_IPSEC_SPD_DATA through ParamPackage list.

Parameters:
[out] Selector The pointer to the EFI_IPSEC_SPD_SELECTOR structure.
[out] Data The pointer to the EFI_IPSEC_SPD_DATA structure.
[in] ParamPackage The pointer to the ParamPackage list.
[out] Mask The pointer to the Mask.
[in] CreateNew The switch to create new.
Return values:
EFI_SUCCESS Fill in EFI_IPSEC_SPD_SELECTOR and EFI_IPSEC_SPD_DATA successfully.
EFI_INVALID_PARAMETER Invalid user input parameter.

References ACTION, AUTH_ALGO, CreateSpdSelector(), DONT_FRAGMENT, EfiInetAddr2(), ENCRYPT_ALGO, EXT_SEQUENCE, FORMAT_NUMBER, FORMAT_STRING, FRAGMENT_CHECK, GetNumber(), IPSEC_PROTO, LIFEBYTE, LIFETIME, LIFETIME_SOFT, LOCAL, mAppName, mHiiHandle, mMapAuthAlgo, mMapDfOption, mMapEncAlgo, mMapIpSecAction, mMapIpSecMode, mMapIpSecProtocol, MODE, NAME, PACKET_FLAG, PROTO, REMOTE, SEQUENCE_OVERFLOW, TUNNEL_LOCAL, and TUNNEL_REMOTE.

EFI_STATUS CreateSpdSelector ( OUT EFI_IPSEC_SPD_SELECTOR *  Selector,
IN LIST_ENTRY *  ParamPackage,
IN OUT UINT32 *  Mask 
)

Fill in EFI_IPSEC_SPD_SELECTOR through ParamPackage list.

Parameters:
[out] Selector The pointer to the EFI_IPSEC_SPD_SELECTOR structure.
[in] ParamPackage The pointer to the ParamPackage list.
[in,out] Mask The pointer to the Mask.
Return values:
EFI_SUCCESS Fill in EFI_IPSEC_SPD_SELECTOR successfully.
EFI_INVALID_PARAMETER Invalid user input parameter.

References EFI_IPSEC_ANY_PORT, EFI_IPSEC_ANY_PROTOCOL, EfiInetAddrRange(), EfiInetPortRange(), FORMAT_NUMBER, FORMAT_STRING, GetNumber(), ICMP_CODE, ICMP_TYPE, LOCAL, LOCAL_PORT, mAppName, mHiiHandle, mMapIpProtocol, PROTO, REMOTE, and REMOTE_PORT.

Referenced by CreateSadEntry(), and CreateSpdEntry().

EFI_STATUS EditOperatePolicyEntry ( IN EFI_IPSEC_CONFIG_SELECTOR *  Selector,
IN VOID *  Data,
IN EDIT_POLICY_ENTRY_CONTEXT Context 
)

Edit entry information in the database.

Parameters:
[in] Selector The pointer to the EFI_IPSEC_CONFIG_SELECTOR structure.
[in] Data The pointer to the data.
[in] Context The pointer to the INSERT_POLICY_ENTRY_CONTEXT structure.
Return values:
EFI_SUCCESS Continue the iteration.
EFI_ABORTED Abort the iteration.

References mIpSecConfig, and mMatchPolicyEntry.

Referenced by EditPolicyEntry().

EFI_STATUS EditPolicyEntry ( IN EFI_IPSEC_CONFIG_DATA_TYPE  DataType,
IN LIST_ENTRY *  ParamPackage 
)

Edit entry information in database according to datatype.

Parameters:
[in] DataType The value of EFI_IPSEC_CONFIG_DATA_TYPE.
[in] ParamPackage The pointer to the ParamPackage list.
Return values:
EFI_SUCCESS Edit entry information successfully.
EFI_NOT_FOUND Can't find the specified entry.
Others Some mistaken case.

References EDIT_POLICY_ENTRY_CONTEXT::Data, EDIT_POLICY_ENTRY_CONTEXT::DataType, EditOperatePolicyEntry(), ForeachPolicyEntry(), EDIT_POLICY_ENTRY_CONTEXT::Indexer, mAppName, EDIT_POLICY_ENTRY_CONTEXT::Mask, mConstructPolicyEntryIndexer, mCreatePolicyEntry, mHiiHandle, EDIT_POLICY_ENTRY_CONTEXT::Selector, and EDIT_POLICY_ENTRY_CONTEXT::Status.

Referenced by InitializeIpSecConfig().

EFI_STATUS InsertPolicyEntry ( IN EFI_IPSEC_CONFIG_SELECTOR *  Selector,
IN VOID *  Data,
IN INSERT_POLICY_ENTRY_CONTEXT Context 
)

Insert entry information in database.

Parameters:
[in] Selector The pointer to the EFI_IPSEC_CONFIG_SELECTOR structure.
[in] Data The pointer to the data.
[in] Context The pointer to the INSERT_POLICY_ENTRY_CONTEXT structure.
Return values:
EFI_SUCCESS Continue the iteration.
EFI_ABORTED Abort the iteration.

References mIpSecConfig, and mMatchPolicyEntry.

Referenced by AddOrInsertPolicyEntry().


Variable Documentation


Generated on Mon Sep 28 08:49:05 2015 for NetworkPkg[ALL] by  doxygen 1.5.7.1