xorp

XrlRibclientTargetBase Class Reference

Inheritance diagram for XrlRibclientTargetBase:
RibClientTarget

List of all members.

Classes

struct  handler_table

Public Member Functions

 XrlRibclientTargetBase (XrlCmdMap *cmds=0)
 Constructor.
virtual ~XrlRibclientTargetBase ()
 Destructor.
bool set_command_map (XrlCmdMap *cmds)
 Set command map.
const string & get_name () const
 Get Xrl instance name associated with command map.
const char * version () const
 Get version string of instance.
 XrlRibclientTargetBase (XrlCmdMap *cmds=0)
 Constructor.
virtual ~XrlRibclientTargetBase ()
 Destructor.
bool set_command_map (XrlCmdMap *cmds)
 Set command map.
const string & get_name () const
 Get Xrl instance name associated with command map.
const char * version () const
 Get version string of instance.

Protected Member Functions

virtual XrlCmdError rib_client_0_1_route_info_changed4 (const IPv4 &addr, const uint32_t &prefix_len, const IPv4 &nexthop, const uint32_t &metric, const uint32_t &admin_distance, const string &protocol_origin)=0
 Pure-virtual function that needs to be implemented to:
virtual XrlCmdError rib_client_0_1_route_info_invalid4 (const IPv4 &addr, const uint32_t &prefix_len)=0
 Pure-virtual function that needs to be implemented to:
virtual XrlCmdError rib_client_0_1_route_info_changed6 (const IPv6 &addr, const uint32_t &prefix_len, const IPv6 &nexthop, const uint32_t &metric, const uint32_t &admin_distance, const string &protocol_origin)=0
virtual XrlCmdError rib_client_0_1_route_info_invalid6 (const IPv6 &addr, const uint32_t &prefix_len)=0
virtual XrlCmdError rib_client_0_1_route_info_changed4 (const IPv4 &addr, const uint32_t &prefix_len, const IPv4 &nexthop, const uint32_t &metric, const uint32_t &admin_distance, const string &protocol_origin)=0
 Pure-virtual function that needs to be implemented to:
virtual XrlCmdError rib_client_0_1_route_info_invalid4 (const IPv4 &addr, const uint32_t &prefix_len)=0
 Pure-virtual function that needs to be implemented to:
virtual XrlCmdError rib_client_0_1_route_info_changed6 (const IPv6 &addr, const uint32_t &prefix_len, const IPv6 &nexthop, const uint32_t &metric, const uint32_t &admin_distance, const string &protocol_origin)=0
virtual XrlCmdError rib_client_0_1_route_info_invalid6 (const IPv6 &addr, const uint32_t &prefix_len)=0

Protected Attributes

XrlCmdMap_cmds

Private Member Functions

XrlCmdRT handle_rib_client_0_1_route_info_changed4 (const XrlArgs &in, XrlCmdOT out)
XrlCmdRT handle_rib_client_0_1_route_info_invalid4 (const XrlArgs &in, XrlCmdOT out)
XrlCmdRT handle_rib_client_0_1_route_info_changed6 (const XrlArgs &in, XrlCmdOT out)
XrlCmdRT handle_rib_client_0_1_route_info_invalid6 (const XrlArgs &in, XrlCmdOT out)
void add_handlers ()
void remove_handlers ()
XrlCmdRT handle_rib_client_0_1_route_info_changed4 (const XrlArgs &in, XrlCmdOT out)
XrlCmdRT handle_rib_client_0_1_route_info_invalid4 (const XrlArgs &in, XrlCmdOT out)
XrlCmdRT handle_rib_client_0_1_route_info_changed6 (const XrlArgs &in, XrlCmdOT out)
XrlCmdRT handle_rib_client_0_1_route_info_invalid6 (const XrlArgs &in, XrlCmdOT out)
void add_handlers ()
void remove_handlers ()

Static Private Attributes

static struct handler_table handlers []
static const size_t num_handlers = (sizeof(XrlRibclientTargetBase::handlers) / sizeof(XrlRibclientTargetBase::handlers[0]))

Constructor & Destructor Documentation

XrlRibclientTargetBase::XrlRibclientTargetBase ( XrlCmdMap cmds = 0)

