Hi & thanks, Based on your work :
- Update my email address - Update scapy to the last version (2.1.0) - Integrate the 2 diffs you sent and remove the comment about the need to increase the number bpf in the Makefile Regress tests : PASSED=753 FAILED=3 Full report http://www.secu-info.org/tmp/scapy_regression_test_20100004-080836.html 2 of the 3 failing tests seems to be know problems, I have added them to the ticket here : http://trac.secdev.org/scapy/ticket/364. I also seen you reported upstream, thanks, I'm waiting for their comments. (http://trac.secdev.org/scapy/ticket/371). -- Jonathan Armani Index: Makefile =================================================================== RCS file: /cvs/openbsd/ports/net/scapy/Makefile,v retrieving revision 1.12 diff -u -p -r1.12 Makefile --- Makefile 30 Aug 2010 21:21:54 -0000 1.12 +++ Makefile 4 Oct 2010 08:05:46 -0000 @@ -2,14 +2,14 @@ COMMENT= powerful interactive packet manipulation in python -MODPY_EGG_VERSION= 2.0.1 +MODPY_EGG_VERSION= 2.1.0 DISTNAME= scapy-${MODPY_EGG_VERSION} -REVISION= 0 + CATEGORIES= net HOMEPAGE= http://secdev.org/projects/scapy/ -MAINTAINER= Jonathan Armani <d...@asystant.net> +MAINTAINER= Jonathan Armani <arm...@openbsd.org> # GPLv2 PERMIT_PACKAGE_CDROM= Yes @@ -41,8 +41,7 @@ post-install: ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/scapy ${INSTALL_DATA} ${DISTDIR}/ethertypes ${PREFIX}/share/examples/scapy -# some tests require root. you may also need to increase -# the number of bpf device nodes (/dev/bpf*) to ~40. +# some tests require root. do-regress: ln -fs ${MODPY_BIN} ${WRKDIR}/bin/python cd ${WRKSRC}/test; PATH=${WRKDIR}/bin:${PATH} ${WRKSRC}/test/run_tests Index: distinfo =================================================================== RCS file: /cvs/openbsd/ports/net/scapy/distinfo,v retrieving revision 1.4 diff -u -p -r1.4 distinfo --- distinfo 1 Oct 2009 16:28:49 -0000 1.4 +++ distinfo 4 Oct 2010 08:05:46 -0000 @@ -1,10 +1,10 @@ MD5 (ethertypes) = lL/96PdaG4+JH7eAv+Fcog== -MD5 (scapy-2.0.1.tar.gz) = 6vCbzocsg1E1qMZjJ/kgyw== +MD5 (scapy-2.1.0.tar.gz) = NXtbIeo7TyiaMmwJBbcVwQ== RMD160 (ethertypes) = KWuI/tkRslOYtfZXzWu1yR5y4og= -RMD160 (scapy-2.0.1.tar.gz) = pK8hN0WK1P+lc+2BMDUG/c7vvJU= +RMD160 (scapy-2.1.0.tar.gz) = yspC6JyHwHotvjmd1OWSTO/f9Io= SHA1 (ethertypes) = btD+JEZmaHbXe4lx/Y7fSVqcC+M= -SHA1 (scapy-2.0.1.tar.gz) = /OtOYPvqDyzo7SWJV6XsobqgWsU= +SHA1 (scapy-2.1.0.tar.gz) = 5Qe8Dyoy0gnzIVgMkzjSzrcquTo= SHA256 (ethertypes) = 4UAHHkYt+Kq597Y6OWW/IGeX7Lz/M0o+xJQlbe/jXcs= -SHA256 (scapy-2.0.1.tar.gz) = RXVYi8VXM76nsslL9s8b0M+mbBaeLC0C9bBaitfqq8E= +SHA256 (scapy-2.1.0.tar.gz) = Q8ojOwz8lQQBGT4nAuoy7h3YPUurZxNx4yKntsUidbo= SIZE (ethertypes) = 1317 -SIZE (scapy-2.0.1.tar.gz) = 864953 +SIZE (scapy-2.1.0.tar.gz) = 956785 Index: patches/patch-doc_scapy_1 =================================================================== RCS file: /cvs/openbsd/ports/net/scapy/patches/patch-doc_scapy_1,v retrieving revision 1.1 diff -u -p -r1.1 patch-doc_scapy_1 --- patches/patch-doc_scapy_1 1 Oct 2009 16:28:49 -0000 1.1 +++ patches/patch-doc_scapy_1 4 Oct 2010 08:05:46 -0000 @@ -1,7 +1,7 @@ $OpenBSD: patch-doc_scapy_1,v 1.1 2009/10/01 16:28:49 sthen Exp $ ---- doc/scapy.1.orig Tue May 8 10:55:07 2007 -+++ doc/scapy.1 Tue May 8 10:58:07 2007 -@@ -66,7 +66,7 @@ Just run \fBscapy\fP and try the following commands in +--- doc/scapy.1.orig Sun Mar 8 13:35:08 2009 ++++ doc/scapy.1 Mon Oct 4 07:38:02 2010 +@@ -100,7 +100,7 @@ Just run \fBscapy\fP and try the following commands in .LP Test the robustness of a network stack with invalid packets: .nf Index: patches/patch-scapy_arch_pcapdnet_py =================================================================== RCS file: patches/patch-scapy_arch_pcapdnet_py diff -N patches/patch-scapy_arch_pcapdnet_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-scapy_arch_pcapdnet_py 4 Oct 2010 08:05:46 -0000 @@ -0,0 +1,12 @@ +$OpenBSD$ +--- scapy/arch/pcapdnet.py.orig Mon Oct 4 07:32:51 2010 ++++ scapy/arch/pcapdnet.py Mon Oct 4 07:34:28 2010 +@@ -47,6 +47,8 @@ if conf.use_pcap: + self.pcap = pcap.pcap(device, snaplen, promisc, immediate=1) + def __getattr__(self, attr): + return getattr(self.pcap, attr) ++ def __del__(self): ++ os.close(self.pcap.fileno()) + open_pcap = lambda *args,**kargs: _PcapWrapper_pypcap(*args,**kargs) + elif hasattr(pcap,"pcapObject"): # python-libpcap + class _PcapWrapper_libpcap: Index: patches/patch-scapy_sendrecv_py =================================================================== RCS file: patches/patch-scapy_sendrecv_py diff -N patches/patch-scapy_sendrecv_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-scapy_sendrecv_py 4 Oct 2010 08:05:46 -0000 @@ -0,0 +1,12 @@ +$OpenBSD$ +--- scapy/sendrecv.py.orig Mon Oct 4 07:33:19 2010 ++++ scapy/sendrecv.py Mon Oct 4 07:35:09 2010 +@@ -117,7 +117,7 @@ def sndrcv(pks, pkt, timeout = None, inter = 0, verbos + if remaintime <= 0: + break + r = None +- if arch.FREEBSD or arch.DARWIN: ++ if arch.FREEBSD or arch.DARWIN or arch.OPENBSD: + inp, out, err = select(inmask,[],[], 0.05) + if len(inp) == 0 or pks in inp: + r = pks.nonblock_recv() Index: patches/patch-setup_py =================================================================== RCS file: /cvs/openbsd/ports/net/scapy/patches/patch-setup_py,v retrieving revision 1.1 diff -u -p -r1.1 patch-setup_py --- patches/patch-setup_py 1 Oct 2009 16:28:49 -0000 1.1 +++ patches/patch-setup_py 4 Oct 2010 08:05:46 -0000 @@ -1,10 +1,10 @@ $OpenBSD: patch-setup_py,v 1.1 2009/10/01 16:28:49 sthen Exp $ ---- setup.py.orig Sun Sep 27 21:47:56 2009 -+++ setup.py Sun Sep 27 21:52:29 2009 -@@ -40,7 +40,7 @@ setup( - version = '2.0.1', - packages=['scapy','scapy/arch', 'scapy/layers','scapy/asn1','scapy/tools','scapy/modules'], - scripts = ['bin/scapy','bin/UTscapy'], +--- setup.py.orig Mon Dec 14 16:31:55 2009 ++++ setup.py Mon Oct 4 07:43:18 2010 +@@ -44,7 +44,7 @@ setup( + version = '2.1.0', + packages=['scapy','scapy/arch', 'scapy/arch/windows', 'scapy/layers','scapy/asn1','scapy/tools','scapy/modules', 'scapy/crypto'], + scripts = SCRIPTS, - data_files = [('share/man/man1', ["doc/scapy.1.gz"])], + data_files = [('man/man1', ["doc/scapy.1"])], Index: pkg/PLIST =================================================================== RCS file: /cvs/openbsd/ports/net/scapy/pkg/PLIST,v retrieving revision 1.2 diff -u -p -r1.2 PLIST --- pkg/PLIST 1 Oct 2009 16:28:49 -0000 1.2 +++ pkg/PLIST 4 Oct 2010 08:05:46 -0000 @@ -24,6 +24,9 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/scapy/arch/solaris.pyc lib/python${MODPY_VERSION}/site-packages/scapy/arch/unix.py lib/python${MODPY_VERSION}/site-packages/scapy/arch/unix.pyc +lib/python${MODPY_VERSION}/site-packages/scapy/arch/windows/ +lib/python${MODPY_VERSION}/site-packages/scapy/arch/windows/__init__.py +lib/python${MODPY_VERSION}/site-packages/scapy/arch/windows/__init__.pyc lib/python${MODPY_VERSION}/site-packages/scapy/as_resolvers.py lib/python${MODPY_VERSION}/site-packages/scapy/as_resolvers.pyc lib/python${MODPY_VERSION}/site-packages/scapy/asn1/ @@ -47,6 +50,11 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/scapy/base_classes.pyc lib/python${MODPY_VERSION}/site-packages/scapy/config.py lib/python${MODPY_VERSION}/site-packages/scapy/config.pyc +lib/python${MODPY_VERSION}/site-packages/scapy/crypto/ +lib/python${MODPY_VERSION}/site-packages/scapy/crypto/__init__.py +lib/python${MODPY_VERSION}/site-packages/scapy/crypto/__init__.pyc +lib/python${MODPY_VERSION}/site-packages/scapy/crypto/cert.py +lib/python${MODPY_VERSION}/site-packages/scapy/crypto/cert.pyc lib/python${MODPY_VERSION}/site-packages/scapy/dadict.py lib/python${MODPY_VERSION}/site-packages/scapy/dadict.pyc lib/python${MODPY_VERSION}/site-packages/scapy/data.py @@ -139,6 +147,8 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/scapy/packet.pyc lib/python${MODPY_VERSION}/site-packages/scapy/plist.py lib/python${MODPY_VERSION}/site-packages/scapy/plist.pyc +lib/python${MODPY_VERSION}/site-packages/scapy/pton_ntop.py +lib/python${MODPY_VERSION}/site-packages/scapy/pton_ntop.pyc lib/python${MODPY_VERSION}/site-packages/scapy/route.py lib/python${MODPY_VERSION}/site-packages/scapy/route.pyc lib/python${MODPY_VERSION}/site-packages/scapy/route6.py