Commit Graph

17 Commits

Author SHA1 Message Date
Guy Harris
a91d20cc84 Convert the IPv6 printer to use netdissect. 2010-11-07 12:50:16 -08:00
Guy Harris
1b2e1a81e2 The draft in question has nothing to do with MPLS; clarify that.
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.
2010-03-19 11:47:19 -07:00
Guy Harris
272333b0ed Print the MPLS-encapsulated packet regardless of whether -v was
specified.

Even with multiple layers in the stack, print on one line unless -v was
specified.
2010-03-19 11:26:56 -07:00
hannes
60e8705242 -code cosmetics: improve readability by replacing "v" by "label_entry"
-do multiline formatting for label-stacks deeper than 1
-hide the IPv4/IPv6 printer under the vflag for explicit NULL labels
2005-07-05 09:38:19 +00:00
mcr
4189fb7df6 refactored ip_print() so that chained header parser (ESP/AH) can
more easily call the inner parts.
2005-04-06 21:32:38 +00:00
hannes
4011b8d35d make MPLS label handling macros available to the outside world 2004-06-14 14:47:58 +00:00
hannes
21480b97d8 add baseline LSP-PING support per draft-ietf-mpls-lsp-ping-05 2004-06-06 19:20:03 +00:00
guy
bbc1cfa669 Have the configure script arrange that the Makefile define _U_
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.
2003-11-16 09:36:07 +00:00
guy
3824a6c041 From Neil Spring:
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".
2003-11-15 00:39:12 +00:00
hannes
8f94d68a09 don't pass on src & dst MAC adresses to the isoclns decoder as MAC adresses
should be really printed in ether_print() using the eflag
2003-05-22 16:52:36 +00:00
hannes
3058667b3a basic preparations for mpls lsp ping decoding 2003-05-08 15:05:41 +00:00
hannes
163f717ba6 keep the one-line rule for vflag<1, display exp value always, indicate payload type (IP,IPv6,OSI) in vflag<1 mode 2003-02-04 06:26:59 +00:00
hannes
918ecf2fe9 Generally there's no indication of protocol in MPLS label
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
2002-08-08 19:52:48 +00:00
risso
3d932490b8 Added support for Win32, based on WinPcap. 2002-08-01 08:52:55 +00:00
fenner
a642694fd0 Print the whole MPLS label stack.
Submitted by:	Kaarthik Sivakumar <kaarthik@torrentnet.com>
2002-05-07 18:35:39 +00:00
guy
442abdb79c Include <netinet/in.h> to declare or define "ntohl()". 2001-06-26 06:24:57 +00:00
itojun
544c52e1ef MPLS label encapsulation decoding, per RFC3032.
TODO: multiple labels.  other media types.
2001-06-21 17:56:02 +00:00