/* * The component provides interface to receive IP address and IF * events over netlink from the kernel. */ #ifndef NETDEV_H #define NETDEV_H #include #ifndef __u32 /* Fedore Core 3/4 and Enterprise linux 4 is broken. */ # include #endif #include /* get_my_addresses() support */ #include /* get_my_addresses() support */ #include #include "nlink.h" #include "list.h" #include "debug.h" #define HIP_RTDS_TAB_LEN 256 extern int address_count; extern struct list_head addresses; struct rtnl_handle; int hip_devaddr2ifindex(struct in6_addr *addr); int hip_netdev_init_addresses(struct rtnl_handle *nl); void delete_all_addresses(void); int hip_netdev_event(const struct nlmsghdr *msg, int len, void *arg); int filter_address(struct sockaddr *addr, int ifindex); void add_address_to_list(struct sockaddr *addr, int ifindex); #endif /* NETDEV_H */