OpenHIP 0.9svn1
Defines | Functions | Variables
/home/tomh/svn/openhip/hip/trunk/src/protocol/hip_addr.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <asm/types.h>
#include <unistd.h>
#include <sys/time.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <sys/uio.h>
#include <pthread.h>
#include <ctype.h>
#include <openssl/sha.h>
#include <openssl/dsa.h>
#include <openssl/asn1.h>
#include <openssl/rand.h>
#include <sys/types.h>
#include <errno.h>
#include <fcntl.h>
#include <libxml/tree.h>
#include <netinet/ip6.h>
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
#include <linux/if.h>
#include <sys/ioctl.h>
#include <hip/hip_proto.h>
#include <hip/hip_types.h>
#include <hip/hip_globals.h>
#include <hip/hip_funcs.h>

Defines

#define USE_LINUX_NETLINK

Functions

int read_netlink_response ()
void handle_local_address_change (int add, struct sockaddr *newaddr, int if_index)
void association_add_address (hip_assoc *hip_a, struct sockaddr *newaddr, int if_index)
void association_del_address (hip_assoc *hip_a, struct sockaddr *newaddr, int if_index)
void make_address_active (sockaddr_list *item)
int set_preferred_address_in_list (struct sockaddr *addr)
int hip_netlink_open ()
int get_my_addresses ()
int select_preferred_address ()
int add_address_to_iface (struct sockaddr *addr, int plen, int if_index)
int set_link_params (char *dev, int mtu)
int devname_to_index (char *dev, __u64 *mac)
sockaddr_listadd_address_to_list (sockaddr_list **list, struct sockaddr *addr, int ifi)
void delete_address_from_list (sockaddr_list **list, struct sockaddr *addr, int ifi)
void delete_address_entry_from_list (sockaddr_list **list, sockaddr_list *entry)
int is_my_address (struct sockaddr *addr)
void print_addr_list (sockaddr_list *list)
int hip_handle_netlink (char *data, int length)
void readdress_association (hip_assoc *hip_a, struct sockaddr *newaddr, int if_index)
void readdress_association_x2 (hip_assoc *hip_a, struct sockaddr *newsrcaddr, struct sockaddr *newdstaddr, int if_index)
int update_peer_list_address (const hip_hit peer_hit, struct sockaddr *old_addr, struct sockaddr *new_addr)
int add_other_addresses_to_hi (hi_node *hi, int mine)

Variables

int nl_sequence_number = 0

Define Documentation

#define USE_LINUX_NETLINK

Function Documentation

int add_address_to_iface ( struct sockaddr *  addr,
int  plen,
int  if_index 
)
sockaddr_list* add_address_to_list ( sockaddr_list **  list,
struct sockaddr *  addr,
int  ifi 
)
int add_other_addresses_to_hi ( hi_node hi,
int  mine 
)
void association_add_address ( hip_assoc hip_a,
struct sockaddr *  newaddr,
int  if_index 
)
void association_del_address ( hip_assoc hip_a,
struct sockaddr *  newaddr,
int  if_index 
)
void delete_address_entry_from_list ( sockaddr_list **  list,
sockaddr_list entry 
)
void delete_address_from_list ( sockaddr_list **  list,
struct sockaddr *  addr,
int  ifi 
)
int devname_to_index ( char *  dev,
__u64 mac 
)
int get_my_addresses ( )
void handle_local_address_change ( int  add,
struct sockaddr *  newaddr,
int  if_index 
)
int hip_handle_netlink ( char *  data,
int  length 
)
int hip_netlink_open ( )
int is_my_address ( struct sockaddr *  addr)
void make_address_active ( sockaddr_list item)
void print_addr_list ( sockaddr_list list)
int read_netlink_response ( )
void readdress_association ( hip_assoc hip_a,
struct sockaddr *  newaddr,
int  if_index 
)
void readdress_association_x2 ( hip_assoc hip_a,
struct sockaddr *  newsrcaddr,
struct sockaddr *  newdstaddr,
int  if_index 
)
int select_preferred_address ( )
int set_link_params ( char *  dev,
int  mtu 
)

References flags, log_(), and WARN.

Referenced by post_init_tap().

int set_preferred_address_in_list ( struct sockaddr *  addr)
int update_peer_list_address ( const hip_hit  peer_hit,
struct sockaddr *  old_addr,
struct sockaddr *  new_addr 
)

Variable Documentation