| 
		| class PimVif | A class for PIM-specific virtual interface.
  More... |  
 |  | 
Public Methods
-  PimVif (PimNode& pim_node, const Vif& vif) 
- virtual   ~PimVif () 
- void	 set_default_config () 
- int		 set_proto_version (int proto_version) 
- int		 start () 
- int		 stop () 
- int		 final_stop () 
- int		 pim_recv (const IPvX& src, const IPvX& dst,
			 int ip_ttl, int ip_tos, bool router_alert_bool,
			 buffer_t *buffer) 
- string	 flags_string ()  const
- PimNode&	 pim_node ()  const
- PimMrt&	 pim_mrt ()  const
- PimNbr&	 pim_nbr_me () 
- void	 pim_hello_start () 
- void	 pim_hello_stop () 
- void	 pim_hello_stop_dr () 
- void	 pim_dr_elect () 
- bool	 i_may_become_dr (const IPvX& exclude_addr) 
- const IPvX&	 addr ()  const
- const IPvX&	 dr_addr ()  const
- ConfigParam<uint16_t>&  hello_triggered_delay () 
- ConfigParam<uint16_t>&  hello_period () 
- ConfigParam<uint16_t>&  hello_holdtime () 
- ConfigParam<uint32_t>&  dr_priority () 
- ConfigParam<uint16_t>&  lan_delay () 
- ConfigParam<uint16_t>&  override_interval () 
- ConfigParam<bool>&  is_tracking_support_disabled () 
- ConfigParam<bool>&  accept_nohello_neighbors () 
- ConfigParam<uint32_t>&  genid () 
- ConfigParam<uint16_t>&  join_prune_period () 
- ConfigParam<uint16_t>&  join_prune_holdtime () 
- ConfigParam<uint32_t>&  assert_time () 
- ConfigParam<uint32_t>&  assert_override_interval () 
- int		 pim_send (const IPvX& dst, uint8_t message_type,
			 buffer_t *buffer) 
- int		 pim_hello_send () 
- int		 pim_hello_first_send () 
- int		 pim_join_prune_send (PimNbr *pim_nbr, PimJpHeader *jp_header) 
- int		 pim_assert_mre_send (PimMre *pim_mre,
				    const IPvX& assert_source_addr) 
- int		 pim_assert_cancel_send (PimMre *pim_mre) 
- int		 pim_assert_send (const IPvX& assert_source_addr,
				const IPvX& assert_group_addr,
				bool rpt_bit,
				uint32_t metric_preference,
				uint32_t metric) 
- int		 pim_register_send (const IPvX& rp_addr,
				  const IPvX& source_addr,
				  const IPvX& group_addr,
				  const uint8_t *rcvbuf,
				  size_t rcvlen) 
- int		 pim_register_null_send (const IPvX& rp_addr,
				       const IPvX& source_addr,
				       const IPvX& group_addr) 
- int		 pim_register_stop_send (const IPvX& dr_addr,
				       const IPvX& source_addr,
				       const IPvX& group_addr) 
- int		 pim_bootstrap_send (const IPvX& dst_addr,
				   const BsrZone& bsr_zone) 
- buffer_t	* pim_bootstrap_send_prepare (const IPvX& dst_addr,
					    const BsrZone& bsr_zone,
					    bool is_first_fragment) 
- int		 pim_cand_rp_adv_send (const IPvX& bsr_addr,
				     const BsrZone& bsr_zone) 
