pypcapkit 1.3.1.post7__pp38-none-any.whl → 1.3.5.post6__pp38-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. pcapkit/__init__.py +1 -3
  2. pcapkit/__main__.py +2 -2
  3. pcapkit/const/ftp/command.py +2 -2
  4. pcapkit/const/ftp/return_code.py +11 -21
  5. pcapkit/const/http/status_code.py +7 -3
  6. pcapkit/const/ipv6/extension_header.py +3 -0
  7. pcapkit/const/ipv6/router_alert.py +1 -1
  8. pcapkit/const/ipv6/routing.py +2 -4
  9. pcapkit/const/ipx/packet.py +3 -0
  10. pcapkit/const/ipx/socket.py +2 -2
  11. pcapkit/const/mh/status_code.py +1 -1
  12. pcapkit/const/reg/apptype.py +94 -32
  13. pcapkit/const/reg/ethertype.py +8 -10
  14. pcapkit/const/reg/linktype.py +48 -81
  15. pcapkit/const/reg/transtype.py +9 -3
  16. pcapkit/const/tcp/option.py +2 -2
  17. pcapkit/corekit/infoclass.py +2 -0
  18. pcapkit/dumpkit/pcap.py +13 -5
  19. pcapkit/protocols/data/application/ftp.py +2 -2
  20. pcapkit/protocols/data/application/httpv1.py +2 -1
  21. pcapkit/protocols/data/application/httpv2.py +2 -1
  22. pcapkit/protocols/data/internet/ah.py +2 -2
  23. pcapkit/protocols/data/internet/hip.py +2 -1
  24. pcapkit/protocols/data/internet/hopopt.py +2 -1
  25. pcapkit/protocols/data/internet/ipv4.py +2 -1
  26. pcapkit/protocols/data/internet/ipv6.py +2 -2
  27. pcapkit/protocols/data/internet/ipv6_frag.py +2 -2
  28. pcapkit/protocols/data/internet/ipv6_opts.py +2 -1
  29. pcapkit/protocols/data/internet/ipv6_route.py +2 -2
  30. pcapkit/protocols/data/internet/ipx.py +2 -1
  31. pcapkit/protocols/data/internet/mh.py +2 -1
  32. pcapkit/protocols/data/link/arp.py +2 -1
  33. pcapkit/protocols/data/link/ethernet.py +2 -1
  34. pcapkit/protocols/data/link/l2tp.py +4 -2
  35. pcapkit/protocols/data/link/ospf.py +4 -2
  36. pcapkit/protocols/data/link/vlan.py +2 -1
  37. pcapkit/protocols/data/misc/null.py +2 -2
  38. pcapkit/protocols/data/misc/pcap/frame.py +4 -2
  39. pcapkit/protocols/data/misc/pcap/header.py +2 -1
  40. pcapkit/protocols/data/misc/pcapng.py +16 -8
  41. pcapkit/protocols/data/misc/raw.py +3 -5
  42. pcapkit/protocols/data/protocol.py +8 -0
  43. pcapkit/protocols/data/transport/tcp.py +6 -3
  44. pcapkit/protocols/data/transport/udp.py +2 -2
  45. pcapkit/protocols/internet/internet.py +15 -6
  46. pcapkit/protocols/internet/ipv6.py +54 -3
  47. pcapkit/protocols/internet/ipv6_route.py +5 -7
  48. pcapkit/protocols/link/link.py +1 -1
  49. pcapkit/protocols/misc/pcap/frame.py +1 -1
  50. pcapkit/protocols/misc/pcapng.py +5 -2
  51. pcapkit/protocols/misc/raw.py +0 -1
  52. pcapkit/protocols/protocol.py +4 -1
  53. pcapkit/protocols/schema/__init__.py +0 -1
  54. pcapkit/protocols/schema/internet/ipv6_route.py +2 -3
  55. pcapkit/protocols/schema/schema.py +1 -1
  56. pcapkit/protocols/transport/tcp.py +1 -1
  57. pcapkit/protocols/transport/udp.py +1 -1
  58. pcapkit/toolkit/pcapng.py +1 -1
  59. pcapkit/utilities/decorators.py +4 -2
  60. pcapkit/utilities/exceptions.py +5 -5
  61. {pypcapkit-1.3.1.post7.dist-info → pypcapkit-1.3.5.post6.dist-info}/METADATA +1 -1
  62. {pypcapkit-1.3.1.post7.dist-info → pypcapkit-1.3.5.post6.dist-info}/RECORD +66 -66
  63. {pypcapkit-1.3.1.post7.dist-info → pypcapkit-1.3.5.post6.dist-info}/WHEEL +1 -1
  64. {pypcapkit-1.3.1.post7.dist-info → pypcapkit-1.3.5.post6.dist-info}/LICENSE +0 -0
  65. {pypcapkit-1.3.1.post7.dist-info → pypcapkit-1.3.5.post6.dist-info}/entry_points.txt +0 -0
  66. {pypcapkit-1.3.1.post7.dist-info → pypcapkit-1.3.5.post6.dist-info}/top_level.txt +0 -0
