]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
accept should behave as return, not running any commands after it.
authorPavel Machek <pavel@ucw.cz>
Wed, 1 Dec 1999 12:54:23 +0000 (12:54 +0000)
committerPavel Machek <pavel@ucw.cz>
Wed, 1 Dec 1999 12:54:23 +0000 (12:54 +0000)
bird.conf
filter/filter.c

index f024c1649663256096c8069e5c9861ef132aec12..3f57a3fc06fb37b8d8ee4a1afaadeed74542d95a 100644 (file)
--- a/bird.conf
+++ b/bird.conf
@@ -11,6 +11,8 @@ define xyzzy = 120+10;
 filter testf 
 int j; 
 { 
+       print "Ok, accepting";
+       accept;
        print "Heya, filtering route to " rta.net.ip " prefixlen " rta.net.len;
        print "This route was from " rta.from;
        j = 7;
@@ -33,7 +35,7 @@ protocol rip MyRIP_test {
        passwords { password "ahoj" from 0 to 10;
                password "nazdar" from 10;
        }
-       authentication md5;
+       authentication none;
 }
 
 protocol device {
index 6ae4eaab8f1ba76da25edbdaadeacdb6cf90f2e7..2ffcbb7fdf760226d1c55f72dd299d36012d9835 100644 (file)
@@ -286,7 +286,7 @@ interpret(struct f_inst *what)
     case F_REJECT:     /* FIXME (noncritical) Should print compele route along with reason to reject route */
       res.type = T_RETURN;
       res.val.i = what->a1.i;
-      break;
+      return res;      /* We have to return now, no more processing. */
     case F_NONL:
     case F_NOP:
       break;
@@ -412,6 +412,7 @@ interpret(struct f_inst *what)
   return res;
 }
 
+/* FIXME: tmp_attrs is unreferenced. That can't be right */
 int
 f_run(struct filter *filter, struct rte **rte, struct ea_list **tmp_attrs, struct linpool *tmp_pool)
 {