- void	 hello_timer_start (uint32_t sec, uint32_t usec) 
- void	 hello_timer_start_random (uint32_t sec, uint32_t usec) 
- bool	 is_lan_delay_enabled ()  const
- const TimeVal&  vif_propagation_delay ()  const
- const TimeVal&  vif_override_interval ()  const
- bool	 is_lan_suppression_state_enabled ()  const
- const TimeVal&  upstream_join_timer_t_suppressed ()  const
- const TimeVal&  upstream_join_timer_t_override ()  const
- const TimeVal&  jp_override_interval ()  const
- list<PimNbr *>&  pim_nbrs () 
- int		 pim_nbrs_number ()  const
- bool	 i_am_dr ()  const
- void	 set_i_am_dr (bool v) 
- PimNbr	* pim_nbr_find (const IPvX& nbr_addr) 
- void	 add_pim_nbr (PimNbr *pim_nbr) 
- int		 delete_pim_nbr (PimNbr *pim_nbr) 
- void	 delete_pim_nbr_from_nbr_list (PimNbr *pim_nbr) 
- size_t	 usage_by_pim_mre_task ()  const
- void	 incr_usage_by_pim_mre_task () 
- void	 decr_usage_by_pim_mre_task () 
- buffer_t	* buffer_send_prepare () 
- buffer_t	* buffer_send_prepare (buffer_t *buffer) 
- void	 clear_pim_statistics () 
- uint32_t	 pimstat_hello_messages_received ()  const
- uint32_t	 pimstat_hello_messages_sent ()  const
- uint32_t	 pimstat_hello_messages_rx_errors ()  const
- uint32_t	 pimstat_register_messages_received ()  const
- uint32_t	 pimstat_register_messages_sent ()  const
- uint32_t	 pimstat_register_messages_rx_errors ()  const
- uint32_t	 pimstat_register_stop_messages_received ()  const
- uint32_t	 pimstat_register_stop_messages_sent ()  const
- uint32_t	 pimstat_register_stop_messages_rx_errors ()  const
- uint32_t	 pimstat_join_prune_messages_received ()  const
- uint32_t	 pimstat_join_prune_messages_sent ()  const
- uint32_t	 pimstat_join_prune_messages_rx_errors ()  const
- uint32_t	 pimstat_bootstrap_messages_received ()  const
- uint32_t	 pimstat_bootstrap_messages_sent ()  const
- uint32_t	 pimstat_bootstrap_messages_rx_errors ()  const
- uint32_t	 pimstat_assert_messages_received ()  const
- uint32_t	 pimstat_assert_messages_sent ()  const
- uint32_t	 pimstat_assert_messages_rx_errors ()  const
- uint32_t	 pimstat_graft_messages_received ()  const
- uint32_t	 pimstat_graft_messages_sent ()  const
- uint32_t	 pimstat_graft_messages_rx_errors ()  const
- uint32_t	 pimstat_graft_ack_messages_received ()  const
- uint32_t	 pimstat_graft_ack_messages_sent ()  const
- uint32_t	 pimstat_graft_ack_messages_rx_errors ()  const
- uint32_t	 pimstat_candidate_rp_messages_received ()  const
- uint32_t	 pimstat_candidate_rp_messages_sent ()  const
- uint32_t	 pimstat_candidate_rp_messages_rx_errors ()  const
- uint32_t	 pimstat_unknown_type_messages ()  const
- uint32_t	 pimstat_unknown_version_messages ()  const
- uint32_t	 pimstat_neighbor_unknown_messages ()  const
- uint32_t	 pimstat_bad_length_messages ()  const
- uint32_t	 pimstat_bad_checksum_messages ()  const
- uint32_t	 pimstat_bad_receive_interface_messages ()  const
- uint32_t	 pimstat_rx_interface_disabled_messages ()  const
- uint32_t	 pimstat_rx_register_not_rp ()  const
- uint32_t	 pimstat_rp_filtered_source ()  const
- uint32_t	 pimstat_unknown_register_stop ()  const
- uint32_t	 pimstat_rx_join_prune_no_state ()  const
- uint32_t	 pimstat_rx_graft_graft_ack_no_state ()  const
- uint32_t	 pimstat_rx_graft_on_upstream_interface ()  const
- uint32_t	 pimstat_rx_candidate_rp_not_bsr ()  const
- uint32_t	 pimstat_rx_bsr_when_bsr ()  const
- uint32_t	 pimstat_rx_bsr_not_rpf_interface ()  const
- uint32_t	 pimstat_rx_unknown_hello_option ()  const
- uint32_t	 pimstat_rx_data_no_state ()  const
- uint32_t	 pimstat_rx_rp_no_state ()  const
- uint32_t	 pimstat_rx_aggregate ()  const
- uint32_t	 pimstat_rx_malformed_packet ()  const
- uint32_t	 pimstat_no_rp ()  const
- uint32_t	 pimstat_no_route_upstream ()  const
- uint32_t	 pimstat_rp_mismatch ()  const
- uint32_t	 pimstat_rpf_neighbor_unknown ()  const
- uint32_t	 pimstat_rx_join_rp ()  const
- uint32_t	 pimstat_rx_prune_rp ()  const
- uint32_t	 pimstat_rx_join_wc ()  const
- uint32_t	 pimstat_rx_prune_wc ()  const
- uint32_t	 pimstat_rx_join_sg ()  const
- uint32_t	 pimstat_rx_prune_sg ()  const
- uint32_t	 pimstat_rx_join_sg_rpt ()  const
- uint32_t	 pimstat_rx_prune_sg_rpt ()  const
 Constructor for a given PIM node and a generic virtual interface.
