summaryrefslogtreecommitdiffstats
path: root/proto/rip/rip.c
diff options
context:
space:
mode:
Diffstat (limited to 'proto/rip/rip.c')
-rw-r--r--proto/rip/rip.c43
1 files changed, 24 insertions, 19 deletions
diff --git a/proto/rip/rip.c b/proto/rip/rip.c
index 54627d5..2826de7 100644
--- a/proto/rip/rip.c
+++ b/proto/rip/rip.c
@@ -18,6 +18,30 @@
*/
+/**
+ * DOC: Routing information protocol
+ *
+ * Rip is pretty simple protocol so half of this code is interface
+ * with core. We maintain our own linklist of &rip_entry - it serves
+ * as our small routing table. Within rip_tx(), this list is
+ * walked, and packet is generated using rip_tx_prepare(). This gets
+ * tricky because we may need to send more than one packet to one
+ * destination. Struct &rip_connection is used to hold info such as how
+ * many of &rip_entry ies we already send, and is also used to protect
+ * from two concurrent sends to one destination. Each &rip_interface has
+ * at most one &rip_connection.
+ *
+ * We are not going to honour requests for sending part of
+ * routing table. That would need to turn split horizon off,
+ * etc.
+ *
+ * Triggered updates. RFC says: when triggered update was sent, don't send
+ * new one for something between 1 and 5 seconds (and send one
+ * after that). We do something else: once in 5 second
+ * we look for any changed routes and broadcast them.
+ */
+
+
#define LOCAL_DEBUG
#include "nest/bird.h"
@@ -450,25 +474,6 @@ rip_timer(timer *t)
/**
* rip_start - initialize instance of rip
- *
- * Rip is pretty simple protocol so half of this code is interface
- * with core. We maintain our own linklist of &rip_entry - it serves
- * as our small routing table. Within rip_tx(), this list is
- * walked, and packet is generated using rip_tx_prepare(). This gets
- * tricky because we may need to send more than one packet to one
- * destination. Struct &rip_connection is used to hold info such as how
- * many of &rip_entry ies we already send, and is also used to protect
- * from two concurrent sends to one destination. Each &rip_interface has
- * at most one &rip_connection.
- *
- * We are not going to honour requests for sending part of
- * routing table. That would need to turn split horizon off,
- * etc.
- *
- * Triggered updates. RFC says: when triggered update was sent, don't send
- * new one for something between 1 and 5 seconds (and send one
- * after that). We do something else: once in 5 second
- * we look for any changed routes and broadcast them.
*/
static int
rip_start(struct proto *p)