Babel: More changes and bugfixes
Several changes and bugfixes in Babel, namely:
- Exported route parameters stored directly in route table entry- Exported non-babel routes no longer stored in per-entry route list- Route update, selection and retraction simplified and fixed...
Babel: Fix handling of IPv4 retractions
Babel TLV parsing code rejected IPv4 retractions without next-hop,although next-hop is needed just for regular updates.
Babel: Update to new timers
Nest: Maintain separate IPv4, IPv6 and LLv6 preferred addresses
Also redesign preferred address selection and update protocols to useappropriate preferred address.
Based on a previous work by Jan Maria Matejka.
Babel: Fix pointer arithmetic in subtlv parsing
The subtlv parsing code was doing byte-based arithmetic with non-void pointers,causing it to read beyond the end of the packet.
Signed-off-by: Toke Høiland-Jørgensen <firstname.lastname@example.org>
Babel: Parse sub-TLVs and skip TLVs with mandatory sub-TLV
RFC6126bis formally introduces sub-TLVs to the Babel protocol, includingmandatory sub-TLVs. This adds support for parsing sub-TLVs to the Babelprotocol and skips TLVs that contain mandatory sub-TLVs, as per the spec....
Babel: Implement IPv6 prefix compression on outgoing updates
Previously, the Babel protocol would never use prefix compression on outgoingupdates (but would parse it on incoming ones). This adds compression of IPv6addresses of outgoing updates.
The compression only works to the extent that the FIB is walked in lexicographic...
Babel: Add support for dual-stack IPv4/IPv6 operation
This adds support for dual-stack v4/v6 operation to the Babel protocol.Routing messages will be exchanged over IPv6, but IPv4 routes can becarried in the messages being exchanged. This matches how the reference...
Babel: Update to integrated branch
Build: switch on -Wextra, get rid of most of the warnings
There are several unresolved -Wmissing-field-initializers on olderversions of GCC than 5.1, all of them false positive.
Babel: Send wildcard retractions on shutdown and startup
This makes BIRD send a wildcard retraction on all interfaces beforeshutting down and right after starting up. This helps ensure thatneighbours will discard the announced routes as soon as possible,...
Babel: Rework handling of retractions
An update with wildcard AE and infinite metric should be treated as aglobal retraction of all prefixes announced by that neighbour, persection 4.4.9 of the RFC. In addition, router ID and seqno in retractionupdates should be ignored. This reworks the handling of retractions and...
Add the Babel routing protocol (RFC 6126)
This patch implements the IPv6 subset of the Babel routing protocol.Based on the patch from Toke Hoiland-Jorgensen, with some heavymodifications and bugfixes.
Thanks to Toke Hoiland-Jorgensen for the original patch.