⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mfea_base.hh

📁 xorp源码hg
💻 HH
📖 第 1 页 / 共 2 页
字号:
/* * Copyright (c) 2001-2007 International Computer Science Institute * See LICENSE 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/mfea_base.hh,v 1.29 2007/02/16 22:47:52 pavlin Exp $ */#ifndef __XRL_TARGETS_MFEA_BASE_HH__#define __XRL_TARGETS_MFEA_BASE_HH__#undef XORP_LIBRARY_NAME#define XORP_LIBRARY_NAME "XrlMfeaTarget"#include "libxorp/xlog.h"#include "libxipc/xrl_cmd_map.hh"class XrlMfeaTargetBase {protected:    XrlCmdMap* _cmds;public:    /**     * Constructor.     *     * @param cmds an XrlCmdMap that the commands associated with the target     *		   should be added to.  This is typically the XrlRouter     *		   associated with the target.     */    XrlMfeaTargetBase(XrlCmdMap* cmds = 0);    /**     * Destructor.     *     * Dissociates instance commands from command map.     */    virtual ~XrlMfeaTargetBase();    /**     * Set command map.     *     * @param cmds pointer to command map to associate commands with.  This     * argument is typically a pointer to the XrlRouter associated with the     * target.     *     * @return true on success, false if cmds is null or a command map has     * already been supplied.     */    bool set_command_map(XrlCmdMap* cmds);    /**     * Get Xrl instance name associated with command map.     */    inline const string& name() const { return _cmds->name(); }    /**     * Get version string of instance.     */    inline const char* version() const { return "mfea/0.0"; }protected:    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Get name of Xrl Target     */    virtual XrlCmdError common_0_1_get_target_name(	// Output values,	string&	name) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Get version string from Xrl Target     */    virtual XrlCmdError common_0_1_get_version(	// Output values,	string&	version) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Get status of Xrl Target     */    virtual XrlCmdError common_0_1_get_status(	// Output values,	uint32_t&	status,	string&	reason) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Request clean shutdown of Xrl Target     */    virtual XrlCmdError common_0_1_shutdown() = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  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.     */    virtual XrlCmdError cli_processor_0_1_process_command(	// Input values,	const string&	processor_name,	const string&	cli_term_name,	const uint32_t&	cli_session_id,	const string&	command_name,	const string&	command_args,	// Output values,	string&	ret_processor_name,	string&	ret_cli_term_name,	uint32_t&	ret_cli_session_id,	string&	ret_command_output) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Announce target birth to observer.     *     *  @param target_class the target class name.     *     *  @param target_instance the target instance name.     */    virtual XrlCmdError finder_event_observer_0_1_xrl_target_birth(	// Input values,	const string&	target_class,	const string&	target_instance) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Announce target death to observer.     *     *  @param target_class the target class name.     *     *  @param target_instance the target instance name.     */    virtual XrlCmdError finder_event_observer_0_1_xrl_target_death(	// Input values,	const string&	target_class,	const string&	target_instance) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Test if the underlying system supports IPv4 multicast routing.     *     *  @param result true if the underlying system supports IPv4 multicast     *  routing, otherwise false.     */    virtual XrlCmdError mfea_0_1_have_multicast_routing4(	// Output values,	bool&	result) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Test if the underlying system supports IPv6 multicast routing.     *     *  @param result true if the underlying system supports IPv6 multicast     *  routing, otherwise false.     */    virtual XrlCmdError mfea_0_1_have_multicast_routing6(	// Output values,	bool&	result) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Add/delete a protocol in the Multicast FEA.     *     *  @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).     */    virtual XrlCmdError mfea_0_1_add_protocol4(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id) = 0;    virtual XrlCmdError mfea_0_1_add_protocol6(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id) = 0;    virtual XrlCmdError mfea_0_1_delete_protocol4(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id) = 0;    virtual XrlCmdError mfea_0_1_delete_protocol6(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Start/stop a protocol on an interface in the Multicast FEA.     *     *  @param xrl_sender_name the XRL name of the originator of this XRL.     *     *  @param protocol_name the name of the protocol to start/stop on the     *  particular vif.     *     *  @param protocol_id the ID of the protocol to add/stop on the particular     *  vif (both sides must agree on the particular values).     *     *  @param vif_name the name of the vif to start/stop for the particular     *  protocol.     *     *  @param vif_index the index of the vif to start/stop for the particular     *  protocol.     */    virtual XrlCmdError mfea_0_1_start_protocol_vif4(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const string&	vif_name,	const uint32_t&	vif_index) = 0;    virtual XrlCmdError mfea_0_1_start_protocol_vif6(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const string&	vif_name,	const uint32_t&	vif_index) = 0;    virtual XrlCmdError mfea_0_1_stop_protocol_vif4(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const string&	vif_name,	const uint32_t&	vif_index) = 0;    virtual XrlCmdError mfea_0_1_stop_protocol_vif6(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const string&	vif_name,	const uint32_t&	vif_index) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Enable/disable the receiving of kernel-originated signal messages.     *     *  @param xrl_sender_name the XRL name of the originator of this XRL.     *     *  @param protocol_name the name of the protocol to add.     *     *  @param protocol_id the ID of the protocol to add (both sides must agree     *  on the particular values).     *     *  @param is_allow if true, enable the receiving of kernel-originated     *  signal messages by protocol 'protocol_name'.     */    virtual XrlCmdError mfea_0_1_allow_signal_messages(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const bool&	is_allow) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Join/leave a multicast group.     *     *  @param xrl_sender_name the XRL name of the originator of this XRL.     *     *  @param protocol_name the name of the protocol that joins/leave the     *  group.     *     *  @param protocol_id the ID of the protocol that joins/leave the group     *  (both sides must agree on the particular values).     *     *  @param vif_name the name of the vif to join/leave the multicast group.     *     *  @param vif_index the index of the vif to join/leave the multicast     *  group.     *     *  @param group_address the multicast group to join/leave.     */    virtual XrlCmdError mfea_0_1_join_multicast_group4(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const string&	vif_name,	const uint32_t&	vif_index,	const IPv4&	group_address) = 0;    virtual XrlCmdError mfea_0_1_join_multicast_group6(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const string&	vif_name,	const uint32_t&	vif_index,	const IPv6&	group_address) = 0;    virtual XrlCmdError mfea_0_1_leave_multicast_group4(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const string&	vif_name,	const uint32_t&	vif_index,	const IPv4&	group_address) = 0;    virtual XrlCmdError mfea_0_1_leave_multicast_group6(	// Input values,	const string&	xrl_sender_name,	const string&	protocol_name,	const uint32_t&	protocol_id,	const string&	vif_name,	const uint32_t&	vif_index,	const IPv6&	group_address) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *     *  Add/delete a Multicast Forwarding Cache with the kernel.     *     *  @param xrl_sender_name the XRL name of the originator of this XRL.     *     *  @param source_address the source address of the MFC to add/delete.     *     *  @param group_address the group address of the MFC to add/delete.     *     *  @param iif_vif_index the index of the vif that is the incoming     *  interface.     *     *  @param oiflist the bit-vector with the set of outgoing interfaces.     *     *  @param oiflist_disable_wrongvif the bit-vector with the set of outgoing     *  interfaces to disable WRONGVIF kernel signal.     *     *  @param max_vifs_oiflist the number of vifs covered by oiflist or     *  oiflist_disable_wrongvif .

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -