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

#include <asm/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <sys/types.h>
#include <openssl/bn.h>
#include <openssl/hmac.h>
#include <openssl/rsa.h>
#include <time.h>
#include <hip/hip_proto.h>

Go to the source code of this file.

Classes

struct  _udphdr
struct  _hiphdr
struct  _hipcookie
struct  key_entry
struct  rekey_info
struct  hip_packet_entry
struct  _hip_assoc
struct  _hip_reg
struct  _returned
struct  _from
struct  _via
struct  _sockaddr_list
struct  _r1_cache_entry
struct  _hi_node
struct  _dh_cache_entry
struct  opaque_entry
struct  _pseudo_header6
struct  _pseudo_header
struct  _tlv_head
struct  _tlv_esp_info
struct  _tlv_r1_counter
struct  _tlv_puzzle
struct  _tlv_solution
struct  _tlv_diffie_hellman
struct  _tlv_diffie_hellman_pub_value
struct  _tlv_hip_transform
struct  _tlv_esp_transform
struct  _tlv_encrypted
struct  _tlv_host_id
struct  _tlv_cert
struct  _tlv_reg_info
struct  _tlv_reg_request
struct  _tlv_reg_response
struct  _tlv_reg_failed
struct  _tlv_reg_required
struct  _tlv_echo
struct  _tlv_hmac
struct  _tlv_hip_sig
struct  _tlv_seq
struct  _tlv_ack
struct  _tlv_notify
struct  _locator
struct  _tlv_locator
struct  _tlv_from
struct  _tlv_rvs_hmac
struct  _tlv_via_rvs
struct  _thread_arg
struct  hip_opt
struct  hip_conf

Defines

#define HIP_PUB_SUFFIX   "_host_identities.pub.xml"
#define HIP_CONF_FILENAME   "../etc/hip/hip.conf"
#define HIP_MYID_FILENAME   "../etc/hip/my_host_identities.xml"
#define HIP_KNOWNID_FILENAME   "../etc/hip/known_host_identities.xml"
#define HIP_REG_FILENAME   "../etc/hip/registered_host_identities.xml"
#define HIP_PUB_PREFIX   "../etc/hip/"
#define HIP_DEFAULT_CONF_FILENAME   "/usr/local/etc/hip/hip.conf"
#define HIP_DEFAULT_MYID_FILENAME   "/usr/local/etc/hip/my_host_identities.xml"
#define HIP_DEFAULT_KNOWNID_FILENAME   "/usr/local/etc/hip/known_host_identities.xml"
#define HIP_DEFAULT_REG_FILENAME   "/usr/local/etc/hip/registered_host_identities.xml"
#define HIP_LOCK_FILENAME   "/var/run/hip.pid"
#define HIP_LOG_FILENAME   "/var/log/hipd.log"
#define MAX_HITS   32
#define MAX_CONNECTIONS   32
#define MAX_OPAQUE_SIZE   255
#define MAX_HI_NAMESIZE   255
#define MAX_HI_BITS   2048
#define MAX_LOCATORS   8
#define MAX_REGISTRATIONS   1024
#define DSA_PRIV   20
#define HIP_KEY_SIZE   24
#define HIP_DSA_SIG_SIZE   41
#define MAX_SIG_SIZE   512
#define NUMKEYS   8
#define KEYMAT_SIZE   (4 * NUMKEYS * HIP_KEY_SIZE)
#define HIP_RES_SHIM6_BITS   0x01
#define H_PROTO_UDP   17
#define HIP_ESP_UDP_PORT   54500
#define SADB_RESPONSE_BUFFER   20
#define SADB_MSG_SIZE_ADD   300
#define SADB_MSG_SIZE_DELETE   150
#define TRUE   1
#define FALSE   0
#define SPI_RESERVED   255
#define HIP_ALIGN   4
#define R1_CACHE_SIZE   8
#define ACCEPTABLE_R1_COUNT_RANGE   2
#define HIP_UPDATE_BIND_CHECKS   5
#define DBG(x)   x
#define TDIFF(a, b)   ((a).tv_sec - (b).tv_sec)
#define SA2IP(x)
#define SALEN(x)
#define SAIPLEN(x)   (((struct sockaddr*)x)->sa_family==AF_INET) ? 4 : 16
#define SA(x)   ((struct sockaddr*)x)
#define yesno(x)   x ? "yes" : "no"
#define HIT_SIZE   16
#define HIT_PREFIX_SHA1_32BITS   0x20010010
#define HIT2LSI(a)
#define YLIFE(x)   ((float)x-(float)64)/(float)8
#define HIP_UDP_PORT   50500
#define HIP_KEEPALIVE_TIMEOUT   20
#define HIPA_SRC(h)   ((struct sockaddr*)&h->hi->addrs.addr)
#define HIPA_DST(h)   ((struct sockaddr*)&h->peer_hi->addrs.addr)
#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

