| 
 | 
 | ||||||||||||||||
| XrlIO (EventLoop& eventloop, XrlRouter& xrl_router,
	  const string& feaname, const string& ribname) | XrlIO | 
Construct an XrlIO instance.
Parameters:
| eventloop | the event loop for the OLSR process. | 
| xrl_router | the name of the XRL router instance. | 
| feaname | the name of the FEA XRL target. | 
| ribname | the name of the RIB XRL target. | 
| ~XrlIO () | ~XrlIO | 
| int  startup () | startup | 
Startup operation.
Returns: XORP_OK on success, otherwise XORP_ERROR.
Reimplemented from ServiceBase.
| int  shutdown () | shutdown | 
Shutdown operation.
Returns: XORP_OK on success, otherwise XORP_ERROR.
Reimplemented from ServiceBase.
| void  component_up (string name) | component_up | 
Called when internal subsystem comes up.
Parameters:
| name | the name of the affected subsystem | 
| void  component_down (string name) | component_down | 
Called when internal subsystem goes down.
Parameters:
| name | the name of the affected subsystem | 
| void  receive (const string& sockid,
	const string& interface, const string& vif,
	const IPv4& src, const uint16_t& sport,
	const vector<uint8_t>& payload) | receive | 
Receive UDP datagrams. Specific to XrlIO.
Parameters:
| sockid | the id of the socket. | 
| interface | the interface where received. | 
| vif | the vif where received. | 
| src | the source port of the UDP datagram. | 
| sport | the source address of the UDP datagram. | 
| payload | the datagram payload. | 
| bool  send (const string& interface, const string& vif,
	const IPv4& src, const uint16_t& sport,
	const IPv4& dst, const uint16_t& dport,
	uint8_t* data, const uint32_t& len) | send | 
Send a UDP datagram on a specific link.
Parameters:
| interface | the interface to send from. | 
| vif | the vif to send from. | 
| src | the IPv4 address to send from. | 
| sport | the UDP port to send from. | 
| dst | the IPv4 address to send to. | 
| dport | the UDP port to send to. | 
| data | the datagram payload. | 
| len | the length of the buffer @param data | 
Returns: true if the datagram was queued successfully, otherwise false.
Reimplemented from IO.
| bool  enable_interface_vif (const string& interface, const string& vif) | enable_interface_vif | 
Enable the interface/vif to receive frames. XXX
Parameters:
| interface | the name of the interface to enable. | 
| vif | the name of the vif to enable. | 
Returns: true if the interface/vif was enabled successfully, otherwise false.
| bool  disable_interface_vif (const string& interface, const string& vif) | disable_interface_vif | 
Disable this interface/vif from receiving frames. XXX
Parameters:
| interface | the name of the interface to disable. | 
| vif | the name of the vif to disable. | 
Returns: true if the interface/vif was disabled successfully, otherwise false.
| bool  enable_address (const string& interface, const string& vif,
	const IPv4& address, const uint16_t& port,
	const IPv4& all_nodes_address) | enable_address | 
Enable an IPv4 address and port for OLSR datagram reception and transmission.
Parameters:
| interface | the interface to enable. | 
| vif | the vif to enable. | 
| address | the address to enable. | 
| port | the port to enable. | 
| all_nodes_address | the address to transmit to. | 
Returns: true if the address was enabled, otherwise false.
Reimplemented from IO.
| bool  disable_address (const string& interface, const string& vif,
	const IPv4& address, const uint16_t& port) | disable_address | 
Disable an IPv4 address and port for OLSR datagram reception.
Parameters:
| interface | the interface to disable. | 
| vif | the vif to disable. | 
| address | the address to disable. | 
| port | the port to disable. | 
Returns: true if the address was disabled, otherwise false.
Reimplemented from IO.
| bool  is_interface_enabled (const string& interface) | is_interface_enabled | 
[const]
Test whether an interface is enabled.
Parameters:
| interface | the name of the interface to test. | 
Returns: true if it exists and is enabled, otherwise false.
Reimplemented from IO.
| bool  is_vif_enabled (const string& interface, const string& vif) | is_vif_enabled | 
[const]
Test whether an interface/vif is enabled.
Parameters:
| interface | the name of the interface to test. | 
| vif | the name of the vif to test. | 
Returns: true if it exists and is enabled, otherwise false.
Reimplemented from IO.
| bool  is_vif_broadcast_capable (const string& interface,
	const string& vif) | is_vif_broadcast_capable | 
