On Tue, Nov 01, 2016 at 03:59:30PM +0100, Daniel Jakots wrote:
> On Tue, 1 Nov 2016 10:31:47 +0000, Stuart Henderson
> <[email protected]> wrote:
>
> > On 2016/11/01 11:24, Daniel Jakots wrote:
> > > Updated diff: aja noticed that without py-ecdsa installed it says:
> > > INFO: Can't import python ecdsa lib. Disabled certificate
> > > manipulation tools. So add a RDEP on it. I remove py-gnuplot as it
> > > seems it's not imported. I opened an issue to ask them to clarify
> > > scapy's requirements.
> >
> > They switched to matplotlib.
> >
> > https://github.com/secdev/scapy/commit/9cb4a70de3c57dd3779a0aa87ea25914ac6ef98d
> >
>
> Thanks, I saw that they use matplotlib but I didn't know that they
> switched to it. I tried to add graphics/py-matplotlib as RDEP but it
> was taken into account (so I removed it before sending the diff). The
> problem is "ImportError: No module named _backend_gdk". I looked at
> py-matplotlib but I didn't find anything suspicious.
>
> Daniel, do you have any idea?
>
in current py-matplotlib in PLIST missing:
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/_backend_gdk.so
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/_gtkagg.so
I fix this in update py-matplotlib 1.5 (on ports@)
> Here's a diff for debug purpose:
>
> $ scapy
>
> Traceback (most recent call last):
> File "/usr/local/bin/scapy", line 25, in <module>
> interact()
> File "/usr/local/lib/python2.7/site-packages/scapy/main.py", line 300, in
> interact
> scapy_builtins = __import__("all",globals(),locals(),".").__dict__
> File "/usr/local/lib/python2.7/site-packages/scapy/all.py", line 16, in
> <module>
> from scapy.arch import *
> File "/usr/local/lib/python2.7/site-packages/scapy/arch/__init__.py", line
> 19, in <module>
> import matplotlib.pyplot as plt
> File "/usr/local/lib/python2.7/site-packages/matplotlib/pyplot.py", line
> 109, in <module>
> _backend_mod, new_figure_manager, draw_if_interactive, _show =
> pylab_setup()
> File
> "/usr/local/lib/python2.7/site-packages/matplotlib/backends/__init__.py",
> line 32, in pylab_setup
> globals(),locals(),[backend_name],0)
> File
> "/usr/local/lib/python2.7/site-packages/matplotlib/backends/backend_gtkagg.py",
> line 14, in <module>
> from matplotlib.backends.backend_gtk import gtk, FigureManagerGTK,
> FigureCanvasGTK,\
> File
> "/usr/local/lib/python2.7/site-packages/matplotlib/backends/backend_gtk.py",
> line 36, in <module>
> from matplotlib.backends.backend_gdk import RendererGDK, FigureCanvasGDK
> File
> "/usr/local/lib/python2.7/site-packages/matplotlib/backends/backend_gdk.py",
> line 33, in <module>
> from matplotlib.backends._backend_gdk import pixbuf_get_pixels_array
> ImportError: No module named _backend_gdk
>
>
> Cheers,
> Daniel
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/net/scapy/Makefile,v
> retrieving revision 1.21
> diff -u -p -r1.21 Makefile
> --- Makefile 31 Jan 2016 23:21:37 -0000 1.21
> +++ Makefile 1 Nov 2016 14:55:51 -0000
> @@ -2,7 +2,7 @@
>
> COMMENT= powerful interactive packet manipulation in python
>
> -MODPY_EGG_VERSION= 2.3.2
> +MODPY_EGG_VERSION= 2.3.3
> DISTNAME= scapy-${MODPY_EGG_VERSION}
>
> GH_ACCOUNT= secdev
> @@ -23,10 +23,11 @@ DISTFILES= ${DISTNAME}.tar.gz ethertypes
> EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
>
> MODULES= lang/python
> -RUN_DEPENDS= net/libdnet,-python \
> +RUN_DEPENDS= graphics/py-matplotlib \
> + net/libdnet,-python \
> net/py-libpcap \
> security/py-crypto \
> - math/py-gnuplot
> + security/py-ecdsa
> TEST_DEPENDS=${RUN_DEPENDS}
>
> PKG_ARCH= *
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/net/scapy/distinfo,v
> retrieving revision 1.7
> diff -u -p -r1.7 distinfo
> --- distinfo 31 Jan 2016 23:21:37 -0000 1.7
> +++ distinfo 1 Nov 2016 14:55:51 -0000
> @@ -1,4 +1,4 @@
> SHA256 (ethertypes-20120703) = 7Tj51kS+/IfrQahknDEAcyQNmozXWy+cEVtdnX5dAzw=
> -SHA256 (scapy-2.3.2.tar.gz) = G4qG1of+uO0BEUwMAWtChnTL/sBOPrb1JJoBjEJ8T2o=
> +SHA256 (scapy-2.3.3.tar.gz) = Z2Qs97gG4C2u3dWIV3WIyuvdw0Jtt5BOeZmgsDNKY7U=
> SIZE (ethertypes-20120703) = 1362
> -SIZE (scapy-2.3.2.tar.gz) = 1166056
> +SIZE (scapy-2.3.3.tar.gz) = 1459132
> Index: patches/patch-scapy_arch___init___py
> ===================================================================
> RCS file: patches/patch-scapy_arch___init___py
> diff -N patches/patch-scapy_arch___init___py
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-scapy_arch___init___py 1 Nov 2016 14:55:51 -0000
> @@ -0,0 +1,33 @@
> +$OpenBSD$
> +--- scapy/arch/__init__.py.orig Tue Nov 1 15:54:12 2016
> ++++ scapy/arch/__init__.py Tue Nov 1 15:53:37 2016
> +@@ -15,22 +15,14 @@ from scapy.error import *
> + import scapy.config
> + from scapy.pton_ntop import inet_pton
> +
> +-try:
> +- from matplotlib import get_backend as matplotlib_get_backend
> +- import matplotlib.pyplot as plt
> +- MATPLOTLIB = 1
> +- if "inline" in matplotlib_get_backend():
> +- MATPLOTLIB_INLINED = 1
> +- else:
> +- MATPLOTLIB_INLINED = 0
> +- MATPLOTLIB_DEFAULT_PLOT_KARGS = {"marker": "+"}
> +-# RuntimeError to catch gtk "Cannot open display" error
> +-except (ImportError, RuntimeError):
> +- plt = None
> +- MATPLOTLIB = 0
> ++from matplotlib import get_backend as matplotlib_get_backend
> ++import matplotlib.pyplot as plt
> ++MATPLOTLIB = 1
> ++if "inline" in matplotlib_get_backend():
> ++ MATPLOTLIB_INLINED = 1
> ++else:
> + MATPLOTLIB_INLINED = 0
> +- MATPLOTLIB_DEFAULT_PLOT_KARGS = dict()
> +- log_loading.info("Can't import matplotlib. Won't be able to plot.")
> ++MATPLOTLIB_DEFAULT_PLOT_KARGS = {"marker": "+"}
> +
> + try:
> + import pyx
> Index: patches/patch-scapy_arch_unix_py
> ===================================================================
> RCS file: patches/patch-scapy_arch_unix_py
> diff -N patches/patch-scapy_arch_unix_py
> --- patches/patch-scapy_arch_unix_py 31 Jan 2016 23:21:37 -0000 1.2
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,45 +0,0 @@
> -$OpenBSD: patch-scapy_arch_unix_py,v 1.2 2016/01/31 23:21:37 sthen Exp $
> -
> -Merged upstream
> -https://github.com/secdev/scapy/commit/3ecf379e52214aa742d09a15b13694e7d2c6d469
> -
> ---- scapy/arch/unix.py.orig Fri Jan 15 14:10:59 2016
> -+++ scapy/arch/unix.py Sun Jan 24 11:03:12 2016
> -@@ -155,14 +155,30 @@ def in6_getifaddr():
> - """
> -
> - # List all network interfaces
> -- try:
> -- f = os.popen("%s -l" % conf.prog.ifconfig)
> -- except OSError,msg:
> -- log_interactive.warning("Failed to execute ifconfig.")
> -- return []
> -+ if scapy.arch.OPENBSD:
> -+ try:
> -+ f = os.popen("%s" % conf.prog.ifconfig)
> -+ except OSError,msg:
> -+ log_interactive.warning("Failed to execute ifconfig.")
> -+ return []
> -
> -- # Get the list of network interfaces
> -- splitted_line = f.readline().rstrip().split()
> -+ # Get the list of network interfaces
> -+ splitted_line = []
> -+ for l in f:
> -+ if "flags" in l:
> -+ iface = l.split()[0].rstrip(':')
> -+ splitted_line.append(iface)
> -+
> -+ else: # FreeBSD, NetBSD or Darwin
> -+ try:
> -+ f = os.popen("%s -l" % conf.prog.ifconfig)
> -+ except OSError,msg:
> -+ log_interactive.warning("Failed to execute ifconfig.")
> -+ return []
> -+
> -+ # Get the list of network interfaces
> -+ splitted_line = f.readline().rstrip().split()
> -+
> - ret = []
> - for i in splitted_line:
> - ret += _in6_getifaddr(i)
> Index: patches/patch-scapy_config_py
> ===================================================================
> RCS file: /cvs/ports/net/scapy/patches/patch-scapy_config_py,v
> retrieving revision 1.2
> diff -u -p -r1.2 patch-scapy_config_py
> --- patches/patch-scapy_config_py 31 Jan 2016 23:21:37 -0000 1.2
> +++ patches/patch-scapy_config_py 1 Nov 2016 14:55:51 -0000
> @@ -1,12 +1,12 @@
> $OpenBSD: patch-scapy_config_py,v 1.2 2016/01/31 23:21:37 sthen Exp $
> ---- scapy/config.py.orig Fri Jan 15 14:10:59 2016
> -+++ scapy/config.py Thu Jan 21 19:49:16 2016
> -@@ -374,7 +374,7 @@ extensions_paths: path or list of paths where extensio
> - load_layers = ["l2", "inet", "dhcp", "dns", "dot11", "gprs", "hsrp",
> "inet6", "ir", "isakmp", "l2tp",
> - "mgcp", "mobileip", "netbios", "netflow", "ntp", "ppp",
> "radius", "rip", "rtp",
> - "sebek", "skinny", "smb", "snmp", "tftp", "x509",
> "bluetooth", "dhcp6", "llmnr", "sctp", "vrrp",
> -- "ipsec" ]
> -+ "ipsec", "loop" ]
> -
> +--- scapy/config.py.orig Tue Oct 18 10:44:43 2016
> ++++ scapy/config.py Mon Oct 31 10:36:06 2016
> +@@ -385,7 +385,7 @@ contribs: a dict which can be used by contrib layers t
> + "mobileip", "netbios", "netflow", "ntp", "ppp",
> + "radius", "rip", "rtp", "skinny", "smb", "snmp",
> + "tftp", "x509", "bluetooth", "dhcp6", "llmnr",
> +- "sctp", "vrrp", "ipsec", "lltd", "vxlan"]
> ++ "sctp", "vrrp", "ipsec", "lltd", "vxlan", "loop"]
> + contribs = dict()
> +
>
> - if not Conf.ipv6_enabled:
> Index: patches/patch-scapy_sendrecv_py
> ===================================================================
> RCS file: patches/patch-scapy_sendrecv_py
> diff -N patches/patch-scapy_sendrecv_py
> --- patches/patch-scapy_sendrecv_py 31 Jan 2016 23:21:37 -0000 1.2
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,12 +0,0 @@
> -$OpenBSD: patch-scapy_sendrecv_py,v 1.2 2016/01/31 23:21:37 sthen Exp $
> ---- scapy/sendrecv.py.orig Tue Dec 30 21:25:32 2014
> -+++ scapy/sendrecv.py Sun Jan 17 20:19:17 2016
> -@@ -121,7 +121,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/ports/net/scapy/patches/patch-setup_py,v
> retrieving revision 1.3
> diff -u -p -r1.3 patch-setup_py
> --- patches/patch-setup_py 31 Jan 2016 23:21:37 -0000 1.3
> +++ patches/patch-setup_py 1 Nov 2016 14:55:51 -0000
> @@ -1,12 +1,21 @@
> $OpenBSD: patch-setup_py,v 1.3 2016/01/31 23:21:37 sthen Exp $
> ---- setup.py.orig Fri Jan 15 14:10:59 2016
> -+++ setup.py Thu Jan 21 19:49:16 2016
> -@@ -49,7 +49,7 @@ setup(
> - version = '2.3.2',
> - packages=['scapy','scapy/arch', 'scapy/arch/windows',
> 'scapy/layers','scapy/asn1','scapy/tools','scapy/modules', 'scapy/crypto',
> 'scapy/contrib'],
> - scripts = SCRIPTS,
> -- data_files = [('share/man/man1', ["doc/scapy.1.gz"])],
> -+ data_files = [('man/man1', ["doc/scapy.1"])],
> +--- setup.py.orig Tue Oct 18 10:44:43 2016
> ++++ setup.py Mon Oct 31 17:19:45 2016
> +@@ -47,7 +47,7 @@ if os.name == "nt":
>
> - # Metadata
> - author = 'Philippe BIONDI',
> + setup(
> + name='scapy',
> +- version=__import__('scapy').VERSION,
> ++ version='2.3.3',
> + packages=[
> + 'scapy',
> + 'scapy/arch',
> +@@ -61,7 +61,7 @@ setup(
> + 'scapy/tools',
> + ],
> + scripts=SCRIPTS,
> +- data_files=[('share/man/man1', ["doc/scapy.1.gz"])],
> ++ data_files=[('man/man1', ["doc/scapy.1"])],
> + package_data={
> + 'scapy': ['VERSION'],
> + },
> Index: patches/patch-test_regression_uts
> ===================================================================
> RCS file: patches/patch-test_regression_uts
> diff -N patches/patch-test_regression_uts
> --- patches/patch-test_regression_uts 31 Jan 2016 23:21:37 -0000 1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,123 +0,0 @@
> -$OpenBSD: patch-test_regression_uts,v 1.1 2016/01/31 23:21:37 sthen Exp $
> -
> -Backported from upstream
> -https://github.com/secdev/scapy/commit/ce89fee4ddcf5156b72074aede6a04e58b10dc5e
> -
> ---- test/regression.uts.orig Fri Jan 15 14:10:59 2016
> -+++ test/regression.uts Sun Jan 24 10:15:57 2016
> -@@ -754,12 +754,12 @@ class ATMT1(Automaton):
> - = Simple automaton Tests
> - ~ automaton
> -
> --a=ATMT1(init="a")
> -+a=ATMT1(init="a", ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'aabaaababaaabaaababab' )
> - a.result
> - assert( _ == 'aabaaababaaabaaababab' )
> --a=ATMT1(init="b")
> -+a=ATMT1(init="b", ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'babababababababababababababab' )
> - a.result
> -@@ -769,7 +769,7 @@ assert( _ == 'babababababababababababababab' )
> - ~ automaton
> -
> - try:
> -- ATMT1(init="").run()
> -+ ATMT1(init="", ll=lambda: None, recvsock=lambda: None).run()
> - except Automaton.Stuck:
> - True
> - else:
> -@@ -783,14 +783,14 @@ class ATMT2(ATMT1):
> - def MAIN(self, s):
> - return "c"+ATMT1.MAIN(self, s).run()
> -
> --a=ATMT2(init="a")
> -+a=ATMT2(init="a", ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'ccccccacabacccacababacccccacabacccacababab' )
> -
> -
> - a.result
> - assert( _ == 'ccccccacabacccacababacccccacabacccacababab' )
> --a=ATMT2(init="b")
> -+a=ATMT2(init="b", ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'cccccbaccbabaccccbaccbabab')
> - a.result
> -@@ -806,12 +806,12 @@ class ATMT3(ATMT2):
> - raise self.MAIN(s+"da")
> -
> -
> --a=ATMT3(init="a", debug=2)
> -+a=ATMT3(init="a", debug=2, ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'cccccacabdacccacabdabda')
> - a.result
> - assert( _ == 'cccccacabdacccacabdabda')
> --a=ATMT3(init="b")
> -+a=ATMT3(init="b", ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'cccccbdaccbdabdaccccbdaccbdabdab' )
> -
> -@@ -826,12 +826,12 @@ class ATMT4(ATMT3):
> - def action_test(self, s):
> - self.result = "e"+s+"e"
> -
> --a=ATMT4(init="a")
> -+a=ATMT4(init="a", ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'cccccacabdacccacabdabda')
> - a.result
> - assert( _ == 'ecccccacabdacccacabdabdae')
> --a=ATMT4(init="b")
> -+a=ATMT4(init="b", ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'cccccbdaccbdabdaccccbdaccbdabdab' )
> - a.result
> -@@ -869,7 +869,7 @@ class ATMT5(Automaton):
> - def END(self):
> - return self.res
> -
> --a=ATMT5()
> -+a=ATMT5(ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'Jupiter' )
> -
> -@@ -905,7 +905,7 @@ class ATMT6(Automaton):
> - def END(self):
> - return self.res
> -
> --a=ATMT6()
> -+a=ATMT6(ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == 'Mercury' )
> -
> -@@ -936,7 +936,7 @@ class ATMT7(Automaton):
> - self.res += "n"
> - return self.res
> -
> --a=ATMT7()
> -+a=ATMT7(ll=lambda: None, recvsock=lambda: None)
> - a.run(wait=False)
> - a.io.tst.send("at")
> - a.io.tst.recv()
> -@@ -976,7 +976,7 @@ class ATMT8(Automaton):
> -
> - r,w = os.pipe()
> -
> --a=ATMT8(external_fd={"extfd":r})
> -+a=ATMT8(external_fd={"extfd":r}, ll=lambda: None, recvsock=lambda: None)
> - a.run(wait=False)
> - os.write(w,"ra")
> - os.write(w,"nu")
> -@@ -1008,7 +1008,7 @@ class ATMT9(Automaton):
> - self.res += "s"
> - return self.res
> -
> --a=ATMT9(debug=5)
> -+a=ATMT9(debug=5, ll=lambda: None, recvsock=lambda: None)
> - a.run()
> - assert( _ == "VENUs" )
> -
> Index: patches/patch-test_run_tests
> ===================================================================
> RCS file: patches/patch-test_run_tests
> diff -N patches/patch-test_run_tests
> --- patches/patch-test_run_tests 31 Jan 2016 23:21:37 -0000 1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,9 +0,0 @@
> -$OpenBSD: patch-test_run_tests,v 1.1 2016/01/31 23:21:37 sthen Exp $
> ---- test/run_tests.orig Tue Jan 19 19:27:57 2016
> -+++ test/run_tests Tue Jan 19 19:30:18 2016
> -@@ -1,4 +1,4 @@
> --#! /bin/bash
> -+#! /bin/sh
> - DIR=$(dirname $0)/..
> - if [ "$*" == "" ]
> - then
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/net/scapy/pkg/PLIST,v
> retrieving revision 1.5
> diff -u -p -r1.5 PLIST
> --- pkg/PLIST 31 Jan 2016 23:21:37 -0000 1.5
> +++ pkg/PLIST 1 Nov 2016 14:55:51 -0000
> @@ -14,8 +14,10 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/arch/
> lib/python${MODPY_VERSION}/site-packages/scapy/arch/__init__.py
> lib/python${MODPY_VERSION}/site-packages/scapy/arch/__init__.pyc
> -lib/python${MODPY_VERSION}/site-packages/scapy/arch/bsd.py
> -lib/python${MODPY_VERSION}/site-packages/scapy/arch/bsd.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/arch/common.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/arch/common.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/arch/consts.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/arch/consts.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/arch/linux.py
> lib/python${MODPY_VERSION}/site-packages/scapy/arch/linux.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/arch/pcapdnet.py
> @@ -27,6 +29,10 @@ lib/python${MODPY_VERSION}/site-packages
> 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/arch/windows/compatibility.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/arch/windows/compatibility.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/arch/winpcapy.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/arch/winpcapy.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/
> @@ -65,6 +71,8 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/cdp.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/chdlc.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/chdlc.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/coap.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/coap.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/dtp.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/dtp.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/eigrp.py
> @@ -87,14 +95,22 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/isis.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/ldp.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/ldp.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/modbus.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/modbus.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/mpls.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/mpls.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/nsh.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/nsh.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/openflow.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/openflow.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/openflow3.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/openflow3.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/ospf.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/ospf.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/pnio.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/pnio.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/pnio_rtc.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/pnio_rtc.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/ppi.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/ppi.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/ppi_cace.py
> @@ -105,6 +121,8 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/ripng.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/rsvp.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/rsvp.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/sebek.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/contrib/sebek.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/send.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/send.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/skinny.py
> @@ -117,15 +135,8 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/vqp.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/vtp.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/vtp.pyc
> -lib/python${MODPY_VERSION}/site-packages/scapy/contrib/vxlan.py
> -lib/python${MODPY_VERSION}/site-packages/scapy/contrib/vxlan.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/wpa_eapol.py
> lib/python${MODPY_VERSION}/site-packages/scapy/contrib/wpa_eapol.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
> @@ -171,6 +182,8 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/l2tp.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/llmnr.py
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/llmnr.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/lltd.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/lltd.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/loop.py
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/loop.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/mgcp.py
> @@ -195,8 +208,6 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/rtp.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/sctp.py
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/sctp.pyc
> -lib/python${MODPY_VERSION}/site-packages/scapy/layers/sebek.py
> -lib/python${MODPY_VERSION}/site-packages/scapy/layers/sebek.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/skinny.py
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/skinny.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/smb.py
> @@ -205,8 +216,22 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/snmp.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/tftp.py
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/tftp.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/__init__.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/__init__.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/cert.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/cert.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/crypto/
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/crypto/__init__.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/crypto/__init__.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/crypto/curves.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/crypto/curves.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/crypto/pkcs1.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/tls/crypto/pkcs1.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/vrrp.py
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/vrrp.pyc
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/vxlan.py
> +lib/python${MODPY_VERSION}/site-packages/scapy/layers/vxlan.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/x509.py
> lib/python${MODPY_VERSION}/site-packages/scapy/layers/x509.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/main.py
> @@ -214,8 +239,6 @@ lib/python${MODPY_VERSION}/site-packages
> lib/python${MODPY_VERSION}/site-packages/scapy/modules/
> lib/python${MODPY_VERSION}/site-packages/scapy/modules/__init__.py
> lib/python${MODPY_VERSION}/site-packages/scapy/modules/__init__.pyc
> -lib/python${MODPY_VERSION}/site-packages/scapy/modules/geoip.py
> -lib/python${MODPY_VERSION}/site-packages/scapy/modules/geoip.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/modules/nmap.py
> lib/python${MODPY_VERSION}/site-packages/scapy/modules/nmap.pyc
> lib/python${MODPY_VERSION}/site-packages/scapy/modules/p0f.py
--
Alexandr Shadchin