XrlMld6igmpNode (int family,
xorp_module_id module_id,
EventLoop& eventloop,
const string& class_name,
const string& finder_hostname,
uint16_t finder_port,
const string& finder_target,
const string& fea_target,
const string& mfea_target)
| XrlMld6igmpNode |
~XrlMld6igmpNode ()
| ~XrlMld6igmpNode |
[virtual]
int startup ()
| startup |
Startup the node operation.
Returns: XORP_OK on success, otherwise XORP_ERROR.
int shutdown ()
| shutdown |
Shutdown the node operation.
Returns: XORP_OK on success, otherwise XORP_ERROR.
XrlRouter& xrl_router ()
| xrl_router |
Get a reference to the XrlRouter instance.
Returns: a reference to the XrlRouter (XrlRouter) instance.
const XrlRouter& xrl_router ()
| xrl_router |
[const]
Get a const reference to the XrlRouter instance.
Returns: a const reference to the XrlRouter (XrlRouter) instance.
int enable_cli ()
| enable_cli |
int disable_cli ()
| disable_cli |
int start_cli ()
| start_cli |
int stop_cli ()
| stop_cli |
int enable_mld6igmp ()
| enable_mld6igmp |
int disable_mld6igmp ()
| disable_mld6igmp |
int start_mld6igmp ()
| start_mld6igmp |
int stop_mld6igmp ()
| stop_mld6igmp |
void send_register_unregister_interest ()
| send_register_unregister_interest |
void send_register_unregister_receiver ()
| send_register_unregister_receiver |
void send_join_leave_multicast_group ()
| send_join_leave_multicast_group |
void send_protocol_message ()
| send_protocol_message |
XrlCmdError common_0_1_get_target_name (
string& name)
| common_0_1_get_target_name |
[protected]
Get name of Xrl Target
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError common_0_1_get_version (
string& version)
| common_0_1_get_version |
[protected]
Get version string from Xrl Target
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError common_0_1_get_status (
uint32_t& status,
string& reason)
| common_0_1_get_status |
[protected]
Get status from Xrl Target
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError common_0_1_shutdown ()
| common_0_1_shutdown |
[protected]
Shutdown cleanly
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError finder_event_observer_0_1_xrl_target_birth (
const string& target_class,
const string& target_instance)
| finder_event_observer_0_1_xrl_target_birth |
[protected]
Announce target birth to observer.
Parameters:
target_class | the target class name. |
target_instance | the target instance name. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError finder_event_observer_0_1_xrl_target_death (
const string& target_class,
const string& target_instance)
| finder_event_observer_0_1_xrl_target_death |
[protected]
Announce target death to observer.
Parameters:
target_class | the target class name. |
target_instance | the target instance name. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError cli_processor_0_1_process_command (
const string& processor_name,
const string& cli_term_name,
const uint32_t& cli_session_id,
const string& command_name,
const string& command_args,
string& ret_processor_name,
string& ret_cli_term_name,
uint32_t& ret_cli_session_id,
string& ret_command_output)
| cli_processor_0_1_process_command |
[protected]
Process a CLI command.
Parameters:
processor_name | the processor name for this command. |
cli_term_name | the terminal name the command was entered from. |
cli_session_id | the CLI session ID the command was entered from. |
command_name | the command name to process. |
command_args | the command arguments to process. |
ret_processor_name | the processor name to return back to the CLI. |
ret_cli_term_name | the terminal name to return back. |
ret_cli_session_id | the CLI session ID to return back. |
ret_command_output | the command output to return back. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError raw_packet4_client_0_1_recv (
const string& if_name,
const string& vif_name,
const IPv4& src_address,
const IPv4& dst_address,
const uint32_t& ip_protocol,
const int32_t& ip_ttl,
const int32_t& ip_tos,
const bool& ip_router_alert,
const bool& ip_internet_control,
const vector<uint8_t>& payload)
| raw_packet4_client_0_1_recv |
[protected]
Receive an IPv4 packet from a raw socket.
Parameters:
if_name | the interface name the packet arrived on. |
vif_name | the vif name the packet arrived on. |
src_address | the IP source address. |
dst_address | the IP destination address. |
ip_protocol | the IP protocol number. |
ip_ttl | the IP TTL (hop-limit). If it has a negative value, then the received value is unknown. |
ip_tos | the Type of Service (Diffserv/ECN bits for IPv4). If it has a negative value, then the received value is unknown. |
ip_router_alert | if true, the IP Router Alert option was included in the IP packet. |
ip_internet_control | if true, then this is IP control traffic. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError raw_packet6_client_0_1_recv (
const string& if_name,
const string& vif_name,
const IPv6& src_address,
const IPv6& dst_address,
const uint32_t& ip_protocol,
const int32_t& ip_ttl,
const int32_t& ip_tos,
const bool& ip_router_alert,
const bool& ip_internet_control,
const XrlAtomList& ext_headers_type,
const XrlAtomList& ext_headers_payload,
const vector<uint8_t>& payload)
| raw_packet6_client_0_1_recv |
[protected]
Receive an IPv6 packet from a raw socket.
Parameters:
if_name | the interface name the packet arrived on. |
vif_name | the vif name the packet arrived on. |
src_address | the IP source address. |
dst_address | the IP destination address. |
ip_protocol | the IP protocol number. |
ip_ttl | the IP TTL (hop-limit). If it has a negative value, then the received value is unknown. |
ip_tos | the Type Of Service (IP traffic class for IPv4). If it has a negative value, then the received value is unknown. |
ip_router_alert | if true, the IP Router Alert option was included in the IP packet. |
ip_internet_control | if true, then this is IP control traffic. |
ext_headers_type | a list of u32 integers with the types of the optional extention headers. |
ext_headers_payload | a list of payload data, one for each optional extention header. The number of entries must match ext_headers_type. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_enable_vif (
const string& vif_name,
const bool& enable)
| mld6igmp_0_1_enable_vif |
[protected]
Enable/disable/start/stop a MLD6IGMP vif interface.
Parameters:
vif_name | the name of the vif to enable/disable/start/stop. |
enable | if true, then enable the vif, otherwise disable it. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_start_vif (
const string& vif_name)
| mld6igmp_0_1_start_vif |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_stop_vif (
const string& vif_name)
| mld6igmp_0_1_stop_vif |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_enable_all_vifs (
const bool& enable)
| mld6igmp_0_1_enable_all_vifs |
[protected]
Enable/disable/start/stop all MLD6IGMP vif interfaces.
Parameters:
enable | if true, then enable the vifs, otherwise disable them. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_start_all_vifs ()
| mld6igmp_0_1_start_all_vifs |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_stop_all_vifs ()
| mld6igmp_0_1_stop_all_vifs |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_enable_mld6igmp (
const bool& enable)
| mld6igmp_0_1_enable_mld6igmp |
[protected]
Enable/disable/start/stop the MLD6IGMP protocol.
Parameters:
enable | if true, then enable the MLD6IGMP protocol, otherwise disable it. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_start_mld6igmp ()
| mld6igmp_0_1_start_mld6igmp |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_stop_mld6igmp ()
| mld6igmp_0_1_stop_mld6igmp |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_enable_cli (
const bool& enable)
| mld6igmp_0_1_enable_cli |
[protected]
Enable/disable/start/stop the MLD6IGMP CLI access.
Parameters:
enable | if true, then enable the MLD6IGMP CLI access, otherwise disable it. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_start_cli ()
| mld6igmp_0_1_start_cli |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_stop_cli ()
| mld6igmp_0_1_stop_cli |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_get_vif_proto_version (
const string& vif_name,
uint32_t& proto_version)
| mld6igmp_0_1_get_vif_proto_version |
[protected]
Get the configured protocol version per interface.
Parameters:
vif_name | the name of the vif to apply to. |
proto_version | the protocol version. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_set_vif_proto_version (
const string& vif_name,
const uint32_t& proto_version)
| mld6igmp_0_1_set_vif_proto_version |
[protected]
Set the protocol version per interface.
Parameters:
vif_name | the name of the vif to apply to. |
proto_version | the protocol version. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_reset_vif_proto_version (
const string& vif_name)
| mld6igmp_0_1_reset_vif_proto_version |
[protected]
Reset the protocol version per interface to its default value.
Parameters:
vif_name | the name of the vif to apply to. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_get_vif_ip_router_alert_option_check (
const string& vif_name,
bool& enabled)
| mld6igmp_0_1_get_vif_ip_router_alert_option_check |
[protected]
Get the IP Router Alert option check per interface for received packets.
Parameters:
vif_name | the name of the vif to apply to. |
enabled | if true, then the IP Router Alert option check was enabled, otherwise it was disabled. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_set_vif_ip_router_alert_option_check (
const string& vif_name,
const bool& enable)
| mld6igmp_0_1_set_vif_ip_router_alert_option_check |
[protected]
Set the IP Router Alert option check per interface for received packets.
Parameters:
vif_name | the name of the vif to apply to. |
enable | if true, then enable the IP Router Alert option check, otherwise disable it. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_reset_vif_ip_router_alert_option_check (
const string& vif_name)
| mld6igmp_0_1_reset_vif_ip_router_alert_option_check |
[protected]
Reset the IP Router Alert option check per interface for received packets to its default value.
Parameters:
vif_name | the name of the vif to apply to. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_get_vif_query_interval (
const string& vif_name,
uint32_t& interval_sec,
uint32_t& interval_usec)
| mld6igmp_0_1_get_vif_query_interval |
[protected]
Get the Query Interval per interface.
Parameters:
vif_name | the name of the vif to apply to. |
interval_sec | the number of seconds in the interval. |
interval_usec | the number of microseconds (in addition to interval_sec) in the interval. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_set_vif_query_interval (
const string& vif_name,
const uint32_t& interval_sec,
const uint32_t& interval_usec)
| mld6igmp_0_1_set_vif_query_interval |
[protected]
Set the Query Interval per interface.
Parameters:
vif_name | the name of the vif to apply to. |
interval_sec | the number of seconds in the interval. |
interval_usec | the number of microseconds (in addition to interval_sec) in the interval. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_reset_vif_query_interval (
const string& vif_name)
| mld6igmp_0_1_reset_vif_query_interval |
[protected]
Reset the Query Interval per interface to its default value.
Parameters:
vif_name | the name of the vif to apply to. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_get_vif_query_last_member_interval (
const string& vif_name,
uint32_t& interval_sec,
uint32_t& interval_usec)
| mld6igmp_0_1_get_vif_query_last_member_interval |
[protected]
Get the Last Member Query Interval per interface.
Parameters:
vif_name | the name of the vif to apply to. |
interval_sec | the number of seconds in the interval. |
interval_usec | the number of microseconds (in addition to interval_sec) in the interval. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_set_vif_query_last_member_interval (
const string& vif_name,
const uint32_t& interval_sec,
const uint32_t& interval_usec)
| mld6igmp_0_1_set_vif_query_last_member_interval |
[protected]
Set the Last Member Query Interval per interface.
Parameters:
vif_name | the name of the vif to apply to. |
interval_sec | the number of seconds in the interval. |
interval_usec | the number of microseconds (in addition to interval_sec) in the interval. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_reset_vif_query_last_member_interval (
const string& vif_name)
| mld6igmp_0_1_reset_vif_query_last_member_interval |
[protected]
Reset the Last Member Query Interval per interface to its default value.
Parameters:
vif_name | the name of the vif to apply to. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_get_vif_query_response_interval (
const string& vif_name,
uint32_t& interval_sec,
uint32_t& interval_usec)
| mld6igmp_0_1_get_vif_query_response_interval |
[protected]
Get the Query Response Interval per interface.
Parameters:
vif_name | the name of the vif to apply to. |
interval_sec | the number of seconds in the interval. |
interval_usec | the number of microseconds (in addition to interval_sec) in the interval. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_set_vif_query_response_interval (
const string& vif_name,
const uint32_t& interval_sec,
const uint32_t& interval_usec)
| mld6igmp_0_1_set_vif_query_response_interval |
[protected]
Set the Query Response Interval per interface.
Parameters:
vif_name | the name of the vif to apply to. |
interval_sec | the number of seconds in the interval. |
interval_usec | the number of microseconds (in addition to interval_sec) in the interval. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_reset_vif_query_response_interval (
const string& vif_name)
| mld6igmp_0_1_reset_vif_query_response_interval |
[protected]
Reset the Query Response Interval per interface to its default value.
Parameters:
vif_name | the name of the vif to apply to. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_get_vif_robust_count (
const string& vif_name,
uint32_t& robust_count)
| mld6igmp_0_1_get_vif_robust_count |
[protected]
Get the Robustness Variable count per interface.
Parameters:
vif_name | the name of the vif to apply to. |
robust_count | the count value. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_set_vif_robust_count (
const string& vif_name,
const uint32_t& robust_count)
| mld6igmp_0_1_set_vif_robust_count |
[protected]
Set the Robustness Variable count per interface.
Parameters:
vif_name | the name of the vif to apply to. |
robust_count | the count value. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_reset_vif_robust_count (
const string& vif_name)
| mld6igmp_0_1_reset_vif_robust_count |
[protected]
Reset the Robustness Variable count per interface to its default value.
Parameters:
vif_name | the name of the vif to apply to. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_log_trace_all (
const bool& enable)
| mld6igmp_0_1_log_trace_all |
[protected]
Enable/disable the MLD6IGMP trace log for all operations.
Parameters:
enable | if true, then enable the trace log, otherwise disable it. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_add_protocol4 (
const string& xrl_sender_name,
const string& protocol_name,
const uint32_t& protocol_id,
const string& vif_name,
const uint32_t& vif_index)
| mld6igmp_0_1_add_protocol4 |
[protected]
Add/delete a client protocol in the MLD/IGMP protocol.
Parameters:
xrl_sender_name | the XRL name of the originator of this XRL. |
protocol_name | the name of the protocol to add/delete. |
protocol_id | the ID of the protocol to add/delete (both sides must agree on the particular values). |
vif_name | the name of the vif the protocol add/delete to apply to. |
vif_index | the index of the vif the protocol add/delete to apply to. The added protocol will receive Join/Leave membership information about same-LAN members for the particular vif. |
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_add_protocol6 (
const string& xrl_sender_name,
const string& protocol_name,
const uint32_t& protocol_id,
const string& vif_name,
const uint32_t& vif_index)
| mld6igmp_0_1_add_protocol6 |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_delete_protocol4 (
const string& xrl_sender_name,
const string& protocol_name,
const uint32_t& protocol_id,
const string& vif_name,
const uint32_t& vif_index)
| mld6igmp_0_1_delete_protocol4 |
[protected]
Reimplemented from XrlMld6igmpTargetBase.
XrlCmdError mld6igmp_0_1_delete_protocol6 (
const string& xrl_sender_name,
const string& protocol_name,
const uint32_t& protocol_id,
const string& vif_name,
const uint32_t& vif_index)
| mld6igmp_0_1_delete_protocol6 |
[protected]
Reimplemented from XrlMld6igmpTargetBase.