| 
		| class PeerHandler | PeerHandler's job is primarily format conversion. More... |  
 |  | 
Public Methods
-  PeerHandler (const string &peername, BGPPeer *peer,
		BGPPlumbing *plumbing_unicast,
		BGPPlumbing *plumbing_multicast) 
- virtual   ~PeerHandler () 
- void  stop () 
- void  peering_went_down () 
- void  peering_came_up () 
- bool  peering_is_up ()  const
- int  process_update_packet (const UpdatePacket *p) 
- template <typename A> bool  add (const UpdatePacket *p,
				   PathAttributeList<A>& pa_list,Safi safi) 
- template <typename A> bool  withdraw (const UpdatePacket *p, Safi safi) 
- template <typename A> bool  multiprotocol (Safi safi, 
					     BGPPeerData::Direction d)  const
- virtual  int  start_packet (bool ibgp) 
- virtual  int  add_route (const SubnetRoute<IPv4> &rt, Safi safi) 
- virtual  int  add_route (const SubnetRoute<IPv6> &rt, Safi safi) 
- virtual  int  replace_route (const SubnetRoute<IPv4> &old_rt,
			      const SubnetRoute<IPv4> &new_rt,
			      Safi safi) 
- virtual  int  replace_route (const SubnetRoute<IPv6> &old_rt,
			      const SubnetRoute<IPv6> &new_rt,
			      Safi safi) 
- virtual  int  delete_route (const SubnetRoute<IPv4> &rt, Safi safi) 
- virtual  int  delete_route (const SubnetRoute<IPv6> &rt, Safi safi) 
- virtual  PeerOutputState  push_packet () 
- virtual  void  output_no_longer_busy () 
- AsNum  AS_number ()  const
- const string&  peername ()  const
- bool  ibgp ()  const
- virtual  const IPv4&  id ()  const
- uint32_t  neighbour_address ()  const
- const IPv4&  my_v4_nexthop ()  const
- const IPv6&  my_v6_nexthop ()  const
- EventLoop&  eventloop ()  const
Protected Members
 PeerHandler's job is primarily format conversion. But it also
 servers as a handle to tie together the input and output sides of a
 RIB.
 
| ~PeerHandler () 
 | ~PeerHandler | 
 [virtual]
| void  peering_went_down () 
 | peering_went_down | 
| void  peering_came_up () 
 | peering_came_up | 
| bool  peering_is_up () 
 | peering_is_up | 
 [const]
| int  process_update_packet (const UpdatePacket *p) 
 | process_update_packet | 
 process_update_packet is called when an update packet has been
 received by this peer
     
 Given an update packet find all the NLRIs with <AFI,SAFI>
 specified and inject one by one into the plumbing.
Parameters:
| p | - packet to tease apart | 
| safi | - Subsequent address family identifier | 
Returns: true if an <AFI,SAFI> was found.
     
 Given an update packet find all the WITHDRAWs with <AFI,SAFI>
 specified and inject one by on into the plumbing.
Parameters:
| p | - packet to tease apart | 
| safi | - Subsequent address family identifier | 
Returns: true if an <AFI,SAFI> was found.
     
 [const]
| int  start_packet (bool ibgp) 
 | start_packet | 
 [virtual]
 add_route and delete_route are called by the plumbing to
 propagate a route *to* the peer.
     
 [virtual]
 [virtual]
 [virtual]
 [virtual]
 [virtual]
 [virtual]
 [virtual]
| void  output_no_longer_busy () 
 | output_no_longer_busy | 
 [virtual]
| AsNum  AS_number () 
 | AS_number | 
 [const]
| const string&  peername () 
 | peername | 
 [const]
 [const]
 [const virtual]
Returns: the neighbours BGP ID as an integer for use by decision.
     
| uint32_t  neighbour_address () 
 | neighbour_address | 
 [const]
Returns: the neighbours IP address an as integer for use be
 decision.
     
| const IPv4&  my_v4_nexthop () 
 | my_v4_nexthop | 
 [const]
| const IPv6&  my_v6_nexthop () 
 | my_v6_nexthop | 
 [const]
 [const]
 [protected]
 [protected]
 [protected]
	
	| Generated by: pavlin on possum.icir.org on Thu Nov  6 23:47:04 2003, using kdoc 2.0a54+XORP. |