| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
The function body should have its opening brace on the next line.
|
|
|
|
|
|
|
|
|
| |
Check only the amount of length that matters at any given point; yes,
this means we do multiple checks, but so it goes.
We don't need to check for LLC+SNAP - llc_print() does that for us. We
do, however, need to check to make sure we can safely skip the Fore
header.
|
| |
|
|
|
|
|
|
|
|
|
| |
And, as we require at least autoconf 2.61, and as autoconf 2.61 and
later have AC_TYPE_UINTn_T and AC_TYPE_INTn_T macros, we use them to
define the uintN_t and intN_t macros if the system doesn't define them
for us.
This lets us get rid of bitypes.h as well.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Update Apple's IP over IEEE1394, Bluetooth, CALM/FAST, IPv6 fragments
and LAN emulation decoders. Remove some stray passages while at it.
|
|
|
|
|
|
|
|
|
|
| |
Both interface.h and netdissect.h include <pcap.h>, thus most files
should not include it regardless if these need it or not. The only
exceptions so far remain:
* addrtoname.c
* missing/datalinks.c
* missing/dlnames.c
* tcpdump.c
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
| |
For each decoder that has more than one instance of truncation signaling
and prints the same string in each instance make sure that the string is
declared as "static const char tstr[]" right after the initial includes
block. Where necessary, replace fputs(s, stdout) with equivalent
printf("%s", s).
|
|
|
|
|
|
| |
Make sure all of them are declared const and most of them -- static.
Proper declaration of token arrays is a common review point for new code
that is based on existing decoders. Thus fix the issue at its root.
|
|
|
|
|
|
| |
Also, from me: add a comment explaining why the test isn't being done.
Reviewed-by: Guy Harris <guy@alum.mit.edu>
|
|
|
|
| |
"PPC" as a definition on PowerPC machines).
|
|
|
|
| |
checksumming routines later to this file), init shred checksumming tables with init_checksum(), assume network byte order for tag correlation ID in the ATM OAM cell printer
|
| |
|
|
|
|
| |
ID for loopback OAM cells rather than attempting to print it
|
| |
|
| |
|
|
|
|
| |
OAM F type printing, unhide OAM elements like (vci,vpi) under eflag
|
|
|
|
| |
making the variable 32 bits or longer might be a good idea.
|
|
|
|
|
|
|
|
| |
link-layer print routines if no other print routine claimed the packet.
Test whether that flag is set rather than testing whether neither of -x
or -q were specified, and have -x, -q, *and* -X set that flag, so that
-X suppresses it just as -x does. That way you don't get those pckets
dumped twice if -X was specified.
|
|
|
|
| |
OAM printer to support both HEC and non-HEC OAM cells
|
| |
|
| |
|
|
|
|
| |
OAM cells
|
|
|
|
| |
pcap_pkthdr is "len", not "length".
|
|
|
|
|
|
|
|
|
|
| |
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".
|
|
|
|
|
|
| |
tcpdump.c. Have if_print routines return the length of the link-layer
header, so that the common code knows how to skip the link-layer header
when printing the packet in hex/ASCII.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
beginning of the raw packet data, the captured length of the raw packet
data, and the length of the link-layer header, and:
if "-e" was specified, prints all the raw packet data;
if "-e" was not specified, prints all the raw packet data past
the link-layer header, if there is any.
Use that routine in all the "xxx_if_print()" routines if "-x" was
specified.
Make "arcnet_encap_print()" static - it's not used outside
"print-arcnet.c".
Add missing info printing code to "atm_if_print()".
Print the packet data in "lane_if_print()", not in "lane_print()", as
"lane_print()" can be called from other "xxx_if_print()" routines, and
those routines will also print the packet data if "-x" was specified -
no need to print it twice.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
dissector really needs source and destination MAC addresses, we should
make global pointers to them - which would be null for packets lacking
MAC addresses, so dissectors that need them will need to do something
sensible if those pointers are null.)
Don't fake up an Ethernet header if there aren't any MAC addresses to
use when faking it up.
"bp_chaddr" in "print-bootp.c" is an array, so "bp->bp_chaddr" cannot be
null, and there's no need to test for it not being null.
|
|
|
|
|
| |
case of the Ethernet type not being known, and not pass in a non-null
"extracted_ethertype" pointer (otherwise "llc_print()" dumps core).
|
|
|
|
| |
problems with that particular heuristic.
|
|
|
|
|
|
|
|
|
|
|
| |
type not being known, *and* have to pass in a non-null
"extracted_ethertype" pointer (otherwise "llc_print()" dumps core), and
we should pass in non-null pointers for the source and destination
addresses. However, we can get rid of the "ether_type" variable.
Fix up the test for non-LLC packets to test for the first 3 bytes *not*
matching the header of an LLC/SNAP packet, not for them matching. Add
in a check for RFC 2684 routed NLPID-formatted PDUs.
|
|
|
|
| |
llc_print
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
unused-parameter problems reported by GCC. Add an _U_ tag to label
parameters as unused if the function is called through a pointer (so
that you can't change its signature by removing parameters) or if there
are unused parameters only because the function isn't complete.
Add some additional bounds checks the necessity for which was revealed
while cleaning up unused-parameter problems.
Make some routines static.
"lcp_print()", defined in "print-lcp.c", isn't called anywhere -
"print-ppp.c" has the code to dissect LCP. Get rid of "print-lcp.c".
|
| |
|
|
|
|
| |
University.
|
|
|
|
|
| |
MAC header, treat 0xfe 0xfe 0x0e as the beginning of an LLC header
rather than the beginning of an 802.6 MAC header.
|
|
|
|
| |
ATM frames.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Split the Cisco HDLC printer into "chdlc_if_print()", which does the
stuff expected of a low-level print routine (printing the time stamp,
printing the final newline, doing the infodelay stuff) and
"chdlc_print()", which doesn't do that stuff. This lets us clean up
"ppp_hdlc_if_print()" a bit - it can just print the time stamp at the
beginning, and do the infodelay stuff at the end, without having to
treat Cisco HDLC specially by skipping the time stamp printing. (This
also ensures that the time stamp is always printed, which wasn't the
case before.)
Print the missing final newline in "pppoe_if_print()".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
them in "print-sll.c" - as a cooked-mode capture may be reading from
non-Ethernet, non-802.x devices, it may well see some
ETH_P_/LINUX_SLL_P_ types that don't mean "this is an 802.2 LLC frame".
We currently assume that the ETH_P_ values won't change in the kernel,
so we don't have to explicitly map them.
In various link-layer packet printers, if we don't handle the next layer
up of packet type, and are printing the link-layer header, use the
correct pointer to that header (i.e., if we've stepped "p" past the
link-layer header, don't use "p", use a pointer to the beginning of the
packet), and use the correct length (i.e., if we've subtracted the
length of the link-layer header, add it back in, so that we always print
the full packet length).
|
|
|
|
|
|
| |
"struct mbuf" and "struct rtentry" - they shouldn't be necessary (and
weren't on the platforms on which I tested, both with GCC and the native
compiler if it isn't GCC).
|
|
|
|
| |
"n_long", and "n_time", defined in that file, with other types.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
have dissectors include them rather than <netinet/ip.h> or
<netinet/ip_var.h>, if they actually need that stuff.
Put the declarations of the ICMP stuff directly into "print-icmp.c".
Remove all unnecessary includes of <netinet/ip*.h> files.
Copy the byte-order stuff from "nameser.h" into "tcp.h".
|