xref: /freebsd/contrib/tcpdump/ipproto.h (revision 71fe94fdb1b0e6a965dd44f99acd556463a1d34a)
15b0fe478SBruce M Simpson /*
25b0fe478SBruce M Simpson  * Copyright (c) 1982, 1986, 1990, 1993
35b0fe478SBruce M Simpson  *	The Regents of the University of California.  All rights reserved.
45b0fe478SBruce M Simpson  *
55b0fe478SBruce M Simpson  * Redistribution and use in source and binary forms, with or without
65b0fe478SBruce M Simpson  * modification, are permitted provided that the following conditions
75b0fe478SBruce M Simpson  * are met:
85b0fe478SBruce M Simpson  * 1. Redistributions of source code must retain the above copyright
95b0fe478SBruce M Simpson  *    notice, this list of conditions and the following disclaimer.
105b0fe478SBruce M Simpson  * 2. Redistributions in binary form must reproduce the above copyright
115b0fe478SBruce M Simpson  *    notice, this list of conditions and the following disclaimer in the
125b0fe478SBruce M Simpson  *    documentation and/or other materials provided with the distribution.
135b0fe478SBruce M Simpson  * 3. All advertising materials mentioning features or use of this software
145b0fe478SBruce M Simpson  *    must display the following acknowledgement:
155b0fe478SBruce M Simpson  *	This product includes software developed by the University of
165b0fe478SBruce M Simpson  *	California, Berkeley and its contributors.
175b0fe478SBruce M Simpson  * 4. Neither the name of the University nor the names of its contributors
185b0fe478SBruce M Simpson  *    may be used to endorse or promote products derived from this software
195b0fe478SBruce M Simpson  *    without specific prior written permission.
205b0fe478SBruce M Simpson  *
215b0fe478SBruce M Simpson  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
225b0fe478SBruce M Simpson  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
235b0fe478SBruce M Simpson  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
245b0fe478SBruce M Simpson  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
255b0fe478SBruce M Simpson  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
265b0fe478SBruce M Simpson  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
275b0fe478SBruce M Simpson  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
285b0fe478SBruce M Simpson  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
295b0fe478SBruce M Simpson  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
305b0fe478SBruce M Simpson  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
315b0fe478SBruce M Simpson  * SUCH DAMAGE.
325b0fe478SBruce M Simpson  *
335b0fe478SBruce M Simpson  * From:
345b0fe478SBruce M Simpson  *	@(#)in.h	8.3 (Berkeley) 1/3/94
35*71fe94fdSDimitry Andric  * $FreeBSD: projects/clang400-import/contrib/tcpdump/ipproto.h 276788 2015-01-07 19:55:18Z delphij $
365b0fe478SBruce M Simpson  */
375b0fe478SBruce M Simpson 
3827df3f5dSRui Paulo extern const struct tok ipproto_values[];
391de50e9fSSam Leffler 
405b0fe478SBruce M Simpson #ifndef IPPROTO_IP
415b0fe478SBruce M Simpson #define	IPPROTO_IP		0		/* dummy for IP */
425b0fe478SBruce M Simpson #endif
435b0fe478SBruce M Simpson #ifndef IPPROTO_HOPOPTS
445b0fe478SBruce M Simpson #define IPPROTO_HOPOPTS		0		/* IPv6 hop-by-hop options */
455b0fe478SBruce M Simpson #endif
465b0fe478SBruce M Simpson #ifndef IPPROTO_ICMP
475b0fe478SBruce M Simpson #define	IPPROTO_ICMP		1		/* control message protocol */
485b0fe478SBruce M Simpson #endif
495b0fe478SBruce M Simpson #ifndef IPPROTO_IGMP
505b0fe478SBruce M Simpson #define	IPPROTO_IGMP		2		/* group mgmt protocol */
515b0fe478SBruce M Simpson #endif
525b0fe478SBruce M Simpson #ifndef IPPROTO_IPV4
535b0fe478SBruce M Simpson #define IPPROTO_IPV4		4
545b0fe478SBruce M Simpson #endif
555b0fe478SBruce M Simpson #ifndef IPPROTO_TCP
565b0fe478SBruce M Simpson #define	IPPROTO_TCP		6		/* tcp */
575b0fe478SBruce M Simpson #endif
585b0fe478SBruce M Simpson #ifndef IPPROTO_EGP
595b0fe478SBruce M Simpson #define	IPPROTO_EGP		8		/* exterior gateway protocol */
605b0fe478SBruce M Simpson #endif
611de50e9fSSam Leffler #ifndef IPPROTO_PIGP
621de50e9fSSam Leffler #define IPPROTO_PIGP		9
635b0fe478SBruce M Simpson #endif
645b0fe478SBruce M Simpson #ifndef IPPROTO_UDP
655b0fe478SBruce M Simpson #define	IPPROTO_UDP		17		/* user datagram protocol */
665b0fe478SBruce M Simpson #endif
672ebc47dbSSam Leffler #ifndef IPPROTO_DCCP
682ebc47dbSSam Leffler #define	IPPROTO_DCCP		33		/* datagram congestion control protocol */
692ebc47dbSSam Leffler #endif
705b0fe478SBruce M Simpson #ifndef IPPROTO_IPV6
715b0fe478SBruce M Simpson #define IPPROTO_IPV6		41
725b0fe478SBruce M Simpson #endif
735b0fe478SBruce M Simpson #ifndef IPPROTO_ROUTING
745b0fe478SBruce M Simpson #define IPPROTO_ROUTING		43		/* IPv6 routing header */
755b0fe478SBruce M Simpson #endif
765b0fe478SBruce M Simpson #ifndef IPPROTO_FRAGMENT
775b0fe478SBruce M Simpson #define IPPROTO_FRAGMENT	44		/* IPv6 fragmentation header */
785b0fe478SBruce M Simpson #endif
795b0fe478SBruce M Simpson #ifndef IPPROTO_RSVP
805b0fe478SBruce M Simpson #define IPPROTO_RSVP		46 		/* resource reservation */
815b0fe478SBruce M Simpson #endif
825b0fe478SBruce M Simpson #ifndef IPPROTO_GRE
835b0fe478SBruce M Simpson #define	IPPROTO_GRE		47		/* General Routing Encap. */
845b0fe478SBruce M Simpson #endif
855b0fe478SBruce M Simpson #ifndef IPPROTO_ESP
865b0fe478SBruce M Simpson #define	IPPROTO_ESP		50		/* SIPP Encap Sec. Payload */
875b0fe478SBruce M Simpson #endif
885b0fe478SBruce M Simpson #ifndef IPPROTO_AH
895b0fe478SBruce M Simpson #define	IPPROTO_AH		51		/* SIPP Auth Header */
905b0fe478SBruce M Simpson #endif
915b0fe478SBruce M Simpson #ifndef IPPROTO_MOBILE
925b0fe478SBruce M Simpson #define IPPROTO_MOBILE		55
935b0fe478SBruce M Simpson #endif
945b0fe478SBruce M Simpson #ifndef IPPROTO_ICMPV6
955b0fe478SBruce M Simpson #define IPPROTO_ICMPV6		58		/* ICMPv6 */
965b0fe478SBruce M Simpson #endif
975b0fe478SBruce M Simpson #ifndef IPPROTO_NONE
985b0fe478SBruce M Simpson #define IPPROTO_NONE		59		/* IPv6 no next header */
995b0fe478SBruce M Simpson #endif
1005b0fe478SBruce M Simpson #ifndef IPPROTO_DSTOPTS
1015b0fe478SBruce M Simpson #define IPPROTO_DSTOPTS		60		/* IPv6 destination options */
1025b0fe478SBruce M Simpson #endif
1035b0fe478SBruce M Simpson #ifndef IPPROTO_MOBILITY_OLD
1045b0fe478SBruce M Simpson /*
1055b0fe478SBruce M Simpson  * The current Protocol Numbers list says that the IP protocol number for
1065b0fe478SBruce M Simpson  * mobility headers is 135; it cites draft-ietf-mobileip-ipv6-24, but
1075b0fe478SBruce M Simpson  * that draft doesn't actually give a number.
1085b0fe478SBruce M Simpson  *
1095b0fe478SBruce M Simpson  * It appears that 62 used to be used, even though that's assigned to
1105b0fe478SBruce M Simpson  * a protocol called CFTP; however, the only reference for CFTP is a
1115b0fe478SBruce M Simpson  * Network Message from BBN back in 1982, so, for now, we support 62,
1125b0fe478SBruce M Simpson  * aas well as 135, as a protocol number for mobility headers.
1135b0fe478SBruce M Simpson  */
1145b0fe478SBruce M Simpson #define IPPROTO_MOBILITY_OLD	62
1155b0fe478SBruce M Simpson #endif
1165b0fe478SBruce M Simpson #ifndef IPPROTO_ND
1175b0fe478SBruce M Simpson #define	IPPROTO_ND		77		/* Sun net disk proto (temp.) */
1185b0fe478SBruce M Simpson #endif
1191de50e9fSSam Leffler #ifndef IPPROTO_EIGRP
1201de50e9fSSam Leffler #define	IPPROTO_EIGRP		88		/* Cisco/GXS IGRP */
1215b0fe478SBruce M Simpson #endif
1225b0fe478SBruce M Simpson #ifndef IPPROTO_OSPF
1235b0fe478SBruce M Simpson #define IPPROTO_OSPF		89
1245b0fe478SBruce M Simpson #endif
1255b0fe478SBruce M Simpson #ifndef IPPROTO_PIM
1265b0fe478SBruce M Simpson #define IPPROTO_PIM		103
1275b0fe478SBruce M Simpson #endif
1285b0fe478SBruce M Simpson #ifndef IPPROTO_IPCOMP
1295b0fe478SBruce M Simpson #define IPPROTO_IPCOMP		108
1305b0fe478SBruce M Simpson #endif
1315b0fe478SBruce M Simpson #ifndef IPPROTO_VRRP
1325b0fe478SBruce M Simpson #define IPPROTO_VRRP		112
1335b0fe478SBruce M Simpson #endif
134cac3dcd5SXin LI #ifndef IPPROTO_CARP
135cac3dcd5SXin LI #define IPPROTO_CARP		112
136cac3dcd5SXin LI #endif
137f4d0c64aSSam Leffler #ifndef IPPROTO_PGM
138f4d0c64aSSam Leffler #define IPPROTO_PGM             113
139f4d0c64aSSam Leffler #endif
1405b0fe478SBruce M Simpson #ifndef IPPROTO_SCTP
1415b0fe478SBruce M Simpson #define IPPROTO_SCTP		132
1425b0fe478SBruce M Simpson #endif
1435b0fe478SBruce M Simpson #ifndef IPPROTO_MOBILITY
1445b0fe478SBruce M Simpson #define IPPROTO_MOBILITY	135
1455b0fe478SBruce M Simpson #endif
146