| TCCIPsec_Definitions.ttcn | |
| Types and Constants | |
| TCCIPsec_IPsecResult | Declares the possible return values of IPsec handling functions | 
| c_TCCIPsec_anyPort | Provides port value representing any port | 
| c_TCCIPsec_prefixAll | Provides port value representing any port | 
| TCCIPsec_Protocol | Declares identifiers for the possible security protocols | 
| TCCIPsec_IPsecMode | Declares identifiers for the possible security association | 
| TCCIPsec_Extension | Defines a union of possible extensions for Security Associations (SAs) | 
| TCCIPsec_ExtensionList | Defines a list of extensions for the SA adding function | 
| TCCIPsec_Key | Defines a union for storing a key for an SA. | 
| TCCIPsec_EAlgo | Declares identifiers for the possible encryption algorithms | 
| TCCIPsec_AAlgo | Declares identifiers for the possible integrity protection algorithms | 
| TCCIPsec_Encr | Defines a record for storing the encryption algorithm identifier and key. | 
| TCCIPsec_Auth | Defines a record for storing the integrity protection algorithm identifier and key. | 
| TCCIPsec_Auth | Defines a record for storing the encryption and integrity protection algorithm identifiers and the keys. | 
| TCCIPsec_Algorithm | Defines a union for storing the possible combination of algorithms with its keys. | 
| TCCIPsec_TranspProto | Declares identifiers for the possible upper layer protocols | 
| TCCIPsec_TranspProto | Declares identifiers for the possible directions for which a policy is applied. | 
| TCCIPsec_DiscardRule | Declares a type to represent the policy rule to discard packets. | 
| TCCIPsec_NoneRule | Declares a type to represent the policy rule to bypass IPsec. | 
| TCCIPsec_Transport | Declares a type to represent the transport IPsec mode - as opposed to tunnel mode | 
| TCCIPsec_Tunnel | Declares a type to represent the tunnel IPsec mode - as opposed to transport mode | 
| TCCIPsec_Mode | Declares an union for storing to IPsec mode | 
| TCCIPsec_DefaultLevel | Declares a type to represent the policy level indicating that system defaults has to be used. | 
| TCCIPsec_UseLevel | Declares a type to represent the policy level indicating that IPsec should be used if appropriate SA is available. | 
| TCCIPsec_UseLevel | Declares a type to represent the policy level indicating that IPsec has to be used unconditionally. | 
| TCCIPsec_UseLevel | Declares a type to represent the policy level indicating that IPsec has to be used with the SA or SAs indicated by id. | 
| TCCIPsec_RuleLevel | Defines a union for storing rule level. | 
| TCCIPsec_Rule | Declares a record for storing an IPsec rule. | 
| TCCIPsec_ExtensionList | Defines a list of IPsec rules | 
| TCCIPsec_RuleLevel | Defines a union for storing a policy rule. | 
Declares the possible return values of IPsec handling functions
ok: The function finished successfully parameterInvalid: One of the function parameters was invalid The error is indicated either by the library or the kernel. alreadyExisted: Entry already existed while trying to add it notFound: Entry was not found while trying to delete or modify it insufficientPrivilege: The calling process does not have the necessary privilege to use the PF_KEY interface or to handle the databases of IPsec. notImplemented: Not implemented: The library is compiled without IPsec support or with limited support Support for SPD handling is platform dependent socketError: Other type of error during socket operation The logs contain details on the error
type enumerated TCCIPsec_IPsecMode { anyMode (0), transport (1), tunnel (2) } 
Declares identifiers for the possible security association
anyMode: this is the unspecified, default mode transport: turns on transport mode in security association tunnel: turns on tunneling mode in security association
-
type union TCCIPsec_Extension { integer policyId, integer hardLifetime, integer softLifetime } 
Defines a union of possible extensions for Security Associations (SAs)
| policyId | integer: Identifier to link a Security Association (SA) to Security Policy (SP) | 
| hardLifetime | integer: Hard Lifetime in seconds | 
| softLifetime | integer: Soft Lifetime in seconds | 
-
type union TCCIPsec_Key { hexstring hex, charstring text } 
Defines a union for storing a key for an SA. The key is specified inside the TCCIPsec_Algorithm alg parameter of the f_IPsec_SADB_add function.
| hex | hexstring: Key in hexstring format | 
| text | charstring: Key in charstring format | 
type enumerated TCCIPsec_EAlgo { EALG_NONE (0), EALG_3DESCBC (3), EALG_NULL(11), EALG_AESCBC (12) } 
Declares identifiers for the possible encryption algorithms
EALG_NONE: The “null” algorithm EALG_3DESCBC: The “3des-cbc” algorithm (rfc2451) EALG_NULL: The NULL encryption algorithm (rfc2367) EALG_AESCBC: The “aes-cbc” algorithm (
type enumerated TCCIPsec_AAlgo { AALG_NONE (0), AALG_MD5HMAC (2), AALG_SHA1HMAC (3) } 
Declares identifiers for the possible integrity protection algorithms
AALG_NONE: The “null” algorithm AALG_MD5HMAC: The “hmac-md5” algorithm (rfc2403) AALG_SHA1HMAC: The “hmac-sha1” algorithm (rfc2404)
type record TCCIPsec_Auth { TCCIPsec_AAlgo algo, TCCIPsec_Key key } 
Defines a record for storing the integrity protection algorithm identifier and key.
| algo | TCCIPsec_AAlgo: Identifier of the integrity protection algorithm | 
| key | TCCIPsec_Key: Key for the algorithm | 
Defines a record for storing the encryption and integrity protection algorithm identifiers and the keys.
| ealgo | TCCIPsec_EAlgo: Identifier of the encryption algorithm | 
| ekey | TCCIPsec_Key: Key for the encryption algorithm | 
| aalgo | TCCIPsec_AAlgo: Identifier of the integrity protection algorithm | 
| akey | TCCIPsec_Key: Key for the integrity protection algorithm | 
Defines a union for storing the possible combination of algorithms with its keys. It is used as the TCCIPsec_Algorithm alg parameter of the f_IPsec_SADB_add function.
| encr | TCCIPsec_Encr: encryption algorithm data | 
| auth | TCCIPsec_Auth integrity protection algorithm data | 
| encrAndAuth | TCCIPsec_EncrAndAuth Key in charstring format | 
type enumerated TCCIPsec_TranspProto { anyTranspProto (0), tcpProto (6), udpProto (17) } 
Declares identifiers for the possible upper layer protocols
anyTranspProto: Either TCP or UDP protocol tcpProto: The TCP protocol udpProto: The UDP protocol
type record TCCIPsec_Tunnel { charstring srcAddr, integer srcPort, charstring dstAddr, integer dstPort } 
Declares a type to represent the tunnel IPsec mode - as opposed to transport mode
srcAddr: source address srcPort: source port dstAddr: destination address dstPort: destination port
Detailed Comments: Address and port pairs for the tunnel. Used in SPDB rules.
type union TCCIPsec_Mode { TCCIPsec_Transport transport, TCCIPsec_Tunnel tunnel } 
Declares an union for storing to IPsec mode
| transport | TCCIPsec_Transport: identifies the transport IPsec mode | 
| tunnel | TCCIPsec_Tunnel: identifies the tunnel IPsec mode | 
IPsec supports transport and tunnel mode.
type union TCCIPsec_RuleLevel { TCCIPsec_DefaultLevel defaultLevel, TCCIPsec_UseLevel use, TCCIPsec_RequireLevel require, TCCIPsec_UniqueLevel unique } 
Defines a union for storing rule level.
| defaultLevel | TCCIPsec_DefaultLevel: The level represnting default | 
| use | TCCIPsec_UseLevel The use level | 
| require | TCCIPsec_RequireLevel The require level | 
| unique | TCCIPsec_UniqueLevel The unique level | 
-
type record TCCIPsec_Rule { TCCIPsec_Protocol protocol, TCCIPsec_Mode mode, TCCIPsec_RuleLevel level } 
Declares a record for storing an IPsec rule.
| protocol | TCCIPsec_Protocol: The security protocol to use | 
| mode | TCCIPsec_Mode: IPsec mode | 
| level | TCCIPsec_RuleLevel: rule level | 
-
Defines a union for storing a policy rule.
| discard | TCCIPsec_DiscardRule: The discard policy rule | 
| noneRule | TCCIPsec_NoneRule The none policy rule | 
| require | TCCIPsec_RequireLevel The require level | 
| ipSec | TCCIPsec_RuleList A list of IPsec policy rules | 
-
Provides port value representing any port
const integer c_TCCIPsec_anyPort := 0 
Provides port value representing any port
const integer c_TCCIPsec_prefixAll := -1 
Declares identifiers for the possible security association
type enumerated TCCIPsec_IPsecMode { anyMode (0), transport (1), tunnel (2) } 
Defines a union of possible extensions for Security Associations (SAs)
type union TCCIPsec_Extension { integer policyId, integer hardLifetime, integer softLifetime } 
Defines a list of extensions for the SA adding function
type record of TCCIPsec_Extension TCCIPsec_ExtensionList 
Defines a union for storing a key for an SA.
type union TCCIPsec_Key { hexstring hex, charstring text } 
Declares identifiers for the possible encryption algorithms
type enumerated TCCIPsec_EAlgo { EALG_NONE (0), EALG_3DESCBC (3), EALG_NULL(11), EALG_AESCBC (12) } 
Declares identifiers for the possible integrity protection algorithms
type enumerated TCCIPsec_AAlgo { AALG_NONE (0), AALG_MD5HMAC (2), AALG_SHA1HMAC (3) } 
Defines a record for storing the encryption algorithm identifier and key.
type record TCCIPsec_Encr { TCCIPsec_EAlgo algo, TCCIPsec_Key key } 
Defines a record for storing the integrity protection algorithm identifier and key.
type record TCCIPsec_Auth { TCCIPsec_AAlgo algo, TCCIPsec_Key key } 
Declares identifiers for the possible upper layer protocols
type enumerated TCCIPsec_TranspProto { anyTranspProto (0), tcpProto (6), udpProto (17) } 
Declares a type to represent the policy rule to discard packets.
type record TCCIPsec_DiscardRule {} 
Declares a type to represent the policy rule to bypass IPsec.
type record TCCIPsec_NoneRule {} 
Declares a type to represent the transport IPsec mode - as opposed to tunnel mode
type record TCCIPsec_Transport {} 
Declares a type to represent the tunnel IPsec mode - as opposed to transport mode
type record TCCIPsec_Tunnel { charstring srcAddr, integer srcPort, charstring dstAddr, integer dstPort } 
Declares an union for storing to IPsec mode
type union TCCIPsec_Mode { TCCIPsec_Transport transport, TCCIPsec_Tunnel tunnel } 
Declares a type to represent the policy level indicating that system defaults has to be used.
type record TCCIPsec_DefaultLevel {} 
Declares a type to represent the policy level indicating that IPsec should be used if appropriate SA is available.
type record TCCIPsec_UseLevel {} 
Defines a union for storing rule level.
type union TCCIPsec_RuleLevel { TCCIPsec_DefaultLevel defaultLevel, TCCIPsec_UseLevel use, TCCIPsec_RequireLevel require, TCCIPsec_UniqueLevel unique } 
Declares a record for storing an IPsec rule.
type record TCCIPsec_Rule { TCCIPsec_Protocol protocol, TCCIPsec_Mode mode, TCCIPsec_RuleLevel level }