/home/tomh/openhip/hip-0.5/src/include/hip/hip_proto.h File Reference

#include <openssl/bn.h>
#include <openssl/hmac.h>
#include <openssl/rsa.h>

Go to the source code of this file.

Defines

#define H_PROTO_UDP   17
#define HIP_ESP_UDP_PORT   54500
#define HIP_PROTO_VER   1
#define H_PROTO_HIP   253
#define HIP_PAYLOAD_PROTOCOL   59
#define STATUS_PORT   4051
#define SPI_RESERVED   255
#define HIP_ALIGN   4
#define ACCEPTABLE_R1_COUNT_RANGE   2
#define HIT_SIZE   16
#define HIT_PREFIX_TYPE1_SHA1   0x40
#define PARAM_ESP_INFO   65
#define PARAM_R1_COUNTER   128
#define PARAM_LOCATOR   193
#define PARAM_PUZZLE   257
#define PARAM_SOLUTION   321
#define PARAM_SEQ   385
#define PARAM_ACK   449
#define PARAM_DIFFIE_HELLMAN   513
#define PARAM_HIP_TRANSFORM   577
#define PARAM_ENCRYPTED   641
#define PARAM_HOST_ID   705
#define PARAM_CERT   768
#define PARAM_NOTIFY   832
#define PARAM_ECHO_REQUEST   897
#define PARAM_REG_INFO   930
#define PARAM_REG_REQUEST   932
#define PARAM_REG_RESPONSE   934
#define PARAM_REG_FAILED   936
#define PARAM_REG_REQUIRED
#define PARAM_ECHO_RESPONSE   961
#define PARAM_ESP_TRANSFORM   4095
#define PARAM_TRANSFORM_LOW   2048
#define PARAM_TRANSFORM_HIGH   4095
#define PARAM_HMAC   61505
#define PARAM_HMAC_2   61569
#define PARAM_HIP_SIGNATURE_2   61633
#define PARAM_HIP_SIGNATURE   61697
#define PARAM_ECHO_REQUEST_NOSIG   63661
#define PARAM_ECHO_RESPONSE_NOSIG   63425
#define PARAM_FROM   65498
#define PARAM_RVS_HMAC   65500
#define PARAM_VIA_RVS   65502
#define PARAM_CRITICAL_BIT   0x0001
#define ENCR_NULL(a)
#define DEFAULT_HIP_TRANS
#define ESP_OFFSET   8
#define DEFAULT_ESP_TRANS
#define HIP_RSA_DFT_EXP   RSA_F4
#define HI_TYPESTR(a)
#define DEFAULT_DH_GROUP_ID   DH_MODP_1536
#define DH_MAX_LEN   1024
#define LOCATOR_PREFERRED   0x01
#define LOCATOR_TRAFFIC_TYPE_BOTH   0x00
#define LOCATOR_TRAFFIC_TYPE_SIGNALING   0x01
#define LOCATOR_TRAFFIC_TYPE_DATA   0x02
#define LOCATOR_TYPE_IPV6   0x00
#define LOCATOR_TYPE_SPI_IPV6   0x01
#define NOTIFY_UNSUPPORTED_CRITICAL_PARAMETER_TYPE   1
#define NOTIFY_INVALID_SYNTAX   7
#define NOTIFY_NO_DH_PROPOSAL_CHOSEN   14
#define NOTIFY_INVALID_DH_CHOSEN   15
#define NOTIFY_NO_HIP_PROPOSAL_CHOSEN   16
#define NOTIFY_INVALID_HIP_TRANSFORM_CHOSEN   17
#define NOTIFY_NO_ESP_PROPOSAL_CHOSEN   18
#define NOTIFY_INVALID_ESP_TRANSFORM_CHOSEN   19
#define NOTIFY_AUTHENTICATION_FAILED   24
#define NOTIFY_CHECKSUM_FAILED   26
#define NOTIFY_HMAC_FAILED   28
#define NOTIFY_ENCRYPTION_FAILED   32
#define NOTIFY_INVALID_HIT   40
#define NOTIFY_BLOCKED_BY_POLICY   42
#define NOTIFY_SERVER_BUSY_PLEASE_RETRY   44
#define NOTIFY_I2_ACKNOWLEDGEMENT   46

Enumerations