Test whether this interface/vif is broadcast capable.
Parameters:
| interface | the interface to test. | 
| vif | the vif to test. | 
Returns: true if it is broadcast capable, otherwise false.
Reimplemented from IO.
| bool  is_vif_multicast_capable (const string& interface,
	const string& vif) | is_vif_multicast_capable | 
Test whether this interface/vif is multicast capable.
Parameters:
| interface | the interface to test. | 
| vif | the vif to test. | 
Returns: true if it is multicast capable, otherwise false.
Reimplemented from IO.
| bool  is_vif_loopback (const string& interface, const string& vif) | is_vif_loopback | 
Reimplemented from IO.
| bool  is_address_enabled (const string& interface, const string& vif,
			    const IPv4& address) | is_address_enabled | 
[const]
Test whether an interface/vif/address is enabled.
Parameters:
| interface | the name of the interface to test. | 
| vif | the name of the vif to test. | 
| address | the address to test. | 
Returns: true if it exists and is enabled, otherwise false.
Reimplemented from IO.
| bool  get_addresses (const string& interface, const string& vif,
		       list<IPv4>& addresses) | get_addresses | 
[const]
Get all addresses associated with this interface/vif.
Parameters:
| interface | the name of the interface | 
| vif | the name of the vif | 
| addresses | (out argument) list of associated addresses | 
Returns: true if there are no errors.
Reimplemented from IO.
| bool  get_broadcast_address (const string& interface,
	const string& vif, IPv4& address) | get_broadcast_address | 
[const]
Get the broadcast address associated with this vif.
Parameters:
| interface | the name of the interface | 
| vif | the name of the vif | 
| address | (out argument) "all nodes" address | 
Returns: true if there are no errors.
Reimplemented from IO.
| bool  get_broadcast_address (const string& interface,
			       const string& vif,
			       const IPv4& address,
			       IPv4& bcast_address) | get_broadcast_address | 
[const]
Get the broadcast address associated with this IPv4 address.
Parameters:
| interface | the name of the interface | 
| vif | the name of the vif | 
| address | IPv4 binding address | 
| bcast_address | (out argument) primary broadcast address | 
Returns: true if there are no errors.
Reimplemented from IO.
| bool  get_interface_id (const string& interface, uint32_t& interface_id) | get_interface_id | 
Get the interface ID.
Parameters:
| interface | the name of the interface. | 
| interface_id | the value if found.. | 
Returns: true if the interface ID has been found..
Reimplemented from IO.
| uint32_t  get_prefix_length (const string& interface, const string& vif,
			        IPv4 address) | get_prefix_length | 
Obtain the subnet prefix length for an interface/vif/address.
Parameters:
| interface | the name of the interface. | 
| vif | the name of the vif. | 
| address | the address. | 
Returns: the subnet prefix length for the address.
| uint32_t  get_mtu (const string& interface) | get_mtu | 
Obtain the MTU for an interface.
Parameters:
| interface | the name of the interface. | 
Returns: the mtu for the interface.
Reimplemented from IO.
| void  register_rib () | register_rib | 
| void  unregister_rib () | unregister_rib | 
Remove registration from the RIB.
| void  rib_command_done (const XrlError& error, bool up,
			  const char *comment) | rib_command_done | 
Callback method to: signal that an XRL command which has been sent to the RIB has returned.
Parameters:
| error | the XRL command return code. | 
| up | indicates if the RIB component has been brought up or down. | 
| comment | text description of operation being performed. | 
| bool  add_route (IPv4Net net,
		   IPv4 nexthop,
		   uint32_t nexthop_id,
		   uint32_t metric,
		   const PolicyTags& policytags) | add_route | 
Add route to RIB.
Parameters:
| net | network | 
| nexthop_id | interface ID towards the nexthop | 
| metric | to network | 
| policytags | policy info to the RIB. | 
Returns: true if the route add was queued successfully, otherwise false.
Reimplemented from IO.
| bool  replace_route (IPv4Net net,
		       IPv4 nexthop,
		       uint32_t nexthop_id,
		       uint32_t metric,
		       const PolicyTags& policytags) | replace_route | 
Replace route in RIB.
Parameters:
| net | network | 
| nexthop_id | interface ID towards the nexthop | 
| metric | to network | 
| policytags | policy info to the RIB. | 
Returns: true if the route replacement was queued successfully, otherwise false.
Reimplemented from IO.
| bool  delete_route (IPv4Net net) | delete_route | 
Delete route from RIB.
Parameters:
| net | the destination to delete route for. | 
Returns: true if the route delete was queued successfully, otherwise false.
Reimplemented from IO.