1998-12-06 18:21:23 +00:00
|
|
|
/*
|
|
|
|
* BIRD -- Static Route Generator
|
|
|
|
*
|
|
|
|
* (c) 1998 Martin Mares <mj@ucw.cz>
|
|
|
|
*
|
|
|
|
* Can be freely distributed and used under the terms of the GNU GPL.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _BIRD_STATIC_H_
|
|
|
|
#define _BIRD_STATIC_H_
|
|
|
|
|
|
|
|
struct static_proto {
|
|
|
|
struct proto p;
|
1998-12-06 23:13:31 +00:00
|
|
|
list iface_routes; /* Routes to search on interface events */
|
|
|
|
list other_routes; /* Routes hooked to neighbor cache and reject routes */
|
1998-12-06 18:21:23 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
void static_init_instance(struct static_proto *);
|
|
|
|
|
|
|
|
struct static_route {
|
|
|
|
node n;
|
1998-12-08 18:31:31 +00:00
|
|
|
struct static_route *chain; /* Next for the same neighbor */
|
1998-12-06 23:13:31 +00:00
|
|
|
ip_addr net; /* Network we route */
|
1998-12-06 18:21:23 +00:00
|
|
|
int masklen; /* Mask length */
|
|
|
|
int dest; /* Destination type (RTD_*) */
|
1998-12-06 23:13:31 +00:00
|
|
|
ip_addr via; /* Destination router */
|
1998-12-06 18:21:23 +00:00
|
|
|
struct neighbor *neigh;
|
1998-12-06 23:13:31 +00:00
|
|
|
byte *if_name; /* Name for RTD_DEVICE routes */
|
1998-12-06 18:21:23 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|