pypcapkit 0.16.2__tar.gz → 1.0.0__tar.gz
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.
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/LICENSE +1 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/MANIFEST.in +4 -10
- {pypcapkit-0.16.2/pypcapkit.egg-info → pypcapkit-1.0.0}/PKG-INFO +41 -38
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/README.rst +23 -24
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/__init__.py +8 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/__main__.py +7 -6
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/all.py +26 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/__init__.py +23 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/arp/hardware.py +10 -6
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/arp/operation.py +5 -3
- pypcapkit-1.0.0/pcapkit/const/ftp/command.py +257 -0
- pypcapkit-1.0.0/pcapkit/const/ftp/return_code.py +276 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/__init__.py +5 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/certificate.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/cipher.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/di.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/ecdsa_curve.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/ecdsa_low_curve.py +5 -3
- pypcapkit-1.0.0/pcapkit/const/hip/eddsa_curve.py +65 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/esp_transform_suite.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/group.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/hi_algorithm.py +12 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/hit_suite.py +12 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/nat_traversal.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/notify_message.py +17 -27
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/packet.py +7 -7
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/parameter.py +52 -97
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/registration.py +6 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/registration_failure.py +6 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/suite.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/hip/transport.py +4 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/http/__init__.py +11 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/http/error_code.py +21 -19
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/http/frame.py +17 -16
- pypcapkit-1.0.0/pcapkit/const/http/method.py +184 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/http/setting.py +20 -12
- pypcapkit-1.0.0/pcapkit/const/http/status_code.py +294 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/classification_level.py +6 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/option_class.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/option_number.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/protection_authority.py +6 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/qs_function.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/router_alert.py +6 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/tos_del.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/tos_ecn.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/tos_pre.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/tos_rel.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/tos_thr.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv4/ts_flag.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/__init__.py +7 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/extension_header.py +10 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/option.py +14 -7
- pypcapkit-1.0.0/pcapkit/const/ipv6/option_action.py +55 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/qs_function.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/router_alert.py +6 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/routing.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/seed_id.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/smf_dpd_mode.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipv6/tagger_id.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipx/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipx/packet.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ipx/socket.py +9 -11
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/l2tp/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/l2tp/type.py +5 -3
- pypcapkit-1.0.0/pcapkit/const/mh/__init__.py +183 -0
- pypcapkit-1.0.0/pcapkit/const/mh/access_type.py +92 -0
- pypcapkit-1.0.0/pcapkit/const/mh/ack_status_code.py +71 -0
- pypcapkit-1.0.0/pcapkit/const/mh/ani_suboption.py +74 -0
- pypcapkit-1.0.0/pcapkit/const/mh/auth_subtype.py +53 -0
- pypcapkit-1.0.0/pcapkit/const/mh/binding_ack_flag.py +66 -0
- pypcapkit-1.0.0/pcapkit/const/mh/binding_revocation.py +59 -0
- pypcapkit-1.0.0/pcapkit/const/mh/binding_update_flag.py +81 -0
- pypcapkit-1.0.0/pcapkit/const/mh/dhcp_support_mode.py +53 -0
- pypcapkit-1.0.0/pcapkit/const/mh/dns_status_code.py +65 -0
- pypcapkit-1.0.0/pcapkit/const/mh/dsmip6_tls_packet.py +62 -0
- pypcapkit-1.0.0/pcapkit/const/mh/dsmipv6_home_address.py +74 -0
- pypcapkit-1.0.0/pcapkit/const/mh/enumerating_algorithm.py +56 -0
- pypcapkit-1.0.0/pcapkit/const/mh/fb_ack_status.py +62 -0
- pypcapkit-1.0.0/pcapkit/const/mh/fb_action.py +71 -0
- pypcapkit-1.0.0/pcapkit/const/mh/fb_indication_trigger.py +65 -0
- pypcapkit-1.0.0/pcapkit/const/mh/fb_type.py +59 -0
- pypcapkit-1.0.0/pcapkit/const/mh/flow_id_status.py +77 -0
- pypcapkit-1.0.0/pcapkit/const/mh/flow_id_suboption.py +71 -0
- pypcapkit-1.0.0/pcapkit/const/mh/handoff_type.py +71 -0
- pypcapkit-1.0.0/pcapkit/const/mh/handover_ack_flag.py +54 -0
- pypcapkit-1.0.0/pcapkit/const/mh/handover_ack_status.py +92 -0
- pypcapkit-1.0.0/pcapkit/const/mh/handover_initiate_flag.py +57 -0
- pypcapkit-1.0.0/pcapkit/const/mh/handover_initiate_status.py +62 -0
- pypcapkit-1.0.0/pcapkit/const/mh/home_address_reply.py +71 -0
- pypcapkit-1.0.0/pcapkit/const/mh/lma_mag_suboption.py +59 -0
- pypcapkit-1.0.0/pcapkit/const/mh/mn_group_id.py +59 -0
- pypcapkit-1.0.0/pcapkit/const/mh/mn_id_subtype.py +77 -0
- pypcapkit-1.0.0/pcapkit/const/mh/operator_id.py +63 -0
- pypcapkit-1.0.0/pcapkit/const/mh/option.py +260 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/mh/packet.py +5 -3
- pypcapkit-1.0.0/pcapkit/const/mh/qos_attribute.py +89 -0
- pypcapkit-1.0.0/pcapkit/const/mh/revocation_status_code.py +65 -0
- pypcapkit-1.0.0/pcapkit/const/mh/revocation_trigger.py +86 -0
- pypcapkit-1.0.0/pcapkit/const/mh/status_code.py +67 -0
- pypcapkit-1.0.0/pcapkit/const/mh/traffic_selector.py +62 -0
- pypcapkit-1.0.0/pcapkit/const/mh/upa_status.py +71 -0
- pypcapkit-1.0.0/pcapkit/const/mh/upn_reason.py +80 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ospf/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ospf/authentication.py +6 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ospf/packet.py +6 -5
- pypcapkit-1.0.0/pcapkit/const/pcapng/__init__.py +51 -0
- pypcapkit-1.0.0/pcapkit/const/pcapng/block_type.py +152 -0
- pypcapkit-1.0.0/pcapkit/const/pcapng/filter_type.py +48 -0
- pypcapkit-1.0.0/pcapkit/const/pcapng/hash_algorithm.py +59 -0
- pypcapkit-1.0.0/pcapkit/const/pcapng/option_type.py +198 -0
- pypcapkit-1.0.0/pcapkit/const/pcapng/record_type.py +58 -0
- pypcapkit-1.0.0/pcapkit/const/pcapng/secrets_type.py +57 -0
- pypcapkit-1.0.0/pcapkit/const/pcapng/verdict_type.py +53 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/reg/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/reg/ethertype.py +60 -113
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/reg/linktype.py +304 -40
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/reg/transtype.py +12 -9
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/tcp/__init__.py +6 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/tcp/checksum.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/tcp/mp_tcp_option.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/tcp/option.py +25 -11
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/vlan/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/vlan/priority_level.py +9 -7
- pypcapkit-1.0.0/pcapkit/corekit/__init__.py +52 -0
- pypcapkit-1.0.0/pcapkit/corekit/fields/__init__.py +45 -0
- pypcapkit-1.0.0/pcapkit/corekit/fields/collections.py +282 -0
- pypcapkit-1.0.0/pcapkit/corekit/fields/field.py +234 -0
- pypcapkit-1.0.0/pcapkit/corekit/fields/ipaddress.py +273 -0
- pypcapkit-1.0.0/pcapkit/corekit/fields/misc.py +727 -0
- pypcapkit-1.0.0/pcapkit/corekit/fields/numbers.py +376 -0
- pypcapkit-1.0.0/pcapkit/corekit/fields/strings.py +246 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/corekit/infoclass.py +40 -10
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/corekit/multidict.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/corekit/protochain.py +14 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/corekit/version.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/dumpkit/__init__.py +3 -1
- pypcapkit-1.0.0/pcapkit/dumpkit/common.py +129 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/dumpkit/null.py +4 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/dumpkit/pcap.py +8 -6
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/foundation/__init__.py +14 -6
- pypcapkit-1.0.0/pcapkit/foundation/engines/__init__.py +35 -0
- pypcapkit-1.0.0/pcapkit/foundation/engines/dpkt.py +225 -0
- pypcapkit-1.0.0/pcapkit/foundation/engines/engine.py +95 -0
- pypcapkit-1.0.0/pcapkit/foundation/engines/pcap.py +182 -0
- pypcapkit-1.0.0/pcapkit/foundation/engines/pcapng.py +313 -0
- pypcapkit-1.0.0/pcapkit/foundation/engines/pyshark.py +160 -0
- pypcapkit-1.0.0/pcapkit/foundation/engines/scapy.py +158 -0
- pypcapkit-1.0.0/pcapkit/foundation/extraction.py +704 -0
- pypcapkit-1.0.0/pcapkit/foundation/reassembly/__init__.py +48 -0
- pypcapkit-1.0.0/pcapkit/foundation/reassembly/data/__init__.py +47 -0
- pypcapkit-1.0.0/pcapkit/foundation/reassembly/data/ip.py +109 -0
- pypcapkit-1.0.0/pcapkit/foundation/reassembly/data/tcp.py +139 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/foundation/reassembly/ip.py +17 -106
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/foundation/reassembly/ipv4.py +17 -9
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/foundation/reassembly/ipv6.py +17 -9
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/foundation/reassembly/reassembly.py +21 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/foundation/reassembly/tcp.py +26 -143
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/foundation/registry.py +270 -82
- pypcapkit-1.0.0/pcapkit/foundation/traceflow/__init__.py +43 -0
- pypcapkit-1.0.0/pcapkit/foundation/traceflow/data/__init__.py +29 -0
- pypcapkit-1.0.0/pcapkit/foundation/traceflow/data/tcp.py +101 -0
- pypcapkit-1.0.0/pcapkit/foundation/traceflow/tcp.py +159 -0
- pypcapkit-1.0.0/pcapkit/foundation/traceflow/traceflow.py +250 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/interface/__init__.py +3 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/interface/core.py +39 -21
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/interface/misc.py +13 -11
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/__init__.py +19 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/__init__.py +7 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/application.py +12 -9
- pypcapkit-1.0.0/pcapkit/protocols/application/ftp.py +206 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/http.py +43 -27
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/httpv1.py +128 -37
- pypcapkit-1.0.0/pcapkit/protocols/application/httpv2.py +1254 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/__init__.py +31 -9
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/application/__init__.py +6 -15
- pypcapkit-1.0.0/pcapkit/protocols/data/application/ftp.py +56 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/application/httpv1.py +16 -14
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/application/httpv2.py +25 -21
- pypcapkit-1.0.0/pcapkit/protocols/data/data.py +25 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/__init__.py +26 -17
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/ah.py +2 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/hip.py +86 -78
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/hopopt.py +69 -49
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/ipv4.py +37 -22
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/ipv6.py +2 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/ipv6_frag.py +2 -2
- pypcapkit-1.0.0/pcapkit/protocols/data/internet/ipv6_opts.py +345 -0
- pypcapkit-1.0.0/pcapkit/protocols/data/internet/ipv6_route.py +81 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/ipx.py +3 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/internet/mh.py +2 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/link/arp.py +6 -6
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/link/ethernet.py +2 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/link/l2tp.py +3 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/link/ospf.py +3 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/link/vlan.py +3 -3
- pypcapkit-1.0.0/pcapkit/protocols/data/misc/__init__.py +109 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/misc/null.py +3 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/misc/pcap/frame.py +4 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/misc/pcap/header.py +4 -4
- pypcapkit-1.0.0/pcapkit/protocols/data/misc/pcapng.py +857 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/misc/raw.py +3 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/protocol.py +3 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/transport/__init__.py +5 -6
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/transport/tcp.py +45 -52
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/transport/udp.py +2 -2
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/ah.py +80 -44
- pypcapkit-1.0.0/pcapkit/protocols/internet/hip.py +4727 -0
- pypcapkit-1.0.0/pcapkit/protocols/internet/hopopt.py +1893 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/internet.py +52 -29
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/ip.py +5 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/ipsec.py +4 -2
- pypcapkit-1.0.0/pcapkit/protocols/internet/ipv4.py +1781 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/ipv6.py +108 -39
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/ipv6_frag.py +78 -25
- pypcapkit-1.0.0/pcapkit/protocols/internet/ipv6_opts.py +1904 -0
- pypcapkit-1.0.0/pcapkit/protocols/internet/ipv6_route.py +708 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/ipx.py +95 -42
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/mh.py +78 -33
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/__init__.py +4 -5
- pypcapkit-1.0.0/pcapkit/protocols/link/arp.py +421 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/ethernet.py +103 -28
- pypcapkit-1.0.0/pcapkit/protocols/link/l2tp.py +267 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/link.py +20 -15
- pypcapkit-1.0.0/pcapkit/protocols/link/ospf.py +342 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/rarp.py +22 -5
- pypcapkit-1.0.0/pcapkit/protocols/link/vlan.py +224 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/misc/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/misc/null.py +16 -12
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/misc/pcap/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/misc/pcap/frame.py +174 -85
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/misc/pcap/header.py +74 -54
- pypcapkit-1.0.0/pcapkit/protocols/misc/pcapng.py +5509 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/misc/raw.py +42 -16
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/protocol.py +282 -50
- pypcapkit-1.0.0/pcapkit/protocols/schema/__init__.py +127 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/application/__init__.py +40 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/application/ftp.py +20 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/application/httpv1.py +20 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/application/httpv2.py +387 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/__init__.py +241 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/ah.py +39 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/hip.py +1178 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/hopopt.py +661 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/ipv4.py +563 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/ipv6.py +62 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/ipv6_frag.py +47 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/ipv6_opts.py +664 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/ipv6_route.py +202 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/ipx.py +39 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/internet/mh.py +40 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/link/__init__.py +19 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/link/arp.py +38 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/link/ethernet.py +49 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/link/l2tp.py +87 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/link/ospf.py +88 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/link/vlan.py +67 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/misc/__init__.py +108 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/misc/null.py +17 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/misc/pcap/__init__.py +10 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/misc/pcap/frame.py +50 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/misc/pcap/header.py +62 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/misc/pcapng.py +1641 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/misc/raw.py +23 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/schema.py +550 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/transport/__init__.py +69 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/transport/tcp.py +860 -0
- pypcapkit-1.0.0/pcapkit/protocols/schema/transport/udp.py +34 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/transport/__init__.py +2 -0
- pypcapkit-1.0.0/pcapkit/protocols/transport/tcp.py +3042 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/transport/transport.py +26 -8
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/transport/udp.py +59 -19
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/toolkit/__init__.py +10 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/toolkit/dpkt.py +22 -20
- pypcapkit-0.16.2/pcapkit/toolkit/default.py → pypcapkit-1.0.0/pcapkit/toolkit/pcap.py +24 -21
- pypcapkit-1.0.0/pcapkit/toolkit/pcapng.py +251 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/toolkit/pyshark.py +15 -9
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/toolkit/scapy.py +34 -29
- pypcapkit-1.0.0/pcapkit/utilities/__init__.py +20 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/utilities/compat.py +25 -1
- pypcapkit-1.0.0/pcapkit/utilities/decorators.py +186 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/utilities/exceptions.py +28 -6
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/utilities/logging.py +5 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/utilities/warnings.py +33 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/__init__.py +25 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/__main__.py +4 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/arp/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/arp/hardware.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/arp/operation.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/default.py +56 -11
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ftp/__init__.py +2 -0
- pypcapkit-1.0.0/pcapkit/vendor/ftp/command.py +192 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ftp/return_code.py +39 -9
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/__init__.py +5 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/certificate.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/cipher.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/di.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/ecdsa_curve.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/ecdsa_low_curve.py +3 -1
- pypcapkit-1.0.0/pcapkit/vendor/hip/eddsa_curve.py +85 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/esp_transform_suite.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/group.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/hi_algorithm.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/hit_suite.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/nat_traversal.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/notify_message.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/packet.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/parameter.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/registration.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/registration_failure.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/suite.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/hip/transport.py +3 -1
- pypcapkit-1.0.0/pcapkit/vendor/http/__init__.py +39 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/http/error_code.py +10 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/http/frame.py +9 -4
- pypcapkit-1.0.0/pcapkit/vendor/http/method.py +167 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/http/setting.py +9 -4
- pypcapkit-1.0.0/pcapkit/vendor/http/status_code.py +178 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/classification_level.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/option_class.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/option_number.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/protection_authority.py +5 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/qs_function.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/router_alert.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/tos_del.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/tos_ecn.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/tos_pre.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/tos_rel.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/tos_thr.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/ts_flag.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/__init__.py +7 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/extension_header.py +14 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/option.py +4 -3
- pypcapkit-1.0.0/pcapkit/vendor/ipv6/option_action.py +90 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/qs_function.py +5 -4
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/router_alert.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/routing.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/seed_id.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/smf_dpd_mode.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv6/tagger_id.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipx/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipx/packet.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipx/socket.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/l2tp/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/l2tp/type.py +4 -3
- pypcapkit-1.0.0/pcapkit/vendor/mh/__init__.py +183 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/access_type.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/ack_status_code.py +88 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/ani_suboption.py +88 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/auth_subtype.py +82 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/binding_ack_flag.py +148 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/binding_revocation.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/binding_update_flag.py +147 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/dhcp_support_mode.py +77 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/dns_status_code.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/dsmip6_tls_packet.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/dsmipv6_home_address.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/enumerating_algorithm.py +82 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/fb_ack_status.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/fb_action.py +88 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/fb_indication_trigger.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/fb_type.py +88 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/flow_id_status.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/flow_id_suboption.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/handoff_type.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/handover_ack_flag.py +143 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/handover_ack_status.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/handover_initiate_flag.py +143 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/handover_initiate_status.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/home_address_reply.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/lma_mag_suboption.py +88 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/mn_group_id.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/mn_id_subtype.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/operator_id.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/option.py +83 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/mh/packet.py +4 -3
- pypcapkit-1.0.0/pcapkit/vendor/mh/qos_attribute.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/revocation_status_code.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/revocation_trigger.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/status_code.py +91 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/traffic_selector.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/upa_status.py +87 -0
- pypcapkit-1.0.0/pcapkit/vendor/mh/upn_reason.py +87 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ospf/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ospf/authentication.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ospf/packet.py +3 -1
- pypcapkit-1.0.0/pcapkit/vendor/pcapng/__init__.py +51 -0
- pypcapkit-1.0.0/pcapkit/vendor/pcapng/block_type.py +94 -0
- pypcapkit-1.0.0/pcapkit/vendor/pcapng/filter_type.py +77 -0
- pypcapkit-1.0.0/pcapkit/vendor/pcapng/hash_algorithm.py +82 -0
- pypcapkit-1.0.0/pcapkit/vendor/pcapng/option_type.py +252 -0
- pypcapkit-1.0.0/pcapkit/vendor/pcapng/record_type.py +81 -0
- pypcapkit-1.0.0/pcapkit/vendor/pcapng/secrets_type.py +81 -0
- pypcapkit-1.0.0/pcapkit/vendor/pcapng/verdict_type.py +79 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/reg/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/reg/ethertype.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/reg/linktype.py +9 -5
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/reg/transtype.py +3 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/tcp/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/tcp/checksum.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/tcp/mp_tcp_option.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/tcp/option.py +4 -3
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/vlan/__init__.py +2 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/vlan/priority_level.py +8 -7
- {pypcapkit-0.16.2 → pypcapkit-1.0.0/pypcapkit.egg-info}/PKG-INFO +41 -38
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pypcapkit.egg-info/SOURCES.txt +159 -47
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pypcapkit.egg-info/requires.txt +10 -0
- pypcapkit-1.0.0/pyproject.toml +109 -0
- pypcapkit-1.0.0/setup.cfg +4 -0
- pypcapkit-1.0.0/setup.py +114 -0
- pypcapkit-1.0.0/util/bump_version.py +60 -0
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/__init__.py +0 -20
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/argparse.py +0 -159
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/context.py +0 -329
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/fileprocessing.py +0 -214
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/logging.py +0 -92
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/misc.py +0 -565
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/multiprocessing.py +0 -110
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/parsing.py +0 -197
- pypcapkit-0.16.2/.eggs/bpc_utils-0.10.1-py3.6.egg/bpc_utils/typing.py +0 -32
- pypcapkit-0.16.2/.eggs/f2format-0.8.7rc2-py3.6.egg/f2format.py +0 -918
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/__init__.py +0 -58
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/_compatibility.py +0 -3
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/cache.py +0 -275
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/file_io.py +0 -38
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/grammar.py +0 -264
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/normalizer.py +0 -198
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/parser.py +0 -210
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/pgen2/__init__.py +0 -10
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/pgen2/generator.py +0 -382
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/pgen2/grammar_parser.py +0 -160
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/__init__.py +0 -0
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/diff.py +0 -886
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/errors.py +0 -1295
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/parser.py +0 -206
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/pep8.py +0 -767
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/prefix.py +0 -106
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/token.py +0 -31
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/tokenize.py +0 -687
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/python/tree.py +0 -1242
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/tree.py +0 -488
- pypcapkit-0.16.2/.eggs/parso-0.8.3-py3.6.egg/parso/utils.py +0 -194
- pypcapkit-0.16.2/.eggs/python_walrus-0.1.5rc1-py3.6.egg/walrus.py +0 -2070
- pypcapkit-0.16.2/.eggs/tbtrim-0.3.1-py3.6.egg/tbtrim.py +0 -97
- pypcapkit-0.16.2/.eggs/typing_extensions-4.2.0-py3.6.egg/typing_extensions.py +0 -1960
- pypcapkit-0.16.2/CODE_OF_CONDUCT.md +0 -47
- pypcapkit-0.16.2/CONTRIBUTING.md +0 -67
- pypcapkit-0.16.2/pcapkit/const/ftp/command.py +0 -601
- pypcapkit-0.16.2/pcapkit/const/ftp/return_code.py +0 -224
- pypcapkit-0.16.2/pcapkit/const/mh/__init__.py +0 -21
- pypcapkit-0.16.2/pcapkit/corekit/README.md +0 -80
- pypcapkit-0.16.2/pcapkit/corekit/__init__.py +0 -21
- pypcapkit-0.16.2/pcapkit/dumpkit/README.md +0 -49
- pypcapkit-0.16.2/pcapkit/foundation/extraction.py +0 -1137
- pypcapkit-0.16.2/pcapkit/foundation/reassembly/__init__.py +0 -25
- pypcapkit-0.16.2/pcapkit/foundation/traceflow.py +0 -433
- pypcapkit-0.16.2/pcapkit/protocols/application/README.md +0 -3
- pypcapkit-0.16.2/pcapkit/protocols/application/ftp.py +0 -126
- pypcapkit-0.16.2/pcapkit/protocols/application/httpv2.py +0 -866
- pypcapkit-0.16.2/pcapkit/protocols/data/application/ftp.py +0 -61
- pypcapkit-0.16.2/pcapkit/protocols/data/application/http.py +0 -10
- pypcapkit-0.16.2/pcapkit/protocols/data/internet/ipv6_opts.py +0 -309
- pypcapkit-0.16.2/pcapkit/protocols/data/internet/ipv6_route.py +0 -94
- pypcapkit-0.16.2/pcapkit/protocols/data/misc/__init__.py +0 -21
- pypcapkit-0.16.2/pcapkit/protocols/internet/README.md +0 -3
- pypcapkit-0.16.2/pcapkit/protocols/internet/hip.py +0 -3257
- pypcapkit-0.16.2/pcapkit/protocols/internet/hopopt.py +0 -1247
- pypcapkit-0.16.2/pcapkit/protocols/internet/ipv4.py +0 -1064
- pypcapkit-0.16.2/pcapkit/protocols/internet/ipv6_opts.py +0 -1257
- pypcapkit-0.16.2/pcapkit/protocols/internet/ipv6_route.py +0 -474
- pypcapkit-0.16.2/pcapkit/protocols/link/arp.py +0 -270
- pypcapkit-0.16.2/pcapkit/protocols/link/l2tp.py +0 -188
- pypcapkit-0.16.2/pcapkit/protocols/link/ospf.py +0 -225
- pypcapkit-0.16.2/pcapkit/protocols/link/vlan.py +0 -147
- pypcapkit-0.16.2/pcapkit/protocols/transport/README.md +0 -3
- pypcapkit-0.16.2/pcapkit/protocols/transport/tcp.py +0 -1870
- pypcapkit-0.16.2/pcapkit/utilities/__init__.py +0 -19
- pypcapkit-0.16.2/pcapkit/utilities/decorators.py +0 -121
- pypcapkit-0.16.2/pcapkit/vendor/README.md +0 -51
- pypcapkit-0.16.2/pcapkit/vendor/ftp/command.py +0 -187
- pypcapkit-0.16.2/pcapkit/vendor/http/__init__.py +0 -29
- pypcapkit-0.16.2/pcapkit/vendor/mh/__init__.py +0 -21
- pypcapkit-0.16.2/pyproject.toml +0 -3
- pypcapkit-0.16.2/setup.cfg +0 -11
- pypcapkit-0.16.2/setup.py +0 -228
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/arp/__init__.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/const/ftp/__init__.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/bgp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/dhcp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/dhcpv6.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/dns.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/imap.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/ldap.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/mqtt.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/nntp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/ntp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/onc_rpc.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/pop.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/rip.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/rtp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/sip.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/smtp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/snmp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/ssh.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/telnet.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/tls.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/application/NotImplemented/xmpp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/link/__init__.py +1 -1
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/data/misc/pcap/__init__.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/NotImplemented/ecn.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/NotImplemented/esp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/NotImplemented/icmp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/NotImplemented/icmpv6.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/NotImplemented/igmp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/internet/NotImplemented/shim6.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/NotImplemented/dsl.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/NotImplemented/eapol.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/NotImplemented/fddi.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/NotImplemented/isdn.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/NotImplemented/ndp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/link/NotImplemented/ppp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/transport/NotImplemented/dccp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/transport/NotImplemented/rsvp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/protocols/transport/NotImplemented/sctp.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pcapkit/vendor/ipv4/__init__.py +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pypcapkit.egg-info/dependency_links.txt +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pypcapkit.egg-info/entry_points.txt +0 -0
- /pypcapkit-0.16.2/pypcapkit.egg-info/zip-safe → /pypcapkit-1.0.0/pypcapkit.egg-info/not-zip-safe +0 -0
- {pypcapkit-0.16.2 → pypcapkit-1.0.0}/pypcapkit.egg-info/top_level.txt +0 -0
@@ -1,21 +1,15 @@
|
|
1
1
|
global-exclude .DS_Store
|
2
2
|
|
3
|
-
global-include *.
|
3
|
+
global-include *.rst
|
4
4
|
global-include *.py
|
5
5
|
|
6
|
+
prune .eggs
|
6
7
|
prune .github
|
7
8
|
prune .venv
|
8
|
-
prune
|
9
|
-
|
10
|
-
prune archive
|
11
|
-
prune devel
|
12
|
-
prune doc
|
13
|
-
prune release
|
9
|
+
prune docs
|
14
10
|
prune sample
|
15
|
-
prune src
|
16
|
-
prune test
|
17
|
-
prune testbench
|
18
11
|
prune temp
|
12
|
+
prune test
|
19
13
|
|
20
14
|
include README.rst
|
21
15
|
include LICENSE
|
@@ -1,50 +1,54 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pypcapkit
|
3
|
-
Version: 0.
|
4
|
-
Summary:
|
5
|
-
|
6
|
-
Download-URL: https://github.com/JarryShaw/PyPCAPKit/archive/v0.16.2.tar.gz
|
7
|
-
Author: Jarry Shaw
|
8
|
-
Author-email: jarryshaw@icloud.com
|
3
|
+
Version: 1.0.0
|
4
|
+
Summary: PyPCAPKit: comprehensive network packet analysis library
|
5
|
+
Author-email: Jarry Shaw <jarryshaw@icloud.com>
|
9
6
|
Maintainer: Jarry Shaw
|
10
|
-
Maintainer-email: jarryshaw@icloud.com
|
11
7
|
License: BSD 3-Clause License
|
12
|
-
|
13
|
-
|
8
|
+
Project-URL: homepage, https://jarryshaw.github.io/PyPCAPKit/
|
9
|
+
Project-URL: documentation, https://jarryshaw.github.io/PyPCAPKit/
|
10
|
+
Project-URL: repository, https://github.com/JarryShaw/PyPCAPKit
|
11
|
+
Project-URL: changelog, https://github.com/JarryShaw/PyPCAPKit/releases
|
12
|
+
Keywords: network,pcap,packet
|
14
13
|
Classifier: Development Status :: 5 - Production/Stable
|
15
14
|
Classifier: Environment :: Console
|
16
15
|
Classifier: Environment :: MacOS X
|
17
16
|
Classifier: Environment :: Win32 (MS Windows)
|
18
17
|
Classifier: Intended Audience :: Developers
|
18
|
+
Classifier: Intended Audience :: Information Technology
|
19
|
+
Classifier: Intended Audience :: Science/Research
|
20
|
+
Classifier: Intended Audience :: System Administrators
|
21
|
+
Classifier: Intended Audience :: Telecommunications Industry
|
19
22
|
Classifier: License :: OSI Approved :: BSD License
|
20
|
-
Classifier: Natural Language :: English
|
21
23
|
Classifier: Operating System :: OS Independent
|
22
|
-
Classifier: Programming Language :: Python
|
23
24
|
Classifier: Programming Language :: Python :: 3
|
24
25
|
Classifier: Programming Language :: Python :: 3.6
|
25
26
|
Classifier: Programming Language :: Python :: 3.7
|
26
27
|
Classifier: Programming Language :: Python :: 3.8
|
27
28
|
Classifier: Programming Language :: Python :: 3.9
|
28
29
|
Classifier: Programming Language :: Python :: 3.10
|
30
|
+
Classifier: Programming Language :: Python :: 3.11
|
29
31
|
Classifier: Programming Language :: Python :: 3 :: Only
|
30
|
-
Classifier: Programming Language :: Python :: Implementation
|
31
32
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
32
33
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
34
|
+
Classifier: Topic :: Security
|
33
35
|
Classifier: Topic :: System :: Networking
|
36
|
+
Classifier: Topic :: System :: Networking :: Monitoring
|
34
37
|
Classifier: Topic :: Utilities
|
35
38
|
Classifier: Typing :: Typed
|
36
|
-
Requires-Python:
|
39
|
+
Requires-Python: <4,>=3.6
|
37
40
|
Description-Content-Type: text/x-rst
|
38
|
-
Provides-Extra: all
|
39
41
|
Provides-Extra: cli
|
40
42
|
Provides-Extra: DPKT
|
41
43
|
Provides-Extra: Scapy
|
42
44
|
Provides-Extra: PyShark
|
43
45
|
Provides-Extra: vendor
|
46
|
+
Provides-Extra: all
|
47
|
+
Provides-Extra: docs
|
44
48
|
License-File: LICENSE
|
45
49
|
|
46
|
-
PyPCAPKit -
|
47
|
-
|
50
|
+
PyPCAPKit - Comprehensive Network Packet Analysis Library
|
51
|
+
=========================================================
|
48
52
|
|
49
53
|
For any technical and/or maintenance information,
|
50
54
|
please kindly refer to the |docs|_.
|
@@ -53,9 +57,10 @@ PyPCAPKit - Stream PCAP File Extractor
|
|
53
57
|
.. _docs: https://jarryshaw.github.io/PyPCAPKit/
|
54
58
|
|
55
59
|
The PyPCAPKit project is an open source Python program focus
|
56
|
-
on `PCAP`_ parsing and analysis, which works as a
|
57
|
-
|
58
|
-
|
60
|
+
on `PCAP`_ parsing and analysis, which works as a network
|
61
|
+
packet extraction, construction and analysis library. With
|
62
|
+
support of `DictDumper`_, it shall support multiple output
|
63
|
+
report formats.
|
59
64
|
|
60
65
|
The whole project supports **Python 3.6** or later.
|
61
66
|
|
@@ -130,10 +135,12 @@ Engine Comparison
|
|
130
135
|
-----------------
|
131
136
|
|
132
137
|
Due to the general overhead of ``pcapkit``, its extraction procedure takes
|
133
|
-
around *0.
|
134
|
-
comparing to other popular extration engines availbale on the market
|
135
|
-
``pcapkit``
|
136
|
-
|
138
|
+
around *0.96* milliseconds per packet, which is already impressive but not enough
|
139
|
+
comparing to other popular extration engines availbale on the market, given the
|
140
|
+
fact that ``pcapkit`` is a **comprehensive** packet processing module.
|
141
|
+
|
142
|
+
Additionally, ``pcapkit`` introduced alternative extractionengines to accelerate
|
143
|
+
this procedure. By now ``pcapkit`` supports `Scapy`_, `DPKT`_, and `PyShark`_.
|
137
144
|
|
138
145
|
Test Environment
|
139
146
|
~~~~~~~~~~~~~~~~
|
@@ -141,27 +148,23 @@ Test Environment
|
|
141
148
|
.. list-table::
|
142
149
|
|
143
150
|
* - Operating System
|
144
|
-
- macOS
|
145
|
-
* -
|
146
|
-
-
|
147
|
-
* - Processor Speed
|
148
|
-
- 2.6 GHz
|
149
|
-
* - Total Number of Cores
|
150
|
-
- 6
|
151
|
+
- macOS Ventura 13.4 Beta (22F5037d)
|
152
|
+
* - Chip
|
153
|
+
- Apple M2 Pro
|
151
154
|
* - Memory
|
152
155
|
- 16 GB
|
153
156
|
|
154
157
|
Test Results
|
155
158
|
~~~~~~~~~~~~
|
156
159
|
|
157
|
-
=============
|
158
|
-
Engine Performance (
|
159
|
-
=============
|
160
|
-
``dpkt`` 0.
|
161
|
-
``scapy`` 0.
|
162
|
-
``pcapkit`` 0.
|
163
|
-
``pyshark``
|
164
|
-
=============
|
160
|
+
============= ===========================
|
161
|
+
Engine Performance (ms per packet)
|
162
|
+
============= ===========================
|
163
|
+
``dpkt`` 0.048088_922256
|
164
|
+
``scapy`` 0.127444_444444
|
165
|
+
``pcapkit`` 0.964180_847514
|
166
|
+
``pyshark`` 23.665003_003003
|
167
|
+
============= ===========================
|
165
168
|
|
166
169
|
------------
|
167
170
|
Installation
|
@@ -1,5 +1,5 @@
|
|
1
|
-
PyPCAPKit -
|
2
|
-
|
1
|
+
PyPCAPKit - Comprehensive Network Packet Analysis Library
|
2
|
+
=========================================================
|
3
3
|
|
4
4
|
For any technical and/or maintenance information,
|
5
5
|
please kindly refer to the |docs|_.
|
@@ -8,9 +8,10 @@ PyPCAPKit - Stream PCAP File Extractor
|
|
8
8
|
.. _docs: https://jarryshaw.github.io/PyPCAPKit/
|
9
9
|
|
10
10
|
The PyPCAPKit project is an open source Python program focus
|
11
|
-
on `PCAP`_ parsing and analysis, which works as a
|
12
|
-
|
13
|
-
|
11
|
+
on `PCAP`_ parsing and analysis, which works as a network
|
12
|
+
packet extraction, construction and analysis library. With
|
13
|
+
support of `DictDumper`_, it shall support multiple output
|
14
|
+
report formats.
|
14
15
|
|
15
16
|
The whole project supports **Python 3.6** or later.
|
16
17
|
|
@@ -85,10 +86,12 @@ Engine Comparison
|
|
85
86
|
-----------------
|
86
87
|
|
87
88
|
Due to the general overhead of ``pcapkit``, its extraction procedure takes
|
88
|
-
around *0.
|
89
|
-
comparing to other popular extration engines availbale on the market
|
90
|
-
``pcapkit``
|
91
|
-
|
89
|
+
around *0.96* milliseconds per packet, which is already impressive but not enough
|
90
|
+
comparing to other popular extration engines availbale on the market, given the
|
91
|
+
fact that ``pcapkit`` is a **comprehensive** packet processing module.
|
92
|
+
|
93
|
+
Additionally, ``pcapkit`` introduced alternative extractionengines to accelerate
|
94
|
+
this procedure. By now ``pcapkit`` supports `Scapy`_, `DPKT`_, and `PyShark`_.
|
92
95
|
|
93
96
|
Test Environment
|
94
97
|
~~~~~~~~~~~~~~~~
|
@@ -96,27 +99,23 @@ Test Environment
|
|
96
99
|
.. list-table::
|
97
100
|
|
98
101
|
* - Operating System
|
99
|
-
- macOS
|
100
|
-
* -
|
101
|
-
-
|
102
|
-
* - Processor Speed
|
103
|
-
- 2.6 GHz
|
104
|
-
* - Total Number of Cores
|
105
|
-
- 6
|
102
|
+
- macOS Ventura 13.4 Beta (22F5037d)
|
103
|
+
* - Chip
|
104
|
+
- Apple M2 Pro
|
106
105
|
* - Memory
|
107
106
|
- 16 GB
|
108
107
|
|
109
108
|
Test Results
|
110
109
|
~~~~~~~~~~~~
|
111
110
|
|
112
|
-
=============
|
113
|
-
Engine Performance (
|
114
|
-
=============
|
115
|
-
``dpkt`` 0.
|
116
|
-
``scapy`` 0.
|
117
|
-
``pcapkit`` 0.
|
118
|
-
``pyshark``
|
119
|
-
=============
|
111
|
+
============= ===========================
|
112
|
+
Engine Performance (ms per packet)
|
113
|
+
============= ===========================
|
114
|
+
``dpkt`` 0.048088_922256
|
115
|
+
``scapy`` 0.127444_444444
|
116
|
+
``pcapkit`` 0.964180_847514
|
117
|
+
``pyshark`` 23.665003_003003
|
118
|
+
============= ===========================
|
120
119
|
|
121
120
|
------------
|
122
121
|
Installation
|
@@ -3,6 +3,8 @@
|
|
3
3
|
"""Stream PCAP File Extractor
|
4
4
|
================================
|
5
5
|
|
6
|
+
.. module:: pcapkit
|
7
|
+
|
6
8
|
:mod:`pcapkit` is an independent open source library, using only
|
7
9
|
`DictDumper`_ as its formatted output dumper.
|
8
10
|
|
@@ -74,7 +76,7 @@ from pcapkit.utilities.warnings import DevModeWarning
|
|
74
76
|
if DEVMODE:
|
75
77
|
warnings.showwarning('development mode enabled', DevModeWarning,
|
76
78
|
filename=__file__, lineno=0,
|
77
|
-
line=f"PCAPKIT_DEVMODE={os.environ
|
79
|
+
line=f"PCAPKIT_DEVMODE={os.environ.get('PCAPKIT_DEVMODE', '1')}")
|
78
80
|
else:
|
79
81
|
ROOT = os.path.dirname(os.path.realpath(__file__))
|
80
82
|
tbtrim.set_trim_rule(lambda filename: ROOT in os.path.realpath(filename),
|
@@ -106,5 +108,9 @@ __all__ = [
|
|
106
108
|
|
107
109
|
'TCP', 'UDP', # Transport Layer
|
108
110
|
|
109
|
-
'FTP', '
|
111
|
+
'FTP', 'FTP_DATA', # Application Layer
|
112
|
+
'HTTP',
|
110
113
|
]
|
114
|
+
|
115
|
+
#: version number
|
116
|
+
__version__ = '1.0.0'
|
@@ -2,6 +2,8 @@
|
|
2
2
|
"""Command Line Tool
|
3
3
|
=======================
|
4
4
|
|
5
|
+
.. module:: pcapkit.__main__
|
6
|
+
|
5
7
|
.. important::
|
6
8
|
|
7
9
|
This module requires ``emoji`` package to be installed.
|
@@ -17,6 +19,9 @@ import argparse
|
|
17
19
|
import sys
|
18
20
|
from typing import TYPE_CHECKING
|
19
21
|
|
22
|
+
from pcapkit import __version__
|
23
|
+
from pcapkit.foundation.extraction import Extractor
|
24
|
+
from pcapkit.interface import JSON, PLIST, TREE
|
20
25
|
from pcapkit.utilities.compat import ModuleNotFoundError # pylint: disable=redefined-builtin
|
21
26
|
from pcapkit.utilities.exceptions import stacklevel
|
22
27
|
from pcapkit.utilities.warnings import EmojiWarning, warn
|
@@ -27,15 +32,11 @@ except ModuleNotFoundError:
|
|
27
32
|
warn("dependency package 'emoji' not found",
|
28
33
|
EmojiWarning, stacklevel=stacklevel())
|
29
34
|
|
30
|
-
|
31
|
-
from pcapkit.interface import JSON, PLIST, TREE
|
35
|
+
__all__ = ['main']
|
32
36
|
|
33
37
|
if TYPE_CHECKING:
|
34
38
|
from argparse import ArgumentParser
|
35
39
|
|
36
|
-
#: version number
|
37
|
-
__version__ = '0.16.2'
|
38
|
-
|
39
40
|
|
40
41
|
def get_parser() -> 'ArgumentParser':
|
41
42
|
"""CLI argument parser."""
|
@@ -103,7 +104,7 @@ def main() -> 'int':
|
|
103
104
|
files=args.files, format=fmt,
|
104
105
|
layer=args.layer, protocol=args.protocol,
|
105
106
|
engine=args.engine, extension=args.auto_extension,
|
106
|
-
verbose=args.verbose)
|
107
|
+
verbose=args.verbose) # type: ignore[var-annotated]
|
107
108
|
|
108
109
|
if args.verbose:
|
109
110
|
try:
|
@@ -3,6 +3,8 @@
|
|
3
3
|
"""Library Index
|
4
4
|
===================
|
5
5
|
|
6
|
+
.. module:: pcapkit.all
|
7
|
+
|
6
8
|
:mod:`pcapkit` has defined various and numerous functions
|
7
9
|
and classes, which have different features and purposes.
|
8
10
|
To make a simple index for this library, :mod:`pcapkit.all`
|
@@ -52,9 +54,19 @@ __all__ = [
|
|
52
54
|
'Info', # Info Class
|
53
55
|
'ProtoChain', # ProtoChain
|
54
56
|
'VersionInfo', # Version
|
57
|
+
'NumberField', 'Int32Field', 'UInt32Field', # numeric protocol fields
|
58
|
+
'Int16Field', 'UInt16Field', 'Int64Field', 'UInt64Field',
|
59
|
+
'Int8Field', 'UInt8Field', 'EnumField',
|
60
|
+
'BytesField', 'StringField', 'BitField', # text protocol fields
|
61
|
+
'PaddingField',
|
62
|
+
'ConditionalField', 'PayloadField', 'SchemaField', # misc protocol fields
|
63
|
+
'ForwardMatchField', 'NoValueField',
|
64
|
+
'IPv4AddressField', 'IPv6AddressField', # IP address protocol fields
|
65
|
+
'IPv4InterfaceField', 'IPv6InterfaceField',
|
66
|
+
'ListField', 'OptionField', # container protocol fields
|
55
67
|
|
56
68
|
# pcapkit.dumpkit
|
57
|
-
'PCAPIO',
|
69
|
+
'PCAPIO', # PCAP Dumper
|
58
70
|
'NotImplementedIO', # Simulated I/O
|
59
71
|
|
60
72
|
# pcapkit.foundation
|
@@ -67,11 +79,16 @@ __all__ = [
|
|
67
79
|
|
68
80
|
# pcapkit.foundation.registry
|
69
81
|
'register_protocol',
|
70
|
-
'register_linktype', 'register_pcap',
|
82
|
+
'register_linktype', 'register_pcap', 'register_pcapng',
|
71
83
|
'register_ethertype', 'register_transtype',
|
72
84
|
'register_port', 'register_tcp_port', 'register_udp_port',
|
73
|
-
'register_output',
|
85
|
+
'register_output',
|
86
|
+
'register_extractor_dumper', 'register_extractor_engine',
|
87
|
+
'register_traceflow',
|
88
|
+
'register_pcapng_block', 'register_pcapng_option', 'register_pcapng_secrets',
|
89
|
+
'register_pcapng_record',
|
74
90
|
'register_hopopt', 'register_ipv6_opts', 'register_ipv6_route',
|
91
|
+
'register_ipv4', 'register_hip',
|
75
92
|
'register_tcp', 'register_mptcp',
|
76
93
|
'register_http',
|
77
94
|
|
@@ -92,11 +109,15 @@ __all__ = [
|
|
92
109
|
'HIP', 'HOPOPT', 'IPv6_Frag', 'IPv6_Opts', 'IPv6_Route', 'MH',
|
93
110
|
# IPv6 Extension Header
|
94
111
|
'TCP', 'UDP', # Transport Layer
|
95
|
-
'FTP', '
|
112
|
+
'FTP', 'FTP_DATA', # Application Layer
|
113
|
+
'HTTP',
|
114
|
+
'Schema', 'schema', # Protocol Schema
|
115
|
+
'Data', 'data', # Protocol Data
|
96
116
|
|
97
117
|
# pcapkit.toolkit
|
98
118
|
'ipv4_reassembly', 'ipv6_reassembly', 'tcp_reassembly', 'tcp_traceflow',
|
99
|
-
|
119
|
+
'pcapng_ipv4_reassembly', 'pcapng_ipv6_reassembly', 'pcapng_tcp_reassembly', 'pcapng_tcp_traceflow',
|
120
|
+
'pcapng_block2frame', # default engine
|
100
121
|
'dpkt_ipv6_hdr_len', 'dpkt_packet2chain', 'dpkt_packet2dict',
|
101
122
|
'dpkt_ipv4_reassembly', 'dpkt_ipv6_reassembly', 'dpkt_tcp_reassembly', 'dpkt_tcp_traceflow',
|
102
123
|
# DPKT engine
|
@@ -11,6 +11,9 @@ automatically generated from the :mod:`pcapkit.vendor` module.
|
|
11
11
|
# IANA registration
|
12
12
|
from pcapkit.const.reg import *
|
13
13
|
|
14
|
+
# Miscellanous
|
15
|
+
from pcapkit.const.pcapng import *
|
16
|
+
|
14
17
|
# per protocol
|
15
18
|
from pcapkit.const.arp import *
|
16
19
|
from pcapkit.const.ftp import *
|
@@ -36,26 +39,42 @@ __all__ = [
|
|
36
39
|
'HIP_Certificate', 'HIP_Cipher', 'HIP_DITypes', 'HIP_ECDSACurve', 'HIP_ECDSALowCurve',
|
37
40
|
'HIP_ESPTransformSuite', 'HIP_Group', 'HIP_HIAlgorithm', 'HIP_HITSuite', 'HIP_NATTraversal',
|
38
41
|
'HIP_NotifyMessage', 'HIP_Packet', 'HIP_Parameter', 'HIP_Registration', 'HIP_RegistrationFailure',
|
39
|
-
'HIP_Suite', 'HIP_Transport',
|
42
|
+
'HIP_Suite', 'HIP_Transport', 'HIP_EdDSACurve',
|
40
43
|
# HTTP
|
41
|
-
'HTTP_ErrorCode', 'HTTP_Frame', 'HTTP_Setting',
|
44
|
+
'HTTP_ErrorCode', 'HTTP_Frame', 'HTTP_Method', 'HTTP_Setting', 'HTTP_Status',
|
42
45
|
# IPv4
|
43
46
|
'IPv4_ClassificationLevel', 'IPv4_OptionClass', 'IPv4_OptionNumber', 'IPv4_ProtectionAuthority',
|
44
47
|
'IPv4_QSFunction', 'IPv4_RouterAlert', 'IPv4_ToSDelay', 'IPv4_ToSECN', 'IPv4_ToSPrecedence',
|
45
48
|
'IPv4_ToSReliability', 'IPv4_ToSThroughput', 'IPv4_TSFlag',
|
46
49
|
# IPv6
|
47
50
|
'IPv6_ExtensionHeader', 'IPv6_Option', 'IPv6_QSFunction', 'IPv6_RouterAlert', 'IPv6_Routing',
|
48
|
-
'IPv6_SeedID', 'IPv6_SMFDPDMode', 'IPv6_TaggerID',
|
51
|
+
'IPv6_SeedID', 'IPv6_SMFDPDMode', 'IPv6_TaggerID', 'IPv6_OptionAction',
|
49
52
|
# IPX
|
50
53
|
'IPX_Packet', 'IPX_Socket',
|
51
54
|
# L2TP
|
52
55
|
'L2TP_Type',
|
53
56
|
# MH
|
54
|
-
'MH_Packet',
|
57
|
+
'MH_Packet', 'MH_Option', 'MH_DNSStatusCode', 'MH_ACKStatusCode',
|
58
|
+
'MH_MNIDSubtype', 'MH_StatusCode', 'MH_EnumeratingAlgorithm',
|
59
|
+
'MH_AuthSubtype', 'MH_HandoffType', 'MH_AccessType',
|
60
|
+
'MH_BindingUpdateFlag', 'MH_BindingACKFlag', 'MH_DSMIPv6HomeAddress',
|
61
|
+
'MH_BindingRevocation', 'MH_RevocationTrigger', 'MH_RevocationStatusCode',
|
62
|
+
'MH_HomeAddressReply', 'MH_DHCPSupportMode', 'MH_HandoverInitiateFlag',
|
63
|
+
'MH_HandoverACKFlag', 'MH_HandoverACKStatus', 'MH_HandoverACKStatus',
|
64
|
+
'MH_FlowIDStatus', 'MH_FlowIDSuboption', 'MH_TrafficSelector',
|
65
|
+
'MH_MNGroupID', 'MH_DSMIP6TLSPacket', 'MH_ANISuboption', 'MH_OperatorID',
|
66
|
+
'MH_UpdateNotificationReason', 'MH_UpdateNotificationACKStatus',
|
67
|
+
'MH_FlowBindingType', 'MH_FlowBindingIndicationTrigger',
|
68
|
+
'MH_FlowBindingACKStatus', 'MH_FlowBindingAction', 'MH_QoSAttribute',
|
69
|
+
'MH_LMAControlledMAGSuboption',
|
55
70
|
# OSPF
|
56
71
|
'OSPF_Authentication', 'OSPF_Packet',
|
57
72
|
# TCP
|
58
73
|
'TCP_Checksum', 'TCP_Option',
|
59
74
|
# VLAN
|
60
75
|
'VLAN_PriorityLevel',
|
76
|
+
# PCAPNG
|
77
|
+
'PCAPNG_BlockType', 'PCAPNG_OptionType', 'PCAPNG_HashAlgorithm',
|
78
|
+
'PCAPNG_VerdictType', 'PCAPNG_RecordType', 'PCAPNG_SecretsType',
|
79
|
+
'PCAPNG_FilterType',
|
61
80
|
]
|
@@ -3,6 +3,8 @@
|
|
3
3
|
"""Hardware Types
|
4
4
|
====================
|
5
5
|
|
6
|
+
.. module:: pcapkit.const.arp.hardware
|
7
|
+
|
6
8
|
This module contains the constant enumeration for **Hardware Types**,
|
7
9
|
which is automatically generated from :class:`pcapkit.vendor.arp.hardware.Hardware`.
|
8
10
|
|
@@ -132,6 +134,9 @@ class Hardware(IntEnum):
|
|
132
134
|
#: HFI [Tseng-Hui Lin]
|
133
135
|
HFI = 37
|
134
136
|
|
137
|
+
#: Unified Bus (UB) [Luoqing Zhou]
|
138
|
+
Unified_Bus = 38
|
139
|
+
|
135
140
|
#: HW_EXP2 [:rfc:`5494`]
|
136
141
|
HW_EXP2 = 256
|
137
142
|
|
@@ -149,11 +154,12 @@ class Hardware(IntEnum):
|
|
149
154
|
key: Key to get enum item.
|
150
155
|
default: Default value if not found.
|
151
156
|
|
157
|
+
:meta private:
|
152
158
|
"""
|
153
159
|
if isinstance(key, int):
|
154
160
|
return Hardware(key)
|
155
161
|
if key not in Hardware._member_map_: # pylint: disable=no-member
|
156
|
-
extend_enum(Hardware, key, default)
|
162
|
+
return extend_enum(Hardware, key, default)
|
157
163
|
return Hardware[key] # type: ignore[misc]
|
158
164
|
|
159
165
|
@classmethod
|
@@ -166,12 +172,10 @@ class Hardware(IntEnum):
|
|
166
172
|
"""
|
167
173
|
if not (isinstance(value, int) and 0 <= value <= 65535):
|
168
174
|
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
169
|
-
if
|
175
|
+
if 39 <= value <= 255:
|
170
176
|
#: Unassigned
|
171
|
-
extend_enum(cls, 'Unassigned_%d' % value, value)
|
172
|
-
return cls(value)
|
177
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
173
178
|
if 258 <= value <= 65534:
|
174
179
|
#: Unassigned
|
175
|
-
extend_enum(cls, 'Unassigned_%d' % value, value)
|
176
|
-
return cls(value)
|
180
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
177
181
|
return super()._missing_(value)
|
@@ -3,6 +3,8 @@
|
|
3
3
|
"""Operation Codes
|
4
4
|
=====================
|
5
5
|
|
6
|
+
.. module:: pcapkit.const.arp.operation
|
7
|
+
|
6
8
|
This module contains the constant enumeration for **Operation Codes**,
|
7
9
|
which is automatically generated from :class:`pcapkit.vendor.arp.operation.Operation`.
|
8
10
|
|
@@ -105,11 +107,12 @@ class Operation(IntEnum):
|
|
105
107
|
key: Key to get enum item.
|
106
108
|
default: Default value if not found.
|
107
109
|
|
110
|
+
:meta private:
|
108
111
|
"""
|
109
112
|
if isinstance(key, int):
|
110
113
|
return Operation(key)
|
111
114
|
if key not in Operation._member_map_: # pylint: disable=no-member
|
112
|
-
extend_enum(Operation, key, default)
|
115
|
+
return extend_enum(Operation, key, default)
|
113
116
|
return Operation[key] # type: ignore[misc]
|
114
117
|
|
115
118
|
@classmethod
|
@@ -124,6 +127,5 @@ class Operation(IntEnum):
|
|
124
127
|
raise ValueError('%r is not a valid %s' % (value, cls.__name__))
|
125
128
|
if 26 <= value <= 65534:
|
126
129
|
#: Unassigned
|
127
|
-
extend_enum(cls, 'Unassigned_%d' % value, value)
|
128
|
-
return cls(value)
|
130
|
+
return extend_enum(cls, 'Unassigned_%d' % value, value)
|
129
131
|
return super()._missing_(value)
|