summaryrefslogtreecommitdiffstats
path: root/proto/rip/rip.h
diff options
context:
space:
mode:
authorPavel Machek <pavel@ucw.cz>1998-12-22 20:41:04 +0100
committerPavel Machek <pavel@ucw.cz>1998-12-22 20:41:04 +0100
commit6996f459c6d8e6205bbacd83e3656b47635f7d6d (patch)
treec937c84eaffa43911c3b7dd2897bbbbda4f2e9e0 /proto/rip/rip.h
parent1d7c44b7119d30874563c9f8bbac25273ecabb57 (diff)
downloadbird-6996f459c6d8e6205bbacd83e3656b47635f7d6d.tar
bird-6996f459c6d8e6205bbacd83e3656b47635f7d6d.zip
Bird now uses fib structure instead of linklist.
Diffstat (limited to 'proto/rip/rip.h')
-rw-r--r--proto/rip/rip.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/proto/rip/rip.h b/proto/rip/rip.h
index 0e010dd..cfe0d67 100644
--- a/proto/rip/rip.h
+++ b/proto/rip/rip.h
@@ -2,18 +2,21 @@
* Structures for RIP protocol
*/
+#include "nest/route.h"
+
struct rip_connection {
node n;
int num;
struct proto *proto;
ip_addr addr;
- struct rip_entry *sendptr;
sock *send;
struct rip_interface *rif;
+ struct fib_iterator iter;
ip_addr daddr;
int dport;
+ int done;
};
struct rip_packet_heading {
@@ -39,11 +42,9 @@ struct rip_block {
};
struct rip_entry {
- node n;
+ struct fib_node n;
ip_addr whotoldme;
- ip_addr network;
- int pxlen;
ip_addr nexthop;
int metric;
u16 tag;
@@ -72,7 +73,7 @@ struct rip_proto {
struct proto inherited;
timer *timer;
list connections;
- list rtable;
+ struct fib rtable;
list garbage;
list interfaces; /* Interfaces we really know about */
list iface_list; /* Patterns configured */
@@ -91,3 +92,4 @@ struct rip_proto {
#define CHK_MAGIC do { if (P->magic != RIP_MAGIC) bug( "Not enough magic\n" ); } while (0)
void rip_init_instance(struct proto *p);
+struct rip_interface *new_iface(struct proto *p, struct iface *new, unsigned long flags);