make seobject.py backward compatible
Fixes: $ system-config-selinux Traceback (most recent call last): File "/usr/share/system-config-selinux/system-config-selinux.py", line 196, in <module> app = childWindow() File "/usr/share/system-config-selinux/system-config-selinux.py", line 100, in __init__ self.add_page(booleansPage.booleansPage(xml)) File "/usr/share/system-config-selinux/booleansPage.py", line 142, in __init__ self.load(self.filter) File "/usr/share/system-config-selinux/booleansPage.py", line 212, in load self.booleans = seobject.booleanRecords() TypeError: __init__() missing 1 required positional argument: 'args'
This commit is contained in:
parent
629a62a8a9
commit
0931850ffa
@ -282,30 +282,35 @@ index 0bdb90f..0cdcfcc 100644
|
||||
user identities to authorized role sets. In most cases, only the
|
||||
former mapping needs to be adjusted by the administrator; the latter
|
||||
diff --git selinux-python-2.7/semanage/seobject.py selinux-python-2.7/semanage/seobject.py
|
||||
index 70fd192..b287594 100644
|
||||
index 70fd192..99e1cd8 100644
|
||||
--- selinux-python-2.7/semanage/seobject.py
|
||||
+++ selinux-python-2.7/semanage/seobject.py
|
||||
@@ -238,21 +238,23 @@ class semanageRecords:
|
||||
@@ -238,21 +238,28 @@ class semanageRecords:
|
||||
transaction = False
|
||||
handle = None
|
||||
store = None
|
||||
+ args = None
|
||||
|
||||
- def __init__(self, store):
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
global handle
|
||||
- self.load = True
|
||||
- self.sh = self.get_handle(store)
|
||||
+ if args:
|
||||
+ # legacy code - args was store originally
|
||||
+ if type(args) == str:
|
||||
+ self.store = args
|
||||
+ else:
|
||||
+ self.args = args
|
||||
+ try:
|
||||
+ self.noreload = args.noreload
|
||||
+ except:
|
||||
+ self.noreload = False
|
||||
+ self.sh = self.get_handle(args.store)
|
||||
+ self.noreload = getattr(args, "noreload", False)
|
||||
+ if not self.store:
|
||||
+ self.store = getattr(args, "store", "")
|
||||
+
|
||||
+ self.sh = self.get_handle(self.store)
|
||||
|
||||
rc, localstore = selinux.selinux_getpolicytype()
|
||||
- if store == "" or store == localstore:
|
||||
+ if args.store == "" or args.store == localstore:
|
||||
+ if self.store == "" or self.store == localstore:
|
||||
self.mylog = logger()
|
||||
else:
|
||||
self.mylog = nulllogger()
|
||||
@ -316,7 +321,7 @@ index 70fd192..b287594 100644
|
||||
def get_handle(self, store):
|
||||
global is_mls_enabled
|
||||
|
||||
@@ -312,7 +314,8 @@ class semanageRecords:
|
||||
@@ -312,7 +319,8 @@ class semanageRecords:
|
||||
if semanageRecords.transaction:
|
||||
return
|
||||
|
||||
@ -326,18 +331,18 @@ index 70fd192..b287594 100644
|
||||
rc = semanage_commit(self.sh)
|
||||
if rc < 0:
|
||||
self.mylog.commit(0)
|
||||
@@ -328,8 +331,8 @@ class semanageRecords:
|
||||
@@ -328,8 +336,8 @@ class semanageRecords:
|
||||
|
||||
class moduleRecords(semanageRecords):
|
||||
|
||||
- def __init__(self, store):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
|
||||
def get_all(self):
|
||||
l = []
|
||||
@@ -386,6 +389,8 @@ class moduleRecords(semanageRecords):
|
||||
@@ -386,6 +394,8 @@ class moduleRecords(semanageRecords):
|
||||
print("%-25s %-9s %-5s %s" % (t[0], t[2], t[3], disabled))
|
||||
|
||||
def add(self, file, priority):
|
||||
@ -346,7 +351,7 @@ index 70fd192..b287594 100644
|
||||
if not os.path.exists(file):
|
||||
raise ValueError(_("Module does not exist: %s ") % file)
|
||||
|
||||
@@ -398,6 +403,8 @@ class moduleRecords(semanageRecords):
|
||||
@@ -398,6 +408,8 @@ class moduleRecords(semanageRecords):
|
||||
self.commit()
|
||||
|
||||
def set_enabled(self, module, enable):
|
||||
@ -355,7 +360,7 @@ index 70fd192..b287594 100644
|
||||
for m in module.split():
|
||||
rc, key = semanage_module_key_create(self.sh)
|
||||
if rc < 0:
|
||||
@@ -416,11 +423,15 @@ class moduleRecords(semanageRecords):
|
||||
@@ -416,11 +428,15 @@ class moduleRecords(semanageRecords):
|
||||
self.commit()
|
||||
|
||||
def modify(self, file):
|
||||
@ -371,40 +376,40 @@ index 70fd192..b287594 100644
|
||||
rc = semanage_set_default_priority(self.sh, priority)
|
||||
if rc < 0:
|
||||
raise ValueError(_("Invalid priority %d (needs to be between 1 and 999)") % priority)
|
||||
@@ -440,8 +451,8 @@ class moduleRecords(semanageRecords):
|
||||
@@ -440,8 +456,8 @@ class moduleRecords(semanageRecords):
|
||||
|
||||
class dontauditClass(semanageRecords):
|
||||
|
||||
- def __init__(self, store):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
|
||||
def toggle(self, dontaudit):
|
||||
if dontaudit not in ["on", "off"]:
|
||||
@@ -453,8 +464,8 @@ class dontauditClass(semanageRecords):
|
||||
@@ -453,8 +469,8 @@ class dontauditClass(semanageRecords):
|
||||
|
||||
class permissiveRecords(semanageRecords):
|
||||
|
||||
- def __init__(self, store):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
|
||||
def get_all(self):
|
||||
l = []
|
||||
@@ -522,8 +533,8 @@ class permissiveRecords(semanageRecords):
|
||||
@@ -522,8 +538,8 @@ class permissiveRecords(semanageRecords):
|
||||
|
||||
class loginRecords(semanageRecords):
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
self.oldsename = None
|
||||
self.oldserange = None
|
||||
self.sename = None
|
||||
@@ -534,7 +545,7 @@ class loginRecords(semanageRecords):
|
||||
@@ -534,7 +550,7 @@ class loginRecords(semanageRecords):
|
||||
if sename == "":
|
||||
sename = "user_u"
|
||||
|
||||
@ -413,7 +418,7 @@ index 70fd192..b287594 100644
|
||||
range, (rc, oldserole) = userrec.get(self.oldsename)
|
||||
range, (rc, serole) = userrec.get(sename)
|
||||
|
||||
@@ -603,7 +614,7 @@ class loginRecords(semanageRecords):
|
||||
@@ -603,7 +619,7 @@ class loginRecords(semanageRecords):
|
||||
if sename == "" and serange == "":
|
||||
raise ValueError(_("Requires seuser or serange"))
|
||||
|
||||
@ -422,7 +427,7 @@ index 70fd192..b287594 100644
|
||||
range, (rc, oldserole) = userrec.get(self.oldsename)
|
||||
|
||||
if sename != "":
|
||||
@@ -660,7 +671,7 @@ class loginRecords(semanageRecords):
|
||||
@@ -660,7 +676,7 @@ class loginRecords(semanageRecords):
|
||||
|
||||
def __delete(self, name):
|
||||
rec, self.oldsename, self.oldserange = selinux.getseuserbyname(name)
|
||||
@ -431,40 +436,40 @@ index 70fd192..b287594 100644
|
||||
range, (rc, oldserole) = userrec.get(self.oldsename)
|
||||
|
||||
(rc, k) = semanage_seuser_key_create(self.sh, name)
|
||||
@@ -779,8 +790,8 @@ class loginRecords(semanageRecords):
|
||||
@@ -779,8 +795,8 @@ class loginRecords(semanageRecords):
|
||||
|
||||
class seluserRecords(semanageRecords):
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
|
||||
def get(self, name):
|
||||
(rc, k) = semanage_user_key_create(self.sh, name)
|
||||
@@ -1042,8 +1053,8 @@ class portRecords(semanageRecords):
|
||||
@@ -1042,8 +1058,8 @@ class portRecords(semanageRecords):
|
||||
except RuntimeError:
|
||||
valid_types = []
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
|
||||
def __genkey(self, port, proto):
|
||||
if proto == "tcp":
|
||||
@@ -1317,8 +1328,8 @@ class ibpkeyRecords(semanageRecords):
|
||||
@@ -1317,8 +1333,8 @@ class ibpkeyRecords(semanageRecords):
|
||||
except:
|
||||
valid_types = []
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
|
||||
def __genkey(self, pkey, subnet_prefix):
|
||||
if subnet_prefix == "":
|
||||
@@ -1540,9 +1551,8 @@ class ibpkeyRecords(semanageRecords):
|
||||
@@ -1540,9 +1556,8 @@ class ibpkeyRecords(semanageRecords):
|
||||
def customized(self):
|
||||
l = []
|
||||
ddict = self.get_all(True)
|
||||
@ -476,7 +481,7 @@ index 70fd192..b287594 100644
|
||||
if k[0] == k[1]:
|
||||
l.append("-a -t %s -x %s %s" % (ddict[k][0], k[2], k[0]))
|
||||
else:
|
||||
@@ -1554,11 +1564,10 @@ class ibpkeyRecords(semanageRecords):
|
||||
@@ -1554,11 +1569,10 @@ class ibpkeyRecords(semanageRecords):
|
||||
keys = ddict.keys()
|
||||
if len(keys) == 0:
|
||||
return
|
||||
@ -489,18 +494,18 @@ index 70fd192..b287594 100644
|
||||
rec = "%-30s %-18s " % i
|
||||
rec += "%s" % ddict[i][0]
|
||||
for p in ddict[i][1:]:
|
||||
@@ -1572,8 +1581,8 @@ class ibendportRecords(semanageRecords):
|
||||
@@ -1572,8 +1586,8 @@ class ibendportRecords(semanageRecords):
|
||||
except:
|
||||
valid_types = []
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
|
||||
def __genkey(self, ibendport, ibdev_name):
|
||||
if ibdev_name == "":
|
||||
@@ -1782,10 +1791,9 @@ class ibendportRecords(semanageRecords):
|
||||
@@ -1782,10 +1796,9 @@ class ibendportRecords(semanageRecords):
|
||||
def customized(self):
|
||||
l = []
|
||||
ddict = self.get_all(True)
|
||||
@ -514,7 +519,7 @@ index 70fd192..b287594 100644
|
||||
return l
|
||||
|
||||
def list(self, heading=1, locallist=0):
|
||||
@@ -1793,11 +1801,10 @@ class ibendportRecords(semanageRecords):
|
||||
@@ -1793,11 +1806,10 @@ class ibendportRecords(semanageRecords):
|
||||
keys = ddict.keys()
|
||||
if len(keys) == 0:
|
||||
return
|
||||
@ -527,40 +532,40 @@ index 70fd192..b287594 100644
|
||||
rec = "%-30s %-18s " % i
|
||||
rec += "%s" % ddict[i][0]
|
||||
for p in ddict[i][1:]:
|
||||
@@ -1810,8 +1817,8 @@ class nodeRecords(semanageRecords):
|
||||
@@ -1810,8 +1822,8 @@ class nodeRecords(semanageRecords):
|
||||
except RuntimeError:
|
||||
valid_types = []
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
self.protocol = ["ipv4", "ipv6"]
|
||||
|
||||
def validate(self, addr, mask, protocol):
|
||||
@@ -2046,8 +2053,8 @@ class nodeRecords(semanageRecords):
|
||||
@@ -2046,8 +2058,8 @@ class nodeRecords(semanageRecords):
|
||||
|
||||
class interfaceRecords(semanageRecords):
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
|
||||
def __add(self, interface, serange, ctype):
|
||||
if is_mls_enabled == 1:
|
||||
@@ -2243,8 +2250,8 @@ class fcontextRecords(semanageRecords):
|
||||
@@ -2243,8 +2255,8 @@ class fcontextRecords(semanageRecords):
|
||||
except RuntimeError:
|
||||
valid_types = []
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
self.equiv = {}
|
||||
self.equiv_dist = {}
|
||||
self.equal_ind = False
|
||||
@@ -2566,10 +2573,15 @@ class fcontextRecords(semanageRecords):
|
||||
@@ -2566,10 +2578,15 @@ class fcontextRecords(semanageRecords):
|
||||
if rc < 0:
|
||||
raise ValueError(_("Could not list file contexts"))
|
||||
|
||||
@ -576,13 +581,13 @@ index 70fd192..b287594 100644
|
||||
self.flist += fclocal
|
||||
|
||||
ddict = {}
|
||||
@@ -2627,8 +2639,8 @@ class fcontextRecords(semanageRecords):
|
||||
@@ -2627,8 +2644,8 @@ class fcontextRecords(semanageRecords):
|
||||
|
||||
class booleanRecords(semanageRecords):
|
||||
|
||||
- def __init__(self, store=""):
|
||||
- semanageRecords.__init__(self, store)
|
||||
+ def __init__(self, args):
|
||||
+ def __init__(self, args = None):
|
||||
+ semanageRecords.__init__(self, args)
|
||||
self.dict = {}
|
||||
self.dict["TRUE"] = 1
|
||||
|
Loading…
Reference in New Issue
Block a user