Obscure more email addresses.
[obnox/wireshark/wip.git] / ipproto.h
1 /* ipproto.h
2  * Declarations of IP protocol numbers, and of routines for converting
3  * IP protocol numbers into strings.
4  *
5  * $Id: ipproto.h,v 1.8 2003/03/07 16:52:41 gerald Exp $
6  *
7  * Ethereal - Network traffic analyzer
8  * By Gerald Combs <gerald@ethereal.com>
9  * Copyright 1998 Gerald Combs
10  *
11  * This program is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU General Public License
13  * as published by the Free Software Foundation; either version 2
14  * of the License, or (at your option) any later version.
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19  * GNU General Public License for more details.
20  *
21  * You should have received a copy of the GNU General Public License
22  * along with this program; if not, write to the Free Software
23  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
24  */
25
26 #ifndef __IPPROTO_H__
27 #define __IPPROTO_H__
28
29 /*
30  * IP protocol numbers.
31  */
32 #define IP_PROTO_IP             0               /* dummy for IP */
33 #define IP_PROTO_HOPOPTS        0               /* IP6 hop-by-hop options */
34 #define IP_PROTO_ICMP           1               /* control message protocol */
35 #define IP_PROTO_IGMP           2               /* group mgmt protocol */
36 #define IP_PROTO_GGP            3               /* gateway^2 (deprecated) */
37 #define IP_PROTO_IPIP           4               /* IP inside IP */
38 #define IP_PROTO_IPV4           4               /* IP header */
39 #define IP_PROTO_TCP            6               /* tcp */
40 #define IP_PROTO_EGP            8               /* exterior gateway protocol */
41 #define IP_PROTO_IGRP           9
42 #define IP_PROTO_PUP            12              /* pup */
43 #define IP_PROTO_UDP            17              /* user datagram protocol */
44 #define IP_PROTO_IDP            22              /* xns idp */
45 #define IP_PROTO_TP             29              /* tp-4 w/ class negotiation */
46 #define IP_PROTO_IPV6           41              /* IP6 header */
47 #define IP_PROTO_ROUTING        43              /* IP6 routing header */
48 #define IP_PROTO_FRAGMENT       44              /* IP6 fragmentation header */
49 #define IP_PROTO_RSVP           46              /* Resource ReSerVation protocol */
50 #define IP_PROTO_GRE            47              /* GRE */
51 #define IP_PROTO_ESP            50              /* ESP */
52 #define IP_PROTO_AH             51              /* AH */
53 #define IP_PROTO_ICMPV6         58              /* ICMP6 */
54 #define IP_PROTO_NONE           59              /* IP6 no next header */
55 #define IP_PROTO_DSTOPTS        60              /* IP6 destination options */
56 #define IP_PROTO_MIPV6          62              /* Mobile IPv6 */
57 #define IP_PROTO_EON            80              /* ISO cnlp */
58 #define IP_PROTO_VINES          83              /* Vines over raw IP */
59 #define IP_PROTO_EIGRP          88
60 #define IP_PROTO_OSPF           89
61 #define IP_PROTO_ETHERIP        97              /* Ethernet-within-IP (RFC 3378) */
62 #define IP_PROTO_ENCAP          98              /* encapsulation header */
63 #define IP_PROTO_PIM            103             /* Protocol Independent Mcast */
64 #define IP_PROTO_IPCOMP         108             /* IP payload compression */
65 #define IP_PROTO_VRRP           112             /* Virtual Router Redundancy Protocol */
66 #define IP_PROTO_PGM            113             /* Pragmatic General Multicast */
67 #define IP_PROTO_SCTP           132             /* Stream Control Transmission Protocol */
68
69 extern const char *ipprotostr(int proto);
70
71 #endif /* ipproto.h */