[arch-commits] Commit in pyrit/repos (3 files)
Jelle van der Waa
jelle at archlinux.org
Thu Mar 16 19:37:06 UTC 2017
Date: Thursday, March 16, 2017 @ 19:37:05
Author: jelle
Revision: 216798
archrelease: copy trunk to community-staging-x86_64
Added:
pyrit/repos/community-staging-x86_64/
pyrit/repos/community-staging-x86_64/PKGBUILD
(from rev 216797, pyrit/trunk/PKGBUILD)
pyrit/repos/community-staging-x86_64/scapy-2.3.2.patch
(from rev 216797, pyrit/trunk/scapy-2.3.2.patch)
-------------------+
PKGBUILD | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
scapy-2.3.2.patch | 42 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 90 insertions(+)
Copied: pyrit/repos/community-staging-x86_64/PKGBUILD (from rev 216797, pyrit/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2017-03-16 19:37:05 UTC (rev 216798)
@@ -0,0 +1,48 @@
+# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
+# Contributor: Fabian Melters <melters [at] gmail [dot] com>
+
+pkgname=pyrit
+_pkgname=Pyrit
+pkgver=0.5.0
+pkgrel=2
+pkgdesc='The famous WPA precomputed cracker'
+url='https://github.com/JPaulMora/Pyrit'
+arch=('i686' 'x86_64')
+license=('GPL3')
+depends=('openssl' 'python2' 'zlib' 'libpcap')
+optdepends=(
+ 'cpyrit-cuda: nvidia gpu support'
+ 'cpyrit-opencl: opencl support'
+ 'scapy: packet capture analyzation support'
+ 'python2-sqlalchemy: storage support'
+)
+checkdepends=('python2-sqlalchemy' 'scapy')
+source=(${pkgname}-${pkgver}.tar.gz::https://github.com/JPaulMora/Pyrit/archive/v${pkgver}.tar.gz
+ scapy-2.3.2.patch)
+sha512sums=('912742cd7d9cd9231b9b3aa155a5170c0ba36c3865280423e100c1d12df34e093ee56305d8738d4f406abbfef9b1d540872872b8ef23d699466298d41289ad25'
+ '99d4ae2159be2d829337f3481cbb6580da1c6a2d2b6b28c7ed17348daa983859b7cd6ba3ee8575cbcba16efa27bf230bac075599b1fa0b531178dbdc45f853b2')
+
+prepare() {
+ cd ${_pkgname}-${pkgver}
+ patch -p1 < "${srcdir}/scapy-2.3.2.patch"
+}
+
+build() {
+ cd ${_pkgname}-${pkgver}
+ python2 setup.py build
+}
+
+check() {
+ cd ${_pkgname}-${pkgver}/test
+ local PYTHONVERSION="$(python2 -c 'import sys; print("{}.{}".format(sys.version_info.major, sys.version_info.minor))')"
+ PYTHONPATH="../build/lib.linux-${CARCH}-${PYTHONVERSION}" \
+ python2 test_pyrit.py
+}
+
+package() {
+ cd ${_pkgname}-${pkgver}
+ python2 setup.py install -O1 --root="${pkgdir}" --skip-build
+ install -Dm 644 README.md CHANGELOG -t "${pkgdir}/usr/share/doc/${pkgname}"
+}
+
+# vim: ts=2 sw=2 et:
Copied: pyrit/repos/community-staging-x86_64/scapy-2.3.2.patch (from rev 216797, pyrit/trunk/scapy-2.3.2.patch)
===================================================================
--- community-staging-x86_64/scapy-2.3.2.patch (rev 0)
+++ community-staging-x86_64/scapy-2.3.2.patch 2017-03-16 19:37:05 UTC (rev 216798)
@@ -0,0 +1,42 @@
+From 14ec997174b8e8fd20d22b6a97c57e19633f12a0 Mon Sep 17 00:00:00 2001
+From: Ilya Terentyev <bacondropped at gmail.com>
+Date: Tue, 1 Nov 2016 20:40:15 +0300
+Subject: [PATCH] update isinstance(EnumField) for scapy 2.3.3+
+
+scapy 2.3.2- requires that scapy.fields.EnumField is passed to
+isinstance, while scapy 2.3.3+ needs scapy.fields._EnumField.
+This patch accomodates pyrit for both versions.
+Fixes #500.
+---
+ cpyrit/pckttools.py | 13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/cpyrit/pckttools.py b/cpyrit/pckttools.py
+index 326829d..d58fff1 100644
+--- a/cpyrit/pckttools.py
++++ b/cpyrit/pckttools.py
+@@ -54,12 +54,23 @@
+ scapy.layers.dot11.PrismHeader)
+
+
++def isEnumField(f):
++ """Return True if f is an instance of EnumField. This function tries to be
++ portable: scapy versions 2.3.2 and earlier need isinstance(EnumField),
++ while scapy 2.3.3+ requires isinstance(_EnumField).
++ """
++ try:
++ return isinstance(f, scapy.fields._EnumField)
++ except AttributeError:
++ return isinstance(f, scapy.fields.EnumField)
++
++
+ def isFlagSet(self, name, value):
+ """Return True if the given field 'includes' the given value.
+ Exact behaviour of this function is specific to the field-type.
+ """
+ field, val = self.getfield_and_val(name)
+- if isinstance(field, scapy.fields.EnumField):
++ if isEnumField(field):
+ if val not in field.i2s:
+ return False
+ return field.i2s[val] == value
More information about the arch-commits
mailing list