Return to pipe.h CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / bird / proto / pipe |
1.1 ! misho 1: /* ! 2: * BIRD -- Table-to-Table Routing Protocol a.k.a Pipe ! 3: * ! 4: * (c) 1999 Martin Mares <mj@ucw.cz> ! 5: * ! 6: * Can be freely distributed and used under the terms of the GNU GPL. ! 7: */ ! 8: ! 9: #ifndef _BIRD_PIPE_H_ ! 10: #define _BIRD_PIPE_H_ ! 11: ! 12: #define PIPE_OPAQUE 0 ! 13: #define PIPE_TRANSPARENT 1 ! 14: ! 15: struct pipe_config { ! 16: struct proto_config c; ! 17: struct rtable_config *peer; /* Table we're connected to */ ! 18: int mode; /* PIPE_OPAQUE or PIPE_TRANSPARENT */ ! 19: }; ! 20: ! 21: struct pipe_proto { ! 22: struct proto p; ! 23: struct rtable *peer_table; ! 24: struct announce_hook *peer_ahook; /* Announce hook for direction peer->primary */ ! 25: struct proto_stats peer_stats; /* Statistics for the direction peer->primary */ ! 26: int mode; /* PIPE_OPAQUE or PIPE_TRANSPARENT */ ! 27: }; ! 28: ! 29: ! 30: extern struct protocol proto_pipe; ! 31: ! 32: static inline int proto_is_pipe(struct proto *p) ! 33: { return p->proto == &proto_pipe; } ! 34: ! 35: #endif