#include <source/ariba/utility/transport/tcpip/protlib/address.h>
Classes | |
class | AddrProperty |
struct | ltna |
struct | ltstr |
Public Types | |
typedef set< char *, ltstr > | iflist_t |
typedef set< netaddress, ltna > | addrlist_t |
Public Member Functions | |
AddressList () | |
~AddressList () | |
iflist_t * | get_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_t * | get_addrs (AddrProperty *prop=LocalAddr_P) |
netaddress * | get_first (AddrProperty *p=LocalAddr_P, bool IPv4=true) |
netaddress * | get_src_addr (const netaddress &dest, uint32_t *prefs) |
Static Public Attributes | |
static AddrProperty * | LocalAddr_P |
static AddrProperty * | ConfiguredAddr_P |
Private Types | |
typedef map< AddrProperty *, bool > | propmap_t |
typedef RadixTrie< propmap_t > | addr2prop_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_t * | interfaces |
addr2prop_t | prop_trie |
Static Private Attributes | |
static AddrProperty * | IgnoreAddr_P |
static AddrProperty * | AnyAddr_P |
Definition at line 1115 of file address.h.
typedef RadixTrie<propmap_t> protlib::AddressList::addr2prop_t [private] |
typedef set<netaddress, ltna> protlib::AddressList::addrlist_t |
typedef set<char *, ltstr> protlib::AddressList::iflist_t |
typedef map<AddrProperty *, bool> protlib::AddressList::propmap_t [private] |
bool protlib::AddressList::addr_is | ( | const hostaddress & | ha, | |
AddrProperty * | prop | |||
) | [inline] |
bool protlib::AddressList::addr_is_in | ( | const hostaddress & | ha, | |
AddrProperty * | prop | |||
) | [inline] |
bool protlib::AddressList::purge_host_prop | ( | const char * | name | ) | [inline] |
bool protlib::AddressList::purge_properties | ( | netaddress & | na, | |
bool | prop = true | |||
) | [inline] |
iflist_t* protlib::AddressList::interfaces [private] |
Definition at line 1215 of file address.h.
Referenced by add_interface(), AddressList(), by_interface(), del_interface(), get_interfaces(), getifaddrs_get_addrs(), and getifaddrs_is_local().
addr2prop_t protlib::AddressList::prop_trie [private] |
Definition at line 1216 of file address.h.
Referenced by add_property(), addr_is(), addr_is_in(), del_property(), get_addrs(), and get_first().