Source code for pcapkit.const.reg.transtype

# -*- coding: utf-8 -*-
# pylint: disable=line-too-long
"""Transport Layer Protocol Numbers"""

from aenum import IntEnum, extend_enum

__all__ = ['TransType']


[docs]class TransType(IntEnum): """[TransType] Transport Layer Protocol Numbers""" _ignore_ = 'TransType _' TransType = vars() #: [:rfc:`8200`] IPv6 Hop-by-Hop Option TransType['HOPOPT'] = 0 #: [:rfc:`792`] Internet Control Message TransType['ICMP'] = 1 #: [:rfc:`1112`] Internet Group Management TransType['IGMP'] = 2 #: [:rfc:`823`] Gateway-to-Gateway TransType['GGP'] = 3 #: [:rfc:`2003`] IPv4 encapsulation TransType['IPv4'] = 4 #: [:rfc:`1190`][:rfc:`1819`] Stream TransType['ST'] = 5 #: [:rfc:`793`] Transmission Control TransType['TCP'] = 6 #: [Tony Ballardie] CBT TransType['CBT'] = 7 #: [:rfc:`888`][David Mills] Exterior Gateway Protocol TransType['EGP'] = 8 #: [Internet Assigned Numbers Authority] any private interior gateway (used by Cisco for their IGRP) TransType['IGP'] = 9 #: [Steve Chipman] BBN RCC Monitoring TransType['BBN_RCC_MON'] = 10 #: [:rfc:`741`][Steve Casner] Network Voice Protocol TransType['NVP_II'] = 11 #: [Boggs, D., J. Shoch, E. Taft, and R. Metcalfe, "PUP: An Internetwork Architecture", XEROX Palo Alto Research Center, CSL-79-10, July 1979; also in IEEE Transactions on Communication, Volume COM-28, Number 4, April 1980.][XEROX] PUP TransType['PUP'] = 12 #: [Robert W Scheifler] ARGUS (deprecated) TransType['ARGUS'] = 13 #: [<mystery contact>] EMCON TransType['EMCON'] = 14 #: [Haverty, J., "XNET Formats for Internet Protocol Version 4", IEN 158, October 1980.][Jack Haverty] Cross Net Debugger TransType['XNET'] = 15 #: [J Noel Chiappa] Chaos TransType['CHAOS'] = 16 #: [:rfc:`768`][Jon Postel] User Datagram TransType['UDP'] = 17 #: [Cohen, D. and J. Postel, "Multiplexing Protocol", IEN 90, USC/Information Sciences Institute, May 1979.][Jon Postel] Multiplexing TransType['MUX'] = 18 #: [David Mills] DCN Measurement Subsystems TransType['DCN_MEAS'] = 19 #: [:rfc:`869`][Bob Hinden] Host Monitoring TransType['HMP'] = 20 #: [Zaw Sing Su] Packet Radio Measurement TransType['PRM'] = 21 #: ["The Ethernet, A Local Area Network: Data Link Layer and Physical Layer Specification", AA-K759B-TK, Digital Equipment Corporation, Maynard, MA. Also as: "The Ethernet - A Local Area Network", Version 1.0, Digital Equipment Corporation, Intel Corporation, Xerox Corporation, September 1980. And: "The Ethernet, A Local Area Network: Data Link Layer and Physical Layer Specifications", Digital, Intel and Xerox, November 1982. And: XEROX, "The Ethernet, A Local Area Network: Data Link Layer and Physical Layer Specification", X3T51/80-50, Xerox Corporation, Stamford, CT., October 1980.][XEROX] XEROX NS IDP TransType['XNS_IDP'] = 22 #: [Barry Boehm] Trunk-1 TransType['TRUNK_1'] = 23 #: [Barry Boehm] Trunk-2 TransType['TRUNK_2'] = 24 #: [Barry Boehm] Leaf-1 TransType['LEAF_1'] = 25 #: [Barry Boehm] Leaf-2 TransType['LEAF_2'] = 26 #: [:rfc:`908`][Bob Hinden] Reliable Data Protocol TransType['RDP'] = 27 #: [:rfc:`938`][Trudy Miller] Internet Reliable Transaction TransType['IRTP'] = 28 #: [:rfc:`905`][<mystery contact>] ISO Transport Protocol Class 4 TransType['ISO_TP4'] = 29 #: [:rfc:`969`][David Clark] Bulk Data Transfer Protocol TransType['NETBLT'] = 30 #: [Shuttleworth, B., "A Documentary of MFENet, a National Computer Network", UCRL-52317, Lawrence Livermore Labs, Livermore, California, June 1977.][Barry Howard] MFE Network Services Protocol TransType['MFE_NSP'] = 31 #: [Hans Werner Braun] MERIT Internodal Protocol TransType['MERIT_INP'] = 32 #: [:rfc:`4340`] Datagram Congestion Control Protocol TransType['DCCP'] = 33 #: [Stuart A Friedberg] Third Party Connect Protocol TransType['3PC'] = 34 #: [Martha Steenstrup] Inter-Domain Policy Routing Protocol TransType['IDPR'] = 35 #: [Greg Chesson] XTP TransType['XTP'] = 36 #: [Wesley Craig] Datagram Delivery Protocol TransType['DDP'] = 37 #: [Martha Steenstrup] IDPR Control Message Transport Proto TransType['IDPR_CMTP'] = 38 #: [Dirk Fromhein] TP++ Transport Protocol TransType['TP'] = 39 #: [Dave Presotto] IL Transport Protocol TransType['IL'] = 40 #: [:rfc:`2473`] IPv6 encapsulation TransType['IPv6'] = 41 #: [Deborah Estrin] Source Demand Routing Protocol TransType['SDRP'] = 42 #: [Steve Deering] Routing Header for IPv6 TransType['IPv6_Route'] = 43 #: [Steve Deering] Fragment Header for IPv6 TransType['IPv6_Frag'] = 44 #: [Sue Hares] Inter-Domain Routing Protocol TransType['IDRP'] = 45 #: [:rfc:`2205`][:rfc:`3209`][Bob Braden] Reservation Protocol TransType['RSVP'] = 46 #: [:rfc:`2784`][Tony Li] Generic Routing Encapsulation TransType['GRE'] = 47 #: [:rfc:`4728`] Dynamic Source Routing Protocol TransType['DSR'] = 48 #: [Gary Salamon] BNA TransType['BNA'] = 49 #: [:rfc:`4303`] Encap Security Payload TransType['ESP'] = 50 #: [:rfc:`4302`] Authentication Header TransType['AH'] = 51 #: [K Robert Glenn] Integrated Net Layer Security TUBA TransType['I_NLSP'] = 52 #: [John Ioannidis] IP with Encryption (deprecated) TransType['SWIPE'] = 53 #: [:rfc:`1735`] NBMA Address Resolution Protocol TransType['NARP'] = 54 #: [Charlie Perkins] IP Mobility TransType['MOBILE'] = 55 #: [Christer Oberg] Transport Layer Security Protocol using Kryptonet key management TransType['TLSP'] = 56 #: [Tom Markson] SKIP TransType['SKIP'] = 57 #: [:rfc:`8200`] ICMP for IPv6 TransType['IPv6_ICMP'] = 58 #: [:rfc:`8200`] No Next Header for IPv6 TransType['IPv6_NoNxt'] = 59 #: [:rfc:`8200`] Destination Options for IPv6 TransType['IPv6_Opts'] = 60 #: [Internet Assigned Numbers Authority] TransType['Any_Host_Internal_Protocol'] = 61 #: [Forsdick, H., "CFTP", Network Message, Bolt Beranek and Newman, January 1982.][Harry Forsdick] CFTP TransType['CFTP'] = 62 #: [Internet Assigned Numbers Authority] TransType['Any_Local_Network'] = 63 #: [Steven Blumenthal] SATNET and Backroom EXPAK TransType['SAT_EXPAK'] = 64 #: [Paul Liu] Kryptolan TransType['KRYPTOLAN'] = 65 #: [Michael Greenwald] MIT Remote Virtual Disk Protocol TransType['RVD'] = 66 #: [Steven Blumenthal] Internet Pluribus Packet Core TransType['IPPC'] = 67 #: [Internet Assigned Numbers Authority] TransType['Any_Distributed_File_System'] = 68 #: [Steven Blumenthal] SATNET Monitoring TransType['SAT_MON'] = 69 #: [Gene Tsudik] VISA Protocol TransType['VISA'] = 70 #: [Steven Blumenthal] Internet Packet Core Utility TransType['IPCV'] = 71 #: [David Mittnacht] Computer Protocol Network Executive TransType['CPNX'] = 72 #: [David Mittnacht] Computer Protocol Heart Beat TransType['CPHB'] = 73 #: [Victor Dafoulas] Wang Span Network TransType['WSN'] = 74 #: [Steve Casner] Packet Video Protocol TransType['PVP'] = 75 #: [Steven Blumenthal] Backroom SATNET Monitoring TransType['BR_SAT_MON'] = 76 #: [William Melohn] SUN ND PROTOCOL-Temporary TransType['SUN_ND'] = 77 #: [Steven Blumenthal] WIDEBAND Monitoring TransType['WB_MON'] = 78 #: [Steven Blumenthal] WIDEBAND EXPAK TransType['WB_EXPAK'] = 79 #: [Marshall T Rose] ISO Internet Protocol TransType['ISO_IP'] = 80 #: [Dave Cheriton] VMTP TransType['VMTP'] = 81 #: [Dave Cheriton] SECURE-VMTP TransType['SECURE_VMTP'] = 82 #: [Brian Horn] VINES TransType['VINES'] = 83 #: [Jim Stevens] Transaction Transport Protocol TransType['TTP'] = 84 #: [Jim Stevens] Internet Protocol Traffic Manager TransType['IPTM'] = 84 #: [Hans Werner Braun] NSFNET-IGP TransType['NSFNET_IGP'] = 85 #: [M/A-COM Government Systems, "Dissimilar Gateway Protocol Specification, Draft Version", Contract no. CS901145, November 16, 1987.][Mike Little] Dissimilar Gateway Protocol TransType['DGP'] = 86 #: [Guillermo A Loyola] TCF TransType['TCF'] = 87 #: [:rfc:`7868`] EIGRP TransType['EIGRP'] = 88 #: [:rfc:`1583`][:rfc:`2328`][:rfc:`5340`][John Moy] OSPFIGP TransType['OSPFIGP'] = 89 #: [Welch, B., "The Sprite Remote Procedure Call System", Technical Report, UCB/Computer Science Dept., 86/302, University of California at Berkeley, June 1986.][Bruce Willins] Sprite RPC Protocol TransType['Sprite_RPC'] = 90 #: [Brian Horn] Locus Address Resolution Protocol TransType['LARP'] = 91 #: [Susie Armstrong] Multicast Transport Protocol TransType['MTP'] = 92 #: [Brian Kantor] AX.25 Frames TransType['AX_25'] = 93 #: [John Ioannidis] IP-within-IP Encapsulation Protocol TransType['IPIP'] = 94 #: [John Ioannidis] Mobile Internetworking Control Pro. (deprecated) TransType['MICP'] = 95 #: [Howard Hart] Semaphore Communications Sec. Pro. TransType['SCC_SP'] = 96 #: [:rfc:`3378`] Ethernet-within-IP Encapsulation TransType['ETHERIP'] = 97 #: [:rfc:`1241`][Robert Woodburn] Encapsulation Header TransType['ENCAP'] = 98 #: [Internet Assigned Numbers Authority] TransType['Any_Private_Encryption_Scheme'] = 99 #: [RXB5] GMTP TransType['GMTP'] = 100 #: [Bob Hinden][November 1995, 1997.] Ipsilon Flow Management Protocol TransType['IFMP'] = 101 #: [Ross Callon] PNNI over IP TransType['PNNI'] = 102 #: [:rfc:`7761`][Dino Farinacci] Protocol Independent Multicast TransType['PIM'] = 103 #: [Nancy Feldman] ARIS TransType['ARIS'] = 104 #: [Robert Durst] SCPS TransType['SCPS'] = 105 #: [Michael Hunter] QNX TransType['QNX'] = 106 #: [Bob Braden] Active Networks TransType['A_N'] = 107 #: [:rfc:`2393`] IP Payload Compression Protocol TransType['IPComp'] = 108 #: [Manickam R Sridhar] Sitara Networks Protocol TransType['SNP'] = 109 #: [Victor Volpe] Compaq Peer Protocol TransType['Compaq_Peer'] = 110 #: [CJ Lee] IPX in IP TransType['IPX_in_IP'] = 111 #: [:rfc:`5798`] Virtual Router Redundancy Protocol TransType['VRRP'] = 112 #: [Tony Speakman] PGM Reliable Transport Protocol TransType['PGM'] = 113 #: [Internet Assigned Numbers Authority] TransType['Any_0_hop_Protocol'] = 114 #: [:rfc:`3931`][Bernard Aboba] Layer Two Tunneling Protocol TransType['L2TP'] = 115 #: [John Worley] D-II Data Exchange (DDX) TransType['DDX'] = 116 #: [John Murphy] Interactive Agent Transfer Protocol TransType['IATP'] = 117 #: [Jean Michel Pittet] Schedule Transfer Protocol TransType['STP'] = 118 #: [Mark Hamilton] SpectraLink Radio Protocol TransType['SRP'] = 119 #: [Peter Lothberg] UTI TransType['UTI'] = 120 #: [Leif Ekblad] Simple Message Protocol TransType['SMP'] = 121 #: [Jon Crowcroft][draft-perlman-simple-multicast] Simple Multicast Protocol (deprecated) TransType['SM'] = 122 #: [Michael Welzl] Performance Transparency Protocol TransType['PTP'] = 123 #: [Tony Przygienda] TransType['ISIS_Over_IPv4'] = 124 #: [Criag Partridge] TransType['FIRE'] = 125 #: [Robert Sautter] Combat Radio Transport Protocol TransType['CRTP'] = 126 #: [Robert Sautter] Combat Radio User Datagram TransType['CRUDP'] = 127 #: [Kurt Waber] TransType['SSCOPMCE'] = 128 #: [Hollbach] TransType['IPLT'] = 129 #: [Bill McIntosh] Secure Packet Shield TransType['SPS'] = 130 #: [Bernhard Petri] Private IP Encapsulation within IP TransType['PIPE'] = 131 #: [Randall R Stewart] Stream Control Transmission Protocol TransType['SCTP'] = 132 #: [Murali Rajagopal][:rfc:`6172`] Fibre Channel TransType['FC'] = 133 #: [:rfc:`3175`] TransType['RSVP_E2E_IGNORE'] = 134 #: [:rfc:`6275`] TransType['Mobility_Header'] = 135 #: [:rfc:`3828`] TransType['UDPLite'] = 136 #: [:rfc:`4023`] TransType['MPLS_in_IP'] = 137 #: [:rfc:`5498`] MANET Protocols TransType['Manet'] = 138 #: [:rfc:`7401`] Host Identity Protocol TransType['HIP'] = 139 #: [:rfc:`5533`] Shim6 Protocol TransType['Shim6'] = 140 #: [:rfc:`5840`] Wrapped Encapsulating Security Payload TransType['WESP'] = 141 #: [:rfc:`5858`] Robust Header Compression TransType['ROHC'] = 142 #: [draft-ietf-spring-srv6-network-programming] Ethernet (TEMPORARY - registered 2020-01-31, expires 2021-01-31) TransType['Ethernet'] = 143 #: [:rfc:`3692`] TransType['Use_For_Experimentation_And_Testing_253'] = 253 #: [:rfc:`3692`] TransType['Use_For_Experimentation_And_Testing_254'] = 254 #: [Internet Assigned Numbers Authority] TransType['Reserved'] = 255
[docs] @staticmethod def get(key, default=-1): """Backport support for original codes.""" if isinstance(key, int): return TransType(key) if key not in TransType._member_map_: # pylint: disable=no-member extend_enum(TransType, key, default) return TransType[key]
[docs] @classmethod def _missing_(cls, value): """Lookup function used when value is not found.""" if not (isinstance(value, int) and 0 <= value <= 255): raise ValueError('%r is not a valid %s' % (value, cls.__name__)) if 144 <= value <= 252: # [Internet Assigned Numbers Authority] extend_enum(cls, 'Unassigned [%d]' % value, value) return cls(value) return super()._missing_(value)