summaryrefslogtreecommitdiff
path: root/interface.h
Commit message (Collapse)AuthorAgeFilesLines
...
* NDOize 7 bigger decodersDenis Ovsienko2014-03-191-8/+0
| | | | | This change converts IGMP, IPv6 mobility options, LDP, Lightweight Access Point, PGM, PPTP and RIP decoders.
* NDOize Frame Relay, LMP and RADIUS decodersDenis Ovsienko2014-03-181-7/+0
|
* NDOize OpenFlow, IEEE slow and telnet decodersDenis Ovsienko2014-03-171-3/+0
|
* NDOize EIGRP, ICMP, L2TP, STP and UDP decodersDenis Ovsienko2014-03-151-5/+0
|
* NDOize LLC decoderDenis Ovsienko2014-03-151-3/+0
|
* NDOize DCCP, Linux socket and RPKI-Router decodersDenis Ovsienko2014-03-141-3/+0
|
* NDOize FDDI, MPCP, Token Ring, VQP and Zephyr decodersDenis Ovsienko2014-03-141-7/+0
|
* justify min()/max() macros declarations and usageDenis Ovsienko2014-03-141-11/+0
| | | | | | | | | | | This change moves the macros to tcpdump-stdinc.h to make sure these are available without interface.h. It also dismisses two redundant macros MIN() and SMBMIN(). It is intended to fix the following Solaris compile error: Undefined first referenced symbol in file MIN print-zeromq.o
* NDOize 8 more small decodersDenis Ovsienko2014-03-131-12/+0
| | | | | This change converts ZeroMQ, IPX, MPLS, IPv6 options, PPPoE, RIPng, PFLOG and Sun RPC decoders.
* NDOize print-ascii.c furtherDenis Ovsienko2014-03-131-3/+0
| | | | | Introduce netdissect_options into hex_and_ascii_print_with_offset(), hex_and_ascii_print() and related functions.
* NDOize more small decodersDenis Ovsienko2014-03-121-8/+0
| | | | | This change converts decoders for: DLT_RAW, IPv6 routing header, USB, Symantec firewall and cHDLC.
* VJC: NDOizeDenis Ovsienko2014-03-121-1/+0
|
* NDOize ARCNET, BFD and GRE decodersDenis Ovsienko2014-03-111-4/+0
|
* NDOize AHCP, OTV and VXLAN decodersDenis Ovsienko2014-03-081-3/+0
|
* NDOize 5 more decodersDenis Ovsienko2014-03-071-5/+0
| | | | | Update Apple's IP over IEEE1394, Bluetooth, CALM/FAST, IPv6 fragments and LAN emulation decoders. Remove some stray passages while at it.
* NDOize IP mobile, MSDP and NULL decodersDenis Ovsienko2014-03-061-3/+0
|
* Add support for VRRPv3 (IPv4 only).Angus Cameron2014-03-061-1/+1
|
* ZMTP: fix an MSVC compiler warningGisle Vanem2014-03-051-1/+1
| | | | | | | The prototype and implementation of 'zmtp1_print_datagram()' is slightly different; the prototype has a 'const u_int len' as the last parameter. Whereas the implementation has no 'const'. Hence I get a warning from MSVC.
* NDOize HSRP, IGRP and UDLD decodersDenis Ovsienko2014-03-041-3/+0
|
* NDOize CIP, IPComp and IPFC decodersDenis Ovsienko2014-02-281-3/+0
| | | | Also remove some unneeded includes while at it.
* NDOize AH, BEEP and DTP decodersDenis Ovsienko2014-02-271-3/+0
| | | | Also remove some unnecessary passages.
* dismiss decode_prefix.hDenis Ovsienko2014-02-261-0/+4
| | | | | The only purpose of that header file was to provide two declarations that now fit interface.h same well.
* CARP: NDOizeDenis Ovsienko2014-02-251-1/+0
|
* No need to declare unaligned_mem{cpy,cmp} in netdissect.h *and* interface.h.Guy Harris2014-01-171-3/+0
|
* memcmp() doesn't modify either of its arguments.Guy Harris2014-01-151-1/+1
|
* Revert print-tcp memcpy() changes, and use unaligned_memcpy() instead.Guy Harris2014-01-151-0/+1
| | | | | | | That should prevent optimizing the memcpy into code that assumes alignment. Add unaligned_memcmp(), and use it, as well.
* Move safememcpy() to util.c so it doesn't get inlined.Guy Harris2014-01-151-0/+2
| | | | | | | | | | | It appears that some C compilers will inline safememcpy() *and* will, as a result, optimize to assume alignment it if it's passed a putatively-aligned pointer. As the pointers in question are not guaranteed to be aligned, that can cause crashes on, for example, SPARC. Also, rename the function to unaligned_memcpy(), to clarify what's "safe" about it, and change some direct memcpy() calls to use it as well.
* justify more function declarationsDenis Ovsienko2014-01-141-2/+2
|
* remove tcpdump's own CVS keywordsDenis Ovsienko2014-01-031-2/+0
| | | | | | 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.
* ndo-ize print-ascii: hex_print_with_offset()Michael Richardson2014-01-011-3/+0
|
* whitespace changesMichael Richardson2014-01-011-24/+24
|
* ahcp_print() isn't INET6-only, so declare it even if INET6 isn't defined.Guy Harris2013-12-151-1/+1
|
* AHCP: add version 1 decoderDenis Ovsienko2013-11-131-0/+1
| | | | | | | Add new decoder for UDP port 5359 and a sample packet capture produced on a couple of Linux hosts (a server and a client). Besides that, an existing Babel capture contained AHCP packets and the current AHCP tests cover 0, 1 and 2 "-v" flags.
* print-nfs: add versions of nfsreq_print and nfsreply_print that do not print ↵Longinus002013-11-071-0/+2
| | | | dst/src addresses
* LMP: add -T override and fix version 1 test(s)Denis Ovsienko2013-09-071-0/+1
| | | | | | | | | | | The Link Management Protocol version 1 sample capture added to the tests directory in commit 212eef2 was produced using non-standard UDP port 49998. Later assignment of port 701 reflected in commit 960aee5 made it impossible to decode the capture. This change adds a -T override for LMP, uses it to replace the broken test with two working tests and dismisses the custom test script, lmp.sh.
* Fix build issues with the OpenFlow printer on some systems.Guy Harris2013-06-231-2/+0
| | | | | | | | | | | | | | | | | | | | | | | Don't assume we have <stdint.h>. Instead, use the AC_TYPE_ macros to ensure we have the C99 intN_t and uintN_t types; we already include <inttypes.h> in tcpdump-stdinc.h iff we have it. Get rid of the structure declarations in openflow-1.0.h, as they have zero-length arrays (not supported by all the compilers people might be using) and as 1) they're only used in sizeof() and 2) after each one there's an assertion to check that sizeof() returns a specific numerical value so, instead, just #define various _LEN items to those numerical values and use them. Add an openflow.h header with a #define for the length of the basic header, and move the declaration of of10_header_body_print() there.
* Merge git://github.com/the-tcpdump-group/tcpdumpGuy Harris2013-06-221-0/+3
|\ | | | | | | Pull changes from the GitHub repository.
| * add OpenFlow 1.0 decoder (no SSL)Denis Ovsienko2013-05-291-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new file openflow-1.0.h is a verbatim copy of the file openflow.h from the openflow-1.0.0.tar.gz distribution. The new file print-openflow-1.0.c contains a set of functions for OpenFlow 1.0 (wire protocol 0x01) decoding. Of these functions only of10_header_body_print() is exported and used by the minimal OpenFlow decoder. It is intended that future (1.1, 1.2, 1.3.0) OpenFlow version decoders are implemented the same way (in modules of their own), since different versions of OpenFlow specification reuse the same symbols for different numeric values. This way, print-openflow-1.1.c would include openflow-1.1.h and so on. The new test case "of10_p3295-vv" was produced using a Pica8 P-3295 switch and Trema controller running a purpose-built sample application.
| * add minimal OpenFlow decoding frameworkDenis Ovsienko2013-05-291-0/+1
| | | | | | | | | | | | | | This change registers OpenFlow TCP port number and adds processing of respective packets with openflow_print(), a new function that understands the minimal OpenFlow header format and can iterate over messages within a snapshot that starts with the header.
* | Avoid some warnings from Sun C.Guy Harris2013-06-221-6/+20
|/ | | | | | | | | | Some versions of Sun C support __attribute__ but don't support the "unused" or "format" attributes - they don't fail, but they whine a lot. They also support the "noreturn" attribute, but don't allow it to be applied to function pointers, only to functions. Check whether they can be used without warnings, and use them only if they can.
* Fix MPTCP supportGregory Detal2013-04-191-1/+1
| | | | | | | | | Added: * option length check * option type and TCP flags check * more information printed Signed-off-by: Gregory Detal <gregory.detal@uclouvain.be>
* Multipath TCP (RFC 6824) supportGregory Detal2013-04-141-0/+1
| | | | | | | | | This commit adds the support of Multipath TCP (MPTCP). MPTCP is a new extension to TCP standardized at the IETF. MPTCP allows to use several IP addresses at the same time by distributing data across several subflows (TCP connections) while still presenting the standard TCP socket API to the application. Its benefits are better resource utilization, better throughput and smoother reaction to failures.
* improve ZeroMQ support (ZMTP/1.0 inside PGM/EPGM)Denis Ovsienko2013-04-141-0/+2
| | | | | | | | | | | This change adds new code to decode ZeroMQ datagrams, couples it with the PGM decoder and extends the -T option to make all this work. There are two new test cases based on existing captures of ZMTP/1.0 inside [E]PGM to decode the ZMTP/1.0 part of these. This functionality enables decoding of the traffic zeromq library produces for "pgm://" and "epgm://" protocol schemas.
* use existing PGM decoder for UDP-encapsulated PGMDenis Ovsienko2013-04-141-0/+1
| | | | | | | | | The original PGM uses its own IP protocol number. "EPGM" or "PGM/UDP" stands for UDP-encapsulated PGM, which has no assigned UDP port number and can be decoded only by means of -T option, which now accepts "pgm" protocol type for this purpose. There is also a sample capture of EPGM now (similar to the one of native PGM, but produced using the "epgm://" protocol schema) and a respective test case.
* Declare vxlan_print() and otv_print() in interface.h, and fix its definition.Guy Harris2013-03-261-0/+2
| | | | | They doesn't use their third argument, and they aren't being passed a third argument, so get rid of that argument.
* - Add support for OTV (draft-hasmit-otv-04).Francesco Fondelli2013-02-261-0/+1
| | | | - Use the packettype infrastructure (-T vxlan) for VXLAN parsing (waiting for a well known dest port)
* ZeroMQ initial support (ZMTP/1.0 framing)Denis Ovsienko2013-02-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | This change adds support for ZMTP/1.0 (ZeroMQ Message Transport Protocol 1.0) framing in TCP packets, as defined in http://rfc.zeromq.org/spec:13 and implemented in zeromq library. Since there is no assigned port number for ZeroMQ, the user is left responsible for making only the related TCP packets captured and enforcing ZMTP/1.0 decoding through the "-T zmtp1" option. Each ZMTP/1.0 frame of a packet will produce a single additional line of output. The "-v" flag will add up to 8 lines (128 bytes) worth of hex+ASCII dump of the frame body, and "-vv" and higher will dump the full frame body, however long. Beware that this code handles neither IP fragmentation nor TCP segmentation and will incorrectly decode segments not starting at a frame boundary. The included sample capture stands for a short ZeroMQ session between a REQ/REP socket pair doing 3 anonymous 2-way exchanges. It was produced using version 2.1.9 of zeromq library patched to fix its bug #293, so that all MBZ bits of the flags field are set to 0.
* fix some PT_* macros indentation with tabsDenis Ovsienko2013-02-111-2/+2
|
* Add "radius" as an option for -T.Guy Harris2012-06-301-0/+1
| | | | | | | | This allows tcpdump to handle RADIUS running on non-standard ports. Submitted-By: ssb@sourceforge.net Man page also updated by me.
* add DNSSL (RFC6106) supportDenis Ovsienko2012-04-131-0/+1
| | | | | | | The most notable difference between RFC5006 and RFC6106 is the addition of DNSSL RA option. This commit adds DNSSL handling code to make tcpdump fully RFC6106-aware. This code has been tested against RA packets generated by Quagga and radvd.