Route Object
A-36
A.11 Route Object
A.11.1 Synopsis
The route manager maintains IP routing information. It is called by various rou-
tines to get and set route information. A route object is a “destination” on the
network. Locally, it consists of an egress interface and a next hop IP address.
This section describes a subset of the route object. Flags, features, and API
calls have been omitted in an attempt to make this section a little less imposing.
Also, documenting the entire API would require to documentation of other
stack objects that are not covered in this document.
A.11.2 Object Type
Referenced – Route objects are referenced and dereferenced as needed. The
object is removed when the reference count reaches ZERO.
A.11.3 Route Entry Flags Definition
Associated with each route is a collection of entry/status flags. These flags in-
dicate the type of route and its status. Most system programmers will not be
concerned with the route entry flags. They are listed here for completeness.
The definition of the various flags is as follows:
-
FLG_RTE_UP – Entry is “up”
When set, indicates that the route is valid. The only time this flag is cleared
is when the route is being initialized, or when an error condition is signaled
via RtSetFailure(). The flag is reset to TRUE by calling RtSetFailure() with
NULL failure code, or if the route is modified.
-
FLG_RTE_EXPIRED – Entry is expired
When set, indicates that the route is expired. The flag can not be cleared. A
new route must be created. Expired routes are never “found”, but a route
cached by another entity may expire while it is being held.
-
FLG_RTE_STATIC – Entry is static
This flag is set when a route should remain in the routing table even if it has
no references. Various routes can be static. Static routes are manually ref-
erenced by the system during create, and manually de-referenced by the
system during system shutdown.
-
FLG_RTE_BLACKHOLE – Entry is a blackhole
When set, indicates that the route is a “black hole”. All packets destined for
this address are silently discarded.