nic.h File Reference

#include <sys/types.h>
#include <sys/queue.h>
#include <netinet/in.h>
#include <net/if.h>
#include <stdint.h>
#include <stdarg.h>
#include <ip_addr.h>

Go to the source code of this file.

Data Structures

struct  nic_ip_address_list_node_s
struct  nic_ip_route_node_s
struct  nic_if_name_s

Typedefs

typedef nic_sNIC_t
typedef nic_ip_address_sIPaddr_t
typedef nic_route_sIProute_t
typedef nlh_sNLH_t
typedef enum nic_error_level_e NIC_Error_Level_t
typedef enum nic_result_e NIC_Res_t
typedef void(*) NIC_Error_Handler_t (NLH_t, NIC_Error_Level_t, char *,...)
typedef int(*) NIC_VA_Error_Handler_t (void *, int priority, char *fmt, va_list va)
typedef void(*) NIC_handler_t (NLH_t nh, NIC_t, void *)
typedef void(*) IPaddr_Handler_t (NLH_t nh, IPaddr_t, void *)
typedef void(*) IProute_handler_t (NLH_t nh, IProute_t, void *)

Enumerations

enum  nic_error_level_e { NIC_FATAL, NIC_ERR = 3, NIC_WARN = 4, NIC_DEBUG = 7 }
enum  nic_result_e { NIC_FAIL = -1, NIC_OK = 0, NIC_SUCCESS = 0 }

Functions

