/*
 * Copyright (c) 2001-2009 XORP, Inc.
 * See the XORP LICENSE.lgpl file for licensing, conditions, and warranties
 * on use.
 *
 * DO NOT EDIT THIS FILE - IT IS PROGRAMMATICALLY GENERATED
 *
 * Generated by 'tgt-gen'.
 *
 * $XORP: xorp/xrl/targets/mld6igmp.xrls,v 1.34 2009/01/05 18:31:15 jtc Exp $
 */

/**
 *  Get name of Xrl Target
 */
finder://mld6igmp/common/0.1/get_target_name->name:txt

/**
 *  Get version string from Xrl Target
 */
finder://mld6igmp/common/0.1/get_version->version:txt

/**
 *  Get status of Xrl Target
 */
finder://mld6igmp/common/0.1/get_status->status:u32&reason:txt

/**
 *  Request clean shutdown of Xrl Target
 */
finder://mld6igmp/common/0.1/shutdown

/**
 *  Process a CLI command.
 *
 *  @param processor_name the processor name for this command.
 *
 *  @param cli_term_name the terminal name the command was entered from.
 *
 *  @param cli_session_id the CLI session ID the command was entered from.
 *
 *  @param command_name the command name to process.
 *
 *  @param command_args the command arguments to process.
 *
 *  @param ret_processor_name the processor name to return back to the CLI.
 *
 *  @param ret_cli_term_name the terminal name to return back.
 *
 *  @param ret_cli_session_id the CLI session ID to return back.
 *
 *  @param ret_command_output the command output to return back.
 */
finder://mld6igmp/cli_processor/0.1/process_command?processor_name:txt&cli_term_name:txt&cli_session_id:u32&command_name:txt&command_args:txt->ret_processor_name:txt&ret_cli_term_name:txt&ret_cli_session_id:u32&ret_command_output:txt

/**
 *  Announce target birth to observer.
 *
 *  @param target_class the target class name.
 *
 *  @param target_instance the target instance name.
 */
finder://mld6igmp/finder_event_observer/0.1/xrl_target_birth?target_class:txt&target_instance:txt

/**
 *  Announce target death to observer.
 *
 *  @param target_class the target class name.
 *
 *  @param target_instance the target instance name.
 */
finder://mld6igmp/finder_event_observer/0.1/xrl_target_death?target_class:txt&target_instance:txt

/**
 *  Receive an IPv4 packet from a raw socket.
 *
 *  @param if_name the interface name the packet arrived on.
 *
 *  @param vif_name the vif name the packet arrived on.
 *
 *  @param src_address the IP source address.
 *
 *  @param dst_address the IP destination address.
 *
 *  @param ip_protocol the IP protocol number.
 *
 *  @param ip_ttl the IP TTL (hop-limit). If it has a negative value, then the
 *  received value is unknown.
 *
 *  @param ip_tos the Type of Service (Diffserv/ECN bits for IPv4). If it has a
 *  negative value, then the received value is unknown.
 *
 *  @param ip_router_alert if true, the IP Router Alert option was included in
 *  the IP packet.
 *
 *  @param ip_internet_control if true, then this is IP control traffic.
 *
 *  @param payload the payload, everything after the IP header and options.
 */
finder://mld6igmp/raw_packet4_client/0.1/recv?if_name:txt&vif_name:txt&src_address:ipv4&dst_address:ipv4&ip_protocol:u32&ip_ttl:i32&ip_tos:i32&ip_router_alert:bool&ip_internet_control:bool&payload:binary

/**
 *  Receive an IPv6 packet from a raw socket.
 *
 *  @param if_name the interface name the packet arrived on.
 *
 *  @param vif_name the vif name the packet arrived on.
 *
 *  @param src_address the IP source address.
 *
 *  @param dst_address the IP destination address.
 *
 *  @param ip_protocol the IP protocol number.
 *
 *  @param ip_ttl the IP TTL (hop-limit). If it has a negative value, then the
 *  received value is unknown.
 *
 *  @param ip_tos the Type Of Service (IP traffic class for IPv4). If it has a
 *  negative value, then the received value is unknown.
 *
 *  @param ip_router_alert if true, the IP Router Alert option was included in
 *  the IP packet.
 *
 *  @param ip_internet_control if true, then this is IP control traffic.
 *
 *  @param ext_headers_type a list of u32 integers with the types of the
 *  optional extention headers.
 *
 *  @param ext_headers_payload a list of payload data, one for each optional
 *  extention header. The number of entries must match ext_headers_type.
 *
 *  @param payload the payload, everything after the IP header and options.
 */