Parameters:
| pim_node | the PimNode this interface belongs to. | 
| vif | the generic Vif interface that contains various information. | 
 [virtual]
 Destructor
     
| void	 set_default_config () 
 | set_default_config | 
 Set configuration to default values.
     
| int		 set_proto_version (int proto_version) 
 | set_proto_version | 
 Set the current protocol version.
 The protocol version must be in the interval
 [PIM_VERSION_MIN, PIM_VERSION_MAX].
Parameters:
| proto_version | the protocol version to set. | 
Returns: XORP_OK on success, otherwise XORP_ERROR.
     
Reimplemented from ProtoUnit.
  Start PIM on a single virtual interface.
Returns: XORP_OK on success, otherwise XORP_ERROR.
     
 Gracefully stop PIM on a single virtual interface.
The graceful stop will attempt to send Join/Prune, Assert, etc.
 messages for all multicast routing entries to gracefully clean-up
 state with neighbors.
 After the multicast routing entries cleanup is completed,
 PimVif::final_stop() is called to complete the job.
 If this method is called one-after-another, the second one
 will force calling immediately PimVif::final_stop() to quickly
 finish the job.
Returns: XORP_OK on success, otherwise XORP_ERROR.
     
| int		 final_stop () 
 | final_stop | 
 Completely stop PIM on a single virtual interface.
 This method should be called after PimVif::stop() to complete
 the job.
Returns: XORP_OK on success, otherwise XORP_ERROR.
     
| int		 pim_recv (const IPvX& src, const IPvX& dst,
			 int ip_ttl, int ip_tos, bool router_alert_bool,
			 buffer_t *buffer) 
 | pim_recv | 
 Receive a protocol message.
Parameters:
| src | the source address of the message. | 
| dst | the destination address of the message. | 
| ip_ttl | the IP TTL of the message. If it has a negative value
 it should be ignored. | 
| ip_ttl | the IP TOS of the message. If it has a negative value,
 it should be ignored. | 
| router_alert_bool | if true, the IP Router Alert option in
 the IP packet was set (when applicable). | 
| buffer | the data buffer with the received message. | 
Returns: XORP_OK on success, otherwise XORP_ERROR.
     
| string	 flags_string () 
 | flags_string | 
 [const]
 Get the string with the flags about the vif status.
 TODO: temporary here. Should go to the Vif class after the Vif
 class starts using the Proto class.
Returns: the C++ style string with the flags about the vif status
 (e.g., UP/DOWN/DISABLED, etc).
     
 [const]
 Get the PIM node (PimNode).
Returns: a reference to the PIM node (PimNode).
     
 [const]
 Get the PIM Multicast Routing Table (PimMrt).
Returns: a reference to the PIM Multicast Routing Table (PimMrt).
     
| PimNbr&	 pim_nbr_me () 
 | pim_nbr_me | 
 Get the PIM neighbor information (PimNbr) about myself.
Returns: a reference to the PIM neighbor information (PimNbr)
 about myself.
     
| void	 pim_hello_start () 
 | pim_hello_start | 
 Start the PIM Hello operation.
     
| void	 pim_hello_stop () 
 | pim_hello_stop | 
 Stop the PIM Hello operation.
     
| void	 pim_hello_stop_dr () 
 | pim_hello_stop_dr | 
 Attempt to inform other PIM neighbors that this interface is not more
 the Designated Router.
     
| void	 pim_dr_elect () 
 | pim_dr_elect | 
 Elect a Designated Router on this interface.
     
| bool	 i_may_become_dr (const IPvX& exclude_addr) 
 | i_may_become_dr | 
 Compute if I may become the Designated Router on this interface
 if one of the PIM neighbor addresses is not considered.
 Compute if I may become the DR on this interface if exclude_addr
 is excluded.
