wireless-regdb: Make it build with python2
This backports a patch to build it work with python2 in addition to
python3.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit d3a8a62692)
			
			
This commit is contained in:
		@@ -0,0 +1,58 @@
 | 
				
			|||||||
 | 
					From 651e39dee8605995b736b6056c6f7dc5c5a9c948 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Johannes Berg <johannes.berg@intel.com>
 | 
				
			||||||
 | 
					Date: Thu, 22 Aug 2019 21:46:27 +0200
 | 
				
			||||||
 | 
					Subject: [PATCH] regdb: fix compatibility with python2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Various changes in the commit mentioned below broke
 | 
				
			||||||
 | 
					compatibility with python2. Restore it in a way that
 | 
				
			||||||
 | 
					makes it worth with both versions.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Fixes: f3c4969c2485 ("wireless-regdb: make scripts compatible with Python 3")
 | 
				
			||||||
 | 
					Signed-off-by: Johannes Berg <johannes.berg@intel.com>
 | 
				
			||||||
 | 
					Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 db2bin.py  | 2 +-
 | 
				
			||||||
 | 
					 db2fw.py   | 2 +-
 | 
				
			||||||
 | 
					 dbparse.py | 3 +--
 | 
				
			||||||
 | 
					 3 files changed, 3 insertions(+), 4 deletions(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					--- a/db2bin.py
 | 
				
			||||||
 | 
					+++ b/db2bin.py
 | 
				
			||||||
 | 
					@@ -118,7 +118,7 @@ reg_country_ptr.set()
 | 
				
			||||||
 | 
					 for alpha2 in countrynames:
 | 
				
			||||||
 | 
					     coll = countries[alpha2]
 | 
				
			||||||
 | 
					     # struct regdb_file_reg_country
 | 
				
			||||||
 | 
					-    output.write(struct.pack('>BBxBI', alpha2[0], alpha2[1], coll.dfs_region, reg_rules_collections[coll.permissions]))
 | 
				
			||||||
 | 
					+    output.write(struct.pack('>2sxBI', alpha2, coll.dfs_region, reg_rules_collections[coll.permissions]))
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 if len(sys.argv) > 3:
 | 
				
			||||||
 | 
					--- a/db2fw.py
 | 
				
			||||||
 | 
					+++ b/db2fw.py
 | 
				
			||||||
 | 
					@@ -85,7 +85,7 @@ countrynames = list(countries)
 | 
				
			||||||
 | 
					 countrynames.sort()
 | 
				
			||||||
 | 
					 for alpha2 in countrynames:
 | 
				
			||||||
 | 
					     coll = countries[alpha2]
 | 
				
			||||||
 | 
					-    output.write(struct.pack('>BB', alpha2[0], alpha2[1]))
 | 
				
			||||||
 | 
					+    output.write(struct.pack('>2s', alpha2))
 | 
				
			||||||
 | 
					     country_ptrs[alpha2] = PTR(output)
 | 
				
			||||||
 | 
					 output.write(b'\x00' * 4)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					--- a/dbparse.py
 | 
				
			||||||
 | 
					+++ b/dbparse.py
 | 
				
			||||||
 | 
					@@ -1,6 +1,5 @@
 | 
				
			||||||
 | 
					 #!/usr/bin/env python
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-from builtins import bytes
 | 
				
			||||||
 | 
					 from functools import total_ordering
 | 
				
			||||||
 | 
					 import sys, math
 | 
				
			||||||
 | 
					 from math import ceil, log
 | 
				
			||||||
 | 
					@@ -359,7 +358,7 @@ class DBParser(object):
 | 
				
			||||||
 | 
					         for cname in cnames:
 | 
				
			||||||
 | 
					             if len(cname) != 2:
 | 
				
			||||||
 | 
					                 self._warn("country '%s' not alpha2" % cname)
 | 
				
			||||||
 | 
					-            cname = bytes(cname, 'ascii')
 | 
				
			||||||
 | 
					+            cname = cname.encode('ascii')
 | 
				
			||||||
 | 
					             if not cname in self._countries:
 | 
				
			||||||
 | 
					                 self._countries[cname] = Country(dfs_region, comments=self._comments)
 | 
				
			||||||
 | 
					             self._current_countries[cname] = self._countries[cname]
 | 
				
			||||||
		Reference in New Issue
	
	Block a user