xorp

RibIpcHandler Class Reference

Inheritance diagram for RibIpcHandler:
PeerHandler

List of all members.

Public Member Functions

 RibIpcHandler (XrlStdRouter &xrl_router, BGPMain &bgp)
bool register_ribname (const string &r)
 Set the rib's name, allows for having a dummy rib or not having a RIB at all.
int start_packet ()
 add_route and delete_route are called by the plumbing to propagate a route *to* the peer.
int add_route (const SubnetRoute< IPv4 > &rt, FPAList4Ref &pa_list, bool ibgp, Safi safi)
int replace_route (const SubnetRoute< IPv4 > &old_rt, bool old_ibgp, const SubnetRoute< IPv4 > &new_rt, bool new_ibgp, FPAList4Ref &pa_list, Safi safi)
int delete_route (const SubnetRoute< IPv4 > &rt, FPAList4Ref &pa_list, bool ibgp, Safi safi)
void rib_command_done (const XrlError &error, const char *comment)
PeerOutputState push_packet ()
void set_plumbing (BGPPlumbing *plumbing_unicast, BGPPlumbing *plumbing_multicast)
bool busy ()
bool originate_route (const OriginType origin, const ASPath &aspath, const IPv4Net &nlri, const IPv4 &next_hop, const bool &unicast, const bool &multicast, const PolicyTags &policytags)
 Originate an IPv4 route.
bool withdraw_route (const IPv4Net &nlri, const bool &unicast, const bool &multicast)
 Withdraw an IPv4 route.
virtual uint32_t get_unique_id () const
const IPv4id () const
virtual PeerType get_peer_type () const
virtual bool originate_route_handler () const
 This is the handler that deals with originating routes.
virtual EventLoopeventloop () const

Private Member Functions

bool unregister_rib (string ribname)
 IPv6 stuff.

Private Attributes

string _ribname
XrlStdRouter_xrl_router
XrlQueue< IPv4_v4_queue
const uint32_t _fake_unique_id
IPv4 _fake_id

Member Function Documentation

bool RibIpcHandler::busy ( ) [inline]
Returns:
true if routes are being sent to the RIB.
virtual EventLoop& RibIpcHandler::eventloop ( ) const [inline, virtual]
Returns:
the main eventloop

Reimplemented from PeerHandler.

virtual uint32_t RibIpcHandler::get_unique_id ( ) const [inline, virtual]
Returns:
an ID that is unique per peer for use in decision.

Reimplemented from PeerHandler.

const IPv4& RibIpcHandler::id ( ) const [inline, virtual]
Returns:
the neighbours BGP ID as an integer for use by decision.

Reimplemented from PeerHandler.

bool RibIpcHandler::originate_route ( const OriginType  origin,
const ASPath aspath,
const IPv4Net nlri,
const IPv4 next_hop,
const bool &  unicast,
const bool &  multicast,
const PolicyTags policytags 
)

Originate an IPv4 route.

Parameters:
originof the path information
aspath
nlrisubnet to announce
next_hopto forward to
unicastif true install in unicast routing table
multicastif true install in multicast routing table
policytagspolicy-tags associated with the route
Returns:
true on success
virtual bool RibIpcHandler::originate_route_handler ( ) const [inline, virtual]

This is the handler that deals with originating routes.

Returns:
true

Reimplemented from PeerHandler.

bool RibIpcHandler::withdraw_route ( const IPv4Net nlri,
const bool &  unicast,
const bool &  multicast 
)

Withdraw an IPv4 route.

Parameters:
nlrisubnet to withdraw
unicastif true withdraw from unicast routing table
multicastif true withdraw from multicast routing table
Returns:
true on success

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