|
|
FEA class for virtual (logical) interface state.
typedef map<const IPv4, IfTreeAddr4*> IPv4Map | IPv4Map |
typedef map<const IPv6, IfTreeAddr6*> IPv6Map | IPv6Map |
IfTreeVif (IfTreeInterface& iface, const string& vifname)
| IfTreeVif |
~IfTreeVif ()
| ~IfTreeVif |
IfTree& iftree ()
| iftree |
const string& ifname ()
| ifname |
[const]
const string& vifname ()
| vifname |
[const]
uint32_t pif_index ()
| pif_index |
[const]
void set_pif_index (uint32_t v)
| set_pif_index |
uint32_t vif_index ()
| vif_index |
[const]
void set_vif_index (uint32_t v)
| set_vif_index |
bool enabled ()
| enabled |
[const]
bool broadcast ()
| broadcast |
[const]
bool loopback ()
| loopback |
[const]
bool point_to_point ()
| point_to_point |
[const]
bool multicast ()
| multicast |
[const]
bool pim_register ()
| pim_register |
[const]
void set_enabled (bool en)
| set_enabled |
void set_broadcast (bool v)
| set_broadcast |
void set_loopback (bool v)
| set_loopback |
void set_point_to_point (bool v)
| set_point_to_point |
void set_multicast (bool v)
| set_multicast |
void set_pim_register (bool v)
| set_pim_register |
uint32_t vif_flags ()
| vif_flags |
[const]
Get the system-specific vif flags.
Typically, this value is read from the underlying system, and is used only for internal purpose.
Returns: the system-specific vif flags.
void set_vif_flags (uint32_t v)
| set_vif_flags |
Store the system-specific vif flags.
Typically, this value is read from the underlying system, and is used only for internal purpose.
Parameters:
v | the value of the system-specific vif flags to store. |
bool is_vlan ()
| is_vlan |
[const]
void set_vlan (bool v)
| set_vlan |
uint16_t vlan_id ()
| vlan_id |
[const]
void set_vlan_id (uint16_t v)
| set_vlan_id |
const IPv4Map& ipv4addrs ()
| ipv4addrs |
[const]
IPv4Map& ipv4addrs ()
| ipv4addrs |
const IPv6Map& ipv6addrs ()
| ipv6addrs |
[const]
IPv6Map& ipv6addrs ()
| ipv6addrs |
void copy_recursive_vif (const IfTreeVif& other_vif)
| copy_recursive_vif |
Copy recursively from another vif.
Parameters:
other_vif | the vif to copy recursively from. |
void add_recursive_addr (const IfTreeAddr4& other_addr, bool mark_state)
| add_recursive_addr |
Add recursively a new IPv4 address.
Parameters:
other_addr | the address to add recursively. |
mark_state | if true, then mark the state same as the state from the other address, otherwise the state will be CREATED. |
void add_recursive_addr (const IfTreeAddr6& other_addr, bool mark_state)
| add_recursive_addr |
Add recursively a new IPv6 address.
Parameters:
other_addr | the address to add recursively. |
mark_state | if true, then mark the state same as the state from the other address, otherwise the state will be CREATED. |
int add_addr (const IPv4& addr)
| add_addr |
Add IPv4 address.
Parameters:
addr | address to be added. |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int remove_addr (const IPv4& addr)
| remove_addr |
Mark IPv4 address as DELETED.
Deletion occurs when finalize_state is called.
Parameters:
addr | address to labelled. |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int add_addr (const IPv6& addr)
| add_addr |
Add IPv6 address.
Parameters:
addr | address to be added. |
Returns: XORP_OK on success, otherwise XORP_ERROR.
int remove_addr (const IPv6& addr)
| remove_addr |
Mark IPv6 address as DELETED.
Deletion occurs when finalize_state is called.
Parameters:
addr | address to labelled. |
Returns: XORP_OK on success, otherwise XORP_ERROR.
IfTreeAddr4* find_addr (const IPv4& addr)
| find_addr |
Find an IPv4 address.
Parameters:
addr | the address to search for. |
Returns: a pointer to the vif (IfTreeAddr4) or NULL if not found.
const IfTreeAddr4* find_addr (const IPv4& addr)
| find_addr |
[const]
Find a const IPv4 address.
Parameters:
addr | the address to search for. |
Returns: a const pointer to the vif (IfTreeAddr4) or NULL if not found.
IfTreeAddr6* find_addr (const IPv6& addr)
| find_addr |
Find an IPv6 address.
Parameters:
addr | the address to search for. |
Returns: a pointer to the vif (IfTreeAddr6) or NULL if not found.
const IfTreeAddr6* find_addr (const IPv6& addr)
| find_addr |
[const]
Find a const IPv6 address.
Parameters:
addr | the address to search for. |
Returns: a pointer to the vif (IfTreeAddr6) or NULL if not found.
void propagate_flags_to_addresses ()
| propagate_flags_to_addresses |
Propagate vif flags to the addresses.
void copy_state (const IfTreeVif& o)
| copy_state |
Copy state of internal variables from another IfTreeVif.
bool is_same_state (const IfTreeVif& o)
| is_same_state |
Test if the vif-specific internal state is same.
Parameters:
o | the IfTreeVif to compare against. |
Returns: true if the vif-specific internal state is same.
void finalize_state ()
| finalize_state |
Reimplemented from IfTreeItem.
string str ()
| str |
[const]
Reimplemented from IfTreeItem.