Update Action codes for handle_action function according to 11s amendment.
Dropping root priviledges using Linux Capabilities
Merge pull request #12 from msekletar/master

Dropping root privileges
spelling fixes
Merge pull request #14 from ajithadapa/master

Support for SPB related SUB-TLVs
Merge pull request #15 from ajithadapa/master

Added spb.out and spb.pcap
add decoding of Babel authentication TLVs

This change extends existing Babel protocol decoder to recognise
experimental authentication TLVs (types 11 and 12) and includes
a respective test case for the new code.
Merge pull request #16 from infrastation/master

add decoding of Babel authentication TLVs
Fix printing of 64-bit quantities.

Do *NOT* assume that "%l[doxu]x" - or "%ll[doxu]" - is the way to print
a 64-bit quantity; on UN*X, it might be a "long" or a "long long",
depending on whether you're on a 32-bit or 64-bit platform and, on
Windows with MSVC++, it's not a long (even in 64-bit mode) and doesn't
use "%ll[doxu]", either.  Instead, use PRI[doxu]64; that's what C99
defines, and what we define ourselves if the C environment doesn't
define it.
Fix some errors.

isis_print_mcid() returns no value and nobody expects it to; declare it
void, not int.

Fix a typo in a case statement ("defualt" rather than "default").

Fix indentation.
Fix an error and a warning.

Use a separate variable to index through the hash digest, not the
variable used to index through the packet.

Make some variables holding one-byte quantities u_int rather than u_char
while we're at it - not much use in *requiring* them to fit into 8 bits
(the code might be better if we don't, and that eliminates a warning).
"lmp.new" isn't a checked-in file; don't make it part of the distribution.
0x%02d is silly - 0x means "hex", so it should be 0x%02x.

Found by Xavier Heiny.
Add some attribute/TLV length checks.

Make sure we don't run past the end of a BGP attribute or LDP TLV when
dissecting the attribute/TLV.

Make some of the code do a bit more of a "step the pointer through the
data"-style dissection; that was done while debugging the changes in
question.  It also fixes up some code to not check for more data than
should actually be there.

Update references to RFC 4906 from the draft, and note that RFC 4447
replaces it.
Check the return value of some print routines.

Some routines return -1 on error; bail and return -1 if they do.
Get rid of unused (but set) variable.
Fix "no IPv6" code path.
No declarations in the middle of a block - not all C compilers support that.
fix RIP Request/full table decoding issues

RIP Request and Response messages have the same structure. Update a
switch block in rip_print() to proceed with decoding of both.

A Request message may contain an AFI 0 RTE standing for a full table
request, normally sent on a router start. Update rip_entry_print_v1()
and rip_entry_print_v2() to treat IPv4 and AFI 0 as two valid,
distinguishable cases.
decode RIPv2 authentication up to RFC4822

This change addresses a few issues in rip_entry_print_v2() and
rip_print():

1. In the case of Simple Password (RFC2453) authentication the last
(16th) character of a password was never printed. Other password
characters were printed regardless of existing isprint() test.

2. In the case of Cryptographic (RFC4822) authentication there were no
details available for fixed-size auth header and variable-size auth
trailer.

3. Depending on particular hash function used, a normal authentication
trailer "RTE" may be 20 or more bytes long. Iteration over packet RTEs
should stop once a trailer is decoded. Exact number of RTEs in a message
cannot be told from message size any more.

Test cases are added for Request and Response messages with Simple
Password, Keyed-MD5, HMAC-SHA-1, HMAC-SHA-256, HMAC-SHA-384 and
HMAC-SHA-512 authentication modes. Earlier test case is updated to match
new "number of routes" output format.