NAME
rtable_add
,
rtable_exists
,
rtable_loindex
, rtable_l2
,
rtable_l2set
—
routing tables and routing domains
interface
SYNOPSIS
#include
<net/rtable.h>
int
rtable_add
(unsigned
int id);
int
rtable_exists
(unsigned
int id);
unsigned int
rtable_loindex
(unsigned
int id);
unsigned int
rtable_l2
(unsigned
int id);
void
rtable_l2set
(unsigned
int id, unsigned int
rdomain);
DESCRIPTION
Routing tables contain layer 2 and 3 forwarding information. Each address family in use will have its own routing table. Routing domains are a way of logically segmenting a router among multiple networks and may contain more than one routing table.
rtable_add
(unsigned int id)- Add routing table with ID of id to routing domain 0.
rtable_exists
(unsigned int id)- Return 1 if routing table with ID id exists, 0 otherwise.
rtable_loindex
(unsigned int id)- Return the default lo(4) interface index for the routing table with ID of id.
rtable_l2
(unsigned int id)- Get the routing domain of routing table with ID of id.
rtable_l2set
(unsigned int id, unsigned int rdomain)- Place routing table with ID of id under the routing domain with ID of rdomain.
CONTEXT
rtable_add
(),
rtable_exists
(),
rtable_loindex
(),
rtable_l2
(), and
task_l2set
() can be called during autoconf, from
process context, or from interrupt context.
RETURN VALUES
rtable_add
() may fail with:
- [
ENOMEM
] - Memory could not be allocated to extend the list of routing domains.