📄 ripng_base.hh
字号:
const string& ifname, const string& vifname, const IPv6& addr, // Output values, uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set period that routes associated with reception address will be * deleted after they've expired. */ virtual XrlCmdError ripng_0_1_set_deletion_delay( // Input values, const string& ifname, const string& vifname, const IPv6& addr, const uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get period that routes associated with reception address will be * deleted after they've expired. */ virtual XrlCmdError ripng_0_1_deletion_delay( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set period that route table requests should be sent from address when * no peers are associated with it. */ virtual XrlCmdError ripng_0_1_set_request_interval( // Input values, const string& ifname, const string& vifname, const IPv6& addr, const uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set period that route table requests should be sent from address when * no peers are associated with it. */ virtual XrlCmdError ripng_0_1_request_interval( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set period between the unsolicited sending of the routing table from * address. */ virtual XrlCmdError ripng_0_1_set_update_interval( // Input values, const string& ifname, const string& vifname, const IPv6& addr, const uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get period between the unsolicited sending of the routing table from * address. */ virtual XrlCmdError ripng_0_1_update_interval( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set jitter between the unsolicited sending of the routing table from * address (in percents of the period). */ virtual XrlCmdError ripng_0_1_set_update_jitter( // Input values, const string& ifname, const string& vifname, const IPv6& addr, const uint32_t& t_jitter) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get jitter between the unsolicited sending of the routing table from * address (in percents of the period). */ virtual XrlCmdError ripng_0_1_update_jitter( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, uint32_t& t_jitter) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set period between sending triggered updates from address. */ virtual XrlCmdError ripng_0_1_set_triggered_update_delay( // Input values, const string& ifname, const string& vifname, const IPv6& addr, const uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set period between sending triggered updates from address. */ virtual XrlCmdError ripng_0_1_triggered_update_delay( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, uint32_t& t_secs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set jitter between sending triggered updates from address (in percents * of the period). */ virtual XrlCmdError ripng_0_1_set_triggered_update_jitter( // Input values, const string& ifname, const string& vifname, const IPv6& addr, const uint32_t& t_jitter) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get jitter between sending triggered updates from address (in percents * of the period). */ virtual XrlCmdError ripng_0_1_triggered_update_jitter( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, uint32_t& t_jitter) = 0; /** * Pure-virtual function that needs to be implemented to: * * Set the inter-packet delay between the output of packets from address. */ virtual XrlCmdError ripng_0_1_set_interpacket_delay( // Input values, const string& ifname, const string& vifname, const IPv6& addr, const uint32_t& t_msecs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get the inter-packet delay between the output of packets from address. */ virtual XrlCmdError ripng_0_1_interpacket_delay( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, uint32_t& t_msecs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get a textual description of the status of address RIP is running upon. * * @param ifname the interface that owns vif that has the address. * * @param vifname virtual interface owns the address. * * @param addr the address to query. */ virtual XrlCmdError ripng_0_1_rip_address_status( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, string& status) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get addresses running RIP. */ virtual XrlCmdError ripng_0_1_get_all_addresses( // Output values, XrlAtomList& ifnames, XrlAtomList& vifnames, XrlAtomList& addrs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get counters associated with interface / vif /address. */ virtual XrlCmdError ripng_0_1_get_counters( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, XrlAtomList& counter_descriptions, XrlAtomList& counter_values) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get the list of peers associated with interface / vif / address. */ virtual XrlCmdError ripng_0_1_get_peers( // Input values, const string& ifname, const string& vifname, const IPv6& addr, // Output values, XrlAtomList& peers) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get list of all peers known to RIP. There is a 1-to-1 correspondence * between the items in the lists of peers, ifnames, vifnames, addrs. */ virtual XrlCmdError ripng_0_1_get_all_peers( // Output values, XrlAtomList& peers, XrlAtomList& ifnames, XrlAtomList& vifnames, XrlAtomList& addrs) = 0; /** * Pure-virtual function that needs to be implemented to: * * Get counters associated with peer of interface / vif /address. * * @param counter_descriptions textual descriptions of counters. * * @param counter_values values associated with counters. * * @param peer_last_active is the number of seconds since TimeVal(0,0). */ virtual XrlCmdError ripng_0_1_get_peer_counters( // Input values, const string& ifname, const string& vifname, const IPv6& addr, const IPv6& peer, // Output values, XrlAtomList& counter_descriptions, XrlAtomList& counter_values, uint32_t& peer_last_active) = 0; /** * Pure-virtual function that needs to be implemented to: * * Configure protocol route redistribution. * * @param protocol_name name of protocol to redistribute routes from. * * @param cost RIP cost metric to assign to protocol routes. * * @param tag RIP tag to associate with protocol routes. */ virtual XrlCmdError ripng_0_1_redist_protocol_routes( // Input values, const string& protocol_name, const uint32_t& cost, const uint32_t& tag) = 0; /** * Pure-virtual function that needs to be implemented to: * * Remove protocol route redistribution. * * @param protocol_name name of protocol to stop redistribution of routes * from. */ virtual XrlCmdError ripng_0_1_no_redist_protocol_routes( // Input values, const string& protocol_name) = 0; /** * Pure-virtual function that needs to be implemented to: * * Method invoked by target implementing socket6/0.1 when a packet arrives * from an IPv6 source. * * @param sockid the identifier associated with socket where error * occurred. * * @param src_host the originating host. * * @param src_port the originating IP port. * * @param data the data received. */ virtual XrlCmdError socket6_user_0_1_recv_event( // Input values, const string& sockid, const IPv6& src_host, const uint32_t& src_port, const vector<uint8_t>& data) = 0; /** * Pure-virtual function that needs to be implemented to: * * Method invoked by target implementing socket6/0.1 when a connection * request is received from an IPv6 source. */ virtual XrlCmdError socket6_user_0_1_connect_event( // Input values, const string& sockid, const IPv6& src_host, const uint32_t& src_port, const string& new_sockid, // Output values, bool& accept) = 0; /** * Pure-virtual function that needs to be implemented to: * * Method invoked by target implementing socket6/0.1 when an error occurs. * * @param sockid the identifier associated with socket where error * occurred. * * @param error a textual description of the error. * * @param fatal indication of whether socket is shutdown because of error. */ virtual XrlCmdError socket6_user_0_1_error_event( // Input values, const string& sockid, const string& error, const bool& fatal) = 0; /** * Pure-virtual function that needs to be implemented to: * * Method invoked by target implementing socket6/0.1 when a socket is * forcibly closed. This would typically happen when the address the * socket is bound to is removed from an interface. This method is not * called if the socket is closed through socket/0.1/close. */ virtual XrlCmdError socket6_user_0_1_close_event( // Input values, const string& sockid, const string& reason) = 0;private: const XrlCmdError handle_common_0_1_get_target_name(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_common_0_1_get_version(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_common_0_1_get_status(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_common_0_1_shutdown(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_finder_event_observer_0_1_xrl_target_birth(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_finder_event_observer_0_1_xrl_target_death(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_backend_0_1_configure(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_backend_0_1_reset(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_backend_0_1_push_routes(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_redist6_0_1_add_route6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_policy_redist6_0_1_delete_route6(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_redist6_0_1_add_route(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_redist6_0_1_delete_route(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_redist6_0_1_starting_route_dump(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_redist6_0_1_finishing_route_dump(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_add_rip_address(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_remove_rip_address(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_rip_address_enabled(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_rip_address_enabled(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_cost(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_cost(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_horizon(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_horizon(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_passive(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_passive(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_accept_non_rip_requests(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_accept_non_rip_requests(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_accept_default_route(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_accept_default_route(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_advertise_default_route(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_advertise_default_route(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_route_timeout(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_route_timeout(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_deletion_delay(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_deletion_delay(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_request_interval(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_request_interval(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_update_interval(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_update_interval(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_update_jitter(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_update_jitter(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_triggered_update_delay(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_triggered_update_delay(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_triggered_update_jitter(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_triggered_update_jitter(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_set_interpacket_delay(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_interpacket_delay(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_rip_address_status(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_get_all_addresses(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_get_counters(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_get_peers(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_get_all_peers(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_get_peer_counters(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_redist_protocol_routes(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_ripng_0_1_no_redist_protocol_routes(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_socket6_user_0_1_recv_event(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_socket6_user_0_1_connect_event(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_socket6_user_0_1_error_event(const XrlArgs& in, XrlArgs* out); const XrlCmdError handle_socket6_user_0_1_close_event(const XrlArgs& in, XrlArgs* out); void add_handlers(); void remove_handlers();};#endif // __XRL_TARGETS_RIPNG_BASE_HH__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -