pypcapkit 1.3.3.post1__cp313-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.
- pcapkit/__init__.py +126 -0
- pcapkit/__main__.py +138 -0
- pcapkit/all.py +136 -0
- pcapkit/const/__init__.py +81 -0
- pcapkit/const/arp/__init__.py +25 -0
- pcapkit/const/arp/hardware.py +181 -0
- pcapkit/const/arp/operation.py +131 -0
- pcapkit/const/ftp/__init__.py +25 -0
- pcapkit/const/ftp/command.py +309 -0
- pcapkit/const/ftp/return_code.py +304 -0
- pcapkit/const/hip/__init__.py +94 -0
- pcapkit/const/hip/certificate.py +77 -0
- pcapkit/const/hip/cipher.py +65 -0
- pcapkit/const/hip/di.py +59 -0
- pcapkit/const/hip/ecdsa_curve.py +59 -0
- pcapkit/const/hip/ecdsa_low_curve.py +56 -0
- pcapkit/const/hip/eddsa_curve.py +65 -0
- pcapkit/const/hip/esp_transform_suite.py +98 -0
- pcapkit/const/hip/group.py +86 -0
- pcapkit/const/hip/hi_algorithm.py +86 -0
- pcapkit/const/hip/hit_suite.py +68 -0
- pcapkit/const/hip/nat_traversal.py +62 -0
- pcapkit/const/hip/notify_message.py +200 -0
- pcapkit/const/hip/packet.py +89 -0
- pcapkit/const/hip/parameter.py +377 -0
- pcapkit/const/hip/registration.py +68 -0
- pcapkit/const/hip/registration_failure.py +84 -0
- pcapkit/const/hip/suite.py +71 -0
- pcapkit/const/hip/transport.py +59 -0
- pcapkit/const/http/__init__.py +39 -0
- pcapkit/const/http/error_code.py +95 -0
- pcapkit/const/http/frame.py +95 -0
- pcapkit/const/http/method.py +184 -0
- pcapkit/const/http/setting.py +96 -0
- pcapkit/const/http/status_code.py +294 -0
- pcapkit/const/ipv4/__init__.py +57 -0
- pcapkit/const/ipv4/classification_level.py +64 -0
- pcapkit/const/ipv4/option_class.py +55 -0
- pcapkit/const/ipv4/option_number.py +137 -0
- pcapkit/const/ipv4/protection_authority.py +63 -0
- pcapkit/const/ipv4/qs_function.py +51 -0
- pcapkit/const/ipv4/router_alert.py +251 -0
- pcapkit/const/ipv4/tos_del.py +51 -0
- pcapkit/const/ipv4/tos_ecn.py +55 -0
- pcapkit/const/ipv4/tos_pre.py +63 -0
- pcapkit/const/ipv4/tos_rel.py +51 -0
- pcapkit/const/ipv4/tos_thr.py +51 -0
- pcapkit/const/ipv4/ts_flag.py +53 -0
- pcapkit/const/ipv6/__init__.py +53 -0
- pcapkit/const/ipv6/extension_header.py +66 -0
- pcapkit/const/ipv6/option.py +137 -0
- pcapkit/const/ipv6/option_action.py +55 -0
- pcapkit/const/ipv6/qs_function.py +51 -0
- pcapkit/const/ipv6/router_alert.py +266 -0
- pcapkit/const/ipv6/routing.py +80 -0
- pcapkit/const/ipv6/seed_id.py +55 -0
- pcapkit/const/ipv6/smf_dpd_mode.py +51 -0
- pcapkit/const/ipv6/tagger_id.py +62 -0
- pcapkit/const/ipx/__init__.py +27 -0
- pcapkit/const/ipx/packet.py +72 -0
- pcapkit/const/ipx/socket.py +104 -0
- pcapkit/const/l2tp/__init__.py +21 -0
- pcapkit/const/l2tp/type.py +51 -0
- pcapkit/const/mh/__init__.py +204 -0
- pcapkit/const/mh/access_type.py +92 -0
- pcapkit/const/mh/ack_status_code.py +71 -0
- pcapkit/const/mh/ani_suboption.py +74 -0
- pcapkit/const/mh/auth_subtype.py +53 -0
- pcapkit/const/mh/binding_ack_flag.py +66 -0
- pcapkit/const/mh/binding_error.py +51 -0
- pcapkit/const/mh/binding_revocation.py +59 -0
- pcapkit/const/mh/binding_update_flag.py +81 -0
- pcapkit/const/mh/cga_extension.py +66 -0
- pcapkit/const/mh/cga_sec.py +57 -0
- pcapkit/const/mh/cga_type.py +68 -0
- pcapkit/const/mh/dhcp_support_mode.py +53 -0
- pcapkit/const/mh/dns_status_code.py +65 -0
- pcapkit/const/mh/dsmip6_tls_packet.py +62 -0
- pcapkit/const/mh/dsmipv6_home_address.py +74 -0
- pcapkit/const/mh/enumerating_algorithm.py +56 -0
- pcapkit/const/mh/fb_ack_status.py +62 -0
- pcapkit/const/mh/fb_action.py +71 -0
- pcapkit/const/mh/fb_indication_trigger.py +65 -0
- pcapkit/const/mh/fb_type.py +59 -0
- pcapkit/const/mh/flow_id_status.py +77 -0
- pcapkit/const/mh/flow_id_suboption.py +71 -0
- pcapkit/const/mh/handoff_type.py +71 -0
- pcapkit/const/mh/handover_ack_flag.py +54 -0
- pcapkit/const/mh/handover_ack_status.py +92 -0
- pcapkit/const/mh/handover_initiate_flag.py +57 -0
- pcapkit/const/mh/handover_initiate_status.py +62 -0
- pcapkit/const/mh/home_address_reply.py +71 -0
- pcapkit/const/mh/lla_code.py +63 -0
- pcapkit/const/mh/lma_mag_suboption.py +59 -0
- pcapkit/const/mh/mn_group_id.py +59 -0
- pcapkit/const/mh/mn_id_subtype.py +77 -0
- pcapkit/const/mh/operator_id.py +63 -0
- pcapkit/const/mh/option.py +260 -0
- pcapkit/const/mh/packet.py +119 -0
- pcapkit/const/mh/qos_attribute.py +89 -0
- pcapkit/const/mh/revocation_status_code.py +83 -0
- pcapkit/const/mh/revocation_trigger.py +86 -0
- pcapkit/const/mh/status_code.py +232 -0
- pcapkit/const/mh/traffic_selector.py +62 -0
- pcapkit/const/mh/upa_status.py +71 -0
- pcapkit/const/mh/upn_reason.py +80 -0
- pcapkit/const/ospf/__init__.py +27 -0
- pcapkit/const/ospf/authentication.py +65 -0
- pcapkit/const/ospf/packet.py +71 -0
- pcapkit/const/pcapng/__init__.py +51 -0
- pcapkit/const/pcapng/block_type.py +152 -0
- pcapkit/const/pcapng/filter_type.py +48 -0
- pcapkit/const/pcapng/hash_algorithm.py +59 -0
- pcapkit/const/pcapng/option_type.py +233 -0
- pcapkit/const/pcapng/record_type.py +57 -0
- pcapkit/const/pcapng/secrets_type.py +56 -0
- pcapkit/const/pcapng/verdict_type.py +53 -0
- pcapkit/const/reg/__init__.py +34 -0
- pcapkit/const/reg/apptype.py +32702 -0
- pcapkit/const/reg/ethertype.py +714 -0
- pcapkit/const/reg/linktype.py +902 -0
- pcapkit/const/reg/transtype.py +523 -0
- pcapkit/const/tcp/__init__.py +35 -0
- pcapkit/const/tcp/checksum.py +55 -0
- pcapkit/const/tcp/flags.py +73 -0
- pcapkit/const/tcp/mp_tcp_option.py +80 -0
- pcapkit/const/tcp/option.py +198 -0
- pcapkit/const/vlan/__init__.py +23 -0
- pcapkit/const/vlan/priority_level.py +71 -0
- pcapkit/corekit/__init__.py +59 -0
- pcapkit/corekit/fields/__init__.py +45 -0
- pcapkit/corekit/fields/collections.py +282 -0
- pcapkit/corekit/fields/field.py +269 -0
- pcapkit/corekit/fields/ipaddress.py +274 -0
- pcapkit/corekit/fields/misc.py +722 -0
- pcapkit/corekit/fields/numbers.py +375 -0
- pcapkit/corekit/fields/strings.py +245 -0
- pcapkit/corekit/infoclass.py +394 -0
- pcapkit/corekit/io.py +506 -0
- pcapkit/corekit/module.py +39 -0
- pcapkit/corekit/multidict.py +626 -0
- pcapkit/corekit/protochain.py +263 -0
- pcapkit/corekit/version.py +33 -0
- pcapkit/dumpkit/__init__.py +15 -0
- pcapkit/dumpkit/common.py +199 -0
- pcapkit/dumpkit/null.py +77 -0
- pcapkit/dumpkit/pcap.py +144 -0
- pcapkit/foundation/__init__.py +45 -0
- pcapkit/foundation/engines/__init__.py +36 -0
- pcapkit/foundation/engines/dpkt.py +230 -0
- pcapkit/foundation/engines/engine.py +194 -0
- pcapkit/foundation/engines/pcap.py +188 -0
- pcapkit/foundation/engines/pcapng.py +310 -0
- pcapkit/foundation/engines/pyshark.py +166 -0
- pcapkit/foundation/engines/scapy.py +161 -0
- pcapkit/foundation/extraction.py +915 -0
- pcapkit/foundation/reassembly/__init__.py +49 -0
- pcapkit/foundation/reassembly/data/__init__.py +48 -0
- pcapkit/foundation/reassembly/data/ip.py +117 -0
- pcapkit/foundation/reassembly/data/tcp.py +145 -0
- pcapkit/foundation/reassembly/ip.py +192 -0
- pcapkit/foundation/reassembly/ipv4.py +50 -0
- pcapkit/foundation/reassembly/ipv6.py +50 -0
- pcapkit/foundation/reassembly/reassembly.py +389 -0
- pcapkit/foundation/reassembly/tcp.py +249 -0
- pcapkit/foundation/registry/__init__.py +41 -0
- pcapkit/foundation/registry/foundation.py +327 -0
- pcapkit/foundation/registry/protocols.py +885 -0
- pcapkit/foundation/traceflow/__init__.py +44 -0
- pcapkit/foundation/traceflow/data/__init__.py +30 -0
- pcapkit/foundation/traceflow/data/tcp.py +105 -0
- pcapkit/foundation/traceflow/tcp.py +159 -0
- pcapkit/foundation/traceflow/traceflow.py +390 -0
- pcapkit/interface/__init__.py +22 -0
- pcapkit/interface/core.py +185 -0
- pcapkit/interface/misc.py +120 -0
- pcapkit/protocols/__init__.py +85 -0
- pcapkit/protocols/application/NotImplemented/bgp.py +0 -0
- pcapkit/protocols/application/NotImplemented/dhcp.py +0 -0
- pcapkit/protocols/application/NotImplemented/dhcpv6.py +0 -0
- pcapkit/protocols/application/NotImplemented/dns.py +0 -0
- pcapkit/protocols/application/NotImplemented/imap.py +0 -0
- pcapkit/protocols/application/NotImplemented/ldap.py +0 -0
- pcapkit/protocols/application/NotImplemented/mqtt.py +0 -0
- pcapkit/protocols/application/NotImplemented/nntp.py +0 -0
- pcapkit/protocols/application/NotImplemented/ntp.py +0 -0
- pcapkit/protocols/application/NotImplemented/onc_rpc.py +0 -0
- pcapkit/protocols/application/NotImplemented/pop.py +0 -0
- pcapkit/protocols/application/NotImplemented/rip.py +0 -0
- pcapkit/protocols/application/NotImplemented/rtp.py +0 -0
- pcapkit/protocols/application/NotImplemented/sip.py +0 -0
- pcapkit/protocols/application/NotImplemented/smtp.py +0 -0
- pcapkit/protocols/application/NotImplemented/snmp.py +0 -0
- pcapkit/protocols/application/NotImplemented/ssh.py +0 -0
- pcapkit/protocols/application/NotImplemented/telnet.py +0 -0
- pcapkit/protocols/application/NotImplemented/tls.py +0 -0
- pcapkit/protocols/application/NotImplemented/xmpp.py +0 -0
- pcapkit/protocols/application/__init__.py +34 -0
- pcapkit/protocols/application/application.py +114 -0
- pcapkit/protocols/application/ftp.py +206 -0
- pcapkit/protocols/application/http.py +176 -0
- pcapkit/protocols/application/httpv1.py +320 -0
- pcapkit/protocols/application/httpv2.py +1255 -0
- pcapkit/protocols/data/__init__.py +192 -0
- pcapkit/protocols/data/application/__init__.py +57 -0
- pcapkit/protocols/data/application/ftp.py +59 -0
- pcapkit/protocols/data/application/httpv1.py +79 -0
- pcapkit/protocols/data/application/httpv2.py +293 -0
- pcapkit/protocols/data/data.py +25 -0
- pcapkit/protocols/data/internet/__init__.py +298 -0
- pcapkit/protocols/data/internet/ah.py +31 -0
- pcapkit/protocols/data/internet/hip.py +804 -0
- pcapkit/protocols/data/internet/hopopt.py +351 -0
- pcapkit/protocols/data/internet/ipv4.py +369 -0
- pcapkit/protocols/data/internet/ipv6.py +67 -0
- pcapkit/protocols/data/internet/ipv6_frag.py +29 -0
- pcapkit/protocols/data/internet/ipv6_opts.py +368 -0
- pcapkit/protocols/data/internet/ipv6_route.py +86 -0
- pcapkit/protocols/data/internet/ipx.py +56 -0
- pcapkit/protocols/data/internet/mh.py +509 -0
- pcapkit/protocols/data/link/__init__.py +33 -0
- pcapkit/protocols/data/link/arp.py +74 -0
- pcapkit/protocols/data/link/ethernet.py +28 -0
- pcapkit/protocols/data/link/l2tp.py +63 -0
- pcapkit/protocols/data/link/ospf.py +58 -0
- pcapkit/protocols/data/link/vlan.py +42 -0
- pcapkit/protocols/data/misc/__init__.py +109 -0
- pcapkit/protocols/data/misc/null.py +18 -0
- pcapkit/protocols/data/misc/pcap/__init__.py +18 -0
- pcapkit/protocols/data/misc/pcap/frame.py +56 -0
- pcapkit/protocols/data/misc/pcap/header.py +53 -0
- pcapkit/protocols/data/misc/pcapng.py +925 -0
- pcapkit/protocols/data/misc/raw.py +25 -0
- pcapkit/protocols/data/protocol.py +32 -0
- pcapkit/protocols/data/transport/__init__.py +71 -0
- pcapkit/protocols/data/transport/tcp.py +555 -0
- pcapkit/protocols/data/transport/udp.py +29 -0
- pcapkit/protocols/internet/NotImplemented/ecn.py +0 -0
- pcapkit/protocols/internet/NotImplemented/esp.py +97 -0
- pcapkit/protocols/internet/NotImplemented/icmp.py +0 -0
- pcapkit/protocols/internet/NotImplemented/icmpv6.py +0 -0
- pcapkit/protocols/internet/NotImplemented/igmp.py +0 -0
- pcapkit/protocols/internet/NotImplemented/shim6.py +0 -0
- pcapkit/protocols/internet/__init__.py +43 -0
- pcapkit/protocols/internet/ah.py +275 -0
- pcapkit/protocols/internet/hip.py +4727 -0
- pcapkit/protocols/internet/hopopt.py +1879 -0
- pcapkit/protocols/internet/internet.py +240 -0
- pcapkit/protocols/internet/ip.py +51 -0
- pcapkit/protocols/internet/ipsec.py +50 -0
- pcapkit/protocols/internet/ipv4.py +1782 -0
- pcapkit/protocols/internet/ipv6.py +361 -0
- pcapkit/protocols/internet/ipv6_frag.py +258 -0
- pcapkit/protocols/internet/ipv6_opts.py +1890 -0
- pcapkit/protocols/internet/ipv6_route.py +710 -0
- pcapkit/protocols/internet/ipx.py +230 -0
- pcapkit/protocols/internet/mh.py +2764 -0
- pcapkit/protocols/link/NotImplemented/dsl.py +0 -0
- pcapkit/protocols/link/NotImplemented/eapol.py +1 -0
- pcapkit/protocols/link/NotImplemented/fddi.py +0 -0
- pcapkit/protocols/link/NotImplemented/isdn.py +0 -0
- pcapkit/protocols/link/NotImplemented/ndp.py +0 -0
- pcapkit/protocols/link/NotImplemented/ppp.py +0 -0
- pcapkit/protocols/link/__init__.py +35 -0
- pcapkit/protocols/link/arp.py +421 -0
- pcapkit/protocols/link/ethernet.py +248 -0
- pcapkit/protocols/link/l2tp.py +267 -0
- pcapkit/protocols/link/link.py +140 -0
- pcapkit/protocols/link/ospf.py +342 -0
- pcapkit/protocols/link/rarp.py +82 -0
- pcapkit/protocols/link/vlan.py +225 -0
- pcapkit/protocols/misc/__init__.py +37 -0
- pcapkit/protocols/misc/null.py +129 -0
- pcapkit/protocols/misc/pcap/__init__.py +17 -0
- pcapkit/protocols/misc/pcap/frame.py +478 -0
- pcapkit/protocols/misc/pcap/header.py +358 -0
- pcapkit/protocols/misc/pcapng.py +5520 -0
- pcapkit/protocols/misc/raw.py +180 -0
- pcapkit/protocols/protocol.py +1216 -0
- pcapkit/protocols/schema/__init__.py +140 -0
- pcapkit/protocols/schema/application/__init__.py +40 -0
- pcapkit/protocols/schema/application/ftp.py +21 -0
- pcapkit/protocols/schema/application/httpv1.py +21 -0
- pcapkit/protocols/schema/application/httpv2.py +384 -0
- pcapkit/protocols/schema/internet/__init__.py +294 -0
- pcapkit/protocols/schema/internet/ah.py +40 -0
- pcapkit/protocols/schema/internet/hip.py +1184 -0
- pcapkit/protocols/schema/internet/hopopt.py +679 -0
- pcapkit/protocols/schema/internet/ipv4.py +576 -0
- pcapkit/protocols/schema/internet/ipv6.py +63 -0
- pcapkit/protocols/schema/internet/ipv6_frag.py +48 -0
- pcapkit/protocols/schema/internet/ipv6_opts.py +680 -0
- pcapkit/protocols/schema/internet/ipv6_route.py +198 -0
- pcapkit/protocols/schema/internet/ipx.py +40 -0
- pcapkit/protocols/schema/internet/mh.py +718 -0
- pcapkit/protocols/schema/link/__init__.py +19 -0
- pcapkit/protocols/schema/link/arp.py +39 -0
- pcapkit/protocols/schema/link/ethernet.py +51 -0
- pcapkit/protocols/schema/link/l2tp.py +88 -0
- pcapkit/protocols/schema/link/ospf.py +90 -0
- pcapkit/protocols/schema/link/vlan.py +69 -0
- pcapkit/protocols/schema/misc/__init__.py +108 -0
- pcapkit/protocols/schema/misc/null.py +18 -0
- pcapkit/protocols/schema/misc/pcap/__init__.py +10 -0
- pcapkit/protocols/schema/misc/pcap/frame.py +51 -0
- pcapkit/protocols/schema/misc/pcap/header.py +63 -0
- pcapkit/protocols/schema/misc/pcapng.py +1689 -0
- pcapkit/protocols/schema/misc/raw.py +24 -0
- pcapkit/protocols/schema/schema.py +809 -0
- pcapkit/protocols/schema/transport/__init__.py +69 -0
- pcapkit/protocols/schema/transport/tcp.py +928 -0
- pcapkit/protocols/schema/transport/udp.py +90 -0
- pcapkit/protocols/transport/NotImplemented/dccp.py +0 -0
- pcapkit/protocols/transport/NotImplemented/rsvp.py +0 -0
- pcapkit/protocols/transport/NotImplemented/sctp.py +0 -0
- pcapkit/protocols/transport/__init__.py +27 -0
- pcapkit/protocols/transport/tcp.py +3025 -0
- pcapkit/protocols/transport/transport.py +158 -0
- pcapkit/protocols/transport/udp.py +214 -0
- pcapkit/py.typed +0 -0
- pcapkit/toolkit/__init__.py +57 -0
- pcapkit/toolkit/dpkt.py +306 -0
- pcapkit/toolkit/pcap.py +212 -0
- pcapkit/toolkit/pcapng.py +251 -0
- pcapkit/toolkit/pyshark.py +99 -0
- pcapkit/toolkit/scapy.py +297 -0
- pcapkit/utilities/__init__.py +20 -0
- pcapkit/utilities/compat.py +196 -0
- pcapkit/utilities/decorators.py +192 -0
- pcapkit/utilities/exceptions.py +365 -0
- pcapkit/utilities/logging.py +55 -0
- pcapkit/utilities/warnings.py +185 -0
- pcapkit/vendor/__init__.py +105 -0
- pcapkit/vendor/__main__.py +92 -0
- pcapkit/vendor/arp/__init__.py +27 -0
- pcapkit/vendor/arp/hardware.py +29 -0
- pcapkit/vendor/arp/operation.py +29 -0
- pcapkit/vendor/default.py +474 -0
- pcapkit/vendor/ftp/__init__.py +27 -0
- pcapkit/vendor/ftp/command.py +244 -0
- pcapkit/vendor/ftp/return_code.py +256 -0
- pcapkit/vendor/hip/__init__.py +94 -0
- pcapkit/vendor/hip/certificate.py +29 -0
- pcapkit/vendor/hip/cipher.py +29 -0
- pcapkit/vendor/hip/di.py +29 -0
- pcapkit/vendor/hip/ecdsa_curve.py +29 -0
- pcapkit/vendor/hip/ecdsa_low_curve.py +29 -0
- pcapkit/vendor/hip/eddsa_curve.py +85 -0
- pcapkit/vendor/hip/esp_transform_suite.py +29 -0
- pcapkit/vendor/hip/group.py +87 -0
- pcapkit/vendor/hip/hi_algorithm.py +29 -0
- pcapkit/vendor/hip/hit_suite.py +29 -0
- pcapkit/vendor/hip/nat_traversal.py +29 -0
- pcapkit/vendor/hip/notify_message.py +29 -0
- pcapkit/vendor/hip/packet.py +88 -0
- pcapkit/vendor/hip/parameter.py +88 -0
- pcapkit/vendor/hip/registration.py +29 -0
- pcapkit/vendor/hip/registration_failure.py +29 -0
- pcapkit/vendor/hip/suite.py +29 -0
- pcapkit/vendor/hip/transport.py +29 -0
- pcapkit/vendor/http/__init__.py +39 -0
- pcapkit/vendor/http/error_code.py +95 -0
- pcapkit/vendor/http/frame.py +91 -0
- pcapkit/vendor/http/method.py +167 -0
- pcapkit/vendor/http/setting.py +93 -0
- pcapkit/vendor/http/status_code.py +185 -0
- pcapkit/vendor/ipv4/__init__.py +57 -0
- pcapkit/vendor/ipv4/classification_level.py +91 -0
- pcapkit/vendor/ipv4/option_class.py +80 -0
- pcapkit/vendor/ipv4/option_number.py +105 -0
- pcapkit/vendor/ipv4/protection_authority.py +84 -0
- pcapkit/vendor/ipv4/qs_function.py +78 -0
- pcapkit/vendor/ipv4/router_alert.py +93 -0
- pcapkit/vendor/ipv4/tos_del.py +78 -0
- pcapkit/vendor/ipv4/tos_ecn.py +95 -0
- pcapkit/vendor/ipv4/tos_pre.py +84 -0
- pcapkit/vendor/ipv4/tos_rel.py +78 -0
- pcapkit/vendor/ipv4/tos_thr.py +77 -0
- pcapkit/vendor/ipv4/ts_flag.py +79 -0
- pcapkit/vendor/ipv6/__init__.py +53 -0
- pcapkit/vendor/ipv6/extension_header.py +171 -0
- pcapkit/vendor/ipv6/option.py +104 -0
- pcapkit/vendor/ipv6/option_action.py +90 -0
- pcapkit/vendor/ipv6/qs_function.py +78 -0
- pcapkit/vendor/ipv6/router_alert.py +93 -0
- pcapkit/vendor/ipv6/routing.py +87 -0
- pcapkit/vendor/ipv6/seed_id.py +81 -0
- pcapkit/vendor/ipv6/smf_dpd_mode.py +78 -0
- pcapkit/vendor/ipv6/tagger_id.py +81 -0
- pcapkit/vendor/ipx/__init__.py +37 -0
- pcapkit/vendor/ipx/packet.py +123 -0
- pcapkit/vendor/ipx/socket.py +125 -0
- pcapkit/vendor/l2tp/__init__.py +21 -0
- pcapkit/vendor/l2tp/type.py +78 -0
- pcapkit/vendor/mh/__init__.py +204 -0
- pcapkit/vendor/mh/access_type.py +87 -0
- pcapkit/vendor/mh/ack_status_code.py +88 -0
- pcapkit/vendor/mh/ani_suboption.py +88 -0
- pcapkit/vendor/mh/auth_subtype.py +83 -0
- pcapkit/vendor/mh/binding_ack_flag.py +148 -0
- pcapkit/vendor/mh/binding_error.py +78 -0
- pcapkit/vendor/mh/binding_revocation.py +87 -0
- pcapkit/vendor/mh/binding_update_flag.py +147 -0
- pcapkit/vendor/mh/cga_extension.py +91 -0
- pcapkit/vendor/mh/cga_sec.py +91 -0
- pcapkit/vendor/mh/cga_type.py +74 -0
- pcapkit/vendor/mh/dhcp_support_mode.py +77 -0
- pcapkit/vendor/mh/dns_status_code.py +87 -0
- pcapkit/vendor/mh/dsmip6_tls_packet.py +87 -0
- pcapkit/vendor/mh/dsmipv6_home_address.py +87 -0
- pcapkit/vendor/mh/enumerating_algorithm.py +82 -0
- pcapkit/vendor/mh/fb_ack_status.py +87 -0
- pcapkit/vendor/mh/fb_action.py +88 -0
- pcapkit/vendor/mh/fb_indication_trigger.py +87 -0
- pcapkit/vendor/mh/fb_type.py +88 -0
- pcapkit/vendor/mh/flow_id_status.py +87 -0
- pcapkit/vendor/mh/flow_id_suboption.py +87 -0
- pcapkit/vendor/mh/handoff_type.py +87 -0
- pcapkit/vendor/mh/handover_ack_flag.py +143 -0
- pcapkit/vendor/mh/handover_ack_status.py +87 -0
- pcapkit/vendor/mh/handover_initiate_flag.py +143 -0
- pcapkit/vendor/mh/handover_initiate_status.py +87 -0
- pcapkit/vendor/mh/home_address_reply.py +87 -0
- pcapkit/vendor/mh/lla_code.py +97 -0
- pcapkit/vendor/mh/lma_mag_suboption.py +88 -0
- pcapkit/vendor/mh/mn_group_id.py +87 -0
- pcapkit/vendor/mh/mn_id_subtype.py +87 -0
- pcapkit/vendor/mh/operator_id.py +87 -0
- pcapkit/vendor/mh/option.py +83 -0
- pcapkit/vendor/mh/packet.py +82 -0
- pcapkit/vendor/mh/qos_attribute.py +87 -0
- pcapkit/vendor/mh/revocation_status_code.py +87 -0
- pcapkit/vendor/mh/revocation_trigger.py +87 -0
- pcapkit/vendor/mh/status_code.py +91 -0
- pcapkit/vendor/mh/traffic_selector.py +87 -0
- pcapkit/vendor/mh/upa_status.py +87 -0
- pcapkit/vendor/mh/upn_reason.py +87 -0
- pcapkit/vendor/ospf/__init__.py +27 -0
- pcapkit/vendor/ospf/authentication.py +29 -0
- pcapkit/vendor/ospf/packet.py +29 -0
- pcapkit/vendor/pcapng/__init__.py +51 -0
- pcapkit/vendor/pcapng/block_type.py +94 -0
- pcapkit/vendor/pcapng/filter_type.py +77 -0
- pcapkit/vendor/pcapng/hash_algorithm.py +82 -0
- pcapkit/vendor/pcapng/option_type.py +287 -0
- pcapkit/vendor/pcapng/record_type.py +81 -0
- pcapkit/vendor/pcapng/secrets_type.py +81 -0
- pcapkit/vendor/pcapng/verdict_type.py +79 -0
- pcapkit/vendor/reg/__init__.py +34 -0
- pcapkit/vendor/reg/apptype.py +338 -0
- pcapkit/vendor/reg/ethertype.py +121 -0
- pcapkit/vendor/reg/linktype.py +110 -0
- pcapkit/vendor/reg/transtype.py +111 -0
- pcapkit/vendor/tcp/__init__.py +35 -0
- pcapkit/vendor/tcp/checksum.py +80 -0
- pcapkit/vendor/tcp/flags.py +149 -0
- pcapkit/vendor/tcp/mp_tcp_option.py +90 -0
- pcapkit/vendor/tcp/option.py +103 -0
- pcapkit/vendor/vlan/__init__.py +23 -0
- pcapkit/vendor/vlan/priority_level.py +97 -0
- pypcapkit-1.3.3.post1.dist-info/LICENSE +29 -0
- pypcapkit-1.3.3.post1.dist-info/METADATA +236 -0
- pypcapkit-1.3.3.post1.dist-info/RECORD +466 -0
- pypcapkit-1.3.3.post1.dist-info/WHEEL +5 -0
- pypcapkit-1.3.3.post1.dist-info/entry_points.txt +3 -0
- pypcapkit-1.3.3.post1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,53 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=unused-import
|
3
|
+
""":class:`~pcapkit.protocols.internet.ipv6.IPv6` Constant Enumerations
|
4
|
+
===========================================================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.ipv6
|
7
|
+
|
8
|
+
This module contains all constant enumerations of
|
9
|
+
:class:`~pcapkit.protocols.internet.ipv6.IPv6` implementations. Available
|
10
|
+
enumerations include:
|
11
|
+
|
12
|
+
.. list-table::
|
13
|
+
|
14
|
+
* - :class:`IPv6_Extension_Header <pcapkit.const.ipv6.extension_header.ExtensionHeader>`
|
15
|
+
- IPv6 Extension Header Types [*]_
|
16
|
+
* - :class:`IPv6_Option <pcapkit.const.ipv6.option.Option>`
|
17
|
+
- Destination Options and Hop-by-Hop Options [*]_
|
18
|
+
* - :class:`IPv6_OptionAction <pcapkit.const.ipv6.option_action.OptionAction>`
|
19
|
+
- Option Actions [*]_
|
20
|
+
* - :class:`IPv6_QSFunction <pcapkit.const.ipv6.qs_function.QSFunction>`
|
21
|
+
- IPv6 QS Functions
|
22
|
+
* - :class:`IPv6_RouterAlert <pcapkit.const.ipv6.router_alert.RouterAlert>`
|
23
|
+
- IPv6 Router Alert Option Values [*]_
|
24
|
+
* - :class:`IPv6_Routing <pcapkit.const.ipv6.routing.Routing>`
|
25
|
+
- Routing Types [*]_
|
26
|
+
* - :class:`IPv6_SeedID <pcapkit.const.ipv6.seed_id.SeedID>`
|
27
|
+
- Seed-ID Types
|
28
|
+
* - :class:`IPv6_SMFDPDMode <pcapkit.const.ipv6.smf_dpd_mode.SMFDPDMode>`
|
29
|
+
- Simplified Multicast Forwarding Duplicate Packet Detection (``SMF_DPD``) Options
|
30
|
+
* - :class:`IPv6_TaggerID <pcapkit.const.ipv6.tagger_id.TaggerID>`
|
31
|
+
- Tagger-ID Types [*]_
|
32
|
+
|
33
|
+
.. [*] https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#extension-header
|
34
|
+
.. [*] https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-2
|
35
|
+
.. [*] https://www.rfc-editor.org/rfc/rfc8200#section-4.2
|
36
|
+
.. [*] https://www.iana.org/assignments/ipv6-routeralert-values/ipv6-routeralert-values.xhtml#ipv6-routeralert-values-1
|
37
|
+
.. [*] https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-3
|
38
|
+
.. [*] https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#taggerId-types
|
39
|
+
|
40
|
+
"""
|
41
|
+
|
42
|
+
from pcapkit.const.ipv6.extension_header import ExtensionHeader as IPv6_ExtensionHeader
|
43
|
+
from pcapkit.const.ipv6.option import Option as IPv6_Option
|
44
|
+
from pcapkit.const.ipv6.option_action import OptionAction as IPv6_OptionAction
|
45
|
+
from pcapkit.const.ipv6.qs_function import QSFunction as IPv6_QSFunction
|
46
|
+
from pcapkit.const.ipv6.router_alert import RouterAlert as IPv6_RouterAlert
|
47
|
+
from pcapkit.const.ipv6.routing import Routing as IPv6_Routing
|
48
|
+
from pcapkit.const.ipv6.seed_id import SeedID as IPv6_SeedID
|
49
|
+
from pcapkit.const.ipv6.smf_dpd_mode import SMFDPDMode as IPv6_SMFDPDMode
|
50
|
+
from pcapkit.const.ipv6.tagger_id import TaggerID as IPv6_TaggerID
|
51
|
+
|
52
|
+
__all__ = ['IPv6_ExtensionHeader', 'IPv6_Option', 'IPv6_QSFunction', 'IPv6_RouterAlert', 'IPv6_Routing',
|
53
|
+
'IPv6_SeedID', 'IPv6_SMFDPDMode', 'IPv6_TaggerID', 'IPv6_OptionAction']
|
@@ -0,0 +1,66 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""IPv6 Extension Header Types
|
4
|
+
=================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.ipv6.extension_header
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **IPv6 Extension Header Types**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.ipv6.extension_header.ExtensionHeader`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['ExtensionHeader']
|
16
|
+
|
17
|
+
|
18
|
+
class ExtensionHeader(IntEnum):
|
19
|
+
"""[ExtensionHeader] IPv6 Extension Header Types"""
|
20
|
+
|
21
|
+
#: HOPOPT, IPv6 Hop-by-Hop Option [:rfc:`8200`]
|
22
|
+
HOPOPT = 0
|
23
|
+
|
24
|
+
#: IPv6-Route, Routing Header for IPv6 [Steve Deering]
|
25
|
+
IPv6_Route = 43
|
26
|
+
|
27
|
+
#: IPv6-Frag, Fragment Header for IPv6 [Steve Deering]
|
28
|
+
IPv6_Frag = 44
|
29
|
+
|
30
|
+
#: ESP, Encap Security Payload [:rfc:`4303`]
|
31
|
+
ESP = 50
|
32
|
+
|
33
|
+
#: AH, Authentication Header [:rfc:`4302`]
|
34
|
+
AH = 51
|
35
|
+
|
36
|
+
#: IPv6-Opts, Destination Options for IPv6 [:rfc:`8200`]
|
37
|
+
IPv6_Opts = 60
|
38
|
+
|
39
|
+
#: Mobility Header [:rfc:`6275`]
|
40
|
+
Mobility_Header = 135
|
41
|
+
|
42
|
+
#: HIP, Host Identity Protocol [:rfc:`7401`]
|
43
|
+
HIP = 139
|
44
|
+
|
45
|
+
#: Shim6, Shim6 Protocol [:rfc:`5533`]
|
46
|
+
Shim6 = 140
|
47
|
+
|
48
|
+
#: Use for experimentation and testing [:rfc:`3692`]
|
49
|
+
Use_for_experimentation_and_testing_253 = 253
|
50
|
+
|
51
|
+
#: Use for experimentation and testing [:rfc:`3692`]
|
52
|
+
Use_for_experimentation_and_testing_254 = 254
|
53
|
+
|
54
|
+
@staticmethod
|
55
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'ExtensionHeader':
|
56
|
+
"""Backport support for original codes.
|
57
|
+
|
58
|
+
Args:
|
59
|
+
key: Key to get enum item.
|
60
|
+
default: Default value if not found.
|
61
|
+
|
62
|
+
:meta private:
|
63
|
+
"""
|
64
|
+
if isinstance(key, int):
|
65
|
+
return ExtensionHeader(key)
|
66
|
+
return ExtensionHeader[key] # type: ignore[misc]
|
@@ -0,0 +1,137 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Destination Options and Hop-by-Hop Options
|
4
|
+
================================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.ipv6.option
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Destination Options and Hop-by-Hop Options**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.ipv6.option.Option`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['Option']
|
16
|
+
|
17
|
+
|
18
|
+
class Option(IntEnum):
|
19
|
+
"""[Option] Destination Options and Hop-by-Hop Options"""
|
20
|
+
|
21
|
+
#: Pad1 [:rfc:`2460`]
|
22
|
+
Pad1 = 0x00
|
23
|
+
|
24
|
+
#: PadN [:rfc:`2460`]
|
25
|
+
PadN = 0x01
|
26
|
+
|
27
|
+
#: Jumbo Payload [:rfc:`2675`]
|
28
|
+
Jumbo_Payload = 0xC2
|
29
|
+
|
30
|
+
#: RPL Option [:rfc:`9008`]
|
31
|
+
RPL_Option_0x23 = 0x23
|
32
|
+
|
33
|
+
#: RPL Option (DEPRECATED) [:rfc:`6553`][:rfc:`9008`]
|
34
|
+
RPL_Option_0x63 = 0x63
|
35
|
+
|
36
|
+
#: Tunnel Encapsulation Limit [:rfc:`2473`]
|
37
|
+
Tunnel_Encapsulation_Limit = 0x04
|
38
|
+
|
39
|
+
#: Router Alert [:rfc:`2711`]
|
40
|
+
Router_Alert = 0x05
|
41
|
+
|
42
|
+
#: Quick-Start [:rfc:`4782`][RFC Errata 2034]
|
43
|
+
Quick_Start = 0x26
|
44
|
+
|
45
|
+
#: CALIPSO [:rfc:`5570`]
|
46
|
+
CALIPSO = 0x07
|
47
|
+
|
48
|
+
#: SMF_DPD [:rfc:`6621`]
|
49
|
+
SMF_DPD = 0x08
|
50
|
+
|
51
|
+
#: Home Address [:rfc:`6275`]
|
52
|
+
Home_Address = 0xC9
|
53
|
+
|
54
|
+
#: Endpoint Identification (DEPRECATED) [CHARLES LYNN]
|
55
|
+
Endpoint_Identification = 0x8A
|
56
|
+
|
57
|
+
#: ILNP Nonce [:rfc:`6744`]
|
58
|
+
ILNP_Nonce = 0x8B
|
59
|
+
|
60
|
+
#: Line-Identification Option [:rfc:`6788`]
|
61
|
+
Line_Identification_Option = 0x8C
|
62
|
+
|
63
|
+
#: Deprecated [:rfc:`7731`]
|
64
|
+
Deprecated = 0x4D
|
65
|
+
|
66
|
+
#: MPL Option [:rfc:`7731`]
|
67
|
+
MPL_Option = 0x6D
|
68
|
+
|
69
|
+
#: IP_DFF [:rfc:`6971`]
|
70
|
+
IP_DFF = 0xEE
|
71
|
+
|
72
|
+
#: Performance and Diagnostic Metrics (PDM) [:rfc:`8250`]
|
73
|
+
PDM = 0x0F
|
74
|
+
|
75
|
+
#: Minimum Path MTU Hop-by-Hop Option [:rfc:`9268`]
|
76
|
+
Minimum_Path_MTU_Hop_by_Hop_Option = 0x30
|
77
|
+
|
78
|
+
#: IOAM Destination Option and IOAM Hop-by-Hop Option [:rfc:`9486`]
|
79
|
+
IOAM_Destination_Option_and_IOAM_Hop_by_Hop_Option_0x11 = 0x11
|
80
|
+
|
81
|
+
#: IOAM Destination Option and IOAM Hop-by-Hop Option [:rfc:`9486`]
|
82
|
+
IOAM_Destination_Option_and_IOAM_Hop_by_Hop_Option_0x31 = 0x31
|
83
|
+
|
84
|
+
#: AltMark [:rfc:`9343`]
|
85
|
+
AltMark = 0x12
|
86
|
+
|
87
|
+
#: RFC3692-style Experiment [:rfc:`4727`]
|
88
|
+
RFC3692_style_Experiment_0x1E = 0x1E
|
89
|
+
|
90
|
+
#: RFC3692-style Experiment [:rfc:`4727`]
|
91
|
+
RFC3692_style_Experiment_0x3E = 0x3E
|
92
|
+
|
93
|
+
#: RFC3692-style Experiment [:rfc:`4727`]
|
94
|
+
RFC3692_style_Experiment_0x5E = 0x5E
|
95
|
+
|
96
|
+
#: RFC3692-style Experiment [:rfc:`4727`]
|
97
|
+
RFC3692_style_Experiment_0x7E = 0x7E
|
98
|
+
|
99
|
+
#: RFC3692-style Experiment [:rfc:`4727`]
|
100
|
+
RFC3692_style_Experiment_0x9E = 0x9E
|
101
|
+
|
102
|
+
#: RFC3692-style Experiment [:rfc:`4727`]
|
103
|
+
RFC3692_style_Experiment_0xBE = 0xBE
|
104
|
+
|
105
|
+
#: RFC3692-style Experiment [:rfc:`4727`]
|
106
|
+
RFC3692_style_Experiment_0xDE = 0xDE
|
107
|
+
|
108
|
+
#: RFC3692-style Experiment [:rfc:`4727`]
|
109
|
+
RFC3692_style_Experiment_0xFE = 0xFE
|
110
|
+
|
111
|
+
@staticmethod
|
112
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'Option':
|
113
|
+
"""Backport support for original codes.
|
114
|
+
|
115
|
+
Args:
|
116
|
+
key: Key to get enum item.
|
117
|
+
default: Default value if not found.
|
118
|
+
|
119
|
+
:meta private:
|
120
|
+
"""
|
121
|
+
if isinstance(key, int):
|
122
|
+
return Option(key)
|
123
|
+
if key not in Option._member_map_: # pylint: disable=no-member
|
124
|
+
return extend_enum(Option, key, default)
|
125
|
+
return Option[key] # type: ignore[misc]
|
126
|
+
|
127
|
+
@classmethod
|
128
|
+
def _missing_(cls, value: 'int') -> 'Option':
|
129
|
+
"""Lookup function used when value is not found.
|
130
|
+
|
131
|
+
Args:
|
132
|
+
value: Value to get enum item.
|
133
|
+
|
134
|
+
"""
|
135
|
+
if not (isinstance(value, int) and 0x00 <= value <= 0xFF):
|
136
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
137
|
+
return extend_enum(cls, 'Unassigned_0x%s' % hex(value)[2:].upper().zfill(2), value)
|
@@ -0,0 +1,55 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Option Actions
|
4
|
+
====================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.ipv6.option_action
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Option Actions**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.ipv6.option_action.OptionAction`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['OptionAction']
|
16
|
+
|
17
|
+
|
18
|
+
class OptionAction(IntEnum):
|
19
|
+
"""[OptionAction] Option Actions"""
|
20
|
+
|
21
|
+
skip = 0
|
22
|
+
|
23
|
+
discard = 1
|
24
|
+
|
25
|
+
discard_icmp_any = 2
|
26
|
+
|
27
|
+
discard_icmp_unicast = 3
|
28
|
+
|
29
|
+
@staticmethod
|
30
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'OptionAction':
|
31
|
+
"""Backport support for original codes.
|
32
|
+
|
33
|
+
Args:
|
34
|
+
key: Key to get enum item.
|
35
|
+
default: Default value if not found.
|
36
|
+
|
37
|
+
:meta private:
|
38
|
+
"""
|
39
|
+
if isinstance(key, int):
|
40
|
+
return OptionAction(key)
|
41
|
+
if key not in OptionAction._member_map_: # pylint: disable=no-member
|
42
|
+
return extend_enum(OptionAction, key, default)
|
43
|
+
return OptionAction[key] # type: ignore[misc]
|
44
|
+
|
45
|
+
@classmethod
|
46
|
+
def _missing_(cls, value: 'int') -> 'OptionAction':
|
47
|
+
"""Lookup function used when value is not found.
|
48
|
+
|
49
|
+
Args:
|
50
|
+
value: Value to get enum item.
|
51
|
+
|
52
|
+
"""
|
53
|
+
if not (isinstance(value, int) and 0 <= value <= 3):
|
54
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
55
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
@@ -0,0 +1,51 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""QS Functions
|
4
|
+
==================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.ipv6.qs_function
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **QS Functions**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.ipv6.qs_function.QSFunction`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['QSFunction']
|
16
|
+
|
17
|
+
|
18
|
+
class QSFunction(IntEnum):
|
19
|
+
"""[QSFunction] QS Functions"""
|
20
|
+
|
21
|
+
Quick_Start_Request = 0
|
22
|
+
|
23
|
+
Report_of_Approved_Rate = 8
|
24
|
+
|
25
|
+
@staticmethod
|
26
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'QSFunction':
|
27
|
+
"""Backport support for original codes.
|
28
|
+
|
29
|
+
Args:
|
30
|
+
key: Key to get enum item.
|
31
|
+
default: Default value if not found.
|
32
|
+
|
33
|
+
:meta private:
|
34
|
+
"""
|
35
|
+
if isinstance(key, int):
|
36
|
+
return QSFunction(key)
|
37
|
+
if key not in QSFunction._member_map_: # pylint: disable=no-member
|
38
|
+
return extend_enum(QSFunction, key, default)
|
39
|
+
return QSFunction[key] # type: ignore[misc]
|
40
|
+
|
41
|
+
@classmethod
|
42
|
+
def _missing_(cls, value: 'int') -> 'QSFunction':
|
43
|
+
"""Lookup function used when value is not found.
|
44
|
+
|
45
|
+
Args:
|
46
|
+
value: Value to get enum item.
|
47
|
+
|
48
|
+
"""
|
49
|
+
if not (isinstance(value, int) and 0 <= value <= 8):
|
50
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
51
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
@@ -0,0 +1,266 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""IPv6 Router Alert Option Values
|
4
|
+
=====================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.ipv6.router_alert
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **IPv6 Router Alert Option Values**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.ipv6.router_alert.RouterAlert`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['RouterAlert']
|
16
|
+
|
17
|
+
|
18
|
+
class RouterAlert(IntEnum):
|
19
|
+
"""[RouterAlert] IPv6 Router Alert Option Values"""
|
20
|
+
|
21
|
+
#: Datagram contains a Multicast Listener Discovery message [:rfc:`2710`]
|
22
|
+
Datagram_contains_a_Multicast_Listener_Discovery_message = 0
|
23
|
+
|
24
|
+
#: Datagram contains RSVP message [:rfc:`2711`]
|
25
|
+
Datagram_contains_RSVP_message = 1
|
26
|
+
|
27
|
+
#: Datagram contains an Active Networks message [:rfc:`2711`]
|
28
|
+
Datagram_contains_an_Active_Networks_message = 2
|
29
|
+
|
30
|
+
#: Reserved [:rfc:`5350`]
|
31
|
+
Reserved_3 = 3
|
32
|
+
|
33
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
34
|
+
Aggregated_Reservation_Nesting_Level_0 = 4
|
35
|
+
|
36
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
37
|
+
Aggregated_Reservation_Nesting_Level_1 = 5
|
38
|
+
|
39
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
40
|
+
Aggregated_Reservation_Nesting_Level_2 = 6
|
41
|
+
|
42
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
43
|
+
Aggregated_Reservation_Nesting_Level_3 = 7
|
44
|
+
|
45
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
46
|
+
Aggregated_Reservation_Nesting_Level_4 = 8
|
47
|
+
|
48
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
49
|
+
Aggregated_Reservation_Nesting_Level_5 = 9
|
50
|
+
|
51
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
52
|
+
Aggregated_Reservation_Nesting_Level_6 = 10
|
53
|
+
|
54
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
55
|
+
Aggregated_Reservation_Nesting_Level_7 = 11
|
56
|
+
|
57
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
58
|
+
Aggregated_Reservation_Nesting_Level_8 = 12
|
59
|
+
|
60
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
61
|
+
Aggregated_Reservation_Nesting_Level_9 = 13
|
62
|
+
|
63
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
64
|
+
Aggregated_Reservation_Nesting_Level_10 = 14
|
65
|
+
|
66
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
67
|
+
Aggregated_Reservation_Nesting_Level_11 = 15
|
68
|
+
|
69
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
70
|
+
Aggregated_Reservation_Nesting_Level_12 = 16
|
71
|
+
|
72
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
73
|
+
Aggregated_Reservation_Nesting_Level_13 = 17
|
74
|
+
|
75
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
76
|
+
Aggregated_Reservation_Nesting_Level_14 = 18
|
77
|
+
|
78
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
79
|
+
Aggregated_Reservation_Nesting_Level_15 = 19
|
80
|
+
|
81
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
82
|
+
Aggregated_Reservation_Nesting_Level_16 = 20
|
83
|
+
|
84
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
85
|
+
Aggregated_Reservation_Nesting_Level_17 = 21
|
86
|
+
|
87
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
88
|
+
Aggregated_Reservation_Nesting_Level_18 = 22
|
89
|
+
|
90
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
91
|
+
Aggregated_Reservation_Nesting_Level_19 = 23
|
92
|
+
|
93
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
94
|
+
Aggregated_Reservation_Nesting_Level_20 = 24
|
95
|
+
|
96
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
97
|
+
Aggregated_Reservation_Nesting_Level_21 = 25
|
98
|
+
|
99
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
100
|
+
Aggregated_Reservation_Nesting_Level_22 = 26
|
101
|
+
|
102
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
103
|
+
Aggregated_Reservation_Nesting_Level_23 = 27
|
104
|
+
|
105
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
106
|
+
Aggregated_Reservation_Nesting_Level_24 = 28
|
107
|
+
|
108
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
109
|
+
Aggregated_Reservation_Nesting_Level_25 = 29
|
110
|
+
|
111
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
112
|
+
Aggregated_Reservation_Nesting_Level_26 = 30
|
113
|
+
|
114
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
115
|
+
Aggregated_Reservation_Nesting_Level_27 = 31
|
116
|
+
|
117
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
118
|
+
Aggregated_Reservation_Nesting_Level_28 = 32
|
119
|
+
|
120
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
121
|
+
Aggregated_Reservation_Nesting_Level_29 = 33
|
122
|
+
|
123
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
124
|
+
Aggregated_Reservation_Nesting_Level_30 = 34
|
125
|
+
|
126
|
+
#: Aggregated Reservation Nesting Level [:rfc:`3175`]
|
127
|
+
Aggregated_Reservation_Nesting_Level_31 = 35
|
128
|
+
|
129
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
130
|
+
QoS_NSLP_Aggregation_Level_0 = 36
|
131
|
+
|
132
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
133
|
+
QoS_NSLP_Aggregation_Level_1 = 37
|
134
|
+
|
135
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
136
|
+
QoS_NSLP_Aggregation_Level_2 = 38
|
137
|
+
|
138
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
139
|
+
QoS_NSLP_Aggregation_Level_3 = 39
|
140
|
+
|
141
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
142
|
+
QoS_NSLP_Aggregation_Level_4 = 40
|
143
|
+
|
144
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
145
|
+
QoS_NSLP_Aggregation_Level_5 = 41
|
146
|
+
|
147
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
148
|
+
QoS_NSLP_Aggregation_Level_6 = 42
|
149
|
+
|
150
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
151
|
+
QoS_NSLP_Aggregation_Level_7 = 43
|
152
|
+
|
153
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
154
|
+
QoS_NSLP_Aggregation_Level_8 = 44
|
155
|
+
|
156
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
157
|
+
QoS_NSLP_Aggregation_Level_9 = 45
|
158
|
+
|
159
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
160
|
+
QoS_NSLP_Aggregation_Level_10 = 46
|
161
|
+
|
162
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
163
|
+
QoS_NSLP_Aggregation_Level_11 = 47
|
164
|
+
|
165
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
166
|
+
QoS_NSLP_Aggregation_Level_12 = 48
|
167
|
+
|
168
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
169
|
+
QoS_NSLP_Aggregation_Level_13 = 49
|
170
|
+
|
171
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
172
|
+
QoS_NSLP_Aggregation_Level_14 = 50
|
173
|
+
|
174
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
175
|
+
QoS_NSLP_Aggregation_Level_15 = 51
|
176
|
+
|
177
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
178
|
+
QoS_NSLP_Aggregation_Level_16 = 52
|
179
|
+
|
180
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
181
|
+
QoS_NSLP_Aggregation_Level_17 = 53
|
182
|
+
|
183
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
184
|
+
QoS_NSLP_Aggregation_Level_18 = 54
|
185
|
+
|
186
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
187
|
+
QoS_NSLP_Aggregation_Level_19 = 55
|
188
|
+
|
189
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
190
|
+
QoS_NSLP_Aggregation_Level_20 = 56
|
191
|
+
|
192
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
193
|
+
QoS_NSLP_Aggregation_Level_21 = 57
|
194
|
+
|
195
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
196
|
+
QoS_NSLP_Aggregation_Level_22 = 58
|
197
|
+
|
198
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
199
|
+
QoS_NSLP_Aggregation_Level_23 = 59
|
200
|
+
|
201
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
202
|
+
QoS_NSLP_Aggregation_Level_24 = 60
|
203
|
+
|
204
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
205
|
+
QoS_NSLP_Aggregation_Level_25 = 61
|
206
|
+
|
207
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
208
|
+
QoS_NSLP_Aggregation_Level_26 = 62
|
209
|
+
|
210
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
211
|
+
QoS_NSLP_Aggregation_Level_27 = 63
|
212
|
+
|
213
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
214
|
+
QoS_NSLP_Aggregation_Level_28 = 64
|
215
|
+
|
216
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
217
|
+
QoS_NSLP_Aggregation_Level_29 = 65
|
218
|
+
|
219
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
220
|
+
QoS_NSLP_Aggregation_Level_30 = 66
|
221
|
+
|
222
|
+
#: QoS NSLP Aggregation Levels 0-31 [:rfc:`5974`]
|
223
|
+
QoS_NSLP_Aggregation_Level_31 = 67
|
224
|
+
|
225
|
+
#: NSIS NATFW NSLP [:rfc:`5973`]
|
226
|
+
NSIS_NATFW_NSLP = 68
|
227
|
+
|
228
|
+
#: MPLS OAM (DEPRECATED) [:rfc:`7506`][:rfc:`9570`]
|
229
|
+
MPLS_OAM = 69
|
230
|
+
|
231
|
+
#: Reserved [The Internet Assigned Numbers Authority]
|
232
|
+
Reserved_65535 = 65535
|
233
|
+
|
234
|
+
@staticmethod
|
235
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'RouterAlert':
|
236
|
+
"""Backport support for original codes.
|
237
|
+
|
238
|
+
Args:
|
239
|
+
key: Key to get enum item.
|
240
|
+
default: Default value if not found.
|
241
|
+
|
242
|
+
:meta private:
|
243
|
+
"""
|
244
|
+
if isinstance(key, int):
|
245
|
+
return RouterAlert(key)
|
246
|
+
if key not in RouterAlert._member_map_: # pylint: disable=no-member
|
247
|
+
return extend_enum(RouterAlert, key, default)
|
248
|
+
return RouterAlert[key] # type: ignore[misc]
|
249
|
+
|
250
|
+
@classmethod
|
251
|
+
def _missing_(cls, value: 'int') -> 'RouterAlert':
|
252
|
+
"""Lookup function used when value is not found.
|
253
|
+
|
254
|
+
Args:
|
255
|
+
value: Value to get enum item.
|
256
|
+
|
257
|
+
"""
|
258
|
+
if not (isinstance(value, int) and 0 <= value <= 65535):
|
259
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
260
|
+
if 70 <= value <= 65502:
|
261
|
+
#: Unassigned
|
262
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
263
|
+
if 65503 <= value <= 65534:
|
264
|
+
#: Reserved for experimental use [:rfc:`5350`]
|
265
|
+
return extend_enum(cls, 'Reserved for experimental use_%d' % value, value)
|
266
|
+
return super()._missing_(value)
|