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,71 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Flow Binding Action Values
|
4
|
+
================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.fb_action
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Flow Binding Action Values**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.fb_action.FlowBindingAction`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['FlowBindingAction']
|
16
|
+
|
17
|
+
|
18
|
+
class FlowBindingAction(IntEnum):
|
19
|
+
"""[FlowBindingAction] Flow Binding Action Values"""
|
20
|
+
|
21
|
+
#: Add a flow binding [:rfc:`7109`]
|
22
|
+
Add = 11
|
23
|
+
|
24
|
+
#: Delete a flow binding [:rfc:`7109`]
|
25
|
+
Delete = 12
|
26
|
+
|
27
|
+
#: Modify a flow binding [:rfc:`7109`]
|
28
|
+
Modify = 13
|
29
|
+
|
30
|
+
#: Refresh a flow binding [:rfc:`7109`]
|
31
|
+
Refresh = 14
|
32
|
+
|
33
|
+
#: Move a flow binding [:rfc:`7109`]
|
34
|
+
Move = 15
|
35
|
+
|
36
|
+
#: Revoke a flow binding [:rfc:`7109`]
|
37
|
+
Revoke = 16
|
38
|
+
|
39
|
+
@staticmethod
|
40
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'FlowBindingAction':
|
41
|
+
"""Backport support for original codes.
|
42
|
+
|
43
|
+
Args:
|
44
|
+
key: Key to get enum item.
|
45
|
+
default: Default value if not found.
|
46
|
+
|
47
|
+
:meta private:
|
48
|
+
"""
|
49
|
+
if isinstance(key, int):
|
50
|
+
return FlowBindingAction(key)
|
51
|
+
if key not in FlowBindingAction._member_map_: # pylint: disable=no-member
|
52
|
+
return extend_enum(FlowBindingAction, key, default)
|
53
|
+
return FlowBindingAction[key] # type: ignore[misc]
|
54
|
+
|
55
|
+
@classmethod
|
56
|
+
def _missing_(cls, value: 'int') -> 'FlowBindingAction':
|
57
|
+
"""Lookup function used when value is not found.
|
58
|
+
|
59
|
+
Args:
|
60
|
+
value: Value to get enum item.
|
61
|
+
|
62
|
+
"""
|
63
|
+
if not (isinstance(value, int) and 0 <= value <= 255):
|
64
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
65
|
+
if 0 <= value <= 10:
|
66
|
+
#: Unassigned
|
67
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
68
|
+
if 17 <= value <= 255:
|
69
|
+
#: Unassigned
|
70
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
71
|
+
return super()._missing_(value)
|
@@ -0,0 +1,65 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Flow Binding Indication Triggers
|
4
|
+
======================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.fb_indication_trigger
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Flow Binding Indication Triggers**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.fb_indication_trigger.FlowBindingIndicationTrigger`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['FlowBindingIndicationTrigger']
|
16
|
+
|
17
|
+
|
18
|
+
class FlowBindingIndicationTrigger(IntEnum):
|
19
|
+
"""[FlowBindingIndicationTrigger] Flow Binding Indication Triggers"""
|
20
|
+
|
21
|
+
#: Reserved [:rfc:`7109`]
|
22
|
+
Reserved_0 = 0
|
23
|
+
|
24
|
+
#: Unspecified [:rfc:`7109`]
|
25
|
+
Unspecified = 1
|
26
|
+
|
27
|
+
#: Administrative Reason [:rfc:`7109`]
|
28
|
+
Administrative_Reason = 2
|
29
|
+
|
30
|
+
#: Possible Out-of-Sync BCE State [:rfc:`7109`]
|
31
|
+
Possible_Out_of_Sync_BCE_State = 3
|
32
|
+
|
33
|
+
@staticmethod
|
34
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'FlowBindingIndicationTrigger':
|
35
|
+
"""Backport support for original codes.
|
36
|
+
|
37
|
+
Args:
|
38
|
+
key: Key to get enum item.
|
39
|
+
default: Default value if not found.
|
40
|
+
|
41
|
+
:meta private:
|
42
|
+
"""
|
43
|
+
if isinstance(key, int):
|
44
|
+
return FlowBindingIndicationTrigger(key)
|
45
|
+
if key not in FlowBindingIndicationTrigger._member_map_: # pylint: disable=no-member
|
46
|
+
return extend_enum(FlowBindingIndicationTrigger, key, default)
|
47
|
+
return FlowBindingIndicationTrigger[key] # type: ignore[misc]
|
48
|
+
|
49
|
+
@classmethod
|
50
|
+
def _missing_(cls, value: 'int') -> 'FlowBindingIndicationTrigger':
|
51
|
+
"""Lookup function used when value is not found.
|
52
|
+
|
53
|
+
Args:
|
54
|
+
value: Value to get enum item.
|
55
|
+
|
56
|
+
"""
|
57
|
+
if not (isinstance(value, int) and 0 <= value <= 255):
|
58
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
59
|
+
if 4 <= value <= 249:
|
60
|
+
#: Unassigned
|
61
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
62
|
+
if 250 <= value <= 255:
|
63
|
+
#: Reserved for Testing Purposes Only [:rfc:`7109`]
|
64
|
+
return extend_enum(cls, 'Reserved_for_Testing_Purposes_Only_%d' % value, value)
|
65
|
+
return super()._missing_(value)
|
@@ -0,0 +1,59 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Flow Binding Type
|
4
|
+
=======================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.fb_type
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Flow Binding Type**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.fb_type.FlowBindingType`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['FlowBindingType']
|
16
|
+
|
17
|
+
|
18
|
+
class FlowBindingType(IntEnum):
|
19
|
+
"""[FlowBindingType] Flow Binding Type"""
|
20
|
+
|
21
|
+
#: Unassigned
|
22
|
+
Unassigned_0 = 0
|
23
|
+
|
24
|
+
#: Flow Binding Indication [:rfc:`7109`]
|
25
|
+
Indication = 1
|
26
|
+
|
27
|
+
#: Flow Binding Acknowledgement [:rfc:`7109`]
|
28
|
+
Acknowledgement = 2
|
29
|
+
|
30
|
+
@staticmethod
|
31
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'FlowBindingType':
|
32
|
+
"""Backport support for original codes.
|
33
|
+
|
34
|
+
Args:
|
35
|
+
key: Key to get enum item.
|
36
|
+
default: Default value if not found.
|
37
|
+
|
38
|
+
:meta private:
|
39
|
+
"""
|
40
|
+
if isinstance(key, int):
|
41
|
+
return FlowBindingType(key)
|
42
|
+
if key not in FlowBindingType._member_map_: # pylint: disable=no-member
|
43
|
+
return extend_enum(FlowBindingType, key, default)
|
44
|
+
return FlowBindingType[key] # type: ignore[misc]
|
45
|
+
|
46
|
+
@classmethod
|
47
|
+
def _missing_(cls, value: 'int') -> 'FlowBindingType':
|
48
|
+
"""Lookup function used when value is not found.
|
49
|
+
|
50
|
+
Args:
|
51
|
+
value: Value to get enum item.
|
52
|
+
|
53
|
+
"""
|
54
|
+
if not (isinstance(value, int) and 0 <= value <= 255):
|
55
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
56
|
+
if 3 <= value <= 255:
|
57
|
+
#: Unassigned
|
58
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
59
|
+
return super()._missing_(value)
|
@@ -0,0 +1,77 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Flow Identification Mobility Option Status Codes
|
4
|
+
======================================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.flow_id_status
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Flow Identification Mobility Option Status Codes**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.flow_id_status.FlowIDStatus`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['FlowIDStatus']
|
16
|
+
|
17
|
+
|
18
|
+
class FlowIDStatus(IntEnum):
|
19
|
+
"""[FlowIDStatus] Flow Identification Mobility Option Status Codes"""
|
20
|
+
|
21
|
+
#: Flow binding successful [:rfc:`6089`]
|
22
|
+
Flow_binding_successful = 0
|
23
|
+
|
24
|
+
#: Administratively prohibited [:rfc:`6089`]
|
25
|
+
Administratively_prohibited = 128
|
26
|
+
|
27
|
+
#: Flow binding rejected, reason unspecified [:rfc:`6089`]
|
28
|
+
Flow_binding_rejected_reason_unspecified = 129
|
29
|
+
|
30
|
+
#: Flow identification mobility option malformed [:rfc:`6089`]
|
31
|
+
Flow_identification_mobility_option_malformed = 130
|
32
|
+
|
33
|
+
#: BID not found [:rfc:`6089`]
|
34
|
+
BID_not_found = 131
|
35
|
+
|
36
|
+
#: FID not found [:rfc:`6089`]
|
37
|
+
FID_not_found = 132
|
38
|
+
|
39
|
+
#: Traffic selector format not supported [:rfc:`6089`]
|
40
|
+
Traffic_selector_format_not_supported = 133
|
41
|
+
|
42
|
+
@staticmethod
|
43
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'FlowIDStatus':
|
44
|
+
"""Backport support for original codes.
|
45
|
+
|
46
|
+
Args:
|
47
|
+
key: Key to get enum item.
|
48
|
+
default: Default value if not found.
|
49
|
+
|
50
|
+
:meta private:
|
51
|
+
"""
|
52
|
+
if isinstance(key, int):
|
53
|
+
return FlowIDStatus(key)
|
54
|
+
if key not in FlowIDStatus._member_map_: # pylint: disable=no-member
|
55
|
+
return extend_enum(FlowIDStatus, key, default)
|
56
|
+
return FlowIDStatus[key] # type: ignore[misc]
|
57
|
+
|
58
|
+
@classmethod
|
59
|
+
def _missing_(cls, value: 'int') -> 'FlowIDStatus':
|
60
|
+
"""Lookup function used when value is not found.
|
61
|
+
|
62
|
+
Args:
|
63
|
+
value: Value to get enum item.
|
64
|
+
|
65
|
+
"""
|
66
|
+
if not (isinstance(value, int) and 0 <= value <= 255):
|
67
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
68
|
+
if 1 <= value <= 127:
|
69
|
+
#: Unassigned; available for success codes
|
70
|
+
return extend_enum(cls, 'Unassigned_available_for_success_codes_%d' % value, value)
|
71
|
+
if 134 <= value <= 250:
|
72
|
+
#: Unassigned; available for reject codes
|
73
|
+
return extend_enum(cls, 'Unassigned_available_for_reject_codes_%d' % value, value)
|
74
|
+
if 251 <= value <= 255:
|
75
|
+
#: Reserved for Experimental Use [:rfc:`6089`]
|
76
|
+
return extend_enum(cls, 'Reserved_for_Experimental_Use_%d' % value, value)
|
77
|
+
return super()._missing_(value)
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Flow Identification Sub-Options
|
4
|
+
=====================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.flow_id_suboption
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Flow Identification Sub-Options**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.flow_id_suboption.FlowIDSuboption`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['FlowIDSuboption']
|
16
|
+
|
17
|
+
|
18
|
+
class FlowIDSuboption(IntEnum):
|
19
|
+
"""[FlowIDSuboption] Flow Identification Sub-Options"""
|
20
|
+
|
21
|
+
#: Pad [:rfc:`6089`]
|
22
|
+
Pad = 0
|
23
|
+
|
24
|
+
#: PadN [:rfc:`6089`]
|
25
|
+
PadN = 1
|
26
|
+
|
27
|
+
#: BID Reference [:rfc:`6089`]
|
28
|
+
BID_Reference = 2
|
29
|
+
|
30
|
+
#: Traffic Selector [:rfc:`6089`]
|
31
|
+
Traffic_Selector = 3
|
32
|
+
|
33
|
+
#: Flow Binding Action [:rfc:`7109`]
|
34
|
+
Flow_Binding_Action = 4
|
35
|
+
|
36
|
+
#: Target Care-of Address [:rfc:`7109`]
|
37
|
+
Target_Care_of_Address = 5
|
38
|
+
|
39
|
+
@staticmethod
|
40
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'FlowIDSuboption':
|
41
|
+
"""Backport support for original codes.
|
42
|
+
|
43
|
+
Args:
|
44
|
+
key: Key to get enum item.
|
45
|
+
default: Default value if not found.
|
46
|
+
|
47
|
+
:meta private:
|
48
|
+
"""
|
49
|
+
if isinstance(key, int):
|
50
|
+
return FlowIDSuboption(key)
|
51
|
+
if key not in FlowIDSuboption._member_map_: # pylint: disable=no-member
|
52
|
+
return extend_enum(FlowIDSuboption, key, default)
|
53
|
+
return FlowIDSuboption[key] # type: ignore[misc]
|
54
|
+
|
55
|
+
@classmethod
|
56
|
+
def _missing_(cls, value: 'int') -> 'FlowIDSuboption':
|
57
|
+
"""Lookup function used when value is not found.
|
58
|
+
|
59
|
+
Args:
|
60
|
+
value: Value to get enum item.
|
61
|
+
|
62
|
+
"""
|
63
|
+
if not (isinstance(value, int) and 0 <= value <= 255):
|
64
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
65
|
+
if 6 <= value <= 250:
|
66
|
+
#: Unassigned
|
67
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
68
|
+
if 251 <= value <= 255:
|
69
|
+
#: Reserved for Experimental Use [:rfc:`6089`]
|
70
|
+
return extend_enum(cls, 'Reserved_for_Experimental_Use_%d' % value, value)
|
71
|
+
return super()._missing_(value)
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Handoff Indicator Option Type Values
|
4
|
+
==========================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.handoff_type
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Handoff Indicator Option Type Values**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.handoff_type.HandoffType`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['HandoffType']
|
16
|
+
|
17
|
+
|
18
|
+
class HandoffType(IntEnum):
|
19
|
+
"""[HandoffType] Handoff Indicator Option Type Values"""
|
20
|
+
|
21
|
+
#: Reserved [:rfc:`5213`]
|
22
|
+
Reserved_0 = 0
|
23
|
+
|
24
|
+
#: Attachment over a new interface [:rfc:`5213`]
|
25
|
+
Attachment_over_a_new_interface = 1
|
26
|
+
|
27
|
+
#: Handoff between two different interfaces of the mobile node [:rfc:`5213`]
|
28
|
+
Handoff_between_two_different_interfaces_of_the_mobile_node = 2
|
29
|
+
|
30
|
+
#: Handoff between mobile access gateways for the same interface [:rfc:`5213`]
|
31
|
+
Handoff_between_mobile_access_gateways_for_the_same_interface = 3
|
32
|
+
|
33
|
+
#: Handoff state unknown [:rfc:`5213`]
|
34
|
+
Handoff_state_unknown = 4
|
35
|
+
|
36
|
+
#: Handoff state not changed (Re-registration) [:rfc:`5213`]
|
37
|
+
Handoff_state_not_changed = 5
|
38
|
+
|
39
|
+
#: Attachment over a new interface sharing prefixes [:rfc:`7864`]
|
40
|
+
Attachment_over_a_new_interface_sharing_prefixes = 6
|
41
|
+
|
42
|
+
@staticmethod
|
43
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'HandoffType':
|
44
|
+
"""Backport support for original codes.
|
45
|
+
|
46
|
+
Args:
|
47
|
+
key: Key to get enum item.
|
48
|
+
default: Default value if not found.
|
49
|
+
|
50
|
+
:meta private:
|
51
|
+
"""
|
52
|
+
if isinstance(key, int):
|
53
|
+
return HandoffType(key)
|
54
|
+
if key not in HandoffType._member_map_: # pylint: disable=no-member
|
55
|
+
return extend_enum(HandoffType, key, default)
|
56
|
+
return HandoffType[key] # type: ignore[misc]
|
57
|
+
|
58
|
+
@classmethod
|
59
|
+
def _missing_(cls, value: 'int') -> 'HandoffType':
|
60
|
+
"""Lookup function used when value is not found.
|
61
|
+
|
62
|
+
Args:
|
63
|
+
value: Value to get enum item.
|
64
|
+
|
65
|
+
"""
|
66
|
+
if not (isinstance(value, int) and 0 <= value <= 255):
|
67
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
68
|
+
if 7 <= value <= 255:
|
69
|
+
#: Unassigned
|
70
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
71
|
+
return super()._missing_(value)
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Handover Acknowledge Flags
|
4
|
+
================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.handover_ack_flag
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Handover Acknowledge Flags**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.handover_ack_flag.HandoverACKFlag`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntFlag
|
14
|
+
|
15
|
+
__all__ = ['HandoverACKFlag']
|
16
|
+
|
17
|
+
|
18
|
+
class HandoverACKFlag(IntFlag):
|
19
|
+
"""[HandoverACKFlag] Handover Acknowledge Flags"""
|
20
|
+
|
21
|
+
#: Buffer flag [:rfc:`5949`]
|
22
|
+
U = 0x80
|
23
|
+
|
24
|
+
#: Proxy flag [:rfc:`5949`]
|
25
|
+
P = 0x40
|
26
|
+
|
27
|
+
#: Forwarding flag [:rfc:`5949`]
|
28
|
+
F = 0x20
|
29
|
+
|
30
|
+
@staticmethod
|
31
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'HandoverACKFlag':
|
32
|
+
"""Backport support for original codes.
|
33
|
+
|
34
|
+
Args:
|
35
|
+
key: Key to get enum item.
|
36
|
+
default: Default value if not found.
|
37
|
+
|
38
|
+
:meta private:
|
39
|
+
"""
|
40
|
+
if isinstance(key, int):
|
41
|
+
return HandoverACKFlag(key)
|
42
|
+
return HandoverACKFlag[key] # type: ignore[misc]
|
43
|
+
|
44
|
+
@classmethod
|
45
|
+
def _missing_(cls, value: 'int') -> 'HandoverACKFlag':
|
46
|
+
"""Lookup function used when value is not found.
|
47
|
+
|
48
|
+
Args:
|
49
|
+
value: Value to get enum item.
|
50
|
+
|
51
|
+
"""
|
52
|
+
if not (isinstance(value, int) and 0 <= value <= 0xFF):
|
53
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
54
|
+
return cls(value)
|
@@ -0,0 +1,92 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Handover Acknowledge Status Codes
|
4
|
+
=======================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.handover_ack_status
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Handover Acknowledge Status Codes**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.handover_ack_status.HandoverACKStatus`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['HandoverACKStatus']
|
16
|
+
|
17
|
+
|
18
|
+
class HandoverACKStatus(IntEnum):
|
19
|
+
"""[HandoverACKStatus] Handover Acknowledge Status Codes"""
|
20
|
+
|
21
|
+
#: Handover Accepted or Successful (when 'P' flag is set) [:rfc:`5949`]
|
22
|
+
Handover_Accepted_or_Successful = 0
|
23
|
+
|
24
|
+
#: Handover Accepted with NCoA valid [:rfc:`5568`]
|
25
|
+
Handover_Accepted_with_NCoA_valid = 0
|
26
|
+
|
27
|
+
#: Handover Accepted, NCoA not valid [:rfc:`5568`]
|
28
|
+
Handover_Accepted_NCoA_not_valid = 1
|
29
|
+
|
30
|
+
#: Handover Accepted, NCoA assigned [:rfc:`5568`]
|
31
|
+
Handover_Accepted_NCoA_assigned = 2
|
32
|
+
|
33
|
+
#: Handover Accepted, use PCoA [:rfc:`5568`]
|
34
|
+
Handover_Accepted_use_PCoA = 3
|
35
|
+
|
36
|
+
#: Message sent unsolicited [:rfc:`5568`]
|
37
|
+
Message_sent_unsolicited = 4
|
38
|
+
|
39
|
+
#: Context Transfer Accepted or Successful [:rfc:`5949`]
|
40
|
+
Context_Transfer_Accepted_or_Successful = 5
|
41
|
+
|
42
|
+
#: All available Context Transferred [:rfc:`5949`]
|
43
|
+
All_available_Context_Transferred = 6
|
44
|
+
|
45
|
+
#: Handover Not Accepted, reason unspecified [:rfc:`5568`]
|
46
|
+
Handover_Not_Accepted_reason_unspecified = 128
|
47
|
+
|
48
|
+
#: Administratively prohibited [:rfc:`5568`]
|
49
|
+
Administratively_prohibited = 129
|
50
|
+
|
51
|
+
#: Insufficient resources [:rfc:`5568`]
|
52
|
+
Insufficient_resources = 130
|
53
|
+
|
54
|
+
#: Requested Context Not Available [:rfc:`5949`]
|
55
|
+
Requested_Context_Not_Available = 131
|
56
|
+
|
57
|
+
#: Forwarding Not Available [:rfc:`5949`]
|
58
|
+
Forwarding_Not_Available = 132
|
59
|
+
|
60
|
+
@staticmethod
|
61
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'HandoverACKStatus':
|
62
|
+
"""Backport support for original codes.
|
63
|
+
|
64
|
+
Args:
|
65
|
+
key: Key to get enum item.
|
66
|
+
default: Default value if not found.
|
67
|
+
|
68
|
+
:meta private:
|
69
|
+
"""
|
70
|
+
if isinstance(key, int):
|
71
|
+
return HandoverACKStatus(key)
|
72
|
+
if key not in HandoverACKStatus._member_map_: # pylint: disable=no-member
|
73
|
+
return extend_enum(HandoverACKStatus, key, default)
|
74
|
+
return HandoverACKStatus[key] # type: ignore[misc]
|
75
|
+
|
76
|
+
@classmethod
|
77
|
+
def _missing_(cls, value: 'int') -> 'HandoverACKStatus':
|
78
|
+
"""Lookup function used when value is not found.
|
79
|
+
|
80
|
+
Args:
|
81
|
+
value: Value to get enum item.
|
82
|
+
|
83
|
+
"""
|
84
|
+
if not (isinstance(value, int) and 0 <= value <= 255):
|
85
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
86
|
+
if 7 <= value <= 127:
|
87
|
+
#: Unassigned
|
88
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
89
|
+
if 133 <= value <= 255:
|
90
|
+
#: Unassigned
|
91
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
92
|
+
return super()._missing_(value)
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Handover Initiate Flags
|
4
|
+
=============================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.handover_initiate_flag
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Handover Initiate Flags**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.handover_initiate_flag.HandoverInitiateFlag`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntFlag
|
14
|
+
|
15
|
+
__all__ = ['HandoverInitiateFlag']
|
16
|
+
|
17
|
+
|
18
|
+
class HandoverInitiateFlag(IntFlag):
|
19
|
+
"""[HandoverInitiateFlag] Handover Initiate Flags"""
|
20
|
+
|
21
|
+
#: Assigned Address Configuration flag [:rfc:`5568`]
|
22
|
+
S = 0x80
|
23
|
+
|
24
|
+
#: Buffer flag [:rfc:`5568`]
|
25
|
+
U = 0x40
|
26
|
+
|
27
|
+
#: Proxy flag [:rfc:`5949`]
|
28
|
+
P = 0x20
|
29
|
+
|
30
|
+
#: Forwarding flag [:rfc:`5949`]
|
31
|
+
F = 0x10
|
32
|
+
|
33
|
+
@staticmethod
|
34
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'HandoverInitiateFlag':
|
35
|
+
"""Backport support for original codes.
|
36
|
+
|
37
|
+
Args:
|
38
|
+
key: Key to get enum item.
|
39
|
+
default: Default value if not found.
|
40
|
+
|
41
|
+
:meta private:
|
42
|
+
"""
|
43
|
+
if isinstance(key, int):
|
44
|
+
return HandoverInitiateFlag(key)
|
45
|
+
return HandoverInitiateFlag[key] # type: ignore[misc]
|
46
|
+
|
47
|
+
@classmethod
|
48
|
+
def _missing_(cls, value: 'int') -> 'HandoverInitiateFlag':
|
49
|
+
"""Lookup function used when value is not found.
|
50
|
+
|
51
|
+
Args:
|
52
|
+
value: Value to get enum item.
|
53
|
+
|
54
|
+
"""
|
55
|
+
if not (isinstance(value, int) and 0 <= value <= 0xFF):
|
56
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
57
|
+
return cls(value)
|
@@ -0,0 +1,62 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# pylint: disable=line-too-long,consider-using-f-string
|
3
|
+
"""Handover Initiate Status Codes
|
4
|
+
====================================
|
5
|
+
|
6
|
+
.. module:: pcapkit.const.mh.handover_initiate_status
|
7
|
+
|
8
|
+
This module contains the constant enumeration for **Handover Initiate Status Codes**,
|
9
|
+
which is automatically generated from :class:`pcapkit.vendor.mh.handover_initiate_status.HandoverInitiateStatus`.
|
10
|
+
|
11
|
+
"""
|
12
|
+
|
13
|
+
from aenum import IntEnum, extend_enum
|
14
|
+
|
15
|
+
__all__ = ['HandoverInitiateStatus']
|
16
|
+
|
17
|
+
|
18
|
+
class HandoverInitiateStatus(IntEnum):
|
19
|
+
"""[HandoverInitiateStatus] Handover Initiate Status Codes"""
|
20
|
+
|
21
|
+
#: FBU with the PCoA as source IP address [:rfc:`5568`]
|
22
|
+
FBU_with_the_PCoA_as_source_IP_address = 0
|
23
|
+
|
24
|
+
#: FBU whose source IP address is not PCoA [:rfc:`5568`]
|
25
|
+
FBU_whose_source_IP_address_is_not_PCoA = 1
|
26
|
+
|
27
|
+
#: Indicate the completion of forwarding [:rfc:`5949`]
|
28
|
+
Indicate_the_completion_of_forwarding = 2
|
29
|
+
|
30
|
+
#: All available context transferred [:rfc:`5949`]
|
31
|
+
All_available_context_transferred = 3
|
32
|
+
|
33
|
+
@staticmethod
|
34
|
+
def get(key: 'int | str', default: 'int' = -1) -> 'HandoverInitiateStatus':
|
35
|
+
"""Backport support for original codes.
|
36
|
+
|
37
|
+
Args:
|
38
|
+
key: Key to get enum item.
|
39
|
+
default: Default value if not found.
|
40
|
+
|
41
|
+
"""
|
42
|
+
if isinstance(key, int):
|
43
|
+
return HandoverInitiateStatus(key)
|
44
|
+
if key not in HandoverInitiateStatus._member_map_: # pylint: disable=no-member
|
45
|
+
extend_enum(HandoverInitiateStatus, key, default)
|
46
|
+
return HandoverInitiateStatus[key] # type: ignore[misc]
|
47
|
+
|
48
|
+
@classmethod
|
49
|
+
def _missing_(cls, value: 'int') -> 'HandoverInitiateStatus':
|
50
|
+
"""Lookup function used when value is not found.
|
51
|
+
|
52
|
+
Args:
|
53
|
+
value: Value to get enum item.
|
54
|
+
|
55
|
+
"""
|
56
|
+
if not (isinstance(value, int) and 0 <= value <= 255):
|
57
|
+
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
58
|
+
if 4 <= value <= 255:
|
59
|
+
#: Unassigned
|
60
|
+
extend_enum(cls, 'Unassigned_%d' % value, value)
|
61
|
+
return cls(value)
|
62
|
+
return super()._missing_(value)
|