summaryrefslogtreecommitdiff
path: root/proto/static
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>2000-06-04 16:15:37 +0000
committerMartin Mares <mj@ucw.cz>2000-06-04 16:15:37 +0000
commit3b31c538333156770ddb74a7a27f271784745144 (patch)
tree2bb7a5614cd4ea2810cf5ab94b5ae95f267e582f /proto/static
parent2a863dd6e18a43fe3de5b1f3651e816f6fc27bb1 (diff)
Documented all the trivial protocols.
Diffstat (limited to 'proto/static')
-rw-r--r--proto/static/Doc1
-rw-r--r--proto/static/static.c18
2 files changed, 19 insertions, 0 deletions
diff --git a/proto/static/Doc b/proto/static/Doc
index e69de29b..73632b1f 100644
--- a/proto/static/Doc
+++ b/proto/static/Doc
@@ -0,0 +1 @@
+S static.c
diff --git a/proto/static/static.c b/proto/static/static.c
index c380aeb2..de061e81 100644
--- a/proto/static/static.c
+++ b/proto/static/static.c
@@ -6,6 +6,24 @@
* Can be freely distributed and used under the terms of the GNU GPL.
*/
+/**
+ * DOC: Static
+ *
+ * The Static protocol is implemented in a very straightforward way. It keeps
+ * a two lists of static routes: one containing interface routes and one
+ * holding the remaining ones. Interface routes are inserted and removed according
+ * to interface events received from the core via the if_notify() hook, routes
+ * pointing to a neighboring router use a sticky node in the neighbor cache
+ * to be notified about gaining or losing the neighbor and finally special
+ * routes like black holes or rejects are inserted all the time.
+ *
+ * The only other thing worth mentioning is that when asked for reconfiguration,
+ * Static not only compares the two configurations, but it also calculates
+ * difference between the lists of static routes mentioned in the old config
+ * and the lists in the new one and it just inserts the newly added routes
+ * and removes the obsolete ones.
+ */
+
#undef LOCAL_DEBUG
#include "nest/bird.h"