summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimo Sarawinski2017-06-19 12:49:09 +0200
committerTimo Sarawinski2017-06-19 12:49:09 +0200
commitb299df133814bf67a330bf33fdd5ff2a6542a658 (patch)
tree27c0aa527eebb21439b878dacc75433080057587
parentf768947ff88af48c56faabb8b9252c8ce53aacfe (diff)
downloadaur-b299df133814bf67a330bf33fdd5ff2a6542a658.tar.gz
included crda
-rw-r--r--.SRCINFO14
-rw-r--r--0001-Makefile-Don-t-run-ldconfig.patch24
-rw-r--r--0001-Makefile-Link-libreg.so-against-the-crypto-library.patch55
-rw-r--r--PKGBUILD50
-rw-r--r--set-wireless-regdom5
-rw-r--r--wireless-regdb.install2
6 files changed, 136 insertions, 14 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 0c05b0db80c9..01aba5dc4e79 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,21 +1,31 @@
pkgbase = wireless-regdb-pentest
pkgdesc = Central Regulatory Domain Database with txpower/channels modified for pentesters. please respect the law in your country
pkgver = 2017.03.07
- pkgrel = 1
+ pkgrel = 2
url = http://wireless.kernel.org/en/developers/Regulatory
arch = any
license = custom
- makedepends = crda
+ makedepends = gcc5
depends = sh
provides = wireless-regdb
+ provides = crda
conflicts = wireless-regdb
+ conflicts = crda
backup = etc/conf.d/wireless-regdom
source = https://www.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2017.03.07.tar.xz
source = crda.conf.d
source = db.txt.patch
+ source = set-wireless-regdom
+ source = 0001-Makefile-Link-libreg.so-against-the-crypto-library.patch
+ source = 0001-Makefile-Don-t-run-ldconfig.patch
+ source = https://www.kernel.org/pub/software/network/crda/crda-3.18.tar.xz
sha256sums = 371eafa3b26ece916ef83aca02c4bed2e54099eb5b8c6d22d3a4358dce6535b9
sha256sums = 192428fd959806705356107bffc97b8b379854e79bd013c4ee140e5202326e2b
sha256sums = 464037af76e3a90548f30a4a0fcacc35053da8ea9d077c76f9ab728cf0772313
+ sha256sums = 603ce97da5cce3f5337e99007ce04e2f295bb33a36b308794884011f7bcabaf3
+ sha256sums = 96b2068b27202f8bc78009869520e396cb3f3ac7a826efef06d0fc41047f2520
+ sha256sums = ff52990cf9295e5cebcf07ebbf2a96e225d97088573edcc898b29ce33a0fb663
+ sha256sums = 43fcb9679f8b75ed87ad10944a506292def13e4afb194afa7aa921b01e8ecdbf
pkgname = wireless-regdb-pentest
diff --git a/0001-Makefile-Don-t-run-ldconfig.patch b/0001-Makefile-Don-t-run-ldconfig.patch
new file mode 100644
index 000000000000..e9f102dc4558
--- /dev/null
+++ b/0001-Makefile-Don-t-run-ldconfig.patch
@@ -0,0 +1,24 @@
+From 15bc8065e9dc5485c650c528f8d80f7536e378d6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20B=C3=A4chler?= <thomas@archlinux.org>
+Date: Fri, 21 Feb 2014 20:30:24 +0100
+Subject: [PATCH] Makefile: Don't run ldconfig
+
+---
+ Makefile | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 80f4946..c003195 100644
+--- a/Makefile
++++ b/Makefile
+@@ -130,7 +130,6 @@ install-libreg:
+ $(NQ) ' INSTALL libreg'
+ $(Q)mkdir -p $(DESTDIR)/$(LIBDIR)
+ $(Q)cp $(LIBREG) $(DESTDIR)/$(LIBDIR)/
+- $(Q)ldconfig
+
+ %.o: %.c regdb.h $(LIBREG)
+ $(NQ) ' CC ' $@
+--
+1.9.0
+
diff --git a/0001-Makefile-Link-libreg.so-against-the-crypto-library.patch b/0001-Makefile-Link-libreg.so-against-the-crypto-library.patch
new file mode 100644
index 000000000000..10dae58504de
--- /dev/null
+++ b/0001-Makefile-Link-libreg.so-against-the-crypto-library.patch
@@ -0,0 +1,55 @@
+From e2e519730c33de4503ac5dda28863d029e3cf578 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thomas=20B=C3=A4chler?= <thomas@archlinux.org>
+Date: Fri, 21 Feb 2014 20:15:32 +0100
+Subject: [PATCH] Makefile: Link libreg.so against the crypto library.
+
+---
+ Makefile | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 1f25509..80f4946 100644
+--- a/Makefile
++++ b/Makefile
+@@ -33,6 +33,7 @@ LDLIBS += $(LDLIBREG)
+ LDLIBS += -lm
+ LIBREG += libreg.so
+ LDFLAGS += -L ./
++LIBREG_LDFLAGS += -lm
+
+ all: all_noverify verify
+
+@@ -40,17 +41,19 @@ all_noverify: $(LIBREG) crda intersect regdbdump db2rd optimize
+
+ ifeq ($(USE_OPENSSL),1)
+ CFLAGS += -DUSE_OPENSSL -DPUBKEY_DIR=\"$(RUNTIME_PUBKEY_DIR)\" `pkg-config --cflags openssl`
+-LDLIBS += `pkg-config --libs openssl`
++LDCRYPTOLIB := `pkg-config --libs openssl`
+
+ $(LIBREG): keys-ssl.c
+
+ else
+ CFLAGS += -DUSE_GCRYPT
+-LDLIBS += -lgcrypt
++LDCRYPTOLIB := -lgcrypt
+
+ $(LIBREG): keys-gcrypt.c
+
+ endif
++LDLIBS += $(LDCRYPTOLIB)
++LIBREG_LDFLAGS += $(LDCRYPTOLIB)
+ MKDIR ?= mkdir -p
+ INSTALL ?= install
+
+@@ -116,7 +119,7 @@ keys-%.c: utils/key2pub.py $(wildcard $(PUBKEY_DIR)/*.pem)
+
+ $(LIBREG): regdb.h reglib.h reglib.c
+ $(NQ) ' CC ' $@
+- $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -shared -Wl,-soname,$(LIBREG) $^
++ $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -shared -Wl,-soname,$(LIBREG) $^ $(LIBREG_LDFLAGS)
+
+ install-libreg-headers:
+ $(NQ) ' INSTALL libreg-headers'
+--
+1.9.0
+
diff --git a/PKGBUILD b/PKGBUILD
index 9a01c2c57d22..abfda02d2c6f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,41 +4,67 @@
pkgname=wireless-regdb-pentest
_pkgname=wireless-regdb
pkgver=2017.03.07
-pkgrel=1
+pkgrel=2
pkgdesc="Central Regulatory Domain Database with txpower/channels modified for pentesters. please respect the law in your country"
arch=('any')
url="http://wireless.kernel.org/en/developers/Regulatory"
backup=(etc/conf.d/wireless-regdom)
license=('custom')
depends=('sh')
-makedepends=('crda')
-conflicts=('wireless-regdb')
-provides=('wireless-regdb')
+makedepends=('gcc5')
+conflicts=('wireless-regdb' 'crda')
+provides=('wireless-regdb' 'crda')
source=(https://www.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-${pkgver}.tar.xz
'crda.conf.d'
- 'db.txt.patch')
+ 'db.txt.patch'
+ 'set-wireless-regdom'
+ '0001-Makefile-Link-libreg.so-against-the-crypto-library.patch'
+ '0001-Makefile-Don-t-run-ldconfig.patch'
+ 'https://www.kernel.org/pub/software/network/crda/crda-3.18.tar.xz')
+
sha256sums=('371eafa3b26ece916ef83aca02c4bed2e54099eb5b8c6d22d3a4358dce6535b9'
'192428fd959806705356107bffc97b8b379854e79bd013c4ee140e5202326e2b'
- '464037af76e3a90548f30a4a0fcacc35053da8ea9d077c76f9ab728cf0772313')
+ '464037af76e3a90548f30a4a0fcacc35053da8ea9d077c76f9ab728cf0772313'
+ '603ce97da5cce3f5337e99007ce04e2f295bb33a36b308794884011f7bcabaf3'
+ '96b2068b27202f8bc78009869520e396cb3f3ac7a826efef06d0fc41047f2520'
+ 'ff52990cf9295e5cebcf07ebbf2a96e225d97088573edcc898b29ce33a0fb663'
+ '43fcb9679f8b75ed87ad10944a506292def13e4afb194afa7aa921b01e8ecdbf')
+
prepare() {
+ tar xf crda-3.18.tar.xz
cd "${srcdir}"/"${_pkgname}"-"${pkgver}"
patch -Np1 -i ../db.txt.patch
+ sed -i 's/python/python2/' *.py
}
package() {
+ cd "${srcdir}"/${_pkgname}-${pkgver}/
+ make
+ cp root.key.pub.pem "${srcdir}"/crda-3.18/pubkeys/
+ cd "${srcdir}"/crda-3.18
+ sed 's|^#!/usr/bin/env python|#!/usr/bin/python2|' -i utils/key2pub.py
+ patch -p1 -i "${srcdir}"/0001-Makefile-Link-libreg.so-against-the-crypto-library.patch
+ patch -p1 -i "${srcdir}"/0001-Makefile-Don-t-run-ldconfig.patch
+ CC=gcc-5 make
+
+ make DESTDIR="${pkgdir}" UDEV_RULE_DIR=/usr/lib/udev/rules.d/ SBINDIR=/usr/bin/ install
+ # Adjust paths in udev rule file
+ sed 's|/sbin/crda|/usr/bin/crda|' -i "${pkgdir}"/usr/lib/udev/rules.d/85-regulatory.rules
+ # This rule automatically sets the regulatory domain when cfg80211 is loaded
+ echo 'ACTION=="add" SUBSYSTEM=="module", DEVPATH=="/module/cfg80211", RUN+="/usr/bin/set-wireless-regdom"' >> "${pkgdir}"/usr/lib/udev/rules.d/85-regulatory.rules
+
+ install -D -m644 "${srcdir}"/crda-3.18/LICENSE "${pkgdir}"/usr/share/licenses/crda/LICENSE
+
+ install -D -m755 "${srcdir}"/set-wireless-regdom "${pkgdir}"/usr/bin/set-wireless-regdom
+ cd "${srcdir}"/${_pkgname}-${pkgver}/
+ make
# Install and verify regulatory.bin file
msg "Installing and verifying the regulatory.bin file ..."
install -D -m644 "${srcdir}"/${_pkgname}-${pkgver}/regulatory.bin "${pkgdir}"/usr/lib/crda/regulatory.bin
# This creates a depend/makedepend loop:
# crda depends on wireless-regdb (but strictly doesn't makedepend on it)
# wireless-regdb makedepends on crda
- if /usr/bin/regdbdump "${pkgdir}"/usr/lib/crda/regulatory.bin > /dev/null; then
- msg "Regulatory database verification was succesful."
- else
- error "Regulatory database verification failed."
- return 1
- fi
install -D -m644 "${srcdir}"/${_pkgname}-${pkgver}/sforshee.key.pub.pem "${pkgdir}"/usr/lib/crda/pubkeys/sforshee.key.pub.pem
install -D -m644 "${srcdir}"/${_pkgname}-${pkgver}/LICENSE "${pkgdir}"/usr/share/licenses/wireless-regdb/LICENSE
install -D -m644 "${srcdir}"/${_pkgname}-${pkgver}/regulatory.bin.5 "${pkgdir}"/usr/share/man/man5/regulatory.bin.5
diff --git a/set-wireless-regdom b/set-wireless-regdom
new file mode 100644
index 000000000000..3905ae98a310
--- /dev/null
+++ b/set-wireless-regdom
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+unset WIRELESS_REGDOM
+. /etc/conf.d/wireless-regdom
+[ -n "${WIRELESS_REGDOM}" ] && iw reg set ${WIRELESS_REGDOM}
diff --git a/wireless-regdb.install b/wireless-regdb.install
index 7b5a05de3488..c87bef4f70f8 100644
--- a/wireless-regdb.install
+++ b/wireless-regdb.install
@@ -1,4 +1,6 @@
post_install() {
+ echo "Uncomment the right regulatory domain in /etc/conf.d/wireless-regdom."
+ echo "It will automatically be set on boot."
post_upgrade
}