]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Sorry, previous commit did not even compile.
authorPavel Machek <pavel@ucw.cz>
Wed, 24 Nov 1999 12:09:58 +0000 (12:09 +0000)
committerPavel Machek <pavel@ucw.cz>
Wed, 24 Nov 1999 12:09:58 +0000 (12:09 +0000)
filter/config.Y
filter/filter.c

index aaea74f7a44f46640f00e3bb33f6553ceea17887..726e13af915196227d64aacec9ecd56b25e88d24 100644 (file)
@@ -184,7 +184,7 @@ pair:
  * Complex types, their bison value is struct f_val
  */
 prefix_s:
-   IPA '/' NUM { $$.type = T_PREFIX; $$.val.px.ip = $1; $$.val.px.len = $3; printf( "ook, we have prefix here\n" ); }
+   IPA '/' NUM { $$.type = T_PREFIX; $$.val.px.ip = $1; $$.val.px.len = $3; cf_error( "%I/%d is not really prefix\n", $$.val.px.ip, $$.val.px.len ); }
  ;
 
 prefix:
index 19e5e45de1e136b3a914ca885904e6b8ad44875b..335874156e430e010acb3624954b10c5774dde85 100644 (file)
@@ -90,7 +90,7 @@ val_simple_in_range(struct f_val v1, struct f_val v2)
     mask = ipa_mkmask( v2.val.px.len & LEN_MASK );
     if (ipa_compare(ipa_and(v2.val.px.ip, mask), ipa_and(v1.val.px.ip, mask)))
       return 0;
-    /* FIXME: read rpsl or better ask mj: is it really like this? */
+
     if ((v2.val.px.len & LEN_MINUS) && (v1.val.px.len <= (v2.val.px.len & LEN_MASK)))
       return 0;
     if ((v2.val.px.len & LEN_PLUS) && (v1.val.px.len < (v2.val.px.len & LEN_MASK)))
@@ -216,7 +216,6 @@ interpret(struct f_inst *what)
   case '<': COMPARE(i==-1);
   case '<=': COMPARE(i!=1);
 
-    /* FIXME: Should be able to work with prefixes of limited sizes */
   case '~':
     TWOARGS;
     res.type = T_BOOL;
@@ -357,8 +356,8 @@ interpret(struct f_inst *what)
        break;
       }
       *f_rte = rte_do_cow(*f_rte);
-      l->next = *f_rte->attrs->eattrs;
-      *f_rte->attrs->eattrs = l;
+      l->next = (*f_rte)->attrs->eattrs;
+      (*f_rte)->attrs->eattrs = l;
     }
     break;