Netlink and BSD: Integrating IPv4 and IPv6
Squashing and minor changes by Ondrej Santiago Zajicek
Add SHA-384/512 and HMAC-SHA-384/512 crypto hash
Add SHA-224/256 and HMAC-SHA-224/256 crypto hash
Add SHA1 and SHA1-HMAC crypto hash
Integrated IP functions.
Implements token bucket filter for rate limiting.
Added ip_scope_text() for translating of scopes to strings.
Basic support for IPv6. The system-dependent part doesn't work yet,but the core routines are there and seem to be working.
o lib/ipv6.[ch] written o Lexical analyser recognizes IPv6 addresses and when in IPv6 mode, treats pure IPv4 addresses as router IDs....
Added packet checksumming code. Watch the comments for an explanation.
Added simple event scheduling system to avoid recursive callingof various callbacks.
Events are just another resource type objects (thus automatically freedand unlinked when the protocol using them shuts down). Each event canbe linked in at most one event list. For most purposes, just use the...
Replaced the old ugly ipv6 compilation hack by a conditional in Modules.
Implemented deletion/insertion/asynchronous-walk lists.For example of their use, look at comments in lib/slists.h.
Added function for shell-like pattern matching. Will be used formatching interface names in protocol-to-iface bindings.
Added local version of sprintf (bsprintf and bvsprintf) offering few newformat strings:
%I IP address %#I IP address in hexadecimal %1I IP address padded to full length %m strerror(errno)
The library is now glued together from generic and OS-dependent partsby the `mergedirs' script. Few more IP address manipulation functionsand some fixes.