Integrated and extensible BGP with generalized AFI handling,support for IPv4+IPv6 AFI and unicast+multicast SAFI.
BGP: Support for large communities
Add support for large communities (draft-ietf-idr-large-community),96bit alternative to RFC 1997 communities.
Thanks to Matt Griswold for the original patch.
Add AS# ranges to bgpmask.
Filter: Implement last_nonaggregated operator on bgp_path
unsigned [int] -> uint
Implements 'allow local as' option.
Similar to allowas-in option on other routers.
Implements C.len operator for clist and eclist types.
Thanks to Sergey Popovich for the original patch.
Extends delete/filter operators to work no bgp_paths.
Implements 'bgppath ~ int set' filter op.
Extends set operations in filters.
Allows add/filter/delete clist on clist (set algebra on clists).
Allows number ~ bgppath match.
BGP Extended communities.
Prints full community lists during 'show route all'.
Fixes headers for uintptr_t (and build on NetBSD).
Fixes bug related to AS2->AS4 conversion.
Adds support for dynamic pair and bgp mask expressions.
Rewrite of buggy AS path matching.
Old AS path maching supposes thath AS number appearsonly once in AS path, but that is not true. It alsocontains some bugs related to AS path sets.
New code does not use any assumptions about semanticstructure of AS path. It is asymptotically slower than...
Better handling of AS4 optional attribute errors
AS4 optional attribute errors were handled by sessiondrop (according to BGP RFC). This patch implementserror handling according to new BGP AS4 draft (*) - ignoring invalid AS4 optional attributes.
Proper format functions for ORIGINATOR_ID, CLUSTER_LIST
Bugfixes in MULIT_EXIT_DISC attribute handling.
- Old MED handling was completely different from behavior specified in RFCs - for example they havn't been propagated to neighboring areas.
- Update tie-breaking according to RFC 4271.
- Change default value for 'default bgp_med' configuration...
Implementation of route reflection for BGP
Implementation of 4B ASN support for BGP
Don't import/export MED and LOCAL_PREF on external links.Added real comparison of BGP routes (inspired by the Cisco one).Default local preference and default MED are now settable.Defined filter keywords for all BGP attributes we know.
Int sets moved to core. It is now possible to have variable of type clist.
as_path_match moved to a-path.c
Path_getlen moved to nest and length was made callable from filters.
Printing of AS paths and community sets.
Created nest/a-path.c and a-set.c which should contain general operationson AS paths and community sets.
Moved as_path_prepend() there.
Pavel, please move the other functions as well.