crda: new package (thanks to Hauke Mehrtens <hauke@hauke-m.de>)
SVN-Revision: 14249
This commit is contained in:
parent
ec34d908c7
commit
11456c324d
3 changed files with 137 additions and 0 deletions
73
package/crda/Makefile
Normal file
73
package/crda/Makefile
Normal file
|
@ -0,0 +1,73 @@
|
|||
#
|
||||
# Copyright (C) 2009 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
# $Id$
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=crda
|
||||
PKG_RELEASE:=1
|
||||
PKG_VERSION:=1.0.1
|
||||
PKG_SOURCE_URL:=http://wireless.kernel.org/download/crda
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||
PKG_MD5SUM:=03554b71eef2626795befa17eb1d8b9e
|
||||
PKG_BUILD_DEPENDS:=mac80211 libnl openssl
|
||||
|
||||
PKG_REGULATORY_NAME:=regulatory
|
||||
PKG_REGULATORY_VERSION:=2009.01.15
|
||||
PKG_REGULATORY_SOURCE_URL:=http://wireless.kernel.org/download/wireless-regdb/regulatory.bins
|
||||
PKG_REGULATORY_SOURCE:=$(PKG_REGULATORY_VERSION)-$(PKG_REGULATORY_NAME).bin
|
||||
PKG_REGULATORY_MD5SUM:=a0db99e5385c876b6da7e2869546f6e2
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/crda
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
TITLE:=Central Regulatory Domain Agent (CRDA)
|
||||
DEPENDS:=@LINUX_2_6 +hotplug2 +kmod-mac80211
|
||||
URL:=http://wireless.kernel.org/en/developers/Regulatory/CRDA
|
||||
endef
|
||||
|
||||
define Download/wireless-regdb
|
||||
FILE:=$(PKG_REGULATORY_SOURCE)
|
||||
URL:=$(PKG_REGULATORY_SOURCE_URL)
|
||||
VERSION:=$(PKG_REGULATORY_VERSION)
|
||||
MD5SUM:=$(PKG_REGULATORY_MD5SUM)
|
||||
endef
|
||||
$(eval $(call Download,wireless-regdb))
|
||||
|
||||
define Package/crda/description
|
||||
This is the Central Regulatory Domain Agent for Linux. It serves one
|
||||
purpose: tell Linux kernel what to enforce. In essence it is a udev
|
||||
helper for communication between the kernel and userspace. You only
|
||||
need to run this manually for debugging purposes. For manual changing
|
||||
of regulatory domains use iw (iw reg set) or wpa_supplicant (feature
|
||||
yet to be added).
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
$(MAKE_VARS) \
|
||||
$(MAKE) -C $(PKG_BUILD_DIR)/$(MAKE_PATH) \
|
||||
$(MAKE_FLAGS) \
|
||||
USE_OPENSSL=1 \
|
||||
REG_BIN="$(DL_DIR)/$(PKG_REGULATORY_SOURCE)" \
|
||||
$(1)
|
||||
endef
|
||||
|
||||
define Package/crda/install
|
||||
$(INSTALL_DIR) $(1)/sbin
|
||||
$(INSTALL_DIR) $(1)/etc/hotplug.d
|
||||
$(INSTALL_DIR) $(1)/etc/hotplug.d/platform
|
||||
$(INSTALL_DIR) $(1)/usr/lib/crda
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/crda $(1)/sbin/
|
||||
$(INSTALL_DATA) ./files/hotplug.rule $(1)/etc/hotplug.d/platform/10-regulatory
|
||||
$(INSTALL_DATA) $(DL_DIR)/$(PKG_REGULATORY_SOURCE) $(1)/usr/lib/crda/regulatory.bin
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,crda))
|
||||
|
6
package/crda/files/hotplug.rule
Normal file
6
package/crda/files/hotplug.rule
Normal file
|
@ -0,0 +1,6 @@
|
|||
#!/bin/sh
|
||||
# Copyright (C) 2009 OpenWrt.org
|
||||
|
||||
[ change = "$ACTION" -a regulatory.0 = "$DEVICENAME" ] && {
|
||||
/sbin/crda
|
||||
}
|
58
package/crda/patches/100-remove_key_generation.patch
Normal file
58
package/crda/patches/100-remove_key_generation.patch
Normal file
|
@ -0,0 +1,58 @@
|
|||
Normally the keys-ssl.c will be auto generated in utils/key2pub.py, but for that the python-m2crypto package must be installed.
|
||||
To not add an other dependencies to the buildroot this patch adds the result.
|
||||
If the key in pubkeys/linville.key.pub.pem changes this patch has to be changed with the new keys-ssl.c included.
|
||||
|
||||
--- a/keys-ssl.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/keys-ssl.c 2009-01-20 22:35:10.000000000 +0100
|
||||
@@ -0,0 +1,38 @@
|
||||
+static BN_ULONG e_0[1] = {
|
||||
+ 0x00010001,
|
||||
+};
|
||||
+
|
||||
+static BN_ULONG n_0[64] = {
|
||||
+ 0x16a0d8e1, 0x63a27054, 0xc8ba757b, 0xdc9fca11,
|
||||
+ 0xcbcb35e3, 0xb9c06510, 0xba941433, 0x39e3dfeb,
|
||||
+ 0x6c1fce9d, 0x7bbae38a, 0xfefabba7, 0x205a5a73,
|
||||
+ 0x97839a2e, 0x53ea3e5a, 0x61dc0170, 0xfec8f5b6,
|
||||
+ 0xd29a1004, 0xefe311d8, 0xa5156bb8, 0x8c6a92d0,
|
||||
+ 0x7a6eb5cc, 0x9067cc76, 0x0bd5b1ff, 0xd103580b,
|
||||
+ 0x8f3a2daf, 0x4a563e84, 0x46b0943e, 0xacd7cadb,
|
||||
+ 0xebd1e198, 0x5fabb688, 0x5916f173, 0x7e70c1d3,
|
||||
+ 0x5d6ca84e, 0xaaa8acc8, 0xe20fd4dc, 0x1685c157,
|
||||
+ 0xad933f64, 0xf9e9c9c7, 0xc5f59824, 0xbe6272ed,
|
||||
+ 0x53447bd1, 0x585d9a7d, 0x5b3bc30d, 0x011a5b3f,
|
||||
+ 0xffbbf0e9, 0xf312b966, 0x482c131b, 0x2203fb37,
|
||||
+ 0x0dc38eab, 0x3e7c157d, 0xb39fcc8d, 0xb04de1d6,
|
||||
+ 0x07fc0d84, 0x4d9f0137, 0xe13b5ac5, 0xb075a241,
|
||||
+ 0x8e56e153, 0x0a9a9d48, 0xf97054eb, 0xf2cff393,
|
||||
+ 0x376024f2, 0x2a2ead68, 0x88d35dce, 0xd6579971,
|
||||
+};
|
||||
+
|
||||
+
|
||||
+struct pubkey {
|
||||
+ struct bignum_st e, n;
|
||||
+};
|
||||
+
|
||||
+#define KEY(data) { \
|
||||
+ .d = data, \
|
||||
+ .top = sizeof(data)/sizeof(data[0]), \
|
||||
+}
|
||||
+
|
||||
+#define KEYS(e,n) { KEY(e), KEY(n), }
|
||||
+
|
||||
+static struct pubkey keys[] = {
|
||||
+ KEYS(e_0, n_0),
|
||||
+};
|
||||
--- a/Makefile 2009-01-20 22:38:48.000000000 +0100
|
||||
+++ b/Makefile 2009-01-20 22:38:56.000000000 +0100
|
||||
@@ -75,10 +75,6 @@
|
||||
$(NQ)
|
||||
$(Q) exit 1
|
||||
|
||||
-keys-%.c: utils/key2pub.py $(wildcard $(PUBKEY_DIR)/*.pem)
|
||||
- $(NQ) ' GEN ' $@
|
||||
- $(Q)./utils/key2pub.py --$* $(wildcard $(PUBKEY_DIR)/*.pem) $@
|
||||
-
|
||||
%.o: %.c regdb.h
|
||||
$(NQ) ' CC ' $@
|
||||
$(Q)$(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
|
Loading…
Reference in a new issue