| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Cast the pointers to uintptr_t; use AC_TYPE_UINTPTR_T to get uintptr_t
defined on older platforms that don't define it themselves.
|
|
|
|
|
|
|
|
| |
Based on a patch from cr4ckn@sourceforge.net, but with a macro
PLURAL_SUFFIX() defined to return either "s" or "" (rather than possibly
printing a NUL character with %c), and with that macro used in a couple
of cases where the equivalent had been done by hand, and with one case
the patch missed fixed as well.
|
|
|
|
|
|
| |
Based on a patch from Scott Mcmillan <scott.a.mcmillan@intel.com>.
While we're at it, make some error messages a bit less geeky.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I give up. I have no access to the 802.11s drafts, I can't find
anything that suggests whether a heuristic check for an 802.11s header
should check for To DS and From DS both being set or either being set or
unset, or whether it should check for a QoS frame type (the examples in
all the documentation I can find have To DS and From DS set, and have a
QoS field, in the 802.11 header, but that might just be an example
802.11 header showing all the fields), so I'm just adding a -h
command-line flag; you need to specify it to get tcpdump to try to guess
whether a frame has a mesh header or not. I'll leave it up to somebody
else to figure out what the best heuristic for detecting the presence of
mesh headers is (note that tcpdump and Wireshark have different
heuristics, both of which can probably get false positives, especially
with encrypted frames where the first payload byte just *happens* not to
have any of the reserved bits in the mesh header flags set).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of having the Ethernet-type handler process the VLAN and Alteon
jumbo frame Ethernet type values, process them in the Ethernet (and
Linux cooked-mode) dissectors. This makes it easier for the right MAC
addresses to be printed for those packets.
As part of that, rename ether_encap_print() to ethertype_print() - it
doesn't print encapsulated Ethernet frames, it prints payloads whose
packet type is indicated by an Ethernet type field value - and remove
the no-longer-needed "extracted Ethernet type" argument. That also lets
us eliminate it from the SNAP print routine.
Make ether_print() take a function, and an argument to pass to that
function, as parameters, so that, for example, the ATM LANE printer can
use it and put the LEC ID into the link-layer headeer printout.
|
|
|
|
|
|
| |
The configure script doesn't define BYTE_ORDER, so they can't validly be
compared against BYTE_ORDER; don't leave them around for people to think
they can.
|
|\
| |
| |
| |
| |
| |
| |
| | |
printer.
Merge commit 'origin/master'
Conflicts:
netdissect.h
|
| |
| |
| |
| |
| | |
declaration out from inside #if 0/#endif, to get it declared in
print-ip6.c.
|
| |
| |
| |
| |
| |
| | |
so ipnet_if_print() can't expect one.
ipnet_print() isn't called from outside print-ipnet.c, so make it static.
|
| |
| |
| |
| |
| |
| | |
use Ethernet types, to call the appropriate printer routine for the
encapsulated type. IPNET is the only protocol using IPNET types, so
ipnet_encap_print() isn't needed.
|
|/
|
|
|
|
| |
use Ethernet types, to call the appropriate printer routine for the
encapsulated type. IPNET is the only protocol using IPNET types, so
ipnet_encap_print() isn't needed.
|
| |
|
| |
|
| |
|
|
|
|
| |
change tcp6 and pim6 to use it.
|
|
|
|
|
|
|
|
|
|
|
| |
tcpdump.
Check whether __attribute__((format)) can be applied to function
pointers and, if not, don't apply it to function pointers; some older
versions of GCC appear to support applying it to functions, but not
pointers to functions.
As we've gotten rid of missing/getaddrinfo.c, don't use it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ndo_error, and ndo_warning function pointers in a netdissect_options
structure.
Fix some errors adding that caught.
Have the RRCP dissector extract fields itself, with the EXTRACT_ macros
and a u_char pointer, rather than printing numbers from a structure
which doesn't put structure members on natural boundaries
(__attribute__((packed)) doesn't help, as not all compilers support it)
- note also that not all processors support dereferencing unaligned
pointers, e.g. SPARC - and assuming some fields are in the "right" byte
order. Also have it check whether data is available in the packet
before referring to it.
|
|
|
|
|
|
|
|
| |
maximum.
Get rid of redundant definition of DEFAULT_SNAPLEN in interface.h.
Update the documentation.
|
| |
|
|
|
|
|
|
|
| |
The shared secret is passed using the already existing -M option which is
used for TCP-MD5 checking.
add initial supoort for RSVP Integrity object verification.
|
|
|
|
|
| |
on all platforms in that case. Also, add a "-I" flag to turn on monitor
mode.
|
|
|
|
| |
OpenRRCP.org.ru for details).
|
|
|
|
|
|
|
| |
when optimization is not on, glibc6 doesn't define ntohs(), and our attempt
to optimize it for x86 doesn't work --- the functions need to be static, not
extern.
added decryption of IKE v2 payloads, when keys are provided by -E.
|
|
|
|
|
|
|
|
|
| |
- seperate fields by comma
- use [] for flags and options sets
- print a trailing length field
make use of tok2str() and bitttok2str()
move port definitions into tcp.h
|
|
|
|
|
|
| |
checking of TCP checksums.
Sort the argument processing code alphabetically.
|
|
|
|
| |
safeputchar
|
|
|
|
| |
auto-rotate files after some times given with the G flag;
|
|
|
|
| |
single tokentable in the LLC printer
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
output. Have "hex_and_ascii_print_with_offset()" and
"hex_and_ascii_print()" to the "-X"-style offset, leaving
"hex_print_with_offset()" and "hex_print()" doing the "-x"-style output.
Don't have any of them check "xflag", "Xflag", or "Aflag" - they print
what they're intended to print, and the caller should check the flags in
question.
Don't have "-A" set "xflag" or "Xflag".
This cleans up some problems with "-A" printing hex informatioin - it's
not supposed to.
|
|
|
|
| |
printer.
|
| |
|
|
|
|
|
|
| |
status value as such.
Constify some tables.
|
|
|
|
|
|
|
|
|
|
| |
an "ndo_default_print_unaligned" member of the "netdissect_options"
structure.
There is, however, a need for an "ndo_default_print" routine, which
takes a "netdissect_options *" as its first argument, to initialize the
"ndo_default_print" member of that structure, as "ND_DEFAULTPRINT()"
uses it.
|
|
|
|
|
|
| |
to be a global supplied by the application using it. In tcpdump, "-d"
is a specialized flag, and doesn't apply to packet dissection, so it
doesn't belong in the netdissect structure - make it a global again.
|
|
|
|
|
| |
automatically included on UN*X by virtue of including "tcpdump-stdinc.h"
- don't include it here.
|
|
|
|
|
|
|
|
|
|
|
|
| |
"hex_print_with_offset()", and "hex_print()" is a string used as a tag;
make it a "const char *", not a "const u_char *".
Copy the declaration of "strsep()" from "interface.h" to "netdissect.h",
and get rid of the include of "interface.h" from "print-esp.c", as it
includes "netdissect.h".
Update the "ND_TTEST2()" macro to do the same overflow checks that
"TTEST2()" now does.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
replace error() and warning() with ndo-ized version.
moved snaplen/snapend to ndo structure.
|
|
|
|
|
|
|
| |
interface.h.
Make "ndo_dltname" a const pointer, as we assign a const pointer value
to it.
|
|
|