finder://mld6igmp/raw_packet6_client/0.1/recv?if_name:txt&vif_name:txt&src_address:ipv6&dst_address:ipv6&ip_protocol:u32&ip_ttl:i32&ip_tos:i32&ip_router_alert:bool&ip_internet_control:bool&ext_headers_type:list&ext_headers_payload:list&payload:binary

/**
 *  Enable/disable/start/stop a MLD6IGMP vif interface.
 *
 *  @param vif_name the name of the vif to enable/disable/start/stop.
 *
 *  @param enable if true, then enable the vif, otherwise disable it.
 */
finder://mld6igmp/mld6igmp/0.1/enable_vif?vif_name:txt&enable:bool

finder://mld6igmp/mld6igmp/0.1/start_vif?vif_name:txt

finder://mld6igmp/mld6igmp/0.1/stop_vif?vif_name:txt

/**
 *  Enable/disable/start/stop all MLD6IGMP vif interfaces.
 *
 *  @param enable if true, then enable the vifs, otherwise disable them.
 */
finder://mld6igmp/mld6igmp/0.1/enable_all_vifs?enable:bool

finder://mld6igmp/mld6igmp/0.1/start_all_vifs

finder://mld6igmp/mld6igmp/0.1/stop_all_vifs

/**
 *  Enable/disable/start/stop the MLD6IGMP protocol.
 *
 *  @param enable if true, then enable the MLD6IGMP protocol, otherwise disable
 *  it.
 */
finder://mld6igmp/mld6igmp/0.1/enable_mld6igmp?enable:bool

finder://mld6igmp/mld6igmp/0.1/start_mld6igmp

finder://mld6igmp/mld6igmp/0.1/stop_mld6igmp

/**
 *  Enable/disable/start/stop the MLD6IGMP CLI access.
 *
 *  @param enable if true, then enable the MLD6IGMP CLI access, otherwise
 *  disable it.
 */
finder://mld6igmp/mld6igmp/0.1/enable_cli?enable:bool

finder://mld6igmp/mld6igmp/0.1/start_cli

finder://mld6igmp/mld6igmp/0.1/stop_cli

/**
 *  Get the configured protocol version per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param proto_version the protocol version.
 */
finder://mld6igmp/mld6igmp/0.1/get_vif_proto_version?vif_name:txt->proto_version:u32

/**
 *  Set the protocol version per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param proto_version the protocol version.
 */
finder://mld6igmp/mld6igmp/0.1/set_vif_proto_version?vif_name:txt&proto_version:u32

/**
 *  Reset the protocol version per interface to its default value.
 *
 *  @param vif_name the name of the vif to apply to.
 */
finder://mld6igmp/mld6igmp/0.1/reset_vif_proto_version?vif_name:txt

/**
 *  Get the IP Router Alert option check per interface for received packets.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param enabled if true, then the IP Router Alert option check was enabled,
 *  otherwise it was disabled.
 */
finder://mld6igmp/mld6igmp/0.1/get_vif_ip_router_alert_option_check?vif_name:txt->enabled:bool

/**
 *  Set the IP Router Alert option check per interface for received packets.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param enable if true, then enable the IP Router Alert option check,
 *  otherwise disable it.
 */
finder://mld6igmp/mld6igmp/0.1/set_vif_ip_router_alert_option_check?vif_name:txt&enable:bool

/**
 *  Reset the IP Router Alert option check for received packets per per
 *  interface to its default value.
 *
 *  @param vif_name the name of the vif to apply to.
 */
finder://mld6igmp/mld6igmp/0.1/reset_vif_ip_router_alert_option_check?vif_name:txt

/**
 *  Get the Query Interval per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param interval_sec the number of seconds in the interval.
 *
 *  @param interval_usec the number of microseconds (in addition to
 *  interval_sec) in the interval.
 */
finder://mld6igmp/mld6igmp/0.1/get_vif_query_interval?vif_name:txt->interval_sec:u32&interval_usec:u32

/**
 *  Set the Query Interval per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param interval_sec the number of seconds in the interval.
 *
 *  @param interval_usec the number of microseconds (in addition to
 *  interval_sec) in the interval.
 */
