XrlOspfV2Target (XrlRouter *r, Ospf<IPv4>& ospf, XrlIO<IPv4>& io)
| XrlOspfV2Target |
XrlCmdError common_0_1_get_target_name (
string& name)
| common_0_1_get_target_name |
Get name of Xrl Target
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError common_0_1_get_version (
string& version)
| common_0_1_get_version |
Get version string from Xrl Target
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError common_0_1_get_status (
uint32_t& status,
string& reason)
| common_0_1_get_status |
Get status of Xrl Target
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError common_0_1_shutdown ()
| common_0_1_shutdown |
Request clean shutdown of Xrl Target
Reimplemented from XrlOspfv2TargetBase.
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 |
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 XrlOspfv2TargetBase.
XrlCmdError policy_backend_0_1_configure (
const uint32_t& filter,
const string& conf)
| policy_backend_0_1_configure |
Configure a policy filter.
Parameters:
filter | the identifier of the filter to configure. |
conf | the configuration of the filter. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError policy_backend_0_1_reset (
const uint32_t& filter)
| policy_backend_0_1_reset |
Reset a policy filter.
Parameters:
filter | the identifier of the filter to reset. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError policy_backend_0_1_push_routes ()
| policy_backend_0_1_push_routes |
Push all available routes through all filters for re-filtering.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError policy_redist4_0_1_add_route4 (
const IPv4Net& network,
const bool& unicast,
const bool& multicast,
const IPv4& nexthop,
const uint32_t& metric,
const XrlAtomList& policytags)
| policy_redist4_0_1_add_route4 |
Start route redistribution for an IPv4 route.
Parameters:
network | the route to advertise. |
unicast | whether the route is unicast. |
multicast | whether the route is multicast. |
nexthop | the nexthop of the route. |
metric | the metric of the route. |
policytags | the set of policy-tags associated with the route. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError policy_redist4_0_1_delete_route4 (
const IPv4Net& network,
const bool& unicast,
const bool& multicast)
| policy_redist4_0_1_delete_route4 |
Terminate route redistribution for an IPv4 route.
Parameters:
network | the route for which advertisements should cease. |
unicast | whether the route is unicast. |
multicast | whether the route is multicast. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_router_id (
const IPv4& id)
| ospfv2_0_1_set_router_id |
Set router id
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_rfc1583_compatibility (
const bool& compatibility)
| ospfv2_0_1_set_rfc1583_compatibility |
Set RFC 1583 compatibility.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_ip_router_alert (
const bool& ip_router_alert)
| ospfv2_0_1_set_ip_router_alert |
Set the router alert in the IP options.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_create_area_router (
const IPv4& area,
const string& type)
| ospfv2_0_1_create_area_router |
Parameters:
type | of area "normal", "stub", "nssa" |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_change_area_router_type (
const IPv4& area,
const string& type)
| ospfv2_0_1_change_area_router_type |
Change area type.
Parameters:
area | id of the area |
type | of area "border", "stub", "nssa" |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_destroy_area_router (
const IPv4& area)
| ospfv2_0_1_destroy_area_router |
Destroy area.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_create_peer (
const string& ifname,
const string& vifname,
const IPv4& addr,
const string& type,
const IPv4& area)
| ospfv2_0_1_create_peer |
Create a binding to an interface.
Parameters:
ifname | the interface that owns vif that has address. |
vifname | virtual interface owning address. |
addr | the address to be added. |
type | of link "p2p", "broadcast", "nbma", "p2m", "vlink" |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_delete_peer (
const string& ifname,
const string& vifname)
| ospfv2_0_1_delete_peer |
Delete peer.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_peer_state (
const string& ifname,
const string& vifname,
const bool& enable)
| ospfv2_0_1_set_peer_state |
Set the peer state up or down.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_add_neighbour (
const string& ifname,
const string& vifname,
const IPv4& area,
const IPv4& neighbour_address,
const IPv4& neighbour_id)
| ospfv2_0_1_add_neighbour |
Add a neighbour to the peer.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_remove_neighbour (
const string& ifname,
const string& vifname,
const IPv4& area,
const IPv4& neighbour_address,
const IPv4& neighbour_id)
| ospfv2_0_1_remove_neighbour |
Remove a neighbour from the peer.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_create_virtual_link (
const IPv4& neighbour_id,
const IPv4& area)
| ospfv2_0_1_create_virtual_link |
Create a virtual link.
Parameters:
neighbour_id | the router ID of the other end of the link. |
area | in which an attempt has been made to configure a virtual link it has to be the backbone. Its just being passed in so it can be checked by the protocol. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_delete_virtual_link (
const IPv4& neighbour_id)
| ospfv2_0_1_delete_virtual_link |
Delete virtual link
Parameters:
neighbour_id | the router ID of the other end of the link. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_transit_area_virtual_link (
const IPv4& neighbour_id,
const IPv4& transit_area)
| ospfv2_0_1_transit_area_virtual_link |
The area through which the virtual link transits.
Parameters:
neighbour_id | the router ID of the other end of the link. |
transit_area | that the virtual link transits. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_interface_cost (
const string& ifname,
const string& vifname,
const IPv4& area,
const uint32_t& cost)
| ospfv2_0_1_set_interface_cost |
The edge cost of this interface.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_retransmit_interval (
const string& ifname,
const string& vifname,
const IPv4& area,
const uint32_t& interval)
| ospfv2_0_1_set_retransmit_interval |
The RxmtInterval.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_inftransdelay (
const string& ifname,
const string& vifname,
const IPv4& area,
const uint32_t& delay)
| ospfv2_0_1_set_inftransdelay |
Update packet will have their age incremented by this amount before transmission. This value should take into account transmission and propagation delays; it must be greater than zero.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_router_priority (
const string& ifname,
const string& vifname,
const IPv4& area,
const uint32_t& interval)
| ospfv2_0_1_set_router_priority |
Used in the designated router election.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_hello_interval (
const string& ifname,
const string& vifname,
const IPv4& area,
const uint32_t& interval)
| ospfv2_0_1_set_hello_interval |
The interval between hello messages.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_router_dead_interval (
const string& ifname,
const string& vifname,
const IPv4& area,
const uint32_t& interval)
| ospfv2_0_1_set_router_dead_interval |
The period to wait before considering a router dead.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_simple_authentication_key (
const string& ifname,
const string& vifname,
const IPv4& area,
const string& password)
| ospfv2_0_1_set_simple_authentication_key |
Set simple password authentication key.
Parameters:
ifname | the interface name. |
vifname | the vif name. |
area | the area ID. |
password | the authentication password. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_delete_simple_authentication_key (
const string& ifname,
const string& vifname,
const IPv4& area)
| ospfv2_0_1_delete_simple_authentication_key |
Delete simple password authentication key.
Parameters:
ifname | the interface name. |
vifname | the vif name. |
area | the area ID. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_md5_authentication_key (
const string& ifname,
const string& vifname,
const IPv4& area,
const uint32_t& key_id,
const string& password,
const string& start_time,
const string& end_time,
const uint32_t& max_time_drift)
| ospfv2_0_1_set_md5_authentication_key |
Set MD5 authentication key.
Parameters:
ifname | the interface name. |
vifname | the vif name. |
area | the area ID. |
key_id | the key ID (must be an integer in the interval [0, 255]). |
password | the authentication password. |
start_time | the authentication start time (YYYY-MM-DD.HH:MM). |
end_time | the authentication end time (YYYY-MM-DD.HH:MM). |
max_time_drift | the maximum time drift (in seconds) among all routers. Allowed values are [0--65534] seconds or 65535 for unlimited time drift. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_delete_md5_authentication_key (
const string& ifname,
const string& vifname,
const IPv4& area,
const uint32_t& key_id)
| ospfv2_0_1_delete_md5_authentication_key |
Delete MD5 authentication key.
Parameters:
ifname | the interface name. |
vifname | the vif name. |
area | the area ID. |
key_id | the key ID (must be an integer in the interval [0, 255]). |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_set_passive (
const string& ifname,
const string& vifname,
const IPv4& area,
const bool& passive,
const bool& host)
| ospfv2_0_1_set_passive |
Toggle the passive status of an interface.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_originate_default_route (
const IPv4& area,
const bool& enable)
| ospfv2_0_1_originate_default_route |
If this is a "stub" or "nssa" area toggle the sending of a default route.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_stub_default_cost (
const IPv4& area,
const uint32_t& cost)
| ospfv2_0_1_stub_default_cost |
Set the StubDefaultCost, the default cost sent in a default route in a "stub" or "nssa" area.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_summaries (
const IPv4& area,
const bool& enable)
| ospfv2_0_1_summaries |
Toggle the sending of summaries into "stub" or "nssa" areas.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_area_range_add (
const IPv4& area,
const IPv4Net& net,
const bool& advertise)
| ospfv2_0_1_area_range_add |
Add area range.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_area_range_delete (
const IPv4& area,
const IPv4Net& net)
| ospfv2_0_1_area_range_delete |
Delete area range.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_area_range_change_state (
const IPv4& area,
const IPv4Net& net,
const bool& advertise)
| ospfv2_0_1_area_range_change_state |
Change the advertised state of this area.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_trace (
const string& tvar,
const bool& enable)
| ospfv2_0_1_trace |
Enable/Disable tracing.
Parameters:
tvar | trace variable. |
enable | set to true to enable false to disable. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_get_lsa (
const IPv4& area,
const uint32_t& index,
bool& valid,
bool& toohigh,
bool& self,
vector<uint8_t>& lsa)
| ospfv2_0_1_get_lsa |
Get a single lsa from an area. A stateless mechanism to get LSAs. The client of this interface should start from zero and continue to request LSAs (incrementing index) until toohigh becomes true.
Parameters:
area | database that is being searched. |
index | into database starting from 0. |
valid | true if a LSA has been returned. Some index values do not contain LSAs. This should not be considered an error. |
toohigh | true if no more LSA exist after this index. |
self | if true this LSA was originated by this router. |
lsa | if valid is true the LSA at index. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_get_area_list (XrlAtomList& areas)
| ospfv2_0_1_get_area_list |
Get a list of all the configured areas.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_get_neighbour_list (
XrlAtomList& areas)
| ospfv2_0_1_get_neighbour_list |
Get the list of neighbours.
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_get_neighbour_info (
const uint32_t& nid,
string& address,
string& interface,
string& state,
IPv4& rid,
uint32_t& priority,
uint32_t& deadtime,
IPv4& area,
uint32_t& opt,
IPv4& dr,
IPv4& bdr,
uint32_t& up,
uint32_t& adjacent)
| ospfv2_0_1_get_neighbour_info |
Get information on a neighbour.
Parameters:
nid | neighbour ID returned by the get_neighbour_list. |
valid | true if valid information has been returned. |
address | of neighbour in txt to allow IPv4 and IPv6. |
interface | with which the neighbour forms the adjacency. |
state | of the adjacency. |
rid | router ID of the neighbour. |
priority | of the neighbour (used for DR election). |
area | the neighbour is in. |
opt | value in the neighbours hello packet. |
dr | designated router. |
bdr | backup designated router. |
up | time in seconds that the neigbour has been up. |
adjacent | time in seconds that there has been an adjacency. |
Reimplemented from XrlOspfv2TargetBase.
XrlCmdError ospfv2_0_1_clear_database ()
| ospfv2_0_1_clear_database |
Clear the OSPF database.
Reimplemented from XrlOspfv2TargetBase.