Commit graph

174 commits

Author SHA1 Message Date
Pavel Machek c5a06f65ee Allow other operations than +. 2000-05-15 12:27:45 +00:00
Pavel Machek 6be662d917 Use new eval mechanism for testing filters. 2000-05-15 12:07:09 +00:00
Martin Mares 3b1c523d79 Got rid of startup functions and filters_postconfig().
By the way, how do you expect pointers to fit in an int?
2000-05-15 10:53:56 +00:00
Martin Mares 1c20608e02 Added f_eval_int() and EVAL configuration command. 2000-05-15 10:49:38 +00:00
Martin Mares 9a220cabbc #ifdef out lots of debugging information.
The long resource/routing table dump printed upon startup is gone now
and if you wish to see it, just send bird SIGUSR1 or use the `debug'
commands.
2000-05-04 20:52:28 +00:00
Pavel Machek 2337ade754 Moved documentation to top of file, where it belongs. 2000-04-30 18:47:48 +00:00
Pavel Machek 8c62d6e3b6 Minor documentation update. 2000-04-29 17:48:38 +00:00
Pavel Machek ff95080f92 Cleanup of dead code + example documentation for two functions. 2000-04-28 09:48:28 +00:00
Pavel Machek b0c9c21c29 Small cleanup. 2000-04-26 09:38:07 +00:00
Pavel Machek 2e5a8735f4 filter_same should now work with path masks. 2000-04-26 09:36:47 +00:00
Pavel Machek f71bded6e9 Bugfix in i_same (comparing of paths still does not work). 2000-04-26 09:30:12 +00:00
Pavel Machek 7a86a8b08d Added code for testing filters. 2000-04-26 08:03:50 +00:00
Pavel Machek 0150e5211a Cleaned up mess with types in e,a and e,S. Dynamic attributes should
now work.
2000-04-17 14:12:02 +00:00
Martin Mares 74a7da482b Adding of dynamic attributes is hopefully correct now. 2000-04-17 13:41:50 +00:00
Pavel Machek 708711c373 Community lists can be now accessed as dynamical attributes. Mj:
please create such dynamic atribute for bgp.
2000-04-17 12:38:24 +00:00
Pavel Machek 913ce95b08 EAF_ORIGINATED done right. 2000-04-17 11:52:32 +00:00
Pavel Machek 2bd2de0188 pair ~ community list matching works. 2000-04-17 11:49:21 +00:00
Pavel Machek 991c36b509 Use EAF_ORIGINATED as mj wanted. mj: check this! 2000-04-17 11:37:05 +00:00
Pavel Machek 9c400ec9dd Int sets moved to core. It is now possible to have variable of type clist. 2000-04-17 11:34:38 +00:00
Pavel Machek 159fa4cea9 Finish moving of path matching. Use int_set_print from core for
printing community lists.
2000-04-17 11:20:00 +00:00
Pavel Machek 2a40efa5e6 as_path_match moved to a-path.c 2000-04-17 11:11:33 +00:00
Pavel Machek 684c6f5a0e Path_getlen moved to nest and length was made callable from filters. 2000-04-17 11:06:39 +00:00
Pavel Machek ecd25633bd Use printing routine from nest/ instead of our own. 2000-04-17 10:54:01 +00:00
Pavel Machek 4b641bab52 Path matching now actually works, including / * 1 2 3 * /. 2000-04-17 10:50:03 +00:00
Pavel Machek e399b6f6ad Path and path matching seem to work, now. 2000-04-17 10:42:28 +00:00
Pavel Machek afc54517db Prepend and creation of empty path should work, but it has strange
syntax for now.
2000-04-17 10:16:47 +00:00
Pavel Machek 0a40e97328 as_path_prepend is usable outside bgp. 2000-04-12 14:12:37 +00:00
Martin Mares 2803c9ddbe Minor updates by Pavel. 2000-04-12 13:55:53 +00:00
Pavel Machek 10a5360886 Filters now know type path. It is possible to declare variable of type
path, but it is not possible to write constant of type path.

It should be possible to print paths and match them.
2000-04-12 13:31:39 +00:00
Pavel Machek dcab789047 Renamed f_path to f_path_mask -- which is what it really is. Use
linklist instead of array of signed integers for path mask.
2000-04-12 13:07:53 +00:00
Pavel Machek 77de68825c BGP_PATH masks now actually work as data type. 2000-04-12 12:10:37 +00:00
Pavel Machek 78c6217c1e Path printing is now much nicer: not having to put it backward
simplifies it. (Sorry for previous commit, cvs is naughty).
2000-04-12 10:34:45 +00:00
Pavel Machek 9196e9f8f9 Commit fixes. 2000-04-10 16:36:40 +00:00
Pavel Machek 7f77e25002 Functions for matching paths added, tested lightly.
Functions for working with community lists added, they compile.

This should not be definitive place for this stuff.
2000-04-10 15:07:43 +00:00
Martin Mares 798df5b1ab When processing ACCEPT/REJECT carrying no message, don't print
trailing newline.

I hope the fix is correct, but please check.
2000-04-01 09:15:55 +00:00
Martin Mares 3cf4a2e2b0 Removed lots of superfluous includes.
Use debug() instead of printf().
2000-03-31 23:35:59 +00:00
Martin Mares 3076b5aedc Renamed FF_OUTGOING to FF_FORCE_TMPATTR which much better fits the semantics.
Call rte_cow() instead of rte_do_cow(), so that COW works properly.

Stripped "\n" off several (de)bug messages.
2000-03-30 08:50:30 +00:00
Pavel Machek 0a06a9b8b3 f_run gets one more parameter to distinguish between in and out modes. 2000-03-29 09:02:00 +00:00
Martin Mares 81ce667b7b Don't crash when filter_same() gets called on FILTER_ACCEPT or FILTER_REJECT. 2000-03-12 22:40:07 +00:00
Martin Mares 6b9fa32080 Great cleanup of debug messages. LOCAL_DEBUG turned off in most modules,
several debug() calls converted to DBG().
2000-03-12 21:01:38 +00:00
Pavel Machek 995e5894cd 1 less shift/reduce conflict
print now takes arguments separated by ,

[ 1.2.3.0/24 .. 3.4.5.0/8 ] is now forbidden

[ 1.2.3.0/8 ] now actually works
2000-03-09 14:47:43 +00:00
Martin Mares 9f4929e749 Renamed EAF_INLINE to EAF_TEMP to make the name reflect the real meaning. 2000-03-04 22:30:44 +00:00
Pavel Machek d4d7562806 Avoid being exponential, do not allow ! = 2000-03-02 22:23:18 +00:00
Pavel Machek 31e79264a2 tmp_attrs fixed.
I do not know if it is right since mj ingores talk once started :-(.
2000-03-01 14:31:31 +00:00
Pavel Machek 2d496d2028 Get rid of 'ab'-s, added return to functions. 2000-02-25 11:15:26 +00:00
Pavel Machek 9a4037d408 filter_same() implemented. Don't bet on it, yet. 2000-01-31 17:44:22 +00:00
Martin Mares 30a6108ccc Added filter_same() for comparision of two filters.
Pavel, please implement this as soon as possible.
2000-01-16 17:49:32 +00:00
Martin Mares 2ad6dcdb2c Make ACCEPT/REJECT actually return the result... 1999-12-01 15:07:06 +00:00
Pavel Machek 7e1f99719e accept should behave as return, not running any commands after it. 1999-12-01 12:54:23 +00:00
Pavel Machek 6781e5213b FIXME's cleaned up: I have actually fixed things without killing
comments.

There are no urgent FIXME's in filters. Perhaps we should start with
documentation?
1999-12-01 11:39:58 +00:00
Pavel Machek 4aa885a53c Filters: fix rta access to use ->aux field. 1999-11-25 13:42:49 +00:00
Pavel Machek 8f013d9ca4 Sorry, previous commit did not even compile. 1999-11-24 12:09:58 +00:00
Pavel Machek 48f9e01954 Filters: write access to dynamic attributes should actually work. It
would be nice to find method of testing such beasts.
1999-11-24 12:04:32 +00:00
Pavel Machek f31156ca21 Filters: first parts of extended attributes being read-write. It can
not actually work since I do not do rta/rte cow, yet.
1999-11-18 14:29:10 +00:00
Pavel Machek c7b43f33ae Split inst->code into inst->code and inst->aux. Both are only 16 bit,
so aux is suitable for storing type but not much more.
1999-11-18 14:01:36 +00:00
Pavel Machek 346a12c210 You can now print enum. 1999-11-18 13:21:52 +00:00
Pavel Machek 2f702671b4 No more shift/reduce conflicts. 1999-11-10 13:07:18 +00:00
Pavel Machek f453665704 Enumerational types, defined keyword added. 1999-11-10 12:44:07 +00:00
Pavel Machek 91447965fe Possibility to access first extended attributes. 1999-11-04 13:33:30 +00:00
Pavel Machek 6dc7a0cb39 Filters now do not allow function (int arg; int arg2; ). 1999-11-03 22:23:01 +00:00
Pavel Machek 41be4444f2 switch() { } done right. 1999-10-28 21:03:36 +00:00
Pavel Machek d3dd620b96 Filters: permit variables of prefix types, cleanup around
variables. TODO list added, hopefully complete. Use new features of
filters in bird.conf
1999-10-12 06:27:42 +00:00
Pavel Machek 720d911d77 Added constants of type prefix and pair, added their printing 1999-10-07 14:10:08 +00:00
Pavel Machek c9f8c1a855 FIXME's added. Hopefully fixme list is now complete for filters. 1999-10-07 13:38:26 +00:00
Pavel Machek 7db7b7db60 Case arg { 1: printf "one"; } works. You can not use two commands
after one label, yet.
1999-09-29 14:24:58 +00:00
Pavel Machek 2981814066 Few FIXME's removed from auth, few FIXME's added to filter. 1999-08-20 09:59:39 +00:00
Pavel Machek 6542ece91a Function calling in filters works - somehow. Calling syntax is
currently very ugly, beware. Variables are not really local - that
needs to be fixed.
1999-07-01 09:11:21 +00:00
Pavel Machek 36bbfc704c Updated filters: they now actually see IP/pxlen of net being filtered,
gateway, and who told us, so they can do usefull jobs from now on.
1999-04-19 18:41:56 +00:00
Pavel Machek 43fc099b98 Sets of IP addresses should work, now. (From now on it is also
possible to write if 1.2.3.4 < 1.2.3.5, but I'm not sure if it is good
for anything.)
1999-04-13 11:40:04 +00:00
Pavel Machek 38506f71b0 Sets of integers now actually work. Sets of IP will work as soon as
compare function is ready.
1999-04-12 19:58:18 +00:00
Pavel Machek bad631e048 Oops, typo. 1999-04-12 12:07:15 +00:00
Pavel Machek 8ba2cc064b In case no startup function is defined, don't try to launch it. 1999-04-12 12:01:59 +00:00
Pavel Machek 2db3b2887e Decrease number of warnings. 1999-04-10 09:45:08 +00:00
Pavel Machek 23b1539bf9 Filters upgraded - a bit. Moved code to filter.c because it is where
it belongs. (f-util.c stays there for auxiliary and non-important things.)
1999-04-07 12:11:08 +00:00