Commit Graph

20 Commits

Author SHA1 Message Date
Denis Ovsienko
fe3253b9b8 remove tcpdump's own CVS keywords
Remove lots of $Header's and a few $Id's that all belong to the former
CVS repository of tcpdump itself. These keywords have been frozen since
the migration to git in late 2008.
2014-01-03 00:59:08 +04:00
Guy Harris
30ee65f07a There's another Cisco-private encapsulation of BPDUs.
At least according to the Wireshark STP dissector, SNAP frames with the
Cisco OUI and a PID of 0x010c contain BPDUs, for "VLAN Bridge".
2013-04-13 18:45:19 -07:00
hannes
74603d42c7 From From Carles Kishimoto <carles.kishimoto@gmail.com>:
add support for per-VLAN spanning tree and
                  per-VLAN rapid spanning tree
2007-04-13 09:43:11 +00:00
hannes
83dc1abf9c From Carles Kishimoto <carles.kishimoto@gmail.com>:
add support for unidirectional link detection as per
http://www.ietf.org/internet-drafts/draft-foschiano-udld-02.txt
2007-03-19 15:14:14 +00:00
guy
f677f39059 From Steinar Haug: print basic info about a few more Cisco LAN
protocols.
2007-02-08 07:06:54 +00:00
hannes
46b52e5133 bugfix: bogus SS codepoints, display ctrl field correct, added 'Poll' token for I/S frames 2005-12-01 17:45:45 +00:00
hannes
f6e484ef40 rework the LLC printer:
-remove tok2str() and bittok2str() lookalikes
  -print length field
  -print more self-describing tokensstring
    e.g. "Receiver not ready" instead of "rnr"
  -add codepoint for SNA
2005-09-29 07:37:08 +00:00
guy
fead98c71d Make "snap_print()" handle fetching and printing the OUI.
Don't copy the LLC header to a "struct llc", just construct the
individual fields.

Fetch the control field early in the dissection process, and check to
make sure we have at least 4 bytes of LLC header if it's not a U frame.
Fetch both bytes of the control field for I and S frames, and display
all 4 hex digits of it.

Only dissect UI frames as BPDUs, and pass the BPDU dissector a pointer
to the beginning of the BPDU, not the beginning of the LLC header - not
all BPDUs are encapsulated in LLC headers.

Only dissect UI frames as IP packets.

Do bounds checking in "snap_print()".
2005-04-26 07:26:33 +00:00
hannes
9c2d2a42b5 move the SNAP OUI values out of the llc printer into
the global oui.c file and make all SNAP printers use it

make the display output of the frame-relay SNAP printer consistent
  to the LLC SNAP printer (= print oui{id,name}, proto-id)
2005-04-06 20:09:07 +00:00
guy
fcc82f451d The "__attribute__((packed))" tag on structures causes some files not to
compile with Sun C, as "interface.h" isn't being included before the
structures are being declared.

Furthermore, in the files that Sun C *can* compile, it doesn't cause Sun
C to generate code that's safe with unaligned accesses, as
"__attribute__" is defined as a do-nothing macro with compilers that
don't support it.

Therefore, we get rid of that tag on the structures to which it was
added, and instead use "EXTRACT_16BIT()" and "EXTRACT_32BIT()" to fetch
16-bit and 32-bit big-endian quantities from packets.  We also fix some
other references to multi-byte quantities to get rid of code that tries
to do unaligned loads on platforms that don't support them.

We also throw in a hack that makes those macros use
"__attribute__((packed))" on structures containing only one 16-bit or
32-bit integer to get the compiler to generate unaligned-safe code
rather than doing it by hand.  (GCC on SPARC produces the same code that
doing it by hand does; I don't know if GCC on any other big-endian
strict-alignment processor generates better code for that case.  On
little-endian processors, as "ntohs()" and "ntohl()" might be functions,
that might actually produce worse code.)

Fix some places to use "%u" rather than "%d" to print unsigned
quantities.
2002-12-11 07:13:49 +00:00
itojun
10afb02ac8 put __attribute__((packed)) to packet headers. s/u_short/u_int16_t/ and so
forth while i'm here
2002-11-09 17:19:16 +00:00
guy
a57421867f Support RFC 2684 bridging of Ethernet, 802.5 Token Ring, and FDDI, and
RFC 2684 encapsulation of BPDUs.
2002-04-07 09:50:30 +00:00
guy
8161113aa2 Add a #define for the OUI for LLC+SNAP-encapsulated Ethernet.
Treat LLC+SNAP packets with an OUI of 0x0000f8 the same way we treat
encapsulated Ethernet packets - that OUI is used by Cisco for some forms
of bridging.
2001-06-04 05:47:13 +00:00
fenner
a624498029 Demux SNAP packets all in one place, unifying CDP, SNAP-encapsulated
ethernet, and Appletalk dispatching.
2001-05-10 02:57:57 +00:00
fenner
fae400d412 Fix apparent typos. 2001-05-09 01:08:47 +00:00
guy
8cba55d692 Document the "netbeui" filter expression keyword.
Add a #define LLCSAP_NETBEUI for the NetBEUI LLC SAP, and use that
rather than "0xf0" in the LLC dissector.
2001-01-28 09:46:42 +00:00
guy
e8b1f5e760 LLC frames with a DSAP and LSAP of 0xe0 are IPX frames, and so are Linux
cooked frames with a type value of LINUX_SLL_P_802_3; dissect them as
such.
2001-01-15 00:33:59 +00:00
guy
d7254f081d Pass only I frames and UI frames to the NetBEUI printer; thanks and a
tip of the Hatlo hat to Pascal Hennequin <pascal.hennequin@int-evry.fr>
for catching this one.

Also, the control field in an S or I frame is little-endian; treat it as
such, fixing various #defines in "llc.h" to match.
2000-12-18 07:55:36 +00:00
itojun
fb75d3cd5a always use u_intXX_t for protocol format declaration. char/short/int may not
come with exact size.  while at it, correct signedness of ip/udp header field.
nuke most of the use of bitfield.
TODO: bitfield in namser.h
2000-10-03 02:54:54 +00:00
mcr
f555c163f9 Initial revision 1999-10-07 23:47:09 +00:00