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