Parameters:
| exclude_addr | the address to exclude in the computation. | 
Returns: true if I may become the DR on this interface, otherwise
 false.
     
 [const]
 Get my primary address on this interface.
Returns: my primary address on this interface.
     
| const IPvX&	 dr_addr () 
 | dr_addr | 
 [const]
 Get the address of the Designated Router on this interface.
Returns: the address of the Designated Router on this interface.
     
| ConfigParam<uint16_t>&  hello_triggered_delay () 
 | hello_triggered_delay | 
| ConfigParam<uint16_t>&  hello_holdtime () 
 | hello_holdtime | 
| ConfigParam<uint16_t>&  override_interval () 
 | override_interval | 
| ConfigParam<bool>&  is_tracking_support_disabled () 
 | is_tracking_support_disabled | 
| ConfigParam<bool>&  accept_nohello_neighbors () 
 | accept_nohello_neighbors | 
| ConfigParam<uint16_t>&  join_prune_period () 
 | join_prune_period | 
| ConfigParam<uint16_t>&  join_prune_holdtime () 
 | join_prune_holdtime | 
| ConfigParam<uint32_t>&  assert_override_interval () 
 | assert_override_interval | 
| int		 pim_send (const IPvX& dst, uint8_t message_type,
			 buffer_t *buffer) 
 | pim_send | 
| int		 pim_hello_send () 
 | pim_hello_send | 
| int		 pim_hello_first_send () 
 | pim_hello_first_send | 
| int		 pim_join_prune_send (PimNbr *pim_nbr, PimJpHeader *jp_header) 
 | pim_join_prune_send | 
| int		 pim_assert_mre_send (PimMre *pim_mre,
				    const IPvX& assert_source_addr) 
 | pim_assert_mre_send | 
| int		 pim_assert_cancel_send (PimMre *pim_mre) 
 | pim_assert_cancel_send | 
| int		 pim_assert_send (const IPvX& assert_source_addr,
				const IPvX& assert_group_addr,
				bool rpt_bit,
				uint32_t metric_preference,
				uint32_t metric) 
 | pim_assert_send | 
| int		 pim_register_send (const IPvX& rp_addr,
				  const IPvX& source_addr,
				  const IPvX& group_addr,
				  const uint8_t *rcvbuf,
				  size_t rcvlen) 
 | pim_register_send | 
| int		 pim_register_null_send (const IPvX& rp_addr,
				       const IPvX& source_addr,
				       const IPvX& group_addr) 
 | pim_register_null_send | 
| int		 pim_register_stop_send (const IPvX& dr_addr,
				       const IPvX& source_addr,
				       const IPvX& group_addr) 
 | pim_register_stop_send | 
| int		 pim_bootstrap_send (const IPvX& dst_addr,
				   const BsrZone& bsr_zone) 
 | pim_bootstrap_send | 
| buffer_t	* pim_bootstrap_send_prepare (const IPvX& dst_addr,
					    const BsrZone& bsr_zone,
					    bool is_first_fragment) 
 | pim_bootstrap_send_prepare | 
| int		 pim_cand_rp_adv_send (const IPvX& bsr_addr,
				     const BsrZone& bsr_zone) 
 | pim_cand_rp_adv_send | 
| void	 hello_timer_start (uint32_t sec, uint32_t usec) 
 | hello_timer_start | 
| void	 hello_timer_start_random (uint32_t sec, uint32_t usec) 
 | hello_timer_start_random | 
| bool	 is_lan_delay_enabled () 
 | is_lan_delay_enabled | 
 [const]
| const TimeVal&  vif_propagation_delay () 
 | vif_propagation_delay | 
 [const]
| const TimeVal&  vif_override_interval () 
 | vif_override_interval | 
 [const]
| bool	 is_lan_suppression_state_enabled () 
 | is_lan_suppression_state_enabled | 
 [const]
| const TimeVal&  upstream_join_timer_t_suppressed () 
 | upstream_join_timer_t_suppressed | 
 [const]
| const TimeVal&  upstream_join_timer_t_override () 
 | upstream_join_timer_t_override | 
 [const]
| const TimeVal&  jp_override_interval () 
 | jp_override_interval | 
 [const]
