protlib::AddressList Class Reference

#include <source/ariba/utility/transport/tcpip/protlib/address.h>

Collaboration diagram for protlib::AddressList:

Collaboration graph
[legend]

List of all members.

Classes

class  AddrProperty
struct  ltna
struct  ltstr

Public Types

typedef set< char *, ltstriflist_t
typedef set< netaddress, ltnaaddrlist_t

Public Member Functions

 AddressList ()
 ~AddressList ()
iflist_tget_interfaces ()
bool by_interface (bool start_empty=true)
bool add_interface (char *name)
bool del_interface (char *name)
bool add_property (netaddress &na, AddrProperty *p=ConfiguredAddr_P, bool propagate=true)
bool del_property (netaddress &na, AddrProperty *p=ConfiguredAddr_P, bool propagate=true)
bool purge_properties (netaddress &na, bool prop=true)
bool add_host_prop (const char *name, AddrProperty *p=ConfiguredAddr_P)
bool del_host_prop (const char *name, AddrProperty *p=ConfiguredAddr_P)
bool purge_host_prop (const char *name)
bool ignore (netaddress &na, bool propagate=true)
bool unignore (netaddress &na, bool propagate=true)
bool ignore_bogons (void)
bool ignore_locals (void)
bool ignore_loopback (void)
bool addr_is (netaddress &na, AddrProperty *prop)
bool addr_is (const hostaddress &ha, AddrProperty *prop)
bool addr_is_in (netaddress &na, AddrProperty *prop)
bool addr_is_in (const hostaddress &ha, AddrProperty *prop)
addrlist_tget_addrs (AddrProperty *prop=LocalAddr_P)
netaddressget_first (AddrProperty *p=LocalAddr_P, bool IPv4=true)
netaddressget_src_addr (const netaddress &dest, uint32_t *prefs)

Static Public Attributes

static AddrPropertyLocalAddr_P
static AddrPropertyConfiguredAddr_P

Private Types

typedef map< AddrProperty *, bool > propmap_t
typedef RadixTrie< propmap_taddr2prop_t

Private Member Functions

void getifaddrs_iflist (iflist_t &list)
bool getifaddrs_is_local (netaddress &na)
void getifaddrs_get_addrs (addrlist_t &list)
void bequeath (addr2prop_t::node *head, AddrProperty *p, bool add=true)
void collect (addr2prop_t::node *head, AddrProperty *p, addrlist_t &list)
addr2prop_t::node * collect_first (addr2prop_t::node *head, AddrProperty *p)

Private Attributes

iflist_tinterfaces
addr2prop_t prop_trie

Static Private Attributes

static AddrPropertyIgnoreAddr_P
static AddrPropertyAnyAddr_P


Detailed Description

Definition at line 1115 of file address.h.


Member Typedef Documentation

Definition at line 1213 of file address.h.

Definition at line 1155 of file address.h.

typedef set<char *, ltstr> protlib::AddressList::iflist_t

Definition at line 1154 of file address.h.

typedef map<AddrProperty *, bool> protlib::AddressList::propmap_t [private]

Definition at line 1212 of file address.h.


Member Function Documentation

bool protlib::AddressList::addr_is ( const hostaddress ha,
AddrProperty prop 
) [inline]

Definition at line 1196 of file address.h.

References addr_is().

bool protlib::AddressList::addr_is_in ( const hostaddress ha,
AddrProperty prop 
) [inline]

Definition at line 1202 of file address.h.

References addr_is_in().

bool protlib::AddressList::purge_host_prop ( const char *  name  )  [inline]

Definition at line 1183 of file address.h.

References AnyAddr_P, and del_host_prop().

bool protlib::AddressList::purge_properties ( netaddress na,
bool  prop = true 
) [inline]

Definition at line 1178 of file address.h.

References AnyAddr_P, and del_property().


Member Data Documentation

Definition at line 1216 of file address.h.

Referenced by add_property(), addr_is(), addr_is_in(), del_property(), get_addrs(), and get_first().


The documentation for this class was generated from the following files:

Generated on Fri Aug 14 23:39:48 2009 for Ariba by  doxygen 1.5.8