/*
* Copyright (c) 2008 Lukas Mejdrech
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* - The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/** @addtogroup net
* @{
*/
/** @file
* Internet protocol numbers according to the online IANA - Assigned Protocol numbers - <http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml>, cited January 14 2009.
* Names according to the linux src/include/linux/in.h header file.
*/
#ifndef __NET_IPPROTOCOLS_H__
#define __NET_IPPROTOCOLS_H__
/** IPv6 Hop-by-Hop Option interenet protocol number.
*/
#define IPPROTO_HOPOPT 0
/** Internet Control Message interenet protocol number.
*/
#define IPPROTO_ICMP 1
/** Internet Group Management interenet protocol number.
*/
#define IPPROTO_IGMP 2
/** Gateway-to-Gateway interenet protocol number.
*/
#define IPPROTO_GGP 3
/** IP in IP (encapsulation) interenet protocol number.
*/
#define IPPROTO_IP 4
/** Stream interenet protocol number.
*/
#define IPPROTO_ST 5
/** Transmission Control interenet protocol number.
*/
#define IPPROTO_TCP 6
/** CBT interenet protocol number.
*/
#define IPPROTO_CBT 7
/** Exterior Gateway Protocol interenet protocol number.
*/
#define IPPROTO_EGP 8
/** any private interior gateway
(used by Cisco for their IGRP) interenet protocol number.
*/
#define IPPROTO_IGP 9
/** BBN RCC Monitoring interenet protocol number.
*/
#define IPPROTO_BBN_RCC_MON 10
/** Network Voice Protocol interenet protocol number.
*/
#define IPPROTO_NVP_II 11
/** PUP interenet protocol number.
*/
#define IPPROTO_PUP 12
/** ARGUS interenet protocol number.
*/
#define IPPROTO_ARGUS 13
/** EMCON interenet protocol number.
*/
#define IPPROTO_EMCON 14
/** Cross Net Debugger interenet protocol number.
*/
#define IPPROTO_XNET 15
/** Chaos interenet protocol number.
*/
#define IPPROTO_CHAOS 16
/** User Datagram interenet protocol number.
*/
#define IPPROTO_UDP 17
/** Multiplexing interenet protocol number.
*/
#define IPPROTO_MUX 18
/** DCN Measurement Subsystems interenet protocol number.
*/
#define IPPROTO_DCN_MEAS 19
/** Host Monitoring interenet protocol number.
*/
#define IPPROTO_HMP 20
/** Packet Radio Measurement interenet protocol number.
*/
#define IPPROTO_PRM 21
/** XEROX NS IDP interenet protocol number.
*/
#define IPPROTO_XNS_IDP 22
/** Trunk-1 interenet protocol number.
*/
#define IPPROTO_TRUNK_1 23
/** Trunk-2 interenet protocol number.
*/
#define IPPROTO_TRUNK_2 24
/** Leaf-1 interenet protocol number.
*/
#define IPPROTO_LEAF_1 25
/** Leaf-2 interenet protocol number.
*/
#define IPPROTO_LEAF_2 26
/** Reliable Data Protocol interenet protocol number.
*/
#define IPPROTO_RDP 27
/** Internet Reliable Transaction interenet protocol number.
*/
#define IPPROTO_IRTP 28
/** ISO Transport Protocol Class 4 interenet protocol number.
*/
#define IPPROTO_ISO_TP4 29
/** Bulk Data Transfer Protocol interenet protocol number.
*/
#define IPPROTO_NETBLT 30
/** MFE Network Services Protocol interenet protocol number.
*/
#define IPPROTO_MFE_NSP 31
/** MERIT Internodal Protocol interenet protocol number.
*/
#define IPPROTO_MERIT_INP 32
/** Datagram Congestion Control Protocol interenet protocol number.
*/
#define IPPROTO_DCCP 33
/** Third Party Connect Protocol interenet protocol number.
*/
#define IPPROTO_3PC 34
/** Inter-Domain Policy Routing Protocol interenet protocol number.
*/
#define IPPROTO_IDPR 35
/** XTP interenet protocol number.
*/
#define IPPROTO_XTP 36
/** Datagram Delivery Protocol interenet protocol number.
*/
#define IPPROTO_DDP 37
/** IDPR Control Message Transport Proto interenet protocol number.
*/
#define IPPROTO_IDPR_CMTP 38
/** TP++ Transport Protocol interenet protocol number.
*/
#define IPPROTO_TP 39
/** IL Transport Protocol interenet protocol number.
*/
#define IPPROTO_IL 40
/** Ipv6 interenet protocol number.
*/
#define IPPROTO_IPV6 41
/** Source Demand Routing Protocol interenet protocol number.
*/
#define IPPROTO_SDRP 42
/** Routing Header for IPv6 interenet protocol number.
*/
#define IPPROTO_IPv6_Route 43
/** Fragment Header for IPv6 interenet protocol number.
*/
#define IPPROTO_IPv6_Frag 44
/** Inter-Domain Routing Protocol interenet protocol number.
*/
#define IPPROTO_IDRP 45
/** Reservation Protocol interenet protocol number.
*/
#define IPPROTO_RSVP 46
/** General Routing Encapsulation interenet protocol number.
*/
#define IPPROTO_GRE 47
/** Dynamic Source Routing Protocol interenet protocol number.
*/
#define IPPROTO_DSR 48
/** BNA interenet protocol number.
*/
#define IPPROTO_BNA 49
/** Encap Security Payload interenet protocol number.
*/
#define IPPROTO_ESP 50
/** Authentication Header interenet protocol number.
*/
#define IPPROTO_AH 51
/** Integrated Net Layer Security TUBA interenet protocol number.
*/
#define IPPROTO_I_NLSP 52
/** IP with Encryption interenet protocol number.
*/
#define IPPROTO_SWIPE 53
/** NBMA Address Resolution Protocol interenet protocol number.
*/
#define IPPROTO_NARP 54
/** IP Mobility interenet protocol number.
*/
#define IPPROTO_MOBILE 55
/** Transport Layer Security Protocol
using Kryptonet key management interenet protocol number.
*/
#define IPPROTO_TLSP 56
/** SKIP interenet protocol number.
*/
#define IPPROTO_SKIP 57
/** ICMP for IPv6 interenet protocol number.
*/
#define IPPROTO_IPv6_ICMP 58
/** No Next Header for IPv6 interenet protocol number.
*/
#define IPPROTO_IPv6_NoNxt 59
/** Destination Options for IPv6 interenet protocol number.
*/
#define IPPROTO_IPv6_Opts 60
/** Any host internal protocol interenet protocol number.
*/
#define IPPROTO_AHIP 61
/** CFTP interenet protocol number.
*/
#define IPPROTO_CFTP 62
/** Any local network interenet protocol number.
*/
#define IPPROTO_ALN 63
/** SATNET and Backroom EXPAK interenet protocol number.
*/
#define IPPROTO_SAT_EXPAK 64
/** Kryptolan interenet protocol number.
*/
#define IPPROTO_KRYPTOLAN 65
/** MIT Remote Virtual Disk Protocol interenet protocol number.
*/
#define IPPROTO_RVD 66
/** Internet Pluribus Packet Core interenet protocol number.
*/
#define IPPROTO_IPPC 67
/** Any distributed file system interenet protocol number.
*/
#define IPPROTO_ADFS 68
/** SATNET Monitoring interenet protocol number.
*/
#define IPPROTO_SAT_MON 69
/** VISA Protocol interenet protocol number.
*/
#define IPPROTO_VISA 70
/** Internet Packet Core Utility interenet protocol number.
*/
#define IPPROTO_IPCV 71
/** Computer Protocol Network Executive interenet protocol number.
*/
#define IPPROTO_CPNX 72
/** Computer Protocol Heart Beat interenet protocol number.
*/
#define IPPROTO_CPHB 73
/** Wang Span Network interenet protocol number.
*/
#define IPPROTO_WSN 74
/** Packet Video Protocol interenet protocol number.
*/
#define IPPROTO_PVP 75
/** Backroom SATNET Monitoring interenet protocol number.
*/
#define IPPROTO_BR_SAT_MON 76
/** SUN ND IPPROTOCOL_Temporary interenet protocol number.
*/
#define IPPROTO_SUN_ND 77
/** WIDEBAND Monitoring interenet protocol number.
*/
#define IPPROTO_WB_MON 78
/** WIDEBAND EXPAK interenet protocol number.
*/
#define IPPROTO_WB_EXPAK 79
/** ISO Internet Protocol interenet protocol number.
*/
#define IPPROTO_ISO_IP 80
/** VMTP interenet protocol number.
*/
#define IPPROTO_VMTP 81
/** SECURE-VMTP interenet protocol number.
*/
#define IPPROTO_SECURE_VMTP 82
/** VINES interenet protocol number.
*/
#define IPPROTO_VINES 83
/** TTP interenet protocol number.
*/
#define IPPROTO_TTP 84
/** NSFNET-IGP interenet protocol number.
*/
#define IPPROTO_NSFNET_IGP 85
/** Dissimilar Gateway Protocol interenet protocol number.
*/
#define IPPROTO_DGP 86
/** TCF interenet protocol number.
*/
#define IPPROTO_TCF 87
/** EIGRP interenet protocol number.
*/
#define IPPROTO_EIGRP 88
/** OSPFIGP interenet protocol number.
*/
#define IPPROTO_OSPFIGP 89
/** Sprite RPC Protocol interenet protocol number.
*/
#define IPPROTO_Sprite_RPC 90
/** Locus Address Resolution Protocol interenet protocol number.
*/
#define IPPROTO_LARP 91
/** Multicast Transport Protocol interenet protocol number.
*/
#define IPPROTO_MTP 92
/** AX.25 Frames interenet protocol number.
*/
#define IPPROTO_AX25 93
/** IP-within-IP Encapsulation Protocol interenet protocol number.
*/
#define IPPROTO_IPIP 94
/** Mobile Internetworking Control Pro. interenet protocol number.
*/
#define IPPROTO_MICP 95
/** Semaphore Communications Sec. Pro. interenet protocol number.
*/
#define IPPROTO_SCC_SP 96
/** Ethernet-within-IP Encapsulation interenet protocol number.
*/
#define IPPROTO_ETHERIP 97
/** Encapsulation Header interenet protocol number.
*/
#define IPPROTO_ENCAP 98
/** Any private encryption scheme interenet protocol number.
*/
#define IPPROTO_APES 99
/** GMTP interenet protocol number.
*/
#define IPPROTO_GMTP 100
/** Ipsilon Flow Management Protocol interenet protocol number.
*/
#define IPPROTO_IFMP 101
/** PNNI over IP interenet protocol number.
*/
#define IPPROTO_PNNI 102
/** Protocol Independent Multicast interenet protocol number.
*/
#define IPPROTO_PIM 103
/** ARIS interenet protocol number.
*/
#define IPPROTO_ARIS 104
/** SCPS interenet protocol number.
*/
#define IPPROTO_SCPS 105
/** QNX interenet protocol number.
*/
#define IPPROTO_QNX 106
/** Active Networks interenet protocol number.
*/
#define IPPROTO_AN 107
/** IP Payload Compression Protocol interenet protocol number.
*/
#define IPPROTO_IPComp 108
/** Sitara Networks Protocol interenet protocol number.
*/
#define IPPROTO_SNP 109
/** Compaq Peer Protocol interenet protocol number.
*/
#define IPPROTO_Compaq_Peer 110
/** IPX in IP interenet protocol number.
*/
#define IPPROTO_IPX_in_IP 111
/** Virtual Router Redundancy Protocol interenet protocol number.
*/
#define IPPROTO_VRRP 112
/** PGM Reliable Transport Protocol interenet protocol number.
*/
#define IPPROTO_PGM 113
/** Any 0-hop protocol interenet protocol number.
*/
#define IPPROTO_A0HP 114
/** Layer Two Tunneling Protocol interenet protocol number.
*/
#define IPPROTO_L2TP 115
/** D-II Data Exchange (DDX) interenet protocol number.
*/
#define IPPROTO_DDX 116
/** Interactive Agent Transfer Protocol interenet protocol number.
*/
#define IPPROTO_IATP 117
/** Schedule Transfer Protocol interenet protocol number.
*/
#define IPPROTO_STP 118
/** SpectraLink Radio Protocol interenet protocol number.
*/
#define IPPROTO_SRP 119
/** UTI interenet protocol number.
*/
#define IPPROTO_UTI 120
/** Simple Message Protocol interenet protocol number.
*/
#define IPPROTO_SMP 121
/** SM interenet protocol number.
*/
#define IPPROTO_SM 122
/** Performance Transparency Protocol interenet protocol number.
*/
#define IPPROTO_PTP 123
/** ISIS over IPv4 interenet protocol number.
*/
#define IPPROTO_ISIS 124
/** FIRE interenet protocol number.
*/
#define IPPROTO_FIRE 125
/** Combat Radio Transport Protocol interenet protocol number.
*/
#define IPPROTO_CRTP 126
/** Combat Radio User Datagram interenet protocol number.
*/
#define IPPROTO_CRUDP 127
/** SSCOPMCE interenet protocol number.
*/
#define IPPROTO_SSCOPMCE 128
/** IPLT interenet protocol number.
*/
#define IPPROTO_IPLT 129
/** Secure Packet Shield interenet protocol number.
*/
#define IPPROTO_SPS 130
/** Private IP Encapsulation within IP interenet protocol number.
*/
#define IPPROTO_PIPE 131
/** Stream Control Transmission Protocol interenet protocol number.
*/
#define IPPROTO_SCTP 132
/** Fibre Channel interenet protocol number.
*/
#define IPPROTO_FC 133
/** RSVP-E2E-IGNORE interenet protocol number.
*/
#define IPPROTO_RSVP_E2E_IGNORE 134
/** Mobility Header interenet protocol number.
*/
#define IPPROTO_MH 135
/** UDPLite interenet protocol number.
*/
#define IPPROTO_UDPLITE 136
/** MPLS-in-IP interenet protocol number.
*/
#define IPPROTO_MPLS_in_IP 137
/** MANET Protocols interenet protocol number.
*/
#define IPPROTO_manet 138
/** Host Identity Protocol interenet protocol number.
*/
#define IPPROTO_HIP 139
/** Raw interenet protocol number.
*/
#define IPPROTO_RAW 255
/** Maximum interenet protocol number.
*/
#define IPPROTO_MAX ( IPPROTO_RAW + 1 )
#endif
/** @}
*/