summaryrefslogtreecommitdiffstats
path: root/debian/patches/debian/wireless-disable-regulatory.db-direct-loading.patch
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--debian/patches/debian/wireless-disable-regulatory.db-direct-loading.patch75
1 files changed, 75 insertions, 0 deletions
diff --git a/debian/patches/debian/wireless-disable-regulatory.db-direct-loading.patch b/debian/patches/debian/wireless-disable-regulatory.db-direct-loading.patch
new file mode 100644
index 000000000..6815dc947
--- /dev/null
+++ b/debian/patches/debian/wireless-disable-regulatory.db-direct-loading.patch
@@ -0,0 +1,75 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Thu, 05 Apr 2018 18:13:52 +0200
+Subject: wireless: Disable regulatory.db direct loading
+Forwarded: not-needed
+Bug-Debian: https://bugs.debian.org/892229
+
+Don't complain about being unable to load regulatory.db directly.
+This is expected until we generate a signing key and update
+wireless-regdb to be signed with it.
+
+Index: linux/net/wireless/reg.c
+===================================================================
+--- linux.orig/net/wireless/reg.c
++++ linux/net/wireless/reg.c
+@@ -476,6 +476,7 @@ static void reg_regdb_apply(struct work_
+
+ static DECLARE_WORK(reg_regdb_work, reg_regdb_apply);
+
++#if 0
+ static int reg_schedule_apply(const struct ieee80211_regdomain *regdom)
+ {
+ struct reg_regdb_apply_request *request;
+@@ -495,6 +496,7 @@ static int reg_schedule_apply(const stru
+ schedule_work(&reg_regdb_work);
+ return 0;
+ }
++#endif
+
+ #ifdef CONFIG_CFG80211_CRDA_SUPPORT
+ /* Max number of consecutive attempts to communicate with CRDA */
+@@ -574,6 +576,35 @@ static inline int call_crda(const char *
+ /* code to directly load a firmware database through request_firmware */
+ static const struct fwdb_header *regdb;
+
++#if 1
++
++static int load_builtin_regdb_keys(void)
++{
++ return 0;
++}
++
++static void free_regdb_keyring(void)
++{
++}
++
++static int query_regdb_file(const char *alpha2)
++{
++ return -ENOENT;
++}
++
++int reg_reload_regdb(void)
++{
++ return -ENOENT;
++}
++
++int reg_query_regdb_wmm(char *alpha2, int freq, struct ieee80211_reg_rule *rule)
++{
++ return -ENODATA;
++}
++EXPORT_SYMBOL(reg_query_regdb_wmm);
++
++#else /* disabled until we update wireless-regdb */
++
+ struct fwdb_country {
+ u8 alpha2[2];
+ __be16 coll_ptr;
+@@ -1090,6 +1121,8 @@ int reg_reload_regdb(void)
+ return err;
+ }
+
++#endif
++
+ static bool reg_query_database(struct regulatory_request *request)
+ {
+ if (query_regdb_file(request->alpha2) == 0)