This patch implements the IPv6 subset of the Babel routing protocol.
Based on the patch from Toke Hoiland-Jorgensen, with some heavy
modifications and bugfixes.
Thanks to Toke Hoiland-Jorgensen for the original patch.
New data types net_addr and variants (in lib/net.h) describing
network addresses (prefix/pxlen). Modifications of FIB structures
to handle these data types and changing everything to use these
data types instead of prefix/pxlen pairs where possible.
The commit is WiP, some protocols are not yet updated (BGP, Kernel),
and the code contains some temporary scaffolding.
Comments are welcome.
with two exceptions:
o Any non-zero field width is automatically replaced by standard
IP address width. This hides dependences on IPv4/IPv6.
o %#I generates hexadecimal form of the address.
Therefore |%I| generates unpadded format, |%1I| full size flush-right,
and |%-1I| full size flush-left format.