enum  HIP_STATES {
  UNASSOCIATED, I1_SENT, I2_SENT, R2_SENT,
  ESTABLISHED, REKEYING, CLOSING, CLOSED,
  E_FAILED
}
enum  HIP_PACKETS {
  HIP_I1 = 1, HIP_R1, HIP_I2, HIP_R2,
  CER, BOS = 11, UPDATE = 16, NOTIFY = 17,
  CLOSE = 18, CLOSE_ACK = 19
}
enum  HIP_CONTROLS { CTL_ANON = 0x0001 }
enum  SUITE_IDS {
  RESERVED, ESP_AES_CBC_HMAC_SHA1, ESP_3DES_CBC_HMAC_SHA1, ESP_3DES_CBC_HMAC_MD5,
  ESP_BLOWFISH_CBC_HMAC_SHA1, ESP_NULL_HMAC_SHA1, ESP_NULL_HMAC_MD5, SUITE_ID_MAX
}
enum  { HI_ALG_RESERVED, HI_ALG_DSA = 3, HI_ALG_RSA = 5 }
enum  { DIT_NONE, DIT_FQDN, DIT_NAI }
enum  ADDRESS_STATES { UNVERIFIED, ACTIVE, DEPRECATED, DELETED }
enum  KEY_TYPES { HIP_ENCRYPTION, HIP_INTEGRITY, ESP_ENCRYPTION, ESP_AUTH }
enum  HIP_KEYMAT_KEYS {
  GL_HIP_ENCRYPTION_KEY, GL_HIP_INTEGRITY_KEY, LG_HIP_ENCRYPTION_KEY, LG_HIP_INTEGRITY_KEY,
  GL_ESP_ENCRYPTION_KEY, GL_ESP_AUTH_KEY, LG_ESP_ENCRYPTION_KEY, LG_ESP_AUTH_KEY
}
enum  HIP_KEYLENS {
  KEY_LEN_NULL = 0, KEY_LEN_MD5 = 16, KEY_LEN_SHA1 = 20, KEY_LEN_3DES = 24,
  KEY_LEN_AES = 16, KEY_LEN_BLOWFISH = 16
}
enum  DH_GROUP_IDS {
  DH_RESERVED, DH_384, DH_OAKLEY_1, DH_MODP_1536,
  DH_MODP_3072, DH_MODP_6144, DH_MODP_8192, DH_MAX
}

Variables

enum { ... }  HI_ALGORITHMS
enum { ... }  HI_DIT


Define Documentation

#define ACCEPTABLE_R1_COUNT_RANGE   2

#define DEFAULT_DH_GROUP_ID   DH_MODP_1536

#define DEFAULT_ESP_TRANS

Value:

#define DEFAULT_HIP_TRANS

Value:

#define DH_MAX_LEN   1024

#define ENCR_NULL (  ) 

Value:

#define ESP_OFFSET   8

#define H_PROTO_HIP   253

#define H_PROTO_UDP   17

#define HI_TYPESTR (  ) 

Value:

((a==HI_ALG_DSA) ? "DSA" : \
                        (a==HI_ALG_RSA) ? "RSA" : "UNKNOWN")

#define HIP_ALIGN   4

#define HIP_ESP_UDP_PORT   54500

#define HIP_PAYLOAD_PROTOCOL   59

#define HIP_PROTO_VER   1

#define HIP_RSA_DFT_EXP   RSA_F4

#define HIT_PREFIX_TYPE1_SHA1   0x40

#define HIT_SIZE   16

#define LOCATOR_PREFERRED   0x01

#define LOCATOR_TRAFFIC_TYPE_BOTH   0x00

#define LOCATOR_TRAFFIC_TYPE_DATA   0x02

#define LOCATOR_TRAFFIC_TYPE_SIGNALING   0x01

#define LOCATOR_TYPE_IPV6   0x00

#define LOCATOR_TYPE_SPI_IPV6   0x01

#define NOTIFY_AUTHENTICATION_FAILED   24

#define NOTIFY_BLOCKED_BY_POLICY   42

#define NOTIFY_CHECKSUM_FAILED   26

#define NOTIFY_ENCRYPTION_FAILED   32

#define NOTIFY_HMAC_FAILED   28

#define NOTIFY_I2_ACKNOWLEDGEMENT   46

#define NOTIFY_INVALID_DH_CHOSEN   15

#define NOTIFY_INVALID_ESP_TRANSFORM_CHOSEN   19

#define NOTIFY_INVALID_HIP_TRANSFORM_CHOSEN   17

#define NOTIFY_INVALID_HIT   40

#define NOTIFY_INVALID_SYNTAX   7

#define NOTIFY_NO_DH_PROPOSAL_CHOSEN   14

#define NOTIFY_NO_ESP_PROPOSAL_CHOSEN   18

#define NOTIFY_NO_HIP_PROPOSAL_CHOSEN   16