| list<PimNbr *>&  pim_nbrs () 
 | pim_nbrs | 
| int		 pim_nbrs_number () 
 | pim_nbrs_number | 
 [const]
 [const]
| void	 set_i_am_dr (bool v) 
 | set_i_am_dr | 
| PimNbr	* pim_nbr_find (const IPvX& nbr_addr) 
 | pim_nbr_find | 
| void	 add_pim_nbr (PimNbr *pim_nbr) 
 | add_pim_nbr | 
| int		 delete_pim_nbr (PimNbr *pim_nbr) 
 | delete_pim_nbr | 
| void	 delete_pim_nbr_from_nbr_list (PimNbr *pim_nbr) 
 | delete_pim_nbr_from_nbr_list | 
| size_t	 usage_by_pim_mre_task () 
 | usage_by_pim_mre_task | 
 [const]
| void	 incr_usage_by_pim_mre_task () 
 | incr_usage_by_pim_mre_task | 
| void	 decr_usage_by_pim_mre_task () 
 | decr_usage_by_pim_mre_task | 
| buffer_t	* buffer_send_prepare () 
 | buffer_send_prepare | 
| buffer_t	* buffer_send_prepare (buffer_t *buffer) 
 | buffer_send_prepare | 
| void	 clear_pim_statistics () 
 | clear_pim_statistics | 
| uint32_t	 pimstat_hello_messages_received () 
 | pimstat_hello_messages_received | 
 [const]
| uint32_t	 pimstat_hello_messages_sent () 
 | pimstat_hello_messages_sent | 
 [const]
| uint32_t	 pimstat_hello_messages_rx_errors () 
 | pimstat_hello_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_register_messages_received () 
 | pimstat_register_messages_received | 
 [const]
| uint32_t	 pimstat_register_messages_sent () 
 | pimstat_register_messages_sent | 
 [const]
| uint32_t	 pimstat_register_messages_rx_errors () 
 | pimstat_register_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_register_stop_messages_received () 
 | pimstat_register_stop_messages_received | 
 [const]
| uint32_t	 pimstat_register_stop_messages_sent () 
 | pimstat_register_stop_messages_sent | 
 [const]
| uint32_t	 pimstat_register_stop_messages_rx_errors () 
 | pimstat_register_stop_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_join_prune_messages_received () 
 | pimstat_join_prune_messages_received | 
 [const]
| uint32_t	 pimstat_join_prune_messages_sent () 
 | pimstat_join_prune_messages_sent | 
 [const]
| uint32_t	 pimstat_join_prune_messages_rx_errors () 
 | pimstat_join_prune_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_bootstrap_messages_received () 
 | pimstat_bootstrap_messages_received | 
 [const]
| uint32_t	 pimstat_bootstrap_messages_sent () 
 | pimstat_bootstrap_messages_sent | 
 [const]
| uint32_t	 pimstat_bootstrap_messages_rx_errors () 
 | pimstat_bootstrap_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_assert_messages_received () 
 | pimstat_assert_messages_received | 
 [const]
| uint32_t	 pimstat_assert_messages_sent () 
 | pimstat_assert_messages_sent | 
 [const]
| uint32_t	 pimstat_assert_messages_rx_errors () 
 | pimstat_assert_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_graft_messages_received () 
 | pimstat_graft_messages_received | 
 [const]
| uint32_t	 pimstat_graft_messages_sent () 
 | pimstat_graft_messages_sent | 
 [const]
| uint32_t	 pimstat_graft_messages_rx_errors () 
 | pimstat_graft_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_graft_ack_messages_received () 
 | pimstat_graft_ack_messages_received | 
 [const]
| uint32_t	 pimstat_graft_ack_messages_sent () 
 | pimstat_graft_ack_messages_sent | 
 [const]
| uint32_t	 pimstat_graft_ack_messages_rx_errors () 
 | pimstat_graft_ack_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_candidate_rp_messages_received () 
 | pimstat_candidate_rp_messages_received | 
 [const]
| uint32_t	 pimstat_candidate_rp_messages_sent () 
 | pimstat_candidate_rp_messages_sent | 
 [const]
| uint32_t	 pimstat_candidate_rp_messages_rx_errors () 
 | pimstat_candidate_rp_messages_rx_errors | 
 [const]