Typedefs

typedef __u8 hip_hit [HIT_SIZE]
typedef _udphdr udphdr
typedef _hiphdr hiphdr
typedef _hipcookie hipcookie
typedef _hip_assoc hip_assoc
typedef _hip_reg hip_reg
typedef _returned returned
typedef _from from
typedef _via via
typedef _sockaddr_list sockaddr_list
typedef _r1_cache_entry r1_cache_entry
typedef _hi_node hi_node
typedef _dh_cache_entry dh_cache_entry
typedef _pseudo_header6 pseudo_header6
typedef _pseudo_header pseudo_header
typedef _tlv_head tlv_head
typedef _tlv_esp_info tlv_esp_info
typedef _tlv_r1_counter tlv_r1_counter
typedef _tlv_puzzle tlv_puzzle
typedef _tlv_solution tlv_solution
typedef _tlv_diffie_hellman tlv_diffie_hellman
typedef _tlv_diffie_hellman_pub_value tlv_diffie_hellman_pub_value
typedef _tlv_hip_transform tlv_hip_transform
typedef _tlv_esp_transform tlv_esp_transform
typedef _tlv_encrypted tlv_encrypted
typedef _tlv_host_id tlv_host_id
typedef _tlv_cert tlv_cert
typedef _tlv_reg_info tlv_reg_info
typedef _tlv_reg_request tlv_reg_request
typedef _tlv_reg_response tlv_reg_response
typedef _tlv_reg_failed tlv_reg_failed
typedef _tlv_reg_required tlv_reg_required
typedef _tlv_echo tlv_echo
typedef _tlv_hmac tlv_hmac
typedef _tlv_hip_sig tlv_hip_sig
typedef _tlv_seq tlv_seq
typedef _tlv_ack tlv_ack
typedef _tlv_notify tlv_notify
typedef _locator locator
typedef _tlv_locator tlv_locator
typedef _tlv_from tlv_from
typedef _tlv_rvs_hmac tlv_rvs_hmac
typedef _tlv_via_rvs tlv_via_rvs
typedef _thread_arg thread_arg

Enumerations

enum  DEBUG_MODES { D_DEFAULT, D_VERBOSE, D_QUIET }
enum  LOG_LEVELS {
  NORM, NORMT, WARN, ERR,
  QOUT
}


Define Documentation

#define ACCEPTABLE_R1_COUNT_RANGE   2

#define DBG (  )     x

#define DSA_PRIV   20

#define FALSE   0

#define H_PROTO_UDP   17

#define HIP_ALIGN   4

#define HIP_CONF_FILENAME   "../etc/hip/hip.conf"

#define HIP_DEFAULT_CONF_FILENAME   "/usr/local/etc/hip/hip.conf"

#define HIP_DEFAULT_KNOWNID_FILENAME   "/usr/local/etc/hip/known_host_identities.xml"

#define HIP_DEFAULT_MYID_FILENAME   "/usr/local/etc/hip/my_host_identities.xml"

#define HIP_DEFAULT_REG_FILENAME   "/usr/local/etc/hip/registered_host_identities.xml"

#define HIP_DSA_SIG_SIZE   41

#define HIP_ESP_UDP_PORT   54500

#define HIP_KEEPALIVE_TIMEOUT   20

#define HIP_KEY_SIZE   24

#define HIP_KNOWNID_FILENAME   "../etc/hip/known_host_identities.xml"

#define HIP_LOCK_FILENAME   "/var/run/hip.pid"

#define HIP_LOG_FILENAME   "/var/log/hipd.log"

#define HIP_MYID_FILENAME   "../etc/hip/my_host_identities.xml"

#define HIP_PUB_PREFIX   "../etc/hip/"

#define HIP_PUB_SUFFIX   "_host_identities.pub.xml"

#define HIP_REG_FILENAME   "../etc/hip/registered_host_identities.xml"

#define HIP_RES_SHIM6_BITS   0x01

#define HIP_UDP_PORT   50500

#define HIP_UPDATE_BIND_CHECKS   5

#define HIPA_DST (  )     ((struct sockaddr*)&h->peer_hi->addrs.addr)

