Ondrej Zajicek
1a114a63a8
Merge commit '36da2857bc911924a250a234f38cf58c3b21f1bc' into integrated
2013-05-22 15:45:23 +02:00
Ondrej Zajicek
36da2857bc
Implements router advertisements activated by received routes.
...
The RAdv protocol could be configured to change its behavior based on
availability of routes, e.g., do not announce router lifetime when a
default route is not available.
2013-02-08 23:58:27 +01:00
Ondrej Zajicek
0596b3dbf9
Merge commit '13d4dd138d5dc6c884ded280f9244fac707c4f32' into integrated
2013-01-13 00:44:39 +01:00
Ondrej Zajicek
b31774eeb0
Removes some nonsense.
2012-11-27 01:30:09 +01:00
Ondrej Zajicek
3e40f3e795
Fixes setting of route attributes of type router id.
2012-11-27 01:25:47 +01:00
Ondrej Zajicek
ed6c144066
Temporary integrated commit.
...
This one mostly merges patches from Alexander Chernikov.
2012-06-23 10:13:32 +02:00
Ondrej Zajicek
182a78957d
Allows some modifications of dest attribute in filters.
2012-04-29 01:35:52 +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
0888a737b0
Extends set operations in filters.
...
Allows add/filter/delete clist on clist (set algebra on clists).
Allows number ~ bgppath match.
2012-03-15 21:07:58 +01:00
Ondrej Zajicek
a03ede6493
Fixes a tricky bug in route filtering.
...
Route attributes was used after rta was freed during copy-on-write in
filter code. This causes some random crashes, esp. with multipath
routes.
2012-01-03 00:42:25 +01:00
Ondrej Filip
4271f2b77e
Fixed problem during 'configure' with EC
2011-09-18 13:52:50 +02:00
Ondrej Zajicek
42a0c05408
BGP Extended communities.
2011-08-14 13:55:02 +02:00
Ondrej Zajicek
fdf16eb658
Prints full community lists during 'show route all'.
2011-07-03 19:43:30 +02:00
Ondrej Zajicek
e08d2ff08e
Adds filter clist operation.
2011-06-26 17:09:24 +02:00
Ondrej Zajicek
0aa88530ad
Convert && and || to shortcut boolean operators.
2011-03-23 13:40:46 +01:00
Ondrej Zajicek
938b191b92
Fixes error handling in ASN expressions.
2010-10-09 01:00:53 +02:00
Ondrej Zajicek
0d1b3c4c0e
Changes print-like filter commands to use a log instead of a stderr.
...
And extends the log subsystem to better handle that.
2010-09-20 13:01:01 +02:00
Ondrej Zajicek
2dec1e3471
Fixes a bug in pair sets.
2010-09-15 02:01:23 +02:00
Ondrej Zajicek
a58022a64e
Fixes a bug in community set delete.
2010-09-11 20:14:53 +02:00
Ondrej Zajicek
7f0d245a5e
Minor changes in prefix trie.
2010-07-27 17:17:11 +02:00
Ondrej Zajicek
ba5c0057ed
Extends pair set syntax, matching and deleting against clist.
...
Expressions like (123,*) can be used in pair set literals, clists can be
matched against pair sets (community ~ pairset) and pair sets can be
used to specify items to delete from clists (community.delete(pairset)).
2010-05-22 22:47:24 +02:00
Ondrej Zajicek
0277cc0baf
Revert "Fixes behavior of defined() on bgp_community attribute."
...
This reverts commit 74e9331fe0
.
2010-04-08 17:47:14 +02:00
Ondrej Zajicek
126683feed
Filter language updates; new route attributes and datatype.
...
- Adds bgp_originator_id and bgp_cluster_list route attributes.
- Adds dotted quad filter datatype (for router IDs, used by
bgp_originator_id and ospf_router_id route attributes).
- Fixes pair ~ pair set matching.
- Documentation updates.
2010-03-29 19:29:03 +02:00
Ondrej Zajicek
aa46124804
Clear local variables in filters and functions.
...
Fixes crash when used uninitialized variables.
This problem was surprisingly tricky to fix.
2010-03-19 09:41:18 +01:00
Ondrej Zajicek
74e9331fe0
Fixes behavior of defined() on bgp_community attribute.
2010-03-18 00:10:35 +01:00
Ondrej Zajicek
e8da1bd0b5
Fixes missing cases in filters.
2010-03-15 00:34:44 +01:00
Ondrej Zajicek
dfd48621d1
Replaces the algorithm for building balanced trees.
...
Changes the time complexity of the algorithm from O(n^2) to O(n*log(n)).
This speeds up loading of huge DEC-IX config from 128 s to 15 s. It also
makes the code significantly simpler.
2010-02-17 22:11:42 +01:00
Ondrej Zajicek
2eece54a04
Fixes bug related to reconfiguration with bgp_path first/last operators.
2009-11-15 14:24:20 +01:00
Ondrej Zajicek
52b9b2a178
Rename as_path_get_last/as_path_get_first to be consistent.
2009-10-12 20:44:58 +02:00
Ondrej Zajicek
7ea5b00f42
First and last accessors to as_paths.
2009-10-08 15:23:24 +01:00
Ondrej Zajicek
54fe0d9230
Fixes setting of IP addresses to route attributes (NEXT_HOP).
2009-09-18 13:59:04 +02:00
Ondrej Zajicek
db96fccb31
Fixes bug in filter rta copy-on-write.
...
Filters should try to copy-on-write just cached rtas.
2009-09-18 01:11:09 +02:00
Ondrej Zajicek
f4c6ca8c9c
Fixes preference bounds.
2009-09-17 13:35:37 +02:00
Ondrej Zajicek
5004d02cb9
Merge branch 'master' into dev
2009-06-26 01:06:12 +02:00
Ondrej Zajicek
92a72a4cbd
Adds support for dynamic pair and bgp mask expressions.
2009-06-01 19:32:41 +02:00
Ondrej Zajicek
23e563d86b
Fixes buggy prefix ~ prefix matching.
2009-05-30 00:35:35 +02:00
Ondrej Filip
9be1086d29
New type variable 'V' defined in filters. This type is checked
...
only for name, never for value in function filter_same()
2009-05-29 23:08:28 +02:00
Ondrej Filip
43de796b8a
Function pm_path_compare() checked just length of the bgpmasks
2009-05-29 23:04:54 +02:00
Ondrej Filip
d59405ec66
Typo in warning fixed.
2009-05-29 23:02:36 +02:00
Ondrej Filip
a6c9f0648d
Missing boolean comparison added.
2009-05-28 13:37:04 +02:00
Ondrej Zajicek
c8a6b9a3d1
Rewrite of buggy AS path matching.
...
Old AS path maching supposes thath AS number appears
only once in AS path, but that is not true. It also
contains some bugs related to AS path sets.
New code does not use any assumptions about semantic
structure of AS path. It is asymptotically slower than
the old code, but on real paths it is not significant.
It also allows '?' for matching one arbitrary AS number.
2009-04-17 01:48:36 +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 Zajicek
cb53039271
Rate limit for most abundant log messages
2009-02-26 14:23:54 +01:00
Ondrej Zajicek
82ba9032be
Fixes crash during some expressions
...
Bird crashed when 'bgp_path.len' was used for routes that does
not came from BGP.
2009-02-21 22:46:50 +01:00
Ondrej Zajicek
cd17c651a6
Add format for BGP_AGGREGATOR attribute
2009-02-21 17:47:56 +01:00
Ondrej Zajicek
330aecead8
Bugfix in interpret
...
Missing cases in filter code interpret leads to crash
when bgp_next_hop attr was queried.
2008-12-25 17:49:57 +01:00
Ondrej Zajicek
083c43e22e
fixes some 64-bit related bugs.
...
Filter code used 'aux' integer field of 'symbol' struct to store ptr
to next symbol and both 'aux2' and 'def' fields for value.
Changed to just 'def' for value and 'aux2' for ptr to next symbol.
Also another minor bugfix.
2008-12-25 11:55:27 +01:00
Ondrej Zajicek
44711e0ca2
Fix some bugs in filter interpret.
2008-11-16 22:16:04 +01:00
Ondrej Zajicek
e29fa06ece
New read-only route attribute 'proto' added. It returns a string
...
representing a name of the protocol that originated the route.
Strings can be compared using = or matched using ~. Routes can
be filtered, for example:
show route where proto ~ "bgp1*"
2008-11-14 14:50:37 +01:00