embedded IPsec source code documentation


types.h File Reference

Go to the source code of this file.

Data Structures

struct  ipsec_ip_hdr_struct
struct  ipsec_tcp_hdr_struct
struct  ipsec_udp_hdr_struct

Typedefs

typedef unsigned char __u8
typedef signed char __s8
typedef unsigned short __u16
typedef signed short __s16
typedef unsigned long __u32
typedef signed long __s32
typedef enum ipsec_status_list ipsec_status
typedef enum ipsec_audit_list ipsec_audit
typedef enum ipsec_ip_protocol_list ipsec_ip_protocol
typedef ipsec_ip_hdr_struct ipsec_ip_header
typedef ipsec_tcp_hdr_struct ipsec_tcp_header
typedef ipsec_udp_hdr_struct ipsec_udp_header

Enumerations

enum  ipsec_status_list {
  IPSEC_STATUS_SUCCESS = 0, IPSEC_STATUS_NOT_IMPLEMENTED = -1, IPSEC_STATUS_FAILURE = -2, IPSEC_STATUS_DATA_SIZE_ERROR = -3,
  IPSEC_STATUS_NO_SPACE_IN_SPD = -4, IPSEC_STATUS_NO_POLICY_FOUND = -5, IPSEC_STATUS_NO_SA_FOUND = -6, IPSEC_STATUS_BAD_PACKET = -7,
  IPSEC_STATUS_BAD_PROTOCOL = -8, IPSEC_STATUS_BAD_KEY = -9, IPSEC_STATUS_TTL_EXPIRED = -10, IPSEC_STATUS_NOT_INITIALIZED = -100
}
enum  ipsec_audit_list {
  IPSEC_AUDIT_SUCCESS = 0, IPSEC_AUDIT_NOT_IMPLEMENTED = 1, IPSEC_AUDIT_FAILURE = 2, IPSEC_AUDIT_APPLY = 3,
  IPSEC_AUDIT_BYPASS = 4, IPSEC_AUDIT_DISCARD = 5, IPSEC_AUDIT_SPI_MISMATCH = 6, IPSEC_AUDIT_SEQ_MISMATCH = 7,
  IPSEC_AUDIT_POLICY_MISMATCH = 8
}
enum  ipsec_ip_protocol_list {
  IPSEC_PROTO_ICMP = 0x01, IPSEC_PROTO_TCP = 0x06, IPSEC_PROTO_UDP = 0x11, IPSEC_PROTO_ESP = 0x32,
  IPSEC_PROTO_AH = 0x33
}


Typedef Documentation

typedef signed short __s16
 

Definition at line 49 of file types.h.

typedef signed long __s32
 

Definition at line 51 of file types.h.

typedef signed char __s8
 

Definition at line 47 of file types.h.

typedef unsigned short __u16
 

Definition at line 48 of file types.h.

typedef unsigned long __u32
 

Definition at line 50 of file types.h.

typedef unsigned char __u8
 

Definition at line 46 of file types.h.

typedef enum ipsec_audit_list ipsec_audit
 

typedef struct ipsec_ip_hdr_struct ipsec_ip_header
 

typedef enum ipsec_ip_protocol_list ipsec_ip_protocol
 

typedef enum ipsec_status_list ipsec_status
 

return code convention:

return code < 0 indicates globally defines error messages return code == 0 indicates success return code > 0 is used as error count (i.e. "return 20;" means there are 20 errors)

typedef struct ipsec_tcp_hdr_struct ipsec_tcp_header
 

typedef struct ipsec_udp_hdr_struct ipsec_udp_header
 


Enumeration Type Documentation

enum ipsec_audit_list
 

Enumeration values:
IPSEC_AUDIT_SUCCESS  processing was successful
IPSEC_AUDIT_NOT_IMPLEMENTED  the function is already there but the functionality is not yet implemented
IPSEC_AUDIT_FAILURE  failure
IPSEC_AUDIT_APPLY  packet must be processed by IPsec
IPSEC_AUDIT_BYPASS  packet is forwarded (without IPsec processing)
IPSEC_AUDIT_DISCARD  packet must be dropped
IPSEC_AUDIT_SPI_MISMATCH  SPI does not match the SPD lookup
IPSEC_AUDIT_SEQ_MISMATCH  Sequence Number differs more than IPSEC_SEQ_MAX_WINDOW from the previous packets
IPSEC_AUDIT_POLICY_MISMATCH  If a policy for an incoming IPsec packet does not specify APPLY

Definition at line 77 of file types.h.

enum ipsec_ip_protocol_list
 

Enumeration values:
IPSEC_PROTO_ICMP  ICMP
IPSEC_PROTO_TCP  TCP
IPSEC_PROTO_UDP  UDP
IPSEC_PROTO_ESP  ESP
IPSEC_PROTO_AH  AH

Definition at line 90 of file types.h.

enum ipsec_status_list
 

return code convention:

return code < 0 indicates globally defines error messages return code == 0 indicates success return code > 0 is used as error count (i.e. "return 20;" means there are 20 errors)

Enumeration values:
IPSEC_STATUS_SUCCESS  processing was successful
IPSEC_STATUS_NOT_IMPLEMENTED  the function is already there but the functionality is not yet implemented
IPSEC_STATUS_FAILURE  failure
IPSEC_STATUS_DATA_SIZE_ERROR  buffer is (unexpectedly) empty or haves wrong size
IPSEC_STATUS_NO_SPACE_IN_SPD  ipsec_spd_add() failed because there was no space left in SPD
IPSEC_STATUS_NO_POLICY_FOUND  no matching SPD policy was found
IPSEC_STATUS_NO_SA_FOUND  no matching SA was found
IPSEC_STATUS_BAD_PACKET  packet has a bad format or invalid fields
IPSEC_STATUS_BAD_PROTOCOL  SA has an unsupported protocol
IPSEC_STATUS_BAD_KEY  key is invalid or weak and was rejected
IPSEC_STATUS_TTL_EXPIRED  TTL value of a packet reached 0
IPSEC_STATUS_NOT_INITIALIZED  variables has never been initialized

Definition at line 61 of file types.h.


Copyright 2003 by Christian Scheurer and Niklaus Schild