| 
		| class XrlRawSocket4Manager |  
		| A class that manages raw sockets as used by the XORP Xrl Interface.
 More... |  
 |  | 
 
Public Methods
-  XrlRawSocket4Manager (EventLoop& e, InterfaceManager& ifmgr, XrlRouter& xr) 
-  ~XrlRawSocket4Manager () 
- XrlCmdError  send (const string& vifname, const vector<uint8_t>& packet) 
- XrlCmdError  send (const IPv4&	    src_address,
		     const IPv4&	    dst_address,
		     const string&	    vifname,
		     const uint32_t&	    proto,
		     const uint32_t&	    ttl,
		     const uint32_t&	    tos,
		     const vector<uint8_t>& options,
		     const vector<uint8_t>& payload) 
- XrlCmdError  register_vif_receiver (const string&		tgt,
				      const string&		ifname,
				      const string&		vifname,
				      const uint32_t& 		proto) 
- XrlCmdError  unregister_vif_receiver (const string&		tgt,
					const string&		ifname,
					const string&		vifname,
					const uint32_t& 	proto) 
- XrlRouter&	       router () 
- InterfaceManager&  ifmgr () 
- void  xrl_vif_send_handler (const XrlError& e, string tgt_name) 
Protected Types
- typedef multimap<string, XrlRawSocketFilter*>  FilterBag
Protected Methods
- void  erase_filters (const FilterBag::iterator& begin,
		       const FilterBag::iterator& end) 
Protected Members
 The XrlRawSocket4Manager has two containers: a container for raw
 sockets indexed by the protocol associated with the raw socket, and
 a container for the filters associated with each xrl_target.  When
 an Xrl Target registers for interest in a particular type of raw
 packet a raw socket (FilterRawSocket4) is created if necessary,
 then the relevent filter is created and associated with the
 RawSocket.
 
 Contructor for XrlRawSocket4Manager instances.
 May throw RawSocketException since a raw socket is contructed and
 this requires root privelage.
     
| ~XrlRawSocket4Manager () 
 | ~XrlRawSocket4Manager | 
| XrlCmdError  send (const string& vifname, const vector<uint8_t>& packet) 
 | send | 
| XrlCmdError  send (const IPv4&	    src_address,
		     const IPv4&	    dst_address,
		     const string&	    vifname,
		     const uint32_t&	    proto,
		     const uint32_t&	    ttl,
		     const uint32_t&	    tos,
		     const vector<uint8_t>& options,
		     const vector<uint8_t>& payload) 
 | send | 
| XrlCmdError  register_vif_receiver (const string&		tgt,
				      const string&		ifname,
				      const string&		vifname,
				      const uint32_t& 		proto) 
 | register_vif_receiver | 
| XrlCmdError  unregister_vif_receiver (const string&		tgt,
					const string&		ifname,
					const string&		vifname,
					const uint32_t& 	proto) 
 | unregister_vif_receiver | 
| void  xrl_vif_send_handler (const XrlError& e, string tgt_name) 
 | xrl_vif_send_handler | 
 [protected]
 [protected]
 [protected]
 [protected]
 [protected]
| FilterBag  _filters | _filters | 
 [protected]
| void  erase_filters (const FilterBag::iterator& begin,
		       const FilterBag::iterator& end) 
 | erase_filters | 
 [protected]
	
Generated by: pavlin on possum.icir.org on Thu Jul  8 23:48:26 2004, using kdoc $.