Pull my fix in scapy bpf layer from upstream as a patch. This will

avoid a race in the OpenBSD regress tests.
Take maintainer.
OK danj@
This commit is contained in:
bluhm 2019-02-20 13:58:24 +00:00
parent 4cd6f786f5
commit 60eb5e4f49
3 changed files with 24 additions and 16 deletions

View File

@ -1,14 +1,16 @@
# $OpenBSD: Makefile,v 1.30 2019/02/12 17:53:39 danj Exp $
# $OpenBSD: Makefile,v 1.31 2019/02/20 13:58:24 bluhm Exp $
COMMENT= powerful interactive packet manipulation in python
MODPY_EGG_VERSION= 2.4.0
REVISION= 1
REVISION= 2
DISTNAME= scapy-${MODPY_EGG_VERSION}
CATEGORIES= net
HOMEPAGE= https://scapy.net/
MAINTAINER = Alexander Bluhm <bluhm@openbsd.org>
# GPLv2
PERMIT_PACKAGE_CDROM= Yes

View File

@ -1,18 +1,6 @@
$OpenBSD: patch-scapy_arch_bpf_consts_py,v 1.1 2018/07/30 14:27:37 bluhm Exp $
$OpenBSD: patch-scapy_arch_bpf_consts_py,v 1.2 2019/02/20 13:58:24 bluhm Exp $
https://github.com/secdev/scapy/pull/1538
commit e5ed0aab5a2028d8807b98e444c2e04cd29ba7b6 (origin/ioctl-sizeof, ioctl-sizeof)
Author: Alexander Bluhm <alexander.bluhm@gmx.net>
Date: Thu Jul 26 16:52:36 2018 +0200
Calculate BIOCSETF ioctl constant for 32 bit architectures.
The size of the ioctl(2) argument is embeded in the constant. Struct
bpf_program is 16 bytes on 64 bit architectures but only 8 bytes
on 32 bit architectures. Use ctypes to calculate the size dynamically
in Python and adjust BIOCSETF. Fixes sniff(filter="ip") on
OpenBSD/i386.
https://github.com/secdev/scapy/commit/e5ed0aab5a2028d8807b98e444c2e04cd29ba7b6
Index: scapy/arch/bpf/consts.py
--- scapy/arch/bpf/consts.py.orig

View File

@ -0,0 +1,18 @@
$OpenBSD: patch-scapy_arch_bpf_supersocket_py,v 1.1 2019/02/20 13:58:24 bluhm Exp $
https://github.com/secdev/scapy/commit/ea094511f7a4dc56af8554060488d713fc0f6137
Index: scapy/arch/bpf/supersocket.py
--- scapy/arch/bpf/supersocket.py.orig
+++ scapy/arch/bpf/supersocket.py
@@ -218,7 +218,9 @@ class _L2bpfSocket(SuperSocket):
class L2bpfListenSocket(_L2bpfSocket):
""""Scapy L2 BPF Listen Super Socket"""
- received_frames = []
+ def __init__(self, *args, **kwargs):
+ self.received_frames = []
+ super(L2bpfListenSocket, self).__init__(*args, **kwargs)
def buffered_frames(self):
"""Return the number of frames in the buffer"""