RibIpcHandler Class Reference

Inheritance diagram for RibIpcHandler:

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
XrlQueue< IPv4_v4_queue
const uint32_t _fake_unique_id
IPv4 _fake_id

Member Function Documentation

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

Reimplemented from PeerHandler.

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

Reimplemented from PeerHandler.

const IPv4& RibIpcHandler::id ( ) const [inline, virtual]
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.

originof the path information
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
true on success
virtual bool RibIpcHandler::originate_route_handler ( ) const [inline, virtual]

This is the handler that deals with originating routes.


Reimplemented from PeerHandler.

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

Withdraw an IPv4 route.

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

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