Commit Graph

2531 Commits

Author SHA1 Message Date
Kovarththanan Rajaratnam
08696c5fab ipproto.h/c: mark several structs as const 2010-02-20 08:45:56 +01:00
Kovarththanan Rajaratnam
16c6af16de gmpls.h/c: mark several structs as const 2010-02-20 08:44:31 +01:00
Kovarththanan Rajaratnam
e6c39e6db4 Precompute CRC-10 table.
We now precompute the CRC-10 table allowing us to mark it as const. The table was precomputed using a Python snippet (included as comment)
2010-02-20 08:40:44 +01:00
Kovarththanan Rajaratnam
2086d80fa0 af.h/c: make several structs const 2010-02-20 07:45:39 +01:00
Kovarththanan Rajaratnam
6457f82aaa addrtoname.c: make several structs static 2010-02-20 07:45:21 +01:00
Kovarththanan Rajaratnam
ec7a5640cf addrtoname.c: constify several structs 2010-02-20 07:32:39 +01:00
Guy Harris
599c6c53d1 Recognize -PRE-GIT as well as alpha/beta; clean up regexps a bit. 2010-02-08 16:28:42 -08:00
Guy Harris
7db583986e Get rid of extra blank line. 2010-02-08 02:42:48 -08:00
Guy Harris
b213bf62d9 We're using Git, not CVS, now. 2010-02-08 02:35:30 -08:00
Guy Harris
d50d7fd82e Recognize -b as a flag. 2010-02-08 02:33:12 -08:00
Guy Harris
06d0d52170 Mention the b flag in the usage message. 2010-02-08 02:24:10 -08:00
Guy Harris
ce2facf6bb Document the -b flag. 2010-02-08 02:22:10 -08:00
Guy Harris
72de6e8bc3 Use rlen rather than tll as the name of "remaining length" variables. 2010-02-07 18:02:41 -08:00
Guy Harris
606a29c55c Check the containing item length in some loops.
In some loops, don't loop just until we get an error, stop when we run
out of data to parse.

