Maria Jan Matejka
5a14df3950
Filter: Instruction codes named as enum
...
The two-letter instructions were quite messy but they could be easily
read from memory dumps. Now GDB (since 2012) supports pretty printing
enum values and GCC checks the switch construction for missing enum
values so we are converting the nice two-byte values to enums.
Anyway, the enum still keeps the old two-byte values to be able to read
the instruction codes even without GDB from plain memory dump.
2018-03-13 16:29:33 +01:00
Ondrej Zajicek (work)
2d6d4b8053
Babel: Fix build with restricted protocol set
...
All keywords used in Babel config have to be declared locally.
Thanks to Leo Vandewoestijne for the bugreport.
2018-03-07 17:35:24 +01:00
Ondrej Zajicek (work)
c8cafc8ebb
Minor code cleanups
2016-11-08 17:46:29 +01:00
Pavel Tvrdik
768d5e1058
Add !~ operator to filter grammar
2016-09-21 13:35:52 +02:00
Ondrej Zajicek
a1beb8f3ee
Relax BGP neighbor parameter
...
Permit specifying neighbor address, AS number and port independently.
Add 'interface' parameter for specifying interface for link-local
sessions independently.
Thanks to Alexander V. Chernikov for the original patch.
2015-02-22 13:50:58 +01:00
Ondrej Zajicek
88a183c6c9
Integrated IP functions.
2014-10-24 11:11:43 +02:00
Ondrej Zajicek
dcde7ae597
Allows to configure different remote port for BGP sessions.
...
Thanks to João Taveira Araújo for the original patch.
2014-10-02 12:52:50 +02:00
Ondrej Zajicek
9eceab33f9
String constants could be used for string option values.
...
Thanks to Frederik Kriewitz for the patch.
2014-05-29 23:05:03 +02:00
Ondrej Zajicek
0e175f9f0f
Fixes some BFD bugs and makes logging thread-safe.
2013-10-05 20:12:28 +02:00
Ondrej Zajicek
6a8d3f1c1f
BFD work in progress.
...
Now it compiles and mostly works.
2013-09-16 23:57:40 +02:00
Ondrej Zajicek
1103b32e83
Allows to define constants of all filter types.
2013-07-25 22:33:57 +02:00
Ondrej Zajicek
af582c4811
Route Origin Authorization basics.
...
- ROA tables, which are used as a basic part for RPKI.
- Commands for examining and modifying ROA tables.
- Filter operators based on ROA tables consistent with RFC 6483.
2012-03-18 17:32:30 +01:00
Ondrej Zajicek
0f808c066f
Adds filtering to 'show symbols' command.
...
Thanks Alexander V. Chernikov for the original patch.
2012-03-16 12:47:12 +01:00
Ondrej Zajicek
20ab192bec
Adds filtering to 'show ospf lsadb' command.
...
Thanks Alexander V. Chernikov for the original patch.
2012-03-16 12:12:26 +01:00
Ondrej Zajicek
69a8259c5e
Allows sticky link-local neighbors.
...
Allows using NEF_STICKY neighbors with link-local addresses. This is
used for static route nexthops, they can be specified like fe80::1%eth0
.
2012-01-01 12:14:42 +01:00
Ondrej Zajicek
b8cc390e7e
Fixes several problems in filter syntax.
...
- Fixes several conflicts in the grammar.
- Fixes a bug in (a..b, c) pair patterns.
- Makes pair patterns orthogonal.
- Allows term expressions in pair patterns without additional ( ).
- Allows several comma separated values in switch cases.
2011-05-06 22:00:54 +02:00
Ondrej Zajicek
26d92bb892
A hack to distinguish if..else from else: in case.
...
The old BIRD grammar needs two lookaheads to distinguish if..else from
else: in case, which caused the parser to fail on some combinations of
both expressions.
This patch replaces two tokens 'else' ':' by one token 'else:' to fix
that.
2011-03-23 12:49:53 +01:00
Ondrej Zajicek
93e868c730
Implements Router Advertisement protocol.
2011-03-13 11:33:50 +01:00
Ondrej Zajicek
112d71a73f
Fixes syntactic priority of '.' .
...
Dot in expressions like net.len definitely should have the highhest
priority.
2010-10-08 14:25:53 +02:00
Ondrej Zajicek
e304fd4bcf
Implements pattern match for 'show protocols' command.
...
And generally consolidates protocol commands.
2010-02-20 00:08:07 +01:00
Ondrej Zajicek
c37e78510f
Makes date/time formats configurable.
2010-02-03 00:19:24 +01:00
Ondrej Filip
1960d20350
Priority for '||' and '&&' fixed.
2010-01-27 23:45:36 +01:00
Ondrej Filip
7515dafc00
Allow multiple || and && statements.
2010-01-27 22:26:45 +01:00
Ondrej Zajicek
874b868544
Implements primary address selection base on 'primary' option.
2009-05-29 22:49:30 +02:00
Ondrej Zajicek
b1a597e0c3
Reimplementation of prefix sets.
...
Prefix sets were broken beyond any repair and have to be reimplemented.
They are reimplemented using a trie with bitmasks in nodes.
There is also change in the interpretation of minus prefix pattern,
but the old interpretation was already inconsistent with
the documentation and broken.
There is also some bugfixes in filter code related to set variables.
2009-03-31 12:55:57 +02:00
Ondrej Zajicek
cf18603491
New syntax for bgp_path
2009-03-14 12:43:10 +01:00
Ondrej Filip
0d3effcf8c
Time added in password management.
2005-02-12 22:27:55 +00:00
Martin Mares
58f9453776
Moved parser docs to cf-lex.l, so that the parser compiles.
2000-06-04 15:22:20 +00:00
Martin Mares
06607335ef
Documentation.
2000-06-03 18:23:00 +00:00
Pavel Machek
5f4aee76a2
Added && and ||.
2000-06-01 08:43:29 +00:00
Pavel Machek
60de3356ab
Resolved shift/reduce conflict
2000-05-16 14:24:33 +00:00
Martin Mares
cc590a11a7
Changed syntax of expressions. Each `expr' can be now either a numeric literal
...
or a symbol or parenthesised filter expression.
2000-05-15 12:15:18 +00:00
Martin Mares
e3f2d5fce3
Cleanup of configuration.
...
o Use `expr' instead of `NUM' and `ipa' instead of `IPA',
so that defined symbols work everywhere.
o `define' now accepts both numbers and IP addresses.
o Renamed `ipa' in filters to `fipa'.
Pavel, please update filters to accept define'd symbols as well.
2000-05-15 11:48:23 +00:00
Martin Mares
d3abfbc68d
Added prefix_or_ipa.
2000-05-13 11:41:26 +00:00
Martin Mares
758458be05
Unified parsing of prefixes.
...
Had to rename `prefix' in filters to `fprefix'.
2000-05-13 11:17:49 +00:00
Martin Mares
6db8c5a63b
pxlen works even in IPv6 mode.
2000-05-04 20:02:19 +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
c3edb89ec1
Path masks are needed for filters.
2000-04-12 12:49:53 +00:00
Martin Mares
221135d6bf
Include "lib/string.h" instead of <string.h>. It should give us bzero()
...
and other non-portable functions on all systems.
2000-03-31 23:30:21 +00:00
Martin Mares
16c07e3d51
Removed bogus comment.
2000-03-04 21:27:57 +00:00
Martin Mares
a58dad6238
Please *think* when defining operator priorities.
...
(-: num_of_parser_conflicts -= 42 :-)
2000-03-04 21:19:10 +00:00
Martin Mares
aee539f241
Made `datetime' more user friendly. Now it should be a quoted string
...
of type "dd-mm-yyyy".
2000-03-01 11:42:13 +00:00
Martin Mares
2ca3d9a8fc
Defined INVALID_TOKEN which is a token guaranteed to be never generated.
2000-03-01 11:30:16 +00:00
Martin Mares
4ab5331c63
Added type `g' for void (general) pointer.
1999-12-06 13:50:50 +00:00
Martin Mares
f2c6c80a24
I tried to turn on the YYERROR_VERBOSE switch, but bison is buggy as hell,
...
so it doesn't even compile. Turned it again off and added a comment on it.
1999-12-02 14:03:25 +00:00
Martin Mares
730f2e2c8c
Added dumping of routing tables (`show route'). This includes filtering.
1999-12-01 15:10:21 +00:00
Martin Mares
3579376927
cli_msg() moved to cli.h, so that it can be used outside the parser.
1999-11-25 15:34:51 +00:00
Martin Mares
ffb59d243a
Command line interface now works.
1999-11-17 12:00:21 +00:00
Martin Mares
944f008af7
Defined CF_ENUM.
1999-11-15 11:35:41 +00:00
Pavel Machek
f453665704
Enumerational types, defined keyword added.
1999-11-10 12:44:07 +00:00