finder://mld6igmp/mld6igmp/0.1/set_vif_query_interval?vif_name:txt&interval_sec:u32&interval_usec:u32

/**
 *  Reset the Query Interval per interface to its default value.
 *
 *  @param vif_name the name of the vif to apply to.
 */
finder://mld6igmp/mld6igmp/0.1/reset_vif_query_interval?vif_name:txt

/**
 *  Get the Last Member Query Interval per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param interval_sec the number of seconds in the interval.
 *
 *  @param interval_usec the number of microseconds (in addition to
 *  interval_sec) in the interval.
 */
finder://mld6igmp/mld6igmp/0.1/get_vif_query_last_member_interval?vif_name:txt->interval_sec:u32&interval_usec:u32

/**
 *  Set the Last Member Query Interval per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param interval_sec the number of seconds in the interval.
 *
 *  @param interval_usec the number of microseconds (in addition to
 *  interval_sec) in the interval.
 */
finder://mld6igmp/mld6igmp/0.1/set_vif_query_last_member_interval?vif_name:txt&interval_sec:u32&interval_usec:u32

/**
 *  Reset the Last Member Query Interval per interface to its default value.
 *
 *  @param vif_name the name of the vif to apply to.
 */
finder://mld6igmp/mld6igmp/0.1/reset_vif_query_last_member_interval?vif_name:txt

/**
 *  Get the Query Response Interval per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param interval_sec the number of seconds in the interval.
 *
 *  @param interval_usec the number of microseconds (in addition to
 *  interval_sec) in the interval.
 */
finder://mld6igmp/mld6igmp/0.1/get_vif_query_response_interval?vif_name:txt->interval_sec:u32&interval_usec:u32

/**
 *  Set the Query Response Interval per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param interval_sec the number of seconds in the interval.
 *
 *  @param interval_usec the number of microseconds (in addition to
 *  interval_sec) in the interval.
 */
finder://mld6igmp/mld6igmp/0.1/set_vif_query_response_interval?vif_name:txt&interval_sec:u32&interval_usec:u32

/**
 *  Reset the Query Response Interval per interface to its default value.
 *
 *  @param vif_name the name of the vif to apply to.
 */
finder://mld6igmp/mld6igmp/0.1/reset_vif_query_response_interval?vif_name:txt

/**
 *  Get the Robustness Variable count per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param robust_count the count value.
 */
finder://mld6igmp/mld6igmp/0.1/get_vif_robust_count?vif_name:txt->robust_count:u32

/**
 *  Set the Robustness Variable count per interface.
 *
 *  @param vif_name the name of the vif to apply to.
 *
 *  @param robust_count the count value.
 */
finder://mld6igmp/mld6igmp/0.1/set_vif_robust_count?vif_name:txt&robust_count:u32

/**
 *  Reset the Robustness Variable count per interface to its default value.
 *
 *  @param vif_name the name of the vif to apply to.
 */
finder://mld6igmp/mld6igmp/0.1/reset_vif_robust_count?vif_name:txt

/**
 *  Enable/disable the MLD6IGMP trace log for all operations.
 *
 *  @param enable if true, then enable the trace log, otherwise disable it.
 */
finder://mld6igmp/mld6igmp/0.1/log_trace_all?enable:bool

/**
 *  Add/delete a client protocol in the MLD/IGMP protocol.
 *
 *  @param xrl_sender_name the XRL name of the originator of this XRL.
 *
 *  @param protocol_name the name of the protocol to add/delete.
 *
 *  @param protocol_id the ID of the protocol to add/delete (both sides must
 *  agree on the particular values).
 *
 *  @param vif_name the name of the vif the protocol add/delete to apply to.
 *
 *  @param 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.
 */
finder://mld6igmp/mld6igmp/0.1/add_protocol4?xrl_sender_name:txt&protocol_name:txt&protocol_id:u32&vif_name:txt&vif_index:u32

finder://mld6igmp/mld6igmp/0.1/add_protocol6?xrl_sender_name:txt&protocol_name:txt&protocol_id:u32&vif_name:txt&vif_index:u32

finder://mld6igmp/mld6igmp/0.1/delete_protocol4?xrl_sender_name:txt&protocol_name:txt&protocol_id:u32&vif_name:txt&vif_index:u32

finder://mld6igmp/mld6igmp/0.1/delete_protocol6?xrl_sender_name:txt&protocol_name:txt&protocol_id:u32&vif_name:txt&vif_index:u32