Also, add some comments to indicate what we know about lengths at
various points, before we do something with the length that happens to
assume what we know.  Add some checks that this auditing found
necessary.
2010-02-07 17:47:31 -08:00
Guy Harris
7906cae611 Use #defines rather than sizeof.
Use ForCES_HDRL, TLV_HDRL, and ILV_HDRL instead of various sizeof's, to
make it clearer what certain tests ensure are true (as, in other cases,
the #defines are subtracted from values that should be, at that point,
ensured not to be less than the #define in question).
2010-02-07 16:05:46 -08:00
David Horn
2a7e2246c7 RFC 5006 support.
Reviewed-By: Guy Harris <guy@alum.mit.edu>
2010-02-07 14:52:07 -08:00
Guy Harris
aeae58e079 Print bit numbers in decimal, not hex - it's not the presence bit field,
its the index of a bit from that field.
2010-02-06 19:21:30 -08:00
Guy Harris
20194339f9 Constify a bunch of stuff. 2010-01-26 20:14:23 -08:00
Guy Harris
44c1734ba8 Put PRIu64 on the same line as the rest of the format string. 2010-01-26 18:50:53 -08:00
Guy Harris
c404e37740 Get rid of some no-longer-necessary casts. 2010-01-26 18:45:58 -08:00
Guy Harris
6ee5663a02 Add TCHECKs, make length variables 32 bits.
Add TCHECK/TCHECK2 calls to make sure we are within the packet boundary
before fetching data.  Make some length variables that could in theory
have values that don't fit in 16 bits 32 bits long.

Get rid of blanks before newlines.
2010-01-26 18:43:22 -08:00
Guy Harris
12604e27a3 Use EXTRACT_16BITS and EXTRACT_32BITS to extract values from a packet.
There's no guarantee that those values are aligned on the appropriate
boundary, nor is there a guarantee that accessing misaligned values will
behave as desired.
2010-01-26 18:37:41 -08:00
Guy Harris
19b5602a0c Use EXTRACT_16BITS to extract big-endian 16-bit quantities from the packet.
There's no guarantee that those quantities will be properly aligned, nor
is there any guarantee that fetching an improperly-aligned quantity will
work as desired.
2010-01-26 18:35:53 -08:00
Guy Harris
67c76d583f Use EXTRACT_16BITS() and EXTRACT_32BITS() to fetch integral values.
Use EXTRACT_16BITS() and EXTRACT_32BITS() to fetch 16-bit and 32-bit
big-endian quantities from the packet, as there's no guarantee that a
given 16-bit quantity will be aligned on a 2-byte boundary or that a
given 32-bit quantity will be aligned on a 4-byte boundary, nor is there
a guarantee that unaligned accesses will succeed (they might trap, or
they might not fetch an unaligned quantity).
2010-01-26 17:56:36 -08:00
Randy Sofia
0e5561f7c7 Add some information about the symbolic references to TCP flags.
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2010-01-26 15:46:37 -08:00
Lucas C. Villa Real
c0a91acf9b Enhance NFS access request messages.
When debugging NFS operations one may find it easier to get the actual access
flags decoded rather than having to look up the NFS access flags to find which
permissions were requested by the client.

Reviewed-by: Guy Harris <guy@alum.mit.edu>
2010-01-26 12:09:24 -08:00
Guy Harris
071cdba2b3 Handle the 48-byte and 64-byte Linux USB headers differently; for now,
the difference isn't major, but it might be more important later.
2010-01-25 15:25:33 -08:00
Guy Harris
d033ee2f3e Squelch some int-vs-long errors. 2010-01-10 18:36:45 -08:00
Guy Harris
095439d48a Remove more non-C89 features.
No array initialization with [index] =, no // comments; some compilers
that might be used to compile tcpdump don't support them.
2010-01-10 18:23:11 -08:00
Guy Harris
6003dc5285 Get rid of BIG_ENDIAN and LITTLE_ENDIAN definitions.
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.
2010-01-10 18:00:08 -08:00
Guy Harris
64d92662c3 Don't use bitfields in on-the-wire structures.
C doesn't guarantee that bit fields will be in any particular order.
2010-01-10 17:56:49 -08:00
Guy Harris
66a566eded Put forces.h into the release tarball. 2010-01-10 14:44:35 -08:00
Guy Harris
832716b73d Fix a bunch of warnings in the ForCES printer.
Get rid of C++/C99-style comments while we're at it; some C compilers
reject them.
2010-01-10 14:16:41 -08:00
Guy Harris
e00f13631d raw_if_print() isn't yet a new-style print routine. 2010-01-10 13:34:22 -08:00
Michael Richardson
83344948fe added -vv/-vvv and -vvvv test output 2010-01-10 14:59:18 -05:00
Michael Richardson
d0e01819c0 IETF FORCES protocol printer, from Jamal Hadi Salim <hadi at cyberus.ca. 2010-01-10 14:49:46 -05:00
Michael Richardson
b45fabd132 This commit makes ipnet_if_print the first NDO aware top-level
printer.
Merge commit 'origin/master'

Conflicts:
	netdissect.h
2010-01-10 14:36:07 -05:00
Guy Harris
878889bc21 ether_encap_print() is a utility for use by printers for protocols that
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.
2010-01-10 14:32:12 -05:00
Michael Richardson
94feff51db Look for core dumps, and fail test if some are found 2010-01-10 14:28:59 -05:00
Michael Richardson
83f828aa57 test cases for Solaris print-ipnet. Confirms ndo printer code works 2010-01-10 14:28:33 -05:00
Michael Richardson
accfcf9a24 make new list of printers that take ndo argument, and use it as appropriate 2010-01-10 14:27:33 -05:00
Guy Harris
b4883f0947 Update config.guess and config.sub to the latest versions. 2010-01-08 10:37:35 -08:00
Guy Harris
5d2acbcf57 Don't warn about the non-use of some arguments to rsvp_obj_print() if we
don't have libcrypto, as we can't use them if we don't.
2010-01-05 20:24:44 -08:00
Guy Harris
a10a7c2868 Include ipnet.h in the distribution. 2010-01-05 20:17:26 -08:00
Guy Harris
e9eff7f57e Add support for DLT_IPV4 and DLT_IPV6.
While we're at it, clean up some whitespace.
2010-01-04 12:11:04 -08:00
Guy Harris
16e7d6ed56 When removing conftest*, use "-r", to clean up OS X .dSYM turds. 2010-01-02 15:59:43 -08:00
Guy Harris
ebc9a33b11 Fix some problems that show up in autoconf 2.64 and later. 2010-01-02 15:29:06 -08:00
Ken Bantoft
635b50e7ae Update CHANGES for 4.0.2 release 2009-12-21 20:38:10 -05:00
Guy Harris
576af3ab43 When printing a list of link-layer types for -L, give the name of the
device for which they're being reported, so if no -i flag was given
people don't think it's something such as the union of of all link-layer
types supported by all devices, and, if we can determine whether the
device supports monitor mode (with libpcap 1.0.0 and later), indicate
whether the link-layer types are the ones supported when not in monitor
mode (if -I wasn't specified) or when in monitor mode (if -I was
specified), so people don't wonder why some types aren't available (as
some are available only in monitor mode, and others are available only
when not in monitor mode, on some platforms).
2009-12-01 00:39:54 -08:00
Guy Harris
b050a1e4e0 Squelch a couple of compiler warnings. 2009-11-27 12:03:25 -08:00