| uint32_t	 pimstat_unknown_type_messages () 
 | pimstat_unknown_type_messages | 
 [const]
| uint32_t	 pimstat_unknown_version_messages () 
 | pimstat_unknown_version_messages | 
 [const]
| uint32_t	 pimstat_neighbor_unknown_messages () 
 | pimstat_neighbor_unknown_messages | 
 [const]
| uint32_t	 pimstat_bad_length_messages () 
 | pimstat_bad_length_messages | 
 [const]
| uint32_t	 pimstat_bad_checksum_messages () 
 | pimstat_bad_checksum_messages | 
 [const]
| uint32_t	 pimstat_bad_receive_interface_messages () 
 | pimstat_bad_receive_interface_messages | 
 [const]
| uint32_t	 pimstat_rx_interface_disabled_messages () 
 | pimstat_rx_interface_disabled_messages | 
 [const]
| uint32_t	 pimstat_rx_register_not_rp () 
 | pimstat_rx_register_not_rp | 
 [const]
| uint32_t	 pimstat_rp_filtered_source () 
 | pimstat_rp_filtered_source | 
 [const]
| uint32_t	 pimstat_unknown_register_stop () 
 | pimstat_unknown_register_stop | 
 [const]
| uint32_t	 pimstat_rx_join_prune_no_state () 
 | pimstat_rx_join_prune_no_state | 
 [const]
| uint32_t	 pimstat_rx_graft_graft_ack_no_state () 
 | pimstat_rx_graft_graft_ack_no_state | 
 [const]
| uint32_t	 pimstat_rx_graft_on_upstream_interface () 
 | pimstat_rx_graft_on_upstream_interface | 
 [const]
| uint32_t	 pimstat_rx_candidate_rp_not_bsr () 
 | pimstat_rx_candidate_rp_not_bsr | 
 [const]
| uint32_t	 pimstat_rx_bsr_when_bsr () 
 | pimstat_rx_bsr_when_bsr | 
 [const]
| uint32_t	 pimstat_rx_bsr_not_rpf_interface () 
 | pimstat_rx_bsr_not_rpf_interface | 
 [const]
| uint32_t	 pimstat_rx_unknown_hello_option () 
 | pimstat_rx_unknown_hello_option | 
 [const]
| uint32_t	 pimstat_rx_data_no_state () 
 | pimstat_rx_data_no_state | 
 [const]
| uint32_t	 pimstat_rx_rp_no_state () 
 | pimstat_rx_rp_no_state | 
 [const]
| uint32_t	 pimstat_rx_aggregate () 
 | pimstat_rx_aggregate | 
 [const]
| uint32_t	 pimstat_rx_malformed_packet () 
 | pimstat_rx_malformed_packet | 
 [const]
| uint32_t	 pimstat_no_rp () 
 | pimstat_no_rp | 
 [const]
| uint32_t	 pimstat_no_route_upstream () 
 | pimstat_no_route_upstream | 
 [const]
| uint32_t	 pimstat_rp_mismatch () 
 | pimstat_rp_mismatch | 
 [const]
| uint32_t	 pimstat_rpf_neighbor_unknown () 
 | pimstat_rpf_neighbor_unknown | 
 [const]
| uint32_t	 pimstat_rx_join_rp () 
 | pimstat_rx_join_rp | 
 [const]
| uint32_t	 pimstat_rx_prune_rp () 
 | pimstat_rx_prune_rp | 
 [const]
| uint32_t	 pimstat_rx_join_wc () 
 | pimstat_rx_join_wc | 
 [const]
| uint32_t	 pimstat_rx_prune_wc () 
 | pimstat_rx_prune_wc | 
 [const]
| uint32_t	 pimstat_rx_join_sg () 
 | pimstat_rx_join_sg | 
 [const]
| uint32_t	 pimstat_rx_prune_sg () 
 | pimstat_rx_prune_sg | 
 [const]
| uint32_t	 pimstat_rx_join_sg_rpt () 
 | pimstat_rx_join_sg_rpt | 
 [const]
| uint32_t	 pimstat_rx_prune_sg_rpt () 
 | pimstat_rx_prune_sg_rpt | 
 [const]
	
	| Generated by: pavlin on possum.icir.org on Thu Nov  6 23:47:02 2003, using kdoc 2.0a54+XORP. |