Constructor.

Parameters:
cmdsan XrlCmdMap that the commands associated with the target should be added to. This is typically the XrlRouter associated with the target.
XrlRibclientTargetBase::~XrlRibclientTargetBase ( ) [virtual]

Destructor.

Dissociates instance commands from command map.

XrlRibclientTargetBase::XrlRibclientTargetBase ( XrlCmdMap cmds = 0)

Constructor.

Parameters:
cmdsan XrlCmdMap that the commands associated with the target should be added to. This is typically the XrlRouter associated with the target.
virtual XrlRibclientTargetBase::~XrlRibclientTargetBase ( ) [virtual]

Destructor.

Dissociates instance commands from command map.


Member Function Documentation

virtual XrlCmdError XrlRibclientTargetBase::rib_client_0_1_route_info_changed4 ( const IPv4 addr,
const uint32_t &  prefix_len,
const IPv4 nexthop,
const uint32_t &  metric,
const uint32_t &  admin_distance,
const string &  protocol_origin 
) [protected, pure virtual]

Pure-virtual function that needs to be implemented to:

Route Info Changed route_info_changed is called by the RIB on the RIB client (typically a routing protocol) that had registered an interest in the routing of an address. This can be because the metric and/or nexthop changed.

Parameters:
addrbase address of the subnet that was registered
prefix_lenprefix length of the subnet that was registered
metricthe routing metric toward the address.
admin_distancethe administratively defined distance toward the address.
protocol_originthe name of the protocol that originated this routing entry.

Implemented in RibClientTarget.

virtual XrlCmdError XrlRibclientTargetBase::rib_client_0_1_route_info_changed4 ( const IPv4 addr,
const uint32_t &  prefix_len,
const IPv4 nexthop,
const uint32_t &  metric,
const uint32_t &  admin_distance,
const string &  protocol_origin 
) [protected, pure virtual]

Pure-virtual function that needs to be implemented to:

Route Info Changed route_info_changed is called by the RIB on the RIB client (typically a routing protocol) that had registered an interest in the routing of an address. This can be because the metric and/or nexthop changed.

Parameters:
addrbase address of the subnet that was registered
prefix_lenprefix length of the subnet that was registered
metricthe routing metric toward the address.
admin_distancethe administratively defined distance toward the address.
protocol_originthe name of the protocol that originated this routing entry.

Implemented in RibClientTarget.

virtual XrlCmdError XrlRibclientTargetBase::rib_client_0_1_route_info_invalid4 ( const IPv4 addr,
const uint32_t &  prefix_len 
) [protected, pure virtual]

Pure-virtual function that needs to be implemented to:

Route Info Invalid route_info_invalid is called by the RIB on the RIB client (typically a routing protocol) that had registere d an interest in the routing of an address. This can be because the information previously reported as applying no longer applies for any number of reasons. When the RIB sends this message, it has automatically de-registered interest in the route, and the client will normally need to send a register_interest request again.

Implemented in RibClientTarget.

virtual XrlCmdError XrlRibclientTargetBase::rib_client_0_1_route_info_invalid4 ( const IPv4 addr,
const uint32_t &  prefix_len 
) [protected, pure virtual]

Pure-virtual function that needs to be implemented to:

Route Info Invalid route_info_invalid is called by the RIB on the RIB client (typically a routing protocol) that had registere d an interest in the routing of an address. This can be because the information previously reported as applying no longer applies for any number of reasons. When the RIB sends this message, it has automatically de-registered interest in the route, and the client will normally need to send a register_interest request again.

Implemented in RibClientTarget.

bool XrlRibclientTargetBase::set_command_map ( XrlCmdMap cmds)

Set command map.

Parameters:
cmdspointer to command map to associate commands with. This argument is typically a pointer to the XrlRouter associated with the target.
Returns:
true on success, false if cmds is null or a command map has already been supplied.
bool XrlRibclientTargetBase::set_command_map ( XrlCmdMap cmds)

Set command map.

Parameters:
cmdspointer to command map to associate commands with. This argument is typically a pointer to the XrlRouter associated with the target.
Returns:
true on success, false if cmds is null or a command map has already been supplied.

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations