Presumably the idea is that the technique is generally applicable as
long as the traffic being carried is either IPv4, IPv6, OSI CLNP, ES-IS,
or IS-IS.
Also, by the time we get there, we know we've reached the bottom of the
MPLS stack (the do loop either fails by running past the end of the
packet and going to trunc, or by terminating because we find a label
entry with the BOS bit set); there's no need to check for that.
appropriately, and that GNUmakefile and the MSVC++ project file define
it apppriately, as we do with libpcap, rather than defining it in
"interface.h".
Undo the rcsid-shuffling and addition of extra #includes, as we no
longer need to arrange that "interface.h" be included before using _U_
in an RCS ID or copyright.
use "_U_" in the definitions of "rcsid[]", to eliminate
complaints about those variables being unused;
move the definitions after the include of "interface.h", or add
an include of "interface.h", so that "_U_" is defined.
Include "config.h" before including "tcpdump-stdinc.h" in
"missing/datalinks.c".
encoding, however draft-hsmit-isis-aal5mux-00.txt describes
a technique that looks at the first payload byte if the BOS (bottom of stack)
bit is set and tries to determine the network layer protocol
0x45-0x4f is IPv4
0x60-0x6f is IPv6
0x83 is IS-IS
this technique is sometimes known as NULL encapsulation
and decoding is particularly useful for control-plane traffic [BGP]
which cisco by default sends MPLS encapsulated