Subversion Repositories HelenOS

Rev

Rev 4704 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. /*
  2.  * Copyright (c) 2009 Lukas Mejdrech
  3.  * All rights reserved.
  4.  *
  5.  * Redistribution and use in source and binary forms, with or without
  6.  * modification, are permitted provided that the following conditions
  7.  * are met:
  8.  *
  9.  * - Redistributions of source code must retain the above copyright
  10.  *   notice, this list of conditions and the following disclaimer.
  11.  * - Redistributions in binary form must reproduce the above copyright
  12.  *   notice, this list of conditions and the following disclaimer in the
  13.  *   documentation and/or other materials provided with the distribution.
  14.  * - The name of the author may not be used to endorse or promote products
  15.  *   derived from this software without specific prior written permission.
  16.  *
  17.  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  18.  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  19.  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  20.  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
  21.  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
  22.  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  23.  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  24.  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  25.  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  26.  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  27.  */
  28.  
  29. /** @addtogroup ip
  30.  *  @{
  31.  */
  32.  
  33. /** @file
  34.  *  Internet protocol numbers according to the on-line IANA - Assigned Protocol numbers - <http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml>, cited January 14 2009.
  35.  */
  36.  
  37. #ifndef __NET_IPPROTOCOLS_H__
  38. #define __NET_IPPROTOCOLS_H__
  39.  
  40. /** @name IP protocols definitions
  41.  */
  42. /*@{*/
  43.  
  44. /** IPv6 Hop-by-Hop Option internet protocol number.
  45.  */
  46. #define IPPROTO_HOPOPT      0
  47.  
  48. /** Internet Control Message internet protocol number.
  49.  */
  50. #define IPPROTO_ICMP        1
  51.  
  52. /** Internet Group Management internet protocol number.
  53.  */
  54. #define IPPROTO_IGMP        2
  55.  
  56. /** Gateway-to-Gateway internet protocol number.
  57.  */
  58. #define IPPROTO_GGP     3
  59.  
  60. /** IP in IP (encapsulation) internet protocol number.
  61.  */
  62. #define IPPROTO_IP      4
  63.  
  64. /** Stream internet protocol number.
  65.  */
  66. #define IPPROTO_ST      5
  67.  
  68. /** Transmission Control internet protocol number.
  69.  */
  70. #define IPPROTO_TCP     6
  71.  
  72. /** CBT internet protocol number.
  73.  */
  74. #define IPPROTO_CBT     7
  75.  
  76. /** Exterior Gateway Protocol internet protocol number.
  77.  */
  78. #define IPPROTO_EGP     8
  79.  
  80. /** any private interior gateway            
  81. (used by Cisco for their IGRP) internet protocol number.
  82.  */
  83. #define IPPROTO_IGP     9
  84.  
  85. /** BBN RCC Monitoring internet protocol number.
  86.  */
  87. #define IPPROTO_BBN_RCC_MON     10
  88.  
  89. /** Network Voice Protocol internet protocol number.
  90.  */
  91. #define IPPROTO_NVP_II      11
  92.  
  93. /** PUP internet protocol number.
  94.  */
  95. #define IPPROTO_PUP     12
  96.  
  97. /** ARGUS internet protocol number.
  98.  */
  99. #define IPPROTO_ARGUS       13
  100.  
  101. /** EMCON internet protocol number.
  102.  */
  103. #define IPPROTO_EMCON       14
  104.  
  105. /** Cross Net Debugger internet protocol number.
  106.  */
  107. #define IPPROTO_XNET        15
  108.  
  109. /** Chaos internet protocol number.
  110.  */
  111. #define IPPROTO_CHAOS       16
  112.  
  113. /** User Datagram internet protocol number.
  114.  */
  115. #define IPPROTO_UDP     17
  116.  
  117. /** Multiplexing internet protocol number.
  118.  */
  119. #define IPPROTO_MUX     18
  120.  
  121. /** DCN Measurement Subsystems internet protocol number.
  122.  */
  123. #define IPPROTO_DCN_MEAS        19
  124.  
  125. /** Host Monitoring internet protocol number.
  126.  */
  127. #define IPPROTO_HMP     20
  128.  
  129. /** Packet Radio Measurement internet protocol number.
  130.  */
  131. #define IPPROTO_PRM     21
  132.  
  133. /** XEROX NS IDP internet protocol number.
  134.  */
  135. #define IPPROTO_XNS_IDP     22
  136.  
  137. /** Trunk-1 internet protocol number.
  138.  */
  139. #define IPPROTO_TRUNK_1     23
  140.  
  141. /** Trunk-2 internet protocol number.
  142.  */
  143. #define IPPROTO_TRUNK_2     24
  144.  
  145. /** Leaf-1 internet protocol number.
  146.  */
  147. #define IPPROTO_LEAF_1      25
  148.  
  149. /** Leaf-2 internet protocol number.
  150.  */
  151. #define IPPROTO_LEAF_2      26
  152.  
  153. /** Reliable Data Protocol internet protocol number.
  154.  */
  155. #define IPPROTO_RDP     27
  156.  
  157. /** Internet Reliable Transaction internet protocol number.
  158.  */
  159. #define IPPROTO_IRTP        28
  160.  
  161. /** ISO Transport Protocol Class 4 internet protocol number.
  162.  */
  163. #define IPPROTO_ISO_TP4     29
  164.  
  165. /** Bulk Data Transfer Protocol internet protocol number.
  166.  */
  167. #define IPPROTO_NETBLT      30
  168.  
  169. /** MFE Network Services Protocol internet protocol number.
  170.  */
  171. #define IPPROTO_MFE_NSP     31
  172.  
  173. /** MERIT Internodal Protocol internet protocol number.
  174.  */
  175. #define IPPROTO_MERIT_INP       32
  176.  
  177. /** Datagram Congestion Control Protocol internet protocol number.
  178.  */
  179. #define IPPROTO_DCCP        33
  180.  
  181. /** Third Party Connect Protocol internet protocol number.
  182.  */
  183. #define IPPROTO_3PC     34
  184.  
  185. /** Inter-Domain Policy Routing Protocol internet protocol number.
  186.  */
  187. #define IPPROTO_IDPR        35
  188.  
  189. /** XTP internet protocol number.
  190.  */
  191. #define IPPROTO_XTP     36
  192.  
  193. /** Datagram Delivery Protocol internet protocol number.
  194.  */
  195. #define IPPROTO_DDP     37
  196.  
  197. /** IDPR Control Message Transport Proto internet protocol number.
  198.  */
  199. #define IPPROTO_IDPR_CMTP       38
  200.  
  201. /** TP++ Transport Protocol internet protocol number.
  202.  */
  203. #define IPPROTO_TP      39
  204.  
  205. /** IL Transport Protocol internet protocol number.
  206.  */
  207. #define IPPROTO_IL      40
  208.  
  209. /** Ipv6 internet protocol number.
  210.  */
  211. #define IPPROTO_IPV6        41
  212.  
  213. /** Source Demand Routing Protocol internet protocol number.
  214.  */
  215. #define IPPROTO_SDRP        42
  216.  
  217. /** Routing Header for IPv6 internet protocol number.
  218.  */
  219. #define IPPROTO_IPv6_Route      43
  220.  
  221. /** Fragment Header for IPv6 internet protocol number.
  222.  */
  223. #define IPPROTO_IPv6_Frag       44
  224.  
  225. /** Inter-Domain Routing Protocol internet protocol number.
  226.  */
  227. #define IPPROTO_IDRP        45
  228.  
  229. /** Reservation Protocol internet protocol number.
  230.  */
  231. #define IPPROTO_RSVP        46
  232.  
  233. /** General Routing Encapsulation internet protocol number.
  234.  */
  235. #define IPPROTO_GRE     47
  236.  
  237. /** Dynamic Source Routing Protocol internet protocol number.
  238.  */
  239. #define IPPROTO_DSR     48
  240.  
  241. /** BNA internet protocol number.
  242.  */
  243. #define IPPROTO_BNA     49
  244.  
  245. /** Encap Security Payload internet protocol number.
  246.  */
  247. #define IPPROTO_ESP     50
  248.  
  249. /** Authentication Header internet protocol number.
  250.  */
  251. #define IPPROTO_AH      51
  252.  
  253. /** Integrated Net Layer Security  TUBA internet protocol number.
  254.  */
  255. #define IPPROTO_I_NLSP      52
  256.  
  257. /** IP with Encryption internet protocol number.
  258.  */
  259. #define IPPROTO_SWIPE       53
  260.  
  261. /** NBMA Address Resolution Protocol internet protocol number.
  262.  */
  263. #define IPPROTO_NARP        54
  264.  
  265. /** IP Mobility internet protocol number.
  266.  */
  267. #define IPPROTO_MOBILE      55
  268.  
  269. /** Transport Layer Security Protocol        
  270. using Kryptonet key management internet protocol number.
  271.  */
  272. #define IPPROTO_TLSP        56
  273.  
  274. /** SKIP internet protocol number.
  275.  */
  276. #define IPPROTO_SKIP        57
  277.  
  278. /** ICMP for IPv6 internet protocol number.
  279.  */
  280. #define IPPROTO_IPv6_ICMP       58
  281.  
  282. /** No Next Header for IPv6 internet protocol number.
  283.  */
  284. #define IPPROTO_IPv6_NoNxt      59
  285.  
  286. /** Destination Options for IPv6 internet protocol number.
  287.  */
  288. #define IPPROTO_IPv6_Opts       60
  289.  
  290. /** Any host internal protocol internet protocol number.
  291.  */
  292. #define IPPROTO_AHIP        61
  293.  
  294. /** CFTP internet protocol number.
  295.  */
  296. #define IPPROTO_CFTP        62
  297.  
  298. /** Any local network internet protocol number.
  299.  */
  300. #define IPPROTO_ALN     63
  301.  
  302. /** SATNET and Backroom EXPAK internet protocol number.
  303.  */
  304. #define IPPROTO_SAT_EXPAK       64
  305.  
  306. /** Kryptolan internet protocol number.
  307.  */
  308. #define IPPROTO_KRYPTOLAN       65
  309.  
  310. /** MIT Remote Virtual Disk Protocol internet protocol number.
  311.  */
  312. #define IPPROTO_RVD     66
  313.  
  314. /** Internet Pluribus Packet Core internet protocol number.
  315.  */
  316. #define IPPROTO_IPPC        67
  317.  
  318. /** Any distributed file system internet protocol number.
  319.  */
  320. #define IPPROTO_ADFS        68
  321.  
  322. /** SATNET Monitoring internet protocol number.
  323.  */
  324. #define IPPROTO_SAT_MON     69
  325.  
  326. /** VISA Protocol internet protocol number.
  327.  */
  328. #define IPPROTO_VISA        70
  329.  
  330. /** Internet Packet Core Utility internet protocol number.
  331.  */
  332. #define IPPROTO_IPCV        71
  333.  
  334. /** Computer Protocol Network Executive internet protocol number.
  335.  */
  336. #define IPPROTO_CPNX        72
  337.  
  338. /** Computer Protocol Heart Beat internet protocol number.
  339.  */
  340. #define IPPROTO_CPHB        73
  341.  
  342. /** Wang Span Network internet protocol number.
  343.  */
  344. #define IPPROTO_WSN     74
  345.  
  346. /** Packet Video Protocol internet protocol number.
  347.  */
  348. #define IPPROTO_PVP     75
  349.  
  350. /** Backroom SATNET Monitoring internet protocol number.
  351.  */
  352. #define IPPROTO_BR_SAT_MON      76
  353.  
  354. /** SUN ND IPPROTOCOL_Temporary internet protocol number.
  355.  */
  356. #define IPPROTO_SUN_ND      77
  357.  
  358. /** WIDEBAND Monitoring internet protocol number.
  359.  */
  360. #define IPPROTO_WB_MON      78
  361.  
  362. /** WIDEBAND EXPAK internet protocol number.
  363.  */
  364. #define IPPROTO_WB_EXPAK        79
  365.  
  366. /** ISO Internet Protocol internet protocol number.
  367.  */
  368. #define IPPROTO_ISO_IP      80
  369.  
  370. /** VMTP internet protocol number.
  371.  */
  372. #define IPPROTO_VMTP        81
  373.  
  374. /** SECURE-VMTP internet protocol number.
  375.  */
  376. #define IPPROTO_SECURE_VMTP     82
  377.  
  378. /** VINES internet protocol number.
  379.  */
  380. #define IPPROTO_VINES       83
  381.  
  382. /** TTP internet protocol number.
  383.  */
  384. #define IPPROTO_TTP     84
  385.  
  386. /** NSFNET-IGP internet protocol number.
  387.  */
  388. #define IPPROTO_NSFNET_IGP      85
  389.  
  390. /** Dissimilar Gateway Protocol internet protocol number.
  391.  */
  392. #define IPPROTO_DGP     86
  393.  
  394. /** TCF internet protocol number.
  395.  */
  396. #define IPPROTO_TCF     87
  397.  
  398. /** EIGRP internet protocol number.
  399.  */
  400. #define IPPROTO_EIGRP       88
  401.  
  402. /** OSPFIGP internet protocol number.
  403.  */
  404. #define IPPROTO_OSPFIGP     89
  405.  
  406. /** Sprite RPC Protocol internet protocol number.
  407.  */
  408. #define IPPROTO_Sprite_RPC      90
  409.  
  410. /** Locus Address Resolution Protocol internet protocol number.
  411.  */
  412. #define IPPROTO_LARP        91
  413.  
  414. /** Multicast Transport Protocol internet protocol number.
  415.  */
  416. #define IPPROTO_MTP     92
  417.  
  418. /** AX.25 Frames internet protocol number.
  419.  */
  420. #define IPPROTO_AX25        93
  421.  
  422. /** IP-within-IP Encapsulation Protocol internet protocol number.
  423.  */
  424. #define IPPROTO_IPIP        94
  425.  
  426. /** Mobile Internetworking Control Pro. internet protocol number.
  427.  */
  428. #define IPPROTO_MICP        95
  429.  
  430. /** Semaphore Communications Sec. Pro. internet protocol number.
  431.  */
  432. #define IPPROTO_SCC_SP      96
  433.  
  434. /** Ethernet-within-IP Encapsulation internet protocol number.
  435.  */
  436. #define IPPROTO_ETHERIP     97
  437.  
  438. /** Encapsulation Header internet protocol number.
  439.  */
  440. #define IPPROTO_ENCAP       98
  441.  
  442. /** Any private encryption scheme internet protocol number.
  443.  */
  444. #define IPPROTO_APES        99
  445.  
  446. /** GMTP internet protocol number.
  447.  */
  448. #define IPPROTO_GMTP        100
  449.  
  450. /** Ipsilon Flow Management Protocol internet protocol number.
  451.  */
  452. #define IPPROTO_IFMP        101
  453.  
  454. /** PNNI over IP internet protocol number.
  455.  */
  456. #define IPPROTO_PNNI        102
  457.  
  458. /** Protocol Independent Multicast internet protocol number.
  459.  */
  460. #define IPPROTO_PIM     103
  461.  
  462. /** ARIS internet protocol number.
  463.  */
  464. #define IPPROTO_ARIS        104
  465.  
  466. /** SCPS internet protocol number.
  467.  */
  468. #define IPPROTO_SCPS        105
  469.  
  470. /** QNX internet protocol number.
  471.  */
  472. #define IPPROTO_QNX     106
  473.  
  474. /** Active Networks internet protocol number.
  475.  */
  476. #define IPPROTO_AN      107
  477.  
  478. /** IP Payload Compression Protocol internet protocol number.
  479.  */
  480. #define IPPROTO_IPComp      108
  481.  
  482. /** Sitara Networks Protocol internet protocol number.
  483.  */
  484. #define IPPROTO_SNP     109
  485.  
  486. /** Compaq Peer Protocol internet protocol number.
  487.  */
  488. #define IPPROTO_Compaq_Peer     110
  489.  
  490. /** IPX in IP internet protocol number.
  491.  */
  492. #define IPPROTO_IPX_in_IP       111
  493.  
  494. /** Virtual Router Redundancy Protocol internet protocol number.
  495.  */
  496. #define IPPROTO_VRRP        112
  497.  
  498. /** PGM Reliable Transport Protocol internet protocol number.
  499.  */
  500. #define IPPROTO_PGM     113
  501.  
  502. /** Any 0-hop protocol internet protocol number.
  503.  */
  504. #define IPPROTO_A0HP        114
  505.  
  506. /** Layer Two Tunneling Protocol internet protocol number.
  507.  */
  508. #define IPPROTO_L2TP        115
  509.  
  510. /** D-II Data Exchange (DDX) internet protocol number.
  511.  */
  512. #define IPPROTO_DDX     116
  513.  
  514. /** Interactive Agent Transfer Protocol internet protocol number.
  515.  */
  516. #define IPPROTO_IATP        117
  517.  
  518. /** Schedule Transfer Protocol internet protocol number.
  519.  */
  520. #define IPPROTO_STP     118
  521.  
  522. /** SpectraLink Radio Protocol internet protocol number.
  523.  */
  524. #define IPPROTO_SRP     119
  525.  
  526. /** UTI internet protocol number.
  527.  */
  528. #define IPPROTO_UTI     120
  529.  
  530. /** Simple Message Protocol internet protocol number.
  531.  */
  532. #define IPPROTO_SMP     121
  533.  
  534. /** SM internet protocol number.
  535.  */
  536. #define IPPROTO_SM      122
  537.  
  538. /** Performance Transparency Protocol internet protocol number.
  539.  */
  540. #define IPPROTO_PTP     123
  541.  
  542. /** ISIS over IPv4 internet protocol number.
  543.  */
  544. #define IPPROTO_ISIS        124
  545.  
  546. /** FIRE internet protocol number.
  547.  */
  548. #define IPPROTO_FIRE        125
  549.  
  550. /** Combat Radio Transport Protocol internet protocol number.
  551.  */
  552. #define IPPROTO_CRTP        126
  553.  
  554. /** Combat Radio User Datagram internet protocol number.
  555.  */
  556. #define IPPROTO_CRUDP       127
  557.  
  558. /** SSCOPMCE internet protocol number.
  559.  */
  560. #define IPPROTO_SSCOPMCE        128
  561.  
  562. /** IPLT internet protocol number.
  563.  */
  564. #define IPPROTO_IPLT        129
  565.  
  566. /** Secure Packet Shield internet protocol number.
  567.  */
  568. #define IPPROTO_SPS     130
  569.  
  570. /** Private IP Encapsulation within IP internet protocol number.
  571.  */
  572. #define IPPROTO_PIPE        131
  573.  
  574. /** Stream Control Transmission Protocol internet protocol number.
  575.  */
  576. #define IPPROTO_SCTP        132
  577.  
  578. /** Fibre Channel internet protocol number.
  579.  */
  580. #define IPPROTO_FC      133
  581.  
  582. /** RSVP-E2E-IGNORE internet protocol number.
  583.  */
  584. #define IPPROTO_RSVP_E2E_IGNORE     134
  585.  
  586. /** Mobility Header internet protocol number.
  587.  */
  588. #define IPPROTO_MH      135
  589.  
  590. /** UDPLite internet protocol number.
  591.  */
  592. #define IPPROTO_UDPLITE     136
  593.  
  594. /** MPLS-in-IP internet protocol number.
  595.  */
  596. #define IPPROTO_MPLS_in_IP      137
  597.  
  598. /** MANET Protocols internet protocol number.
  599.  */
  600. #define IPPROTO_manet       138
  601.  
  602. /** Host Identity Protocol internet protocol number.
  603.  */
  604. #define IPPROTO_HIP     139
  605.  
  606. /** Raw internet protocol number.
  607.  */
  608. #define IPPROTO_RAW     255
  609.  
  610. /** Maximum internet protocol number.
  611.  */
  612. #define IPPROTO_MAX     ( IPPROTO_RAW + 1 )
  613.  
  614. /*@}*/
  615.  
  616. #endif
  617.  
  618. /** @}
  619.  */
  620.