pcapkit/__init__.py CHANGED
@@ -93,10 +93,8 @@ else:
93
93
  tbtrim.set_trim_rule(lambda filename: ROOT in os.path.realpath(filename),
94
94
  exception=BaseError, strict=False)
95
95
 
96
- from pcapkit.foundation.registry import *
97
96
  from pcapkit.interface import *
98
97
  from pcapkit.protocols import *
99
- from pcapkit.toolkit import *
100
98
 
101
99
  __all__ = [
102
100
  'extract', 'reassemble', 'trace', # Interface Functions
@@ -123,4 +121,4 @@ __all__ = [
123
121
  ]
124
122
 
125
123
  #: version number
126
- __version__ = '1.3.1.post7'
124
+ __version__ = '1.3.5.post6'
pcapkit/__main__.py CHANGED
@@ -120,7 +120,7 @@ def main() -> 'int':
120
120
  if args.verbose:
121
121
  try:
122
122
  print(emoji.emojize(f":police_car_light: Loading file {extractor.input!r}"))
123
- except UnicodeEncodeError:
123
+ except (UnicodeEncodeError, NameError): # may trigger if emoji not installed
124
124
  print(f"[*] Loading file {extractor.input!r}")
125
125
 
126
126
  for _ in extractor:
@@ -128,7 +128,7 @@ def main() -> 'int':
128
128
 
129
129
  try:
130
130
  print(emoji.emojize(f":beer_mug: Report file{'s' if args.files else ''} stored in {extractor.output!r}"))
131
- except UnicodeEncodeError:
131
+ except (UnicodeEncodeError, NameError): # may trigger if emoji not installed
132
132
  print(f"[*] Report file{'s' if args.files else ''} stored in {extractor.output!r}")
133
133
 
134
134
  return 0
@@ -233,8 +233,8 @@ class Command(StrEnum):
233
233
  #: Rename From [:rfc:`959`]
234
234
  RNFR: 'Command' = 'RNFR', FEATCode.base, 'Rename From', CommandType.S | CommandType.P, ConformanceRequirement.M
235
235
 
236
- #: Rename From [:rfc:`959`]
237
- RNTO: 'Command' = 'RNTO', FEATCode.base, 'Rename From', CommandType.S, ConformanceRequirement.M
236
+ #: Rename To [:rfc:`959`][RFC Errata 5748]
237
+ RNTO: 'Command' = 'RNTO', FEATCode.base, 'Rename To', CommandType.S, ConformanceRequirement.M
238
238
 
239
239
  #: Site Parameters [:rfc:`959`][:rfc:`1123`]
240
240
  SITE: 'Command' = 'SITE', FEATCode.base, 'Site Parameters', CommandType.S, ConformanceRequirement.M
@@ -174,35 +174,25 @@ class ReturnCode(IntEnum):
174
174
  #: data needs to be exchanged.
175
175
  CODE_235: 'ReturnCode' = 235, 'Server accepts the security data given by the client; no further security data needs to be exchanged.'
176
176
 
177
- #: Requested file action okay, completed.
178
- CODE_250: 'ReturnCode' = 250, 'Requested file action okay, completed.'
177
+ #: Requested file action was okay, completed.
178
+ CODE_250: 'ReturnCode' = 250, 'Requested file action was okay, completed.'
179
179
 
180
- #: "PATHNAME" created.
181
- CODE_257: 'ReturnCode' = 257, '"PATHNAME" created.'
180
+ #: User name okay, password needed.
181
+ CODE_331: 'ReturnCode' = 331, 'User name okay, password needed.'
182
182
 
183
- #: User name okay, need password.
184
- CODE_331: 'ReturnCode' = 331, 'User name okay, need password.'
185
-
186
- #: Need account for login.
187
- CODE_332: 'ReturnCode' = 332, 'Need account for login.'
183
+ #: No need account for login.
184
+ CODE_332: 'ReturnCode' = 332, 'No need account for login.'
188
185
 
189
186
  #: Server accepts the security mechanism specified by the client; some security
190
187
  #: data needs to be exchanged.
191
188
  CODE_334: 'ReturnCode' = 334, 'Server accepts the security mechanism specified by the client; some security data needs to be exchanged.'
192
189
 
193
- #: Server accepts the security data given by the client; more security data
194
- #: needs to be exchanged.
195
- CODE_335: 'ReturnCode' = 335, 'Server accepts the security data given by the client; more security data needs to be exchanged.'
196
-
197
- #: Username okay, need password. Challenge is ". . . . ".
198
- CODE_336: 'ReturnCode' = 336, 'Username okay, need password.'
199
-
200
- #: Requested file action pending further information
201
- CODE_350: 'ReturnCode' = 350, 'Requested file action pending further information.'
190
+ #: Username okay, password okay. Challenge is ". . . . ".
191
+ CODE_336: 'ReturnCode' = 336, 'Username okay, password okay.'
202
192
 
203
- #: Service not available, closing control connection. This may be a reply to
204
- #: any command if the service knows it must shut down.
205
- CODE_421: 'ReturnCode' = 421, 'Service not available, closing control connection.'
193
+ #: Service available, closing control connection. This may be a reply to any
194
+ #: command if the service knows it must shut down.
195
+ CODE_421: 'ReturnCode' = 421, 'Service available, closing control connection.'
206
196
 
207
197
  #: Can't open data connection.
208
198
  CODE_425: 'ReturnCode' = 425, "Can't open data connection."
@@ -54,6 +54,10 @@ class StatusCode(IntEnum):
54
54
  #: Early Hints [:rfc:`8297`]
55
55
  CODE_103 = 103, 'Early Hints'
56
56
 
57
+ #: Upload Resumption Supported (TEMPORARY - registered 2024-11-13, expires
58
+ #: 2025-11-13) [draft-ietf-httpbis-resumable-upload-05]
59
+ CODE_104 = 104, 'Upload Resumption Supported'
60
+
57
61
  #: OK [:rfc:`9110#section-15.3.1`]
58
62
  CODE_200 = 200, 'OK'
59
63
 
@@ -234,8 +238,8 @@ class StatusCode(IntEnum):
234
238
  #: Unassigned
235
239
  CODE_509 = 509, 'Unassigned'
236
240
 
237
- #: Not Extended (OBSOLETED) [:rfc:`2774`][status-change-http-experiments-to-
238
- #: historic]
241
+ #: Not Extended (OBSOLETED) [:rfc:`2774`][Status change of HTTP experiments to
242
+ #: Historic]
239
243
  CODE_510 = 510, 'Not Extended'
240
244
 
241
245
  #: Network Authentication Required [:rfc:`6585`]
@@ -267,7 +271,7 @@ class StatusCode(IntEnum):
267
271
  """
268
272
  if not (isinstance(value, int) and 100 <= value <= 599):
269
273
  raise ValueError('%r is not a valid %s' % (value, cls.__name__))
270
- if 104 <= value <= 199:
274
+ if 105 <= value <= 199:
271
275
  #: Unassigned
272
276
  return extend_enum(cls, 'CODE_%d' % value, value, 'Unassigned')
273
277
  if 209 <= value <= 225:
@@ -45,6 +45,9 @@ class ExtensionHeader(IntEnum):
45
45
  #: Shim6, Shim6 Protocol [:rfc:`5533`]
46
46
  Shim6 = 140
47
47
 
48
+ #: BIT-EMU, Bit-stream Emulation [RFC-ietf-pals-ple-14]
49
+ BIT_EMU = 147
50
+
48
51
  #: Use for experimentation and testing [:rfc:`3692`]
49
52
  Use_for_experimentation_and_testing_253 = 253
50
53
 
@@ -225,7 +225,7 @@ class RouterAlert(IntEnum):
225
225
  #: NSIS NATFW NSLP [:rfc:`5973`]
226
226
  NSIS_NATFW_NSLP = 68
227
227
 
228
- #: MPLS OAM [:rfc:`7506`]
228
+ #: MPLS OAM (DEPRECATED) [:rfc:`7506`][:rfc:`9570`]
229
229
  MPLS_OAM = 69
230
230
 
231
231
  #: Reserved [The Internet Assigned Numbers Authority]
@@ -33,12 +33,10 @@ class Routing(IntEnum):
33
33
  #: Segment Routing Header (SRH) [:rfc:`8754`]
34
34
  Segment_Routing_Header = 4
35
35
 
36
- #: CRH-16 (TEMPORARY - registered 2021-06-07, extension registered 2023-06-08,
37
- #: expires 2024-06-07) [draft-bonica-6man-comp-rtg-hdr-30]
36
+ #: CRH-16 [:rfc:`9631`]
38
37
  CRH_16 = 5
39
38
 
40
- #: CRH-32 (TEMPORARY - registered 2021-06-07, extension registered 2023-06-08,
41
- #: expires 2024-06-07) [draft-bonica-6man-comp-rtg-hdr-30]
39
+ #: CRH-32 [:rfc:`9631`]
42
40
  CRH_32 = 6
43
41
 
44
42
  #: RFC3692-style Experiment 1 [:rfc:`4727`]
@@ -40,6 +40,9 @@ class Packet(IntEnum):
40
40
  #: ``NCP``, NetWare Core Protocol
41
41
  NCP = 17
42
42
 
43
+ #: Broadcast[4]
44
+ Broadcast_4 = 20
45
+
43
46
  @staticmethod
44
47
  def get(key: 'int | str', default: 'int' = -1) -> 'Packet':
45
48
  """Backport support for original codes.
@@ -48,8 +48,8 @@ class Socket(IntEnum):
48
48
  #: Used by Novell NetWare Client
49
49
  Used_by_Novell_NetWare_Client = 0x4003
50
50
 
51
- #: IPX
52
- IPX = 0x8060
51
+ #: LLC [ 4 ]
52
+ LLC_4 = 0x8060
53
53
 
54
54
  #: TCP over IPXF
55
55
  TCP_over_IPXF = 0x9091
@@ -94,7 +94,7 @@ class StatusCode(IntEnum):
94
94
  #: MIPV6-MESG-ID-REQD [:rfc:`4285`]
95
95
  MIPV6_MESG_ID_REQD = 145
96
96
 
97
- #: MIPV6-AUTH-FAIL [:rfc:`4285`]
97
+ #: MIPV6-AUTH-FAIL [:rfc:`4285`][RFC Errata 3463]
98
98
  MIPV6_AUTH_FAIL = 146
99
99
 
100
100
  #: Permanent home keygen token unavailable [:rfc:`4866`]
@@ -116,8 +116,8 @@ class AppType(StrEnum):
116
116
  def __hash__(self) -> 'int':
117
117
  return hash(self.port)
118
118
 
119
- #: - [TCP] Reserved
120
- #: - [UDP] Reserved
119
+ #: - [TCP] Reserved [:rfc:`6335`]
120
+ #: - [UDP] Reserved [:rfc:`6335`]
121
121
  reserved_0: 'AppType' = 0, 'reserved', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
122
122
 
123
123
  #: - [TCP] TCP Port Service Multiplexer
@@ -3050,17 +3050,14 @@ class AppType(StrEnum):
3050
3050
  #: [TCP] Reserved
3051
3051
  reserved_914: 'AppType' = 914, 'reserved', TransportProtocol.get('tcp')
3052
3052
 
3053
- #: [UDP] Routing in Fat Trees Link Information Elements (TEMPORARY - registered
3054
- #: 2023-02-17, extension registered 2024-01-12, expires 2025-02-17) [draft-
3055
- #: ietf-rift-rift-16]
3053
+ #: [UDP] Routing in Fat Trees Link Information Element [RFC-ietf-rift-rift-24]
3056
3054
  rift_lies: 'AppType' = 914, 'rift-lies', TransportProtocol.get('udp')
3057
3055
 
3058
3056
  #: [TCP] Reserved
3059
3057
  reserved_915: 'AppType' = 915, 'reserved', TransportProtocol.get('tcp')
3060
3058
 
3061
- #: [UDP] Routing in Fat Trees Topology Information Elements (TEMPORARY -
3062
- #: registered 2023-02-17, extension registered 2024-01-12, expires 2025-02-17)
3063
- #: [draft-ietf-rift-rift-16]
3059
+ #: [UDP] Routing in Fat Trees Topology Information Element [RFC-ietf-rift-
3060
+ #: rift-24]
3064
3061
  rift_ties: 'AppType' = 915, 'rift-ties', TransportProtocol.get('udp')
3065
3062
 
3066
3063
  #: [TCP] BIND9 remote name daemon controller
@@ -3155,12 +3152,12 @@ class AppType(StrEnum):
3155
3152
  #: - [DCCP] RFC3692-style Experiment 2 [1][:rfc:`4727`][:rfc:`6335`]
3156
3153
  exp2: 'AppType' = 1022, 'exp2', TransportProtocol.get('tcp') | TransportProtocol.get('udp') | TransportProtocol.get('sctp') | TransportProtocol.get('dccp')
3157
3154
 
3158
- #: - [TCP] Reserved
3159
- #: - [UDP] Reserved
3155
+ #: - [TCP] Reserved [:rfc:`6335`]
3156
+ #: - [UDP] Reserved [:rfc:`6335`]
3160
3157
  reserved_1023: 'AppType' = 1023, 'reserved', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
3161
3158
 
3162
- #: - [TCP] Reserved
3163
- #: - [UDP] Reserved
3159
+ #: - [TCP] Reserved [:rfc:`6335`]
3160
+ #: - [UDP] Reserved [:rfc:`6335`]
3164
3161
  reserved_1024: 'AppType' = 1024, 'reserved', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
3165
3162
 
3166
3163
  #: - [TCP] network blackjack
@@ -6408,8 +6405,8 @@ class AppType(StrEnum):
6408
6405
  #: - [UDP] TDP Suite
6409
6406
  tdp_suite: 'AppType' = 1814, 'tdp-suite', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
6410
6407
 
6411
- #: - [TCP] MMPFT
6412
- #: - [UDP] MMPFT
6408
+ #: - [TCP] Manufacturing messaging protocol for factory transmission
6409
+ #: - [UDP] Manufacturing messaging protocol for factory transmission
6413
6410
  mmpft: 'AppType' = 1815, 'mmpft', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
6414
6411
 
6415
6412
  #: - [TCP] HARP
@@ -10435,8 +10432,9 @@ class AppType(StrEnum):
10435
10432
  #: - [UDP] initlsmsad
10436
10433
  initlsmsad: 'AppType' = 2793, 'initlsmsad', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
10437
10434
 
10438
- #: [N/A] Unassigned
10439
- unassigned_2794: 'AppType' = 2794, 'unassigned', TransportProtocol.get('undefined')
10435
+ #: - [TCP] Uniform Resource Platform
10436
+ #: - [UDP] Uniform Resource Platform
10437
+ urp: 'AppType' = 2794, 'urp', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
10440
10438
 
10441
10439
  #: - [TCP] LiveStats
10442
10440
  #: - [UDP] LiveStats
@@ -11979,9 +11977,9 @@ class AppType(StrEnum):
11979
11977
  #: - [UDP] Indura Collector
11980
11978
  indura: 'AppType' = 3156, 'indura', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
11981
11979
 
11982
- #: - [TCP] CCC Listener Port
11983
- #: - [UDP] CCC Listener Port
11984
- e3consultants: 'AppType' = 3157, 'e3consultants', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
11980
+ #: - [TCP] LSA Communicator
11981
+ #: - [UDP] LSA Communicator
11982
+ lsa_comm: 'AppType' = 3157, 'lsa-comm', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
11985
11983
 
11986
11984
  #: - [TCP] SmashTV Protocol
11987
11985
  #: - [UDP] SmashTV Protocol
@@ -19849,6 +19847,11 @@ class AppType(StrEnum):
19849
19847
  #: [SCTP] Automatic Dependent Surveillance
19850
19848
  ads_c: 'AppType' = 5913, 'ads-c', TransportProtocol.get('sctp')
19851
19849
 
19850
+ #: - [TCP] Security for Internet Protocol Suite
19851
+ #: - [UDP] Security for Internet Protocol Suite
19852
+ #: - [SCTP] Security for Internet Protocol Suite
19853
+ ipsdtls: 'AppType' = 5914, 'ipsdtls', TransportProtocol.get('tcp') | TransportProtocol.get('udp') | TransportProtocol.get('sctp')
19854
+
19852
19855
  #: - [TCP] Indy Application Server
19853
19856
  #: - [UDP] Indy Application Server
19854
19857
  indy: 'AppType' = 5963, 'indy', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
@@ -19976,7 +19979,7 @@ class AppType(StrEnum):
19976
19979
  #: [UDP] Reserved
19977
19980
  reserved_6077: 'AppType' = 6077, 'reserved', TransportProtocol.get('udp')
19978
19981
 
19979
- #: [UDP] Generic UDP Encapsulation [draft-herbert-gue]
19982
+ #: [UDP] Generic UDP Encapsulation [draft-herbert-gue-02]
19980
19983
  gue: 'AppType' = 6080, 'gue', TransportProtocol.get('udp')
19981
19984
 
19982
19985
  #: [TCP] Reserved
@@ -20315,6 +20318,15 @@ class AppType(StrEnum):
20315
20318
  #: [UDP] Navtech Radar Sensor Data
20316
20319
  nav_data: 'AppType' = 6317, 'nav-data', TransportProtocol.get('udp')
20317
20320
 
20321
+ #: [TCP] IONA Measurement and control data
20322
+ iona_data: 'AppType' = 6318, 'iona-data', TransportProtocol.get('tcp')
20323
+
20324
+ #: [UDP] Reserved
20325
+ reserved_6318: 'AppType' = 6318, 'reserved', TransportProtocol.get('udp')
20326
+
20327
+ #: [N/A] Unassigned
20328
+ unassigned_6319: 'AppType' = 6319, 'unassigned', TransportProtocol.get('undefined')
20329
+
20318
20330
  #: - [TCP] Double-Take Replication Service
20319
20331
  #: - [UDP] Double-Take Replication Service
20320
20332
  repsvc: 'AppType' = 6320, 'repsvc', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
@@ -21830,6 +21842,12 @@ class AppType(StrEnum):
21830
21842
  #: [UDP] Oracle Coherence Cluster discovery service
21831
21843
  coherence_disc: 'AppType' = 7574, 'coherence-disc', TransportProtocol.get('udp')
21832
21844
 
21845
+ #: [TCP] Main access port for WTMI Panel
21846
+ wtmi_panel: 'AppType' = 7575, 'wtmi-panel', TransportProtocol.get('tcp')
21847
+
21848
+ #: [UDP] Reserved
21849
+ reserved_7575: 'AppType' = 7575, 'reserved', TransportProtocol.get('udp')
21850
+
21833
21851
  #: - [TCP] Sun License Manager
21834
21852
  #: - [UDP] Sun License Manager
21835
21853
  sun_lm: 'AppType' = 7588, 'sun-lm', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
@@ -24530,7 +24548,8 @@ class AppType(StrEnum):
24530
24548
  #: - [UDP] LUCIA Pareja Data Group
24531
24549
  lpdg: 'AppType' = 10805, 'lpdg', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
24532
24550
 
24533
- #: [TCP] Linux Network Block Device
24551
+ #: [TCP] Network Block Device
24552
+ #: [https://github.com/NetworkBlockDevice/nbd/blob/master/doc/proto.md]
24534
24553
  nbd: 'AppType' = 10809, 'nbd', TransportProtocol.get('tcp')
24535
24554
 
24536
24555
  #: [UDP] Reserved
@@ -25450,6 +25469,9 @@ class AppType(StrEnum):
25450
25469
  #: [UDP] Reserved
25451
25470
  reserved_18243: 'AppType' = 18243, 'reserved', TransportProtocol.get('udp')
25452
25471
 
25472
+ #: [N/A] Unassigned
25473
+ unassigned_18259: 'AppType' = 18259, 'unassigned', TransportProtocol.get('undefined')
25474
+
25453
25475
  #: - [TCP] GV NetConfig Service
25454
25476
  #: - [UDP] GV NetConfig Service
25455
25477
  gv_pf: 'AppType' = 18262, 'gv-pf', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
@@ -26199,6 +26221,12 @@ class AppType(StrEnum):
26199
26221
  #: [UDP] Reserved
26200
26222
  reserved_27010: 'AppType' = 27010, 'reserved', TransportProtocol.get('udp')
26201
26223
 
26224
+ #: [TCP] Cloud hosting environment network
26225
+ chlenix: 'AppType' = 27016, 'chlenix', TransportProtocol.get('tcp')
26226
+
26227
+ #: [UDP] Reserved
26228
+ reserved_27016: 'AppType' = 27016, 'reserved', TransportProtocol.get('udp')
26229
+
26202
26230
  #: [TCP] Mongo database system
26203
26231
  mongodb: 'AppType' = 27017, 'mongodb', TransportProtocol.get('tcp')
26204
26232
 
@@ -27238,8 +27266,8 @@ class AppType(StrEnum):
27238
27266
  #: [UDP] Reserved
27239
27267
  reserved_49150: 'AppType' = 49150, 'reserved', TransportProtocol.get('udp')
27240
27268
 
27241
- #: [N/A] IANA Reserved
27242
- iana_reserved: 'AppType' = 49151, 'iana_reserved', TransportProtocol.get('undefined')
27269
+ #: [N/A] Reserved [:rfc:`6335`]
27270
+ reserved_49151: 'AppType' = 49151, 'reserved', TransportProtocol.get('undefined')
27243
27271
 
27244
27272
  #: [N/A] ARGUS Protocol
27245
27273
  argus: 'AppType' = -1, 'argus', TransportProtocol.get('undefined')
@@ -27563,6 +27591,9 @@ class AppType(StrEnum):
27563
27591
  #: - [UDP] Access Control Gateway
27564
27592
  acs_ctl_gw: 'AppType' = -1, 'acs-ctl-gw', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
27565
27593
 
27594
+ #: [TCP] AXIS Camera Station Pro Server
27595
+ acsp_server: 'AppType' = -1, 'acsp-server', TransportProtocol.get('tcp')
27596
+
27566
27597
  #: [N/A] ActionItems
27567
27598
  actionitems: 'AppType' = -1, 'actionitems', TransportProtocol.get('undefined')
27568
27599
 
@@ -27577,6 +27608,14 @@ class AppType(StrEnum):
27577
27608
  #: - [UDP] Adam Hall network control and monitoring
27578
27609
  adamhall: 'AppType' = -1, 'adamhall', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
27579
27610
 
27611
+ #: - [TCP] ARN (Adaptive Routing Notification) is a protocol designed to enable
27612
+ #: dynamic routing adjustments by sharing network status information between
27613
+ #: nodes in data center networks, improving efficiency and fault tolerance.
27614
+ #: - [UDP] ARN (Adaptive Routing Notification) is a protocol designed to enable
27615
+ #: dynamic routing adjustments by sharing network status information between
27616
+ #: nodes in data center networks, improving efficiency and fault tolerance.
27617
+ adaptive_rn: 'AppType' = -1, 'adaptive-rn', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
27618
+
27580
27619
  #: [N/A] Address-O-Matic
27581
27620
  addressbook: 'AppType' = -1, 'addressbook', TransportProtocol.get('undefined')
27582
27621
 
@@ -27905,6 +27944,11 @@ class AppType(StrEnum):
27905
27944
  #: [TCP] The Bootstrapping Remote Secure Key Infrastructure Proxy [:rfc:`8995`]
27906
27945
  brski_proxy: 'AppType' = -1, 'brski-proxy', TransportProtocol.get('tcp')
27907
27946
 
27947
+ #: [TCP] Bootstrapping Remote Secure Key Infrastructure registrar with CMP
27948
+ #: capabilities according to the Lightweight CMP Profile (LCMPP, [RFC9483])
27949
+ #: [RFC-ietf-anima-brski-ae-13]
27950
+ brski_reg_cmp: 'AppType' = -1, 'brski-reg-cmp', TransportProtocol.get('tcp')
27951
+
27908
27952
  #: [TCP] The Bootstrapping Remote Secure Key Infrastructure Registrar
27909
27953
  #: [:rfc:`8995`]
27910
27954
  brski_registrar: 'AppType' = -1, 'brski-registrar', TransportProtocol.get('tcp')
@@ -28144,6 +28188,12 @@ class AppType(StrEnum):
28144
28188
  #: [TCP] DNS Dynamic Update Service over TLS [:rfc:`6281`]
28145
28189
  dns_update_tls: 'AppType' = -1, 'dns-update-tls', TransportProtocol.get('tcp')
28146
28190
 
28191
+ #: [TCP] DNS-Based Service Discovery [RFC-ietf-dnssd-srp-25]
28192
+ dnssd_srp: 'AppType' = -1, 'dnssd-srp', TransportProtocol.get('tcp')
28193
+
28194
+ #: [TCP] DNS-Based Service Discovery (TLS) [RFC-ietf-dnssd-srp-25]
28195
+ dnssd_srp_tls: 'AppType' = -1, 'dnssd-srp-tls', TransportProtocol.get('tcp')
28196
+
28147
28197
  #: [N/A] Roar (Death of Productivity)
28148
28198
  dop: 'AppType' = -1, 'dop', TransportProtocol.get('undefined')
28149
28199
 
@@ -28437,6 +28487,9 @@ class AppType(StrEnum):
28437
28487
  #: [TCP] An application to communicate with other
28438
28488
  hola: 'AppType' = -1, 'hola', TransportProtocol.get('tcp')
28439
28489
 
28490
+ #: [TCP] Home Assistant
28491
+ home_assistant: 'AppType' = -1, 'home-assistant', TransportProtocol.get('tcp')
28492
+
28440
28493
  #: [N/A] iTunes Home Sharing
28441
28494
  home_sharing: 'AppType' = -1, 'home-sharing', TransportProtocol.get('undefined')
28442
28495
 
@@ -28449,6 +28502,9 @@ class AppType(StrEnum):
28449
28502
  #: [TCP] Protocol for home hub communication
28450
28503
  homekit: 'AppType' = -1, 'homekit', TransportProtocol.get('tcp')
28451
28504
 
28505
+ #: [TCP] HomeWizard Local API
28506
+ homewizard: 'AppType' = -1, 'homewizard', TransportProtocol.get('tcp')
28507
+
28452
28508
  #: [UDP] Honeywell Video Systems
28453
28509
  honeywell_vid: 'AppType' = -1, 'honeywell-vid', TransportProtocol.get('udp')
28454
28510
 
@@ -29198,6 +29254,9 @@ class AppType(StrEnum):
29198
29254
  #: [N/A] oprofile server protocol
29199
29255
  oprofile: 'AppType' = -1, 'oprofile', TransportProtocol.get('undefined')
29200
29256
 
29257
+ #: [TCP] ORO Core server REST configuration and control API
29258
+ oro: 'AppType' = -1, 'oro', TransportProtocol.get('tcp')
29259
+
29201
29260
  #: [UDP] Open Sound Control Interface Transfer
29202
29261
  oscit: 'AppType' = -1, 'oscit', TransportProtocol.get('udp')
29203
29262
 
@@ -29239,6 +29298,9 @@ class AppType(StrEnum):
29239
29298
  #: - [UDP] Local and remote file transfers
29240
29299
  payload_app: 'AppType' = -1, 'payload-app', TransportProtocol.get('tcp') | TransportProtocol.get('udp')
29241
29300
 
29301
+ #: [TCP] Peblar EV charger
29302
+ pblr: 'AppType' = -1, 'pblr', TransportProtocol.get('tcp')
29303
+
29242
29304
  #: [N/A] Horowitz Key Protocol (HKP)
29243
29305
  pgpkey_hkp: 'AppType' = -1, 'pgpkey-hkp', TransportProtocol.get('undefined')
29244
29306
 
@@ -30396,10 +30458,10 @@ class AppType(StrEnum):
30396
30458
  if value in cls.__members_proto__.get(TransportProtocol.undefined, {}): # type: ignore[call-overload]
30397
30459
  return cls.__members_proto__[TransportProtocol.undefined][value] # type: ignore[index]
30398
30460
  if 225 <= value <= 241:
30399
- #: [N/A] Reserved
30461
+ #: [N/A] Reserved [:rfc:`1060`]
30400
30462
  return extend_enum(cls, 'reserved_%d' % value, value, 'reserved', TransportProtocol.get('undefined'))
30401
30463
  if 249 <= value <= 255:
30402
- #: [N/A] Reserved
30464
+ #: [N/A] Reserved [:rfc:`1060`]
30403
30465
  return extend_enum(cls, 'reserved_%d' % value, value, 'reserved', TransportProtocol.get('undefined'))
30404
30466
  if 272 <= value <= 279:
30405
30467
  #: [N/A] Unassigned
@@ -30800,7 +30862,7 @@ class AppType(StrEnum):
30800
30862
  if 5901 <= value <= 5902:
30801
30863
  #: [N/A] Unassigned
30802
30864
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
30803
- if 5914 <= value <= 5962:
30865
+ if 5915 <= value <= 5962:
30804
30866
  #: [N/A] Unassigned
30805
30867
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
30806
30868
  if 5964 <= value <= 5967:
@@ -30866,9 +30928,6 @@ class AppType(StrEnum):
30866
30928
  if 6307 <= value <= 6314:
30867
30929
  #: [N/A] Unassigned
30868
30930
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
30869
- if 6318 <= value <= 6319:
30870
- #: [N/A] Unassigned
30871
- return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
30872
30931
  if 6327 <= value <= 6342:
30873
30932
  #: [N/A] Unassigned
30874
30933
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
@@ -31160,7 +31219,7 @@ class AppType(StrEnum):
31160
31219
  if 7571 <= value <= 7573:
31161
31220
  #: [N/A] Unassigned
31162
31221
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
31163
- if 7575 <= value <= 7587:
31222
+ if 7576 <= value <= 7587:
31164
31223
  #: [N/A] Unassigned
31165
31224
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
31166
31225
  if 7589 <= value <= 7605:
@@ -32009,7 +32068,10 @@ class AppType(StrEnum):
32009
32068
  if 18188 <= value <= 18240:
32010
32069
  #: [N/A] Unassigned
32011
32070
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
32012
- if 18244 <= value <= 18261:
32071
+ if 18244 <= value <= 18258:
32072
+ #: [N/A] Unassigned
32073
+ return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
32074
+ if 18260 <= value <= 18261:
32013
32075
  #: [N/A] Unassigned
32014
32076
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
32015
32077
  if 18263 <= value <= 18462:
@@ -32288,7 +32350,7 @@ class AppType(StrEnum):
32288
32350
  if 27000 <= value <= 27009:
32289
32351
  #: [N/A] FLEX LM (1-10)
32290
32352
  return extend_enum(cls, 'flex_lm_%d' % value, value, 'flex-lm', TransportProtocol.get('undefined'))
32291
- if 27011 <= value <= 27016:
32353
+ if 27011 <= value <= 27015:
32292
32354
  #: [N/A] Unassigned
32293
32355
  return extend_enum(cls, 'unassigned_%d' % value, value, 'unassigned', TransportProtocol.get('undefined'))
32294
32356
  if 27018 <= value <= 27344:
@@ -50,7 +50,7 @@ class EtherType(IntEnum):
50
50
  #: DLOG [Neil Sembower]
51
51
  DLOG_0x0661 = 0x0661
52
52
 
53
- #: Internet Protocol version 4 (IPv4) [RFC-ietf-intarea-rfc7042bis-11]
53
+ #: Internet Protocol version 4 (IPv4) [:rfc:`9542`]
54
54
  Internet_Protocol_version_4 = 0x0800
55
55
 
56
56
  #: X.75 Internet [Neil Sembower]
@@ -68,7 +68,7 @@ class EtherType(IntEnum):
68
68
  #: X.25 Level 3 [Neil Sembower]
69
69
  X_25_Level_3 = 0x0805
70
70
 
71
- #: Address Resolution Protocol (ARP) [RFC-ietf-intarea-rfc7042bis-11]
71
+ #: Address Resolution Protocol (ARP) [:rfc:`9542`]
72
72
  Address_Resolution_Protocol = 0x0806
73
73
 
74
74
  #: XNS Compatability [Neil Sembower]
@@ -318,7 +318,7 @@ class EtherType(IntEnum):
318
318
  Wellfleet_Communications = 0x80FF
319
319
 
320
320
  #: Customer VLAN Tag Type (C-Tag, formerly called the Q-Tag) (initially
321
- #: Wellfleet) [RFC-ietf-intarea-rfc7042bis-11]
321
+ #: Wellfleet) [:rfc:`9542`]
322
322
  Customer_VLAN_Tag_Type = 0x8100
323
323
 
324
324
  #: Hayes Microcomputers [Neil Sembower]
@@ -381,7 +381,7 @@ class EtherType(IntEnum):
381
381
  #: Delta Controls [Neil Sembower]
382
382
  Delta_Controls = 0x86DE
383
383
 
384
- #: Internet Protocol version 6 (IPv6) [RFC-ietf-intarea-rfc7042bis-11]
384
+ #: Internet Protocol version 6 (IPv6) [:rfc:`9542`]
385
385
  Internet_Protocol_version_6 = 0x86DD
386
386
 
387
387
  #: ATOMIC [Joe Touch]
@@ -396,17 +396,16 @@ class EtherType(IntEnum):
396
396
  #: Secure Data [:rfc:`1701`]
397
397
  Secure_Data = 0x876D
398
398
 
399
- #: IEEE Std 802.3 - Ethernet Passive Optical Network (EPON) [EPON][RFC-ietf-
400
- #: intarea-rfc7042bis-11]
399
+ #: IEEE Std 802.3 - Ethernet Passive Optical Network (EPON) [EPON][:rfc:`9542`]
401
400
  IEEE_Std_802_3_Ethernet_Passive_Optical_Network = 0x8808
402
401
 
403
402
  #: Slow Protocols (Link Aggregation, OAM, etc.) [IEEE]
404
403
  Slow_Protocols = 0x8809
405
404
 
406
- #: Point-to-Point Protocol (PPP) [RFC-ietf-intarea-rfc7042bis-11]
405
+ #: Point-to-Point Protocol (PPP) [:rfc:`9542`]
407
406
  Point_to_Point_Protocol = 0x880B
408
407
 
409
- #: General Switch Management Protocol (GSMP) [RFC-ietf-intarea-rfc7042bis-11]
408
+ #: General Switch Management Protocol (GSMP) [:rfc:`9542`]
410
409
  General_Switch_Management_Protocol = 0x880C
411
410
 
412
411
  #: Ethernet NIC hardware and software testing [Wind River]
@@ -418,8 +417,7 @@ class EtherType(IntEnum):
418
417
  #: MPLS with upstream-assigned label [:rfc:`5332`]
419
418
  MPLS_with_upstream_assigned_label = 0x8848
420
419
 
421
- #: Multicast Channel Allocation Protocol (MCAP) [RFC-ietf-intarea-
422
- #: rfc7042bis-11]
420
+ #: Multicast Channel Allocation Protocol (MCAP) [:rfc:`9542`]
423
421
  Multicast_Channel_Allocation_Protocol = 0x8861
424
422
 
425
423
  #: PPP over Ethernet (PPPoE) Discovery Stage [:rfc:`2516`]