NLH_t nic_open (NIC_Error_Handler_t)
void nic_close (NLH_t *)
void nic_set_logger (NLH_t, NIC_Error_Handler_t)
void nic_set_va_logger (NLH_t, NIC_VA_Error_Handler_t handler, void *handler_arg)
void nic_sys_logger (NLH_t, NIC_Error_Level_t, char *fmt,...)
void nic_stderr_logger (NLH_t, NIC_Error_Level_t, char *fmt,...)
NIC_Res_t nic_set_loglevel (NLH_t, NIC_Error_Level_t)
NIC_t nic_by_name (NLH_t, char *)
NIC_t nic_by_index (NLH_t, int16_t)
void nic_foreach (NLH_t nh, NIC_handler_t handler, void *arg)
char * nic_get_name (NIC_t)
int16_t nic_get_index (NIC_t)
ip_addr_t nic_get_link_addr (NIC_t)
ip_addr_t nic_get_link_broadcast (NIC_t)
NIC_Res_t nic_update (NIC_t nic)
uint32_t nic_get_flags (NIC_t)
void nic_set_flags (NIC_t, uint32_t)
uint32_t nic_get_mtu (NIC_t)
void nic_set_mtu (NIC_t, uint32_t)
char * nic_get_qdisc (NIC_t)
void nic_set_qdisc (NIC_t, char *)
uint32_t nic_get_txqlen (NIC_t)
void nic_set_txqlen (NIC_t, uint32_t)
uint32_t nic_get_link (NIC_t)
void nic_set_link (NIC_t, uint32_t)
uint32_t nic_get_weight (NIC_t)
void nic_set_weight (NIC_t, uint32_t)
uint32_t nic_get_master (NIC_t)
void nic_set_master (NIC_t, uint32_t)
uint32_t nic_get_cost (NIC_t)
void nic_set_cost (NIC_t, uint32_t)
uint32_t nic_get_priority (NIC_t)
void nic_set_priority (NIC_t, uint32_t)
uint32_t nic_get_protinfo (NIC_t)
void nic_set_protinfo (NIC_t, uint32_t)
rtnl_link_stats nic_get_stats (NIC_t)
rtnl_link_ifmap nic_get_ifmap (NIC_t)
void nic_addr_foreach (NLH_t, IPaddr_Handler_t, void *)
IPaddr_t nic_addr_ip (NLH_t nh, ip_addr_t *)
ip_addr_t nic_ip_addr (IPaddr_t)
IPaddr_t nic_addr (NLH_t nh, ip_addr_t)
IPaddr_t nic_addr_local (NLH_t nh, ip_addr_t)
ip_addr_t nic_addr_get_local (IPaddr_t)
void nic_addr_set_local (IPaddr_t, ip_addr_t)
uint8_t nic_addr_get_family (IPaddr_t)
uint8_t nic_addr_get_prefix (IPaddr_t)
void nic_addr_set_prefix (IPaddr_t, uint8_t)
ip_addr_t nic_addr_get_broadcast (IPaddr_t)
void nic_addr_set_broadcast (IPaddr_t, ip_addr_t)
ip_addr_t nic_addr_get_anycast (IPaddr_t)
void nic_addr_set_anycast (IPaddr_t, ip_addr_t)
ip_addr_t nic_addr_get_multicast (IPaddr_t)
void nic_addr_set_multicast (IPaddr_t, ip_addr_t)
int8_t nic_addr_get_scope (IPaddr_t)
void nic_addr_set_scope (IPaddr_t, int8_t)
uint8_t nic_addr_get_flags (IPaddr_t)
void nic_addr_set_flags (IPaddr_t, uint8_t)
const char * nic_addr_get_label (IPaddr_t)
void nic_addr_set_label (IPaddr_t, const char *)
ifa_cacheinfo nic_addr_get_cacheinfo (IPaddr_t)
void nic_addr_set_cacheinfo (IPaddr_t, struct ifa_cacheinfo *)
IPaddr_list_tnic_address_list_new (IPaddr_t,...)
void nic_address_list_free (IPaddr_list_t *)
NIC_Res_t nic_add_address (NIC_t, IPaddr_t)
NIC_Res_t nic_remove_address (NIC_t, IPaddr_t)
NIC_Res_t nic_add_addresses (NIC_t, IPaddr_list_t *)
NIC_Res_t nic_remove_addresses (NIC_t, IPaddr_list_t *)
void nic_addr_free (void *)
void nic_route_foreach (NLH_t, IProute_handler_t, void *)
int32_t nic_route_get_table (IProute_t)
void nic_route_set_table (IProute_t, uint8_t table)
char * nic_route_get_table_name (int32_t, char *buf, int len)
int32_t nic_route_get_table_number (char *)
uint8_t nic_route_get_family (IProute_t)
uint8_t nic_route_get_scope (IProute_t)
void nic_route_set_scope (IProute_t, uint8_t)
uint32_t nic_route_get_flags (IProute_t)
void nic_route_set_flags (IProute_t, uint32_t)
uint8_t nic_route_get_dst_len (IProute_t)
void nic_route_set_dst_len (IProute_t, uint8_t)
uint8_t nic_route_get_src_len (IProute_t)
void nic_route_set_src_len (IProute_t, uint8_t)
uint8_t nic_route_get_type (IProute_t)
void nic_route_set_type (IProute_t, uint8_t)
uint8_t nic_route_get_protocol (IProute_t)
void nic_route_set_protocol (IProute_t, uint8_t)
uint8_t nic_route_get_tos (IProute_t)
void nic_route_set_tos (IProute_t, uint8_t)
ip_addr_t nic_route_get_dst (IProute_t)
void nic_route_set_dst (IProute_t, ip_addr_t)
ip_addr_t nic_route_get_src (IProute_t)
void nic_route_set_src (IProute_t, ip_addr_t)
ip_addr_t nic_route_get_gateway (IProute_t)
void nic_route_set_gateway (IProute_t, ip_addr_t)
ip_addr_t nic_route_get_prefsrc (IProute_t)
void nic_route_set_prefsrc (IProute_t, ip_addr_t)
int16_t nic_route_get_oif (IProute_t)
void nic_route_set_oif (IProute_t, uint16_t)
NIC_if_name_t nic_route_get_iif (IProute_t)
void nic_route_set_iif (IProute_t, char *)
uint32_t nic_route_get_priority (IProute_t)
void nic_route_set_priority (IProute_t, uint32_t)
uint32_t nic_route_get_protoinfo (IProute_t)
void nic_route_set_protoinfo (IProute_t, uint32_t)
uint32_t nic_route_get_session (IProute_t)
void nic_route_set_session (IProute_t, uint32_t)
uint32_t nic_route_get_flow (IProute_t)
void nic_route_set_flow (IProute_t, uint32_t)
uint32_t nic_route_get_mp_algo (IProute_t)
void nic_route_free (void *)
NIC_Res_t nic_add_route (IProute_t)
NIC_Res_t nic_update_route (IProute_t)
NIC_Res_t nic_remove_route (IProute_t)
IProute_list_tnic_route_list_new (IProute_t,...)
void nic_route_list_free (IProute_list_t *)
NIC_Res_t nic_add_routes (IProute_list_t *)
NIC_Res_t nic_remove_routes (IProute_list_t *)
NIC_Res_t nic_update_routes (IProute_list_t *)
NIC_Res_t nic_configure_resolver (NLH_t nh, IPaddr_list_t *dns_servers, char *search_list)
NIC_Res_t nic_set_hostname (NLH_t nh, char *hostname)
NIC_Res_t nic_configure (NLH_t nh, NIC_t nic, IPaddr_list_t *addresses, IProute_list_t *routes, IPaddr_list_t *dns_servers, char *search_list, char *host_name)

Variables

typedef IPaddr_list_t
typedef IProute_list_t


Detailed Description

Network Interface Configurator (NIC) for libdhcp .

Provides facilities for configuring network interfaces, addresses, and routes, with an interface to the libnl netlink library.

Author:
Jason Vas Dias <jvdias@redhat.com>

Definition in file nic.h.


Generated on Thu Aug 10 21:26:26 2006 for libdhcp by  doxygen 1.4.7