summaryrefslogtreecommitdiff
path: root/ipproto.h
Commit message (Collapse)AuthorAgeFilesLines
* Make nd_uint8_t and nd_int8_t arrays, to catch direct references.Guy Harris2017-12-101-1/+1
| | | | | | | | | | This catches direct references, so we can change them to use EXTRACT_U_1 or EXTRACT_S_1. Also, change some structures to use the nd_ types that weren't already using them. Then make the appropriate EXTRACT_{U,S}_1() changes.
* Use a table instead of getprotobynumber().Denis Ovsienko2017-08-271-1/+2
| | | | | | | | | | | | | | | | | | | On Linux getprotobynumber() returns different results for the same argument depending on the contents of /etc/protocols at runtime (expectedly but gets in the way of reproducible test cases). On FreeBSD it returns results that are irrelevant of the contents of /etc/protocols at runtime (unexpectedly). Other implementations exist and may expose interesting properties too. And if the host uses LDAP instead of /etc/protocols for name services, a call to that function may cause LDAP handle the request. All of the above is not right for the specific task of network protocols decoding, which needs to be fast and deterministic. As the protocol number space is just 8-bit, add a 256-element array of strings/NULLs for the translation and a wrapper function around it for index range enforcement. Change the code to use the new function instead of getprotobynumber(). Fix a typo while at it.
* Dismiss unused IPPROTO_CARP.Denis Ovsienko2017-08-271-4/+1
| | | | | | In ipproto_values[] IPPROTO_CARP never matched because of IPPROTO_VRRP, which matched earlier. Remove the array element and the macro and leave some comments instead.
* 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.
* Add a CARP dissector and a command-line option to dissect proto 112 as CARP.George Neville-Neil2011-11-231-0/+3
| | | | | | | CARP and VRRP both use IP protocol number 112, so there needs to be a -T flag to specify that protocol 112 be dissected as CARP rather than VRRP. Also update the man page.
* ipproto.h/c: mark several structs as constKovarththanan Rajaratnam2010-02-201-1/+1
|
* From Ian McDonald and Arnaldo Carvalho de Melo: DCCP support.guy2005-09-201-1/+4
|
* from Andy Heffernan <ahh@juniper.net>:hannes2005-05-201-1/+4
| | | | add PGM upport as per rfc3208
* Some BSDs define IPPROTO_IGRP as 88 and don't define IPPROTO_EIGRP, soguy2004-04-281-3/+3
| | | | | | | | | | | | | | | | | | | | | | we also define it as 88, so we can't have case IPPROTO_IGRP: case IPPROTO_EIGRP: in a switch statement. The current IANA protocol number assignments page lists 9 as "any private interior gateway (used by Cisco for their IGRP)" and 88 as "EIGRP" from Cisco, so we define IPPROTO_PIGP as 9 (which matches what those BSDs do) and IPPROTO_EIGRP as 88 (so we don't bother with IPPROTO_IGRP at all), and do case IPPROTO_PIGP: case IPPROTO_EIGRP: It's not clear that we should handle both with the same print routine, however - Cisco IGRP and Cisco EIGRP don't appear to have the same packet format.
* add infrastructure for host-OS indep. ipproto name resolutionhannes2004-04-261-3/+5
|
* 135 appears to be the current IP protocol number for mobility headers;guy2003-11-241-3/+16
| | | | | | support it, as well as 62 (which presumably was one that was used before, even though it was already assigned to some protocol named CFTP).
* Add a new "ipproto.h" header file, with definitions of IP protocol typeguy2003-06-071-0/+123
values. Use that rather than private definitions in various files. Add "gmpls.h" to the list of files in FILES, and add it and "ipfc.h" to the list of files in INSTALL.