#define NOTIFY_SERVER_BUSY_PLEASE_RETRY   44

#define NOTIFY_UNSUPPORTED_CRITICAL_PARAMETER_TYPE   1

#define PARAM_ACK   449

#define PARAM_CERT   768

#define PARAM_CRITICAL_BIT   0x0001

#define PARAM_DIFFIE_HELLMAN   513

#define PARAM_ECHO_REQUEST   897

#define PARAM_ECHO_REQUEST_NOSIG   63661

#define PARAM_ECHO_RESPONSE   961

#define PARAM_ECHO_RESPONSE_NOSIG   63425

#define PARAM_ENCRYPTED   641

#define PARAM_ESP_INFO   65

#define PARAM_ESP_TRANSFORM   4095

#define PARAM_FROM   65498

#define PARAM_HIP_SIGNATURE   61697

#define PARAM_HIP_SIGNATURE_2   61633

#define PARAM_HIP_TRANSFORM   577

#define PARAM_HMAC   61505

#define PARAM_HMAC_2   61569

#define PARAM_HOST_ID   705

#define PARAM_LOCATOR   193

#define PARAM_NOTIFY   832

#define PARAM_PUZZLE   257

#define PARAM_R1_COUNTER   128

#define PARAM_REG_FAILED   936

#define PARAM_REG_INFO   930

#define PARAM_REG_REQUEST   932

#define PARAM_REG_REQUIRED

#define PARAM_REG_RESPONSE   934

#define PARAM_RVS_HMAC   65500

#define PARAM_SEQ   385

#define PARAM_SOLUTION   321

#define PARAM_TRANSFORM_HIGH   4095

#define PARAM_TRANSFORM_LOW   2048

#define PARAM_VIA_RVS   65502

#define SPI_RESERVED   255

#define STATUS_PORT   4051


Enumeration Type Documentation

anonymous enum

Enumerator:
HI_ALG_RESERVED 
HI_ALG_DSA 
HI_ALG_RSA 

anonymous enum

Enumerator:
DIT_NONE 
DIT_FQDN 
DIT_NAI 

enum ADDRESS_STATES

Enumerator:
UNVERIFIED 
ACTIVE 
DEPRECATED 
DELETED 

enum DH_GROUP_IDS

Enumerator:
DH_RESERVED 
DH_384 
DH_OAKLEY_1 
DH_MODP_1536 
DH_MODP_3072 
DH_MODP_6144 
DH_MODP_8192 
DH_MAX 

enum HIP_CONTROLS

Enumerator:
CTL_ANON 

enum HIP_KEYLENS

Enumerator:
KEY_LEN_NULL 
KEY_LEN_MD5 
KEY_LEN_SHA1 
KEY_LEN_3DES 
KEY_LEN_AES 
KEY_LEN_BLOWFISH 

enum HIP_KEYMAT_KEYS

Enumerator:
GL_HIP_ENCRYPTION_KEY 
GL_HIP_INTEGRITY_KEY 
LG_HIP_ENCRYPTION_KEY 
LG_HIP_INTEGRITY_KEY 
GL_ESP_ENCRYPTION_KEY 
GL_ESP_AUTH_KEY 
LG_ESP_ENCRYPTION_KEY 
LG_ESP_AUTH_KEY 

enum HIP_PACKETS

Enumerator:
HIP_I1 
HIP_R1 
HIP_I2 
HIP_R2 
CER 
BOS 
UPDATE 
NOTIFY 
CLOSE 
CLOSE_ACK 

enum HIP_STATES

Enumerator:
UNASSOCIATED 
I1_SENT 
I2_SENT 
R2_SENT 
ESTABLISHED 
REKEYING 
CLOSING 
CLOSED 
E_FAILED 

enum KEY_TYPES

Enumerator:
HIP_ENCRYPTION 
HIP_INTEGRITY 
ESP_ENCRYPTION 
ESP_AUTH 

enum SUITE_IDS

Enumerator:
RESERVED 
ESP_AES_CBC_HMAC_SHA1 
ESP_3DES_CBC_HMAC_SHA1 
ESP_3DES_CBC_HMAC_MD5 
ESP_BLOWFISH_CBC_HMAC_SHA1 
ESP_NULL_HMAC_SHA1 
ESP_NULL_HMAC_MD5 
SUITE_ID_MAX 


Variable Documentation

enum { ... } HI_ALGORITHMS

enum { ... } HI_DIT


Generated on Mon Oct 22 11:43:43 2007 for OpenHIP by  doxygen 1.5.1