summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorgutteridge <gutteridge@pkgsrc.org>2019-11-04 05:48:26 +0000
committergutteridge <gutteridge@pkgsrc.org>2019-11-04 05:48:26 +0000
commit6b0780a3042ac01ccf7895f5039f9ef1f852da1b (patch)
treea7f9bedc4b8048e4fe69b3e0653680fe28da2077 /net
parent816c21667c115d835f8b7f2c4b73e2ccf1c53674 (diff)
downloadpkgsrc-6b0780a3042ac01ccf7895f5039f9ef1f852da1b.tar.gz
scapy: update to 2.4.3
This latest version of scapy has improved BSD and SunOS support, among other changes. I've continued our DragonFly support, since we were already carrying patches for it. (These should be submitted upstream.) (This also addresses PR pkg/54550, submitted by Gabriel Potter of scapy. Thanks for the reminder, and for all your work on your project!) I have tested a pkgsrc build and scapy regression suite in the following environments: NetBSD 8.1_STABLE with Python 3.6.9 NetBSD 9.99.17 with Python 3.7.5 DragonFly BSD 5.6.2 with Python 3.6.9 OpenIndiana Hipster 2019.04 with Python 3.7.5 Fedora Linux 30 with Python 3.7.5 Significant details from the upstream change summaries: 2.4.3 Main Changes Core 364 commits since v2.4.2 better native support for FreeBSD, NetBSD, OpenBSD Windows: native RAW sockets support, load interfaces/routes using C calls, ... Solaris: fixed support latency improvements sniff() can be used to test BPF fiters on pcap files more unit tests and Python3 compatibility asynchronous sniffing UTScapy vim syntax highlighting drop distutils for setuptools Console / IPython integration improvements Layers Major changes New HTTP (from the deprecated scapy-http module), TLS 1.3, ATA over Ethernet, OVD, IEC 60870-5-104, enip, ... Improved NetflowV9, ISOTP, Zigbee, RTR, BLE, PPI, DNS, LLDP, ... Bluetooth/BTLE rework PPI / 802.11 improvements 2.4.2 Main changes Gabriel Potter is officially part of the Scapy maintainers team PEP08 compliance (see #1277) Speed improvements (see #642) Core 253 merged pull requests since v2.4.0 Python 3.7 support Enhanced Windows support unit testing is now 100% tox based Layers Major changes Many automotive related layers added (ISO-TP...) New EtherCat OPCDA SOCKS USBpcap RPKI Improved MACsec, MQTT, MPLS, DNS, ARP, Dot15d4, Zigbee, Bluetooth4LE, RadioTap ... Enhanced monitor mode support Other addresses a v2.4.0 vulnerability 2.4.0 Main changes Python3 support 85% code coverage Core Pcap/PcapNg improvements enhanced Windows support OpenBSD improvements OSX 802.11 monitor mode Krack AP module iPython support automatically tested on Linux, OSX & Windows ... Layers Major changes TLS (including TLS1.3), X.509 ... New HTTP/2, EAP-TTLS, TACACS, MQTT ... Improved IPv6, SCTP, NTP, PPTP, CDP, BGP, ISIS ...
Diffstat (limited to 'net')
-rw-r--r--net/scapy/Makefile13
-rw-r--r--net/scapy/PLIST457
-rw-r--r--net/scapy/distinfo19
-rw-r--r--net/scapy/options.mk16
-rw-r--r--net/scapy/patches/patch-aa21
-rw-r--r--net/scapy/patches/patch-ab44
-rw-r--r--net/scapy/patches/patch-ac13
-rw-r--r--net/scapy/patches/patch-ad22
-rw-r--r--net/scapy/patches/patch-af17
-rw-r--r--net/scapy/patches/patch-scapy_arch_bpf_supersocket.py32
-rw-r--r--net/scapy/patches/patch-scapy_consts.py16
11 files changed, 543 insertions, 127 deletions
diff --git a/net/scapy/Makefile b/net/scapy/Makefile
index 9be2fb2ad5d..aa506a82881 100644
--- a/net/scapy/Makefile
+++ b/net/scapy/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.29 2019/11/03 11:45:52 rillig Exp $
+# $NetBSD: Makefile,v 1.30 2019/11/04 05:48:26 gutteridge Exp $
-DISTNAME= scapy-2.3.2
-PKGREVISION= 1
+DISTNAME= scapy-2.4.3
CATEGORIES= net
MASTER_SITES= ${MASTER_SITE_GITHUB:=secdev/}
GITHUB_TAG= v${PKGVERSION_NOREV}
@@ -11,13 +10,9 @@ HOMEPAGE= http://www.secdev.org/projects/scapy/
COMMENT= Interactive packet manipulation program
LICENSE= gnu-gpl-v2
-DEPENDS+= ${PYPKGPREFIX}-libpcap-[0-9]*:../../net/py-libpcap
-DEPENDS+= ${PYPKGPREFIX}-libdnet-[0-9]*:../../net/py-libdnet
-DEPENDS+= ${PYPKGPREFIX}-readline-[0-9]*:../../devel/py-readline
-
NO_BUILD= yes
-PYTHON_VERSIONS_ACCEPTED= 27 # py-libpcap, py-libdnet
+PYTHON_VERSIONS_ACCEPTED= 37 36 27 # 3.8 not officially supported yet
INSTALLATION_DIRS+= share/examples/scapy
@@ -43,5 +38,5 @@ do-test:
cd ${WRKSRC}/test && ${SETENV} PYTHON=${PYTHONBIN} ./run_tests
.include "../../lang/python/application.mk"
-.include "../../lang/python/distutils.mk"
+.include "../../lang/python/egg.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/net/scapy/PLIST b/net/scapy/PLIST
index 00cf8dfeca5..8fedcec5f59 100644
--- a/net/scapy/PLIST
+++ b/net/scapy/PLIST
@@ -1,10 +1,19 @@
-@comment $NetBSD: PLIST,v 1.8 2016/05/09 11:07:51 adam Exp $
+@comment $NetBSD: PLIST,v 1.9 2019/11/04 05:48:26 gutteridge Exp $
bin/UTscapy
bin/scapy
-${PYSITELIB}/${EGG_FILE}
+${PYSITELIB}/scapy-git_archive.dev304758016-py${PYVERSSUFFIX}.egg-info/PKG-INFO
+${PYSITELIB}/scapy-git_archive.dev304758016-py${PYVERSSUFFIX}.egg-info/SOURCES.txt
+${PYSITELIB}/scapy-git_archive.dev304758016-py${PYVERSSUFFIX}.egg-info/dependency_links.txt
+${PYSITELIB}/scapy-git_archive.dev304758016-py${PYVERSSUFFIX}.egg-info/entry_points.txt
+${PYSITELIB}/scapy-git_archive.dev304758016-py${PYVERSSUFFIX}.egg-info/not-zip-safe
+${PYSITELIB}/scapy-git_archive.dev304758016-py${PYVERSSUFFIX}.egg-info/requires.txt
+${PYSITELIB}/scapy-git_archive.dev304758016-py${PYVERSSUFFIX}.egg-info/top_level.txt
${PYSITELIB}/scapy/__init__.py
${PYSITELIB}/scapy/__init__.pyc
${PYSITELIB}/scapy/__init__.pyo
+${PYSITELIB}/scapy/__main__.py
+${PYSITELIB}/scapy/__main__.pyc
+${PYSITELIB}/scapy/__main__.pyo
${PYSITELIB}/scapy/all.py
${PYSITELIB}/scapy/all.pyc
${PYSITELIB}/scapy/all.pyo
@@ -14,9 +23,21 @@ ${PYSITELIB}/scapy/ansmachine.pyo
${PYSITELIB}/scapy/arch/__init__.py
${PYSITELIB}/scapy/arch/__init__.pyc
${PYSITELIB}/scapy/arch/__init__.pyo
-${PYSITELIB}/scapy/arch/bsd.py
-${PYSITELIB}/scapy/arch/bsd.pyc
-${PYSITELIB}/scapy/arch/bsd.pyo
+${PYSITELIB}/scapy/arch/bpf/__init__.py
+${PYSITELIB}/scapy/arch/bpf/__init__.pyc
+${PYSITELIB}/scapy/arch/bpf/__init__.pyo
+${PYSITELIB}/scapy/arch/bpf/consts.py
+${PYSITELIB}/scapy/arch/bpf/consts.pyc
+${PYSITELIB}/scapy/arch/bpf/consts.pyo
+${PYSITELIB}/scapy/arch/bpf/core.py
+${PYSITELIB}/scapy/arch/bpf/core.pyc
+${PYSITELIB}/scapy/arch/bpf/core.pyo
+${PYSITELIB}/scapy/arch/bpf/supersocket.py
+${PYSITELIB}/scapy/arch/bpf/supersocket.pyc
+${PYSITELIB}/scapy/arch/bpf/supersocket.pyo
+${PYSITELIB}/scapy/arch/common.py
+${PYSITELIB}/scapy/arch/common.pyc
+${PYSITELIB}/scapy/arch/common.pyo
${PYSITELIB}/scapy/arch/linux.py
${PYSITELIB}/scapy/arch/linux.pyc
${PYSITELIB}/scapy/arch/linux.pyo
@@ -32,6 +53,12 @@ ${PYSITELIB}/scapy/arch/unix.pyo
${PYSITELIB}/scapy/arch/windows/__init__.py
${PYSITELIB}/scapy/arch/windows/__init__.pyc
${PYSITELIB}/scapy/arch/windows/__init__.pyo
+${PYSITELIB}/scapy/arch/windows/native.py
+${PYSITELIB}/scapy/arch/windows/native.pyc
+${PYSITELIB}/scapy/arch/windows/native.pyo
+${PYSITELIB}/scapy/arch/windows/structures.py
+${PYSITELIB}/scapy/arch/windows/structures.pyc
+${PYSITELIB}/scapy/arch/windows/structures.pyo
${PYSITELIB}/scapy/as_resolvers.py
${PYSITELIB}/scapy/as_resolvers.pyc
${PYSITELIB}/scapy/as_resolvers.pyo
@@ -62,21 +89,126 @@ ${PYSITELIB}/scapy/autorun.pyo
${PYSITELIB}/scapy/base_classes.py
${PYSITELIB}/scapy/base_classes.pyc
${PYSITELIB}/scapy/base_classes.pyo
+${PYSITELIB}/scapy/compat.py
+${PYSITELIB}/scapy/compat.pyc
+${PYSITELIB}/scapy/compat.pyo
${PYSITELIB}/scapy/config.py
${PYSITELIB}/scapy/config.pyc
${PYSITELIB}/scapy/config.pyo
-${PYSITELIB}/scapy/contrib/HomePlugAV.py
-${PYSITELIB}/scapy/contrib/HomePlugAV.pyc
-${PYSITELIB}/scapy/contrib/HomePlugAV.pyo
+${PYSITELIB}/scapy/consts.py
+${PYSITELIB}/scapy/consts.pyc
+${PYSITELIB}/scapy/consts.pyo
${PYSITELIB}/scapy/contrib/__init__.py
${PYSITELIB}/scapy/contrib/__init__.pyc
${PYSITELIB}/scapy/contrib/__init__.pyo
+${PYSITELIB}/scapy/contrib/altbeacon.py
+${PYSITELIB}/scapy/contrib/altbeacon.pyc
+${PYSITELIB}/scapy/contrib/altbeacon.pyo
+${PYSITELIB}/scapy/contrib/aoe.py
+${PYSITELIB}/scapy/contrib/aoe.pyc
+${PYSITELIB}/scapy/contrib/aoe.pyo
+${PYSITELIB}/scapy/contrib/automotive/__init__.py
+${PYSITELIB}/scapy/contrib/automotive/__init__.pyc
+${PYSITELIB}/scapy/contrib/automotive/__init__.pyo
+${PYSITELIB}/scapy/contrib/automotive/bmw/__init__.py
+${PYSITELIB}/scapy/contrib/automotive/bmw/__init__.pyc
+${PYSITELIB}/scapy/contrib/automotive/bmw/__init__.pyo
+${PYSITELIB}/scapy/contrib/automotive/bmw/enet.py
+${PYSITELIB}/scapy/contrib/automotive/bmw/enet.pyc
+${PYSITELIB}/scapy/contrib/automotive/bmw/enet.pyo
+${PYSITELIB}/scapy/contrib/automotive/ccp.py
+${PYSITELIB}/scapy/contrib/automotive/ccp.pyc
+${PYSITELIB}/scapy/contrib/automotive/ccp.pyo
+${PYSITELIB}/scapy/contrib/automotive/gm/__init__.py
+${PYSITELIB}/scapy/contrib/automotive/gm/__init__.pyc
+${PYSITELIB}/scapy/contrib/automotive/gm/__init__.pyo
+${PYSITELIB}/scapy/contrib/automotive/gm/gmlan.py
+${PYSITELIB}/scapy/contrib/automotive/gm/gmlan.pyc
+${PYSITELIB}/scapy/contrib/automotive/gm/gmlan.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/__init__.py
+${PYSITELIB}/scapy/contrib/automotive/obd/__init__.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/__init__.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/iid/__init__.py
+${PYSITELIB}/scapy/contrib/automotive/obd/iid/__init__.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/iid/__init__.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/iid/iids.py
+${PYSITELIB}/scapy/contrib/automotive/obd/iid/iids.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/iid/iids.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/mid/__init__.py
+${PYSITELIB}/scapy/contrib/automotive/obd/mid/__init__.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/mid/__init__.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/mid/mids.py
+${PYSITELIB}/scapy/contrib/automotive/obd/mid/mids.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/mid/mids.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/obd.py
+${PYSITELIB}/scapy/contrib/automotive/obd/obd.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/obd.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/packet.py
+${PYSITELIB}/scapy/contrib/automotive/obd/packet.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/packet.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/__init__.py
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/__init__.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/__init__.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids.py
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_00_1F.py
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_00_1F.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_00_1F.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_20_3F.py
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_20_3F.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_20_3F.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_40_5F.py
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_40_5F.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_40_5F.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_60_7F.py
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_60_7F.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_60_7F.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_80_9F.py
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_80_9F.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_80_9F.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_A0_C0.py
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_A0_C0.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/pid/pids_A0_C0.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/services.py
+${PYSITELIB}/scapy/contrib/automotive/obd/services.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/services.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/tid/__init__.py
+${PYSITELIB}/scapy/contrib/automotive/obd/tid/__init__.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/tid/__init__.pyo
+${PYSITELIB}/scapy/contrib/automotive/obd/tid/tids.py
+${PYSITELIB}/scapy/contrib/automotive/obd/tid/tids.pyc
+${PYSITELIB}/scapy/contrib/automotive/obd/tid/tids.pyo
+${PYSITELIB}/scapy/contrib/automotive/someip.py
+${PYSITELIB}/scapy/contrib/automotive/someip.pyc
+${PYSITELIB}/scapy/contrib/automotive/someip.pyo
+${PYSITELIB}/scapy/contrib/automotive/someip_sd.py
+${PYSITELIB}/scapy/contrib/automotive/someip_sd.pyc
+${PYSITELIB}/scapy/contrib/automotive/someip_sd.pyo
+${PYSITELIB}/scapy/contrib/automotive/uds.py
+${PYSITELIB}/scapy/contrib/automotive/uds.pyc
+${PYSITELIB}/scapy/contrib/automotive/uds.pyo
${PYSITELIB}/scapy/contrib/avs.py
${PYSITELIB}/scapy/contrib/avs.pyc
${PYSITELIB}/scapy/contrib/avs.pyo
${PYSITELIB}/scapy/contrib/bgp.py
${PYSITELIB}/scapy/contrib/bgp.pyc
${PYSITELIB}/scapy/contrib/bgp.pyo
+${PYSITELIB}/scapy/contrib/bier.py
+${PYSITELIB}/scapy/contrib/bier.pyc
+${PYSITELIB}/scapy/contrib/bier.pyo
+${PYSITELIB}/scapy/contrib/bp.py
+${PYSITELIB}/scapy/contrib/bp.pyc
+${PYSITELIB}/scapy/contrib/bp.pyo
+${PYSITELIB}/scapy/contrib/cansocket.py
+${PYSITELIB}/scapy/contrib/cansocket.pyc
+${PYSITELIB}/scapy/contrib/cansocket.pyo
+${PYSITELIB}/scapy/contrib/cansocket_native.py
+${PYSITELIB}/scapy/contrib/cansocket_native.pyc
+${PYSITELIB}/scapy/contrib/cansocket_native.pyo
+${PYSITELIB}/scapy/contrib/cansocket_python_can.py
+${PYSITELIB}/scapy/contrib/cansocket_python_can.pyc
+${PYSITELIB}/scapy/contrib/cansocket_python_can.pyo
${PYSITELIB}/scapy/contrib/carp.py
${PYSITELIB}/scapy/contrib/carp.pyc
${PYSITELIB}/scapy/contrib/carp.pyo
@@ -86,24 +218,57 @@ ${PYSITELIB}/scapy/contrib/cdp.pyo
${PYSITELIB}/scapy/contrib/chdlc.py
${PYSITELIB}/scapy/contrib/chdlc.pyc
${PYSITELIB}/scapy/contrib/chdlc.pyo
+${PYSITELIB}/scapy/contrib/coap.py
+${PYSITELIB}/scapy/contrib/coap.pyc
+${PYSITELIB}/scapy/contrib/coap.pyo
+${PYSITELIB}/scapy/contrib/dce_rpc.py
+${PYSITELIB}/scapy/contrib/dce_rpc.pyc
+${PYSITELIB}/scapy/contrib/dce_rpc.pyo
+${PYSITELIB}/scapy/contrib/diameter.py
+${PYSITELIB}/scapy/contrib/diameter.pyc
+${PYSITELIB}/scapy/contrib/diameter.pyo
${PYSITELIB}/scapy/contrib/dtp.py
${PYSITELIB}/scapy/contrib/dtp.pyc
${PYSITELIB}/scapy/contrib/dtp.pyo
+${PYSITELIB}/scapy/contrib/eddystone.py
+${PYSITELIB}/scapy/contrib/eddystone.pyc
+${PYSITELIB}/scapy/contrib/eddystone.pyo
${PYSITELIB}/scapy/contrib/eigrp.py
${PYSITELIB}/scapy/contrib/eigrp.pyc
${PYSITELIB}/scapy/contrib/eigrp.pyo
+${PYSITELIB}/scapy/contrib/enipTCP.py
+${PYSITELIB}/scapy/contrib/enipTCP.pyc
+${PYSITELIB}/scapy/contrib/enipTCP.pyo
+${PYSITELIB}/scapy/contrib/ethercat.py
+${PYSITELIB}/scapy/contrib/ethercat.pyc
+${PYSITELIB}/scapy/contrib/ethercat.pyo
${PYSITELIB}/scapy/contrib/etherip.py
${PYSITELIB}/scapy/contrib/etherip.pyc
${PYSITELIB}/scapy/contrib/etherip.pyo
-${PYSITELIB}/scapy/contrib/gsm_um.py
-${PYSITELIB}/scapy/contrib/gsm_um.pyc
-${PYSITELIB}/scapy/contrib/gsm_um.pyo
+${PYSITELIB}/scapy/contrib/geneve.py
+${PYSITELIB}/scapy/contrib/geneve.pyc
+${PYSITELIB}/scapy/contrib/geneve.pyo
${PYSITELIB}/scapy/contrib/gtp.py
${PYSITELIB}/scapy/contrib/gtp.pyc
${PYSITELIB}/scapy/contrib/gtp.pyo
+${PYSITELIB}/scapy/contrib/gtp_v2.py
+${PYSITELIB}/scapy/contrib/gtp_v2.pyc
+${PYSITELIB}/scapy/contrib/gtp_v2.pyo
+${PYSITELIB}/scapy/contrib/homeplugav.py
+${PYSITELIB}/scapy/contrib/homeplugav.pyc
+${PYSITELIB}/scapy/contrib/homeplugav.pyo
+${PYSITELIB}/scapy/contrib/http2.py
+${PYSITELIB}/scapy/contrib/http2.pyc
+${PYSITELIB}/scapy/contrib/http2.pyo
+${PYSITELIB}/scapy/contrib/ibeacon.py
+${PYSITELIB}/scapy/contrib/ibeacon.pyc
+${PYSITELIB}/scapy/contrib/ibeacon.pyo
${PYSITELIB}/scapy/contrib/icmp_extensions.py
${PYSITELIB}/scapy/contrib/icmp_extensions.pyc
${PYSITELIB}/scapy/contrib/icmp_extensions.pyo
+${PYSITELIB}/scapy/contrib/ife.py
+${PYSITELIB}/scapy/contrib/ife.pyc
+${PYSITELIB}/scapy/contrib/ife.pyo
${PYSITELIB}/scapy/contrib/igmp.py
${PYSITELIB}/scapy/contrib/igmp.pyc
${PYSITELIB}/scapy/contrib/igmp.pyo
@@ -116,12 +281,45 @@ ${PYSITELIB}/scapy/contrib/ikev2.pyo
${PYSITELIB}/scapy/contrib/isis.py
${PYSITELIB}/scapy/contrib/isis.pyc
${PYSITELIB}/scapy/contrib/isis.pyo
+${PYSITELIB}/scapy/contrib/isotp.py
+${PYSITELIB}/scapy/contrib/isotp.pyc
+${PYSITELIB}/scapy/contrib/isotp.pyo
+${PYSITELIB}/scapy/contrib/lacp.py
+${PYSITELIB}/scapy/contrib/lacp.pyc
+${PYSITELIB}/scapy/contrib/lacp.pyo
${PYSITELIB}/scapy/contrib/ldp.py
${PYSITELIB}/scapy/contrib/ldp.pyc
${PYSITELIB}/scapy/contrib/ldp.pyo
+${PYSITELIB}/scapy/contrib/lldp.py
+${PYSITELIB}/scapy/contrib/lldp.pyc
+${PYSITELIB}/scapy/contrib/lldp.pyo
+${PYSITELIB}/scapy/contrib/ltp.py
+${PYSITELIB}/scapy/contrib/ltp.pyc
+${PYSITELIB}/scapy/contrib/ltp.pyo
+${PYSITELIB}/scapy/contrib/mac_control.py
+${PYSITELIB}/scapy/contrib/mac_control.pyc
+${PYSITELIB}/scapy/contrib/mac_control.pyo
+${PYSITELIB}/scapy/contrib/macsec.py
+${PYSITELIB}/scapy/contrib/macsec.pyc
+${PYSITELIB}/scapy/contrib/macsec.pyo
+${PYSITELIB}/scapy/contrib/modbus.py
+${PYSITELIB}/scapy/contrib/modbus.pyc
+${PYSITELIB}/scapy/contrib/modbus.pyo
${PYSITELIB}/scapy/contrib/mpls.py
${PYSITELIB}/scapy/contrib/mpls.pyc
${PYSITELIB}/scapy/contrib/mpls.pyo
+${PYSITELIB}/scapy/contrib/mqtt.py
+${PYSITELIB}/scapy/contrib/mqtt.pyc
+${PYSITELIB}/scapy/contrib/mqtt.pyo
+${PYSITELIB}/scapy/contrib/mqttsn.py
+${PYSITELIB}/scapy/contrib/mqttsn.pyc
+${PYSITELIB}/scapy/contrib/mqttsn.pyo
+${PYSITELIB}/scapy/contrib/nsh.py
+${PYSITELIB}/scapy/contrib/nsh.pyc
+${PYSITELIB}/scapy/contrib/nsh.pyo
+${PYSITELIB}/scapy/contrib/opc_da.py
+${PYSITELIB}/scapy/contrib/opc_da.pyc
+${PYSITELIB}/scapy/contrib/opc_da.pyo
${PYSITELIB}/scapy/contrib/openflow.py
${PYSITELIB}/scapy/contrib/openflow.pyc
${PYSITELIB}/scapy/contrib/openflow.pyo
@@ -131,9 +329,15 @@ ${PYSITELIB}/scapy/contrib/openflow3.pyo
${PYSITELIB}/scapy/contrib/ospf.py
${PYSITELIB}/scapy/contrib/ospf.pyc
${PYSITELIB}/scapy/contrib/ospf.pyo
-${PYSITELIB}/scapy/contrib/ppi.py
-${PYSITELIB}/scapy/contrib/ppi.pyc
-${PYSITELIB}/scapy/contrib/ppi.pyo
+${PYSITELIB}/scapy/contrib/pnio.py
+${PYSITELIB}/scapy/contrib/pnio.pyc
+${PYSITELIB}/scapy/contrib/pnio.pyo
+${PYSITELIB}/scapy/contrib/pnio_dcp.py
+${PYSITELIB}/scapy/contrib/pnio_dcp.pyc
+${PYSITELIB}/scapy/contrib/pnio_dcp.pyo
+${PYSITELIB}/scapy/contrib/pnio_rpc.py
+${PYSITELIB}/scapy/contrib/pnio_rpc.pyc
+${PYSITELIB}/scapy/contrib/pnio_rpc.pyo
${PYSITELIB}/scapy/contrib/ppi_cace.py
${PYSITELIB}/scapy/contrib/ppi_cace.pyc
${PYSITELIB}/scapy/contrib/ppi_cace.pyo
@@ -146,15 +350,51 @@ ${PYSITELIB}/scapy/contrib/ripng.pyo
${PYSITELIB}/scapy/contrib/rsvp.py
${PYSITELIB}/scapy/contrib/rsvp.pyc
${PYSITELIB}/scapy/contrib/rsvp.pyo
+${PYSITELIB}/scapy/contrib/rtr.py
+${PYSITELIB}/scapy/contrib/rtr.pyc
+${PYSITELIB}/scapy/contrib/rtr.pyo
+${PYSITELIB}/scapy/contrib/scada/__init__.py
+${PYSITELIB}/scapy/contrib/scada/__init__.pyc
+${PYSITELIB}/scapy/contrib/scada/__init__.pyo
+${PYSITELIB}/scapy/contrib/scada/iec104/__init__.py
+${PYSITELIB}/scapy/contrib/scada/iec104/__init__.pyc
+${PYSITELIB}/scapy/contrib/scada/iec104/__init__.pyo
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104.py
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104.pyc
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104.pyo
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_fields.py
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_fields.pyc
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_fields.pyo
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_information_elements.py
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_information_elements.pyc
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_information_elements.pyo
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_information_objects.py
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_information_objects.pyc
+${PYSITELIB}/scapy/contrib/scada/iec104/iec104_information_objects.pyo
+${PYSITELIB}/scapy/contrib/sdnv.py
+${PYSITELIB}/scapy/contrib/sdnv.pyc
+${PYSITELIB}/scapy/contrib/sdnv.pyo
+${PYSITELIB}/scapy/contrib/sebek.py
+${PYSITELIB}/scapy/contrib/sebek.pyc
+${PYSITELIB}/scapy/contrib/sebek.pyo
${PYSITELIB}/scapy/contrib/send.py
${PYSITELIB}/scapy/contrib/send.pyc
${PYSITELIB}/scapy/contrib/send.pyo
${PYSITELIB}/scapy/contrib/skinny.py
${PYSITELIB}/scapy/contrib/skinny.pyc
${PYSITELIB}/scapy/contrib/skinny.pyo
+${PYSITELIB}/scapy/contrib/socks.py
+${PYSITELIB}/scapy/contrib/socks.pyc
+${PYSITELIB}/scapy/contrib/socks.pyo
${PYSITELIB}/scapy/contrib/spbm.py
${PYSITELIB}/scapy/contrib/spbm.pyc
${PYSITELIB}/scapy/contrib/spbm.pyo
+${PYSITELIB}/scapy/contrib/tacacs.py
+${PYSITELIB}/scapy/contrib/tacacs.pyc
+${PYSITELIB}/scapy/contrib/tacacs.pyo
+${PYSITELIB}/scapy/contrib/tzsp.py
+${PYSITELIB}/scapy/contrib/tzsp.pyc
+${PYSITELIB}/scapy/contrib/tzsp.pyo
${PYSITELIB}/scapy/contrib/ubberlogger.py
${PYSITELIB}/scapy/contrib/ubberlogger.pyc
${PYSITELIB}/scapy/contrib/ubberlogger.pyo
@@ -164,18 +404,12 @@ ${PYSITELIB}/scapy/contrib/vqp.pyo
${PYSITELIB}/scapy/contrib/vtp.py
${PYSITELIB}/scapy/contrib/vtp.pyc
${PYSITELIB}/scapy/contrib/vtp.pyo
-${PYSITELIB}/scapy/contrib/vxlan.py
-${PYSITELIB}/scapy/contrib/vxlan.pyc
-${PYSITELIB}/scapy/contrib/vxlan.pyo
+${PYSITELIB}/scapy/contrib/wireguard.py
+${PYSITELIB}/scapy/contrib/wireguard.pyc
+${PYSITELIB}/scapy/contrib/wireguard.pyo
${PYSITELIB}/scapy/contrib/wpa_eapol.py
${PYSITELIB}/scapy/contrib/wpa_eapol.pyc
${PYSITELIB}/scapy/contrib/wpa_eapol.pyo
-${PYSITELIB}/scapy/crypto/__init__.py
-${PYSITELIB}/scapy/crypto/__init__.pyc
-${PYSITELIB}/scapy/crypto/__init__.pyo
-${PYSITELIB}/scapy/crypto/cert.py
-${PYSITELIB}/scapy/crypto/cert.pyc
-${PYSITELIB}/scapy/crypto/cert.pyo
${PYSITELIB}/scapy/dadict.py
${PYSITELIB}/scapy/dadict.pyc
${PYSITELIB}/scapy/dadict.pyo
@@ -185,6 +419,9 @@ ${PYSITELIB}/scapy/data.pyo
${PYSITELIB}/scapy/error.py
${PYSITELIB}/scapy/error.pyc
${PYSITELIB}/scapy/error.pyo
+${PYSITELIB}/scapy/extlib.py
+${PYSITELIB}/scapy/extlib.pyc
+${PYSITELIB}/scapy/extlib.pyo
${PYSITELIB}/scapy/fields.py
${PYSITELIB}/scapy/fields.pyc
${PYSITELIB}/scapy/fields.pyo
@@ -197,6 +434,12 @@ ${PYSITELIB}/scapy/layers/all.pyo
${PYSITELIB}/scapy/layers/bluetooth.py
${PYSITELIB}/scapy/layers/bluetooth.pyc
${PYSITELIB}/scapy/layers/bluetooth.pyo
+${PYSITELIB}/scapy/layers/bluetooth4LE.py
+${PYSITELIB}/scapy/layers/bluetooth4LE.pyc
+${PYSITELIB}/scapy/layers/bluetooth4LE.pyo
+${PYSITELIB}/scapy/layers/can.py
+${PYSITELIB}/scapy/layers/can.pyc
+${PYSITELIB}/scapy/layers/can.pyo
${PYSITELIB}/scapy/layers/clns.py
${PYSITELIB}/scapy/layers/clns.pyc
${PYSITELIB}/scapy/layers/clns.pyo
@@ -212,12 +455,21 @@ ${PYSITELIB}/scapy/layers/dns.pyo
${PYSITELIB}/scapy/layers/dot11.py
${PYSITELIB}/scapy/layers/dot11.pyc
${PYSITELIB}/scapy/layers/dot11.pyo
+${PYSITELIB}/scapy/layers/dot15d4.py
+${PYSITELIB}/scapy/layers/dot15d4.pyc
+${PYSITELIB}/scapy/layers/dot15d4.pyo
+${PYSITELIB}/scapy/layers/eap.py
+${PYSITELIB}/scapy/layers/eap.pyc
+${PYSITELIB}/scapy/layers/eap.pyo
${PYSITELIB}/scapy/layers/gprs.py
${PYSITELIB}/scapy/layers/gprs.pyc
${PYSITELIB}/scapy/layers/gprs.pyo
${PYSITELIB}/scapy/layers/hsrp.py
${PYSITELIB}/scapy/layers/hsrp.pyc
${PYSITELIB}/scapy/layers/hsrp.pyo
+${PYSITELIB}/scapy/layers/http.py
+${PYSITELIB}/scapy/layers/http.pyc
+${PYSITELIB}/scapy/layers/http.pyo
${PYSITELIB}/scapy/layers/inet.py
${PYSITELIB}/scapy/layers/inet.pyc
${PYSITELIB}/scapy/layers/inet.pyo
@@ -242,6 +494,9 @@ ${PYSITELIB}/scapy/layers/l2tp.pyo
${PYSITELIB}/scapy/layers/llmnr.py
${PYSITELIB}/scapy/layers/llmnr.pyc
${PYSITELIB}/scapy/layers/llmnr.pyo
+${PYSITELIB}/scapy/layers/lltd.py
+${PYSITELIB}/scapy/layers/lltd.pyc
+${PYSITELIB}/scapy/layers/lltd.pyo
${PYSITELIB}/scapy/layers/mgcp.py
${PYSITELIB}/scapy/layers/mgcp.pyc
${PYSITELIB}/scapy/layers/mgcp.pyo
@@ -260,9 +515,15 @@ ${PYSITELIB}/scapy/layers/ntp.pyo
${PYSITELIB}/scapy/layers/pflog.py
${PYSITELIB}/scapy/layers/pflog.pyc
${PYSITELIB}/scapy/layers/pflog.pyo
+${PYSITELIB}/scapy/layers/ppi.py
+${PYSITELIB}/scapy/layers/ppi.pyc
+${PYSITELIB}/scapy/layers/ppi.pyo
${PYSITELIB}/scapy/layers/ppp.py
${PYSITELIB}/scapy/layers/ppp.pyc
${PYSITELIB}/scapy/layers/ppp.pyo
+${PYSITELIB}/scapy/layers/pptp.py
+${PYSITELIB}/scapy/layers/pptp.pyc
+${PYSITELIB}/scapy/layers/pptp.pyo
${PYSITELIB}/scapy/layers/radius.py
${PYSITELIB}/scapy/layers/radius.pyc
${PYSITELIB}/scapy/layers/radius.pyo
@@ -275,9 +536,9 @@ ${PYSITELIB}/scapy/layers/rtp.pyo
${PYSITELIB}/scapy/layers/sctp.py
${PYSITELIB}/scapy/layers/sctp.pyc
${PYSITELIB}/scapy/layers/sctp.pyo
-${PYSITELIB}/scapy/layers/sebek.py
-${PYSITELIB}/scapy/layers/sebek.pyc
-${PYSITELIB}/scapy/layers/sebek.pyo
+${PYSITELIB}/scapy/layers/sixlowpan.py
+${PYSITELIB}/scapy/layers/sixlowpan.pyc
+${PYSITELIB}/scapy/layers/sixlowpan.pyo
${PYSITELIB}/scapy/layers/skinny.py
${PYSITELIB}/scapy/layers/skinny.pyc
${PYSITELIB}/scapy/layers/skinny.pyo
@@ -290,33 +551,153 @@ ${PYSITELIB}/scapy/layers/snmp.pyo
${PYSITELIB}/scapy/layers/tftp.py
${PYSITELIB}/scapy/layers/tftp.pyc
${PYSITELIB}/scapy/layers/tftp.pyo
+${PYSITELIB}/scapy/layers/tls/__init__.py
+${PYSITELIB}/scapy/layers/tls/__init__.pyc
+${PYSITELIB}/scapy/layers/tls/__init__.pyo
+${PYSITELIB}/scapy/layers/tls/all.py
+${PYSITELIB}/scapy/layers/tls/all.pyc
+${PYSITELIB}/scapy/layers/tls/all.pyo
+${PYSITELIB}/scapy/layers/tls/automaton.py
+${PYSITELIB}/scapy/layers/tls/automaton.pyc
+${PYSITELIB}/scapy/layers/tls/automaton.pyo
+${PYSITELIB}/scapy/layers/tls/automaton_cli.py
+${PYSITELIB}/scapy/layers/tls/automaton_cli.pyc
+${PYSITELIB}/scapy/layers/tls/automaton_cli.pyo
+${PYSITELIB}/scapy/layers/tls/automaton_srv.py
+${PYSITELIB}/scapy/layers/tls/automaton_srv.pyc
+${PYSITELIB}/scapy/layers/tls/automaton_srv.pyo
+${PYSITELIB}/scapy/layers/tls/basefields.py
+${PYSITELIB}/scapy/layers/tls/basefields.pyc
+${PYSITELIB}/scapy/layers/tls/basefields.pyo
+${PYSITELIB}/scapy/layers/tls/cert.py
+${PYSITELIB}/scapy/layers/tls/cert.pyc
+${PYSITELIB}/scapy/layers/tls/cert.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/__init__.py
+${PYSITELIB}/scapy/layers/tls/crypto/__init__.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/__init__.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/all.py
+${PYSITELIB}/scapy/layers/tls/crypto/all.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/all.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_aead.py
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_aead.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_aead.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_block.py
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_block.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_block.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_stream.py
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_stream.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/cipher_stream.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/ciphers.py
+${PYSITELIB}/scapy/layers/tls/crypto/ciphers.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/ciphers.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/common.py
+${PYSITELIB}/scapy/layers/tls/crypto/common.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/common.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/compression.py
+${PYSITELIB}/scapy/layers/tls/crypto/compression.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/compression.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/groups.py
+${PYSITELIB}/scapy/layers/tls/crypto/groups.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/groups.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/h_mac.py
+${PYSITELIB}/scapy/layers/tls/crypto/h_mac.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/h_mac.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/hash.py
+${PYSITELIB}/scapy/layers/tls/crypto/hash.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/hash.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/hkdf.py
+${PYSITELIB}/scapy/layers/tls/crypto/hkdf.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/hkdf.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/kx_algs.py
+${PYSITELIB}/scapy/layers/tls/crypto/kx_algs.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/kx_algs.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/pkcs1.py
+${PYSITELIB}/scapy/layers/tls/crypto/pkcs1.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/pkcs1.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/prf.py
+${PYSITELIB}/scapy/layers/tls/crypto/prf.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/prf.pyo
+${PYSITELIB}/scapy/layers/tls/crypto/suites.py
+${PYSITELIB}/scapy/layers/tls/crypto/suites.pyc
+${PYSITELIB}/scapy/layers/tls/crypto/suites.pyo
+${PYSITELIB}/scapy/layers/tls/extensions.py
+${PYSITELIB}/scapy/layers/tls/extensions.pyc
+${PYSITELIB}/scapy/layers/tls/extensions.pyo
+${PYSITELIB}/scapy/layers/tls/handshake.py
+${PYSITELIB}/scapy/layers/tls/handshake.pyc
+${PYSITELIB}/scapy/layers/tls/handshake.pyo
+${PYSITELIB}/scapy/layers/tls/handshake_sslv2.py
+${PYSITELIB}/scapy/layers/tls/handshake_sslv2.pyc
+${PYSITELIB}/scapy/layers/tls/handshake_sslv2.pyo
+${PYSITELIB}/scapy/layers/tls/keyexchange.py
+${PYSITELIB}/scapy/layers/tls/keyexchange.pyc
+${PYSITELIB}/scapy/layers/tls/keyexchange.pyo
+${PYSITELIB}/scapy/layers/tls/keyexchange_tls13.py
+${PYSITELIB}/scapy/layers/tls/keyexchange_tls13.pyc
+${PYSITELIB}/scapy/layers/tls/keyexchange_tls13.pyo
+${PYSITELIB}/scapy/layers/tls/record.py
+${PYSITELIB}/scapy/layers/tls/record.pyc
+${PYSITELIB}/scapy/layers/tls/record.pyo
+${PYSITELIB}/scapy/layers/tls/record_sslv2.py
+${PYSITELIB}/scapy/layers/tls/record_sslv2.pyc
+${PYSITELIB}/scapy/layers/tls/record_sslv2.pyo
+${PYSITELIB}/scapy/layers/tls/record_tls13.py
+${PYSITELIB}/scapy/layers/tls/record_tls13.pyc
+${PYSITELIB}/scapy/layers/tls/record_tls13.pyo
+${PYSITELIB}/scapy/layers/tls/session.py
+${PYSITELIB}/scapy/layers/tls/session.pyc
+${PYSITELIB}/scapy/layers/tls/session.pyo
+${PYSITELIB}/scapy/layers/tls/tools.py
+${PYSITELIB}/scapy/layers/tls/tools.pyc
+${PYSITELIB}/scapy/layers/tls/tools.pyo
+${PYSITELIB}/scapy/layers/usb.py
+${PYSITELIB}/scapy/layers/usb.pyc
+${PYSITELIB}/scapy/layers/usb.pyo
${PYSITELIB}/scapy/layers/vrrp.py
${PYSITELIB}/scapy/layers/vrrp.pyc
${PYSITELIB}/scapy/layers/vrrp.pyo
+${PYSITELIB}/scapy/layers/vxlan.py
+${PYSITELIB}/scapy/layers/vxlan.pyc
+${PYSITELIB}/scapy/layers/vxlan.pyo
${PYSITELIB}/scapy/layers/x509.py
${PYSITELIB}/scapy/layers/x509.pyc
${PYSITELIB}/scapy/layers/x509.pyo
+${PYSITELIB}/scapy/layers/zigbee.py
+${PYSITELIB}/scapy/layers/zigbee.pyc
+${PYSITELIB}/scapy/layers/zigbee.pyo
${PYSITELIB}/scapy/main.py
${PYSITELIB}/scapy/main.pyc
${PYSITELIB}/scapy/main.pyo
${PYSITELIB}/scapy/modules/__init__.py
${PYSITELIB}/scapy/modules/__init__.pyc
${PYSITELIB}/scapy/modules/__init__.pyo
-${PYSITELIB}/scapy/modules/geoip.py
-${PYSITELIB}/scapy/modules/geoip.pyc
-${PYSITELIB}/scapy/modules/geoip.pyo
+${PYSITELIB}/scapy/modules/ethertypes.py
+${PYSITELIB}/scapy/modules/ethertypes.pyc
+${PYSITELIB}/scapy/modules/ethertypes.pyo
+${PYSITELIB}/scapy/modules/krack/__init__.py
+${PYSITELIB}/scapy/modules/krack/__init__.pyc
+${PYSITELIB}/scapy/modules/krack/__init__.pyo
+${PYSITELIB}/scapy/modules/krack/automaton.py
+${PYSITELIB}/scapy/modules/krack/automaton.pyc
+${PYSITELIB}/scapy/modules/krack/automaton.pyo
+${PYSITELIB}/scapy/modules/krack/crypto.py
+${PYSITELIB}/scapy/modules/krack/crypto.pyc
+${PYSITELIB}/scapy/modules/krack/crypto.pyo
${PYSITELIB}/scapy/modules/nmap.py
${PYSITELIB}/scapy/modules/nmap.pyc
${PYSITELIB}/scapy/modules/nmap.pyo
${PYSITELIB}/scapy/modules/p0f.py
${PYSITELIB}/scapy/modules/p0f.pyc
${PYSITELIB}/scapy/modules/p0f.pyo
-${PYSITELIB}/scapy/modules/queso.py
-${PYSITELIB}/scapy/modules/queso.pyc
-${PYSITELIB}/scapy/modules/queso.pyo
+${PYSITELIB}/scapy/modules/six.py
+${PYSITELIB}/scapy/modules/six.pyc
+${PYSITELIB}/scapy/modules/six.pyo
${PYSITELIB}/scapy/modules/voip.py
${PYSITELIB}/scapy/modules/voip.pyc
${PYSITELIB}/scapy/modules/voip.pyo
+${PYSITELIB}/scapy/modules/winpcapy.py
+${PYSITELIB}/scapy/modules/winpcapy.pyc
+${PYSITELIB}/scapy/modules/winpcapy.pyo
${PYSITELIB}/scapy/packet.py
${PYSITELIB}/scapy/packet.pyc
${PYSITELIB}/scapy/packet.pyo
@@ -341,6 +722,9 @@ ${PYSITELIB}/scapy/scapypipes.pyo
${PYSITELIB}/scapy/sendrecv.py
${PYSITELIB}/scapy/sendrecv.pyc
${PYSITELIB}/scapy/sendrecv.pyo
+${PYSITELIB}/scapy/sessions.py
+${PYSITELIB}/scapy/sessions.pyc
+${PYSITELIB}/scapy/sessions.pyo
${PYSITELIB}/scapy/supersocket.py
${PYSITELIB}/scapy/supersocket.pyc
${PYSITELIB}/scapy/supersocket.pyo
@@ -353,9 +737,18 @@ ${PYSITELIB}/scapy/tools/UTscapy.pyo
${PYSITELIB}/scapy/tools/__init__.py
${PYSITELIB}/scapy/tools/__init__.pyc
${PYSITELIB}/scapy/tools/__init__.pyo
+${PYSITELIB}/scapy/tools/automotive/__init__.py
+${PYSITELIB}/scapy/tools/automotive/__init__.pyc
+${PYSITELIB}/scapy/tools/automotive/__init__.pyo
+${PYSITELIB}/scapy/tools/automotive/isotpscanner.py
+${PYSITELIB}/scapy/tools/automotive/isotpscanner.pyc
+${PYSITELIB}/scapy/tools/automotive/isotpscanner.pyo
${PYSITELIB}/scapy/tools/check_asdis.py
${PYSITELIB}/scapy/tools/check_asdis.pyc
${PYSITELIB}/scapy/tools/check_asdis.pyo
+${PYSITELIB}/scapy/tools/generate_ethertypes.py
+${PYSITELIB}/scapy/tools/generate_ethertypes.pyc
+${PYSITELIB}/scapy/tools/generate_ethertypes.pyo
${PYSITELIB}/scapy/utils.py
${PYSITELIB}/scapy/utils.pyc
${PYSITELIB}/scapy/utils.pyo
diff --git a/net/scapy/distinfo b/net/scapy/distinfo
index 2c564a77ed0..99de6bba4b4 100644
--- a/net/scapy/distinfo
+++ b/net/scapy/distinfo
@@ -1,11 +1,10 @@
-$NetBSD: distinfo,v 1.9 2019/03/24 19:44:48 gutteridge Exp $
+$NetBSD: distinfo,v 1.10 2019/11/04 05:48:26 gutteridge Exp $
-SHA1 (scapy-2.3.2.tar.gz) = 30ee94f6490371dc60544206d286ae4881987151
-RMD160 (scapy-2.3.2.tar.gz) = f217e70d0806dfcc1ed1961a74f9de437c2b8bdd
-SHA512 (scapy-2.3.2.tar.gz) = 6b15e102708d1bd0ca0c910e2d82416cd172634409f93c506542a7dc6b69ddc9c9afef6ec07929f70cc0f8f4c455cdc84d9b35bc2c5b72f79dd7e6785306dc7a
-Size (scapy-2.3.2.tar.gz) = 1166056 bytes
-SHA1 (patch-aa) = 28357773231c1a55fffbe2ebf18ec2e5f63a2ae2
-SHA1 (patch-ab) = 12f7c4d0ae505d357692c05de658e393a0526ba1
-SHA1 (patch-ac) = d8ad1882d9b31e65dc3f7636e4caac9377805daf
-SHA1 (patch-ad) = f3647e471ba1168e054a5160d47fb0870243fb4b
-SHA1 (patch-af) = 3f570e78c6a30361a015b9f0e1cb5990166b49cf
+SHA1 (scapy-2.4.3.tar.gz) = 62dfd58a8e3799f083a157209b8b0902f53e76f0
+RMD160 (scapy-2.4.3.tar.gz) = fee72af411c6b42961feb6f46ad5ba7e8c0c426b
+SHA512 (scapy-2.4.3.tar.gz) = 48bf86ed851f4b15d4f3b1e2668f1516fff712b67d709963cb986076cfeec0724e20b400a75368309f3d99a45d7b1082fd049fbb67edef0ab5d838e2ae141e44
+Size (scapy-2.4.3.tar.gz) = 2969754 bytes
+SHA1 (patch-ab) = 09adbe98c2e129438833f1e1212c6ef276e197d0
+SHA1 (patch-ad) = bac7c72eff08608d4d73911a94bfc3125b8b53b6
+SHA1 (patch-scapy_arch_bpf_supersocket.py) = d1850020a54799155e8046de0994d7df821c6046
+SHA1 (patch-scapy_consts.py) = 3495fc2716b78bf0689f2eb8d1095c746d9700e3
diff --git a/net/scapy/options.mk b/net/scapy/options.mk
index 1b8856c287b..1b3418e7a73 100644
--- a/net/scapy/options.mk
+++ b/net/scapy/options.mk
@@ -1,16 +1,26 @@
-# $NetBSD: options.mk,v 1.11 2019/11/03 11:45:52 rillig Exp $
+# $NetBSD: options.mk,v 1.12 2019/11/04 05:48:26 gutteridge Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.scapy
-PKG_SUPPORTED_OPTIONS= scapy-crypto gnuplot scapy-pyx
+PKG_SUPPORTED_OPTIONS= libpcap scapy-crypto gnuplot scapy-pyx
+PKG_SUGGESTED_OPTIONS= libpcap
.include "../../mk/bsd.options.mk"
###
+### Ensure libpcap is available in the environment. (In many cases, it
+### should be part of a base installation. It is most essential for
+### SunOS support, where it's depended upon more than for other OSes.)
+###
+.if !empty(PKG_OPTIONS:Mlibpcap)
+.include "../../net/libpcap/buildlink3.mk"
+.endif
+
+###
### Add in crypto support for WEP operations
###
.if !empty(PKG_OPTIONS:Mscapy-crypto)
-DEPENDS+= ${PYPKGPREFIX}-amkCrypto-[0-9]*:../../security/py-amkCrypto
+DEPENDS+= ${PYPKGPREFIX}-cryptography-[0-9]*:../../security/py-cryptography
.endif
###
diff --git a/net/scapy/patches/patch-aa b/net/scapy/patches/patch-aa
deleted file mode 100644
index 00d412a5d68..00000000000
--- a/net/scapy/patches/patch-aa
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-aa,v 1.6 2016/05/09 11:07:51 adam Exp $
-
---- scapy/arch/__init__.py.orig 2016-01-15 13:10:59.000000000 +0000
-+++ scapy/arch/__init__.py
-@@ -50,6 +50,7 @@ NETBSD=sys.platform.startswith("netbsd")
- DARWIN=sys.platform.startswith("darwin")
- SOLARIS=sys.platform.startswith("sunos")
- WINDOWS=sys.platform.startswith("win32")
-+DRAGONFLY=sys.platform.startswith("dragonfly")
-
- X86_64 = not WINDOWS and (os.uname()[4] == 'x86_64')
- ARM_64 = not WINDOWS and (os.uname()[4] == 'aarch64')
-@@ -72,7 +73,7 @@ if LINUX:
- from linux import *
- if scapy.config.conf.use_pcap or scapy.config.conf.use_dnet:
- from pcapdnet import *
--elif OPENBSD or FREEBSD or NETBSD or DARWIN:
-+elif OPENBSD or FREEBSD or NETBSD or DARWIN or DRAGONFLY:
- from bsd import *
- elif SOLARIS:
- from solaris import *
diff --git a/net/scapy/patches/patch-ab b/net/scapy/patches/patch-ab
index 5528bc76a2d..ec075b5bf1e 100644
--- a/net/scapy/patches/patch-ab
+++ b/net/scapy/patches/patch-ab
@@ -1,13 +1,33 @@
-$NetBSD: patch-ab,v 1.2 2013/06/15 20:24:19 adam Exp $
+$NetBSD: patch-ab,v 1.3 2019/11/04 05:48:26 gutteridge Exp $
---- scapy/arch/unix.py.orig 2009-02-01 22:30:20 +0200
-+++ scapy/arch/unix.py 2009-06-09 14:33:21 +0300
-@@ -163,7 +163,7 @@ def read_routes6():
- lspl = l.split()
- d,nh,fl = lspl[:3]
- dev = lspl[5+mtu_present+prio_present]
-- else: # FREEBSD or DARWIN
-+ else: # FREEBSD or DARWIN or DRAGONFLY
- d,nh,fl,dev = l.split()[:4]
- if filter(lambda x: x[2] == dev, lifaddr) == []:
- continue
+Add DragonFly support.
+
+--- scapy/arch/unix.py.orig 2019-08-04 16:12:30.000000000 +0000
++++ scapy/arch/unix.py
+@@ -14,7 +14,7 @@ import scapy.config
+ import scapy.utils
+ from scapy.arch import get_if_addr
+ from scapy.config import conf
+-from scapy.consts import FREEBSD, NETBSD, OPENBSD, SOLARIS, LOOPBACK_NAME
++from scapy.consts import FREEBSD, NETBSD, OPENBSD, SOLARIS, LOOPBACK_NAME, DRAGONFLY
+ from scapy.error import warning, log_interactive
+ from scapy.pton_ntop import inet_pton
+ from scapy.utils6 import in6_getscope, construct_source_candidate_set
+@@ -48,7 +48,7 @@ def read_routes():
+ """
+ if SOLARIS:
+ f = os.popen("netstat -rvn -f inet")
+- elif FREEBSD:
++ elif FREEBSD or DRAGONFLY:
+ f = os.popen("netstat -rnW") # -W to handle long interface names
+ else:
+ f = os.popen("netstat -rn -f inet")
+@@ -276,7 +276,7 @@ def read_routes6():
+ destination, next_hop, flags = splitted_line[:3]
+ dev = splitted_line[index]
+ else:
+- # FREEBSD or DARWIN
++ # FREEBSD or DARWIN or DRAGONFLY
+ if len(splitted_line) < 4:
+ warning("Not enough columns in route entry !")
+ continue
diff --git a/net/scapy/patches/patch-ac b/net/scapy/patches/patch-ac
deleted file mode 100644
index 101a7b16cdd..00000000000
--- a/net/scapy/patches/patch-ac
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ac,v 1.3 2013/06/15 20:24:19 adam Exp $
-
---- scapy/sendrecv.py.orig 2009-12-30 22:21:13.000000000 +0000
-+++ scapy/sendrecv.py
-@@ -121,7 +121,7 @@ def sndrcv(pks, pkt, timeout = None, int
- if remaintime <= 0:
- break
- r = None
-- if arch.FREEBSD or arch.DARWIN:
-+ if arch.FREEBSD or arch.DARWIN or arch.DRAGONFLY:
- inp, out, err = select(inmask,[],[], 0.05)
- if len(inp) == 0 or pks in inp:
- r = pks.nonblock_recv()
diff --git a/net/scapy/patches/patch-ad b/net/scapy/patches/patch-ad
index 5e2fa802870..216a1596ed0 100644
--- a/net/scapy/patches/patch-ad
+++ b/net/scapy/patches/patch-ad
@@ -1,13 +1,15 @@
-$NetBSD: patch-ad,v 1.3 2013/06/15 20:24:19 adam Exp $
+$NetBSD: patch-ad,v 1.4 2019/11/04 05:48:26 gutteridge Exp $
---- scapy/data.py.orig 2009-09-23 14:27:36.000000000 +0000
+Apply pkgsrc-specific config path.
+
+--- scapy/data.py.orig 2019-08-04 16:12:30.000000000 +0000
+++ scapy/data.py
-@@ -180,7 +180,7 @@ if WINDOWS:
- MANUFDB = load_manuf(os.environ["ProgramFiles"] + "\\wireshark\\manuf")
+@@ -314,7 +314,7 @@ if WINDOWS:
+ MANUFDB = ManufDA()
else:
- IP_PROTOS=load_protocols("/etc/protocols")
-- ETHER_TYPES=load_ethertypes("/etc/ethertypes")
-+ ETHER_TYPES=load_ethertypes("@PKG_SYSCONFDIR@/ethertypes")
- TCP_SERVICES,UDP_SERVICES=load_services("/etc/services")
- MANUFDB = load_manuf("/usr/share/wireshark/wireshark/manuf")
-
+ IP_PROTOS = load_protocols("/etc/protocols")
+- ETHER_TYPES = load_ethertypes("/etc/ethertypes")
++ ETHER_TYPES = load_ethertypes("@PKG_SYSCONFDIR@/ethertypes")
+ TCP_SERVICES, UDP_SERVICES = load_services("/etc/services")
+ MANUFDB = ManufDA()
+ manuf_path = select_path(
diff --git a/net/scapy/patches/patch-af b/net/scapy/patches/patch-af
deleted file mode 100644
index 1059046b321..00000000000
--- a/net/scapy/patches/patch-af
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-af,v 1.4 2019/03/24 19:44:49 gutteridge Exp $
-
---- test/run_tests.orig 2016-01-15 13:10:59.000000000 +0000
-+++ test/run_tests
-@@ -1,8 +1,8 @@
--#! /bin/bash
-+#! /bin/sh
- DIR=$(dirname $0)/..
--if [ "$*" == "" ]
-+if [ "$*" = "" ]
- then
--PYTHONPATH=$DIR exec python ${DIR}/scapy/tools/UTscapy.py -t regression.uts -f html -l -o /tmp/scapy_regression_test_$(date +%Y%m%d-%H%M%S).html
-+PYTHONPATH=$DIR exec ${PYTHON} ${DIR}/scapy/tools/UTscapy.py -t regression.uts -f html -l -o /tmp/scapy_regression_test_$(date +%Y%m%d-%H%M%S).html
- else
--PYTHONPATH=$DIR exec python ${DIR}/scapy/tools/UTscapy.py "$@"
-+PYTHONPATH=$DIR exec ${PYTHON} ${DIR}/scapy/tools/UTscapy.py "$@"
- fi
diff --git a/net/scapy/patches/patch-scapy_arch_bpf_supersocket.py b/net/scapy/patches/patch-scapy_arch_bpf_supersocket.py
new file mode 100644
index 00000000000..906d6e1f0a9
--- /dev/null
+++ b/net/scapy/patches/patch-scapy_arch_bpf_supersocket.py
@@ -0,0 +1,32 @@
+$NetBSD: patch-scapy_arch_bpf_supersocket.py,v 1.1 2019/11/04 05:48:26 gutteridge Exp $
+
+Add DragonFly support.
+
+--- scapy/arch/bpf/supersocket.py.orig 2019-08-04 16:12:30.000000000 +0000
++++ scapy/arch/bpf/supersocket.py
+@@ -16,14 +16,14 @@ from scapy.arch.bpf.consts import BIOCGB
+ BIOCIMMEDIATE, BIOCPROMISC, BIOCSBLEN, BIOCSETIF, BIOCSHDRCMPLT, \
+ BPF_BUFFER_LENGTH, BIOCSDLT, DLT_IEEE802_11_RADIO
+ from scapy.config import conf
+-from scapy.consts import FREEBSD, NETBSD, DARWIN
++from scapy.consts import FREEBSD, NETBSD, DARWIN, DRAGONFLY
+ from scapy.data import ETH_P_ALL
+ from scapy.error import Scapy_Exception, warning
+ from scapy.supersocket import SuperSocket
+ from scapy.compat import raw
+
+
+-if FREEBSD or NETBSD:
++if FREEBSD or NETBSD or DRAGONFLY:
+ BPF_ALIGNMENT = 8 # sizeof(long)
+ else:
+ BPF_ALIGNMENT = 4 # sizeof(int32_t)
+@@ -260,7 +260,7 @@ class L2bpfListenSocket(_L2bpfSocket):
+ return
+
+ # Extract useful information from the BPF header
+- if FREEBSD or NETBSD:
++ if FREEBSD or NETBSD or DRAGONFLY:
+ # struct bpf_xhdr or struct bpf_hdr32
+ bh_tstamp_offset = 16
+ else:
diff --git a/net/scapy/patches/patch-scapy_consts.py b/net/scapy/patches/patch-scapy_consts.py
new file mode 100644
index 00000000000..d26b2b4e847
--- /dev/null
+++ b/net/scapy/patches/patch-scapy_consts.py
@@ -0,0 +1,16 @@
+$NetBSD: patch-scapy_consts.py,v 1.1 2019/11/04 05:48:26 gutteridge Exp $
+
+Add DragonFly support.
+
+--- scapy/consts.py.orig 2019-10-22 16:33:00.860254151 +0000
++++ scapy/consts.py
+@@ -15,7 +15,8 @@ DARWIN = platform.startswith("darwin")
+ SOLARIS = platform.startswith("sunos")
+ WINDOWS = platform.startswith("win32")
+ WINDOWS_XP = platform_lib.release() == "XP"
+-BSD = DARWIN or FREEBSD or OPENBSD or NETBSD
++DRAGONFLY = platform.startswith("dragonfly")
++BSD = DARWIN or FREEBSD or OPENBSD or NETBSD or DRAGONFLY
+ # See https://docs.python.org/3/library/platform.html#cross-platform
+ IS_64BITS = maxsize > 2**32
+