#define HIPA_SRC (  )     ((struct sockaddr*)&h->hi->addrs.addr)

#define HIT2LSI (  ) 

Value:

( 0x01000000L | \
                     ((a[HIT_SIZE-3]<<16)+(a[HIT_SIZE-2]<<8)+(a[HIT_SIZE-1])))

#define HIT_PREFIX_SHA1_32BITS   0x20010010

#define HIT_SIZE   16

#define KEYMAT_SIZE   (4 * NUMKEYS * HIP_KEY_SIZE)

#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 MAX_CONNECTIONS   32

#define MAX_HI_BITS   2048

#define MAX_HI_NAMESIZE   255

#define MAX_HITS   32

#define MAX_LOCATORS   8

#define MAX_OPAQUE_SIZE   255

#define MAX_REGISTRATIONS   1024

#define MAX_SIG_SIZE   512

#define NUMKEYS   8

#define R1_CACHE_SIZE   8

#define SA (  )     ((struct sockaddr*)x)

#define SA2IP (  ) 

Value:

(((struct sockaddr*)x)->sa_family==AF_INET) ? \
        (void*)&((struct sockaddr_in*)x)->sin_addr : \
        (void*)&((struct sockaddr_in6*)x)->sin6_addr

#define SADB_MSG_SIZE_ADD   300

#define SADB_MSG_SIZE_DELETE   150

#define SADB_RESPONSE_BUFFER   20

#define SAIPLEN (  )     (((struct sockaddr*)x)->sa_family==AF_INET) ? 4 : 16

#define SALEN (  ) 

Value:

(((struct sockaddr*)x)->sa_family==AF_INET) ? \
        sizeof(struct sockaddr_in) : sizeof(struct sockaddr_in6)

#define SPI_RESERVED   255

#define TDIFF ( a,
 )     ((a).tv_sec - (b).tv_sec)

#define TRUE   1

#define yesno (  )     x ? "yes" : "no"

#define YLIFE (  )     ((float)x-(float)64)/(float)8


Typedef Documentation

typedef struct _dh_cache_entry dh_cache_entry

typedef struct _from from

typedef struct _hi_node hi_node

typedef struct _hip_assoc hip_assoc

typedef __u8 hip_hit[HIT_SIZE]

typedef struct _hip_reg hip_reg

typedef struct _hipcookie hipcookie

typedef struct _hiphdr hiphdr

typedef struct _locator locator

typedef struct _pseudo_header pseudo_header

typedef struct _pseudo_header6 pseudo_header6

typedef struct _r1_cache_entry r1_cache_entry

typedef struct _returned returned

typedef struct _sockaddr_list sockaddr_list

typedef struct _thread_arg thread_arg

typedef struct _tlv_ack tlv_ack

typedef struct _tlv_cert tlv_cert

typedef struct _tlv_diffie_hellman tlv_diffie_hellman

typedef struct _tlv_diffie_hellman_pub_value tlv_diffie_hellman_pub_value

typedef struct _tlv_echo tlv_echo

typedef struct _tlv_encrypted tlv_encrypted

typedef struct _tlv_esp_info tlv_esp_info

typedef struct _tlv_esp_transform tlv_esp_transform

typedef struct _tlv_from tlv_from

typedef struct _tlv_head tlv_head

typedef struct _tlv_hip_sig tlv_hip_sig

typedef struct _tlv_hip_transform tlv_hip_transform

typedef struct _tlv_hmac tlv_hmac

typedef struct _tlv_host_id tlv_host_id

typedef struct _tlv_locator tlv_locator

typedef struct _tlv_notify tlv_notify

typedef struct _tlv_puzzle tlv_puzzle

typedef struct _tlv_r1_counter tlv_r1_counter

typedef struct _tlv_reg_failed tlv_reg_failed

typedef struct _tlv_reg_info tlv_reg_info

typedef struct _tlv_reg_request tlv_reg_request

typedef struct _tlv_reg_required tlv_reg_required

typedef struct _tlv_reg_response tlv_reg_response

typedef struct _tlv_rvs_hmac tlv_rvs_hmac

typedef struct _tlv_seq tlv_seq

typedef struct _tlv_solution tlv_solution

typedef struct _tlv_via_rvs tlv_via_rvs

typedef struct _udphdr udphdr

typedef struct _via via


Enumeration Type Documentation

enum DEBUG_MODES

Enumerator:
D_DEFAULT 
D_VERBOSE 
D_QUIET 

enum LOG_LEVELS

Enumerator:
NORM 
NORMT 
WARN 
ERR 
QOUT 


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