diff --git a/policycoreutils/Makefile b/policycoreutils/Makefile index 83ebd45..bea9814 100644 --- a/policycoreutils/Makefile +++ b/policycoreutils/Makefile @@ -1,4 +1,4 @@ -SUBDIRS = sepolicy setfiles semanage load_policy newrole run_init sandbox secon audit2allow sestatus semodule_package semodule semodule_link semodule_expand semodule_deps sepolgen-ifgen setsebool scripts po man gui +SUBDIRS = sepolicy setfiles semanage load_policy newrole run_init sandbox secon audit2allow sestatus semodule_package semodule semodule_link semodule_expand semodule_deps sepolgen-ifgen setsebool scripts po man gui semanage/default_encoding INOTIFYH = $(shell ls /usr/include/sys/inotify.h 2>/dev/null) diff --git a/policycoreutils/audit2allow/sepolgen-ifgen b/policycoreutils/audit2allow/sepolgen-ifgen index 3967ba5..7f8caaf 100644 --- a/policycoreutils/audit2allow/sepolgen-ifgen +++ b/policycoreutils/audit2allow/sepolgen-ifgen @@ -63,7 +63,7 @@ def parse_options(): def get_policy(): p = selinux.selinux_current_policy_path() - if os.path.exists(p): + if p and os.path.exists(p): return p i = selinux.security_policyvers() p = selinux.selinux_binary_policy_path() + "." + str(i) @@ -82,7 +82,7 @@ def get_attrs(policy_path): sys.stderr.write("No installed policy to check\n") return None outfile = tempfile.NamedTemporaryFile() - except IOError, e: + except IOError as e: sys.stderr.write("could not open attribute output file\n") return None except OSError: @@ -100,7 +100,7 @@ def get_attrs(policy_path): try: attrs.from_file(outfile) except: - print "error parsing attribute info" + print("error parsing attribute info") return None return attrs @@ -111,7 +111,7 @@ def main(): # Open the output first to generate errors before parsing try: f = open(options.output, "w") - except IOError, e: + except IOError as e: sys.stderr.write("could not open output file [%s]\n" % options.output) return 1 @@ -130,9 +130,9 @@ def main(): # Parse the headers try: headers = refparser.parse_headers(options.headers, output=log, debug=options.debug) - except ValueError, e: - print "error parsing headers" - print str(e) + except ValueError as e: + print("error parsing headers") + print(str(e)) return 1 if_set = interfaces.InterfaceSet(output=log) diff --git a/policycoreutils/gui/Makefile b/policycoreutils/gui/Makefile index 9d9f820..0c2b390 100644 --- a/policycoreutils/gui/Makefile +++ b/policycoreutils/gui/Makefile @@ -12,7 +12,6 @@ domainsPage.py \ fcontextPage.py \ html_util.py \ loginsPage.py \ -mappingsPage.py \ modulesPage.py \ polgen.glade \ portsPage.py \ diff --git a/policycoreutils/gui/booleansPage.py b/policycoreutils/gui/booleansPage.py index eee954d..0c4b14b 100644 --- a/policycoreutils/gui/booleansPage.py +++ b/policycoreutils/gui/booleansPage.py @@ -18,20 +18,17 @@ # You should have received a copy of the GNU General Public License # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # -import string import gtk import gtk.glade -import os import gobject import sys -import tempfile import seobject import semanagePage INSTALLPATH='/usr/share/system-config-selinux' sys.path.append(INSTALLPATH) -import commands +import subprocess ENFORCING=0 PERMISSIVE=1 DISABLED=2 @@ -50,10 +47,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode - -from glob import fnmatch + import builtins + builtins.__dict__['_'] = str class Modifier: def __init__(self,name, on, save): @@ -103,8 +98,6 @@ class booleansPage: self.revertButton = xml.get_widget("booleanRevertButton") self.revertButton.set_sensitive(self.local) self.revertButton.connect("clicked", self.on_revert_clicked) - listStore = gtk.ListStore(gobject.TYPE_STRING) - cell = gtk.CellRendererText() self.store = gtk.ListStore(gobject.TYPE_BOOLEAN, gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING) self.store.set_sort_column_id(1, gtk.SORT_ASCENDING) @@ -123,7 +116,7 @@ class booleansPage: self.booleansView.append_column(col) col = gtk.TreeViewColumn("Description", gtk.CellRendererText(), text=DESC) - col.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED) + col.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED) col.set_fixed_width(400) col.set_sort_column_id(DESC) col.set_resizable(True) @@ -170,16 +163,15 @@ class booleansPage: # change cursor if boolean == None: return + self.wait() try: - self.wait() - (rc, out) = commands.getstatusoutput("semanage boolean -d %s" % boolean) - - self.ready() - if rc != 0: - return self.error(out) + subprocess.check_output("semanage boolean -d %s" % boolean, + stderr=subprocess.STDOUT, + shell=True) self.load(self.filter) - except ValueError, e: - self.error(e.args[0]) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() def filter_changed(self, *arg): filter = arg[0].get_text() @@ -224,17 +216,25 @@ class booleansPage: self.store.set_value(iter, ACTIVE , not val) self.wait() setsebool="/usr/sbin/setsebool -P %s %d" % (key, not val) - rc,out = commands.getstatusoutput(setsebool) - if rc != 0: - self.error(out) - self.load(self.filter) + try: + subprocess.check_output(setsebool, + stderr=subprocess.STDOUT, + shell=True) + self.load(self.filter) + except subprocess.CalledProcessError as e: + self.error(e.output) self.ready() def on_revert_clicked(self, button): self.wait() setsebool="semanage boolean --deleteall" - commands.getstatusoutput(setsebool) - self.load(self.filter) + try: + subprocess.check_output(setsebool, + stderr=subprocess.STDOUT, + shell=True) + self.load(self.filter) + except subprocess.CalledProcessError as e: + self.error(e.output) self.ready() def on_local_clicked(self, button): diff --git a/policycoreutils/gui/domainsPage.py b/policycoreutils/gui/domainsPage.py index 6af1e9a..39a4574 100644 --- a/policycoreutils/gui/domainsPage.py +++ b/policycoreutils/gui/domainsPage.py @@ -20,7 +20,7 @@ import string import gtk import gtk.glade import os -import commands +import subprocess import gobject import sys import seobject @@ -41,8 +41,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = str class domainsPage(semanagePage): def __init__(self, xml): @@ -115,18 +115,17 @@ class domainsPage(semanagePage): selection = self.view.get_selection() store, iter = selection.get_selected() domain = store.get_value(iter, 0) + self.wait() + cmd = "semanage permissive -d %s_t" % domain try: - self.wait() - status, output = commands.getstatusoutput("semanage permissive -d %s_t" % domain) - self.ready() - if status != 0: - self.error(output) - else: - domain = store.set_value(iter, 1, "") - self.itemSelected(selection) - - except ValueError, e: - self.error(e.args[0]) + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + domain = store.set_value(iter, 1, "") + self.itemSelected(selection) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() def propertiesDialog(self): # Do nothing @@ -140,15 +139,14 @@ class domainsPage(semanagePage): selection = self.view.get_selection() store, iter = selection.get_selected() domain = store.get_value(iter, 0) + self.wait() + cmd = "semanage permissive -a %s_t" % domain try: - self.wait() - status, output = commands.getstatusoutput("semanage permissive -a %s_t" % domain) - self.ready() - if status != 0: - self.error(output) - else: - domain = store.set_value(iter, 1, _("Permissive")) - self.itemSelected(selection) - - except ValueError, e: - self.error(e.args[0]) + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + domain = store.set_value(iter, 1, _("Permissive")) + self.itemSelected(selection) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() diff --git a/policycoreutils/gui/fcontextPage.py b/policycoreutils/gui/fcontextPage.py index 131f1c2..9a34143 100644 --- a/policycoreutils/gui/fcontextPage.py +++ b/policycoreutils/gui/fcontextPage.py @@ -18,10 +18,9 @@ ## Author: Dan Walsh import gtk import gtk.glade -import os import gobject import seobject -import commands +import subprocess from semanagePage import *; SPEC_COL = 0 @@ -55,8 +54,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = str class fcontextPage(semanagePage): @@ -72,16 +71,16 @@ class fcontextPage(semanagePage): self.view.set_search_equal_func(self.search) col = gtk.TreeViewColumn(_("File\nSpecification"), gtk.CellRendererText(), text=SPEC_COL) - col.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED) - col.set_fixed_width(250) + col.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED) + col.set_fixed_width(250) col.set_sort_column_id(SPEC_COL) col.set_resizable(True) self.view.append_column(col) col = gtk.TreeViewColumn(_("Selinux\nFile Type"), gtk.CellRendererText(), text=TYPE_COL) - col.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED) - col.set_fixed_width(250) + col.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED) + col.set_fixed_width(250) col.set_sort_column_id(TYPE_COL) col.set_resizable(True) self.view.append_column(col) @@ -97,16 +96,16 @@ class fcontextPage(semanagePage): liststore=self.fcontextFileTypeCombo.get_model() for k in seobject.file_types: if len(k) > 0 and k[0] != '-': - iter=liststore.append() - liststore.set_value(iter, 0, k) - iter = liststore.get_iter_first() - self.fcontextFileTypeCombo.set_active_iter(iter) + it=liststore.append() + liststore.set_value(it, 0, k) + it = liststore.get_iter_first() + self.fcontextFileTypeCombo.set_active_iter(it) self.fcontextTypeEntry = xml.get_widget("fcontextTypeEntry") self.fcontextMLSEntry = xml.get_widget("fcontextMLSEntry") - def match(self, fcon_dict, k, filter): + def match(self, fcon_dict, k, filt): try: - f=filter.lower() + f=filt.lower() for con in k: k=con.lower() if k.find(f) >= 0: @@ -119,46 +118,46 @@ class fcontextPage(semanagePage): pass return False - def load(self, filter=""): - self.filter=filter + def load(self, filt=""): + self.filter=filt self.fcontext=seobject.fcontextRecords() self.store.clear() fcon_dict=self.fcontext.get_all(self.local) - keys = fcon_dict.keys() + keys = list(fcon_dict.keys()) keys.sort() for k in keys: - if not self.match(fcon_dict, k, filter): + if not self.match(fcon_dict, k, filt): continue - iter=self.store.append() - self.store.set_value(iter, SPEC_COL, k[0]) - self.store.set_value(iter, FTYPE_COL, k[1]) + it=self.store.append() + self.store.set_value(it, SPEC_COL, k[0]) + self.store.set_value(it, FTYPE_COL, k[1]) if fcon_dict[k]: rec="%s:%s" % (fcon_dict[k][2], seobject.translate(fcon_dict[k][3],False)) else: rec="<>" - self.store.set_value(iter, TYPE_COL, rec) + self.store.set_value(it, TYPE_COL, rec) self.view.get_selection().select_path ((0,)) def filter_changed(self, *arg): - filter = arg[0].get_text() - if filter != self.filter: - self.load(filter) + filt = arg[0].get_text() + if filt != self.filter: + self.load(filt) def dialogInit(self): - store, iter = self.view.get_selection().get_selected() - self.fcontextEntry.set_text(store.get_value(iter, SPEC_COL)) + store, it = self.view.get_selection().get_selected() + self.fcontextEntry.set_text(store.get_value(it, SPEC_COL)) self.fcontextEntry.set_sensitive(False) - scontext = store.get_value(iter, TYPE_COL) + scontext = store.get_value(it, TYPE_COL) scon=context(scontext) self.fcontextTypeEntry.set_text(scon.type) self.fcontextMLSEntry.set_text(scon.mls) - type=store.get_value(iter, FTYPE_COL) + setype=store.get_value(it, FTYPE_COL) liststore=self.fcontextFileTypeCombo.get_model() - iter = liststore.get_iter_first() - while iter != None and liststore.get_value(iter,0) != type: - iter = liststore.iter_next(iter) - if iter != None: - self.fcontextFileTypeCombo.set_active_iter(iter) + it = liststore.get_iter_first() + while it != None and liststore.get_value(it,0) != setype: + it = liststore.iter_next(it) + if it != None: + self.fcontextFileTypeCombo.set_active_iter(it) self.fcontextFileTypeCombo.set_sensitive(False) def dialogClear(self): @@ -169,55 +168,60 @@ class fcontextPage(semanagePage): self.fcontextMLSEntry.set_text("s0") def delete(self): - store, iter = self.view.get_selection().get_selected() + store, it = self.view.get_selection().get_selected() + fspec=store.get_value(it, SPEC_COL) + ftype=store.get_value(it, FTYPE_COL) + self.wait() try: - fspec=store.get_value(iter, SPEC_COL) - ftype=store.get_value(iter, FTYPE_COL) - self.wait() - (rc, out) = commands.getstatusoutput("semanage fcontext -d -f '%s' '%s'" % (ftype, fspec)) - self.ready() - - if rc != 0: - return self.error(out) - store.remove(iter) + subprocess.check_output("semanage fcontext -d -f '%s' '%s'" % (ftype, fspec), + stderr=subprocess.STDOUT, + shell=True) + store.remove(it) self.view.get_selection().select_path ((0,)) - except ValueError, e: - self.error(e.args[0]) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() def add(self): ftype=["", "--", "-d", "-c", "-b", "-s", "-l", "-p" ] fspec=self.fcontextEntry.get_text().strip() - type=self.fcontextTypeEntry.get_text().strip() + setype=self.fcontextTypeEntry.get_text().strip() mls=self.fcontextMLSEntry.get_text().strip() list_model=self.fcontextFileTypeCombo.get_model() active = self.fcontextFileTypeCombo.get_active() self.wait() - (rc, out) = commands.getstatusoutput("semanage fcontext -a -t %s -r %s -f '%s' '%s'" % (type, mls, ftype[active], fspec)) - self.ready() - if rc != 0: - self.error(out) + try: + subprocess.check_output("semanage fcontext -a -t %s -r %s -f '%s' '%s'" % (setype, mls, ftype[active], fspec), + stderr=subprocess.STDOUT, + shell=True) + self.ready() + it=self.store.append() + self.store.set_value(it, SPEC_COL, fspec) + self.store.set_value(it, FTYPE_COL, ftype) + self.store.set_value(it, TYPE_COL, "%s:%s" % (setype, mls)) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() return False - iter=self.store.append() - self.store.set_value(iter, SPEC_COL, fspec) - self.store.set_value(iter, FTYPE_COL, ftype) - self.store.set_value(iter, TYPE_COL, "%s:%s" % (type, mls)) - def modify(self): fspec=self.fcontextEntry.get_text().strip() - type=self.fcontextTypeEntry.get_text().strip() + setype=self.fcontextTypeEntry.get_text().strip() mls=self.fcontextMLSEntry.get_text().strip() list_model=self.fcontextFileTypeCombo.get_model() - iter = self.fcontextFileTypeCombo.get_active_iter() - ftype=list_model.get_value(iter,0) + it = self.fcontextFileTypeCombo.get_active_iter() + ftype=list_model.get_value(it,0) self.wait() - (rc, out) = commands.getstatusoutput("semanage fcontext -m -t %s -r %s -f '%s' '%s'" % (type, mls, ftype, fspec)) - self.ready() - if rc != 0: - self.error(out) + try: + subprocess.check_output("semanage fcontext -m -t %s -r %s -f '%s' '%s'" % (setype, mls, ftype, fspec), + stderr=subprocess.STDOUT, + shell=True) + self.ready() + store, it = self.view.get_selection().get_selected() + self.store.set_value(it, SPEC_COL, fspec) + self.store.set_value(it, FTYPE_COL, ftype) + self.store.set_value(it, TYPE_COL, "%s:%s" % (setype, mls)) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() return False - - store, iter = self.view.get_selection().get_selected() - self.store.set_value(iter, SPEC_COL, fspec) - self.store.set_value(iter, FTYPE_COL, ftype) - self.store.set_value(iter, TYPE_COL, "%s:%s" % (type, mls)) diff --git a/policycoreutils/gui/html_util.py b/policycoreutils/gui/html_util.py index 68eed76..32de37a 100644 --- a/policycoreutils/gui/html_util.py +++ b/policycoreutils/gui/html_util.py @@ -30,7 +30,8 @@ import htmllib import formatter as Formatter import string from types import * -import StringIO +import io +import collections #------------------------------------------------------------------------------ @@ -119,7 +120,7 @@ def unescape_html(s): def html_to_text(html, maxcol=80): try: - buffer = StringIO.StringIO() + buffer = io.StringIO() formatter = Formatter.AbstractFormatter(TextWriter(buffer, maxcol)) parser = HTMLParserAnchor(formatter) parser.feed(html) @@ -127,7 +128,7 @@ def html_to_text(html, maxcol=80): text = buffer.getvalue() buffer.close() return text - except Exception, e: + except Exception as e: log_program.error('cannot convert html to text: %s' % e) return None @@ -149,7 +150,7 @@ def html_document(*body_components): elif type(body_component) in [TupleType, ListType]: for item in body_component: doc += item - elif callable(body_component): + elif isinstance(body_component, collections.Callable): result = body_component() if type(result) in [TupleType, ListType]: for item in result: diff --git a/policycoreutils/gui/loginsPage.py b/policycoreutils/gui/loginsPage.py index ec29fd9..8a1c0b7 100644 --- a/policycoreutils/gui/loginsPage.py +++ b/policycoreutils/gui/loginsPage.py @@ -16,13 +16,10 @@ ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ## Author: Dan Walsh -import string import gtk import gtk.glade -import os import gobject -import sys -import commands +import subprocess import seobject from semanagePage import *; @@ -39,8 +36,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = str class loginsPage(semanagePage): def __init__(self, xml): @@ -68,21 +65,21 @@ class loginsPage(semanagePage): self.filter=filter self.login = seobject.loginRecords() dict = self.login.get_all(0) - keys = dict.keys() + keys = list(dict.keys()) keys.sort() self.store.clear() for k in keys: range = seobject.translate(dict[k][1]) if not (self.match(k, filter) or self.match(dict[k][0], filter) or self.match(range, filter)): continue - iter = self.store.append() - self.store.set_value(iter, 0, k) - self.store.set_value(iter, 1, dict[k][0]) - self.store.set_value(iter, 2, range) + it = self.store.append() + self.store.set_value(it, 0, k) + self.store.set_value(it, 1, dict[k][0]) + self.store.set_value(it, 2, range) self.view.get_selection().select_path ((0,)) def __dialogSetup(self): - if self.firstTime == True: + if self.firstTime: return self.firstTime = True liststore = gtk.ListStore(gobject.TYPE_STRING) @@ -92,31 +89,31 @@ class loginsPage(semanagePage): self.loginsSelinuxUserCombo.add_attribute(cell, 'text', 0) selusers = seobject.seluserRecords().get_all(0) - keys = selusers.keys() + keys = list(selusers.keys()) keys.sort() for k in keys: if k != "system_u": self.loginsSelinuxUserCombo.append_text(k) - iter = liststore.get_iter_first() - while liststore.get_value(iter,0) != "user_u": - iter = liststore.iter_next(iter) - self.loginsSelinuxUserCombo.set_active_iter(iter) + it = liststore.get_iter_first() + while liststore.get_value(it,0) != "user_u": + it = liststore.iter_next(it) + self.loginsSelinuxUserCombo.set_active_iter(it) def dialogInit(self): self.__dialogSetup() - store, iter = self.view.get_selection().get_selected() - self.loginsNameEntry.set_text(store.get_value(iter, 0)) + store, it = self.view.get_selection().get_selected() + self.loginsNameEntry.set_text(store.get_value(it, 0)) self.loginsNameEntry.set_sensitive(False) - self.loginsMLSEntry.set_text(store.get_value(iter, 2)) - seuser = store.get_value(iter, 1) + self.loginsMLSEntry.set_text(store.get_value(it, 2)) + seuser = store.get_value(it, 1) liststore = self.loginsSelinuxUserCombo.get_model() - iter = liststore.get_iter_first() - while iter != None and liststore.get_value(iter,0) != seuser: - iter = liststore.iter_next(iter) - if iter != None: - self.loginsSelinuxUserCombo.set_active_iter(iter) + it = liststore.get_iter_first() + while it != None and liststore.get_value(it,0) != seuser: + it = liststore.iter_next(it) + if it != None: + self.loginsSelinuxUserCombo.set_active_iter(it) def dialogClear(self): @@ -126,21 +123,25 @@ class loginsPage(semanagePage): self.loginsMLSEntry.set_text("s0") def delete(self): - store, iter = self.view.get_selection().get_selected() + store, it = self.view.get_selection().get_selected() try: - login=store.get_value(iter, 0) + login=store.get_value(it, 0) if login == "root" or login == "__default__": raise ValueError(_("Login '%s' is required") % login) self.wait() - (rc, out) = commands.getstatusoutput("semanage login -d %s" % login) - self.ready() - if rc != 0: - self.error(out) + try: + subprocess.check_output("semanage login -d %s" % login, + stderr=subprocess.STDOUT, + shell=True) + self.ready() + store.remove(it) + self.view.get_selection().select_path ((0,)) + except subprocess.CalledProcessError as e: + self.ready() + self.error(e.output) return False - store.remove(iter) - self.view.get_selection().select_path ((0,)) - except ValueError, e: + except ValueError as e: self.error(e.args[0]) def add(self): @@ -149,36 +150,42 @@ class loginsPage(semanagePage): if serange == "": serange="s0" list_model=self.loginsSelinuxUserCombo.get_model() - iter = self.loginsSelinuxUserCombo.get_active_iter() - seuser = list_model.get_value(iter,0) + it = self.loginsSelinuxUserCombo.get_active_iter() + seuser = list_model.get_value(it,0) self.wait() - (rc, out) = commands.getstatusoutput("semanage login -a -s %s -r %s %s" % (seuser, serange, target)) - self.ready() - if rc != 0: - self.error(out) + try: + subprocess.check_output("semanage login -a -s %s -r %s %s" % (seuser, serange, target), + stderr=subprocess.STDOUT, + shell=True) + self.ready() + it = self.store.append() + self.store.set_value(it, 0, target) + self.store.set_value(it, 1, seuser) + self.store.set_value(it, 2, seobject.translate(serange)) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() return False - iter = self.store.append() - self.store.set_value(iter, 0, target) - self.store.set_value(iter, 1, seuser) - self.store.set_value(iter, 2, seobject.translate(serange)) - def modify(self): target=self.loginsNameEntry.get_text().strip() serange=self.loginsMLSEntry.get_text().strip() if serange == "": serange = "s0" list_model = self.loginsSelinuxUserCombo.get_model() - iter = self.loginsSelinuxUserCombo.get_active_iter() - seuser=list_model.get_value(iter,0) + it = self.loginsSelinuxUserCombo.get_active_iter() + seuser=list_model.get_value(it,0) self.wait() - (rc, out) = commands.getstatusoutput("semanage login -m -s %s -r %s %s" % (seuser, serange, target)) - self.ready() - if rc != 0: - self.error(out) + try: + subprocess.check_output("semanage login -m -s %s -r %s %s" % (seuser, serange, target), + stderr=subprocess.STDOUT, + shell=True) + self.ready() + store, it = self.view.get_selection().get_selected() + self.store.set_value(it, 0, target) + self.store.set_value(it, 1, seuser) + self.store.set_value(it, 2, seobject.translate(serange)) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() return False - - store, iter = self.view.get_selection().get_selected() - self.store.set_value(iter, 0, target) - self.store.set_value(iter, 1, seuser) - self.store.set_value(iter, 2, seobject.translate(serange)) diff --git a/policycoreutils/gui/mappingsPage.py b/policycoreutils/gui/mappingsPage.py deleted file mode 100644 index fd0ea75..0000000 --- a/policycoreutils/gui/mappingsPage.py +++ /dev/null @@ -1,55 +0,0 @@ -## mappingsPage.py - show selinux mappings -## Copyright (C) 2006 Red Hat, Inc. - -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. - -## This program is distributed in the hope that it will be useful, -## but WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -## GNU General Public License for more details. - -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -## Author: Dan Walsh -import string -import gtk -import gtk.glade -import os -import gobject -import sys -import seobject - -## -## I18N -## -PROGNAME="policycoreutils" -import gettext -gettext.bindtextdomain(PROGNAME, "/usr/share/locale") -gettext.textdomain(PROGNAME) -try: - gettext.install(PROGNAME, - localedir="/usr/share/locale", - unicode=False, - codeset = 'utf-8') -except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode - -class loginsPage: - def __init__(self, xml): - self.xml = xml - self.view = xml.get_widget("mappingsView") - self.store = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING) - self.store.set_sort_column_id(0, gtk.SORT_ASCENDING) - self.view.set_model(self.store) - self.login = loginRecords() - dict = self.login.get_all(0) - keys = dict.keys() - keys.sort() - for k in keys: - print "%-25s %-25s %-25s" % (k, dict[k][0], translate(dict[k][1])) diff --git a/policycoreutils/gui/modulesPage.py b/policycoreutils/gui/modulesPage.py index 9ff0766..a52863e 100644 --- a/policycoreutils/gui/modulesPage.py +++ b/policycoreutils/gui/modulesPage.py @@ -20,7 +20,7 @@ import string import gtk import gtk.glade import os -import commands +import subprocess import gobject import sys import seobject @@ -41,8 +41,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = str class modulesPage(semanagePage): def __init__(self, xml): @@ -85,8 +85,8 @@ class modulesPage(semanagePage): except: return 0 - def load(self, filter=""): - self.filter=filter + def load(self, filt=""): + self.filter=filt self.store.clear() try: fd = Popen("semodule -l", shell=True, stdout=PIPE).stdout @@ -94,11 +94,11 @@ class modulesPage(semanagePage): fd.close() for i in l: module, ver, newline = i.split('\t') - if not (self.match(module, filter) or self.match(ver, filter)): + if not (self.match(module, filt) or self.match(ver, filt)): continue - iter = self.store.append() - self.store.set_value(iter, 0, module.strip()) - self.store.set_value(iter, 1, ver.strip()) + it = self.store.append() + self.store.set_value(it, 0, module.strip()) + self.store.set_value(it, 1, ver.strip()) except: pass self.view.get_selection().select_path ((0,)) @@ -107,53 +107,51 @@ class modulesPage(semanagePage): def new_module(self, args): try: Popen(["/usr/share/system-config-selinux/polgengui.py"]) - except ValueError, e: + except ValueError as e: self.error(e.args[0]) def delete(self): - store, iter = self.view.get_selection().get_selected() - module = store.get_value(iter, 0) + store, it = self.view.get_selection().get_selected() + module = store.get_value(it, 0) + self.wait() try: - self.wait() - status, output = commands.getstatusoutput("semodule -r %s" % module) - self.ready() - if status != 0: - self.error(output) - else: - store.remove(iter) - self.view.get_selection().select_path ((0,)) - - except ValueError, e: - self.error(e.args[0]) + subprocess.check_output("semodule -r %s" % module, + stderr=subprocess.STDOUT, + shell=True) + store.remove(it) + self.view.get_selection().select_path ((0,)) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() def enable_audit(self, button): self.audit_enabled = not self.audit_enabled + if self.audit_enabled: + cmd = "semodule -DB" + label = _("Disable Audit") + else: + cmd = "semodule -B" + label = _("Enable Audit") + self.wait() try: - self.wait() - if self.audit_enabled: - status, output =commands.getstatusoutput("semodule -DB") - button.set_label(_("Disable Audit")) - else: - status, output =commands.getstatusoutput("semodule -B") - button.set_label(_("Enable Audit")) - self.ready() - - if status != 0: - self.error(output) - - except ValueError, e: - self.error(e.args[0]) + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + button.set_label(label) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() def disable_audit(self, button): + self.wait() + cmd = "semodule -B" try: - self.wait() - status, output =commands.getstatusoutput("semodule -B") - self.ready() - if status != 0: - self.error(output) - - except ValueError, e: - self.error(e.args[0]) + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() def propertiesDialog(self): # Do nothing @@ -167,10 +165,10 @@ class modulesPage(semanagePage): gtk.STOCK_OPEN, gtk.RESPONSE_OK)) dialog.set_default_response(gtk.RESPONSE_OK) - filter = gtk.FileFilter() - filter.set_name("Policy Files") - filter.add_pattern("*.pp") - dialog.add_filter(filter) + filt = gtk.FileFilter() + filt.set_name("Policy Files") + filt.add_pattern("*.pp") + dialog.add_filter(filt) response = dialog.run() if response == gtk.RESPONSE_OK: @@ -178,14 +176,13 @@ class modulesPage(semanagePage): dialog.destroy() def add(self, file): + self.wait() + cmd = "semodule -i %s" % file try: - self.wait() - status, output =commands.getstatusoutput("semodule -i %s" % file) - self.ready() - if status != 0: - self.error(output) - else: - self.load() - - except ValueError, e: - self.error(e.args[0]) + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + self.load() + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() diff --git a/policycoreutils/gui/polgen.glade b/policycoreutils/gui/polgen.glade index 37c1472..9854fb2 100644 --- a/policycoreutils/gui/polgen.glade +++ b/policycoreutils/gui/polgen.glade @@ -758,7 +758,7 @@ True False True - + 2 @@ -840,7 +840,7 @@ True False True - + 2 @@ -1983,7 +1983,7 @@ Tab True True False - + True @@ -2036,7 +2036,7 @@ Tab True True False - + True @@ -2091,7 +2091,7 @@ Tab True False True - + @@ -2188,7 +2188,7 @@ Tab True True False - + True @@ -2243,7 +2243,7 @@ Tab True False True - + @@ -2414,7 +2414,7 @@ Tab True False True - + False @@ -2430,7 +2430,7 @@ Tab True False True - + False @@ -2446,7 +2446,7 @@ Tab True False True - + False diff --git a/policycoreutils/gui/polgengui.py b/policycoreutils/gui/polgengui.py index 0f0e564..1b88c47 100644 --- a/policycoreutils/gui/polgengui.py +++ b/policycoreutils/gui/polgengui.py @@ -30,29 +30,15 @@ import gnome import sys try: from sepolicy import generate -except ValueError,e: +except ValueError as e: sys.stderr.write("%s: %s\n" % (e.__class__.__name__, str(e))) sys.exit(1) - + import sepolicy.interface -import commands +import subprocess import re -def get_all_modules(): - try: - all_modules = [] - rc, output=commands.getstatusoutput("semodule -l 2>/dev/null") - if rc == 0: - l = output.split("\n") - for i in l: - all_modules.append(i.split()[0]) - except: - pass - - return all_modules - - ## ## I18N ## @@ -67,8 +53,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = str gnome.program_init("SELinux Policy Generation Tool", "5") @@ -191,10 +177,10 @@ class childWindow: try: self.all_types = generate.get_all_types() - self.all_modules = get_all_modules() + self.all_modules = sepolicy.get_all_modules() self.all_roles = generate.get_all_roles() self.all_users = generate.get_all_users() - except RuntimeError, e: + except RuntimeError as e: self.all_types = [] self.all_modules = [] self.all_roles = [] @@ -262,7 +248,7 @@ class childWindow: self.out_udp_entry = self.xml.get_widget("out_udp_entry") self.network_buttons[self.out_udp_all_checkbutton] = [ self.out_udp_entry ] - for b in self.network_buttons.keys(): + for b in list(self.network_buttons.keys()): b.connect("clicked",self.network_all_clicked) self.boolean_treeview = self.xml.get_widget("boolean_treeview") @@ -333,7 +319,7 @@ class childWindow: for a in sepolicy.interface.get_admin(): iter = self.admin_store.append() self.admin_store.set_value(iter, 0, a) - except ValueError,e: + except ValueError as e: self.error(e.message) def confine_application(self): @@ -519,7 +505,7 @@ class childWindow: self.info(my_policy.generate(outputdir)) return False - except ValueError, e: + except ValueError as e: self.error(e.message) def delete(self, args): @@ -687,7 +673,7 @@ class childWindow: try: generate.verify_ports(self.in_tcp_entry.get_text()) generate.verify_ports(self.in_udp_entry.get_text()) - except ValueError, e: + except ValueError as e: self.error(e.message) return True @@ -695,7 +681,7 @@ class childWindow: try: generate.verify_ports(self.out_tcp_entry.get_text()) generate.verify_ports(self.out_udp_entry.get_text()) - except ValueError, e: + except ValueError as e: self.error(e.message) return True @@ -734,12 +720,12 @@ class childWindow: policy.set_program(exe) policy.gen_writeable() policy.gen_symbols() - for f in policy.files.keys(): + for f in list(policy.files.keys()): iter = self.store.append() self.store.set_value(iter, 0, f) self.store.set_value(iter, 1, FILE) - for f in policy.dirs.keys(): + for f in list(policy.dirs.keys()): iter = self.store.append() self.store.set_value(iter, 0, f) self.store.set_value(iter, 1, DIR) diff --git a/policycoreutils/gui/portsPage.py b/policycoreutils/gui/portsPage.py index bfb4e36..e6c87c5 100644 --- a/policycoreutils/gui/portsPage.py +++ b/policycoreutils/gui/portsPage.py @@ -16,14 +16,11 @@ ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ## Author: Dan Walsh -import string import gtk import gtk.glade -import os import gobject -import sys import seobject -import commands +import subprocess from semanagePage import *; ## @@ -43,8 +40,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = str class portsPage(semanagePage): def __init__(self, xml): @@ -62,19 +59,19 @@ class portsPage(semanagePage): self.ports_properties_button = xml.get_widget("portsPropertiesButton") self.ports_delete_button = xml.get_widget("portsDeleteButton") liststore = self.ports_protocol_combo.get_model() - iter = liststore.get_iter_first() - self.ports_protocol_combo.set_active_iter(iter) + it = liststore.get_iter_first() + self.ports_protocol_combo.set_active_iter(it) self.init_store() self.edit = True self.load() def filter_changed(self, *arg): - filter = arg[0].get_text() - if filter != self.filter: + filt = arg[0].get_text() + if filt != self.filter: if self.edit: - self.load(filter) + self.load(filt) else: - self.group_load(filter) + self.group_load(filt) def init_store(self): self.store = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING, gobject.TYPE_STRING , gobject.TYPE_STRING) @@ -116,43 +113,43 @@ class portsPage(semanagePage): except: return 0 - def load(self,filter = ""): - self.filter=filter + def load(self,filt = ""): + self.filter=filt self.port = seobject.portRecords() - dict = self.port.get_all(self.local) - keys = dict.keys() + pdict = self.port.get_all(self.local) + keys = list(pdict.keys()) keys.sort() self.store.clear() for k in keys: - if not (self.match(str(k[0]), filter) or self.match(dict[k][0], filter) or self.match(k[2], filter) or self.match(dict[k][1], filter) or self.match(dict[k][1], filter)): + if not (self.match(str(k[0]), filt) or self.match(pdict[k][0], filt) or self.match(k[2], filt) or self.match(pdict[k][1], filt) or self.match(pdict[k][1], filt)): continue - iter = self.store.append() + it = self.store.append() if k[0] == k[1]: - self.store.set_value(iter, PORT_COL, k[0]) + self.store.set_value(it, PORT_COL, k[0]) else: rec = "%s-%s" % k[:2] - self.store.set_value(iter, PORT_COL, rec) - self.store.set_value(iter, TYPE_COL, dict[k][0]) - self.store.set_value(iter, PROTOCOL_COL, k[2]) - self.store.set_value(iter, MLS_COL, dict[k][1]) + self.store.set_value(it, PORT_COL, rec) + self.store.set_value(it, TYPE_COL, pdict[k][0]) + self.store.set_value(it, PROTOCOL_COL, k[2]) + self.store.set_value(it, MLS_COL, pdict[k][1]) self.view.get_selection().select_path ((0,)) - def group_load(self, filter = ""): - self.filter=filter + def group_load(self, filt = ""): + self.filter=filt self.port = seobject.portRecords() - dict = self.port.get_all_by_type(self.local) - keys = dict.keys() + pdict = self.port.get_all_by_type(self.local) + keys = list(pdict.keys()) keys.sort() self.store.clear() for k in keys: - ports_string = ", ".join(dict[k]) - if not (self.match(ports_string, filter) or self.match(k[0], filter) or self.match(k[1], filter) ): + ports_string = ", ".join(pdict[k]) + if not (self.match(ports_string, filt) or self.match(k[0], filt) or self.match(k[1], filt) ): continue - iter = self.store.append() - self.store.set_value(iter, TYPE_COL, k[0]) - self.store.set_value(iter, PROTOCOL_COL, k[1]) - self.store.set_value(iter, PORT_COL, ports_string) - self.store.set_value(iter, MLS_COL, "") + it = self.store.append() + self.store.set_value(it, TYPE_COL, k[0]) + self.store.set_value(it, PROTOCOL_COL, k[1]) + self.store.set_value(it, PORT_COL, ports_string) + self.store.set_value(it, MLS_COL, "") self.view.get_selection().select_path ((0,)) def propertiesDialog(self): @@ -160,19 +157,19 @@ class portsPage(semanagePage): semanagePage.propertiesDialog(self) def dialogInit(self): - store, iter = self.view.get_selection().get_selected() - self.ports_number_entry.set_text(store.get_value(iter, PORT_COL)) + store, it = self.view.get_selection().get_selected() + self.ports_number_entry.set_text(store.get_value(it, PORT_COL)) self.ports_number_entry.set_sensitive(False) self.ports_protocol_combo.set_sensitive(False) - self.ports_name_entry.set_text(store.get_value(iter, TYPE_COL)) - self.ports_mls_entry.set_text(store.get_value(iter, MLS_COL)) - protocol = store.get_value(iter, PROTOCOL_COL) + self.ports_name_entry.set_text(store.get_value(it, TYPE_COL)) + self.ports_mls_entry.set_text(store.get_value(it, MLS_COL)) + protocol = store.get_value(it, PROTOCOL_COL) liststore = self.ports_protocol_combo.get_model() - iter = liststore.get_iter_first() - while iter != None and liststore.get_value(iter,0) != protocol: - iter = liststore.iter_next(iter) - if iter != None: - self.ports_protocol_combo.set_active_iter(iter) + it = liststore.get_iter_first() + while it != None and liststore.get_value(it,0) != protocol: + it = liststore.iter_next(it) + if it != None: + self.ports_protocol_combo.set_active_iter(it) def dialogClear(self): self.ports_number_entry.set_text("") @@ -182,19 +179,20 @@ class portsPage(semanagePage): self.ports_mls_entry.set_text("s0") def delete(self): - store, iter = self.view.get_selection().get_selected() - port = store.get_value(iter, PORT_COL) - protocol = store.get_value(iter, 1) + store, it = self.view.get_selection().get_selected() + port = store.get_value(it, PORT_COL) + protocol = store.get_value(it, 1) + self.wait() + cmd = "semanage port -d -p %s %s" % (protocol, port) try: - self.wait() - (rc, out) = commands.getstatusoutput("semanage port -d -p %s %s" % (protocol, port)) - self.ready() - if rc != 0: - return self.error(out) - store.remove(iter) + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + store.remove(it) self.view.get_selection().select_path ((0,)) - except ValueError, e: - self.error(e.args[0]) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() def add(self): target = self.ports_name_entry.get_text().strip() @@ -207,39 +205,47 @@ class portsPage(semanagePage): self.error(_("Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 ") % port_number ) return False list_model = self.ports_protocol_combo.get_model() - iter = self.ports_protocol_combo.get_active_iter() - protocol = list_model.get_value(iter,0) + it = self.ports_protocol_combo.get_active_iter() + protocol = list_model.get_value(it,0) self.wait() - (rc, out) = commands.getstatusoutput("semanage port -a -p %s -r %s -t %s %s" % (protocol, mls, target, port_number)) + cmd = "semanage port -a -p %s -r %s -t %s %s" % (protocol, mls, target, port_number) + try: + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + it = self.store.append() + self.store.set_value(it, TYPE_COL, target) + self.store.set_value(it, PORT_COL, port_number) + self.store.set_value(it, PROTOCOL_COL, protocol) + self.store.set_value(it, MLS_COL, mls) + except subprocess.CalledProcessError as e: + self.error(e.output) self.ready() - if rc != 0: - self.error(out) - return False - iter = self.store.append() - - self.store.set_value(iter, TYPE_COL, target) - self.store.set_value(iter, PORT_COL, port_number) - self.store.set_value(iter, PROTOCOL_COL, protocol) - self.store.set_value(iter, MLS_COL, mls) def modify(self): target = self.ports_name_entry.get_text().strip() mls = self.ports_mls_entry.get_text().strip() port_number = self.ports_number_entry.get_text().strip() list_model = self.ports_protocol_combo.get_model() - iter = self.ports_protocol_combo.get_active_iter() - protocol = list_model.get_value(iter,0) + it = self.ports_protocol_combo.get_active_iter() + protocol = list_model.get_value(it,0) self.wait() - (rc, out) = commands.getstatusoutput("semanage port -m -p %s -r %s -t %s %s" % (protocol, mls, target, port_number)) - self.ready() - if rc != 0: - self.error(out) + cmd = "semanage port -m -p %s -r %s -t %s %s" % (protocol, mls, target, port_number) + try: + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + store, it = self.view.get_selection().get_selected() + self.store.set_value(it, TYPE_COL, target) + self.store.set_value(it, PORT_COL, port_number) + self.store.set_value(it, PROTOCOL_COL, protocol) + self.store.set_value(it, MLS_COL, mls) + self.ready() + return True + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() return False - store, iter = self.view.get_selection().get_selected() - self.store.set_value(iter, TYPE_COL, target) - self.store.set_value(iter, PORT_COL, port_number) - self.store.set_value(iter, PROTOCOL_COL, protocol) - self.store.set_value(iter, MLS_COL, mls) def on_group_clicked(self, button): self.ports_add_button.set_sensitive(self.group) diff --git a/policycoreutils/gui/selinux-polgengui.desktop b/policycoreutils/gui/selinux-polgengui.desktop index 0c2f399..bbcb18f 100644 --- a/policycoreutils/gui/selinux-polgengui.desktop +++ b/policycoreutils/gui/selinux-polgengui.desktop @@ -64,4 +64,3 @@ Type=Application Terminal=false Categories=System;Security; X-Desktop-File-Install-Version=0.2 -Keywords=policy;security;selinux;avc;permission;mac; diff --git a/policycoreutils/gui/semanagePage.py b/policycoreutils/gui/semanagePage.py index 3a0e478..040a4f8 100644 --- a/policycoreutils/gui/semanagePage.py +++ b/policycoreutils/gui/semanagePage.py @@ -37,8 +37,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = str def idle_func(): while gtk.events_pending(): @@ -77,9 +77,9 @@ class semanagePage: return def filter_changed(self, *arg): - filter = arg[0].get_text() - if filter != self.filter: - self.load(filter) + filt = arg[0].get_text() + if filt != self.filter: + self.load(filt) def search(self, model, col, key, i): sort_col = self.store.get_sort_column_id()[0] @@ -122,13 +122,37 @@ class semanagePage: dlg.destroy() def deleteDialog(self): - store, iter = self.view.get_selection().get_selected() - if self.verify(_("Are you sure you want to delete %s '%s'?" % (self.description, store.get_value(iter, 0))), _("Delete %s" % self.description)) == gtk.RESPONSE_YES: + store, it = self.view.get_selection().get_selected() + if self.verify(_("Are you sure you want to delete %s '%s'?" % (self.description, store.get_value(it, 0))), _("Delete %s" % self.description)) == gtk.RESPONSE_YES: self.delete() def use_menus(self): return True + def load(self, filt): + raise RuntimeError("load method not implemented in parent class"); + + def filter(self): + raise RuntimeError("filter method not implemented in parent class"); + + def store(self): + raise RuntimeError("store method not implemented in parent class"); + + def add(self): + raise RuntimeError("add method not implemented"); + + def modify(self): + raise RuntimeError("modify method not implemented"); + + def delete(self): + raise RuntimeError("delete method not implemented"); + + def dialogInit(self): + raise RuntimeError("dialogInit method not implemented"); + + def dialogClear(self): + raise RuntimeError("dialogClear method not implemented"); + def addDialog(self): self.dialogClear() self.dialog.set_title(_("Add %s" % self.description)) @@ -136,10 +160,10 @@ class semanagePage: while self.dialog.run() == gtk.RESPONSE_OK: try: - if self.add() == False: + if not self.add(): continue break; - except ValueError, e: + except ValueError as e: self.error(e.args[0]) self.dialog.hide() @@ -149,10 +173,10 @@ class semanagePage: self.dialog.set_position(gtk.WIN_POS_MOUSE) while self.dialog.run() == gtk.RESPONSE_OK: try: - if self.modify() == False: + if not self.modify(): continue break; - except ValueError, e: + except ValueError as e: self.error(e.args[0]) self.dialog.hide() diff --git a/policycoreutils/gui/statusPage.py b/policycoreutils/gui/statusPage.py index 02685f2..6510d2a 100644 --- a/policycoreutils/gui/statusPage.py +++ b/policycoreutils/gui/statusPage.py @@ -16,18 +16,14 @@ ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ## Author: Dan Walsh -import string import gtk import gtk.glade import os -import gobject import sys -import tempfile INSTALLPATH = '/usr/share/system-config-selinux' sys.path.append(INSTALLPATH) -import commands ENFORCING = 1 PERMISSIVE = 0 DISABLED = -1 @@ -47,8 +43,8 @@ import selinux try: gettext.install(PROGNAME, localedir="/usr/share/locale", unicode=1) except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = unicode class statusPage: def __init__(self, xml): @@ -127,21 +123,21 @@ class statusPage: return rc def typemenu_changed(self, menu): - type = self.get_type() + setype = self.get_type() enabled = self.enabledOptionMenu.get_active() - if self.initialtype != type: + if self.initialtype != setype: if self.verify(_("Changing the policy type will cause a relabel of the entire file system on the next boot. Relabeling takes a long time depending on the size of the file system. Do you wish to continue?")) == gtk.RESPONSE_NO: menu.set_active(self.typeHistory) return None self.relabel_checkbutton.set_active(True) - self.write_selinux_config(modearray[enabled], type ) + self.write_selinux_config(modearray[enabled], setype ) self.typeHistory = menu.get_active() def enabled_changed(self, combo): enabled = combo.get_active() - type = self.get_type() + setype = self.get_type() if self.initEnabled != DISABLED and enabled == DISABLED: if self.verify(_("Changing to SELinux disabled requires a reboot. It is not recommended. If you later decide to turn SELinux back on, the system will be required to relabel. If you just want to see if SELinux is causing a problem on your system, you can go to permissive mode which will only log errors and not enforce SELinux policy. Permissive mode does not require a reboot Do you wish to continue?")) == gtk.RESPONSE_NO: @@ -154,11 +150,11 @@ class statusPage: return None self.relabel_checkbutton.set_active(True) - self.write_selinux_config(modearray[enabled], type ) + self.write_selinux_config(modearray[enabled], setype ) self.enabled = enabled - def write_selinux_config(self, enforcing, type): - path = selinux.selinux_path() + "config" + def write_selinux_config(self, enforcing, setype): + path = selinux.selinux_path() + "config" backup_path = path + ".bck" fd = open(path) lines = fd.readlines() @@ -169,7 +165,7 @@ class statusPage: fd.write("SELINUX=%s\n" % enforcing) continue if l.startswith("SELINUXTYPE="): - fd.write("SELINUXTYPE=%s\n" % type) + fd.write("SELINUXTYPE=%s\n" % setype) continue fd.write(l) fd.close() diff --git a/policycoreutils/gui/system-config-selinux.desktop b/policycoreutils/gui/system-config-selinux.desktop index 8822ce2..befdb23 100644 --- a/policycoreutils/gui/system-config-selinux.desktop +++ b/policycoreutils/gui/system-config-selinux.desktop @@ -64,4 +64,3 @@ Type=Application Terminal=false Categories=System;Security; X-Desktop-File-Install-Version=0.2 -Keywords=policy;security;selinux;avc;permission;mac; diff --git a/policycoreutils/gui/system-config-selinux.py b/policycoreutils/gui/system-config-selinux.py index bc3027e..9482fa5 100644 --- a/policycoreutils/gui/system-config-selinux.py +++ b/policycoreutils/gui/system-config-selinux.py @@ -25,9 +25,9 @@ import string import sys try: import gtk -except RuntimeError, e: - print "system-config-selinux:", e - print "This is a graphical application and requires DISPLAY to be set." +except RuntimeError as e: + print("system-config-selinux:", e) + print("This is a graphical application and requires DISPLAY to be set.") sys.exit (1) import gtk.glade @@ -57,8 +57,8 @@ try: unicode=False, codeset = 'utf-8') except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = str gnome.program_init("SELinux Management Tool", "5") @@ -95,7 +95,7 @@ class childWindow: self.add_page(portsPage.portsPage(xml)) self.add_page(modulesPage.modulesPage(xml)) # modules self.add_page(domainsPage.domainsPage(xml)) # domains - except ValueError, e: + except ValueError as e: self.error(e.message) xml.signal_connect("on_quit_activate", self.destroy) diff --git a/policycoreutils/gui/usersPage.py b/policycoreutils/gui/usersPage.py index 93804ac..1451903 100644 --- a/policycoreutils/gui/usersPage.py +++ b/policycoreutils/gui/usersPage.py @@ -16,13 +16,10 @@ ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ## Author: Dan Walsh -import string import gtk import gtk.glade -import os import gobject -import sys -import commands +import subprocess import seobject from semanagePage import *; @@ -36,8 +33,8 @@ gettext.textdomain(PROGNAME) try: gettext.install(PROGNAME, localedir="/usr/share/locale", unicode=1) except IOError: - import __builtin__ - __builtin__.__dict__['_'] = unicode + import builtins + builtins.__dict__['_'] = unicode class usersPage(semanagePage): def __init__(self, xml): @@ -65,34 +62,30 @@ class usersPage(semanagePage): self.mlsRangeEntry = xml.get_widget("mlsRangeEntry") self.selinuxRolesEntry = xml.get_widget("selinuxRolesEntry") - def load(self, filter = ""): - self.filter=filter + def load(self, filt = ""): + self.filter=filt self.user = seobject.seluserRecords() - dict = self.user.get_all() - keys = dict.keys() + udict = self.user.get_all() + keys = list(udict.keys()) keys.sort() self.store.clear() for k in keys: - range = seobject.translate(dict[k][2]) - if not (self.match(k, filter) or self.match(dict[k][0], filter) or self.match(range, filter) or self.match(dict[k][3], filter)): + serange = seobject.translate(udict[k][2]) + if not (self.match(k, filt) or self.match(udict[k][0], filter) or self.match(serange, filt) or self.match(udict[k][3], filt)): continue - iter = self.store.append() - self.store.set_value(iter, 0, k) - self.store.set_value(iter, 1, range) - self.store.set_value(iter, 2, dict[k][3]) + it = self.store.append() + self.store.set_value(it, 0, k) + self.store.set_value(it, 1, serange) + self.store.set_value(it, 2, udict[k][3]) self.view.get_selection().select_path ((0,)) - def delete(self): - if semanagePage.delete(self) == gtk.RESPONSE_NO: - return None - def dialogInit(self): - store, iter = self.view.get_selection().get_selected() - self.selinuxUserEntry.set_text(store.get_value(iter, 0)) + store, it = self.view.get_selection().get_selected() + self.selinuxUserEntry.set_text(store.get_value(it, 0)) self.selinuxUserEntry.set_sensitive(False) - self.mlsRangeEntry.set_text(store.get_value(iter, 1)) - self.selinuxRolesEntry.set_text(store.get_value(iter, 2)) + self.mlsRangeEntry.set_text(store.get_value(it, 1)) + self.selinuxRolesEntry.set_text(store.get_value(it, 2)) def dialogClear(self): self.selinuxUserEntry.set_text("") @@ -102,48 +95,62 @@ class usersPage(semanagePage): def add(self): user = self.selinuxUserEntry.get_text() - range = self.mlsRangeEntry.get_text() + serange = self.mlsRangeEntry.get_text() roles = self.selinuxRolesEntry.get_text() self.wait() - (rc, out) = commands.getstatusoutput("semanage user -a -R '%s' -r %s %s" % (roles, range, user)) - self.ready() - if rc != 0: - self.error(out) + try: + subprocess.check_output("semanage user -a -R '%s' -r %s %s" % (roles, serange, user), + stderr=subprocess.STDOUT, + shell=True) + self.ready() + it = self.store.append() + self.store.set_value(it, 0, user) + self.store.set_value(it, 1, serange) + self.store.set_value(it, 2, roles) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() return False - iter = self.store.append() - self.store.set_value(iter, 0, user) - self.store.set_value(iter, 1, range) - self.store.set_value(iter, 2, roles) def modify(self): user = self.selinuxUserEntry.get_text() - range = self.mlsRangeEntry.get_text() + serange = self.mlsRangeEntry.get_text() roles = self.selinuxRolesEntry.get_text() self.wait() - (rc, out) = commands.getstatusoutput("semanage user -m -R '%s' -r %s %s" % (roles, range, user)) - self.ready() - - if rc != 0: - self.error(out) + cmd = "semanage user -m -R '%s' -r %s %s" % (roles, serange, user) + try: + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + self.ready() + self.load(self.filter) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() return False - self.load(self.filter) + return True def delete(self): - store, iter = self.view.get_selection().get_selected() + store, it = self.view.get_selection().get_selected() try: - user=store.get_value(iter, 0) + user=store.get_value(it, 0) if user == "root" or user == "user_u": raise ValueError(_("SELinux user '%s' is required") % user) self.wait() - (rc, out) = commands.getstatusoutput("semanage user -d %s" % user) - self.ready() - if rc != 0: - self.error(out) + cmd = "semanage user -d %s" % user + try: + subprocess.check_output(cmd, + stderr=subprocess.STDOUT, + shell=True) + self.ready() + store.remove(it) + self.view.get_selection().select_path ((0,)) + except subprocess.CalledProcessError as e: + self.error(e.output) + self.ready() return False - store.remove(iter) - self.view.get_selection().select_path ((0,)) - except ValueError, e: + except ValueError as e: self.error(e.args[0]) diff --git a/policycoreutils/newrole/newrole.c b/policycoreutils/newrole/newrole.c index dfb8c7f..4e59a06 100644 --- a/policycoreutils/newrole/newrole.c +++ b/policycoreutils/newrole/newrole.c @@ -547,9 +547,7 @@ static int drop_capabilities(int full) if (!uid) return 0; capng_setpid(getpid()); - capng_clear(CAPNG_SELECT_BOTH); - if (capng_lock() < 0) - return -1; + capng_clear(CAPNG_SELECT_CAPS); /* Change uid */ if (setresuid(uid, uid, uid)) { @@ -558,7 +556,7 @@ static int drop_capabilities(int full) } if (! full) capng_update(CAPNG_ADD, CAPNG_EFFECTIVE | CAPNG_PERMITTED, CAP_AUDIT_WRITE); - return capng_apply(CAPNG_SELECT_BOTH); + return capng_apply(CAPNG_SELECT_CAPS); } #elif defined(NAMESPACE_PRIV) /** @@ -576,20 +574,21 @@ static int drop_capabilities(int full) */ static int drop_capabilities(int full) { + uid_t uid = getuid(); + if (!uid) return 0; + capng_setpid(getpid()); - capng_clear(CAPNG_SELECT_BOTH); - if (capng_lock() < 0) - return -1; + capng_clear(CAPNG_SELECT_CAPS); - uid_t uid = getuid(); /* Change uid */ if (setresuid(uid, uid, uid)) { fprintf(stderr, _("Error changing uid, aborting.\n")); return -1; } if (! full) - capng_updatev(CAPNG_ADD, CAPNG_EFFECTIVE | CAPNG_PERMITTED, CAP_SYS_ADMIN , CAP_FOWNER , CAP_CHOWN, CAP_DAC_OVERRIDE, CAP_SETPCAP, -1); - return capng_apply(CAPNG_SELECT_BOTH); + capng_updatev(CAPNG_ADD, CAPNG_EFFECTIVE | CAPNG_PERMITTED, CAP_SYS_ADMIN , CAP_FOWNER , CAP_CHOWN, CAP_DAC_OVERRIDE, CAP_AUDIT_WRITE, -1); + + return capng_apply(CAPNG_SELECT_CAPS); } #else @@ -680,7 +679,7 @@ static int relabel_tty(const char *ttyn, security_context_t new_context, security_context_t * tty_context, security_context_t * new_tty_context) { - int fd; + int fd, rc; int enforcing = security_getenforce(); security_context_t tty_con = NULL; security_context_t new_tty_con = NULL; @@ -699,7 +698,13 @@ static int relabel_tty(const char *ttyn, security_context_t new_context, fprintf(stderr, _("Error! Could not open %s.\n"), ttyn); return fd; } - fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) & ~O_NONBLOCK); + /* this craziness is to make sure we cann't block on open and deadlock */ + rc = fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) & ~O_NONBLOCK); + if (rc) { + fprintf(stderr, _("Error! Could not clear O_NONBLOCK on %s\n"), ttyn); + close(fd); + return rc; + } if (fgetfilecon(fd, &tty_con) < 0) { fprintf(stderr, _("%s! Could not get current context " @@ -1010,9 +1015,9 @@ int main(int argc, char *argv[]) int fd; pid_t childPid = 0; char *shell_argv0 = NULL; + int rc; #ifdef USE_PAM - int rc; int pam_status; /* pam return code */ pam_handle_t *pam_handle; /* opaque handle used by all PAM functions */ @@ -1223,18 +1228,26 @@ int main(int argc, char *argv[]) fprintf(stderr, _("Could not close descriptors.\n")); goto err_close_pam; } - fd = open(ttyn, O_RDWR | O_NONBLOCK); + fd = open(ttyn, O_RDONLY | O_NONBLOCK); if (fd != 0) goto err_close_pam; - fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) & ~O_NONBLOCK); + rc = fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) & ~O_NONBLOCK); + if (rc) + goto err_close_pam; + fd = open(ttyn, O_RDWR | O_NONBLOCK); if (fd != 1) goto err_close_pam; - fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) & ~O_NONBLOCK); + rc = fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) & ~O_NONBLOCK); + if (rc) + goto err_close_pam; + fd = open(ttyn, O_RDWR | O_NONBLOCK); if (fd != 2) goto err_close_pam; - fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) & ~O_NONBLOCK); + rc = fcntl(fd, F_SETFL, fcntl(fd, F_GETFL, 0) & ~O_NONBLOCK); + if (rc) + goto err_close_pam; } /* @@ -1268,19 +1281,24 @@ int main(int argc, char *argv[]) } #endif - if (send_audit_message(1, old_context, new_context, ttyn)) + if (send_audit_message(1, old_context, new_context, ttyn)) { + fprintf(stderr, _("Failed to send audit message")); goto err_close_pam_session; + } freecon(old_context); old_context=NULL; freecon(new_context); new_context=NULL; #ifdef NAMESPACE_PRIV - if (transition_to_caller_uid()) + if (transition_to_caller_uid()) { + fprintf(stderr, _("Failed to transition to namespace\n")); goto err_close_pam_session; + } #endif - if (drop_capabilities(TRUE)) + if (drop_capabilities(TRUE)) { + fprintf(stderr, _("Failed to drop capabilities %m\n")); goto err_close_pam_session; - + } /* Handle environment changes */ if (restore_environment(preserve_environment, old_environ, &pw)) { fprintf(stderr, _("Unable to restore the environment, " diff --git a/policycoreutils/po/Makefile b/policycoreutils/po/Makefile index a693823..555f381 100644 --- a/policycoreutils/po/Makefile +++ b/policycoreutils/po/Makefile @@ -28,7 +28,7 @@ POTFILES = \ ../run_init/run_init.c \ ../semodule_link/semodule_link.c \ ../audit2allow/audit2allow \ - ../semanage/seobject.py \ + ../semanage/seobject/__init__.py \ ../setsebool/setsebool.c \ ../newrole/newrole.c \ ../load_policy/load_policy.c \ @@ -49,7 +49,6 @@ POTFILES = \ ../gui/booleansPage.py \ ../gui/fcontextPage.py \ ../gui/loginsPage.py \ - ../gui/mappingsPage.py \ ../gui/modulesPage.py \ ../gui/polgen.glade \ ../gui/polgengui.py \ @@ -61,6 +60,36 @@ POTFILES = \ ../gui/usersPage.py \ ../secon/secon.c \ booleans.py \ + ../sepolicy/sepolicy/help/booleans_more_show.txt \ + ../sepolicy/sepolicy/help/booleans_more.txt \ + ../sepolicy/sepolicy/help/booleans_toggled.txt \ + ../sepolicy/sepolicy/help/booleans.txt \ + ../sepolicy/sepolicy/help/file_equiv.txt \ + ../sepolicy/sepolicy/help/files_apps.txt \ + ../sepolicy/sepolicy/help/files_exec.txt \ + ../sepolicy/sepolicy/help/files_write.txt \ + ../sepolicy/sepolicy/help/lockdown_permissive.txt \ + ../sepolicy/sepolicy/help/lockdown_ptrace.txt \ + ../sepolicy/sepolicy/help/lockdown.txt \ + ../sepolicy/sepolicy/help/lockdown_unconfined.txt \ + ../sepolicy/sepolicy/help/login_default.txt \ + ../sepolicy/sepolicy/help/login.txt \ + ../sepolicy/sepolicy/help/ports_inbound.txt \ + ../sepolicy/sepolicy/help/ports_outbound.txt \ + ../sepolicy/sepolicy/help/start.txt \ + ../sepolicy/sepolicy/help/system_boot_mode.txt \ + ../sepolicy/sepolicy/help/system_current_mode.txt \ + ../sepolicy/sepolicy/help/system_export.txt \ + ../sepolicy/sepolicy/help/system_policy_type.txt \ + ../sepolicy/sepolicy/help/system_relabel.txt \ + ../sepolicy/sepolicy/help/system.txt \ + ../sepolicy/sepolicy/help/transition_file.txt \ + ../sepolicy/sepolicy/help/transition_from_boolean_1.txt \ + ../sepolicy/sepolicy/help/transition_from_boolean_2.txt \ + ../sepolicy/sepolicy/help/transition_from_boolean.txt \ + ../sepolicy/sepolicy/help/transition_from.txt \ + ../sepolicy/sepolicy/help/transition_to.txt \ + ../sepolicy/sepolicy/help/users.txt \ ../sepolicy/info.c \ ../sepolicy/search.c \ ../sepolicy/sepolicy.py \ diff --git a/policycoreutils/po/POTFILES b/policycoreutils/po/POTFILES index bcb9e99..ae25133 100644 --- a/policycoreutils/po/POTFILES +++ b/policycoreutils/po/POTFILES @@ -2,7 +2,7 @@ ../run_init/run_init.c ../semodule_link/semodule_link.c ../audit2allow/audit2allow - ../semanage/seobject.py + ../semanage/seobject/__init__.py ../setsebool/setsebool.c ../newrole/newrole.c ../load_policy/load_policy.c @@ -23,7 +23,6 @@ ../gui/booleansPage.py ../gui/fcontextPage.py ../gui/loginsPage.py - ../gui/mappingsPage.py ../gui/modulesPage.py ../gui/polgen.glade ../gui/polgengui.py @@ -47,6 +46,36 @@ ../gui/templates/var_log.py ../gui/templates/var_run.py ../gui/templates/var_spool.py + ../sepolicy/sepolicy/help/booleans_more_show.txt + ../sepolicy/sepolicy/help/booleans_more.txt + ../sepolicy/sepolicy/help/booleans_toggled.txt + ../sepolicy/sepolicy/help/booleans.txt + ../sepolicy/sepolicy/help/file_equiv.txt + ../sepolicy/sepolicy/help/files_apps.txt + ../sepolicy/sepolicy/help/files_exec.txt + ../sepolicy/sepolicy/help/files_write.txt + ../sepolicy/sepolicy/help/lockdown_permissive.txt + ../sepolicy/sepolicy/help/lockdown_ptrace.txt + ../sepolicy/sepolicy/help/lockdown.txt + ../sepolicy/sepolicy/help/lockdown_unconfined.txt + ../sepolicy/sepolicy/help/login_default.txt + ../sepolicy/sepolicy/help/login.txt + ../sepolicy/sepolicy/help/ports_inbound.txt + ../sepolicy/sepolicy/help/ports_outbound.txt + ../sepolicy/sepolicy/help/start.txt + ../sepolicy/sepolicy/help/system_boot_mode.txt + ../sepolicy/sepolicy/help/system_current_mode.txt + ../sepolicy/sepolicy/help/system_export.txt + ../sepolicy/sepolicy/help/system_policy_type.txt + ../sepolicy/sepolicy/help/system_relabel.txt + ../sepolicy/sepolicy/help/system.txt + ../sepolicy/sepolicy/help/transition_file.txt + ../sepolicy/sepolicy/help/transition_from_boolean_1.txt + ../sepolicy/sepolicy/help/transition_from_boolean_2.txt + ../sepolicy/sepolicy/help/transition_from_boolean.txt + ../sepolicy/sepolicy/help/transition_from.txt + ../sepolicy/sepolicy/help/transition_to.txt + ../sepolicy/sepolicy/help/users.txt ../sepolicy/info.c ../sepolicy/search.c ../sepolicy/sepolicy.py diff --git a/policycoreutils/po/POTFILES.in b/policycoreutils/po/POTFILES.in index aca0474..0ccb542 100644 --- a/policycoreutils/po/POTFILES.in +++ b/policycoreutils/po/POTFILES.in @@ -2,7 +2,7 @@ run_init/open_init_pty.c run_init/run_init.c semodule_link/semodule_link.c audit2allow/audit2allow -semanage/seobject.py +semanage/seobject/__init__.py setsebool/setsebool.c newrole/newrole.c load_policy/load_policy.c @@ -23,7 +23,6 @@ restorecond/utmpwatcher.c gui/booleansPage.py gui/fcontextPage.py gui/loginsPage.py -gui/mappingsPage.py gui/modulesPage.py gui/polgen.glade gui/polgengui.py @@ -45,6 +44,36 @@ sepolicy/sepolicy/generate.py sepolicy/sepolicy/sepolicy.glade sepolicy/sepolicy/gui.py sepolicy/sepolicy/manpage.py +sepolicy/sepolicy/help/booleans_more_show.txt +sepolicy/sepolicy/help/booleans_more.txt +sepolicy/sepolicy/help/booleans_toggled.txt +sepolicy/sepolicy/help/booleans.txt +sepolicy/sepolicy/help/file_equiv.txt +sepolicy/sepolicy/help/files_apps.txt +sepolicy/sepolicy/help/files_exec.txt +sepolicy/sepolicy/help/files_write.txt +sepolicy/sepolicy/help/lockdown_permissive.txt +sepolicy/sepolicy/help/lockdown_ptrace.txt +sepolicy/sepolicy/help/lockdown.txt +sepolicy/sepolicy/help/lockdown_unconfined.txt +sepolicy/sepolicy/help/login_default.txt +sepolicy/sepolicy/help/login.txt +sepolicy/sepolicy/help/ports_inbound.txt +sepolicy/sepolicy/help/ports_outbound.txt +sepolicy/sepolicy/help/start.txt +sepolicy/sepolicy/help/system_boot_mode.txt +sepolicy/sepolicy/help/system_current_mode.txt +sepolicy/sepolicy/help/system_export.txt +sepolicy/sepolicy/help/system_policy_type.txt +sepolicy/sepolicy/help/system_relabel.txt +sepolicy/sepolicy/help/system.txt +sepolicy/sepolicy/help/transition_file.txt +sepolicy/sepolicy/help/transition_from_boolean_1.txt +sepolicy/sepolicy/help/transition_from_boolean_2.txt +sepolicy/sepolicy/help/transition_from_boolean.txt +sepolicy/sepolicy/help/transition_from.txt +sepolicy/sepolicy/help/transition_to.txt +sepolicy/sepolicy/help/users.txt sepolicy/sepolicy/transition.py sepolicy/sepolicy/templates/executable.py sepolicy/sepolicy/templates/__init__.py diff --git a/policycoreutils/po/af.po b/policycoreutils/po/af.po index e4a6e09..c565e50 100644 --- a/policycoreutils/po/af.po +++ b/policycoreutils/po/af.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: Policycoreutils\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-10-10 16:04-0400\n" -"PO-Revision-Date: 2012-03-30 18:14+0000\n" -"Last-Translator: FULL NAME \n" +"POT-Creation-Date: 2014-01-03 16:04-0500\n" +"PO-Revision-Date: 2013-12-20 13:58+0000\n" +"Last-Translator: dwalsh \n" "Language-Team: Afrikaans (http://www.transifex.com/projects/p/fedora/" "language/af/)\n" "Language: af\n" @@ -87,96 +87,101 @@ msgstr "" msgid "To make this policy package active, execute:" msgstr "" -#: ../semanage/seobject.py:210 +#: ../semanage/seobject/__init__.py:220 msgid "Could not create semanage handle" msgstr "" -#: ../semanage/seobject.py:218 +#: ../semanage/seobject/__init__.py:228 msgid "SELinux policy is not managed or store cannot be accessed." msgstr "" -#: ../semanage/seobject.py:223 +#: ../semanage/seobject/__init__.py:233 msgid "Cannot read policy store." msgstr "" -#: ../semanage/seobject.py:228 +#: ../semanage/seobject/__init__.py:238 msgid "Could not establish semanage connection" msgstr "" -#: ../semanage/seobject.py:233 +#: ../semanage/seobject/__init__.py:243 msgid "Could not test MLS enabled status" msgstr "" -#: ../semanage/seobject.py:239 ../semanage/seobject.py:254 +#: ../semanage/seobject/__init__.py:249 ../semanage/seobject/__init__.py:264 msgid "Not yet implemented" msgstr "" -#: ../semanage/seobject.py:243 +#: ../semanage/seobject/__init__.py:253 msgid "Semanage transaction already in progress" msgstr "" -#: ../semanage/seobject.py:252 +#: ../semanage/seobject/__init__.py:262 msgid "Could not start semanage transaction" msgstr "" -#: ../semanage/seobject.py:264 +#: ../semanage/seobject/__init__.py:274 msgid "Could not commit semanage transaction" msgstr "" -#: ../semanage/seobject.py:269 +#: ../semanage/seobject/__init__.py:279 msgid "Semanage transaction not in progress" msgstr "" -#: ../semanage/seobject.py:281 ../semanage/seobject.py:376 +#: ../semanage/seobject/__init__.py:291 ../semanage/seobject/__init__.py:386 msgid "Could not list SELinux modules" msgstr "" -#: ../semanage/seobject.py:300 +#: ../semanage/seobject/__init__.py:310 msgid "Modules Name" msgstr "" -#: ../semanage/seobject.py:300 ../gui/modulesPage.py:63 +#: ../semanage/seobject/__init__.py:310 ../gui/modulesPage.py:63 msgid "Version" msgstr "" -#: ../semanage/seobject.py:303 ../gui/statusPage.py:75 -#: ../sepolicy/sepolicy/sepolicy.glade:3430 +#: ../semanage/seobject/__init__.py:313 ../gui/statusPage.py:71 +#: ../sepolicy/sepolicy/sepolicy.glade:3431 msgid "Disabled" msgstr "" -#: ../semanage/seobject.py:312 +#: ../semanage/seobject/__init__.py:322 #, python-format msgid "Module does not exists %s " msgstr "" -#: ../semanage/seobject.py:322 +#: ../semanage/seobject/__init__.py:332 #, python-format msgid "Could not disable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:333 +#: ../semanage/seobject/__init__.py:343 #, python-format msgid "Could not enable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:348 +#: ../semanage/seobject/__init__.py:358 #, python-format msgid "Could not remove module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:363 +#: ../semanage/seobject/__init__.py:373 msgid "dontaudit requires either 'on' or 'off'" msgstr "" -#: ../semanage/seobject.py:391 +#: ../semanage/seobject/__init__.py:402 +msgid "Customized Permissive Types" +msgstr "" + +#: ../semanage/seobject/__init__.py:410 msgid "Builtin Permissive Types" msgstr "" -#: ../semanage/seobject.py:401 -msgid "Customized Permissive Types" +#: ../semanage/seobject/__init__.py:419 +#, python-format +msgid "%s is not a domain type" msgstr "" -#: ../semanage/seobject.py:410 +#: ../semanage/seobject/__init__.py:424 msgid "" "The sepolgen python module is required to setup permissive domains.\n" "In some distributions it is included in the policycoreutils-devel patckage.\n" @@ -184,810 +189,825 @@ msgid "" "Or similar for your distro." msgstr "" -#: ../semanage/seobject.py:447 +#: ../semanage/seobject/__init__.py:461 #, python-format msgid "Could not set permissive domain %s (module installation failed)" msgstr "" -#: ../semanage/seobject.py:453 +#: ../semanage/seobject/__init__.py:467 #, python-format msgid "Could not remove permissive domain %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:488 ../semanage/seobject.py:562 -#: ../semanage/seobject.py:608 ../semanage/seobject.py:730 -#: ../semanage/seobject.py:760 ../semanage/seobject.py:827 -#: ../semanage/seobject.py:884 ../semanage/seobject.py:1144 -#: ../semanage/seobject.py:1879 ../semanage/seobject.py:1942 -#: ../semanage/seobject.py:1961 ../semanage/seobject.py:2084 -#: ../semanage/seobject.py:2135 +#: ../semanage/seobject/__init__.py:501 ../semanage/seobject/__init__.py:575 +#: ../semanage/seobject/__init__.py:621 ../semanage/seobject/__init__.py:743 +#: ../semanage/seobject/__init__.py:773 ../semanage/seobject/__init__.py:839 +#: ../semanage/seobject/__init__.py:896 ../semanage/seobject/__init__.py:1156 +#: ../semanage/seobject/__init__.py:1891 ../semanage/seobject/__init__.py:1954 +#: ../semanage/seobject/__init__.py:1973 ../semanage/seobject/__init__.py:2096 +#: ../semanage/seobject/__init__.py:2147 #, python-format msgid "Could not create a key for %s" msgstr "" -#: ../semanage/seobject.py:492 ../semanage/seobject.py:566 -#: ../semanage/seobject.py:612 ../semanage/seobject.py:618 +#: ../semanage/seobject/__init__.py:505 ../semanage/seobject/__init__.py:579 +#: ../semanage/seobject/__init__.py:625 ../semanage/seobject/__init__.py:631 #, python-format msgid "Could not check if login mapping for %s is defined" msgstr "" -#: ../semanage/seobject.py:501 +#: ../semanage/seobject/__init__.py:514 #, python-format msgid "Linux Group %s does not exist" msgstr "" -#: ../semanage/seobject.py:506 +#: ../semanage/seobject/__init__.py:519 #, python-format msgid "Linux User %s does not exist" msgstr "" -#: ../semanage/seobject.py:510 +#: ../semanage/seobject/__init__.py:523 #, python-format msgid "Could not create login mapping for %s" msgstr "" -#: ../semanage/seobject.py:514 ../semanage/seobject.py:775 +#: ../semanage/seobject/__init__.py:527 ../semanage/seobject/__init__.py:788 #, python-format msgid "Could not set name for %s" msgstr "" -#: ../semanage/seobject.py:519 ../semanage/seobject.py:785 +#: ../semanage/seobject/__init__.py:532 ../semanage/seobject/__init__.py:798 #, python-format msgid "Could not set MLS range for %s" msgstr "" -#: ../semanage/seobject.py:523 +#: ../semanage/seobject/__init__.py:536 #, python-format msgid "Could not set SELinux user for %s" msgstr "" -#: ../semanage/seobject.py:527 +#: ../semanage/seobject/__init__.py:540 #, python-format msgid "Could not add login mapping for %s" msgstr "" -#: ../semanage/seobject.py:545 +#: ../semanage/seobject/__init__.py:558 msgid "Requires seuser or serange" msgstr "" -#: ../semanage/seobject.py:568 ../semanage/seobject.py:614 +#: ../semanage/seobject/__init__.py:581 ../semanage/seobject/__init__.py:627 #, python-format msgid "Login mapping for %s is not defined" msgstr "" -#: ../semanage/seobject.py:572 +#: ../semanage/seobject/__init__.py:585 #, python-format msgid "Could not query seuser for %s" msgstr "" -#: ../semanage/seobject.py:586 +#: ../semanage/seobject/__init__.py:599 #, python-format msgid "Could not modify login mapping for %s" msgstr "" -#: ../semanage/seobject.py:620 +#: ../semanage/seobject/__init__.py:633 #, python-format msgid "Login mapping for %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:624 +#: ../semanage/seobject/__init__.py:637 #, python-format msgid "Could not delete login mapping for %s" msgstr "" -#: ../semanage/seobject.py:646 ../semanage/seobject.py:679 -#: ../semanage/seobject.py:927 +#: ../semanage/seobject/__init__.py:659 ../semanage/seobject/__init__.py:692 +#: ../semanage/seobject/__init__.py:939 msgid "Could not list login mappings" msgstr "" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 #: ../gui/system-config-selinux.glade:100 -#: ../sepolicy/sepolicy/sepolicy.glade:1166 -#: ../sepolicy/sepolicy/sepolicy.glade:3155 +#: ../sepolicy/sepolicy/sepolicy.glade:1162 +#: ../sepolicy/sepolicy/sepolicy.glade:3156 msgid "Login Name" msgstr "" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 #: ../gui/system-config-selinux.glade:128 #: ../gui/system-config-selinux.glade:915 -#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:44 -#: ../sepolicy/sepolicy/sepolicy.glade:1192 -#: ../sepolicy/sepolicy/sepolicy.glade:3173 -#: ../sepolicy/sepolicy/sepolicy.glade:3259 +#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:41 +#: ../sepolicy/sepolicy/sepolicy.glade:1188 +#: ../sepolicy/sepolicy/sepolicy.glade:3174 +#: ../sepolicy/sepolicy/sepolicy.glade:3260 +#: ../sepolicy/sepolicy/sepolicy.glade:4915 msgid "SELinux User" msgstr "" -#: ../semanage/seobject.py:707 ../gui/system-config-selinux.glade:156 +#: ../semanage/seobject/__init__.py:720 ../gui/system-config-selinux.glade:156 #: ../gui/system-config-selinux.glade:943 msgid "MLS/MCS Range" msgstr "" -#: ../semanage/seobject.py:707 +#: ../semanage/seobject/__init__.py:720 msgid "Service" msgstr "" -#: ../semanage/seobject.py:733 ../semanage/seobject.py:764 -#: ../semanage/seobject.py:831 ../semanage/seobject.py:888 -#: ../semanage/seobject.py:894 +#: ../semanage/seobject/__init__.py:746 ../semanage/seobject/__init__.py:777 +#: ../semanage/seobject/__init__.py:843 ../semanage/seobject/__init__.py:900 +#: ../semanage/seobject/__init__.py:906 #, python-format msgid "Could not check if SELinux user %s is defined" msgstr "" -#: ../semanage/seobject.py:736 ../semanage/seobject.py:837 -#: ../semanage/seobject.py:900 +#: ../semanage/seobject/__init__.py:749 ../semanage/seobject/__init__.py:849 +#: ../semanage/seobject/__init__.py:912 #, python-format msgid "Could not query user for %s" msgstr "" -#: ../semanage/seobject.py:756 +#: ../semanage/seobject/__init__.py:769 #, python-format msgid "You must add at least one role for %s" msgstr "" -#: ../semanage/seobject.py:771 +#: ../semanage/seobject/__init__.py:784 #, python-format msgid "Could not create SELinux user for %s" msgstr "" -#: ../semanage/seobject.py:780 +#: ../semanage/seobject/__init__.py:793 #, python-format -msgid "Could not add role %s for %s" +msgid "Could not add role %(ROLE)s for %(NAME)s" msgstr "" -#: ../semanage/seobject.py:789 +#: ../semanage/seobject/__init__.py:802 #, python-format msgid "Could not set MLS level for %s" msgstr "" -#: ../semanage/seobject.py:792 +#: ../semanage/seobject/__init__.py:805 #, python-format -msgid "Could not add prefix %s for %s" +msgid "Could not add prefix %(PREFIX)s for %(ROLE)s" msgstr "" -#: ../semanage/seobject.py:795 +#: ../semanage/seobject/__init__.py:808 #, python-format msgid "Could not extract key for %s" msgstr "" -#: ../semanage/seobject.py:799 +#: ../semanage/seobject/__init__.py:812 #, python-format msgid "Could not add SELinux user %s" msgstr "" -#: ../semanage/seobject.py:821 +#: ../semanage/seobject/__init__.py:833 msgid "Requires prefix, roles, level or range" msgstr "" -#: ../semanage/seobject.py:823 +#: ../semanage/seobject/__init__.py:835 msgid "Requires prefix or roles" msgstr "" -#: ../semanage/seobject.py:833 ../semanage/seobject.py:890 +#: ../semanage/seobject/__init__.py:845 ../semanage/seobject/__init__.py:902 #, python-format msgid "SELinux user %s is not defined" msgstr "" -#: ../semanage/seobject.py:862 +#: ../semanage/seobject/__init__.py:874 #, python-format msgid "Could not modify SELinux user %s" msgstr "" -#: ../semanage/seobject.py:896 +#: ../semanage/seobject/__init__.py:908 #, python-format msgid "SELinux user %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:907 +#: ../semanage/seobject/__init__.py:919 #, python-format msgid "Could not delete SELinux user %s" msgstr "" -#: ../semanage/seobject.py:945 +#: ../semanage/seobject/__init__.py:957 msgid "Could not list SELinux users" msgstr "" -#: ../semanage/seobject.py:951 +#: ../semanage/seobject/__init__.py:963 #, python-format msgid "Could not list roles for user %s" msgstr "" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "Labeling" msgstr "" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "MLS/" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "Prefix" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Level" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Range" msgstr "" -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 -#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:59 -#: ../sepolicy/sepolicy/sepolicy.glade:3279 -#: ../sepolicy/sepolicy/sepolicy.glade:5170 -#: ../sepolicy/sepolicy/sepolicy.glade:5411 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 +#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:56 +#: ../sepolicy/sepolicy/sepolicy.glade:3280 +#: ../sepolicy/sepolicy/sepolicy.glade:5251 +#: ../sepolicy/sepolicy/sepolicy.glade:5400 msgid "SELinux Roles" msgstr "" -#: ../semanage/seobject.py:1002 +#: ../semanage/seobject/__init__.py:1014 msgid "Protocol udp or tcp is required" msgstr "" -#: ../semanage/seobject.py:1004 +#: ../semanage/seobject/__init__.py:1016 msgid "Port is required" msgstr "" -#: ../semanage/seobject.py:1014 +#: ../semanage/seobject/__init__.py:1026 msgid "Invalid Port" msgstr "" -#: ../semanage/seobject.py:1018 +#: ../semanage/seobject/__init__.py:1030 #, python-format -msgid "Could not create a key for %s/%s" +msgid "Could not create a key for %(PROTOTYPE)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1029 +#: ../semanage/seobject/__init__.py:1041 msgid "Type is required" msgstr "" -#: ../semanage/seobject.py:1032 ../semanage/seobject.py:1096 -#: ../semanage/seobject.py:1873 +#: ../semanage/seobject/__init__.py:1044 ../semanage/seobject/__init__.py:1108 +#: ../semanage/seobject/__init__.py:1885 #, python-format msgid "Type %s is invalid, must be a port type" msgstr "" -#: ../semanage/seobject.py:1040 ../semanage/seobject.py:1102 -#: ../semanage/seobject.py:1157 ../semanage/seobject.py:1163 +#: ../semanage/seobject/__init__.py:1052 ../semanage/seobject/__init__.py:1169 +#: ../semanage/seobject/__init__.py:1175 #, python-format -msgid "Could not check if port %s/%s is defined" +msgid "Could not check if port %(PROTOCOL)s/%(PORT)s is defined" msgstr "" -#: ../semanage/seobject.py:1042 +#: ../semanage/seobject/__init__.py:1054 #, python-format -msgid "Port %s/%s already defined" +msgid "Port %(PROTOCOL)s/%(PORT)s already defined" msgstr "" -#: ../semanage/seobject.py:1046 +#: ../semanage/seobject/__init__.py:1058 #, python-format -msgid "Could not create port for %s/%s" +msgid "Could not create port for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1052 +#: ../semanage/seobject/__init__.py:1064 #, python-format -msgid "Could not create context for %s/%s" +msgid "Could not create context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1056 +#: ../semanage/seobject/__init__.py:1068 #, python-format -msgid "Could not set user in port context for %s/%s" +msgid "Could not set user in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1060 +#: ../semanage/seobject/__init__.py:1072 #, python-format -msgid "Could not set role in port context for %s/%s" +msgid "Could not set role in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1064 +#: ../semanage/seobject/__init__.py:1076 #, python-format -msgid "Could not set type in port context for %s/%s" +msgid "Could not set type in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1069 +#: ../semanage/seobject/__init__.py:1081 #, python-format -msgid "Could not set mls fields in port context for %s/%s" +msgid "Could not set mls fields in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1073 +#: ../semanage/seobject/__init__.py:1085 #, python-format -msgid "Could not set port context for %s/%s" +msgid "Could not set port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1077 +#: ../semanage/seobject/__init__.py:1089 #, python-format -msgid "Could not add port %s/%s" +msgid "Could not add port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1091 ../semanage/seobject.py:1367 -#: ../semanage/seobject.py:1566 +#: ../semanage/seobject/__init__.py:1103 ../semanage/seobject/__init__.py:1379 +#: ../semanage/seobject/__init__.py:1578 msgid "Requires setype or serange" msgstr "" -#: ../semanage/seobject.py:1093 +#: ../semanage/seobject/__init__.py:1105 msgid "Requires setype" msgstr "" -#: ../semanage/seobject.py:1104 ../semanage/seobject.py:1159 +#: ../semanage/seobject/__init__.py:1114 +#, python-format +msgid "Could not check if port @%(PROTOCOL)s/%(PORT)s is defined" +msgstr "" + +#: ../semanage/seobject/__init__.py:1116 #, python-format -msgid "Port %s/%s is not defined" +msgid "Port @%(PROTOCOL)s/%(PORT)s is not defined" msgstr "" -#: ../semanage/seobject.py:1108 +#: ../semanage/seobject/__init__.py:1120 #, python-format -msgid "Could not query port %s/%s" +msgid "Could not query port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1119 +#: ../semanage/seobject/__init__.py:1131 #, python-format -msgid "Could not modify port %s/%s" +msgid "Could not modify port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1132 +#: ../semanage/seobject/__init__.py:1144 msgid "Could not list the ports" msgstr "" -#: ../semanage/seobject.py:1148 +#: ../semanage/seobject/__init__.py:1160 #, python-format msgid "Could not delete the port %s" msgstr "" -#: ../semanage/seobject.py:1165 +#: ../semanage/seobject/__init__.py:1171 #, python-format -msgid "Port %s/%s is defined in policy, cannot be deleted" +msgid "Port %(PROTOCOL)s/%(PORT)s is not defined" msgstr "" -#: ../semanage/seobject.py:1169 +#: ../semanage/seobject/__init__.py:1177 #, python-format -msgid "Could not delete port %s/%s" +msgid "Port %(PROTOCOL)s/%(PORT)s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1185 ../semanage/seobject.py:1207 +#: ../semanage/seobject/__init__.py:1181 +#, python-format +msgid "Could not delete port %(PROTOCOL)s/%(PORT)s" +msgstr "" + +#: ../semanage/seobject/__init__.py:1197 ../semanage/seobject/__init__.py:1219 msgid "Could not list ports" msgstr "" -#: ../semanage/seobject.py:1246 ../sepolicy/sepolicy/sepolicy.glade:2675 -#: ../sepolicy/sepolicy/sepolicy.glade:2773 -#: ../sepolicy/sepolicy/sepolicy.glade:4687 +#: ../semanage/seobject/__init__.py:1258 +#: ../sepolicy/sepolicy/sepolicy.glade:2676 +#: ../sepolicy/sepolicy/sepolicy.glade:2774 +#: ../sepolicy/sepolicy/sepolicy.glade:4648 msgid "SELinux Port Type" msgstr "" -#: ../semanage/seobject.py:1246 +#: ../semanage/seobject/__init__.py:1258 msgid "Proto" msgstr "" -#: ../semanage/seobject.py:1246 ../gui/system-config-selinux.glade:335 -#: ../sepolicy/sepolicy/sepolicy.glade:1417 +#: ../semanage/seobject/__init__.py:1258 +#: ../gui/system-config-selinux.glade:335 +#: ../sepolicy/sepolicy/sepolicy.glade:1413 msgid "Port Number" msgstr "" -#: ../semanage/seobject.py:1270 +#: ../semanage/seobject/__init__.py:1282 msgid "Node Address is required" msgstr "" -#: ../semanage/seobject.py:1285 +#: ../semanage/seobject/__init__.py:1297 msgid "Unknown or missing protocol" msgstr "" -#: ../semanage/seobject.py:1299 +#: ../semanage/seobject/__init__.py:1311 msgid "SELinux node type is required" msgstr "" -#: ../semanage/seobject.py:1302 ../semanage/seobject.py:1370 +#: ../semanage/seobject/__init__.py:1314 ../semanage/seobject/__init__.py:1382 #, python-format msgid "Type %s is invalid, must be a node type" msgstr "" -#: ../semanage/seobject.py:1306 ../semanage/seobject.py:1374 -#: ../semanage/seobject.py:1410 ../semanage/seobject.py:1508 -#: ../semanage/seobject.py:1570 ../semanage/seobject.py:1604 -#: ../semanage/seobject.py:1818 +#: ../semanage/seobject/__init__.py:1318 ../semanage/seobject/__init__.py:1386 +#: ../semanage/seobject/__init__.py:1422 ../semanage/seobject/__init__.py:1520 +#: ../semanage/seobject/__init__.py:1582 ../semanage/seobject/__init__.py:1616 +#: ../semanage/seobject/__init__.py:1830 #, python-format msgid "Could not create key for %s" msgstr "" -#: ../semanage/seobject.py:1308 ../semanage/seobject.py:1378 -#: ../semanage/seobject.py:1414 ../semanage/seobject.py:1420 +#: ../semanage/seobject/__init__.py:1320 ../semanage/seobject/__init__.py:1390 +#: ../semanage/seobject/__init__.py:1426 ../semanage/seobject/__init__.py:1432 #, python-format msgid "Could not check if addr %s is defined" msgstr "" -#: ../semanage/seobject.py:1317 +#: ../semanage/seobject/__init__.py:1329 #, python-format msgid "Could not create addr for %s" msgstr "" -#: ../semanage/seobject.py:1323 ../semanage/seobject.py:1524 -#: ../semanage/seobject.py:1767 +#: ../semanage/seobject/__init__.py:1335 ../semanage/seobject/__init__.py:1536 +#: ../semanage/seobject/__init__.py:1779 #, python-format msgid "Could not create context for %s" msgstr "" -#: ../semanage/seobject.py:1327 +#: ../semanage/seobject/__init__.py:1339 #, python-format msgid "Could not set mask for %s" msgstr "" -#: ../semanage/seobject.py:1331 +#: ../semanage/seobject/__init__.py:1343 #, python-format msgid "Could not set user in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1335 +#: ../semanage/seobject/__init__.py:1347 #, python-format msgid "Could not set role in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1339 +#: ../semanage/seobject/__init__.py:1351 #, python-format msgid "Could not set type in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1344 +#: ../semanage/seobject/__init__.py:1356 #, python-format msgid "Could not set mls fields in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1348 +#: ../semanage/seobject/__init__.py:1360 #, python-format msgid "Could not set addr context for %s" msgstr "" -#: ../semanage/seobject.py:1352 +#: ../semanage/seobject/__init__.py:1364 #, python-format msgid "Could not add addr %s" msgstr "" -#: ../semanage/seobject.py:1380 ../semanage/seobject.py:1416 +#: ../semanage/seobject/__init__.py:1392 ../semanage/seobject/__init__.py:1428 #, python-format msgid "Addr %s is not defined" msgstr "" -#: ../semanage/seobject.py:1384 +#: ../semanage/seobject/__init__.py:1396 #, python-format msgid "Could not query addr %s" msgstr "" -#: ../semanage/seobject.py:1394 +#: ../semanage/seobject/__init__.py:1406 #, python-format msgid "Could not modify addr %s" msgstr "" -#: ../semanage/seobject.py:1422 +#: ../semanage/seobject/__init__.py:1434 #, python-format msgid "Addr %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1426 +#: ../semanage/seobject/__init__.py:1438 #, python-format msgid "Could not delete addr %s" msgstr "" -#: ../semanage/seobject.py:1438 +#: ../semanage/seobject/__init__.py:1450 msgid "Could not deleteall node mappings" msgstr "" -#: ../semanage/seobject.py:1452 +#: ../semanage/seobject/__init__.py:1464 msgid "Could not list addrs" msgstr "" -#: ../semanage/seobject.py:1504 ../semanage/seobject.py:1811 +#: ../semanage/seobject/__init__.py:1516 ../semanage/seobject/__init__.py:1823 msgid "SELinux Type is required" msgstr "" -#: ../semanage/seobject.py:1512 ../semanage/seobject.py:1574 -#: ../semanage/seobject.py:1608 ../semanage/seobject.py:1614 +#: ../semanage/seobject/__init__.py:1524 ../semanage/seobject/__init__.py:1586 +#: ../semanage/seobject/__init__.py:1620 ../semanage/seobject/__init__.py:1626 #, python-format msgid "Could not check if interface %s is defined" msgstr "" -#: ../semanage/seobject.py:1519 +#: ../semanage/seobject/__init__.py:1531 #, python-format msgid "Could not create interface for %s" msgstr "" -#: ../semanage/seobject.py:1528 +#: ../semanage/seobject/__init__.py:1540 #, python-format msgid "Could not set user in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1532 +#: ../semanage/seobject/__init__.py:1544 #, python-format msgid "Could not set role in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1536 +#: ../semanage/seobject/__init__.py:1548 #, python-format msgid "Could not set type in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1541 +#: ../semanage/seobject/__init__.py:1553 #, python-format msgid "Could not set mls fields in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1545 +#: ../semanage/seobject/__init__.py:1557 #, python-format msgid "Could not set interface context for %s" msgstr "" -#: ../semanage/seobject.py:1549 +#: ../semanage/seobject/__init__.py:1561 #, python-format msgid "Could not set message context for %s" msgstr "" -#: ../semanage/seobject.py:1553 +#: ../semanage/seobject/__init__.py:1565 #, python-format msgid "Could not add interface %s" msgstr "" -#: ../semanage/seobject.py:1576 ../semanage/seobject.py:1610 +#: ../semanage/seobject/__init__.py:1588 ../semanage/seobject/__init__.py:1622 #, python-format msgid "Interface %s is not defined" msgstr "" -#: ../semanage/seobject.py:1580 +#: ../semanage/seobject/__init__.py:1592 #, python-format msgid "Could not query interface %s" msgstr "" -#: ../semanage/seobject.py:1591 +#: ../semanage/seobject/__init__.py:1603 #, python-format msgid "Could not modify interface %s" msgstr "" -#: ../semanage/seobject.py:1616 +#: ../semanage/seobject/__init__.py:1628 #, python-format msgid "Interface %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1620 +#: ../semanage/seobject/__init__.py:1632 #, python-format msgid "Could not delete interface %s" msgstr "" -#: ../semanage/seobject.py:1632 +#: ../semanage/seobject/__init__.py:1644 msgid "Could not delete all interface mappings" msgstr "" -#: ../semanage/seobject.py:1646 +#: ../semanage/seobject/__init__.py:1658 msgid "Could not list interfaces" msgstr "" -#: ../semanage/seobject.py:1671 +#: ../semanage/seobject/__init__.py:1683 msgid "SELinux Interface" msgstr "" -#: ../semanage/seobject.py:1671 ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:1683 ../semanage/seobject/__init__.py:2045 msgid "Context" msgstr "" -#: ../semanage/seobject.py:1738 +#: ../semanage/seobject/__init__.py:1750 #, python-format msgid "Target %s is not valid. Target is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1741 +#: ../semanage/seobject/__init__.py:1753 #, python-format -msgid "Substiture %s is not valid. Substitute is not allowed to end with '/'" +msgid "Substitute %s is not valid. Substitute is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1744 +#: ../semanage/seobject/__init__.py:1756 #, python-format msgid "Equivalence class for %s already exists" msgstr "" -#: ../semanage/seobject.py:1750 +#: ../semanage/seobject/__init__.py:1762 #, python-format -msgid "File spec %s conflicts with equivalency rule '%s %s'" +msgid "" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'" msgstr "" -#: ../semanage/seobject.py:1759 +#: ../semanage/seobject/__init__.py:1771 #, python-format msgid "Equivalence class for %s does not exists" msgstr "" -#: ../semanage/seobject.py:1773 +#: ../semanage/seobject/__init__.py:1785 #, python-format msgid "Could not set user in file context for %s" msgstr "" -#: ../semanage/seobject.py:1777 +#: ../semanage/seobject/__init__.py:1789 #, python-format msgid "Could not set role in file context for %s" msgstr "" -#: ../semanage/seobject.py:1782 ../semanage/seobject.py:1848 +#: ../semanage/seobject/__init__.py:1794 ../semanage/seobject/__init__.py:1860 #, python-format msgid "Could not set mls fields in file context for %s" msgstr "" -#: ../semanage/seobject.py:1788 +#: ../semanage/seobject/__init__.py:1800 msgid "Invalid file specification" msgstr "" -#: ../semanage/seobject.py:1790 +#: ../semanage/seobject/__init__.py:1802 msgid "File specification can not include spaces" msgstr "" -#: ../semanage/seobject.py:1795 +#: ../semanage/seobject/__init__.py:1807 #, python-format msgid "" -"File spec %s conflicts with equivalency rule '%s %s'; Try adding '%s' instead" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'; " +"Try adding '%(DEST1)s' instead" msgstr "" -#: ../semanage/seobject.py:1814 +#: ../semanage/seobject/__init__.py:1826 #, python-format msgid "Type %s is invalid, must be a file or device type" msgstr "" -#: ../semanage/seobject.py:1822 ../semanage/seobject.py:1827 -#: ../semanage/seobject.py:1883 ../semanage/seobject.py:1965 -#: ../semanage/seobject.py:1969 +#: ../semanage/seobject/__init__.py:1834 ../semanage/seobject/__init__.py:1839 +#: ../semanage/seobject/__init__.py:1895 ../semanage/seobject/__init__.py:1977 +#: ../semanage/seobject/__init__.py:1981 #, python-format msgid "Could not check if file context for %s is defined" msgstr "" -#: ../semanage/seobject.py:1835 +#: ../semanage/seobject/__init__.py:1847 #, python-format msgid "Could not create file context for %s" msgstr "" -#: ../semanage/seobject.py:1843 +#: ../semanage/seobject/__init__.py:1855 #, python-format msgid "Could not set type in file context for %s" msgstr "" -#: ../semanage/seobject.py:1851 ../semanage/seobject.py:1911 -#: ../semanage/seobject.py:1915 +#: ../semanage/seobject/__init__.py:1863 ../semanage/seobject/__init__.py:1923 +#: ../semanage/seobject/__init__.py:1927 #, python-format msgid "Could not set file context for %s" msgstr "" -#: ../semanage/seobject.py:1857 +#: ../semanage/seobject/__init__.py:1869 #, python-format msgid "Could not add file context for %s" msgstr "" -#: ../semanage/seobject.py:1871 +#: ../semanage/seobject/__init__.py:1883 msgid "Requires setype, serange or seuser" msgstr "" -#: ../semanage/seobject.py:1887 ../semanage/seobject.py:1973 +#: ../semanage/seobject/__init__.py:1899 ../semanage/seobject/__init__.py:1985 #, python-format msgid "File context for %s is not defined" msgstr "" -#: ../semanage/seobject.py:1893 +#: ../semanage/seobject/__init__.py:1905 #, python-format msgid "Could not query file context for %s" msgstr "" -#: ../semanage/seobject.py:1919 +#: ../semanage/seobject/__init__.py:1931 #, python-format msgid "Could not modify file context for %s" msgstr "" -#: ../semanage/seobject.py:1932 +#: ../semanage/seobject/__init__.py:1944 msgid "Could not list the file contexts" msgstr "" -#: ../semanage/seobject.py:1946 +#: ../semanage/seobject/__init__.py:1958 #, python-format msgid "Could not delete the file context %s" msgstr "" -#: ../semanage/seobject.py:1971 +#: ../semanage/seobject/__init__.py:1983 #, python-format msgid "File context for %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1977 +#: ../semanage/seobject/__init__.py:1989 #, python-format msgid "Could not delete file context for %s" msgstr "" -#: ../semanage/seobject.py:1992 +#: ../semanage/seobject/__init__.py:2004 msgid "Could not list file contexts" msgstr "" -#: ../semanage/seobject.py:1996 +#: ../semanage/seobject/__init__.py:2008 msgid "Could not list local file contexts" msgstr "" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "SELinux fcontext" msgstr "" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "type" msgstr "" -#: ../semanage/seobject.py:2046 +#: ../semanage/seobject/__init__.py:2058 msgid "" "\n" "SELinux Distribution fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2051 +#: ../semanage/seobject/__init__.py:2063 msgid "" "\n" "SELinux Local fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2087 ../semanage/seobject.py:2138 -#: ../semanage/seobject.py:2144 +#: ../semanage/seobject/__init__.py:2099 ../semanage/seobject/__init__.py:2150 +#: ../semanage/seobject/__init__.py:2156 #, python-format msgid "Could not check if boolean %s is defined" msgstr "" -#: ../semanage/seobject.py:2089 ../semanage/seobject.py:2140 +#: ../semanage/seobject/__init__.py:2101 ../semanage/seobject/__init__.py:2152 #, python-format msgid "Boolean %s is not defined" msgstr "" -#: ../semanage/seobject.py:2093 +#: ../semanage/seobject/__init__.py:2105 #, python-format msgid "Could not query file context %s" msgstr "" -#: ../semanage/seobject.py:2098 +#: ../semanage/seobject/__init__.py:2110 #, python-format msgid "You must specify one of the following values: %s" msgstr "" -#: ../semanage/seobject.py:2103 +#: ../semanage/seobject/__init__.py:2115 #, python-format msgid "Could not set active value of boolean %s" msgstr "" -#: ../semanage/seobject.py:2106 +#: ../semanage/seobject/__init__.py:2118 #, python-format msgid "Could not modify boolean %s" msgstr "" -#: ../semanage/seobject.py:2122 +#: ../semanage/seobject/__init__.py:2134 #, python-format -msgid "Bad format %s: Record %s" +msgid "Bad format %(BOOLNAME)s: Record %(VALUE)s" msgstr "" -#: ../semanage/seobject.py:2146 +#: ../semanage/seobject/__init__.py:2158 #, python-format msgid "Boolean %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:2150 +#: ../semanage/seobject/__init__.py:2162 #, python-format msgid "Could not delete boolean %s" msgstr "" -#: ../semanage/seobject.py:2162 ../semanage/seobject.py:2179 +#: ../semanage/seobject/__init__.py:2174 ../semanage/seobject/__init__.py:2191 msgid "Could not list booleans" msgstr "" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "off" msgstr "" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "on" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "SELinux boolean" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "State" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "Default" msgstr "" -#: ../semanage/seobject.py:2228 ../gui/polgen.glade:113 -#: ../gui/polgengui.py:274 ../sepolicy/sepolicy/sepolicy.glade:2147 -#: ../sepolicy/sepolicy/sepolicy.glade:2517 -#: ../sepolicy/sepolicy/sepolicy.glade:5021 +#: ../semanage/seobject/__init__.py:2240 ../gui/polgen.glade:113 +#: ../gui/polgengui.py:260 ../sepolicy/sepolicy/sepolicy.glade:2148 +#: ../sepolicy/sepolicy/sepolicy.glade:2518 +#: ../sepolicy/sepolicy/sepolicy.glade:5117 msgid "Description" msgstr "" @@ -1353,66 +1373,66 @@ msgstr "" msgid "Options Error %s " msgstr "" -#: ../gui/booleansPage.py:194 ../gui/system-config-selinux.glade:1706 +#: ../gui/booleansPage.py:186 ../gui/system-config-selinux.glade:1706 msgid "Boolean" msgstr "" -#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:162 +#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:186 msgid "all" msgstr "" -#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:164 +#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:188 #: ../gui/system-config-selinux.glade:1615 #: ../gui/system-config-selinux.glade:1820 #: ../gui/system-config-selinux.glade:2437 msgid "Customized" msgstr "" -#: ../gui/fcontextPage.py:64 ../gui/system-config-selinux.glade:1911 +#: ../gui/fcontextPage.py:63 ../gui/system-config-selinux.glade:1911 msgid "File Labeling" msgstr "" -#: ../gui/fcontextPage.py:74 +#: ../gui/fcontextPage.py:73 msgid "" "File\n" "Specification" msgstr "" -#: ../gui/fcontextPage.py:81 +#: ../gui/fcontextPage.py:80 msgid "" "Selinux\n" "File Type" msgstr "" -#: ../gui/fcontextPage.py:88 +#: ../gui/fcontextPage.py:87 msgid "" "File\n" "Type" msgstr "" -#: ../gui/loginsPage.py:48 ../gui/system-config-selinux.glade:2098 +#: ../gui/loginsPage.py:45 ../gui/system-config-selinux.glade:2098 msgid "User Mapping" msgstr "" -#: ../gui/loginsPage.py:52 +#: ../gui/loginsPage.py:49 msgid "" "Login\n" "Name" msgstr "" -#: ../gui/loginsPage.py:56 ../gui/usersPage.py:50 +#: ../gui/loginsPage.py:53 ../gui/usersPage.py:47 msgid "" "SELinux\n" "User" msgstr "" -#: ../gui/loginsPage.py:59 ../gui/usersPage.py:55 +#: ../gui/loginsPage.py:56 ../gui/usersPage.py:52 msgid "" "MLS/\n" "MCS Range" msgstr "" -#: ../gui/loginsPage.py:133 +#: ../gui/loginsPage.py:130 #, python-format msgid "Login '%s' is required" msgstr "" @@ -1425,15 +1445,15 @@ msgstr "" msgid "Module Name" msgstr "" -#: ../gui/modulesPage.py:135 +#: ../gui/modulesPage.py:131 msgid "Disable Audit" msgstr "" -#: ../gui/modulesPage.py:138 ../gui/system-config-selinux.glade:2662 +#: ../gui/modulesPage.py:134 ../gui/system-config-selinux.glade:2662 msgid "Enable Audit" msgstr "" -#: ../gui/modulesPage.py:163 +#: ../gui/modulesPage.py:161 msgid "Load Policy Module" msgstr "" @@ -1472,7 +1492,7 @@ msgstr "" msgid "Applications" msgstr "" -#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:130 +#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:132 msgid "Standard Init Daemon" msgstr "" @@ -1482,7 +1502,7 @@ msgid "" "requires a script in /etc/rc.d/init.d" msgstr "" -#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:131 +#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:133 msgid "DBUS System Daemon" msgstr "" @@ -1494,7 +1514,7 @@ msgstr "" msgid "Internet Services Daemon are daemons started by xinetd" msgstr "" -#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:133 +#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:135 msgid "Web Application/Script (CGI)" msgstr "" @@ -1503,7 +1523,7 @@ msgid "" "Web Applications/Script (CGI) CGI scripts started by the web server (apache)" msgstr "" -#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:135 +#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:137 msgid "User Application" msgstr "" @@ -1513,7 +1533,7 @@ msgid "" "started by a user" msgstr "" -#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:134 +#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:136 msgid "Sandbox" msgstr "" @@ -1588,8 +1608,8 @@ msgstr "" msgid "Enter name of application or user role:" msgstr "" -#: ../gui/polgen.glade:728 ../gui/polgengui.py:272 -#: ../sepolicy/sepolicy/sepolicy.glade:2182 +#: ../gui/polgen.glade:728 ../gui/polgengui.py:258 +#: ../sepolicy/sepolicy/sepolicy.glade:2183 msgid "Name" msgstr "" @@ -1673,7 +1693,7 @@ msgid "TCP Ports" msgstr "" #: ../gui/polgen.glade:1223 ../gui/polgen.glade:1390 ../gui/polgen.glade:1589 -#: ../gui/polgen.glade:1698 ../sepolicy/sepolicy/sepolicy.glade:4314 +#: ../gui/polgen.glade:1698 msgid "All" msgstr "" @@ -1804,118 +1824,118 @@ msgstr "" msgid "Policy Directory" msgstr "" -#: ../gui/polgengui.py:282 +#: ../gui/polgengui.py:268 msgid "Role" msgstr "" -#: ../gui/polgengui.py:289 +#: ../gui/polgengui.py:275 msgid "Existing_User" msgstr "" -#: ../gui/polgengui.py:303 ../gui/polgengui.py:311 ../gui/polgengui.py:325 +#: ../gui/polgengui.py:289 ../gui/polgengui.py:297 ../gui/polgengui.py:311 msgid "Application" msgstr "" -#: ../gui/polgengui.py:370 +#: ../gui/polgengui.py:356 #, python-format msgid "%s must be a directory" msgstr "" -#: ../gui/polgengui.py:430 ../gui/polgengui.py:711 +#: ../gui/polgengui.py:416 ../gui/polgengui.py:697 msgid "You must select a user" msgstr "" -#: ../gui/polgengui.py:560 +#: ../gui/polgengui.py:546 msgid "Select executable file to be confined." msgstr "" -#: ../gui/polgengui.py:571 +#: ../gui/polgengui.py:557 msgid "Select init script file to be confined." msgstr "" -#: ../gui/polgengui.py:581 +#: ../gui/polgengui.py:567 msgid "Select file(s) that confined application creates or writes" msgstr "" -#: ../gui/polgengui.py:588 +#: ../gui/polgengui.py:574 msgid "Select directory(s) that the confined application owns and writes into" msgstr "" -#: ../gui/polgengui.py:650 +#: ../gui/polgengui.py:636 msgid "Select directory to generate policy files in" msgstr "" -#: ../gui/polgengui.py:667 +#: ../gui/polgengui.py:653 #, python-format msgid "" "Type %s_t already defined in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:667 ../gui/polgengui.py:671 +#: ../gui/polgengui.py:653 ../gui/polgengui.py:657 msgid "Verify Name" msgstr "" -#: ../gui/polgengui.py:671 +#: ../gui/polgengui.py:657 #, python-format msgid "" "Module %s.pp already loaded in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:717 +#: ../gui/polgengui.py:703 msgid "" "You must add a name made up of letters and numbers and containing no spaces." msgstr "" -#: ../gui/polgengui.py:731 +#: ../gui/polgengui.py:717 msgid "You must enter a executable" msgstr "" -#: ../gui/polgengui.py:756 ../gui/system-config-selinux.py:180 +#: ../gui/polgengui.py:742 ../gui/system-config-selinux.py:180 msgid "Configue SELinux" msgstr "" -#: ../gui/portsPage.py:51 ../gui/system-config-selinux.glade:2528 +#: ../gui/portsPage.py:48 ../gui/system-config-selinux.glade:2528 msgid "Network Port" msgstr "" -#: ../gui/portsPage.py:85 +#: ../gui/portsPage.py:82 msgid "" "SELinux Port\n" "Type" msgstr "" -#: ../gui/portsPage.py:91 ../gui/system-config-selinux.glade:363 -#: ../sepolicy/sepolicy/sepolicy.glade:1443 -#: ../sepolicy/sepolicy/sepolicy.glade:2657 -#: ../sepolicy/sepolicy/sepolicy.glade:2755 -#: ../sepolicy/sepolicy/sepolicy.glade:4672 +#: ../gui/portsPage.py:88 ../gui/system-config-selinux.glade:363 +#: ../sepolicy/sepolicy/sepolicy.glade:1439 +#: ../sepolicy/sepolicy/sepolicy.glade:2658 +#: ../sepolicy/sepolicy/sepolicy.glade:2756 +#: ../sepolicy/sepolicy/sepolicy.glade:4633 msgid "Protocol" msgstr "" -#: ../gui/portsPage.py:96 ../gui/system-config-selinux.glade:479 +#: ../gui/portsPage.py:93 ../gui/system-config-selinux.glade:479 msgid "" "MLS/MCS\n" "Level" msgstr "" -#: ../gui/portsPage.py:101 ../sepolicy/sepolicy/sepolicy.glade:2638 -#: ../sepolicy/sepolicy/sepolicy.glade:2737 -#: ../sepolicy/sepolicy/sepolicy.glade:4658 +#: ../gui/portsPage.py:98 ../sepolicy/sepolicy/sepolicy.glade:2639 +#: ../sepolicy/sepolicy/sepolicy.glade:2738 +#: ../sepolicy/sepolicy/sepolicy.glade:4619 msgid "Port" msgstr "" -#: ../gui/portsPage.py:207 +#: ../gui/portsPage.py:205 #, python-format msgid "Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 " msgstr "" -#: ../gui/portsPage.py:252 +#: ../gui/portsPage.py:258 msgid "List View" msgstr "" -#: ../gui/portsPage.py:255 ../gui/system-config-selinux.glade:2419 +#: ../gui/portsPage.py:261 ../gui/system-config-selinux.glade:2419 msgid "Group View" msgstr "" @@ -1929,40 +1949,40 @@ msgstr "" msgid "Delete %s" msgstr "" -#: ../gui/semanagePage.py:134 +#: ../gui/semanagePage.py:158 #, python-format msgid "Add %s" msgstr "" -#: ../gui/semanagePage.py:148 +#: ../gui/semanagePage.py:172 #, python-format msgid "Modify %s" msgstr "" -#: ../gui/statusPage.py:69 ../gui/system-config-selinux.glade:2819 -#: ../sepolicy/sepolicy/sepolicy.glade:3413 -#: ../sepolicy/sepolicy/sepolicy.glade:3486 +#: ../gui/statusPage.py:65 ../gui/system-config-selinux.glade:2819 +#: ../sepolicy/sepolicy/sepolicy.glade:3414 +#: ../sepolicy/sepolicy/sepolicy.glade:3487 msgid "Permissive" msgstr "" -#: ../gui/statusPage.py:70 ../gui/system-config-selinux.glade:2837 -#: ../sepolicy/sepolicy/sepolicy.glade:3394 -#: ../sepolicy/sepolicy/sepolicy.glade:3468 +#: ../gui/statusPage.py:66 ../gui/system-config-selinux.glade:2837 +#: ../sepolicy/sepolicy/sepolicy.glade:3395 +#: ../sepolicy/sepolicy/sepolicy.glade:3469 msgid "Enforcing" msgstr "" -#: ../gui/statusPage.py:94 +#: ../gui/statusPage.py:90 msgid "Status" msgstr "" -#: ../gui/statusPage.py:133 ../sepolicy/sepolicy/gui.py:2619 +#: ../gui/statusPage.py:129 ../sepolicy/sepolicy/gui.py:2613 msgid "" "Changing the policy type will cause a relabel of the entire file system on " "the next boot. Relabeling takes a long time depending on the size of the " "file system. Do you wish to continue?" msgstr "" -#: ../gui/statusPage.py:147 +#: ../gui/statusPage.py:143 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -1972,7 +1992,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../gui/statusPage.py:152 ../sepolicy/sepolicy/gui.py:2753 +#: ../gui/statusPage.py:148 ../sepolicy/sepolicy/gui.py:2747 msgid "" "Changing to SELinux enabled will cause a relabel of the entire file system " "on the next boot. Relabeling takes a long time depending on the size of the " @@ -2024,8 +2044,8 @@ msgid "" msgstr "" #: ../gui/system-config-selinux.glade:773 -#: ../sepolicy/sepolicy/sepolicy.glade:729 -#: ../sepolicy/sepolicy/sepolicy.glade:1489 +#: ../sepolicy/sepolicy/sepolicy.glade:711 +#: ../sepolicy/sepolicy/sepolicy.glade:1485 msgid "MLS" msgstr "" @@ -2038,7 +2058,7 @@ msgid "SELinux Administration" msgstr "" #: ../gui/system-config-selinux.glade:1122 -#: ../sepolicy/sepolicy/sepolicy.glade:4162 +#: ../sepolicy/sepolicy/sepolicy.glade:4163 msgid "Add" msgstr "" @@ -2108,7 +2128,7 @@ msgstr "" #: ../gui/system-config-selinux.glade:2467 #: ../gui/system-config-selinux.glade:2692 #: ../gui/system-config-selinux.glade:2867 -#: ../sepolicy/sepolicy/sepolicy.glade:1992 +#: ../sepolicy/sepolicy/sepolicy.glade:1993 msgid "Filter" msgstr "" @@ -2227,7 +2247,7 @@ msgstr "" msgid "label59" msgstr "" -#: ../gui/usersPage.py:138 +#: ../gui/usersPage.py:140 #, python-format msgid "SELinux user '%s' is required" msgstr "" @@ -2239,13 +2259,14 @@ msgstr "" #: booleans.py:2 msgid "" -"Allow ABRT to run in abrt_handle_event_t domain to handle ABRT event scripts" +"Determine whether ABRT can run in the abrt_handle_event_t domain to handle " +"ABRT event scripts." msgstr "" #: booleans.py:3 msgid "" -"Allow abrt-handle-upload to modify public files used for public file " -"transfer services in /var/spool/abrt-upload/." +"Determine whether abrt-handle-upload can modify public files used for public " +"file transfer services in /var/spool/abrt-upload/." msgstr "" #: booleans.py:4 @@ -2279,7 +2300,7 @@ msgid "Determine whether awstats can purge httpd log files." msgstr "" #: booleans.py:11 -msgid "Allow boinc_domain execmem/execstack." +msgid "Determine whether boinc can execmem/execstack." msgstr "" #: booleans.py:12 @@ -2335,1467 +2356,1501 @@ msgid "" msgstr "" #: booleans.py:23 -msgid "Determine whether cvs can read shadow password files." +msgid "" +"Determine whether crond can execute jobs in the user domain as opposed to " +"the the generic cronjob domain." msgstr "" #: booleans.py:24 -msgid "Allow all daemons to write corefiles to /" +msgid "Determine whether cvs can read shadow password files." msgstr "" #: booleans.py:25 -msgid "Allow all daemons to use tcp wrappers." +msgid "Allow all daemons to write corefiles to /" msgstr "" #: booleans.py:26 -msgid "Allow all daemons the ability to read/write terminals" +msgid "Enable cluster mode for daemons." msgstr "" #: booleans.py:27 -msgid "Determine whether dbadm can manage generic user files." +msgid "Allow all daemons to use tcp wrappers." msgstr "" #: booleans.py:28 -msgid "Determine whether dbadm can read generic user files." +msgid "Allow all daemons the ability to read/write terminals" msgstr "" #: booleans.py:29 +msgid "Allow dbadm to exec content" +msgstr "" + +#: booleans.py:30 +msgid "Determine whether dbadm can manage generic user files." +msgstr "" + +#: booleans.py:31 +msgid "Determine whether dbadm can read generic user files." +msgstr "" + +#: booleans.py:32 msgid "" "Deny user domains applications to map a memory region as both executable and " "writable, this is dangerous and the executable should be reported in bugzilla" msgstr "" -#: booleans.py:30 +#: booleans.py:33 msgid "Deny any process from ptracing or debugging any other processes." msgstr "" -#: booleans.py:31 +#: booleans.py:34 msgid "Allow dhcpc client applications to execute iptables commands" msgstr "" -#: booleans.py:32 +#: booleans.py:35 msgid "Determine whether DHCP daemon can use LDAP backends." msgstr "" -#: booleans.py:33 +#: booleans.py:36 msgid "Allow all domains to use other domains file descriptors" msgstr "" -#: booleans.py:34 +#: booleans.py:37 msgid "Allow all domains to have the kernel load modules" msgstr "" -#: booleans.py:35 +#: booleans.py:38 msgid "" "Determine whether entropyd can use audio devices as the source for the " "entropy feeds." msgstr "" -#: booleans.py:36 +#: booleans.py:39 msgid "Determine whether exim can connect to databases." msgstr "" -#: booleans.py:37 +#: booleans.py:40 msgid "" "Determine whether exim can create, read, write, and delete generic user " "content files." msgstr "" -#: booleans.py:38 +#: booleans.py:41 msgid "Determine whether exim can read generic user content files." msgstr "" -#: booleans.py:39 +#: booleans.py:42 msgid "Enable extra rules in the cron domain to support fcron." msgstr "" -#: booleans.py:40 +#: booleans.py:43 msgid "Determine whether fenced can connect to the TCP network." msgstr "" -#: booleans.py:41 +#: booleans.py:44 msgid "Determine whether fenced can use ssh." msgstr "" -#: booleans.py:42 +#: booleans.py:45 msgid "Allow all domains to execute in fips_mode" msgstr "" -#: booleans.py:43 +#: booleans.py:46 msgid "" "Determine whether ftpd can read and write files in user home directories." msgstr "" -#: booleans.py:44 +#: booleans.py:47 msgid "" "Determine whether ftpd can modify public files used for public file transfer " "services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:45 +#: booleans.py:48 msgid "Determine whether ftpd can connect to all unreserved ports." msgstr "" -#: booleans.py:46 +#: booleans.py:49 msgid "Determine whether ftpd can connect to databases over the TCP network." msgstr "" -#: booleans.py:47 +#: booleans.py:50 msgid "" "Determine whether ftpd can login to local users and can read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:48 +#: booleans.py:51 msgid "" "Determine whether ftpd can use CIFS used for public file transfer services." msgstr "" -#: booleans.py:49 +#: booleans.py:52 msgid "Allow ftpd to use ntfs/fusefs volumes." msgstr "" -#: booleans.py:50 +#: booleans.py:53 msgid "" "Determine whether ftpd can use NFS used for public file transfer services." msgstr "" -#: booleans.py:51 +#: booleans.py:54 msgid "" "Determine whether ftpd can bind to all unreserved ports for passive mode." msgstr "" -#: booleans.py:52 +#: booleans.py:55 msgid "Determine whether Git CGI can search home directories." msgstr "" -#: booleans.py:53 +#: booleans.py:56 msgid "Determine whether Git CGI can access cifs file systems." msgstr "" -#: booleans.py:54 +#: booleans.py:57 msgid "Determine whether Git CGI can access nfs file systems." msgstr "" -#: booleans.py:55 +#: booleans.py:58 msgid "" "Determine whether Git session daemon can bind TCP sockets to all unreserved " "ports." msgstr "" -#: booleans.py:56 +#: booleans.py:59 msgid "" "Determine whether calling user domains can execute Git daemon in the " "git_session_t domain." msgstr "" -#: booleans.py:57 +#: booleans.py:60 msgid "Determine whether Git system daemon can search home directories." msgstr "" -#: booleans.py:58 +#: booleans.py:61 msgid "Determine whether Git system daemon can access cifs file systems." msgstr "" -#: booleans.py:59 +#: booleans.py:62 msgid "Determine whether Git system daemon can access nfs file systems." msgstr "" -#: booleans.py:60 +#: booleans.py:63 msgid "Determine whether Gitosis can send mail." msgstr "" -#: booleans.py:61 +#: booleans.py:64 msgid "Enable reading of urandom for all domains." msgstr "" -#: booleans.py:62 +#: booleans.py:65 msgid "" "Allow glusterfsd to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:63 +#: booleans.py:66 msgid "Allow glusterfsd to share any file/directory read only." msgstr "" -#: booleans.py:64 +#: booleans.py:67 msgid "Allow glusterfsd to share any file/directory read/write." msgstr "" -#: booleans.py:65 +#: booleans.py:68 msgid "" "Allow usage of the gpg-agent --write-env-file option. This also allows gpg-" "agent to manage user files." msgstr "" -#: booleans.py:66 +#: booleans.py:69 msgid "" "Allow gpg web domain to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:67 +#: booleans.py:70 msgid "" "Allow gssd to list tmp directories and read the kerberos credential cache." msgstr "" -#: booleans.py:68 +#: booleans.py:71 msgid "Allow guest to exec content" msgstr "" -#: booleans.py:69 +#: booleans.py:72 msgid "" "Allow Apache to modify public files used for public file transfer services. " "Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:70 +#: booleans.py:73 msgid "Allow httpd to use built in scripting (usually php)" msgstr "" -#: booleans.py:71 +#: booleans.py:74 msgid "Allow http daemon to check spam" msgstr "" -#: booleans.py:72 +#: booleans.py:75 msgid "" "Allow httpd to act as a FTP client connecting to the ftp port and ephemeral " "ports" msgstr "" -#: booleans.py:73 +#: booleans.py:76 msgid "Allow httpd to connect to the ldap port" msgstr "" -#: booleans.py:74 +#: booleans.py:77 msgid "Allow http daemon to connect to mythtv" msgstr "" -#: booleans.py:75 +#: booleans.py:78 msgid "Allow http daemon to connect to zabbix" msgstr "" -#: booleans.py:76 +#: booleans.py:79 msgid "Allow HTTPD scripts and modules to connect to the network using TCP." msgstr "" -#: booleans.py:77 +#: booleans.py:80 msgid "Allow HTTPD scripts and modules to connect to cobbler over the network." msgstr "" -#: booleans.py:78 +#: booleans.py:81 msgid "" "Allow HTTPD scripts and modules to connect to databases over the network." msgstr "" -#: booleans.py:79 +#: booleans.py:82 msgid "Allow httpd to connect to memcache server" msgstr "" -#: booleans.py:80 +#: booleans.py:83 msgid "Allow httpd to act as a relay" msgstr "" -#: booleans.py:81 +#: booleans.py:84 msgid "Allow http daemon to send mail" msgstr "" -#: booleans.py:82 +#: booleans.py:85 msgid "Allow Apache to communicate with avahi service via dbus" msgstr "" -#: booleans.py:83 +#: booleans.py:86 msgid "Allow httpd cgi support" msgstr "" -#: booleans.py:84 +#: booleans.py:87 msgid "Allow httpd to act as a FTP server by listening on the ftp port." msgstr "" -#: booleans.py:85 +#: booleans.py:88 msgid "Allow httpd to read home directories" msgstr "" -#: booleans.py:86 +#: booleans.py:89 msgid "Allow httpd scripts and modules execmem/execstack" msgstr "" -#: booleans.py:87 +#: booleans.py:90 msgid "Allow HTTPD to connect to port 80 for graceful shutdown" msgstr "" -#: booleans.py:88 +#: booleans.py:91 msgid "Allow httpd processes to manage IPA content" msgstr "" -#: booleans.py:89 +#: booleans.py:92 msgid "Allow Apache to use mod_auth_ntlm_winbind" msgstr "" -#: booleans.py:90 +#: booleans.py:93 msgid "Allow Apache to use mod_auth_pam" msgstr "" -#: booleans.py:91 +#: booleans.py:94 msgid "Allow httpd to read user content" msgstr "" -#: booleans.py:92 +#: booleans.py:95 msgid "Allow Apache to run in stickshift mode, not transition to passenger" msgstr "" -#: booleans.py:93 +#: booleans.py:96 msgid "Allow HTTPD scripts and modules to server cobbler files." msgstr "" -#: booleans.py:94 +#: booleans.py:97 msgid "Allow httpd daemon to change its resource limits" msgstr "" -#: booleans.py:95 +#: booleans.py:98 msgid "" "Allow HTTPD to run SSI executables in the same domain as system CGI scripts." msgstr "" -#: booleans.py:96 +#: booleans.py:99 msgid "" "Allow apache scripts to write to public content, directories/files must be " "labeled public_rw_content_t." msgstr "" -#: booleans.py:97 +#: booleans.py:100 msgid "Allow Apache to execute tmp content." msgstr "" -#: booleans.py:98 +#: booleans.py:101 msgid "" "Unify HTTPD to communicate with the terminal. Needed for entering the " "passphrase for certificates at the terminal." msgstr "" -#: booleans.py:99 +#: booleans.py:102 msgid "Unify HTTPD handling of all content files." msgstr "" -#: booleans.py:100 +#: booleans.py:103 msgid "Allow httpd to access cifs file systems" msgstr "" -#: booleans.py:101 +#: booleans.py:104 msgid "Allow httpd to access FUSE file systems" msgstr "" -#: booleans.py:102 +#: booleans.py:105 msgid "Allow httpd to run gpg" msgstr "" -#: booleans.py:103 +#: booleans.py:106 msgid "Allow httpd to access nfs file systems" msgstr "" -#: booleans.py:104 +#: booleans.py:107 msgid "Allow httpd to access openstack ports" msgstr "" -#: booleans.py:105 +#: booleans.py:108 msgid "Allow httpd to connect to sasl" msgstr "" -#: booleans.py:106 +#: booleans.py:109 msgid "Allow Apache to query NS records" msgstr "" -#: booleans.py:107 +#: booleans.py:110 msgid "Determine whether icecast can listen on and connect to any TCP port." msgstr "" -#: booleans.py:108 +#: booleans.py:111 msgid "" "Determine whether irc clients can listen on and connect to any unreserved " "TCP ports." msgstr "" -#: booleans.py:109 +#: booleans.py:112 msgid "" "Allow the Irssi IRC Client to connect to any port, and to bind to any " "unreserved port." msgstr "" -#: booleans.py:110 +#: booleans.py:113 +msgid "Allow s-c-kdump to run bootloader in bootloader_t." +msgstr "" + +#: booleans.py:114 msgid "Allow confined applications to run with kerberos." msgstr "" -#: booleans.py:111 +#: booleans.py:115 msgid "Allow ksmtuned to use cifs/Samba file systems" msgstr "" -#: booleans.py:112 +#: booleans.py:116 msgid "Allow ksmtuned to use nfs file systems" msgstr "" -#: booleans.py:113 +#: booleans.py:117 +msgid "Allow logadm to exec content" +msgstr "" + +#: booleans.py:118 msgid "Allow syslogd daemon to send mail" msgstr "" -#: booleans.py:114 +#: booleans.py:119 msgid "Allow syslogd the ability to read/write terminals" msgstr "" -#: booleans.py:115 +#: booleans.py:120 msgid "Allow logging in and using the system from /dev/console." msgstr "" -#: booleans.py:116 +#: booleans.py:121 +msgid "Determine whether logwatch can connect to mail over the network." +msgstr "" + +#: booleans.py:122 msgid "Allow epylog to send mail" msgstr "" -#: booleans.py:117 +#: booleans.py:123 msgid "Allow mailman to access FUSE file systems" msgstr "" -#: booleans.py:118 +#: booleans.py:124 msgid "Determine whether mcelog supports client mode." msgstr "" -#: booleans.py:119 +#: booleans.py:125 msgid "Determine whether mcelog can execute scripts." msgstr "" -#: booleans.py:120 +#: booleans.py:126 msgid "Determine whether mcelog can use all the user ttys." msgstr "" -#: booleans.py:121 +#: booleans.py:127 msgid "Determine whether mcelog supports server mode." msgstr "" -#: booleans.py:122 +#: booleans.py:128 +msgid "Determine whether minidlna can read generic user content." +msgstr "" + +#: booleans.py:129 msgid "" "Control the ability to mmap a low area of the address space, as configured " "by /proc/sys/kernel/mmap_min_addr." msgstr "" -#: booleans.py:123 +#: booleans.py:130 msgid "Allow mock to read files in home directories." msgstr "" -#: booleans.py:124 +#: booleans.py:131 msgid "Allow the mount commands to mount any directory or file." msgstr "" -#: booleans.py:125 +#: booleans.py:132 msgid "Allow mozilla plugin domain to connect to the network using TCP." msgstr "" -#: booleans.py:126 +#: booleans.py:133 msgid "Allow mozilla plugin to support GPS." msgstr "" -#: booleans.py:127 +#: booleans.py:134 msgid "Allow mozilla plugin to support spice protocols." msgstr "" -#: booleans.py:128 +#: booleans.py:135 msgid "Allow confined web browsers to read home directory content" msgstr "" -#: booleans.py:129 +#: booleans.py:136 msgid "Determine whether mpd can traverse user home directories." msgstr "" -#: booleans.py:130 +#: booleans.py:137 msgid "Determine whether mpd can use cifs file systems." msgstr "" -#: booleans.py:131 +#: booleans.py:138 msgid "Determine whether mpd can use nfs file systems." msgstr "" -#: booleans.py:132 +#: booleans.py:139 msgid "Determine whether mplayer can make its stack executable." msgstr "" -#: booleans.py:133 +#: booleans.py:140 msgid "Allow mysqld to connect to all ports" msgstr "" -#: booleans.py:134 +#: booleans.py:141 msgid "Determine whether Bind can bind tcp socket to http ports." msgstr "" -#: booleans.py:135 +#: booleans.py:142 msgid "" "Determine whether Bind can write to master zone files. Generally this is " "used for dynamic DNS or zone transfers." msgstr "" -#: booleans.py:136 +#: booleans.py:143 msgid "Allow any files/directories to be exported read/only via NFS." msgstr "" -#: booleans.py:137 +#: booleans.py:144 msgid "Allow any files/directories to be exported read/write via NFS." msgstr "" -#: booleans.py:138 +#: booleans.py:145 msgid "" "Allow nfs servers to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:139 +#: booleans.py:146 msgid "Allow system to run with NIS" msgstr "" -#: booleans.py:140 +#: booleans.py:147 msgid "Allow confined applications to use nscd shared memory." msgstr "" -#: booleans.py:141 +#: booleans.py:148 msgid "Allow openshift to lockdown app" msgstr "" -#: booleans.py:142 +#: booleans.py:149 msgid "Determine whether openvpn can connect to the TCP network." msgstr "" -#: booleans.py:143 +#: booleans.py:150 msgid "Determine whether openvpn can read generic user home content files." msgstr "" -#: booleans.py:144 +#: booleans.py:151 msgid "Allow openvpn to run unconfined scripts" msgstr "" -#: booleans.py:145 +#: booleans.py:152 msgid "Allow piranha-lvs domain to connect to the network using TCP." msgstr "" -#: booleans.py:146 +#: booleans.py:153 msgid "Allow polipo to connect to all ports > 1023" msgstr "" -#: booleans.py:147 +#: booleans.py:154 msgid "" "Determine whether Polipo session daemon can bind tcp sockets to all " "unreserved ports." msgstr "" -#: booleans.py:148 +#: booleans.py:155 msgid "" "Determine whether calling user domains can execute Polipo daemon in the " "polipo_session_t domain." msgstr "" -#: booleans.py:149 +#: booleans.py:156 msgid "Determine whether polipo can access cifs file systems." msgstr "" -#: booleans.py:150 +#: booleans.py:157 msgid "Determine whether Polipo can access nfs file systems." msgstr "" -#: booleans.py:151 +#: booleans.py:158 msgid "Enable polyinstantiated directory support." msgstr "" -#: booleans.py:152 +#: booleans.py:159 msgid "Allow postfix_local domain full write access to mail_spool directories" msgstr "" -#: booleans.py:153 +#: booleans.py:160 msgid "Allow postgresql to use ssh and rsync for point-in-time recovery" msgstr "" -#: booleans.py:154 +#: booleans.py:161 msgid "Allow transmit client label to foreign database" msgstr "" -#: booleans.py:155 +#: booleans.py:162 msgid "Allow database admins to execute DML statement" msgstr "" -#: booleans.py:156 +#: booleans.py:163 msgid "Allow unprivileged users to execute DDL statement" msgstr "" -#: booleans.py:157 +#: booleans.py:164 msgid "Allow pppd to load kernel modules for certain modems" msgstr "" -#: booleans.py:158 +#: booleans.py:165 msgid "Allow pppd to be run for a regular user" msgstr "" -#: booleans.py:159 +#: booleans.py:166 msgid "Determine whether privoxy can connect to all tcp ports." msgstr "" -#: booleans.py:160 +#: booleans.py:167 msgid "" "Permit to prosody to bind apache port. Need to be activated to use BOSH." msgstr "" -#: booleans.py:161 +#: booleans.py:168 msgid "Allow Puppet client to manage all file types." msgstr "" -#: booleans.py:162 +#: booleans.py:169 msgid "Allow Puppet master to use connect to MySQL and PostgreSQL database" msgstr "" -#: booleans.py:163 +#: booleans.py:170 msgid "Allow racoon to read shadow" msgstr "" -#: booleans.py:164 +#: booleans.py:171 msgid "" "Allow rsync to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:165 +#: booleans.py:172 msgid "Allow rsync to run as a client" msgstr "" -#: booleans.py:166 +#: booleans.py:173 msgid "Allow rsync to export any files/directories read only." msgstr "" -#: booleans.py:167 +#: booleans.py:174 msgid "Allow rsync server to manage all files/directories on the system." msgstr "" -#: booleans.py:168 +#: booleans.py:175 msgid "Allow samba to create new home directories (e.g. via PAM)" msgstr "" -#: booleans.py:169 +#: booleans.py:176 msgid "" "Allow samba to act as the domain controller, add users, groups and change " "passwords." msgstr "" -#: booleans.py:170 +#: booleans.py:177 msgid "Allow samba to share users home directories." msgstr "" -#: booleans.py:171 +#: booleans.py:178 msgid "Allow samba to share any file/directory read only." msgstr "" -#: booleans.py:172 +#: booleans.py:179 msgid "Allow samba to share any file/directory read/write." msgstr "" -#: booleans.py:173 +#: booleans.py:180 msgid "Allow samba to act as a portmapper" msgstr "" -#: booleans.py:174 +#: booleans.py:181 msgid "Allow samba to run unconfined scripts" msgstr "" -#: booleans.py:175 +#: booleans.py:182 msgid "Allow samba to export ntfs/fusefs volumes." msgstr "" -#: booleans.py:176 +#: booleans.py:183 msgid "Allow samba to export NFS volumes." msgstr "" -#: booleans.py:177 +#: booleans.py:184 msgid "Allow sanlock to read/write fuse files" msgstr "" -#: booleans.py:178 +#: booleans.py:185 msgid "Allow sanlock to manage nfs files" msgstr "" -#: booleans.py:179 +#: booleans.py:186 msgid "Allow sanlock to manage cifs files" msgstr "" -#: booleans.py:180 +#: booleans.py:187 msgid "Allow sasl to read shadow" msgstr "" -#: booleans.py:181 +#: booleans.py:188 msgid "Allow secadm to exec content" msgstr "" -#: booleans.py:182 +#: booleans.py:189 msgid "" "disallow programs, such as newrole, from transitioning to administrative " "user domains." msgstr "" -#: booleans.py:183 +#: booleans.py:190 msgid "Disable kernel module loading." msgstr "" -#: booleans.py:184 +#: booleans.py:191 msgid "" "Boolean to determine whether the system permits loading policy, setting " "enforcing mode, and changing boolean values. Set this to true and you have " "to reboot to set it back." msgstr "" -#: booleans.py:185 +#: booleans.py:192 msgid "Allow regular users direct dri device access" msgstr "" -#: booleans.py:186 +#: booleans.py:193 msgid "" "Allow unconfined executables to make their heap memory executable. Doing " "this is a really bad idea. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:187 +#: booleans.py:194 msgid "" "Allow all unconfined executables to use libraries requiring text relocation " "that are not labeled textrel_shlib_t" msgstr "" -#: booleans.py:188 +#: booleans.py:195 msgid "" "Allow unconfined executables to make their stack executable. This should " "never, ever be necessary. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:189 +#: booleans.py:196 msgid "Allow users to connect to the local mysql server" msgstr "" -#: booleans.py:190 +#: booleans.py:197 msgid "" "Allow confined users the ability to execute the ping and traceroute commands." msgstr "" -#: booleans.py:191 +#: booleans.py:198 msgid "Allow users to connect to PostgreSQL" msgstr "" -#: booleans.py:192 +#: booleans.py:199 msgid "" "Allow user to r/w files on filesystems that do not have extended attributes " "(FAT, CDROM, FLOPPY)" msgstr "" -#: booleans.py:193 +#: booleans.py:200 msgid "Allow user music sharing" msgstr "" -#: booleans.py:194 +#: booleans.py:201 msgid "" "Allow users to run TCP servers (bind to ports and accept connection from the " "same domain and outside users) disabling this forces FTP passive mode and " "may change other protocols." msgstr "" -#: booleans.py:195 +#: booleans.py:202 msgid "Allow user to use ssh chroot environment." msgstr "" -#: booleans.py:196 +#: booleans.py:203 msgid "" "Determine whether sftpd can modify public files used for public file " "transfer services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:197 +#: booleans.py:204 msgid "" "Determine whether sftpd-can read and write files in user home directories." msgstr "" -#: booleans.py:198 +#: booleans.py:205 msgid "" "Determine whether sftpd-can login to local users and read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:199 +#: booleans.py:206 msgid "" "Determine whether sftpd can read and write files in user ssh home " "directories." msgstr "" -#: booleans.py:200 +#: booleans.py:207 msgid "Allow sge to connect to the network using any TCP port" msgstr "" -#: booleans.py:201 +#: booleans.py:208 msgid "Allow sge to access nfs file systems." msgstr "" -#: booleans.py:202 +#: booleans.py:209 msgid "Determine whether smartmon can support devices on 3ware controllers." msgstr "" -#: booleans.py:203 +#: booleans.py:210 msgid "" "Allow samba to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:204 +#: booleans.py:211 msgid "Allow user spamassassin clients to use the network." msgstr "" -#: booleans.py:205 +#: booleans.py:212 msgid "Allow spamd to read/write user home directories." msgstr "" -#: booleans.py:206 +#: booleans.py:213 msgid "Determine whether squid can connect to all TCP ports." msgstr "" -#: booleans.py:207 +#: booleans.py:214 msgid "Determine whether squid can run as a transparent proxy." msgstr "" -#: booleans.py:208 +#: booleans.py:215 msgid "" "Allow ssh with chroot env to read and write files in the user home " "directories" msgstr "" -#: booleans.py:209 +#: booleans.py:216 msgid "allow host key based authentication" msgstr "" -#: booleans.py:210 +#: booleans.py:217 msgid "Allow ssh logins as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:211 +#: booleans.py:218 msgid "Allow staff to exec content" msgstr "" -#: booleans.py:212 +#: booleans.py:219 msgid "allow staff user to create and transition to svirt domains." msgstr "" -#: booleans.py:213 +#: booleans.py:220 msgid "Allow sysadm to exec content" msgstr "" -#: booleans.py:214 +#: booleans.py:221 msgid "Allow the Telepathy connection managers to connect to any network port." msgstr "" -#: booleans.py:215 +#: booleans.py:222 msgid "" "Allow the Telepathy connection managers to connect to any generic TCP port." msgstr "" -#: booleans.py:216 -msgid "Allow testpolicy to exec content" -msgstr "" - -#: booleans.py:217 +#: booleans.py:223 msgid "" "Allow tftp to modify public files used for public file transfer services." msgstr "" -#: booleans.py:218 +#: booleans.py:224 msgid "Allow tftp to read and write files in the user home directories" msgstr "" -#: booleans.py:219 +#: booleans.py:225 msgid "Determine whether tor can bind tcp sockets to all unreserved ports." msgstr "" -#: booleans.py:220 +#: booleans.py:226 msgid "Allow tor to act as a relay" msgstr "" -#: booleans.py:221 +#: booleans.py:227 msgid "" "allow unconfined users to transition to the chrome sandbox domains when " "running chrome-sandbox" msgstr "" -#: booleans.py:222 +#: booleans.py:228 msgid "Allow a user to login as an unconfined domain" msgstr "" -#: booleans.py:223 +#: booleans.py:229 msgid "" "Allow unconfined users to transition to the Mozilla plugin domain when " "running xulrunner plugin-container." msgstr "" -#: booleans.py:224 +#: booleans.py:230 msgid "Allow unprivledged user to create and transition to svirt domains." msgstr "" -#: booleans.py:225 +#: booleans.py:231 msgid "Support ecryptfs home directories" msgstr "" -#: booleans.py:226 +#: booleans.py:232 msgid "Support fusefs home directories" msgstr "" -#: booleans.py:227 +#: booleans.py:233 msgid "Determine whether to support lpd server." msgstr "" -#: booleans.py:228 +#: booleans.py:234 msgid "Support NFS home directories" msgstr "" -#: booleans.py:229 +#: booleans.py:235 msgid "Support SAMBA home directories" msgstr "" -#: booleans.py:230 +#: booleans.py:236 msgid "Allow user to exec content" msgstr "" -#: booleans.py:231 +#: booleans.py:237 msgid "Determine whether varnishd can use the full TCP network." msgstr "" -#: booleans.py:232 +#: booleans.py:238 msgid "" "Determine whether attempts by vbetool to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:233 +#: booleans.py:239 +msgid "Allow sandbox containers to send audit messages" +msgstr "" + +#: booleans.py:240 +msgid "Allow sandbox containers to use netlink system calls" +msgstr "" + +#: booleans.py:241 msgid "Allow virtual processes to run as userdomains" msgstr "" -#: booleans.py:234 +#: booleans.py:242 msgid "" "Allow confined virtual guests to use serial/parallel communication ports" msgstr "" -#: booleans.py:235 +#: booleans.py:243 msgid "" "Allow confined virtual guests to use executable memory and executable stack" msgstr "" -#: booleans.py:236 +#: booleans.py:244 msgid "Allow confined virtual guests to read fuse files" msgstr "" -#: booleans.py:237 +#: booleans.py:245 msgid "Allow confined virtual guests to manage nfs files" msgstr "" -#: booleans.py:238 +#: booleans.py:246 msgid "Allow confined virtual guests to interact with rawip sockets" msgstr "" -#: booleans.py:239 +#: booleans.py:247 msgid "Allow confined virtual guests to manage cifs files" msgstr "" -#: booleans.py:240 +#: booleans.py:248 msgid "Allow confined virtual guests to interact with the sanlock" msgstr "" -#: booleans.py:241 +#: booleans.py:249 msgid "Allow confined virtual guests to use usb devices" msgstr "" -#: booleans.py:242 +#: booleans.py:250 msgid "Allow confined virtual guests to interact with the xserver" msgstr "" -#: booleans.py:243 +#: booleans.py:251 msgid "Determine whether webadm can manage generic user files." msgstr "" -#: booleans.py:244 +#: booleans.py:252 msgid "Determine whether webadm can read generic user files." msgstr "" -#: booleans.py:245 +#: booleans.py:253 msgid "" "Determine whether attempts by wine to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:246 +#: booleans.py:254 msgid "Allow the graphical login program to execute bootloader" msgstr "" -#: booleans.py:247 +#: booleans.py:255 msgid "" "Allow the graphical login program to login directly as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:248 +#: booleans.py:256 msgid "" "Allow the graphical login program to create files in HOME dirs as xdm_home_t." msgstr "" -#: booleans.py:249 +#: booleans.py:257 msgid "Allow xen to manage nfs files" msgstr "" -#: booleans.py:250 +#: booleans.py:258 msgid "" "Allow xend to run blktapctrl/tapdisk. Not required if using dedicated " "logical volumes for disk images." msgstr "" -#: booleans.py:251 +#: booleans.py:259 msgid "Allow xend to run qemu-dm. Not required if using paravirt and no vfb." msgstr "" -#: booleans.py:252 +#: booleans.py:260 msgid "" "Allow xguest users to configure Network Manager and connect to apache ports" msgstr "" -#: booleans.py:253 +#: booleans.py:261 msgid "Allow xguest to exec content" msgstr "" -#: booleans.py:254 +#: booleans.py:262 msgid "Allow xguest users to mount removable media" msgstr "" -#: booleans.py:255 +#: booleans.py:263 msgid "Allow xguest to use blue tooth devices" msgstr "" -#: booleans.py:256 +#: booleans.py:264 msgid "Allows clients to write to the X server shared memory segments." msgstr "" -#: booleans.py:257 +#: booleans.py:265 msgid "Allows XServer to execute writable memory" msgstr "" -#: booleans.py:258 +#: booleans.py:266 msgid "Support X userspace object manager" msgstr "" -#: booleans.py:259 +#: booleans.py:267 msgid "Determine whether zabbix can connect to all TCP ports" msgstr "" -#: booleans.py:260 +#: booleans.py:268 msgid "Allow zarafa domains to setrlimit/sys_rouserce." msgstr "" -#: booleans.py:261 +#: booleans.py:269 msgid "Allow zebra daemon to write it configuration files" msgstr "" -#: booleans.py:262 +#: booleans.py:270 msgid "" "Allow ZoneMinder to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:263 +#: booleans.py:271 msgid "Allow ZoneMinder to run su/sudo." msgstr "" -#: ../sepolicy/sepolicy.py:194 +#: ../sepolicy/sepolicy.py:195 #, python-format msgid "Interface %s does not exist." msgstr "" -#: ../sepolicy/sepolicy.py:292 +#: ../sepolicy/sepolicy.py:293 msgid "You need to install policycoreutils-gui package to use the gui option" msgstr "" -#: ../sepolicy/sepolicy.py:296 +#: ../sepolicy/sepolicy.py:297 msgid "Graphical User Interface for SELinux Policy" msgstr "" -#: ../sepolicy/sepolicy.py:299 ../sepolicy/sepolicy.py:345 +#: ../sepolicy/sepolicy.py:300 ../sepolicy/sepolicy.py:346 msgid "Domain name(s) of man pages to be created" msgstr "" -#: ../sepolicy/sepolicy.py:311 +#: ../sepolicy/sepolicy.py:312 msgid "Alternative root needs to be setup" msgstr "" -#: ../sepolicy/sepolicy.py:327 +#: ../sepolicy/sepolicy.py:328 msgid "Generate SELinux man pages" msgstr "" -#: ../sepolicy/sepolicy.py:330 +#: ../sepolicy/sepolicy.py:331 msgid "path in which the generated SELinux man pages will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:332 +#: ../sepolicy/sepolicy.py:333 msgid "name of the OS for man pages" msgstr "" -#: ../sepolicy/sepolicy.py:334 +#: ../sepolicy/sepolicy.py:335 msgid "Generate HTML man pages structure for selected SELinux man page" msgstr "" -#: ../sepolicy/sepolicy.py:336 +#: ../sepolicy/sepolicy.py:337 msgid "Alternate root directory, defaults to /" msgstr "" -#: ../sepolicy/sepolicy.py:338 +#: ../sepolicy/sepolicy.py:339 msgid "" "With this flag, alternative root path needs to include file context files " "and policy.xml file" msgstr "" -#: ../sepolicy/sepolicy.py:342 +#: ../sepolicy/sepolicy.py:343 msgid "All domains" msgstr "" -#: ../sepolicy/sepolicy.py:350 +#: ../sepolicy/sepolicy.py:351 msgid "Query SELinux policy network information" msgstr "" -#: ../sepolicy/sepolicy.py:355 +#: ../sepolicy/sepolicy.py:356 msgid "list all SELinux port types" msgstr "" -#: ../sepolicy/sepolicy.py:358 +#: ../sepolicy/sepolicy.py:359 msgid "show SELinux type related to the port" msgstr "" -#: ../sepolicy/sepolicy.py:361 +#: ../sepolicy/sepolicy.py:362 msgid "Show ports defined for this SELinux type" msgstr "" -#: ../sepolicy/sepolicy.py:364 +#: ../sepolicy/sepolicy.py:365 msgid "show ports to which this domain can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:367 +#: ../sepolicy/sepolicy.py:368 msgid "show ports to which this application can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:382 +#: ../sepolicy/sepolicy.py:383 msgid "query SELinux policy to see if domains can communicate with each other" msgstr "" -#: ../sepolicy/sepolicy.py:385 +#: ../sepolicy/sepolicy.py:386 msgid "Source Domain" msgstr "" -#: ../sepolicy/sepolicy.py:388 +#: ../sepolicy/sepolicy.py:389 msgid "Target Domain" msgstr "" -#: ../sepolicy/sepolicy.py:407 +#: ../sepolicy/sepolicy.py:408 msgid "query SELinux Policy to see description of booleans" msgstr "" -#: ../sepolicy/sepolicy.py:411 +#: ../sepolicy/sepolicy.py:412 msgid "get all booleans descriptions" msgstr "" -#: ../sepolicy/sepolicy.py:414 +#: ../sepolicy/sepolicy.py:415 msgid "boolean to get description" msgstr "" -#: ../sepolicy/sepolicy.py:424 +#: ../sepolicy/sepolicy.py:425 msgid "" "query SELinux Policy to see how a source process domain can transition to " "the target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:427 +#: ../sepolicy/sepolicy.py:428 msgid "source process domain" msgstr "" -#: ../sepolicy/sepolicy.py:430 +#: ../sepolicy/sepolicy.py:431 msgid "target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:472 +#: ../sepolicy/sepolicy.py:473 #, python-format msgid "sepolicy generate: error: one of the arguments %s is required" msgstr "" -#: ../sepolicy/sepolicy.py:477 +#: ../sepolicy/sepolicy.py:478 msgid "Command required for this type of policy" msgstr "" -#: ../sepolicy/sepolicy.py:488 +#: ../sepolicy/sepolicy.py:489 #, python-format msgid "" "-t option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:493 +#: ../sepolicy/sepolicy.py:494 #, python-format msgid "" "-d option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:497 +#: ../sepolicy/sepolicy.py:498 #, python-format msgid "" "-a option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:501 +#: ../sepolicy/sepolicy.py:502 msgid "-w option can not be used with the --newtype option" msgstr "" -#: ../sepolicy/sepolicy.py:521 +#: ../sepolicy/sepolicy.py:522 msgid "List SELinux Policy interfaces" msgstr "" -#: ../sepolicy/sepolicy.py:541 +#: ../sepolicy/sepolicy.py:542 msgid "Enter interface names, you wish to query" msgstr "" -#: ../sepolicy/sepolicy.py:550 +#: ../sepolicy/sepolicy.py:551 msgid "Generate SELinux Policy module template" msgstr "" -#: ../sepolicy/sepolicy.py:553 +#: ../sepolicy/sepolicy.py:554 msgid "Enter domain type which you will be extending" msgstr "" -#: ../sepolicy/sepolicy.py:556 +#: ../sepolicy/sepolicy.py:557 msgid "Enter SELinux user(s) which will transition to this domain" msgstr "" -#: ../sepolicy/sepolicy.py:559 +#: ../sepolicy/sepolicy.py:560 msgid "Enter SELinux role(s) to which the administror domain will transition" msgstr "" -#: ../sepolicy/sepolicy.py:562 +#: ../sepolicy/sepolicy.py:563 msgid "Enter domain(s) which this confined admin will administrate" msgstr "" -#: ../sepolicy/sepolicy.py:565 +#: ../sepolicy/sepolicy.py:566 msgid "name of policy to generate" msgstr "" -#: ../sepolicy/sepolicy.py:572 +#: ../sepolicy/sepolicy.py:573 msgid "path in which the generated policy files will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:574 +#: ../sepolicy/sepolicy.py:575 msgid "path to which the confined processes will need to write" msgstr "" -#: ../sepolicy/sepolicy.py:575 +#: ../sepolicy/sepolicy.py:576 msgid "Policy types which require a command" msgstr "" -#: ../sepolicy/sepolicy.py:579 ../sepolicy/sepolicy.py:582 -#: ../sepolicy/sepolicy.py:585 ../sepolicy/sepolicy.py:588 -#: ../sepolicy/sepolicy.py:591 ../sepolicy/sepolicy.py:597 -#: ../sepolicy/sepolicy.py:600 ../sepolicy/sepolicy.py:603 -#: ../sepolicy/sepolicy.py:609 ../sepolicy/sepolicy.py:612 -#: ../sepolicy/sepolicy.py:615 ../sepolicy/sepolicy.py:618 +#: ../sepolicy/sepolicy.py:580 ../sepolicy/sepolicy.py:583 +#: ../sepolicy/sepolicy.py:586 ../sepolicy/sepolicy.py:589 +#: ../sepolicy/sepolicy.py:592 ../sepolicy/sepolicy.py:598 +#: ../sepolicy/sepolicy.py:601 ../sepolicy/sepolicy.py:604 +#: ../sepolicy/sepolicy.py:610 ../sepolicy/sepolicy.py:613 +#: ../sepolicy/sepolicy.py:616 ../sepolicy/sepolicy.py:619 #, python-format msgid "Generate '%s' policy" msgstr "" -#: ../sepolicy/sepolicy.py:606 +#: ../sepolicy/sepolicy.py:607 #, python-format msgid "Generate '%s' policy " msgstr "" -#: ../sepolicy/sepolicy.py:620 +#: ../sepolicy/sepolicy.py:621 msgid "executable to confine" msgstr "" -#: ../sepolicy/sepolicy.py:625 +#: ../sepolicy/sepolicy.py:626 msgid "commands" msgstr "" -#: ../sepolicy/sepolicy.py:628 +#: ../sepolicy/sepolicy.py:629 msgid "Alternate SELinux policy, defaults to /sys/fs/selinux/policy" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:89 +#: ../sepolicy/sepolicy/__init__.py:96 #, python-format msgid "-- Allowed %s [ %s ]" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:95 ../sepolicy/sepolicy/gui.py:1135 +#: ../sepolicy/sepolicy/__init__.py:102 ../sepolicy/sepolicy/gui.py:1152 msgid "all files" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:96 +#: ../sepolicy/sepolicy/__init__.py:103 msgid "regular file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:97 +#: ../sepolicy/sepolicy/__init__.py:104 msgid "directory" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:98 +#: ../sepolicy/sepolicy/__init__.py:105 msgid "character device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:99 +#: ../sepolicy/sepolicy/__init__.py:106 msgid "block device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:100 +#: ../sepolicy/sepolicy/__init__.py:107 msgid "socket file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:101 +#: ../sepolicy/sepolicy/__init__.py:108 msgid "symbolic link" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:102 +#: ../sepolicy/sepolicy/__init__.py:109 msgid "named pipe" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:398 +#: ../sepolicy/sepolicy/__init__.py:427 msgid "No SELinux Policy installed" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:478 +#: ../sepolicy/sepolicy/__init__.py:506 msgid "You must regenerate interface info by running /usr/bin/sepolgen-ifgen" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:724 +#: ../sepolicy/sepolicy/__init__.py:768 #, python-format msgid "Failed to read %s policy file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:829 +#: ../sepolicy/sepolicy/__init__.py:873 msgid "unknown" msgstr "" -#: ../sepolicy/sepolicy/generate.py:132 +#: ../sepolicy/sepolicy/generate.py:134 msgid "Internet Services Daemon" msgstr "" -#: ../sepolicy/sepolicy/generate.py:136 +#: ../sepolicy/sepolicy/generate.py:138 msgid "Existing Domain Type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:137 +#: ../sepolicy/sepolicy/generate.py:139 msgid "Minimal Terminal Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:138 +#: ../sepolicy/sepolicy/generate.py:140 msgid "Minimal X Windows Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:139 +#: ../sepolicy/sepolicy/generate.py:141 msgid "Desktop Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:140 +#: ../sepolicy/sepolicy/generate.py:142 msgid "Administrator Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:141 +#: ../sepolicy/sepolicy/generate.py:143 msgid "Confined Root Administrator Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:142 +#: ../sepolicy/sepolicy/generate.py:144 msgid "Module information for a new type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:147 +#: ../sepolicy/sepolicy/generate.py:149 msgid "Valid Types:\n" msgstr "" -#: ../sepolicy/sepolicy/generate.py:181 +#: ../sepolicy/sepolicy/generate.py:183 #, python-format msgid "Ports must be numbers or ranges of numbers from 1 to %d " msgstr "" -#: ../sepolicy/sepolicy/generate.py:192 +#: ../sepolicy/sepolicy/generate.py:194 msgid "You must enter a valid policy type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:195 +#: ../sepolicy/sepolicy/generate.py:197 #, python-format msgid "You must enter a name for your policy module for your '%s'." msgstr "" -#: ../sepolicy/sepolicy/generate.py:333 +#: ../sepolicy/sepolicy/generate.py:335 msgid "" "Name must be alpha numberic with no spaces. Consider using option \"-n " "MODULENAME\"" msgstr "" -#: ../sepolicy/sepolicy/generate.py:425 +#: ../sepolicy/sepolicy/generate.py:427 msgid "User Role types can not be assigned executables." msgstr "" -#: ../sepolicy/sepolicy/generate.py:431 +#: ../sepolicy/sepolicy/generate.py:433 msgid "Only Daemon apps can use an init script.." msgstr "" -#: ../sepolicy/sepolicy/generate.py:449 +#: ../sepolicy/sepolicy/generate.py:451 msgid "use_resolve must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:455 +#: ../sepolicy/sepolicy/generate.py:457 msgid "use_syslog must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:461 +#: ../sepolicy/sepolicy/generate.py:463 msgid "use_kerberos must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:467 +#: ../sepolicy/sepolicy/generate.py:469 msgid "manage_krb5_rcache must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:497 +#: ../sepolicy/sepolicy/generate.py:499 msgid "USER Types automatically get a tmp type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:838 +#: ../sepolicy/sepolicy/generate.py:840 #, python-format msgid "'%s' policy modules require existing domains" msgstr "" -#: ../sepolicy/sepolicy/generate.py:863 +#: ../sepolicy/sepolicy/generate.py:865 msgid "Type field required" msgstr "" -#: ../sepolicy/sepolicy/generate.py:876 +#: ../sepolicy/sepolicy/generate.py:878 #, python-format msgid "" "You need to define a new type which ends with: \n" " %s" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1104 +#: ../sepolicy/sepolicy/generate.py:1106 msgid "You must enter the executable path for your confined process" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1363 +#: ../sepolicy/sepolicy/generate.py:1369 msgid "Type Enforcement file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1364 +#: ../sepolicy/sepolicy/generate.py:1370 msgid "Interface file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1365 +#: ../sepolicy/sepolicy/generate.py:1371 msgid "File Contexts file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1367 +#: ../sepolicy/sepolicy/generate.py:1373 msgid "Spec file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1368 +#: ../sepolicy/sepolicy/generate.py:1374 msgid "Setup Script" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:25 -#: ../sepolicy/sepolicy/sepolicy.glade:4369 +#: ../sepolicy/sepolicy/sepolicy.glade:4330 msgid "Applications" msgstr "" @@ -3803,562 +3858,555 @@ msgstr "" msgid "Select domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2343 msgid "File Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2316 +#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2353 msgid "Users" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:129 -#: ../sepolicy/sepolicy/sepolicy.glade:1897 -#: ../sepolicy/sepolicy/sepolicy.glade:3802 ../sepolicy/sepolicy/gui.py:2297 +#: ../sepolicy/sepolicy/sepolicy.glade:1898 +#: ../sepolicy/sepolicy/sepolicy.glade:3803 ../sepolicy/sepolicy/gui.py:2334 msgid "System" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:189 -#: ../sepolicy/sepolicy/sepolicy.glade:4406 -#: ../sepolicy/sepolicy/sepolicy.glade:4499 -#: ../sepolicy/sepolicy/sepolicy.glade:4645 -#: ../sepolicy/sepolicy/sepolicy.glade:4793 -#: ../sepolicy/sepolicy/sepolicy.glade:4934 -#: ../sepolicy/sepolicy/sepolicy.glade:5007 +#: ../sepolicy/sepolicy/sepolicy.glade:4367 +#: ../sepolicy/sepolicy/sepolicy.glade:4460 +#: ../sepolicy/sepolicy/sepolicy.glade:4606 +#: ../sepolicy/sepolicy/sepolicy.glade:4755 +#: ../sepolicy/sepolicy/sepolicy.glade:4889 +#: ../sepolicy/sepolicy/sepolicy.glade:5030 +#: ../sepolicy/sepolicy/sepolicy.glade:5103 +#: ../sepolicy/sepolicy/sepolicy.glade:5238 msgid "Select" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:204 -#: ../sepolicy/sepolicy/sepolicy.glade:557 -#: ../sepolicy/sepolicy/sepolicy.glade:702 -#: ../sepolicy/sepolicy/sepolicy.glade:1243 -#: ../sepolicy/sepolicy/sepolicy.glade:1539 -#: ../sepolicy/sepolicy/sepolicy.glade:4579 -#: ../sepolicy/sepolicy/sepolicy.glade:4729 -#: ../sepolicy/sepolicy/sepolicy.glade:4859 -#: ../sepolicy/sepolicy/sepolicy.glade:5077 -#: ../sepolicy/sepolicy/sepolicy.glade:5233 -#: ../sepolicy/sepolicy/sepolicy.glade:5474 +#: ../sepolicy/sepolicy/sepolicy.glade:539 +#: ../sepolicy/sepolicy/sepolicy.glade:684 +#: ../sepolicy/sepolicy/sepolicy.glade:1239 +#: ../sepolicy/sepolicy/sepolicy.glade:1535 +#: ../sepolicy/sepolicy/sepolicy.glade:4540 +#: ../sepolicy/sepolicy/sepolicy.glade:4690 +#: ../sepolicy/sepolicy/sepolicy.glade:4821 +#: ../sepolicy/sepolicy/sepolicy.glade:4955 +#: ../sepolicy/sepolicy/sepolicy.glade:5173 +#: ../sepolicy/sepolicy/sepolicy.glade:5304 +#: ../sepolicy/sepolicy/sepolicy.glade:5464 msgid "Cancel" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:350 +#: ../sepolicy/sepolicy/sepolicy.glade:332 msgid "" "The entry that was entered is incorrect. Please try again in the " "ex:/.../... format." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:376 +#: ../sepolicy/sepolicy/sepolicy.glade:358 msgid "Retry" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:460 -#: ../sepolicy/sepolicy/sepolicy.glade:1124 -#: ../sepolicy/sepolicy/sepolicy.glade:1372 -#: ../sepolicy/sepolicy/sepolicy.glade:5102 -#: ../sepolicy/sepolicy/sepolicy.glade:5343 +#: ../sepolicy/sepolicy/sepolicy.glade:442 +#: ../sepolicy/sepolicy/sepolicy.glade:1120 +#: ../sepolicy/sepolicy/sepolicy.glade:1368 +#: ../sepolicy/sepolicy/sepolicy.glade:5332 msgid "Network Port Definitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:476 +#: ../sepolicy/sepolicy/sepolicy.glade:458 msgid "" -"Add file Equivilence Mapping. Mapping will be created when Update is " +"Add file Equivalence Mapping. Mapping will be created when Update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:501 -#: ../sepolicy/sepolicy/sepolicy.glade:4045 +#: ../sepolicy/sepolicy/sepolicy.glade:483 +#: ../sepolicy/sepolicy/sepolicy.glade:4046 msgid "Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:511 -#: ../sepolicy/sepolicy/sepolicy.glade:5154 -#: ../sepolicy/sepolicy/sepolicy.glade:5395 +#: ../sepolicy/sepolicy/sepolicy.glade:493 +#: ../sepolicy/sepolicy/sepolicy.glade:5384 msgid "" "Specify a new SELinux user name. By convention SELinux User names usually " "end in an _u." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:515 +#: ../sepolicy/sepolicy/sepolicy.glade:497 msgid "Enter the path to which you want to setup an equivalence label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:528 -#: ../sepolicy/sepolicy/sepolicy.glade:4062 -#: ../sepolicy/sepolicy/sepolicy.glade:4819 +#: ../sepolicy/sepolicy/sepolicy.glade:510 +#: ../sepolicy/sepolicy/sepolicy.glade:4063 +#: ../sepolicy/sepolicy/sepolicy.glade:4781 msgid "Equivalence Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:542 -#: ../sepolicy/sepolicy/sepolicy.glade:687 -#: ../sepolicy/sepolicy/sepolicy.glade:1228 -#: ../sepolicy/sepolicy/sepolicy.glade:1524 -#: ../sepolicy/sepolicy/sepolicy.glade:5218 -#: ../sepolicy/sepolicy/sepolicy.glade:5459 +#: ../sepolicy/sepolicy/sepolicy.glade:524 +#: ../sepolicy/sepolicy/sepolicy.glade:669 +#: ../sepolicy/sepolicy/sepolicy.glade:1224 +#: ../sepolicy/sepolicy/sepolicy.glade:1520 +#: ../sepolicy/sepolicy/sepolicy.glade:5449 msgid "Save to update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:582 +#: ../sepolicy/sepolicy/sepolicy.glade:564 msgid "" "Specify the mapping between the new path and the equivalence path. " "Everything under this new path will be labeled as if they were under the " "equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:639 +#: ../sepolicy/sepolicy/sepolicy.glade:621 msgid "Add a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:656 +#: ../sepolicy/sepolicy/sepolicy.glade:638 msgid "" " File Labeling for . File labels will be created " "when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:744 -#: ../sepolicy/sepolicy/sepolicy.glade:1471 -#: ../sepolicy/sepolicy/sepolicy.glade:3510 ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/sepolicy.glade:726 +#: ../sepolicy/sepolicy/sepolicy.glade:1467 +#: ../sepolicy/sepolicy/sepolicy.glade:3511 ../sepolicy/sepolicy/gui.py:68 msgid "Advanced >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:765 -#: ../sepolicy/sepolicy/sepolicy.glade:2305 -#: ../sepolicy/sepolicy/sepolicy.glade:2417 -#: ../sepolicy/sepolicy/sepolicy.glade:2539 -#: ../sepolicy/sepolicy/sepolicy.glade:4539 +#: ../sepolicy/sepolicy/sepolicy.glade:747 +#: ../sepolicy/sepolicy/sepolicy.glade:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:2418 +#: ../sepolicy/sepolicy/sepolicy.glade:2540 +#: ../sepolicy/sepolicy/sepolicy.glade:4500 msgid "Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:781 +#: ../sepolicy/sepolicy/sepolicy.glade:763 msgid "Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:795 +#: ../sepolicy/sepolicy/sepolicy.glade:777 msgid "" "Select the file class to which this label will be applied. Defaults to all " "classes." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:822 +#: ../sepolicy/sepolicy/sepolicy.glade:804 msgid "Make Path Recursive" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:826 +#: ../sepolicy/sepolicy/sepolicy.glade:808 msgid "" -"Select Make Path Recursive iff you want to apply this label to all children " +"Select Make Path Recursive if you want to apply this label to all children " "of the specified directory path. objects under the directory to have this " "label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:839 +#: ../sepolicy/sepolicy/sepolicy.glade:821 msgid "Browse" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:843 +#: ../sepolicy/sepolicy/sepolicy.glade:825 msgid "Browse to select the file/directory for labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:887 +#: ../sepolicy/sepolicy/sepolicy.glade:869 msgid "Path " msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:898 +#: ../sepolicy/sepolicy/sepolicy.glade:880 msgid "" "Specify the path using regular expressions that you would like to modify the " "labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:920 +#: ../sepolicy/sepolicy/sepolicy.glade:902 msgid "Select the SELinux file type to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:947 +#: ../sepolicy/sepolicy/sepolicy.glade:929 msgid "Enter the MLS Label to assign to this file path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:951 +#: ../sepolicy/sepolicy/sepolicy.glade:933 msgid "SELinux MLS Label you wish to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1088 +#: ../sepolicy/sepolicy/sepolicy.glade:1070 msgid "Analyzing Policy..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1141 +#: ../sepolicy/sepolicy/sepolicy.glade:1137 msgid "" "Add Login Mapping. Login Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1176 +#: ../sepolicy/sepolicy/sepolicy.glade:1172 msgid "" "Enter the login user name of the user to which you wish to add SELinux User " "confinement." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1205 +#: ../sepolicy/sepolicy/sepolicy.glade:1201 msgid "" "Select the SELinux User to assign to this login user. Login users by " "default get assigned by the __default__ user." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1268 +#: ../sepolicy/sepolicy/sepolicy.glade:1264 msgid "" "Enter MLS/MCS Range for this login User. Defaults to the range for the " "Selected SELinux User." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1271 -#: ../sepolicy/sepolicy/sepolicy.glade:3191 -#: ../sepolicy/sepolicy/sepolicy.glade:3312 -#: ../sepolicy/sepolicy/sepolicy.glade:5184 -#: ../sepolicy/sepolicy/sepolicy.glade:5425 +#: ../sepolicy/sepolicy/sepolicy.glade:1267 +#: ../sepolicy/sepolicy/sepolicy.glade:3192 +#: ../sepolicy/sepolicy/sepolicy.glade:3313 +#: ../sepolicy/sepolicy/sepolicy.glade:5414 msgid "MLS Range" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1283 +#: ../sepolicy/sepolicy/sepolicy.glade:1279 msgid "" "Specify the MLS Range for this user to login in with. Defaults to the " "selected SELinux Users MLS Range." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1389 +#: ../sepolicy/sepolicy/sepolicy.glade:1385 msgid "" " Network Port for . Ports will be created when " "update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1427 +#: ../sepolicy/sepolicy/sepolicy.glade:1423 msgid "Enter the port number or range to which you want to add a port type." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1457 +#: ../sepolicy/sepolicy/sepolicy.glade:1453 msgid "Port Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1502 +#: ../sepolicy/sepolicy/sepolicy.glade:1498 msgid "Select the port type you want to assign to the specified port number." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1566 +#: ../sepolicy/sepolicy/sepolicy.glade:1562 msgid "tcp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1570 +#: ../sepolicy/sepolicy/sepolicy.glade:1566 msgid "" "Select tcp if the port type should be assigned to tcp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1583 +#: ../sepolicy/sepolicy/sepolicy.glade:1579 msgid "udp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1587 +#: ../sepolicy/sepolicy/sepolicy.glade:1583 msgid "" "Select udp if the port type should be assigned to udp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1609 +#: ../sepolicy/sepolicy/sepolicy.glade:1605 msgid "Enter the MLS Label to assign to this port." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1706 +#: ../sepolicy/sepolicy/sepolicy.glade:1707 msgid "SELinux Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1742 +#: ../sepolicy/sepolicy/sepolicy.glade:1743 msgid "Select..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1791 -#: ../sepolicy/sepolicy/sepolicy.glade:2211 +#: ../sepolicy/sepolicy/sepolicy.glade:1792 +#: ../sepolicy/sepolicy/sepolicy.glade:2212 msgid "Booleans" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1795 +#: ../sepolicy/sepolicy/sepolicy.glade:1796 msgid "" "Display boolean information that can be used to modify the policy for the " "'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1809 -#: ../sepolicy/sepolicy/sepolicy.glade:2596 +#: ../sepolicy/sepolicy/sepolicy.glade:1810 +#: ../sepolicy/sepolicy/sepolicy.glade:2597 msgid "Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1813 +#: ../sepolicy/sepolicy/sepolicy.glade:1814 msgid "" "Display file type information that can be used by the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1827 -#: ../sepolicy/sepolicy/sepolicy.glade:2829 +#: ../sepolicy/sepolicy/sepolicy.glade:1828 +#: ../sepolicy/sepolicy/sepolicy.glade:2830 msgid "Network" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1831 +#: ../sepolicy/sepolicy/sepolicy.glade:1832 msgid "" "Display network ports to which the 'selected domain' can connect or listen " "to." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1845 -#: ../sepolicy/sepolicy/sepolicy.glade:3120 +#: ../sepolicy/sepolicy/sepolicy.glade:1846 +#: ../sepolicy/sepolicy/sepolicy.glade:3121 msgid "Transitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1849 +#: ../sepolicy/sepolicy/sepolicy.glade:1850 msgid "" "Display applications that can transition into or out of the 'selected " "domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1863 -#: ../sepolicy/sepolicy/sepolicy.glade:3221 +#: ../sepolicy/sepolicy/sepolicy.glade:1864 +#: ../sepolicy/sepolicy/sepolicy.glade:3222 msgid "Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1866 -#: ../sepolicy/sepolicy/sepolicy.glade:1883 -#: ../sepolicy/sepolicy/sepolicy.glade:1900 +#: ../sepolicy/sepolicy/sepolicy.glade:1867 +#: ../sepolicy/sepolicy/sepolicy.glade:1884 +#: ../sepolicy/sepolicy/sepolicy.glade:1901 msgid "Manage the SELinux configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1880 -#: ../sepolicy/sepolicy/sepolicy.glade:3343 +#: ../sepolicy/sepolicy/sepolicy.glade:1881 +#: ../sepolicy/sepolicy/sepolicy.glade:3344 msgid "SELinux Users" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1914 -#: ../sepolicy/sepolicy/sepolicy.glade:4015 +#: ../sepolicy/sepolicy/sepolicy.glade:1915 +#: ../sepolicy/sepolicy/sepolicy.glade:4016 msgid "Lockdown" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1917 +#: ../sepolicy/sepolicy/sepolicy.glade:1918 msgid "" "Lockdown the SELinux System.\n" "This screen can be used to turn up the SELinux Protections." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1932 +#: ../sepolicy/sepolicy/sepolicy.glade:1933 msgid "radiobutton" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2020 +#: ../sepolicy/sepolicy/sepolicy.glade:2021 msgid "Show Modified Only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2059 +#: ../sepolicy/sepolicy/sepolicy.glade:2060 msgid "Mislabeled files exist" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2079 +#: ../sepolicy/sepolicy/sepolicy.glade:2080 msgid "Show mislabeled files only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2119 -#: ../sepolicy/sepolicy/sepolicy.glade:3243 +#: ../sepolicy/sepolicy/sepolicy.glade:2120 +#: ../sepolicy/sepolicy/sepolicy.glade:3244 msgid "" -"If-Then-Else rules written in policy that can \n" +"If-Then-Else rules written in policy that can\n" "allow alternative access control." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2131 +#: ../sepolicy/sepolicy/sepolicy.glade:2132 msgid "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2251 -#: ../sepolicy/sepolicy/sepolicy.glade:2363 -#: ../sepolicy/sepolicy/sepolicy.glade:2481 -#: ../sepolicy/sepolicy/sepolicy.glade:4512 -#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:2252 +#: ../sepolicy/sepolicy/sepolicy.glade:2364 +#: ../sepolicy/sepolicy/sepolicy.glade:2482 +#: ../sepolicy/sepolicy/sepolicy.glade:4473 +#: ../sepolicy/sepolicy/sepolicy.glade:4768 msgid "File Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2287 -#: ../sepolicy/sepolicy/sepolicy.glade:2398 +#: ../sepolicy/sepolicy/sepolicy.glade:2288 +#: ../sepolicy/sepolicy/sepolicy.glade:2399 msgid "SELinux File Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2331 +#: ../sepolicy/sepolicy/sepolicy.glade:2332 msgid "File path used to enter the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2332 +#: ../sepolicy/sepolicy/sepolicy.glade:2333 msgid "Executable Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2447 +#: ../sepolicy/sepolicy/sepolicy.glade:2448 msgid "Files to which the 'selected domain' can write." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2448 +#: ../sepolicy/sepolicy/sepolicy.glade:2449 msgid "Writable files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2570 +#: ../sepolicy/sepolicy/sepolicy.glade:2571 msgid "File Types defined for the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2571 +#: ../sepolicy/sepolicy/sepolicy.glade:2572 msgid "Application File Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2703 +#: ../sepolicy/sepolicy/sepolicy.glade:2704 msgid "Network Ports to which the 'selected domain' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2704 +#: ../sepolicy/sepolicy/sepolicy.glade:2705 msgid "Outbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2803 +#: ../sepolicy/sepolicy/sepolicy.glade:2804 msgid "Network Ports to which the 'selected domain' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2804 +#: ../sepolicy/sepolicy/sepolicy.glade:2805 msgid "Inbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2865 +#: ../sepolicy/sepolicy/sepolicy.glade:2866 +#: ../sepolicy/sepolicy/sepolicy.glade:2956 msgid "" -"Boolean \n" +"Boolean\n" "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2891 +#: ../sepolicy/sepolicy/sepolicy.glade:2892 msgid "Boolean name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2908 +#: ../sepolicy/sepolicy/sepolicy.glade:2909 msgid "SELinux Application Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2929 +#: ../sepolicy/sepolicy/sepolicy.glade:2930 msgid "" "Executables which will transition to a different domain, when the 'selected " "domain' executes them." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2932 -msgid "Applicaton Transitions From 'select domain'" +#: ../sepolicy/sepolicy/sepolicy.glade:2933 +msgid "Application Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2955 -msgid "" -"Boolean\n" -"Enabled" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:2971 +#: ../sepolicy/sepolicy/sepolicy.glade:2972 msgid "Calling Process Domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2987 +#: ../sepolicy/sepolicy/sepolicy.glade:2988 msgid "Executable File" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3011 +#: ../sepolicy/sepolicy/sepolicy.glade:3012 msgid "" "Executables which will transition to the 'selected domain', when executing a " "selected domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3012 +#: ../sepolicy/sepolicy/sepolicy.glade:3013 msgid "Application Transitions Into 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3027 +#: ../sepolicy/sepolicy/sepolicy.glade:3028 msgid "" "File Transitions define what happens when the current domain creates the " "content of a particular class in a directory of the destination type. " "Optionally a file name could be specified for the transition." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3035 +#: ../sepolicy/sepolicy/sepolicy.glade:3036 msgid "SELinux Directory Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3048 +#: ../sepolicy/sepolicy/sepolicy.glade:3049 msgid "Destination Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3062 +#: ../sepolicy/sepolicy/sepolicy.glade:3063 msgid "SELinux Destination Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3075 +#: ../sepolicy/sepolicy/sepolicy.glade:3076 msgid "File Name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3097 +#: ../sepolicy/sepolicy/sepolicy.glade:3098 msgid "File Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3296 -#: ../sepolicy/sepolicy/sepolicy.glade:5277 -#: ../sepolicy/sepolicy/sepolicy.glade:5518 +#: ../sepolicy/sepolicy/sepolicy.glade:3297 +#: ../sepolicy/sepolicy/sepolicy.glade:5508 msgid "Default Level" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3382 +#: ../sepolicy/sepolicy/sepolicy.glade:3383 msgid "Select the system mode when the system first boots up" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3455 +#: ../sepolicy/sepolicy/sepolicy.glade:3456 msgid "Select the system mode for the current session" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3532 +#: ../sepolicy/sepolicy/sepolicy.glade:3533 msgid "System Policy Type:" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3593 +#: ../sepolicy/sepolicy/sepolicy.glade:3594 msgid "System Mode" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3631 +#: ../sepolicy/sepolicy/sepolicy.glade:3632 msgid "Import system settings from another machine" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3639 +#: ../sepolicy/sepolicy/sepolicy.glade:3640 msgid "Import" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3658 +#: ../sepolicy/sepolicy/sepolicy.glade:3659 msgid "Export system settings to a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3668 +#: ../sepolicy/sepolicy/sepolicy.glade:3669 msgid "Export" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3687 +#: ../sepolicy/sepolicy/sepolicy.glade:3688 msgid "Relabel all files back to system defaults on reboot" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3724 -#: ../sepolicy/sepolicy/sepolicy.glade:3825 -#: ../sepolicy/sepolicy/sepolicy.glade:3889 -#: ../sepolicy/sepolicy/sepolicy.glade:3952 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3725 +#: ../sepolicy/sepolicy/sepolicy.glade:3826 +#: ../sepolicy/sepolicy/sepolicy.glade:3890 +#: ../sepolicy/sepolicy/sepolicy.glade:3953 ../sepolicy/sepolicy/gui.py:64 msgid "Yes" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3741 -#: ../sepolicy/sepolicy/sepolicy.glade:3843 -#: ../sepolicy/sepolicy/sepolicy.glade:3906 -#: ../sepolicy/sepolicy/sepolicy.glade:3969 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3742 +#: ../sepolicy/sepolicy/sepolicy.glade:3844 +#: ../sepolicy/sepolicy/sepolicy.glade:3907 +#: ../sepolicy/sepolicy/sepolicy.glade:3970 ../sepolicy/sepolicy/gui.py:64 msgid "No" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3782 +#: ../sepolicy/sepolicy/sepolicy.glade:3783 msgid "System Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3829 -#: ../sepolicy/sepolicy/sepolicy.glade:3847 +#: ../sepolicy/sepolicy/sepolicy.glade:3830 +#: ../sepolicy/sepolicy/sepolicy.glade:3848 msgid "" "An unconfined domain is a process label that allows the process to do what " "it wants, without SELinux interfering. Applications started at boot by the " @@ -4368,13 +4416,13 @@ msgid "" "unconfined_t from the users/login screens." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3865 +#: ../sepolicy/sepolicy/sepolicy.glade:3866 msgid "Disable ability to run unconfined system processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3893 -#: ../sepolicy/sepolicy/sepolicy.glade:3910 -#: ../sepolicy/sepolicy/sepolicy.glade:3973 +#: ../sepolicy/sepolicy/sepolicy.glade:3894 +#: ../sepolicy/sepolicy/sepolicy.glade:3911 +#: ../sepolicy/sepolicy/sepolicy.glade:3974 msgid "" "An permissive domain is a process label that allows the process to do what " "it wants, with SELinux only logging the denials, but not enforcing them. " @@ -4383,11 +4431,11 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3928 +#: ../sepolicy/sepolicy/sepolicy.glade:3929 msgid "Disable all permissive processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3956 +#: ../sepolicy/sepolicy/sepolicy.glade:3957 msgid "" "A permissive domain is a process label that allows the process to do what it " "wants, with SELinux only logging the denials, but not enforcing them. " @@ -4396,171 +4444,189 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3994 +#: ../sepolicy/sepolicy/sepolicy.glade:3995 msgid "Deny all processes from ptracing or debugging other processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4031 +#: ../sepolicy/sepolicy/sepolicy.glade:4032 msgid "" "File equivalence cause the system to label content under the new path as if " "it were under the equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4087 +#: ../sepolicy/sepolicy/sepolicy.glade:4088 msgid "Files Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4100 +#: ../sepolicy/sepolicy/sepolicy.glade:4101 msgid "...SELECT TO VIEW DATA..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4131 +#: ../sepolicy/sepolicy/sepolicy.glade:4132 msgid "Delete" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4147 +#: ../sepolicy/sepolicy/sepolicy.glade:4148 msgid "Modify" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4208 +#: ../sepolicy/sepolicy/sepolicy.glade:4209 msgid "Revert" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4213 +#: ../sepolicy/sepolicy/sepolicy.glade:4214 msgid "" "Revert button will launch a dialog window which allows you to revert changes " "within the current transaction." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4225 ../sepolicy/sepolicy/gui.py:2379 +#: ../sepolicy/sepolicy/sepolicy.glade:4226 ../sepolicy/sepolicy/gui.py:2416 msgid "Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4230 +#: ../sepolicy/sepolicy/sepolicy.glade:4231 msgid "Commit all changes in your current transaction to the server." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4278 +#: ../sepolicy/sepolicy/sepolicy.glade:4279 msgid "Applications - Advanced Search" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4331 -msgid "Installed" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:4383 +#: ../sepolicy/sepolicy/sepolicy.glade:4344 msgid "Process Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4424 +#: ../sepolicy/sepolicy/sepolicy.glade:4385 msgid "More Details" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4460 -#: ../sepolicy/sepolicy/sepolicy.glade:4754 +#: ../sepolicy/sepolicy/sepolicy.glade:4421 +#: ../sepolicy/sepolicy/sepolicy.glade:4715 msgid "Delete Modified File Labeling" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4478 +#: ../sepolicy/sepolicy/sepolicy.glade:4439 msgid "" "Select file labeling to delete. File labeling will be deleted when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4486 msgid "SELinux File Label" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4564 -#: ../sepolicy/sepolicy/sepolicy.glade:4714 -#: ../sepolicy/sepolicy/sepolicy.glade:4844 +#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4675 +#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:4940 +#: ../sepolicy/sepolicy/sepolicy.glade:5289 msgid "Save to Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4604 +#: ../sepolicy/sepolicy/sepolicy.glade:4565 msgid "Delete Modified Ports" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4622 +#: ../sepolicy/sepolicy/sepolicy.glade:4583 msgid "Select ports to delete. Ports will be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4771 +#: ../sepolicy/sepolicy/sepolicy.glade:4733 msgid "" -"Select file equivalence labeling to delete.File equivalence labeling will be " -"deleted when update is applied." +"Select file equivalence labeling to delete. File equivalence labeling will " +"be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4887 +#: ../sepolicy/sepolicy/sepolicy.glade:4849 +#: ../sepolicy/sepolicy/sepolicy.glade:5198 +msgid "Delete Modified Users Mapping." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4867 +msgid "" +"Select login user mapping to delete. Login user mapping will be deleted when " +"update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4902 +msgid "Login name" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4983 msgid "More Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4914 +#: ../sepolicy/sepolicy/sepolicy.glade:5010 msgid "Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4973 +#: ../sepolicy/sepolicy/sepolicy.glade:5069 msgid "" "Review the updates you have made before committing them to the system. To " "reset an item, uncheck the checkbox. All items checked will be updated in " "the system when you select update." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5036 +#: ../sepolicy/sepolicy/sepolicy.glade:5132 msgid "Action" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5062 +#: ../sepolicy/sepolicy/sepolicy.glade:5158 msgid "Apply" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5119 -#: ../sepolicy/sepolicy/sepolicy.glade:5360 +#: ../sepolicy/sepolicy/sepolicy.glade:5216 +msgid "" +"Select users mapping to delete.Users mapping will be deleted when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5264 +msgid "SELinux Username" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5349 msgid "" "Add User Roles. SELinux User Roles will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5144 -#: ../sepolicy/sepolicy/sepolicy.glade:5385 +#: ../sepolicy/sepolicy/sepolicy.glade:5374 msgid "SELinux User Name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5258 -#: ../sepolicy/sepolicy/sepolicy.glade:5499 +#: ../sepolicy/sepolicy/sepolicy.glade:5489 msgid "" "Enter MLS/MCS Range for this SELinux User.\n" "s0-s0:c1023" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5289 -#: ../sepolicy/sepolicy/sepolicy.glade:5530 +#: ../sepolicy/sepolicy/sepolicy.glade:5520 msgid "" "Specify the default level that you would like this SELinux user to login " "with. Defaults to s0." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5293 -#: ../sepolicy/sepolicy/sepolicy.glade:5534 +#: ../sepolicy/sepolicy/sepolicy.glade:5524 msgid "Enter Default Level for SELinux User to login with. Default s0" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Disable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Enable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/gui.py:68 msgid "Advanced <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:92 +#: ../sepolicy/sepolicy/gui.py:94 msgid "" "\n" "To change from Disabled to Enforcing mode\n" @@ -4570,512 +4636,536 @@ msgid "" " * Change the system mode to Enforcing\n" msgstr "" -#: ../sepolicy/sepolicy/gui.py:115 +#: ../sepolicy/sepolicy/gui.py:488 #, python-format msgid "%s is not a valid domain" msgstr "" -#: ../sepolicy/sepolicy/gui.py:624 +#: ../sepolicy/sepolicy/gui.py:636 msgid "System Status: Disabled" msgstr "" -#: ../sepolicy/sepolicy/gui.py:722 +#: ../sepolicy/sepolicy/gui.py:734 msgid "Help: Start Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:726 +#: ../sepolicy/sepolicy/gui.py:738 msgid "Help: Booleans Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:732 +#: ../sepolicy/sepolicy/gui.py:744 msgid "Help: Executable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:735 +#: ../sepolicy/sepolicy/gui.py:747 msgid "Help: Writable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:738 +#: ../sepolicy/sepolicy/gui.py:750 msgid "Help: Application Types Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:743 +#: ../sepolicy/sepolicy/gui.py:755 msgid "Help: Outbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:746 +#: ../sepolicy/sepolicy/gui.py:758 msgid "Help: Inbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:752 +#: ../sepolicy/sepolicy/gui.py:764 msgid "Help: Transition from application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:755 +#: ../sepolicy/sepolicy/gui.py:767 msgid "Help: Transition into application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:758 +#: ../sepolicy/sepolicy/gui.py:770 msgid "Help: Transition application file Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:762 +#: ../sepolicy/sepolicy/gui.py:774 msgid "Help: Systems Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:766 +#: ../sepolicy/sepolicy/gui.py:778 msgid "Help: Lockdown Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:770 +#: ../sepolicy/sepolicy/gui.py:782 msgid "Help: Login Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:774 +#: ../sepolicy/sepolicy/gui.py:786 msgid "Help: SELinux User Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:778 +#: ../sepolicy/sepolicy/gui.py:790 msgid "Help: File Equivalence Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:922 ../sepolicy/sepolicy/gui.py:1211 -#: ../sepolicy/sepolicy/gui.py:1644 ../sepolicy/sepolicy/gui.py:1885 -#: ../sepolicy/sepolicy/gui.py:2698 +#: ../sepolicy/sepolicy/gui.py:936 ../sepolicy/sepolicy/gui.py:1227 +#: ../sepolicy/sepolicy/gui.py:1667 ../sepolicy/sepolicy/gui.py:1913 +#: ../sepolicy/sepolicy/gui.py:2692 msgid "More..." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1031 +#: ../sepolicy/sepolicy/gui.py:1044 #, python-format msgid "File path used to enter the '%s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1032 +#: ../sepolicy/sepolicy/gui.py:1045 #, python-format msgid "Files to which the '%s' domain can write." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1033 +#: ../sepolicy/sepolicy/gui.py:1046 #, python-format msgid "Network Ports to which the '%s' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1034 +#: ../sepolicy/sepolicy/gui.py:1047 #, python-format msgid "Network Ports to which the '%s' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1035 +#: ../sepolicy/sepolicy/gui.py:1048 #, python-format msgid "File Types defined for the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1036 +#: ../sepolicy/sepolicy/gui.py:1049 #, python-format msgid "" "Display boolean information that can be used to modify the policy for the " "'%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1037 +#: ../sepolicy/sepolicy/gui.py:1050 #, python-format msgid "Display file type information that can be used by the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1038 +#: ../sepolicy/sepolicy/gui.py:1051 #, python-format msgid "Display network ports to which the '%s' can connect or listen to." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1039 +#: ../sepolicy/sepolicy/gui.py:1052 #, python-format msgid "Application Transitions Into '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1040 +#: ../sepolicy/sepolicy/gui.py:1053 #, python-format msgid "Application Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1041 +#: ../sepolicy/sepolicy/gui.py:1054 #, python-format msgid "File Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1042 +#: ../sepolicy/sepolicy/gui.py:1055 #, python-format msgid "" "Executables which will transition to the '%s', when executing a selected " "domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1043 +#: ../sepolicy/sepolicy/gui.py:1056 #, python-format msgid "" "Executables which will transition to a different domain, when the '%s' " "executes them." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1044 +#: ../sepolicy/sepolicy/gui.py:1057 #, python-format msgid "Files by '%s' will transitions to a different label." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1045 +#: ../sepolicy/sepolicy/gui.py:1058 #, python-format msgid "Display applications that can transition into or out of the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1149 +#: ../sepolicy/sepolicy/gui.py:1166 msgid "MISSING FILE PATH" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1281 ../sepolicy/sepolicy/gui.py:1283 msgid "Boolean section." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 +#: ../sepolicy/sepolicy/gui.py:1281 msgid "To disable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1283 msgid "To enable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1324 +#: ../sepolicy/sepolicy/gui.py:1340 msgid "executable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1327 +#: ../sepolicy/sepolicy/gui.py:1343 msgid "writable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1330 +#: ../sepolicy/sepolicy/gui.py:1346 msgid "application" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1331 +#: ../sepolicy/sepolicy/gui.py:1347 #, python-format -msgid "Add new %s file path for '%s' domains." +msgid "Add new %(TYPE)s file path for '%(DOMAIN)s' domains." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1332 +#: ../sepolicy/sepolicy/gui.py:1348 #, python-format -msgid "Delete modified %s file paths for '%s' domain." +msgid "Delete %(TYPE)s file paths for '%(DOMAIN)s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1333 +#: ../sepolicy/sepolicy/gui.py:1349 #, python-format msgid "" -"Modify selected modified %s file path for '%s' domain. Only bolded items in " -"the list can be selected, this indicates they were modified previously." +"Modify %(TYPE)s file path for '%(DOMAIN)s' domain. Only bolded items in the " +"list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1345 +#: ../sepolicy/sepolicy/gui.py:1361 msgid "connect" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1348 +#: ../sepolicy/sepolicy/gui.py:1364 msgid "listen for inbound connections" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1350 +#: ../sepolicy/sepolicy/gui.py:1366 #, python-format -msgid "Add new port definition to which the '%s' domains is allowed to %s." +msgid "" +"Add new port definition to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1351 +#: ../sepolicy/sepolicy/gui.py:1367 #, python-format msgid "" -"Delete modified port definitions to which the '%s' domain is allowed to %s." +"Delete modified port definitions to which the '%(APP)s' domain is allowed to " +"%(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1352 +#: ../sepolicy/sepolicy/gui.py:1368 #, python-format -msgid "Modify port definitions to which the '%s' domain is allowed to %s." +msgid "" +"Modify port definitions to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1381 +#: ../sepolicy/sepolicy/gui.py:1397 msgid "Add new SELinux User/Role definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1382 +#: ../sepolicy/sepolicy/gui.py:1398 msgid "Delete modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1383 +#: ../sepolicy/sepolicy/gui.py:1399 msgid "Modify selected modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1390 +#: ../sepolicy/sepolicy/gui.py:1406 msgid "Add new Login Mapping definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1391 +#: ../sepolicy/sepolicy/gui.py:1407 msgid "Delete modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1392 +#: ../sepolicy/sepolicy/gui.py:1408 msgid "Modify selected modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1399 +#: ../sepolicy/sepolicy/gui.py:1415 msgid "Add new File Equivalence definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1400 +#: ../sepolicy/sepolicy/gui.py:1416 msgid "Delete modified File Equivalence definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1401 +#: ../sepolicy/sepolicy/gui.py:1417 msgid "" "Modify selected modified File Equivalence definitions. Only bolded items in " "the list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1429 +#: ../sepolicy/sepolicy/gui.py:1445 #, python-format msgid "Boolean %s Allow Rules" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1442 +#: ../sepolicy/sepolicy/gui.py:1458 #, python-format msgid "Add Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1443 +#: ../sepolicy/sepolicy/gui.py:1459 #, python-format msgid "Add Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1448 +#: ../sepolicy/sepolicy/gui.py:1464 #, python-format msgid "" "Add File Labeling for %s. File labels will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1449 ../sepolicy/sepolicy/gui.py:1500 +#: ../sepolicy/sepolicy/gui.py:1465 ../sepolicy/sepolicy/gui.py:1518 #, python-format msgid "Add File Labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1459 +#: ../sepolicy/sepolicy/gui.py:1475 msgid "Add Login Mapping. User Mapping will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1460 +#: ../sepolicy/sepolicy/gui.py:1476 msgid "Add Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1465 +#: ../sepolicy/sepolicy/gui.py:1481 msgid "" "Add SELinux User Role. SELinux user roles will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1466 +#: ../sepolicy/sepolicy/gui.py:1482 msgid "Add SELinux Users" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1473 +#: ../sepolicy/sepolicy/gui.py:1489 msgid "" "Add File Equivalency Mapping. Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1474 +#: ../sepolicy/sepolicy/gui.py:1490 msgid "Add SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1499 +#: ../sepolicy/sepolicy/gui.py:1517 #, python-format msgid "" "Modify File Labeling for %s. File labels will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1566 +#: ../sepolicy/sepolicy/gui.py:1573 +msgid "" +"Modify SELinux User Role. SELinux user roles will be modified when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1574 +msgid "Modify SELinux Users" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1582 +msgid "" +"Modify Login Mapping. Login Mapping will be modified when Update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1583 +msgid "Modify Login Mapping" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1589 msgid "" "Modify File Equivalency Mapping. Mapping will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1567 +#: ../sepolicy/sepolicy/gui.py:1590 msgid "Modify SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1652 +#: ../sepolicy/sepolicy/gui.py:1675 #, python-format msgid "" "Modify Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1653 +#: ../sepolicy/sepolicy/gui.py:1676 #, python-format msgid "Modify Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1866 +#: ../sepolicy/sepolicy/gui.py:1894 #, python-format msgid "The entry '%s' is not a valid path. Paths must begin with a '/'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1879 +#: ../sepolicy/sepolicy/gui.py:1907 msgid "Port number must be between 1 and 65536" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2146 +#: ../sepolicy/sepolicy/gui.py:2183 #, python-format msgid "SELinux name: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2157 +#: ../sepolicy/sepolicy/gui.py:2194 #, python-format msgid "Add file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2159 +#: ../sepolicy/sepolicy/gui.py:2196 #, python-format msgid "Delete file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2161 +#: ../sepolicy/sepolicy/gui.py:2198 #, python-format msgid "Modify file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2165 +#: ../sepolicy/sepolicy/gui.py:2202 #, python-format msgid "File path: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2168 +#: ../sepolicy/sepolicy/gui.py:2205 #, python-format msgid "File class: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2171 ../sepolicy/sepolicy/gui.py:2195 +#: ../sepolicy/sepolicy/gui.py:2208 ../sepolicy/sepolicy/gui.py:2232 #, python-format msgid "SELinux file type: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2180 +#: ../sepolicy/sepolicy/gui.py:2217 #, python-format msgid "Add ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2182 +#: ../sepolicy/sepolicy/gui.py:2219 #, python-format msgid "Delete ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2184 +#: ../sepolicy/sepolicy/gui.py:2221 #, python-format msgid "Modify ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2187 +#: ../sepolicy/sepolicy/gui.py:2224 #, python-format msgid "Network ports: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2190 +#: ../sepolicy/sepolicy/gui.py:2227 #, python-format msgid "Network protocol: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2204 +#: ../sepolicy/sepolicy/gui.py:2241 msgid "Add user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2206 +#: ../sepolicy/sepolicy/gui.py:2243 msgid "Delete user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2208 +#: ../sepolicy/sepolicy/gui.py:2245 msgid "Modify user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2211 +#: ../sepolicy/sepolicy/gui.py:2248 #, python-format msgid "SELinux User : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2216 +#: ../sepolicy/sepolicy/gui.py:2253 #, python-format msgid "Roles: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2220 ../sepolicy/sepolicy/gui.py:2245 +#: ../sepolicy/sepolicy/gui.py:2257 ../sepolicy/sepolicy/gui.py:2282 #, python-format msgid "MLS/MCS Range: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2229 +#: ../sepolicy/sepolicy/gui.py:2266 msgid "Add login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2231 +#: ../sepolicy/sepolicy/gui.py:2268 msgid "Delete login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2233 +#: ../sepolicy/sepolicy/gui.py:2270 msgid "Modify login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2237 +#: ../sepolicy/sepolicy/gui.py:2274 #, python-format -msgid "Linux User : %s" +msgid "Login Name : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2241 +#: ../sepolicy/sepolicy/gui.py:2278 #, python-format msgid "SELinux User: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2254 +#: ../sepolicy/sepolicy/gui.py:2291 msgid "Add file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2256 +#: ../sepolicy/sepolicy/gui.py:2293 msgid "Delete file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2258 +#: ../sepolicy/sepolicy/gui.py:2295 msgid "Modify file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2262 +#: ../sepolicy/sepolicy/gui.py:2299 #, python-format msgid "File path : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2266 +#: ../sepolicy/sepolicy/gui.py:2303 #, python-format msgid "Equivalence: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2369 +#: ../sepolicy/sepolicy/gui.py:2406 #, python-format -msgid "Run restorecon on %s to change its type from %s to the default %s?" +msgid "" +"Run restorecon on %(PATH)s to change its type from %(CUR_CONTEXT)s to the " +"default %(DEF_CONTEXT)s?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2381 +#: ../sepolicy/sepolicy/gui.py:2418 msgid "Update Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2383 +#: ../sepolicy/sepolicy/gui.py:2420 msgid "Revert Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2556 +#: ../sepolicy/sepolicy/gui.py:2547 msgid "System Status: Enforcing" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2558 +#: ../sepolicy/sepolicy/gui.py:2549 msgid "System Status: Permissive" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2749 +#: ../sepolicy/sepolicy/gui.py:2743 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -5085,7 +5175,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "" "You are attempting to close the application without applying your changes.\n" " * To apply changes you have made during this session, click No and " @@ -5094,6 +5184,6 @@ msgid "" "All changes that you have made during this session will be lost." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "Loss of data Dialog" msgstr "" diff --git a/policycoreutils/po/af_ZA.po b/policycoreutils/po/af_ZA.po index fb0b1d9..ce12bbe 100644 --- a/policycoreutils/po/af_ZA.po +++ b/policycoreutils/po/af_ZA.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: Policycoreutils\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-10-10 16:04-0400\n" -"PO-Revision-Date: 2012-03-30 18:14+0000\n" -"Last-Translator: FULL NAME \n" +"POT-Creation-Date: 2014-01-03 16:04-0500\n" +"PO-Revision-Date: 2013-12-20 13:58+0000\n" +"Last-Translator: dwalsh \n" "Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/" "fedora/language/af_ZA/)\n" "Language: af_ZA\n" @@ -87,96 +87,101 @@ msgstr "" msgid "To make this policy package active, execute:" msgstr "" -#: ../semanage/seobject.py:210 +#: ../semanage/seobject/__init__.py:220 msgid "Could not create semanage handle" msgstr "" -#: ../semanage/seobject.py:218 +#: ../semanage/seobject/__init__.py:228 msgid "SELinux policy is not managed or store cannot be accessed." msgstr "" -#: ../semanage/seobject.py:223 +#: ../semanage/seobject/__init__.py:233 msgid "Cannot read policy store." msgstr "" -#: ../semanage/seobject.py:228 +#: ../semanage/seobject/__init__.py:238 msgid "Could not establish semanage connection" msgstr "" -#: ../semanage/seobject.py:233 +#: ../semanage/seobject/__init__.py:243 msgid "Could not test MLS enabled status" msgstr "" -#: ../semanage/seobject.py:239 ../semanage/seobject.py:254 +#: ../semanage/seobject/__init__.py:249 ../semanage/seobject/__init__.py:264 msgid "Not yet implemented" msgstr "" -#: ../semanage/seobject.py:243 +#: ../semanage/seobject/__init__.py:253 msgid "Semanage transaction already in progress" msgstr "" -#: ../semanage/seobject.py:252 +#: ../semanage/seobject/__init__.py:262 msgid "Could not start semanage transaction" msgstr "" -#: ../semanage/seobject.py:264 +#: ../semanage/seobject/__init__.py:274 msgid "Could not commit semanage transaction" msgstr "" -#: ../semanage/seobject.py:269 +#: ../semanage/seobject/__init__.py:279 msgid "Semanage transaction not in progress" msgstr "" -#: ../semanage/seobject.py:281 ../semanage/seobject.py:376 +#: ../semanage/seobject/__init__.py:291 ../semanage/seobject/__init__.py:386 msgid "Could not list SELinux modules" msgstr "" -#: ../semanage/seobject.py:300 +#: ../semanage/seobject/__init__.py:310 msgid "Modules Name" msgstr "" -#: ../semanage/seobject.py:300 ../gui/modulesPage.py:63 +#: ../semanage/seobject/__init__.py:310 ../gui/modulesPage.py:63 msgid "Version" msgstr "" -#: ../semanage/seobject.py:303 ../gui/statusPage.py:75 -#: ../sepolicy/sepolicy/sepolicy.glade:3430 +#: ../semanage/seobject/__init__.py:313 ../gui/statusPage.py:71 +#: ../sepolicy/sepolicy/sepolicy.glade:3431 msgid "Disabled" msgstr "" -#: ../semanage/seobject.py:312 +#: ../semanage/seobject/__init__.py:322 #, python-format msgid "Module does not exists %s " msgstr "" -#: ../semanage/seobject.py:322 +#: ../semanage/seobject/__init__.py:332 #, python-format msgid "Could not disable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:333 +#: ../semanage/seobject/__init__.py:343 #, python-format msgid "Could not enable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:348 +#: ../semanage/seobject/__init__.py:358 #, python-format msgid "Could not remove module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:363 +#: ../semanage/seobject/__init__.py:373 msgid "dontaudit requires either 'on' or 'off'" msgstr "" -#: ../semanage/seobject.py:391 +#: ../semanage/seobject/__init__.py:402 +msgid "Customized Permissive Types" +msgstr "" + +#: ../semanage/seobject/__init__.py:410 msgid "Builtin Permissive Types" msgstr "" -#: ../semanage/seobject.py:401 -msgid "Customized Permissive Types" +#: ../semanage/seobject/__init__.py:419 +#, python-format +msgid "%s is not a domain type" msgstr "" -#: ../semanage/seobject.py:410 +#: ../semanage/seobject/__init__.py:424 msgid "" "The sepolgen python module is required to setup permissive domains.\n" "In some distributions it is included in the policycoreutils-devel patckage.\n" @@ -184,810 +189,825 @@ msgid "" "Or similar for your distro." msgstr "" -#: ../semanage/seobject.py:447 +#: ../semanage/seobject/__init__.py:461 #, python-format msgid "Could not set permissive domain %s (module installation failed)" msgstr "" -#: ../semanage/seobject.py:453 +#: ../semanage/seobject/__init__.py:467 #, python-format msgid "Could not remove permissive domain %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:488 ../semanage/seobject.py:562 -#: ../semanage/seobject.py:608 ../semanage/seobject.py:730 -#: ../semanage/seobject.py:760 ../semanage/seobject.py:827 -#: ../semanage/seobject.py:884 ../semanage/seobject.py:1144 -#: ../semanage/seobject.py:1879 ../semanage/seobject.py:1942 -#: ../semanage/seobject.py:1961 ../semanage/seobject.py:2084 -#: ../semanage/seobject.py:2135 +#: ../semanage/seobject/__init__.py:501 ../semanage/seobject/__init__.py:575 +#: ../semanage/seobject/__init__.py:621 ../semanage/seobject/__init__.py:743 +#: ../semanage/seobject/__init__.py:773 ../semanage/seobject/__init__.py:839 +#: ../semanage/seobject/__init__.py:896 ../semanage/seobject/__init__.py:1156 +#: ../semanage/seobject/__init__.py:1891 ../semanage/seobject/__init__.py:1954 +#: ../semanage/seobject/__init__.py:1973 ../semanage/seobject/__init__.py:2096 +#: ../semanage/seobject/__init__.py:2147 #, python-format msgid "Could not create a key for %s" msgstr "" -#: ../semanage/seobject.py:492 ../semanage/seobject.py:566 -#: ../semanage/seobject.py:612 ../semanage/seobject.py:618 +#: ../semanage/seobject/__init__.py:505 ../semanage/seobject/__init__.py:579 +#: ../semanage/seobject/__init__.py:625 ../semanage/seobject/__init__.py:631 #, python-format msgid "Could not check if login mapping for %s is defined" msgstr "" -#: ../semanage/seobject.py:501 +#: ../semanage/seobject/__init__.py:514 #, python-format msgid "Linux Group %s does not exist" msgstr "" -#: ../semanage/seobject.py:506 +#: ../semanage/seobject/__init__.py:519 #, python-format msgid "Linux User %s does not exist" msgstr "" -#: ../semanage/seobject.py:510 +#: ../semanage/seobject/__init__.py:523 #, python-format msgid "Could not create login mapping for %s" msgstr "" -#: ../semanage/seobject.py:514 ../semanage/seobject.py:775 +#: ../semanage/seobject/__init__.py:527 ../semanage/seobject/__init__.py:788 #, python-format msgid "Could not set name for %s" msgstr "" -#: ../semanage/seobject.py:519 ../semanage/seobject.py:785 +#: ../semanage/seobject/__init__.py:532 ../semanage/seobject/__init__.py:798 #, python-format msgid "Could not set MLS range for %s" msgstr "" -#: ../semanage/seobject.py:523 +#: ../semanage/seobject/__init__.py:536 #, python-format msgid "Could not set SELinux user for %s" msgstr "" -#: ../semanage/seobject.py:527 +#: ../semanage/seobject/__init__.py:540 #, python-format msgid "Could not add login mapping for %s" msgstr "" -#: ../semanage/seobject.py:545 +#: ../semanage/seobject/__init__.py:558 msgid "Requires seuser or serange" msgstr "" -#: ../semanage/seobject.py:568 ../semanage/seobject.py:614 +#: ../semanage/seobject/__init__.py:581 ../semanage/seobject/__init__.py:627 #, python-format msgid "Login mapping for %s is not defined" msgstr "" -#: ../semanage/seobject.py:572 +#: ../semanage/seobject/__init__.py:585 #, python-format msgid "Could not query seuser for %s" msgstr "" -#: ../semanage/seobject.py:586 +#: ../semanage/seobject/__init__.py:599 #, python-format msgid "Could not modify login mapping for %s" msgstr "" -#: ../semanage/seobject.py:620 +#: ../semanage/seobject/__init__.py:633 #, python-format msgid "Login mapping for %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:624 +#: ../semanage/seobject/__init__.py:637 #, python-format msgid "Could not delete login mapping for %s" msgstr "" -#: ../semanage/seobject.py:646 ../semanage/seobject.py:679 -#: ../semanage/seobject.py:927 +#: ../semanage/seobject/__init__.py:659 ../semanage/seobject/__init__.py:692 +#: ../semanage/seobject/__init__.py:939 msgid "Could not list login mappings" msgstr "" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 #: ../gui/system-config-selinux.glade:100 -#: ../sepolicy/sepolicy/sepolicy.glade:1166 -#: ../sepolicy/sepolicy/sepolicy.glade:3155 +#: ../sepolicy/sepolicy/sepolicy.glade:1162 +#: ../sepolicy/sepolicy/sepolicy.glade:3156 msgid "Login Name" msgstr "" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 #: ../gui/system-config-selinux.glade:128 #: ../gui/system-config-selinux.glade:915 -#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:44 -#: ../sepolicy/sepolicy/sepolicy.glade:1192 -#: ../sepolicy/sepolicy/sepolicy.glade:3173 -#: ../sepolicy/sepolicy/sepolicy.glade:3259 +#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:41 +#: ../sepolicy/sepolicy/sepolicy.glade:1188 +#: ../sepolicy/sepolicy/sepolicy.glade:3174 +#: ../sepolicy/sepolicy/sepolicy.glade:3260 +#: ../sepolicy/sepolicy/sepolicy.glade:4915 msgid "SELinux User" msgstr "" -#: ../semanage/seobject.py:707 ../gui/system-config-selinux.glade:156 +#: ../semanage/seobject/__init__.py:720 ../gui/system-config-selinux.glade:156 #: ../gui/system-config-selinux.glade:943 msgid "MLS/MCS Range" msgstr "" -#: ../semanage/seobject.py:707 +#: ../semanage/seobject/__init__.py:720 msgid "Service" msgstr "" -#: ../semanage/seobject.py:733 ../semanage/seobject.py:764 -#: ../semanage/seobject.py:831 ../semanage/seobject.py:888 -#: ../semanage/seobject.py:894 +#: ../semanage/seobject/__init__.py:746 ../semanage/seobject/__init__.py:777 +#: ../semanage/seobject/__init__.py:843 ../semanage/seobject/__init__.py:900 +#: ../semanage/seobject/__init__.py:906 #, python-format msgid "Could not check if SELinux user %s is defined" msgstr "" -#: ../semanage/seobject.py:736 ../semanage/seobject.py:837 -#: ../semanage/seobject.py:900 +#: ../semanage/seobject/__init__.py:749 ../semanage/seobject/__init__.py:849 +#: ../semanage/seobject/__init__.py:912 #, python-format msgid "Could not query user for %s" msgstr "" -#: ../semanage/seobject.py:756 +#: ../semanage/seobject/__init__.py:769 #, python-format msgid "You must add at least one role for %s" msgstr "" -#: ../semanage/seobject.py:771 +#: ../semanage/seobject/__init__.py:784 #, python-format msgid "Could not create SELinux user for %s" msgstr "" -#: ../semanage/seobject.py:780 +#: ../semanage/seobject/__init__.py:793 #, python-format -msgid "Could not add role %s for %s" +msgid "Could not add role %(ROLE)s for %(NAME)s" msgstr "" -#: ../semanage/seobject.py:789 +#: ../semanage/seobject/__init__.py:802 #, python-format msgid "Could not set MLS level for %s" msgstr "" -#: ../semanage/seobject.py:792 +#: ../semanage/seobject/__init__.py:805 #, python-format -msgid "Could not add prefix %s for %s" +msgid "Could not add prefix %(PREFIX)s for %(ROLE)s" msgstr "" -#: ../semanage/seobject.py:795 +#: ../semanage/seobject/__init__.py:808 #, python-format msgid "Could not extract key for %s" msgstr "" -#: ../semanage/seobject.py:799 +#: ../semanage/seobject/__init__.py:812 #, python-format msgid "Could not add SELinux user %s" msgstr "" -#: ../semanage/seobject.py:821 +#: ../semanage/seobject/__init__.py:833 msgid "Requires prefix, roles, level or range" msgstr "" -#: ../semanage/seobject.py:823 +#: ../semanage/seobject/__init__.py:835 msgid "Requires prefix or roles" msgstr "" -#: ../semanage/seobject.py:833 ../semanage/seobject.py:890 +#: ../semanage/seobject/__init__.py:845 ../semanage/seobject/__init__.py:902 #, python-format msgid "SELinux user %s is not defined" msgstr "" -#: ../semanage/seobject.py:862 +#: ../semanage/seobject/__init__.py:874 #, python-format msgid "Could not modify SELinux user %s" msgstr "" -#: ../semanage/seobject.py:896 +#: ../semanage/seobject/__init__.py:908 #, python-format msgid "SELinux user %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:907 +#: ../semanage/seobject/__init__.py:919 #, python-format msgid "Could not delete SELinux user %s" msgstr "" -#: ../semanage/seobject.py:945 +#: ../semanage/seobject/__init__.py:957 msgid "Could not list SELinux users" msgstr "" -#: ../semanage/seobject.py:951 +#: ../semanage/seobject/__init__.py:963 #, python-format msgid "Could not list roles for user %s" msgstr "" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "Labeling" msgstr "" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "MLS/" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "Prefix" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Level" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Range" msgstr "" -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 -#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:59 -#: ../sepolicy/sepolicy/sepolicy.glade:3279 -#: ../sepolicy/sepolicy/sepolicy.glade:5170 -#: ../sepolicy/sepolicy/sepolicy.glade:5411 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 +#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:56 +#: ../sepolicy/sepolicy/sepolicy.glade:3280 +#: ../sepolicy/sepolicy/sepolicy.glade:5251 +#: ../sepolicy/sepolicy/sepolicy.glade:5400 msgid "SELinux Roles" msgstr "" -#: ../semanage/seobject.py:1002 +#: ../semanage/seobject/__init__.py:1014 msgid "Protocol udp or tcp is required" msgstr "" -#: ../semanage/seobject.py:1004 +#: ../semanage/seobject/__init__.py:1016 msgid "Port is required" msgstr "" -#: ../semanage/seobject.py:1014 +#: ../semanage/seobject/__init__.py:1026 msgid "Invalid Port" msgstr "" -#: ../semanage/seobject.py:1018 +#: ../semanage/seobject/__init__.py:1030 #, python-format -msgid "Could not create a key for %s/%s" +msgid "Could not create a key for %(PROTOTYPE)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1029 +#: ../semanage/seobject/__init__.py:1041 msgid "Type is required" msgstr "" -#: ../semanage/seobject.py:1032 ../semanage/seobject.py:1096 -#: ../semanage/seobject.py:1873 +#: ../semanage/seobject/__init__.py:1044 ../semanage/seobject/__init__.py:1108 +#: ../semanage/seobject/__init__.py:1885 #, python-format msgid "Type %s is invalid, must be a port type" msgstr "" -#: ../semanage/seobject.py:1040 ../semanage/seobject.py:1102 -#: ../semanage/seobject.py:1157 ../semanage/seobject.py:1163 +#: ../semanage/seobject/__init__.py:1052 ../semanage/seobject/__init__.py:1169 +#: ../semanage/seobject/__init__.py:1175 #, python-format -msgid "Could not check if port %s/%s is defined" +msgid "Could not check if port %(PROTOCOL)s/%(PORT)s is defined" msgstr "" -#: ../semanage/seobject.py:1042 +#: ../semanage/seobject/__init__.py:1054 #, python-format -msgid "Port %s/%s already defined" +msgid "Port %(PROTOCOL)s/%(PORT)s already defined" msgstr "" -#: ../semanage/seobject.py:1046 +#: ../semanage/seobject/__init__.py:1058 #, python-format -msgid "Could not create port for %s/%s" +msgid "Could not create port for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1052 +#: ../semanage/seobject/__init__.py:1064 #, python-format -msgid "Could not create context for %s/%s" +msgid "Could not create context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1056 +#: ../semanage/seobject/__init__.py:1068 #, python-format -msgid "Could not set user in port context for %s/%s" +msgid "Could not set user in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1060 +#: ../semanage/seobject/__init__.py:1072 #, python-format -msgid "Could not set role in port context for %s/%s" +msgid "Could not set role in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1064 +#: ../semanage/seobject/__init__.py:1076 #, python-format -msgid "Could not set type in port context for %s/%s" +msgid "Could not set type in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1069 +#: ../semanage/seobject/__init__.py:1081 #, python-format -msgid "Could not set mls fields in port context for %s/%s" +msgid "Could not set mls fields in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1073 +#: ../semanage/seobject/__init__.py:1085 #, python-format -msgid "Could not set port context for %s/%s" +msgid "Could not set port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1077 +#: ../semanage/seobject/__init__.py:1089 #, python-format -msgid "Could not add port %s/%s" +msgid "Could not add port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1091 ../semanage/seobject.py:1367 -#: ../semanage/seobject.py:1566 +#: ../semanage/seobject/__init__.py:1103 ../semanage/seobject/__init__.py:1379 +#: ../semanage/seobject/__init__.py:1578 msgid "Requires setype or serange" msgstr "" -#: ../semanage/seobject.py:1093 +#: ../semanage/seobject/__init__.py:1105 msgid "Requires setype" msgstr "" -#: ../semanage/seobject.py:1104 ../semanage/seobject.py:1159 +#: ../semanage/seobject/__init__.py:1114 +#, python-format +msgid "Could not check if port @%(PROTOCOL)s/%(PORT)s is defined" +msgstr "" + +#: ../semanage/seobject/__init__.py:1116 #, python-format -msgid "Port %s/%s is not defined" +msgid "Port @%(PROTOCOL)s/%(PORT)s is not defined" msgstr "" -#: ../semanage/seobject.py:1108 +#: ../semanage/seobject/__init__.py:1120 #, python-format -msgid "Could not query port %s/%s" +msgid "Could not query port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1119 +#: ../semanage/seobject/__init__.py:1131 #, python-format -msgid "Could not modify port %s/%s" +msgid "Could not modify port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1132 +#: ../semanage/seobject/__init__.py:1144 msgid "Could not list the ports" msgstr "" -#: ../semanage/seobject.py:1148 +#: ../semanage/seobject/__init__.py:1160 #, python-format msgid "Could not delete the port %s" msgstr "" -#: ../semanage/seobject.py:1165 +#: ../semanage/seobject/__init__.py:1171 #, python-format -msgid "Port %s/%s is defined in policy, cannot be deleted" +msgid "Port %(PROTOCOL)s/%(PORT)s is not defined" msgstr "" -#: ../semanage/seobject.py:1169 +#: ../semanage/seobject/__init__.py:1177 #, python-format -msgid "Could not delete port %s/%s" +msgid "Port %(PROTOCOL)s/%(PORT)s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1185 ../semanage/seobject.py:1207 +#: ../semanage/seobject/__init__.py:1181 +#, python-format +msgid "Could not delete port %(PROTOCOL)s/%(PORT)s" +msgstr "" + +#: ../semanage/seobject/__init__.py:1197 ../semanage/seobject/__init__.py:1219 msgid "Could not list ports" msgstr "" -#: ../semanage/seobject.py:1246 ../sepolicy/sepolicy/sepolicy.glade:2675 -#: ../sepolicy/sepolicy/sepolicy.glade:2773 -#: ../sepolicy/sepolicy/sepolicy.glade:4687 +#: ../semanage/seobject/__init__.py:1258 +#: ../sepolicy/sepolicy/sepolicy.glade:2676 +#: ../sepolicy/sepolicy/sepolicy.glade:2774 +#: ../sepolicy/sepolicy/sepolicy.glade:4648 msgid "SELinux Port Type" msgstr "" -#: ../semanage/seobject.py:1246 +#: ../semanage/seobject/__init__.py:1258 msgid "Proto" msgstr "" -#: ../semanage/seobject.py:1246 ../gui/system-config-selinux.glade:335 -#: ../sepolicy/sepolicy/sepolicy.glade:1417 +#: ../semanage/seobject/__init__.py:1258 +#: ../gui/system-config-selinux.glade:335 +#: ../sepolicy/sepolicy/sepolicy.glade:1413 msgid "Port Number" msgstr "" -#: ../semanage/seobject.py:1270 +#: ../semanage/seobject/__init__.py:1282 msgid "Node Address is required" msgstr "" -#: ../semanage/seobject.py:1285 +#: ../semanage/seobject/__init__.py:1297 msgid "Unknown or missing protocol" msgstr "" -#: ../semanage/seobject.py:1299 +#: ../semanage/seobject/__init__.py:1311 msgid "SELinux node type is required" msgstr "" -#: ../semanage/seobject.py:1302 ../semanage/seobject.py:1370 +#: ../semanage/seobject/__init__.py:1314 ../semanage/seobject/__init__.py:1382 #, python-format msgid "Type %s is invalid, must be a node type" msgstr "" -#: ../semanage/seobject.py:1306 ../semanage/seobject.py:1374 -#: ../semanage/seobject.py:1410 ../semanage/seobject.py:1508 -#: ../semanage/seobject.py:1570 ../semanage/seobject.py:1604 -#: ../semanage/seobject.py:1818 +#: ../semanage/seobject/__init__.py:1318 ../semanage/seobject/__init__.py:1386 +#: ../semanage/seobject/__init__.py:1422 ../semanage/seobject/__init__.py:1520 +#: ../semanage/seobject/__init__.py:1582 ../semanage/seobject/__init__.py:1616 +#: ../semanage/seobject/__init__.py:1830 #, python-format msgid "Could not create key for %s" msgstr "" -#: ../semanage/seobject.py:1308 ../semanage/seobject.py:1378 -#: ../semanage/seobject.py:1414 ../semanage/seobject.py:1420 +#: ../semanage/seobject/__init__.py:1320 ../semanage/seobject/__init__.py:1390 +#: ../semanage/seobject/__init__.py:1426 ../semanage/seobject/__init__.py:1432 #, python-format msgid "Could not check if addr %s is defined" msgstr "" -#: ../semanage/seobject.py:1317 +#: ../semanage/seobject/__init__.py:1329 #, python-format msgid "Could not create addr for %s" msgstr "" -#: ../semanage/seobject.py:1323 ../semanage/seobject.py:1524 -#: ../semanage/seobject.py:1767 +#: ../semanage/seobject/__init__.py:1335 ../semanage/seobject/__init__.py:1536 +#: ../semanage/seobject/__init__.py:1779 #, python-format msgid "Could not create context for %s" msgstr "" -#: ../semanage/seobject.py:1327 +#: ../semanage/seobject/__init__.py:1339 #, python-format msgid "Could not set mask for %s" msgstr "" -#: ../semanage/seobject.py:1331 +#: ../semanage/seobject/__init__.py:1343 #, python-format msgid "Could not set user in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1335 +#: ../semanage/seobject/__init__.py:1347 #, python-format msgid "Could not set role in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1339 +#: ../semanage/seobject/__init__.py:1351 #, python-format msgid "Could not set type in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1344 +#: ../semanage/seobject/__init__.py:1356 #, python-format msgid "Could not set mls fields in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1348 +#: ../semanage/seobject/__init__.py:1360 #, python-format msgid "Could not set addr context for %s" msgstr "" -#: ../semanage/seobject.py:1352 +#: ../semanage/seobject/__init__.py:1364 #, python-format msgid "Could not add addr %s" msgstr "" -#: ../semanage/seobject.py:1380 ../semanage/seobject.py:1416 +#: ../semanage/seobject/__init__.py:1392 ../semanage/seobject/__init__.py:1428 #, python-format msgid "Addr %s is not defined" msgstr "" -#: ../semanage/seobject.py:1384 +#: ../semanage/seobject/__init__.py:1396 #, python-format msgid "Could not query addr %s" msgstr "" -#: ../semanage/seobject.py:1394 +#: ../semanage/seobject/__init__.py:1406 #, python-format msgid "Could not modify addr %s" msgstr "" -#: ../semanage/seobject.py:1422 +#: ../semanage/seobject/__init__.py:1434 #, python-format msgid "Addr %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1426 +#: ../semanage/seobject/__init__.py:1438 #, python-format msgid "Could not delete addr %s" msgstr "" -#: ../semanage/seobject.py:1438 +#: ../semanage/seobject/__init__.py:1450 msgid "Could not deleteall node mappings" msgstr "" -#: ../semanage/seobject.py:1452 +#: ../semanage/seobject/__init__.py:1464 msgid "Could not list addrs" msgstr "" -#: ../semanage/seobject.py:1504 ../semanage/seobject.py:1811 +#: ../semanage/seobject/__init__.py:1516 ../semanage/seobject/__init__.py:1823 msgid "SELinux Type is required" msgstr "" -#: ../semanage/seobject.py:1512 ../semanage/seobject.py:1574 -#: ../semanage/seobject.py:1608 ../semanage/seobject.py:1614 +#: ../semanage/seobject/__init__.py:1524 ../semanage/seobject/__init__.py:1586 +#: ../semanage/seobject/__init__.py:1620 ../semanage/seobject/__init__.py:1626 #, python-format msgid "Could not check if interface %s is defined" msgstr "" -#: ../semanage/seobject.py:1519 +#: ../semanage/seobject/__init__.py:1531 #, python-format msgid "Could not create interface for %s" msgstr "" -#: ../semanage/seobject.py:1528 +#: ../semanage/seobject/__init__.py:1540 #, python-format msgid "Could not set user in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1532 +#: ../semanage/seobject/__init__.py:1544 #, python-format msgid "Could not set role in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1536 +#: ../semanage/seobject/__init__.py:1548 #, python-format msgid "Could not set type in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1541 +#: ../semanage/seobject/__init__.py:1553 #, python-format msgid "Could not set mls fields in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1545 +#: ../semanage/seobject/__init__.py:1557 #, python-format msgid "Could not set interface context for %s" msgstr "" -#: ../semanage/seobject.py:1549 +#: ../semanage/seobject/__init__.py:1561 #, python-format msgid "Could not set message context for %s" msgstr "" -#: ../semanage/seobject.py:1553 +#: ../semanage/seobject/__init__.py:1565 #, python-format msgid "Could not add interface %s" msgstr "" -#: ../semanage/seobject.py:1576 ../semanage/seobject.py:1610 +#: ../semanage/seobject/__init__.py:1588 ../semanage/seobject/__init__.py:1622 #, python-format msgid "Interface %s is not defined" msgstr "" -#: ../semanage/seobject.py:1580 +#: ../semanage/seobject/__init__.py:1592 #, python-format msgid "Could not query interface %s" msgstr "" -#: ../semanage/seobject.py:1591 +#: ../semanage/seobject/__init__.py:1603 #, python-format msgid "Could not modify interface %s" msgstr "" -#: ../semanage/seobject.py:1616 +#: ../semanage/seobject/__init__.py:1628 #, python-format msgid "Interface %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1620 +#: ../semanage/seobject/__init__.py:1632 #, python-format msgid "Could not delete interface %s" msgstr "" -#: ../semanage/seobject.py:1632 +#: ../semanage/seobject/__init__.py:1644 msgid "Could not delete all interface mappings" msgstr "" -#: ../semanage/seobject.py:1646 +#: ../semanage/seobject/__init__.py:1658 msgid "Could not list interfaces" msgstr "" -#: ../semanage/seobject.py:1671 +#: ../semanage/seobject/__init__.py:1683 msgid "SELinux Interface" msgstr "" -#: ../semanage/seobject.py:1671 ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:1683 ../semanage/seobject/__init__.py:2045 msgid "Context" msgstr "" -#: ../semanage/seobject.py:1738 +#: ../semanage/seobject/__init__.py:1750 #, python-format msgid "Target %s is not valid. Target is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1741 +#: ../semanage/seobject/__init__.py:1753 #, python-format -msgid "Substiture %s is not valid. Substitute is not allowed to end with '/'" +msgid "Substitute %s is not valid. Substitute is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1744 +#: ../semanage/seobject/__init__.py:1756 #, python-format msgid "Equivalence class for %s already exists" msgstr "" -#: ../semanage/seobject.py:1750 +#: ../semanage/seobject/__init__.py:1762 #, python-format -msgid "File spec %s conflicts with equivalency rule '%s %s'" +msgid "" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'" msgstr "" -#: ../semanage/seobject.py:1759 +#: ../semanage/seobject/__init__.py:1771 #, python-format msgid "Equivalence class for %s does not exists" msgstr "" -#: ../semanage/seobject.py:1773 +#: ../semanage/seobject/__init__.py:1785 #, python-format msgid "Could not set user in file context for %s" msgstr "" -#: ../semanage/seobject.py:1777 +#: ../semanage/seobject/__init__.py:1789 #, python-format msgid "Could not set role in file context for %s" msgstr "" -#: ../semanage/seobject.py:1782 ../semanage/seobject.py:1848 +#: ../semanage/seobject/__init__.py:1794 ../semanage/seobject/__init__.py:1860 #, python-format msgid "Could not set mls fields in file context for %s" msgstr "" -#: ../semanage/seobject.py:1788 +#: ../semanage/seobject/__init__.py:1800 msgid "Invalid file specification" msgstr "" -#: ../semanage/seobject.py:1790 +#: ../semanage/seobject/__init__.py:1802 msgid "File specification can not include spaces" msgstr "" -#: ../semanage/seobject.py:1795 +#: ../semanage/seobject/__init__.py:1807 #, python-format msgid "" -"File spec %s conflicts with equivalency rule '%s %s'; Try adding '%s' instead" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'; " +"Try adding '%(DEST1)s' instead" msgstr "" -#: ../semanage/seobject.py:1814 +#: ../semanage/seobject/__init__.py:1826 #, python-format msgid "Type %s is invalid, must be a file or device type" msgstr "" -#: ../semanage/seobject.py:1822 ../semanage/seobject.py:1827 -#: ../semanage/seobject.py:1883 ../semanage/seobject.py:1965 -#: ../semanage/seobject.py:1969 +#: ../semanage/seobject/__init__.py:1834 ../semanage/seobject/__init__.py:1839 +#: ../semanage/seobject/__init__.py:1895 ../semanage/seobject/__init__.py:1977 +#: ../semanage/seobject/__init__.py:1981 #, python-format msgid "Could not check if file context for %s is defined" msgstr "" -#: ../semanage/seobject.py:1835 +#: ../semanage/seobject/__init__.py:1847 #, python-format msgid "Could not create file context for %s" msgstr "" -#: ../semanage/seobject.py:1843 +#: ../semanage/seobject/__init__.py:1855 #, python-format msgid "Could not set type in file context for %s" msgstr "" -#: ../semanage/seobject.py:1851 ../semanage/seobject.py:1911 -#: ../semanage/seobject.py:1915 +#: ../semanage/seobject/__init__.py:1863 ../semanage/seobject/__init__.py:1923 +#: ../semanage/seobject/__init__.py:1927 #, python-format msgid "Could not set file context for %s" msgstr "" -#: ../semanage/seobject.py:1857 +#: ../semanage/seobject/__init__.py:1869 #, python-format msgid "Could not add file context for %s" msgstr "" -#: ../semanage/seobject.py:1871 +#: ../semanage/seobject/__init__.py:1883 msgid "Requires setype, serange or seuser" msgstr "" -#: ../semanage/seobject.py:1887 ../semanage/seobject.py:1973 +#: ../semanage/seobject/__init__.py:1899 ../semanage/seobject/__init__.py:1985 #, python-format msgid "File context for %s is not defined" msgstr "" -#: ../semanage/seobject.py:1893 +#: ../semanage/seobject/__init__.py:1905 #, python-format msgid "Could not query file context for %s" msgstr "" -#: ../semanage/seobject.py:1919 +#: ../semanage/seobject/__init__.py:1931 #, python-format msgid "Could not modify file context for %s" msgstr "" -#: ../semanage/seobject.py:1932 +#: ../semanage/seobject/__init__.py:1944 msgid "Could not list the file contexts" msgstr "" -#: ../semanage/seobject.py:1946 +#: ../semanage/seobject/__init__.py:1958 #, python-format msgid "Could not delete the file context %s" msgstr "" -#: ../semanage/seobject.py:1971 +#: ../semanage/seobject/__init__.py:1983 #, python-format msgid "File context for %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1977 +#: ../semanage/seobject/__init__.py:1989 #, python-format msgid "Could not delete file context for %s" msgstr "" -#: ../semanage/seobject.py:1992 +#: ../semanage/seobject/__init__.py:2004 msgid "Could not list file contexts" msgstr "" -#: ../semanage/seobject.py:1996 +#: ../semanage/seobject/__init__.py:2008 msgid "Could not list local file contexts" msgstr "" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "SELinux fcontext" msgstr "" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "type" msgstr "" -#: ../semanage/seobject.py:2046 +#: ../semanage/seobject/__init__.py:2058 msgid "" "\n" "SELinux Distribution fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2051 +#: ../semanage/seobject/__init__.py:2063 msgid "" "\n" "SELinux Local fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2087 ../semanage/seobject.py:2138 -#: ../semanage/seobject.py:2144 +#: ../semanage/seobject/__init__.py:2099 ../semanage/seobject/__init__.py:2150 +#: ../semanage/seobject/__init__.py:2156 #, python-format msgid "Could not check if boolean %s is defined" msgstr "" -#: ../semanage/seobject.py:2089 ../semanage/seobject.py:2140 +#: ../semanage/seobject/__init__.py:2101 ../semanage/seobject/__init__.py:2152 #, python-format msgid "Boolean %s is not defined" msgstr "" -#: ../semanage/seobject.py:2093 +#: ../semanage/seobject/__init__.py:2105 #, python-format msgid "Could not query file context %s" msgstr "" -#: ../semanage/seobject.py:2098 +#: ../semanage/seobject/__init__.py:2110 #, python-format msgid "You must specify one of the following values: %s" msgstr "" -#: ../semanage/seobject.py:2103 +#: ../semanage/seobject/__init__.py:2115 #, python-format msgid "Could not set active value of boolean %s" msgstr "" -#: ../semanage/seobject.py:2106 +#: ../semanage/seobject/__init__.py:2118 #, python-format msgid "Could not modify boolean %s" msgstr "" -#: ../semanage/seobject.py:2122 +#: ../semanage/seobject/__init__.py:2134 #, python-format -msgid "Bad format %s: Record %s" +msgid "Bad format %(BOOLNAME)s: Record %(VALUE)s" msgstr "" -#: ../semanage/seobject.py:2146 +#: ../semanage/seobject/__init__.py:2158 #, python-format msgid "Boolean %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:2150 +#: ../semanage/seobject/__init__.py:2162 #, python-format msgid "Could not delete boolean %s" msgstr "" -#: ../semanage/seobject.py:2162 ../semanage/seobject.py:2179 +#: ../semanage/seobject/__init__.py:2174 ../semanage/seobject/__init__.py:2191 msgid "Could not list booleans" msgstr "" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "off" msgstr "" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "on" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "SELinux boolean" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "State" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "Default" msgstr "" -#: ../semanage/seobject.py:2228 ../gui/polgen.glade:113 -#: ../gui/polgengui.py:274 ../sepolicy/sepolicy/sepolicy.glade:2147 -#: ../sepolicy/sepolicy/sepolicy.glade:2517 -#: ../sepolicy/sepolicy/sepolicy.glade:5021 +#: ../semanage/seobject/__init__.py:2240 ../gui/polgen.glade:113 +#: ../gui/polgengui.py:260 ../sepolicy/sepolicy/sepolicy.glade:2148 +#: ../sepolicy/sepolicy/sepolicy.glade:2518 +#: ../sepolicy/sepolicy/sepolicy.glade:5117 msgid "Description" msgstr "" @@ -1353,66 +1373,66 @@ msgstr "" msgid "Options Error %s " msgstr "" -#: ../gui/booleansPage.py:194 ../gui/system-config-selinux.glade:1706 +#: ../gui/booleansPage.py:186 ../gui/system-config-selinux.glade:1706 msgid "Boolean" msgstr "" -#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:162 +#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:186 msgid "all" msgstr "" -#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:164 +#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:188 #: ../gui/system-config-selinux.glade:1615 #: ../gui/system-config-selinux.glade:1820 #: ../gui/system-config-selinux.glade:2437 msgid "Customized" msgstr "" -#: ../gui/fcontextPage.py:64 ../gui/system-config-selinux.glade:1911 +#: ../gui/fcontextPage.py:63 ../gui/system-config-selinux.glade:1911 msgid "File Labeling" msgstr "" -#: ../gui/fcontextPage.py:74 +#: ../gui/fcontextPage.py:73 msgid "" "File\n" "Specification" msgstr "" -#: ../gui/fcontextPage.py:81 +#: ../gui/fcontextPage.py:80 msgid "" "Selinux\n" "File Type" msgstr "" -#: ../gui/fcontextPage.py:88 +#: ../gui/fcontextPage.py:87 msgid "" "File\n" "Type" msgstr "" -#: ../gui/loginsPage.py:48 ../gui/system-config-selinux.glade:2098 +#: ../gui/loginsPage.py:45 ../gui/system-config-selinux.glade:2098 msgid "User Mapping" msgstr "" -#: ../gui/loginsPage.py:52 +#: ../gui/loginsPage.py:49 msgid "" "Login\n" "Name" msgstr "" -#: ../gui/loginsPage.py:56 ../gui/usersPage.py:50 +#: ../gui/loginsPage.py:53 ../gui/usersPage.py:47 msgid "" "SELinux\n" "User" msgstr "" -#: ../gui/loginsPage.py:59 ../gui/usersPage.py:55 +#: ../gui/loginsPage.py:56 ../gui/usersPage.py:52 msgid "" "MLS/\n" "MCS Range" msgstr "" -#: ../gui/loginsPage.py:133 +#: ../gui/loginsPage.py:130 #, python-format msgid "Login '%s' is required" msgstr "" @@ -1425,15 +1445,15 @@ msgstr "" msgid "Module Name" msgstr "" -#: ../gui/modulesPage.py:135 +#: ../gui/modulesPage.py:131 msgid "Disable Audit" msgstr "" -#: ../gui/modulesPage.py:138 ../gui/system-config-selinux.glade:2662 +#: ../gui/modulesPage.py:134 ../gui/system-config-selinux.glade:2662 msgid "Enable Audit" msgstr "" -#: ../gui/modulesPage.py:163 +#: ../gui/modulesPage.py:161 msgid "Load Policy Module" msgstr "" @@ -1472,7 +1492,7 @@ msgstr "" msgid "Applications" msgstr "" -#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:130 +#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:132 msgid "Standard Init Daemon" msgstr "" @@ -1482,7 +1502,7 @@ msgid "" "requires a script in /etc/rc.d/init.d" msgstr "" -#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:131 +#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:133 msgid "DBUS System Daemon" msgstr "" @@ -1494,7 +1514,7 @@ msgstr "" msgid "Internet Services Daemon are daemons started by xinetd" msgstr "" -#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:133 +#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:135 msgid "Web Application/Script (CGI)" msgstr "" @@ -1503,7 +1523,7 @@ msgid "" "Web Applications/Script (CGI) CGI scripts started by the web server (apache)" msgstr "" -#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:135 +#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:137 msgid "User Application" msgstr "" @@ -1513,7 +1533,7 @@ msgid "" "started by a user" msgstr "" -#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:134 +#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:136 msgid "Sandbox" msgstr "" @@ -1588,8 +1608,8 @@ msgstr "" msgid "Enter name of application or user role:" msgstr "" -#: ../gui/polgen.glade:728 ../gui/polgengui.py:272 -#: ../sepolicy/sepolicy/sepolicy.glade:2182 +#: ../gui/polgen.glade:728 ../gui/polgengui.py:258 +#: ../sepolicy/sepolicy/sepolicy.glade:2183 msgid "Name" msgstr "" @@ -1673,7 +1693,7 @@ msgid "TCP Ports" msgstr "" #: ../gui/polgen.glade:1223 ../gui/polgen.glade:1390 ../gui/polgen.glade:1589 -#: ../gui/polgen.glade:1698 ../sepolicy/sepolicy/sepolicy.glade:4314 +#: ../gui/polgen.glade:1698 msgid "All" msgstr "" @@ -1804,118 +1824,118 @@ msgstr "" msgid "Policy Directory" msgstr "" -#: ../gui/polgengui.py:282 +#: ../gui/polgengui.py:268 msgid "Role" msgstr "" -#: ../gui/polgengui.py:289 +#: ../gui/polgengui.py:275 msgid "Existing_User" msgstr "" -#: ../gui/polgengui.py:303 ../gui/polgengui.py:311 ../gui/polgengui.py:325 +#: ../gui/polgengui.py:289 ../gui/polgengui.py:297 ../gui/polgengui.py:311 msgid "Application" msgstr "" -#: ../gui/polgengui.py:370 +#: ../gui/polgengui.py:356 #, python-format msgid "%s must be a directory" msgstr "" -#: ../gui/polgengui.py:430 ../gui/polgengui.py:711 +#: ../gui/polgengui.py:416 ../gui/polgengui.py:697 msgid "You must select a user" msgstr "" -#: ../gui/polgengui.py:560 +#: ../gui/polgengui.py:546 msgid "Select executable file to be confined." msgstr "" -#: ../gui/polgengui.py:571 +#: ../gui/polgengui.py:557 msgid "Select init script file to be confined." msgstr "" -#: ../gui/polgengui.py:581 +#: ../gui/polgengui.py:567 msgid "Select file(s) that confined application creates or writes" msgstr "" -#: ../gui/polgengui.py:588 +#: ../gui/polgengui.py:574 msgid "Select directory(s) that the confined application owns and writes into" msgstr "" -#: ../gui/polgengui.py:650 +#: ../gui/polgengui.py:636 msgid "Select directory to generate policy files in" msgstr "" -#: ../gui/polgengui.py:667 +#: ../gui/polgengui.py:653 #, python-format msgid "" "Type %s_t already defined in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:667 ../gui/polgengui.py:671 +#: ../gui/polgengui.py:653 ../gui/polgengui.py:657 msgid "Verify Name" msgstr "" -#: ../gui/polgengui.py:671 +#: ../gui/polgengui.py:657 #, python-format msgid "" "Module %s.pp already loaded in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:717 +#: ../gui/polgengui.py:703 msgid "" "You must add a name made up of letters and numbers and containing no spaces." msgstr "" -#: ../gui/polgengui.py:731 +#: ../gui/polgengui.py:717 msgid "You must enter a executable" msgstr "" -#: ../gui/polgengui.py:756 ../gui/system-config-selinux.py:180 +#: ../gui/polgengui.py:742 ../gui/system-config-selinux.py:180 msgid "Configue SELinux" msgstr "" -#: ../gui/portsPage.py:51 ../gui/system-config-selinux.glade:2528 +#: ../gui/portsPage.py:48 ../gui/system-config-selinux.glade:2528 msgid "Network Port" msgstr "" -#: ../gui/portsPage.py:85 +#: ../gui/portsPage.py:82 msgid "" "SELinux Port\n" "Type" msgstr "" -#: ../gui/portsPage.py:91 ../gui/system-config-selinux.glade:363 -#: ../sepolicy/sepolicy/sepolicy.glade:1443 -#: ../sepolicy/sepolicy/sepolicy.glade:2657 -#: ../sepolicy/sepolicy/sepolicy.glade:2755 -#: ../sepolicy/sepolicy/sepolicy.glade:4672 +#: ../gui/portsPage.py:88 ../gui/system-config-selinux.glade:363 +#: ../sepolicy/sepolicy/sepolicy.glade:1439 +#: ../sepolicy/sepolicy/sepolicy.glade:2658 +#: ../sepolicy/sepolicy/sepolicy.glade:2756 +#: ../sepolicy/sepolicy/sepolicy.glade:4633 msgid "Protocol" msgstr "" -#: ../gui/portsPage.py:96 ../gui/system-config-selinux.glade:479 +#: ../gui/portsPage.py:93 ../gui/system-config-selinux.glade:479 msgid "" "MLS/MCS\n" "Level" msgstr "" -#: ../gui/portsPage.py:101 ../sepolicy/sepolicy/sepolicy.glade:2638 -#: ../sepolicy/sepolicy/sepolicy.glade:2737 -#: ../sepolicy/sepolicy/sepolicy.glade:4658 +#: ../gui/portsPage.py:98 ../sepolicy/sepolicy/sepolicy.glade:2639 +#: ../sepolicy/sepolicy/sepolicy.glade:2738 +#: ../sepolicy/sepolicy/sepolicy.glade:4619 msgid "Port" msgstr "" -#: ../gui/portsPage.py:207 +#: ../gui/portsPage.py:205 #, python-format msgid "Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 " msgstr "" -#: ../gui/portsPage.py:252 +#: ../gui/portsPage.py:258 msgid "List View" msgstr "" -#: ../gui/portsPage.py:255 ../gui/system-config-selinux.glade:2419 +#: ../gui/portsPage.py:261 ../gui/system-config-selinux.glade:2419 msgid "Group View" msgstr "" @@ -1929,40 +1949,40 @@ msgstr "" msgid "Delete %s" msgstr "" -#: ../gui/semanagePage.py:134 +#: ../gui/semanagePage.py:158 #, python-format msgid "Add %s" msgstr "" -#: ../gui/semanagePage.py:148 +#: ../gui/semanagePage.py:172 #, python-format msgid "Modify %s" msgstr "" -#: ../gui/statusPage.py:69 ../gui/system-config-selinux.glade:2819 -#: ../sepolicy/sepolicy/sepolicy.glade:3413 -#: ../sepolicy/sepolicy/sepolicy.glade:3486 +#: ../gui/statusPage.py:65 ../gui/system-config-selinux.glade:2819 +#: ../sepolicy/sepolicy/sepolicy.glade:3414 +#: ../sepolicy/sepolicy/sepolicy.glade:3487 msgid "Permissive" msgstr "" -#: ../gui/statusPage.py:70 ../gui/system-config-selinux.glade:2837 -#: ../sepolicy/sepolicy/sepolicy.glade:3394 -#: ../sepolicy/sepolicy/sepolicy.glade:3468 +#: ../gui/statusPage.py:66 ../gui/system-config-selinux.glade:2837 +#: ../sepolicy/sepolicy/sepolicy.glade:3395 +#: ../sepolicy/sepolicy/sepolicy.glade:3469 msgid "Enforcing" msgstr "" -#: ../gui/statusPage.py:94 +#: ../gui/statusPage.py:90 msgid "Status" msgstr "" -#: ../gui/statusPage.py:133 ../sepolicy/sepolicy/gui.py:2619 +#: ../gui/statusPage.py:129 ../sepolicy/sepolicy/gui.py:2613 msgid "" "Changing the policy type will cause a relabel of the entire file system on " "the next boot. Relabeling takes a long time depending on the size of the " "file system. Do you wish to continue?" msgstr "" -#: ../gui/statusPage.py:147 +#: ../gui/statusPage.py:143 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -1972,7 +1992,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../gui/statusPage.py:152 ../sepolicy/sepolicy/gui.py:2753 +#: ../gui/statusPage.py:148 ../sepolicy/sepolicy/gui.py:2747 msgid "" "Changing to SELinux enabled will cause a relabel of the entire file system " "on the next boot. Relabeling takes a long time depending on the size of the " @@ -2024,8 +2044,8 @@ msgid "" msgstr "" #: ../gui/system-config-selinux.glade:773 -#: ../sepolicy/sepolicy/sepolicy.glade:729 -#: ../sepolicy/sepolicy/sepolicy.glade:1489 +#: ../sepolicy/sepolicy/sepolicy.glade:711 +#: ../sepolicy/sepolicy/sepolicy.glade:1485 msgid "MLS" msgstr "" @@ -2038,7 +2058,7 @@ msgid "SELinux Administration" msgstr "" #: ../gui/system-config-selinux.glade:1122 -#: ../sepolicy/sepolicy/sepolicy.glade:4162 +#: ../sepolicy/sepolicy/sepolicy.glade:4163 msgid "Add" msgstr "" @@ -2108,7 +2128,7 @@ msgstr "" #: ../gui/system-config-selinux.glade:2467 #: ../gui/system-config-selinux.glade:2692 #: ../gui/system-config-selinux.glade:2867 -#: ../sepolicy/sepolicy/sepolicy.glade:1992 +#: ../sepolicy/sepolicy/sepolicy.glade:1993 msgid "Filter" msgstr "" @@ -2227,7 +2247,7 @@ msgstr "" msgid "label59" msgstr "" -#: ../gui/usersPage.py:138 +#: ../gui/usersPage.py:140 #, python-format msgid "SELinux user '%s' is required" msgstr "" @@ -2239,13 +2259,14 @@ msgstr "" #: booleans.py:2 msgid "" -"Allow ABRT to run in abrt_handle_event_t domain to handle ABRT event scripts" +"Determine whether ABRT can run in the abrt_handle_event_t domain to handle " +"ABRT event scripts." msgstr "" #: booleans.py:3 msgid "" -"Allow abrt-handle-upload to modify public files used for public file " -"transfer services in /var/spool/abrt-upload/." +"Determine whether abrt-handle-upload can modify public files used for public " +"file transfer services in /var/spool/abrt-upload/." msgstr "" #: booleans.py:4 @@ -2279,7 +2300,7 @@ msgid "Determine whether awstats can purge httpd log files." msgstr "" #: booleans.py:11 -msgid "Allow boinc_domain execmem/execstack." +msgid "Determine whether boinc can execmem/execstack." msgstr "" #: booleans.py:12 @@ -2335,1467 +2356,1501 @@ msgid "" msgstr "" #: booleans.py:23 -msgid "Determine whether cvs can read shadow password files." +msgid "" +"Determine whether crond can execute jobs in the user domain as opposed to " +"the the generic cronjob domain." msgstr "" #: booleans.py:24 -msgid "Allow all daemons to write corefiles to /" +msgid "Determine whether cvs can read shadow password files." msgstr "" #: booleans.py:25 -msgid "Allow all daemons to use tcp wrappers." +msgid "Allow all daemons to write corefiles to /" msgstr "" #: booleans.py:26 -msgid "Allow all daemons the ability to read/write terminals" +msgid "Enable cluster mode for daemons." msgstr "" #: booleans.py:27 -msgid "Determine whether dbadm can manage generic user files." +msgid "Allow all daemons to use tcp wrappers." msgstr "" #: booleans.py:28 -msgid "Determine whether dbadm can read generic user files." +msgid "Allow all daemons the ability to read/write terminals" msgstr "" #: booleans.py:29 +msgid "Allow dbadm to exec content" +msgstr "" + +#: booleans.py:30 +msgid "Determine whether dbadm can manage generic user files." +msgstr "" + +#: booleans.py:31 +msgid "Determine whether dbadm can read generic user files." +msgstr "" + +#: booleans.py:32 msgid "" "Deny user domains applications to map a memory region as both executable and " "writable, this is dangerous and the executable should be reported in bugzilla" msgstr "" -#: booleans.py:30 +#: booleans.py:33 msgid "Deny any process from ptracing or debugging any other processes." msgstr "" -#: booleans.py:31 +#: booleans.py:34 msgid "Allow dhcpc client applications to execute iptables commands" msgstr "" -#: booleans.py:32 +#: booleans.py:35 msgid "Determine whether DHCP daemon can use LDAP backends." msgstr "" -#: booleans.py:33 +#: booleans.py:36 msgid "Allow all domains to use other domains file descriptors" msgstr "" -#: booleans.py:34 +#: booleans.py:37 msgid "Allow all domains to have the kernel load modules" msgstr "" -#: booleans.py:35 +#: booleans.py:38 msgid "" "Determine whether entropyd can use audio devices as the source for the " "entropy feeds." msgstr "" -#: booleans.py:36 +#: booleans.py:39 msgid "Determine whether exim can connect to databases." msgstr "" -#: booleans.py:37 +#: booleans.py:40 msgid "" "Determine whether exim can create, read, write, and delete generic user " "content files." msgstr "" -#: booleans.py:38 +#: booleans.py:41 msgid "Determine whether exim can read generic user content files." msgstr "" -#: booleans.py:39 +#: booleans.py:42 msgid "Enable extra rules in the cron domain to support fcron." msgstr "" -#: booleans.py:40 +#: booleans.py:43 msgid "Determine whether fenced can connect to the TCP network." msgstr "" -#: booleans.py:41 +#: booleans.py:44 msgid "Determine whether fenced can use ssh." msgstr "" -#: booleans.py:42 +#: booleans.py:45 msgid "Allow all domains to execute in fips_mode" msgstr "" -#: booleans.py:43 +#: booleans.py:46 msgid "" "Determine whether ftpd can read and write files in user home directories." msgstr "" -#: booleans.py:44 +#: booleans.py:47 msgid "" "Determine whether ftpd can modify public files used for public file transfer " "services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:45 +#: booleans.py:48 msgid "Determine whether ftpd can connect to all unreserved ports." msgstr "" -#: booleans.py:46 +#: booleans.py:49 msgid "Determine whether ftpd can connect to databases over the TCP network." msgstr "" -#: booleans.py:47 +#: booleans.py:50 msgid "" "Determine whether ftpd can login to local users and can read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:48 +#: booleans.py:51 msgid "" "Determine whether ftpd can use CIFS used for public file transfer services." msgstr "" -#: booleans.py:49 +#: booleans.py:52 msgid "Allow ftpd to use ntfs/fusefs volumes." msgstr "" -#: booleans.py:50 +#: booleans.py:53 msgid "" "Determine whether ftpd can use NFS used for public file transfer services." msgstr "" -#: booleans.py:51 +#: booleans.py:54 msgid "" "Determine whether ftpd can bind to all unreserved ports for passive mode." msgstr "" -#: booleans.py:52 +#: booleans.py:55 msgid "Determine whether Git CGI can search home directories." msgstr "" -#: booleans.py:53 +#: booleans.py:56 msgid "Determine whether Git CGI can access cifs file systems." msgstr "" -#: booleans.py:54 +#: booleans.py:57 msgid "Determine whether Git CGI can access nfs file systems." msgstr "" -#: booleans.py:55 +#: booleans.py:58 msgid "" "Determine whether Git session daemon can bind TCP sockets to all unreserved " "ports." msgstr "" -#: booleans.py:56 +#: booleans.py:59 msgid "" "Determine whether calling user domains can execute Git daemon in the " "git_session_t domain." msgstr "" -#: booleans.py:57 +#: booleans.py:60 msgid "Determine whether Git system daemon can search home directories." msgstr "" -#: booleans.py:58 +#: booleans.py:61 msgid "Determine whether Git system daemon can access cifs file systems." msgstr "" -#: booleans.py:59 +#: booleans.py:62 msgid "Determine whether Git system daemon can access nfs file systems." msgstr "" -#: booleans.py:60 +#: booleans.py:63 msgid "Determine whether Gitosis can send mail." msgstr "" -#: booleans.py:61 +#: booleans.py:64 msgid "Enable reading of urandom for all domains." msgstr "" -#: booleans.py:62 +#: booleans.py:65 msgid "" "Allow glusterfsd to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:63 +#: booleans.py:66 msgid "Allow glusterfsd to share any file/directory read only." msgstr "" -#: booleans.py:64 +#: booleans.py:67 msgid "Allow glusterfsd to share any file/directory read/write." msgstr "" -#: booleans.py:65 +#: booleans.py:68 msgid "" "Allow usage of the gpg-agent --write-env-file option. This also allows gpg-" "agent to manage user files." msgstr "" -#: booleans.py:66 +#: booleans.py:69 msgid "" "Allow gpg web domain to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:67 +#: booleans.py:70 msgid "" "Allow gssd to list tmp directories and read the kerberos credential cache." msgstr "" -#: booleans.py:68 +#: booleans.py:71 msgid "Allow guest to exec content" msgstr "" -#: booleans.py:69 +#: booleans.py:72 msgid "" "Allow Apache to modify public files used for public file transfer services. " "Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:70 +#: booleans.py:73 msgid "Allow httpd to use built in scripting (usually php)" msgstr "" -#: booleans.py:71 +#: booleans.py:74 msgid "Allow http daemon to check spam" msgstr "" -#: booleans.py:72 +#: booleans.py:75 msgid "" "Allow httpd to act as a FTP client connecting to the ftp port and ephemeral " "ports" msgstr "" -#: booleans.py:73 +#: booleans.py:76 msgid "Allow httpd to connect to the ldap port" msgstr "" -#: booleans.py:74 +#: booleans.py:77 msgid "Allow http daemon to connect to mythtv" msgstr "" -#: booleans.py:75 +#: booleans.py:78 msgid "Allow http daemon to connect to zabbix" msgstr "" -#: booleans.py:76 +#: booleans.py:79 msgid "Allow HTTPD scripts and modules to connect to the network using TCP." msgstr "" -#: booleans.py:77 +#: booleans.py:80 msgid "Allow HTTPD scripts and modules to connect to cobbler over the network." msgstr "" -#: booleans.py:78 +#: booleans.py:81 msgid "" "Allow HTTPD scripts and modules to connect to databases over the network." msgstr "" -#: booleans.py:79 +#: booleans.py:82 msgid "Allow httpd to connect to memcache server" msgstr "" -#: booleans.py:80 +#: booleans.py:83 msgid "Allow httpd to act as a relay" msgstr "" -#: booleans.py:81 +#: booleans.py:84 msgid "Allow http daemon to send mail" msgstr "" -#: booleans.py:82 +#: booleans.py:85 msgid "Allow Apache to communicate with avahi service via dbus" msgstr "" -#: booleans.py:83 +#: booleans.py:86 msgid "Allow httpd cgi support" msgstr "" -#: booleans.py:84 +#: booleans.py:87 msgid "Allow httpd to act as a FTP server by listening on the ftp port." msgstr "" -#: booleans.py:85 +#: booleans.py:88 msgid "Allow httpd to read home directories" msgstr "" -#: booleans.py:86 +#: booleans.py:89 msgid "Allow httpd scripts and modules execmem/execstack" msgstr "" -#: booleans.py:87 +#: booleans.py:90 msgid "Allow HTTPD to connect to port 80 for graceful shutdown" msgstr "" -#: booleans.py:88 +#: booleans.py:91 msgid "Allow httpd processes to manage IPA content" msgstr "" -#: booleans.py:89 +#: booleans.py:92 msgid "Allow Apache to use mod_auth_ntlm_winbind" msgstr "" -#: booleans.py:90 +#: booleans.py:93 msgid "Allow Apache to use mod_auth_pam" msgstr "" -#: booleans.py:91 +#: booleans.py:94 msgid "Allow httpd to read user content" msgstr "" -#: booleans.py:92 +#: booleans.py:95 msgid "Allow Apache to run in stickshift mode, not transition to passenger" msgstr "" -#: booleans.py:93 +#: booleans.py:96 msgid "Allow HTTPD scripts and modules to server cobbler files." msgstr "" -#: booleans.py:94 +#: booleans.py:97 msgid "Allow httpd daemon to change its resource limits" msgstr "" -#: booleans.py:95 +#: booleans.py:98 msgid "" "Allow HTTPD to run SSI executables in the same domain as system CGI scripts." msgstr "" -#: booleans.py:96 +#: booleans.py:99 msgid "" "Allow apache scripts to write to public content, directories/files must be " "labeled public_rw_content_t." msgstr "" -#: booleans.py:97 +#: booleans.py:100 msgid "Allow Apache to execute tmp content." msgstr "" -#: booleans.py:98 +#: booleans.py:101 msgid "" "Unify HTTPD to communicate with the terminal. Needed for entering the " "passphrase for certificates at the terminal." msgstr "" -#: booleans.py:99 +#: booleans.py:102 msgid "Unify HTTPD handling of all content files." msgstr "" -#: booleans.py:100 +#: booleans.py:103 msgid "Allow httpd to access cifs file systems" msgstr "" -#: booleans.py:101 +#: booleans.py:104 msgid "Allow httpd to access FUSE file systems" msgstr "" -#: booleans.py:102 +#: booleans.py:105 msgid "Allow httpd to run gpg" msgstr "" -#: booleans.py:103 +#: booleans.py:106 msgid "Allow httpd to access nfs file systems" msgstr "" -#: booleans.py:104 +#: booleans.py:107 msgid "Allow httpd to access openstack ports" msgstr "" -#: booleans.py:105 +#: booleans.py:108 msgid "Allow httpd to connect to sasl" msgstr "" -#: booleans.py:106 +#: booleans.py:109 msgid "Allow Apache to query NS records" msgstr "" -#: booleans.py:107 +#: booleans.py:110 msgid "Determine whether icecast can listen on and connect to any TCP port." msgstr "" -#: booleans.py:108 +#: booleans.py:111 msgid "" "Determine whether irc clients can listen on and connect to any unreserved " "TCP ports." msgstr "" -#: booleans.py:109 +#: booleans.py:112 msgid "" "Allow the Irssi IRC Client to connect to any port, and to bind to any " "unreserved port." msgstr "" -#: booleans.py:110 +#: booleans.py:113 +msgid "Allow s-c-kdump to run bootloader in bootloader_t." +msgstr "" + +#: booleans.py:114 msgid "Allow confined applications to run with kerberos." msgstr "" -#: booleans.py:111 +#: booleans.py:115 msgid "Allow ksmtuned to use cifs/Samba file systems" msgstr "" -#: booleans.py:112 +#: booleans.py:116 msgid "Allow ksmtuned to use nfs file systems" msgstr "" -#: booleans.py:113 +#: booleans.py:117 +msgid "Allow logadm to exec content" +msgstr "" + +#: booleans.py:118 msgid "Allow syslogd daemon to send mail" msgstr "" -#: booleans.py:114 +#: booleans.py:119 msgid "Allow syslogd the ability to read/write terminals" msgstr "" -#: booleans.py:115 +#: booleans.py:120 msgid "Allow logging in and using the system from /dev/console." msgstr "" -#: booleans.py:116 +#: booleans.py:121 +msgid "Determine whether logwatch can connect to mail over the network." +msgstr "" + +#: booleans.py:122 msgid "Allow epylog to send mail" msgstr "" -#: booleans.py:117 +#: booleans.py:123 msgid "Allow mailman to access FUSE file systems" msgstr "" -#: booleans.py:118 +#: booleans.py:124 msgid "Determine whether mcelog supports client mode." msgstr "" -#: booleans.py:119 +#: booleans.py:125 msgid "Determine whether mcelog can execute scripts." msgstr "" -#: booleans.py:120 +#: booleans.py:126 msgid "Determine whether mcelog can use all the user ttys." msgstr "" -#: booleans.py:121 +#: booleans.py:127 msgid "Determine whether mcelog supports server mode." msgstr "" -#: booleans.py:122 +#: booleans.py:128 +msgid "Determine whether minidlna can read generic user content." +msgstr "" + +#: booleans.py:129 msgid "" "Control the ability to mmap a low area of the address space, as configured " "by /proc/sys/kernel/mmap_min_addr." msgstr "" -#: booleans.py:123 +#: booleans.py:130 msgid "Allow mock to read files in home directories." msgstr "" -#: booleans.py:124 +#: booleans.py:131 msgid "Allow the mount commands to mount any directory or file." msgstr "" -#: booleans.py:125 +#: booleans.py:132 msgid "Allow mozilla plugin domain to connect to the network using TCP." msgstr "" -#: booleans.py:126 +#: booleans.py:133 msgid "Allow mozilla plugin to support GPS." msgstr "" -#: booleans.py:127 +#: booleans.py:134 msgid "Allow mozilla plugin to support spice protocols." msgstr "" -#: booleans.py:128 +#: booleans.py:135 msgid "Allow confined web browsers to read home directory content" msgstr "" -#: booleans.py:129 +#: booleans.py:136 msgid "Determine whether mpd can traverse user home directories." msgstr "" -#: booleans.py:130 +#: booleans.py:137 msgid "Determine whether mpd can use cifs file systems." msgstr "" -#: booleans.py:131 +#: booleans.py:138 msgid "Determine whether mpd can use nfs file systems." msgstr "" -#: booleans.py:132 +#: booleans.py:139 msgid "Determine whether mplayer can make its stack executable." msgstr "" -#: booleans.py:133 +#: booleans.py:140 msgid "Allow mysqld to connect to all ports" msgstr "" -#: booleans.py:134 +#: booleans.py:141 msgid "Determine whether Bind can bind tcp socket to http ports." msgstr "" -#: booleans.py:135 +#: booleans.py:142 msgid "" "Determine whether Bind can write to master zone files. Generally this is " "used for dynamic DNS or zone transfers." msgstr "" -#: booleans.py:136 +#: booleans.py:143 msgid "Allow any files/directories to be exported read/only via NFS." msgstr "" -#: booleans.py:137 +#: booleans.py:144 msgid "Allow any files/directories to be exported read/write via NFS." msgstr "" -#: booleans.py:138 +#: booleans.py:145 msgid "" "Allow nfs servers to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:139 +#: booleans.py:146 msgid "Allow system to run with NIS" msgstr "" -#: booleans.py:140 +#: booleans.py:147 msgid "Allow confined applications to use nscd shared memory." msgstr "" -#: booleans.py:141 +#: booleans.py:148 msgid "Allow openshift to lockdown app" msgstr "" -#: booleans.py:142 +#: booleans.py:149 msgid "Determine whether openvpn can connect to the TCP network." msgstr "" -#: booleans.py:143 +#: booleans.py:150 msgid "Determine whether openvpn can read generic user home content files." msgstr "" -#: booleans.py:144 +#: booleans.py:151 msgid "Allow openvpn to run unconfined scripts" msgstr "" -#: booleans.py:145 +#: booleans.py:152 msgid "Allow piranha-lvs domain to connect to the network using TCP." msgstr "" -#: booleans.py:146 +#: booleans.py:153 msgid "Allow polipo to connect to all ports > 1023" msgstr "" -#: booleans.py:147 +#: booleans.py:154 msgid "" "Determine whether Polipo session daemon can bind tcp sockets to all " "unreserved ports." msgstr "" -#: booleans.py:148 +#: booleans.py:155 msgid "" "Determine whether calling user domains can execute Polipo daemon in the " "polipo_session_t domain." msgstr "" -#: booleans.py:149 +#: booleans.py:156 msgid "Determine whether polipo can access cifs file systems." msgstr "" -#: booleans.py:150 +#: booleans.py:157 msgid "Determine whether Polipo can access nfs file systems." msgstr "" -#: booleans.py:151 +#: booleans.py:158 msgid "Enable polyinstantiated directory support." msgstr "" -#: booleans.py:152 +#: booleans.py:159 msgid "Allow postfix_local domain full write access to mail_spool directories" msgstr "" -#: booleans.py:153 +#: booleans.py:160 msgid "Allow postgresql to use ssh and rsync for point-in-time recovery" msgstr "" -#: booleans.py:154 +#: booleans.py:161 msgid "Allow transmit client label to foreign database" msgstr "" -#: booleans.py:155 +#: booleans.py:162 msgid "Allow database admins to execute DML statement" msgstr "" -#: booleans.py:156 +#: booleans.py:163 msgid "Allow unprivileged users to execute DDL statement" msgstr "" -#: booleans.py:157 +#: booleans.py:164 msgid "Allow pppd to load kernel modules for certain modems" msgstr "" -#: booleans.py:158 +#: booleans.py:165 msgid "Allow pppd to be run for a regular user" msgstr "" -#: booleans.py:159 +#: booleans.py:166 msgid "Determine whether privoxy can connect to all tcp ports." msgstr "" -#: booleans.py:160 +#: booleans.py:167 msgid "" "Permit to prosody to bind apache port. Need to be activated to use BOSH." msgstr "" -#: booleans.py:161 +#: booleans.py:168 msgid "Allow Puppet client to manage all file types." msgstr "" -#: booleans.py:162 +#: booleans.py:169 msgid "Allow Puppet master to use connect to MySQL and PostgreSQL database" msgstr "" -#: booleans.py:163 +#: booleans.py:170 msgid "Allow racoon to read shadow" msgstr "" -#: booleans.py:164 +#: booleans.py:171 msgid "" "Allow rsync to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:165 +#: booleans.py:172 msgid "Allow rsync to run as a client" msgstr "" -#: booleans.py:166 +#: booleans.py:173 msgid "Allow rsync to export any files/directories read only." msgstr "" -#: booleans.py:167 +#: booleans.py:174 msgid "Allow rsync server to manage all files/directories on the system." msgstr "" -#: booleans.py:168 +#: booleans.py:175 msgid "Allow samba to create new home directories (e.g. via PAM)" msgstr "" -#: booleans.py:169 +#: booleans.py:176 msgid "" "Allow samba to act as the domain controller, add users, groups and change " "passwords." msgstr "" -#: booleans.py:170 +#: booleans.py:177 msgid "Allow samba to share users home directories." msgstr "" -#: booleans.py:171 +#: booleans.py:178 msgid "Allow samba to share any file/directory read only." msgstr "" -#: booleans.py:172 +#: booleans.py:179 msgid "Allow samba to share any file/directory read/write." msgstr "" -#: booleans.py:173 +#: booleans.py:180 msgid "Allow samba to act as a portmapper" msgstr "" -#: booleans.py:174 +#: booleans.py:181 msgid "Allow samba to run unconfined scripts" msgstr "" -#: booleans.py:175 +#: booleans.py:182 msgid "Allow samba to export ntfs/fusefs volumes." msgstr "" -#: booleans.py:176 +#: booleans.py:183 msgid "Allow samba to export NFS volumes." msgstr "" -#: booleans.py:177 +#: booleans.py:184 msgid "Allow sanlock to read/write fuse files" msgstr "" -#: booleans.py:178 +#: booleans.py:185 msgid "Allow sanlock to manage nfs files" msgstr "" -#: booleans.py:179 +#: booleans.py:186 msgid "Allow sanlock to manage cifs files" msgstr "" -#: booleans.py:180 +#: booleans.py:187 msgid "Allow sasl to read shadow" msgstr "" -#: booleans.py:181 +#: booleans.py:188 msgid "Allow secadm to exec content" msgstr "" -#: booleans.py:182 +#: booleans.py:189 msgid "" "disallow programs, such as newrole, from transitioning to administrative " "user domains." msgstr "" -#: booleans.py:183 +#: booleans.py:190 msgid "Disable kernel module loading." msgstr "" -#: booleans.py:184 +#: booleans.py:191 msgid "" "Boolean to determine whether the system permits loading policy, setting " "enforcing mode, and changing boolean values. Set this to true and you have " "to reboot to set it back." msgstr "" -#: booleans.py:185 +#: booleans.py:192 msgid "Allow regular users direct dri device access" msgstr "" -#: booleans.py:186 +#: booleans.py:193 msgid "" "Allow unconfined executables to make their heap memory executable. Doing " "this is a really bad idea. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:187 +#: booleans.py:194 msgid "" "Allow all unconfined executables to use libraries requiring text relocation " "that are not labeled textrel_shlib_t" msgstr "" -#: booleans.py:188 +#: booleans.py:195 msgid "" "Allow unconfined executables to make their stack executable. This should " "never, ever be necessary. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:189 +#: booleans.py:196 msgid "Allow users to connect to the local mysql server" msgstr "" -#: booleans.py:190 +#: booleans.py:197 msgid "" "Allow confined users the ability to execute the ping and traceroute commands." msgstr "" -#: booleans.py:191 +#: booleans.py:198 msgid "Allow users to connect to PostgreSQL" msgstr "" -#: booleans.py:192 +#: booleans.py:199 msgid "" "Allow user to r/w files on filesystems that do not have extended attributes " "(FAT, CDROM, FLOPPY)" msgstr "" -#: booleans.py:193 +#: booleans.py:200 msgid "Allow user music sharing" msgstr "" -#: booleans.py:194 +#: booleans.py:201 msgid "" "Allow users to run TCP servers (bind to ports and accept connection from the " "same domain and outside users) disabling this forces FTP passive mode and " "may change other protocols." msgstr "" -#: booleans.py:195 +#: booleans.py:202 msgid "Allow user to use ssh chroot environment." msgstr "" -#: booleans.py:196 +#: booleans.py:203 msgid "" "Determine whether sftpd can modify public files used for public file " "transfer services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:197 +#: booleans.py:204 msgid "" "Determine whether sftpd-can read and write files in user home directories." msgstr "" -#: booleans.py:198 +#: booleans.py:205 msgid "" "Determine whether sftpd-can login to local users and read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:199 +#: booleans.py:206 msgid "" "Determine whether sftpd can read and write files in user ssh home " "directories." msgstr "" -#: booleans.py:200 +#: booleans.py:207 msgid "Allow sge to connect to the network using any TCP port" msgstr "" -#: booleans.py:201 +#: booleans.py:208 msgid "Allow sge to access nfs file systems." msgstr "" -#: booleans.py:202 +#: booleans.py:209 msgid "Determine whether smartmon can support devices on 3ware controllers." msgstr "" -#: booleans.py:203 +#: booleans.py:210 msgid "" "Allow samba to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:204 +#: booleans.py:211 msgid "Allow user spamassassin clients to use the network." msgstr "" -#: booleans.py:205 +#: booleans.py:212 msgid "Allow spamd to read/write user home directories." msgstr "" -#: booleans.py:206 +#: booleans.py:213 msgid "Determine whether squid can connect to all TCP ports." msgstr "" -#: booleans.py:207 +#: booleans.py:214 msgid "Determine whether squid can run as a transparent proxy." msgstr "" -#: booleans.py:208 +#: booleans.py:215 msgid "" "Allow ssh with chroot env to read and write files in the user home " "directories" msgstr "" -#: booleans.py:209 +#: booleans.py:216 msgid "allow host key based authentication" msgstr "" -#: booleans.py:210 +#: booleans.py:217 msgid "Allow ssh logins as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:211 +#: booleans.py:218 msgid "Allow staff to exec content" msgstr "" -#: booleans.py:212 +#: booleans.py:219 msgid "allow staff user to create and transition to svirt domains." msgstr "" -#: booleans.py:213 +#: booleans.py:220 msgid "Allow sysadm to exec content" msgstr "" -#: booleans.py:214 +#: booleans.py:221 msgid "Allow the Telepathy connection managers to connect to any network port." msgstr "" -#: booleans.py:215 +#: booleans.py:222 msgid "" "Allow the Telepathy connection managers to connect to any generic TCP port." msgstr "" -#: booleans.py:216 -msgid "Allow testpolicy to exec content" -msgstr "" - -#: booleans.py:217 +#: booleans.py:223 msgid "" "Allow tftp to modify public files used for public file transfer services." msgstr "" -#: booleans.py:218 +#: booleans.py:224 msgid "Allow tftp to read and write files in the user home directories" msgstr "" -#: booleans.py:219 +#: booleans.py:225 msgid "Determine whether tor can bind tcp sockets to all unreserved ports." msgstr "" -#: booleans.py:220 +#: booleans.py:226 msgid "Allow tor to act as a relay" msgstr "" -#: booleans.py:221 +#: booleans.py:227 msgid "" "allow unconfined users to transition to the chrome sandbox domains when " "running chrome-sandbox" msgstr "" -#: booleans.py:222 +#: booleans.py:228 msgid "Allow a user to login as an unconfined domain" msgstr "" -#: booleans.py:223 +#: booleans.py:229 msgid "" "Allow unconfined users to transition to the Mozilla plugin domain when " "running xulrunner plugin-container." msgstr "" -#: booleans.py:224 +#: booleans.py:230 msgid "Allow unprivledged user to create and transition to svirt domains." msgstr "" -#: booleans.py:225 +#: booleans.py:231 msgid "Support ecryptfs home directories" msgstr "" -#: booleans.py:226 +#: booleans.py:232 msgid "Support fusefs home directories" msgstr "" -#: booleans.py:227 +#: booleans.py:233 msgid "Determine whether to support lpd server." msgstr "" -#: booleans.py:228 +#: booleans.py:234 msgid "Support NFS home directories" msgstr "" -#: booleans.py:229 +#: booleans.py:235 msgid "Support SAMBA home directories" msgstr "" -#: booleans.py:230 +#: booleans.py:236 msgid "Allow user to exec content" msgstr "" -#: booleans.py:231 +#: booleans.py:237 msgid "Determine whether varnishd can use the full TCP network." msgstr "" -#: booleans.py:232 +#: booleans.py:238 msgid "" "Determine whether attempts by vbetool to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:233 +#: booleans.py:239 +msgid "Allow sandbox containers to send audit messages" +msgstr "" + +#: booleans.py:240 +msgid "Allow sandbox containers to use netlink system calls" +msgstr "" + +#: booleans.py:241 msgid "Allow virtual processes to run as userdomains" msgstr "" -#: booleans.py:234 +#: booleans.py:242 msgid "" "Allow confined virtual guests to use serial/parallel communication ports" msgstr "" -#: booleans.py:235 +#: booleans.py:243 msgid "" "Allow confined virtual guests to use executable memory and executable stack" msgstr "" -#: booleans.py:236 +#: booleans.py:244 msgid "Allow confined virtual guests to read fuse files" msgstr "" -#: booleans.py:237 +#: booleans.py:245 msgid "Allow confined virtual guests to manage nfs files" msgstr "" -#: booleans.py:238 +#: booleans.py:246 msgid "Allow confined virtual guests to interact with rawip sockets" msgstr "" -#: booleans.py:239 +#: booleans.py:247 msgid "Allow confined virtual guests to manage cifs files" msgstr "" -#: booleans.py:240 +#: booleans.py:248 msgid "Allow confined virtual guests to interact with the sanlock" msgstr "" -#: booleans.py:241 +#: booleans.py:249 msgid "Allow confined virtual guests to use usb devices" msgstr "" -#: booleans.py:242 +#: booleans.py:250 msgid "Allow confined virtual guests to interact with the xserver" msgstr "" -#: booleans.py:243 +#: booleans.py:251 msgid "Determine whether webadm can manage generic user files." msgstr "" -#: booleans.py:244 +#: booleans.py:252 msgid "Determine whether webadm can read generic user files." msgstr "" -#: booleans.py:245 +#: booleans.py:253 msgid "" "Determine whether attempts by wine to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:246 +#: booleans.py:254 msgid "Allow the graphical login program to execute bootloader" msgstr "" -#: booleans.py:247 +#: booleans.py:255 msgid "" "Allow the graphical login program to login directly as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:248 +#: booleans.py:256 msgid "" "Allow the graphical login program to create files in HOME dirs as xdm_home_t." msgstr "" -#: booleans.py:249 +#: booleans.py:257 msgid "Allow xen to manage nfs files" msgstr "" -#: booleans.py:250 +#: booleans.py:258 msgid "" "Allow xend to run blktapctrl/tapdisk. Not required if using dedicated " "logical volumes for disk images." msgstr "" -#: booleans.py:251 +#: booleans.py:259 msgid "Allow xend to run qemu-dm. Not required if using paravirt and no vfb." msgstr "" -#: booleans.py:252 +#: booleans.py:260 msgid "" "Allow xguest users to configure Network Manager and connect to apache ports" msgstr "" -#: booleans.py:253 +#: booleans.py:261 msgid "Allow xguest to exec content" msgstr "" -#: booleans.py:254 +#: booleans.py:262 msgid "Allow xguest users to mount removable media" msgstr "" -#: booleans.py:255 +#: booleans.py:263 msgid "Allow xguest to use blue tooth devices" msgstr "" -#: booleans.py:256 +#: booleans.py:264 msgid "Allows clients to write to the X server shared memory segments." msgstr "" -#: booleans.py:257 +#: booleans.py:265 msgid "Allows XServer to execute writable memory" msgstr "" -#: booleans.py:258 +#: booleans.py:266 msgid "Support X userspace object manager" msgstr "" -#: booleans.py:259 +#: booleans.py:267 msgid "Determine whether zabbix can connect to all TCP ports" msgstr "" -#: booleans.py:260 +#: booleans.py:268 msgid "Allow zarafa domains to setrlimit/sys_rouserce." msgstr "" -#: booleans.py:261 +#: booleans.py:269 msgid "Allow zebra daemon to write it configuration files" msgstr "" -#: booleans.py:262 +#: booleans.py:270 msgid "" "Allow ZoneMinder to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:263 +#: booleans.py:271 msgid "Allow ZoneMinder to run su/sudo." msgstr "" -#: ../sepolicy/sepolicy.py:194 +#: ../sepolicy/sepolicy.py:195 #, python-format msgid "Interface %s does not exist." msgstr "" -#: ../sepolicy/sepolicy.py:292 +#: ../sepolicy/sepolicy.py:293 msgid "You need to install policycoreutils-gui package to use the gui option" msgstr "" -#: ../sepolicy/sepolicy.py:296 +#: ../sepolicy/sepolicy.py:297 msgid "Graphical User Interface for SELinux Policy" msgstr "" -#: ../sepolicy/sepolicy.py:299 ../sepolicy/sepolicy.py:345 +#: ../sepolicy/sepolicy.py:300 ../sepolicy/sepolicy.py:346 msgid "Domain name(s) of man pages to be created" msgstr "" -#: ../sepolicy/sepolicy.py:311 +#: ../sepolicy/sepolicy.py:312 msgid "Alternative root needs to be setup" msgstr "" -#: ../sepolicy/sepolicy.py:327 +#: ../sepolicy/sepolicy.py:328 msgid "Generate SELinux man pages" msgstr "" -#: ../sepolicy/sepolicy.py:330 +#: ../sepolicy/sepolicy.py:331 msgid "path in which the generated SELinux man pages will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:332 +#: ../sepolicy/sepolicy.py:333 msgid "name of the OS for man pages" msgstr "" -#: ../sepolicy/sepolicy.py:334 +#: ../sepolicy/sepolicy.py:335 msgid "Generate HTML man pages structure for selected SELinux man page" msgstr "" -#: ../sepolicy/sepolicy.py:336 +#: ../sepolicy/sepolicy.py:337 msgid "Alternate root directory, defaults to /" msgstr "" -#: ../sepolicy/sepolicy.py:338 +#: ../sepolicy/sepolicy.py:339 msgid "" "With this flag, alternative root path needs to include file context files " "and policy.xml file" msgstr "" -#: ../sepolicy/sepolicy.py:342 +#: ../sepolicy/sepolicy.py:343 msgid "All domains" msgstr "" -#: ../sepolicy/sepolicy.py:350 +#: ../sepolicy/sepolicy.py:351 msgid "Query SELinux policy network information" msgstr "" -#: ../sepolicy/sepolicy.py:355 +#: ../sepolicy/sepolicy.py:356 msgid "list all SELinux port types" msgstr "" -#: ../sepolicy/sepolicy.py:358 +#: ../sepolicy/sepolicy.py:359 msgid "show SELinux type related to the port" msgstr "" -#: ../sepolicy/sepolicy.py:361 +#: ../sepolicy/sepolicy.py:362 msgid "Show ports defined for this SELinux type" msgstr "" -#: ../sepolicy/sepolicy.py:364 +#: ../sepolicy/sepolicy.py:365 msgid "show ports to which this domain can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:367 +#: ../sepolicy/sepolicy.py:368 msgid "show ports to which this application can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:382 +#: ../sepolicy/sepolicy.py:383 msgid "query SELinux policy to see if domains can communicate with each other" msgstr "" -#: ../sepolicy/sepolicy.py:385 +#: ../sepolicy/sepolicy.py:386 msgid "Source Domain" msgstr "" -#: ../sepolicy/sepolicy.py:388 +#: ../sepolicy/sepolicy.py:389 msgid "Target Domain" msgstr "" -#: ../sepolicy/sepolicy.py:407 +#: ../sepolicy/sepolicy.py:408 msgid "query SELinux Policy to see description of booleans" msgstr "" -#: ../sepolicy/sepolicy.py:411 +#: ../sepolicy/sepolicy.py:412 msgid "get all booleans descriptions" msgstr "" -#: ../sepolicy/sepolicy.py:414 +#: ../sepolicy/sepolicy.py:415 msgid "boolean to get description" msgstr "" -#: ../sepolicy/sepolicy.py:424 +#: ../sepolicy/sepolicy.py:425 msgid "" "query SELinux Policy to see how a source process domain can transition to " "the target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:427 +#: ../sepolicy/sepolicy.py:428 msgid "source process domain" msgstr "" -#: ../sepolicy/sepolicy.py:430 +#: ../sepolicy/sepolicy.py:431 msgid "target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:472 +#: ../sepolicy/sepolicy.py:473 #, python-format msgid "sepolicy generate: error: one of the arguments %s is required" msgstr "" -#: ../sepolicy/sepolicy.py:477 +#: ../sepolicy/sepolicy.py:478 msgid "Command required for this type of policy" msgstr "" -#: ../sepolicy/sepolicy.py:488 +#: ../sepolicy/sepolicy.py:489 #, python-format msgid "" "-t option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:493 +#: ../sepolicy/sepolicy.py:494 #, python-format msgid "" "-d option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:497 +#: ../sepolicy/sepolicy.py:498 #, python-format msgid "" "-a option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:501 +#: ../sepolicy/sepolicy.py:502 msgid "-w option can not be used with the --newtype option" msgstr "" -#: ../sepolicy/sepolicy.py:521 +#: ../sepolicy/sepolicy.py:522 msgid "List SELinux Policy interfaces" msgstr "" -#: ../sepolicy/sepolicy.py:541 +#: ../sepolicy/sepolicy.py:542 msgid "Enter interface names, you wish to query" msgstr "" -#: ../sepolicy/sepolicy.py:550 +#: ../sepolicy/sepolicy.py:551 msgid "Generate SELinux Policy module template" msgstr "" -#: ../sepolicy/sepolicy.py:553 +#: ../sepolicy/sepolicy.py:554 msgid "Enter domain type which you will be extending" msgstr "" -#: ../sepolicy/sepolicy.py:556 +#: ../sepolicy/sepolicy.py:557 msgid "Enter SELinux user(s) which will transition to this domain" msgstr "" -#: ../sepolicy/sepolicy.py:559 +#: ../sepolicy/sepolicy.py:560 msgid "Enter SELinux role(s) to which the administror domain will transition" msgstr "" -#: ../sepolicy/sepolicy.py:562 +#: ../sepolicy/sepolicy.py:563 msgid "Enter domain(s) which this confined admin will administrate" msgstr "" -#: ../sepolicy/sepolicy.py:565 +#: ../sepolicy/sepolicy.py:566 msgid "name of policy to generate" msgstr "" -#: ../sepolicy/sepolicy.py:572 +#: ../sepolicy/sepolicy.py:573 msgid "path in which the generated policy files will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:574 +#: ../sepolicy/sepolicy.py:575 msgid "path to which the confined processes will need to write" msgstr "" -#: ../sepolicy/sepolicy.py:575 +#: ../sepolicy/sepolicy.py:576 msgid "Policy types which require a command" msgstr "" -#: ../sepolicy/sepolicy.py:579 ../sepolicy/sepolicy.py:582 -#: ../sepolicy/sepolicy.py:585 ../sepolicy/sepolicy.py:588 -#: ../sepolicy/sepolicy.py:591 ../sepolicy/sepolicy.py:597 -#: ../sepolicy/sepolicy.py:600 ../sepolicy/sepolicy.py:603 -#: ../sepolicy/sepolicy.py:609 ../sepolicy/sepolicy.py:612 -#: ../sepolicy/sepolicy.py:615 ../sepolicy/sepolicy.py:618 +#: ../sepolicy/sepolicy.py:580 ../sepolicy/sepolicy.py:583 +#: ../sepolicy/sepolicy.py:586 ../sepolicy/sepolicy.py:589 +#: ../sepolicy/sepolicy.py:592 ../sepolicy/sepolicy.py:598 +#: ../sepolicy/sepolicy.py:601 ../sepolicy/sepolicy.py:604 +#: ../sepolicy/sepolicy.py:610 ../sepolicy/sepolicy.py:613 +#: ../sepolicy/sepolicy.py:616 ../sepolicy/sepolicy.py:619 #, python-format msgid "Generate '%s' policy" msgstr "" -#: ../sepolicy/sepolicy.py:606 +#: ../sepolicy/sepolicy.py:607 #, python-format msgid "Generate '%s' policy " msgstr "" -#: ../sepolicy/sepolicy.py:620 +#: ../sepolicy/sepolicy.py:621 msgid "executable to confine" msgstr "" -#: ../sepolicy/sepolicy.py:625 +#: ../sepolicy/sepolicy.py:626 msgid "commands" msgstr "" -#: ../sepolicy/sepolicy.py:628 +#: ../sepolicy/sepolicy.py:629 msgid "Alternate SELinux policy, defaults to /sys/fs/selinux/policy" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:89 +#: ../sepolicy/sepolicy/__init__.py:96 #, python-format msgid "-- Allowed %s [ %s ]" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:95 ../sepolicy/sepolicy/gui.py:1135 +#: ../sepolicy/sepolicy/__init__.py:102 ../sepolicy/sepolicy/gui.py:1152 msgid "all files" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:96 +#: ../sepolicy/sepolicy/__init__.py:103 msgid "regular file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:97 +#: ../sepolicy/sepolicy/__init__.py:104 msgid "directory" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:98 +#: ../sepolicy/sepolicy/__init__.py:105 msgid "character device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:99 +#: ../sepolicy/sepolicy/__init__.py:106 msgid "block device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:100 +#: ../sepolicy/sepolicy/__init__.py:107 msgid "socket file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:101 +#: ../sepolicy/sepolicy/__init__.py:108 msgid "symbolic link" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:102 +#: ../sepolicy/sepolicy/__init__.py:109 msgid "named pipe" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:398 +#: ../sepolicy/sepolicy/__init__.py:427 msgid "No SELinux Policy installed" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:478 +#: ../sepolicy/sepolicy/__init__.py:506 msgid "You must regenerate interface info by running /usr/bin/sepolgen-ifgen" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:724 +#: ../sepolicy/sepolicy/__init__.py:768 #, python-format msgid "Failed to read %s policy file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:829 +#: ../sepolicy/sepolicy/__init__.py:873 msgid "unknown" msgstr "" -#: ../sepolicy/sepolicy/generate.py:132 +#: ../sepolicy/sepolicy/generate.py:134 msgid "Internet Services Daemon" msgstr "" -#: ../sepolicy/sepolicy/generate.py:136 +#: ../sepolicy/sepolicy/generate.py:138 msgid "Existing Domain Type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:137 +#: ../sepolicy/sepolicy/generate.py:139 msgid "Minimal Terminal Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:138 +#: ../sepolicy/sepolicy/generate.py:140 msgid "Minimal X Windows Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:139 +#: ../sepolicy/sepolicy/generate.py:141 msgid "Desktop Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:140 +#: ../sepolicy/sepolicy/generate.py:142 msgid "Administrator Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:141 +#: ../sepolicy/sepolicy/generate.py:143 msgid "Confined Root Administrator Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:142 +#: ../sepolicy/sepolicy/generate.py:144 msgid "Module information for a new type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:147 +#: ../sepolicy/sepolicy/generate.py:149 msgid "Valid Types:\n" msgstr "" -#: ../sepolicy/sepolicy/generate.py:181 +#: ../sepolicy/sepolicy/generate.py:183 #, python-format msgid "Ports must be numbers or ranges of numbers from 1 to %d " msgstr "" -#: ../sepolicy/sepolicy/generate.py:192 +#: ../sepolicy/sepolicy/generate.py:194 msgid "You must enter a valid policy type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:195 +#: ../sepolicy/sepolicy/generate.py:197 #, python-format msgid "You must enter a name for your policy module for your '%s'." msgstr "" -#: ../sepolicy/sepolicy/generate.py:333 +#: ../sepolicy/sepolicy/generate.py:335 msgid "" "Name must be alpha numberic with no spaces. Consider using option \"-n " "MODULENAME\"" msgstr "" -#: ../sepolicy/sepolicy/generate.py:425 +#: ../sepolicy/sepolicy/generate.py:427 msgid "User Role types can not be assigned executables." msgstr "" -#: ../sepolicy/sepolicy/generate.py:431 +#: ../sepolicy/sepolicy/generate.py:433 msgid "Only Daemon apps can use an init script.." msgstr "" -#: ../sepolicy/sepolicy/generate.py:449 +#: ../sepolicy/sepolicy/generate.py:451 msgid "use_resolve must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:455 +#: ../sepolicy/sepolicy/generate.py:457 msgid "use_syslog must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:461 +#: ../sepolicy/sepolicy/generate.py:463 msgid "use_kerberos must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:467 +#: ../sepolicy/sepolicy/generate.py:469 msgid "manage_krb5_rcache must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:497 +#: ../sepolicy/sepolicy/generate.py:499 msgid "USER Types automatically get a tmp type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:838 +#: ../sepolicy/sepolicy/generate.py:840 #, python-format msgid "'%s' policy modules require existing domains" msgstr "" -#: ../sepolicy/sepolicy/generate.py:863 +#: ../sepolicy/sepolicy/generate.py:865 msgid "Type field required" msgstr "" -#: ../sepolicy/sepolicy/generate.py:876 +#: ../sepolicy/sepolicy/generate.py:878 #, python-format msgid "" "You need to define a new type which ends with: \n" " %s" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1104 +#: ../sepolicy/sepolicy/generate.py:1106 msgid "You must enter the executable path for your confined process" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1363 +#: ../sepolicy/sepolicy/generate.py:1369 msgid "Type Enforcement file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1364 +#: ../sepolicy/sepolicy/generate.py:1370 msgid "Interface file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1365 +#: ../sepolicy/sepolicy/generate.py:1371 msgid "File Contexts file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1367 +#: ../sepolicy/sepolicy/generate.py:1373 msgid "Spec file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1368 +#: ../sepolicy/sepolicy/generate.py:1374 msgid "Setup Script" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:25 -#: ../sepolicy/sepolicy/sepolicy.glade:4369 +#: ../sepolicy/sepolicy/sepolicy.glade:4330 msgid "Applications" msgstr "" @@ -3803,562 +3858,555 @@ msgstr "" msgid "Select domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2343 msgid "File Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2316 +#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2353 msgid "Users" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:129 -#: ../sepolicy/sepolicy/sepolicy.glade:1897 -#: ../sepolicy/sepolicy/sepolicy.glade:3802 ../sepolicy/sepolicy/gui.py:2297 +#: ../sepolicy/sepolicy/sepolicy.glade:1898 +#: ../sepolicy/sepolicy/sepolicy.glade:3803 ../sepolicy/sepolicy/gui.py:2334 msgid "System" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:189 -#: ../sepolicy/sepolicy/sepolicy.glade:4406 -#: ../sepolicy/sepolicy/sepolicy.glade:4499 -#: ../sepolicy/sepolicy/sepolicy.glade:4645 -#: ../sepolicy/sepolicy/sepolicy.glade:4793 -#: ../sepolicy/sepolicy/sepolicy.glade:4934 -#: ../sepolicy/sepolicy/sepolicy.glade:5007 +#: ../sepolicy/sepolicy/sepolicy.glade:4367 +#: ../sepolicy/sepolicy/sepolicy.glade:4460 +#: ../sepolicy/sepolicy/sepolicy.glade:4606 +#: ../sepolicy/sepolicy/sepolicy.glade:4755 +#: ../sepolicy/sepolicy/sepolicy.glade:4889 +#: ../sepolicy/sepolicy/sepolicy.glade:5030 +#: ../sepolicy/sepolicy/sepolicy.glade:5103 +#: ../sepolicy/sepolicy/sepolicy.glade:5238 msgid "Select" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:204 -#: ../sepolicy/sepolicy/sepolicy.glade:557 -#: ../sepolicy/sepolicy/sepolicy.glade:702 -#: ../sepolicy/sepolicy/sepolicy.glade:1243 -#: ../sepolicy/sepolicy/sepolicy.glade:1539 -#: ../sepolicy/sepolicy/sepolicy.glade:4579 -#: ../sepolicy/sepolicy/sepolicy.glade:4729 -#: ../sepolicy/sepolicy/sepolicy.glade:4859 -#: ../sepolicy/sepolicy/sepolicy.glade:5077 -#: ../sepolicy/sepolicy/sepolicy.glade:5233 -#: ../sepolicy/sepolicy/sepolicy.glade:5474 +#: ../sepolicy/sepolicy/sepolicy.glade:539 +#: ../sepolicy/sepolicy/sepolicy.glade:684 +#: ../sepolicy/sepolicy/sepolicy.glade:1239 +#: ../sepolicy/sepolicy/sepolicy.glade:1535 +#: ../sepolicy/sepolicy/sepolicy.glade:4540 +#: ../sepolicy/sepolicy/sepolicy.glade:4690 +#: ../sepolicy/sepolicy/sepolicy.glade:4821 +#: ../sepolicy/sepolicy/sepolicy.glade:4955 +#: ../sepolicy/sepolicy/sepolicy.glade:5173 +#: ../sepolicy/sepolicy/sepolicy.glade:5304 +#: ../sepolicy/sepolicy/sepolicy.glade:5464 msgid "Cancel" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:350 +#: ../sepolicy/sepolicy/sepolicy.glade:332 msgid "" "The entry that was entered is incorrect. Please try again in the " "ex:/.../... format." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:376 +#: ../sepolicy/sepolicy/sepolicy.glade:358 msgid "Retry" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:460 -#: ../sepolicy/sepolicy/sepolicy.glade:1124 -#: ../sepolicy/sepolicy/sepolicy.glade:1372 -#: ../sepolicy/sepolicy/sepolicy.glade:5102 -#: ../sepolicy/sepolicy/sepolicy.glade:5343 +#: ../sepolicy/sepolicy/sepolicy.glade:442 +#: ../sepolicy/sepolicy/sepolicy.glade:1120 +#: ../sepolicy/sepolicy/sepolicy.glade:1368 +#: ../sepolicy/sepolicy/sepolicy.glade:5332 msgid "Network Port Definitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:476 +#: ../sepolicy/sepolicy/sepolicy.glade:458 msgid "" -"Add file Equivilence Mapping. Mapping will be created when Update is " +"Add file Equivalence Mapping. Mapping will be created when Update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:501 -#: ../sepolicy/sepolicy/sepolicy.glade:4045 +#: ../sepolicy/sepolicy/sepolicy.glade:483 +#: ../sepolicy/sepolicy/sepolicy.glade:4046 msgid "Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:511 -#: ../sepolicy/sepolicy/sepolicy.glade:5154 -#: ../sepolicy/sepolicy/sepolicy.glade:5395 +#: ../sepolicy/sepolicy/sepolicy.glade:493 +#: ../sepolicy/sepolicy/sepolicy.glade:5384 msgid "" "Specify a new SELinux user name. By convention SELinux User names usually " "end in an _u." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:515 +#: ../sepolicy/sepolicy/sepolicy.glade:497 msgid "Enter the path to which you want to setup an equivalence label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:528 -#: ../sepolicy/sepolicy/sepolicy.glade:4062 -#: ../sepolicy/sepolicy/sepolicy.glade:4819 +#: ../sepolicy/sepolicy/sepolicy.glade:510 +#: ../sepolicy/sepolicy/sepolicy.glade:4063 +#: ../sepolicy/sepolicy/sepolicy.glade:4781 msgid "Equivalence Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:542 -#: ../sepolicy/sepolicy/sepolicy.glade:687 -#: ../sepolicy/sepolicy/sepolicy.glade:1228 -#: ../sepolicy/sepolicy/sepolicy.glade:1524 -#: ../sepolicy/sepolicy/sepolicy.glade:5218 -#: ../sepolicy/sepolicy/sepolicy.glade:5459 +#: ../sepolicy/sepolicy/sepolicy.glade:524 +#: ../sepolicy/sepolicy/sepolicy.glade:669 +#: ../sepolicy/sepolicy/sepolicy.glade:1224 +#: ../sepolicy/sepolicy/sepolicy.glade:1520 +#: ../sepolicy/sepolicy/sepolicy.glade:5449 msgid "Save to update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:582 +#: ../sepolicy/sepolicy/sepolicy.glade:564 msgid "" "Specify the mapping between the new path and the equivalence path. " "Everything under this new path will be labeled as if they were under the " "equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:639 +#: ../sepolicy/sepolicy/sepolicy.glade:621 msgid "Add a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:656 +#: ../sepolicy/sepolicy/sepolicy.glade:638 msgid "" " File Labeling for . File labels will be created " "when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:744 -#: ../sepolicy/sepolicy/sepolicy.glade:1471 -#: ../sepolicy/sepolicy/sepolicy.glade:3510 ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/sepolicy.glade:726 +#: ../sepolicy/sepolicy/sepolicy.glade:1467 +#: ../sepolicy/sepolicy/sepolicy.glade:3511 ../sepolicy/sepolicy/gui.py:68 msgid "Advanced >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:765 -#: ../sepolicy/sepolicy/sepolicy.glade:2305 -#: ../sepolicy/sepolicy/sepolicy.glade:2417 -#: ../sepolicy/sepolicy/sepolicy.glade:2539 -#: ../sepolicy/sepolicy/sepolicy.glade:4539 +#: ../sepolicy/sepolicy/sepolicy.glade:747 +#: ../sepolicy/sepolicy/sepolicy.glade:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:2418 +#: ../sepolicy/sepolicy/sepolicy.glade:2540 +#: ../sepolicy/sepolicy/sepolicy.glade:4500 msgid "Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:781 +#: ../sepolicy/sepolicy/sepolicy.glade:763 msgid "Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:795 +#: ../sepolicy/sepolicy/sepolicy.glade:777 msgid "" "Select the file class to which this label will be applied. Defaults to all " "classes." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:822 +#: ../sepolicy/sepolicy/sepolicy.glade:804 msgid "Make Path Recursive" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:826 +#: ../sepolicy/sepolicy/sepolicy.glade:808 msgid "" -"Select Make Path Recursive iff you want to apply this label to all children " +"Select Make Path Recursive if you want to apply this label to all children " "of the specified directory path. objects under the directory to have this " "label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:839 +#: ../sepolicy/sepolicy/sepolicy.glade:821 msgid "Browse" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:843 +#: ../sepolicy/sepolicy/sepolicy.glade:825 msgid "Browse to select the file/directory for labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:887 +#: ../sepolicy/sepolicy/sepolicy.glade:869 msgid "Path " msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:898 +#: ../sepolicy/sepolicy/sepolicy.glade:880 msgid "" "Specify the path using regular expressions that you would like to modify the " "labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:920 +#: ../sepolicy/sepolicy/sepolicy.glade:902 msgid "Select the SELinux file type to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:947 +#: ../sepolicy/sepolicy/sepolicy.glade:929 msgid "Enter the MLS Label to assign to this file path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:951 +#: ../sepolicy/sepolicy/sepolicy.glade:933 msgid "SELinux MLS Label you wish to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1088 +#: ../sepolicy/sepolicy/sepolicy.glade:1070 msgid "Analyzing Policy..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1141 +#: ../sepolicy/sepolicy/sepolicy.glade:1137 msgid "" "Add Login Mapping. Login Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1176 +#: ../sepolicy/sepolicy/sepolicy.glade:1172 msgid "" "Enter the login user name of the user to which you wish to add SELinux User " "confinement." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1205 +#: ../sepolicy/sepolicy/sepolicy.glade:1201 msgid "" "Select the SELinux User to assign to this login user. Login users by " "default get assigned by the __default__ user." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1268 +#: ../sepolicy/sepolicy/sepolicy.glade:1264 msgid "" "Enter MLS/MCS Range for this login User. Defaults to the range for the " "Selected SELinux User." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1271 -#: ../sepolicy/sepolicy/sepolicy.glade:3191 -#: ../sepolicy/sepolicy/sepolicy.glade:3312 -#: ../sepolicy/sepolicy/sepolicy.glade:5184 -#: ../sepolicy/sepolicy/sepolicy.glade:5425 +#: ../sepolicy/sepolicy/sepolicy.glade:1267 +#: ../sepolicy/sepolicy/sepolicy.glade:3192 +#: ../sepolicy/sepolicy/sepolicy.glade:3313 +#: ../sepolicy/sepolicy/sepolicy.glade:5414 msgid "MLS Range" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1283 +#: ../sepolicy/sepolicy/sepolicy.glade:1279 msgid "" "Specify the MLS Range for this user to login in with. Defaults to the " "selected SELinux Users MLS Range." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1389 +#: ../sepolicy/sepolicy/sepolicy.glade:1385 msgid "" " Network Port for . Ports will be created when " "update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1427 +#: ../sepolicy/sepolicy/sepolicy.glade:1423 msgid "Enter the port number or range to which you want to add a port type." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1457 +#: ../sepolicy/sepolicy/sepolicy.glade:1453 msgid "Port Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1502 +#: ../sepolicy/sepolicy/sepolicy.glade:1498 msgid "Select the port type you want to assign to the specified port number." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1566 +#: ../sepolicy/sepolicy/sepolicy.glade:1562 msgid "tcp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1570 +#: ../sepolicy/sepolicy/sepolicy.glade:1566 msgid "" "Select tcp if the port type should be assigned to tcp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1583 +#: ../sepolicy/sepolicy/sepolicy.glade:1579 msgid "udp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1587 +#: ../sepolicy/sepolicy/sepolicy.glade:1583 msgid "" "Select udp if the port type should be assigned to udp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1609 +#: ../sepolicy/sepolicy/sepolicy.glade:1605 msgid "Enter the MLS Label to assign to this port." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1706 +#: ../sepolicy/sepolicy/sepolicy.glade:1707 msgid "SELinux Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1742 +#: ../sepolicy/sepolicy/sepolicy.glade:1743 msgid "Select..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1791 -#: ../sepolicy/sepolicy/sepolicy.glade:2211 +#: ../sepolicy/sepolicy/sepolicy.glade:1792 +#: ../sepolicy/sepolicy/sepolicy.glade:2212 msgid "Booleans" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1795 +#: ../sepolicy/sepolicy/sepolicy.glade:1796 msgid "" "Display boolean information that can be used to modify the policy for the " "'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1809 -#: ../sepolicy/sepolicy/sepolicy.glade:2596 +#: ../sepolicy/sepolicy/sepolicy.glade:1810 +#: ../sepolicy/sepolicy/sepolicy.glade:2597 msgid "Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1813 +#: ../sepolicy/sepolicy/sepolicy.glade:1814 msgid "" "Display file type information that can be used by the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1827 -#: ../sepolicy/sepolicy/sepolicy.glade:2829 +#: ../sepolicy/sepolicy/sepolicy.glade:1828 +#: ../sepolicy/sepolicy/sepolicy.glade:2830 msgid "Network" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1831 +#: ../sepolicy/sepolicy/sepolicy.glade:1832 msgid "" "Display network ports to which the 'selected domain' can connect or listen " "to." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1845 -#: ../sepolicy/sepolicy/sepolicy.glade:3120 +#: ../sepolicy/sepolicy/sepolicy.glade:1846 +#: ../sepolicy/sepolicy/sepolicy.glade:3121 msgid "Transitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1849 +#: ../sepolicy/sepolicy/sepolicy.glade:1850 msgid "" "Display applications that can transition into or out of the 'selected " "domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1863 -#: ../sepolicy/sepolicy/sepolicy.glade:3221 +#: ../sepolicy/sepolicy/sepolicy.glade:1864 +#: ../sepolicy/sepolicy/sepolicy.glade:3222 msgid "Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1866 -#: ../sepolicy/sepolicy/sepolicy.glade:1883 -#: ../sepolicy/sepolicy/sepolicy.glade:1900 +#: ../sepolicy/sepolicy/sepolicy.glade:1867 +#: ../sepolicy/sepolicy/sepolicy.glade:1884 +#: ../sepolicy/sepolicy/sepolicy.glade:1901 msgid "Manage the SELinux configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1880 -#: ../sepolicy/sepolicy/sepolicy.glade:3343 +#: ../sepolicy/sepolicy/sepolicy.glade:1881 +#: ../sepolicy/sepolicy/sepolicy.glade:3344 msgid "SELinux Users" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1914 -#: ../sepolicy/sepolicy/sepolicy.glade:4015 +#: ../sepolicy/sepolicy/sepolicy.glade:1915 +#: ../sepolicy/sepolicy/sepolicy.glade:4016 msgid "Lockdown" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1917 +#: ../sepolicy/sepolicy/sepolicy.glade:1918 msgid "" "Lockdown the SELinux System.\n" "This screen can be used to turn up the SELinux Protections." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1932 +#: ../sepolicy/sepolicy/sepolicy.glade:1933 msgid "radiobutton" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2020 +#: ../sepolicy/sepolicy/sepolicy.glade:2021 msgid "Show Modified Only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2059 +#: ../sepolicy/sepolicy/sepolicy.glade:2060 msgid "Mislabeled files exist" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2079 +#: ../sepolicy/sepolicy/sepolicy.glade:2080 msgid "Show mislabeled files only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2119 -#: ../sepolicy/sepolicy/sepolicy.glade:3243 +#: ../sepolicy/sepolicy/sepolicy.glade:2120 +#: ../sepolicy/sepolicy/sepolicy.glade:3244 msgid "" -"If-Then-Else rules written in policy that can \n" +"If-Then-Else rules written in policy that can\n" "allow alternative access control." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2131 +#: ../sepolicy/sepolicy/sepolicy.glade:2132 msgid "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2251 -#: ../sepolicy/sepolicy/sepolicy.glade:2363 -#: ../sepolicy/sepolicy/sepolicy.glade:2481 -#: ../sepolicy/sepolicy/sepolicy.glade:4512 -#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:2252 +#: ../sepolicy/sepolicy/sepolicy.glade:2364 +#: ../sepolicy/sepolicy/sepolicy.glade:2482 +#: ../sepolicy/sepolicy/sepolicy.glade:4473 +#: ../sepolicy/sepolicy/sepolicy.glade:4768 msgid "File Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2287 -#: ../sepolicy/sepolicy/sepolicy.glade:2398 +#: ../sepolicy/sepolicy/sepolicy.glade:2288 +#: ../sepolicy/sepolicy/sepolicy.glade:2399 msgid "SELinux File Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2331 +#: ../sepolicy/sepolicy/sepolicy.glade:2332 msgid "File path used to enter the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2332 +#: ../sepolicy/sepolicy/sepolicy.glade:2333 msgid "Executable Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2447 +#: ../sepolicy/sepolicy/sepolicy.glade:2448 msgid "Files to which the 'selected domain' can write." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2448 +#: ../sepolicy/sepolicy/sepolicy.glade:2449 msgid "Writable files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2570 +#: ../sepolicy/sepolicy/sepolicy.glade:2571 msgid "File Types defined for the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2571 +#: ../sepolicy/sepolicy/sepolicy.glade:2572 msgid "Application File Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2703 +#: ../sepolicy/sepolicy/sepolicy.glade:2704 msgid "Network Ports to which the 'selected domain' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2704 +#: ../sepolicy/sepolicy/sepolicy.glade:2705 msgid "Outbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2803 +#: ../sepolicy/sepolicy/sepolicy.glade:2804 msgid "Network Ports to which the 'selected domain' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2804 +#: ../sepolicy/sepolicy/sepolicy.glade:2805 msgid "Inbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2865 +#: ../sepolicy/sepolicy/sepolicy.glade:2866 +#: ../sepolicy/sepolicy/sepolicy.glade:2956 msgid "" -"Boolean \n" +"Boolean\n" "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2891 +#: ../sepolicy/sepolicy/sepolicy.glade:2892 msgid "Boolean name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2908 +#: ../sepolicy/sepolicy/sepolicy.glade:2909 msgid "SELinux Application Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2929 +#: ../sepolicy/sepolicy/sepolicy.glade:2930 msgid "" "Executables which will transition to a different domain, when the 'selected " "domain' executes them." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2932 -msgid "Applicaton Transitions From 'select domain'" +#: ../sepolicy/sepolicy/sepolicy.glade:2933 +msgid "Application Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2955 -msgid "" -"Boolean\n" -"Enabled" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:2971 +#: ../sepolicy/sepolicy/sepolicy.glade:2972 msgid "Calling Process Domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2987 +#: ../sepolicy/sepolicy/sepolicy.glade:2988 msgid "Executable File" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3011 +#: ../sepolicy/sepolicy/sepolicy.glade:3012 msgid "" "Executables which will transition to the 'selected domain', when executing a " "selected domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3012 +#: ../sepolicy/sepolicy/sepolicy.glade:3013 msgid "Application Transitions Into 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3027 +#: ../sepolicy/sepolicy/sepolicy.glade:3028 msgid "" "File Transitions define what happens when the current domain creates the " "content of a particular class in a directory of the destination type. " "Optionally a file name could be specified for the transition." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3035 +#: ../sepolicy/sepolicy/sepolicy.glade:3036 msgid "SELinux Directory Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3048 +#: ../sepolicy/sepolicy/sepolicy.glade:3049 msgid "Destination Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3062 +#: ../sepolicy/sepolicy/sepolicy.glade:3063 msgid "SELinux Destination Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3075 +#: ../sepolicy/sepolicy/sepolicy.glade:3076 msgid "File Name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3097 +#: ../sepolicy/sepolicy/sepolicy.glade:3098 msgid "File Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3296 -#: ../sepolicy/sepolicy/sepolicy.glade:5277 -#: ../sepolicy/sepolicy/sepolicy.glade:5518 +#: ../sepolicy/sepolicy/sepolicy.glade:3297 +#: ../sepolicy/sepolicy/sepolicy.glade:5508 msgid "Default Level" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3382 +#: ../sepolicy/sepolicy/sepolicy.glade:3383 msgid "Select the system mode when the system first boots up" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3455 +#: ../sepolicy/sepolicy/sepolicy.glade:3456 msgid "Select the system mode for the current session" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3532 +#: ../sepolicy/sepolicy/sepolicy.glade:3533 msgid "System Policy Type:" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3593 +#: ../sepolicy/sepolicy/sepolicy.glade:3594 msgid "System Mode" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3631 +#: ../sepolicy/sepolicy/sepolicy.glade:3632 msgid "Import system settings from another machine" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3639 +#: ../sepolicy/sepolicy/sepolicy.glade:3640 msgid "Import" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3658 +#: ../sepolicy/sepolicy/sepolicy.glade:3659 msgid "Export system settings to a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3668 +#: ../sepolicy/sepolicy/sepolicy.glade:3669 msgid "Export" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3687 +#: ../sepolicy/sepolicy/sepolicy.glade:3688 msgid "Relabel all files back to system defaults on reboot" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3724 -#: ../sepolicy/sepolicy/sepolicy.glade:3825 -#: ../sepolicy/sepolicy/sepolicy.glade:3889 -#: ../sepolicy/sepolicy/sepolicy.glade:3952 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3725 +#: ../sepolicy/sepolicy/sepolicy.glade:3826 +#: ../sepolicy/sepolicy/sepolicy.glade:3890 +#: ../sepolicy/sepolicy/sepolicy.glade:3953 ../sepolicy/sepolicy/gui.py:64 msgid "Yes" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3741 -#: ../sepolicy/sepolicy/sepolicy.glade:3843 -#: ../sepolicy/sepolicy/sepolicy.glade:3906 -#: ../sepolicy/sepolicy/sepolicy.glade:3969 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3742 +#: ../sepolicy/sepolicy/sepolicy.glade:3844 +#: ../sepolicy/sepolicy/sepolicy.glade:3907 +#: ../sepolicy/sepolicy/sepolicy.glade:3970 ../sepolicy/sepolicy/gui.py:64 msgid "No" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3782 +#: ../sepolicy/sepolicy/sepolicy.glade:3783 msgid "System Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3829 -#: ../sepolicy/sepolicy/sepolicy.glade:3847 +#: ../sepolicy/sepolicy/sepolicy.glade:3830 +#: ../sepolicy/sepolicy/sepolicy.glade:3848 msgid "" "An unconfined domain is a process label that allows the process to do what " "it wants, without SELinux interfering. Applications started at boot by the " @@ -4368,13 +4416,13 @@ msgid "" "unconfined_t from the users/login screens." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3865 +#: ../sepolicy/sepolicy/sepolicy.glade:3866 msgid "Disable ability to run unconfined system processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3893 -#: ../sepolicy/sepolicy/sepolicy.glade:3910 -#: ../sepolicy/sepolicy/sepolicy.glade:3973 +#: ../sepolicy/sepolicy/sepolicy.glade:3894 +#: ../sepolicy/sepolicy/sepolicy.glade:3911 +#: ../sepolicy/sepolicy/sepolicy.glade:3974 msgid "" "An permissive domain is a process label that allows the process to do what " "it wants, with SELinux only logging the denials, but not enforcing them. " @@ -4383,11 +4431,11 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3928 +#: ../sepolicy/sepolicy/sepolicy.glade:3929 msgid "Disable all permissive processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3956 +#: ../sepolicy/sepolicy/sepolicy.glade:3957 msgid "" "A permissive domain is a process label that allows the process to do what it " "wants, with SELinux only logging the denials, but not enforcing them. " @@ -4396,171 +4444,189 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3994 +#: ../sepolicy/sepolicy/sepolicy.glade:3995 msgid "Deny all processes from ptracing or debugging other processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4031 +#: ../sepolicy/sepolicy/sepolicy.glade:4032 msgid "" "File equivalence cause the system to label content under the new path as if " "it were under the equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4087 +#: ../sepolicy/sepolicy/sepolicy.glade:4088 msgid "Files Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4100 +#: ../sepolicy/sepolicy/sepolicy.glade:4101 msgid "...SELECT TO VIEW DATA..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4131 +#: ../sepolicy/sepolicy/sepolicy.glade:4132 msgid "Delete" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4147 +#: ../sepolicy/sepolicy/sepolicy.glade:4148 msgid "Modify" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4208 +#: ../sepolicy/sepolicy/sepolicy.glade:4209 msgid "Revert" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4213 +#: ../sepolicy/sepolicy/sepolicy.glade:4214 msgid "" "Revert button will launch a dialog window which allows you to revert changes " "within the current transaction." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4225 ../sepolicy/sepolicy/gui.py:2379 +#: ../sepolicy/sepolicy/sepolicy.glade:4226 ../sepolicy/sepolicy/gui.py:2416 msgid "Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4230 +#: ../sepolicy/sepolicy/sepolicy.glade:4231 msgid "Commit all changes in your current transaction to the server." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4278 +#: ../sepolicy/sepolicy/sepolicy.glade:4279 msgid "Applications - Advanced Search" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4331 -msgid "Installed" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:4383 +#: ../sepolicy/sepolicy/sepolicy.glade:4344 msgid "Process Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4424 +#: ../sepolicy/sepolicy/sepolicy.glade:4385 msgid "More Details" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4460 -#: ../sepolicy/sepolicy/sepolicy.glade:4754 +#: ../sepolicy/sepolicy/sepolicy.glade:4421 +#: ../sepolicy/sepolicy/sepolicy.glade:4715 msgid "Delete Modified File Labeling" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4478 +#: ../sepolicy/sepolicy/sepolicy.glade:4439 msgid "" "Select file labeling to delete. File labeling will be deleted when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4486 msgid "SELinux File Label" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4564 -#: ../sepolicy/sepolicy/sepolicy.glade:4714 -#: ../sepolicy/sepolicy/sepolicy.glade:4844 +#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4675 +#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:4940 +#: ../sepolicy/sepolicy/sepolicy.glade:5289 msgid "Save to Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4604 +#: ../sepolicy/sepolicy/sepolicy.glade:4565 msgid "Delete Modified Ports" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4622 +#: ../sepolicy/sepolicy/sepolicy.glade:4583 msgid "Select ports to delete. Ports will be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4771 +#: ../sepolicy/sepolicy/sepolicy.glade:4733 msgid "" -"Select file equivalence labeling to delete.File equivalence labeling will be " -"deleted when update is applied." +"Select file equivalence labeling to delete. File equivalence labeling will " +"be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4887 +#: ../sepolicy/sepolicy/sepolicy.glade:4849 +#: ../sepolicy/sepolicy/sepolicy.glade:5198 +msgid "Delete Modified Users Mapping." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4867 +msgid "" +"Select login user mapping to delete. Login user mapping will be deleted when " +"update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4902 +msgid "Login name" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4983 msgid "More Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4914 +#: ../sepolicy/sepolicy/sepolicy.glade:5010 msgid "Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4973 +#: ../sepolicy/sepolicy/sepolicy.glade:5069 msgid "" "Review the updates you have made before committing them to the system. To " "reset an item, uncheck the checkbox. All items checked will be updated in " "the system when you select update." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5036 +#: ../sepolicy/sepolicy/sepolicy.glade:5132 msgid "Action" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5062 +#: ../sepolicy/sepolicy/sepolicy.glade:5158 msgid "Apply" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5119 -#: ../sepolicy/sepolicy/sepolicy.glade:5360 +#: ../sepolicy/sepolicy/sepolicy.glade:5216 +msgid "" +"Select users mapping to delete.Users mapping will be deleted when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5264 +msgid "SELinux Username" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5349 msgid "" "Add User Roles. SELinux User Roles will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5144 -#: ../sepolicy/sepolicy/sepolicy.glade:5385 +#: ../sepolicy/sepolicy/sepolicy.glade:5374 msgid "SELinux User Name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5258 -#: ../sepolicy/sepolicy/sepolicy.glade:5499 +#: ../sepolicy/sepolicy/sepolicy.glade:5489 msgid "" "Enter MLS/MCS Range for this SELinux User.\n" "s0-s0:c1023" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5289 -#: ../sepolicy/sepolicy/sepolicy.glade:5530 +#: ../sepolicy/sepolicy/sepolicy.glade:5520 msgid "" "Specify the default level that you would like this SELinux user to login " "with. Defaults to s0." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5293 -#: ../sepolicy/sepolicy/sepolicy.glade:5534 +#: ../sepolicy/sepolicy/sepolicy.glade:5524 msgid "Enter Default Level for SELinux User to login with. Default s0" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Disable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Enable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/gui.py:68 msgid "Advanced <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:92 +#: ../sepolicy/sepolicy/gui.py:94 msgid "" "\n" "To change from Disabled to Enforcing mode\n" @@ -4570,512 +4636,536 @@ msgid "" " * Change the system mode to Enforcing\n" msgstr "" -#: ../sepolicy/sepolicy/gui.py:115 +#: ../sepolicy/sepolicy/gui.py:488 #, python-format msgid "%s is not a valid domain" msgstr "" -#: ../sepolicy/sepolicy/gui.py:624 +#: ../sepolicy/sepolicy/gui.py:636 msgid "System Status: Disabled" msgstr "" -#: ../sepolicy/sepolicy/gui.py:722 +#: ../sepolicy/sepolicy/gui.py:734 msgid "Help: Start Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:726 +#: ../sepolicy/sepolicy/gui.py:738 msgid "Help: Booleans Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:732 +#: ../sepolicy/sepolicy/gui.py:744 msgid "Help: Executable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:735 +#: ../sepolicy/sepolicy/gui.py:747 msgid "Help: Writable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:738 +#: ../sepolicy/sepolicy/gui.py:750 msgid "Help: Application Types Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:743 +#: ../sepolicy/sepolicy/gui.py:755 msgid "Help: Outbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:746 +#: ../sepolicy/sepolicy/gui.py:758 msgid "Help: Inbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:752 +#: ../sepolicy/sepolicy/gui.py:764 msgid "Help: Transition from application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:755 +#: ../sepolicy/sepolicy/gui.py:767 msgid "Help: Transition into application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:758 +#: ../sepolicy/sepolicy/gui.py:770 msgid "Help: Transition application file Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:762 +#: ../sepolicy/sepolicy/gui.py:774 msgid "Help: Systems Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:766 +#: ../sepolicy/sepolicy/gui.py:778 msgid "Help: Lockdown Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:770 +#: ../sepolicy/sepolicy/gui.py:782 msgid "Help: Login Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:774 +#: ../sepolicy/sepolicy/gui.py:786 msgid "Help: SELinux User Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:778 +#: ../sepolicy/sepolicy/gui.py:790 msgid "Help: File Equivalence Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:922 ../sepolicy/sepolicy/gui.py:1211 -#: ../sepolicy/sepolicy/gui.py:1644 ../sepolicy/sepolicy/gui.py:1885 -#: ../sepolicy/sepolicy/gui.py:2698 +#: ../sepolicy/sepolicy/gui.py:936 ../sepolicy/sepolicy/gui.py:1227 +#: ../sepolicy/sepolicy/gui.py:1667 ../sepolicy/sepolicy/gui.py:1913 +#: ../sepolicy/sepolicy/gui.py:2692 msgid "More..." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1031 +#: ../sepolicy/sepolicy/gui.py:1044 #, python-format msgid "File path used to enter the '%s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1032 +#: ../sepolicy/sepolicy/gui.py:1045 #, python-format msgid "Files to which the '%s' domain can write." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1033 +#: ../sepolicy/sepolicy/gui.py:1046 #, python-format msgid "Network Ports to which the '%s' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1034 +#: ../sepolicy/sepolicy/gui.py:1047 #, python-format msgid "Network Ports to which the '%s' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1035 +#: ../sepolicy/sepolicy/gui.py:1048 #, python-format msgid "File Types defined for the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1036 +#: ../sepolicy/sepolicy/gui.py:1049 #, python-format msgid "" "Display boolean information that can be used to modify the policy for the " "'%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1037 +#: ../sepolicy/sepolicy/gui.py:1050 #, python-format msgid "Display file type information that can be used by the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1038 +#: ../sepolicy/sepolicy/gui.py:1051 #, python-format msgid "Display network ports to which the '%s' can connect or listen to." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1039 +#: ../sepolicy/sepolicy/gui.py:1052 #, python-format msgid "Application Transitions Into '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1040 +#: ../sepolicy/sepolicy/gui.py:1053 #, python-format msgid "Application Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1041 +#: ../sepolicy/sepolicy/gui.py:1054 #, python-format msgid "File Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1042 +#: ../sepolicy/sepolicy/gui.py:1055 #, python-format msgid "" "Executables which will transition to the '%s', when executing a selected " "domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1043 +#: ../sepolicy/sepolicy/gui.py:1056 #, python-format msgid "" "Executables which will transition to a different domain, when the '%s' " "executes them." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1044 +#: ../sepolicy/sepolicy/gui.py:1057 #, python-format msgid "Files by '%s' will transitions to a different label." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1045 +#: ../sepolicy/sepolicy/gui.py:1058 #, python-format msgid "Display applications that can transition into or out of the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1149 +#: ../sepolicy/sepolicy/gui.py:1166 msgid "MISSING FILE PATH" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1281 ../sepolicy/sepolicy/gui.py:1283 msgid "Boolean section." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 +#: ../sepolicy/sepolicy/gui.py:1281 msgid "To disable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1283 msgid "To enable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1324 +#: ../sepolicy/sepolicy/gui.py:1340 msgid "executable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1327 +#: ../sepolicy/sepolicy/gui.py:1343 msgid "writable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1330 +#: ../sepolicy/sepolicy/gui.py:1346 msgid "application" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1331 +#: ../sepolicy/sepolicy/gui.py:1347 #, python-format -msgid "Add new %s file path for '%s' domains." +msgid "Add new %(TYPE)s file path for '%(DOMAIN)s' domains." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1332 +#: ../sepolicy/sepolicy/gui.py:1348 #, python-format -msgid "Delete modified %s file paths for '%s' domain." +msgid "Delete %(TYPE)s file paths for '%(DOMAIN)s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1333 +#: ../sepolicy/sepolicy/gui.py:1349 #, python-format msgid "" -"Modify selected modified %s file path for '%s' domain. Only bolded items in " -"the list can be selected, this indicates they were modified previously." +"Modify %(TYPE)s file path for '%(DOMAIN)s' domain. Only bolded items in the " +"list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1345 +#: ../sepolicy/sepolicy/gui.py:1361 msgid "connect" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1348 +#: ../sepolicy/sepolicy/gui.py:1364 msgid "listen for inbound connections" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1350 +#: ../sepolicy/sepolicy/gui.py:1366 #, python-format -msgid "Add new port definition to which the '%s' domains is allowed to %s." +msgid "" +"Add new port definition to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1351 +#: ../sepolicy/sepolicy/gui.py:1367 #, python-format msgid "" -"Delete modified port definitions to which the '%s' domain is allowed to %s." +"Delete modified port definitions to which the '%(APP)s' domain is allowed to " +"%(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1352 +#: ../sepolicy/sepolicy/gui.py:1368 #, python-format -msgid "Modify port definitions to which the '%s' domain is allowed to %s." +msgid "" +"Modify port definitions to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1381 +#: ../sepolicy/sepolicy/gui.py:1397 msgid "Add new SELinux User/Role definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1382 +#: ../sepolicy/sepolicy/gui.py:1398 msgid "Delete modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1383 +#: ../sepolicy/sepolicy/gui.py:1399 msgid "Modify selected modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1390 +#: ../sepolicy/sepolicy/gui.py:1406 msgid "Add new Login Mapping definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1391 +#: ../sepolicy/sepolicy/gui.py:1407 msgid "Delete modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1392 +#: ../sepolicy/sepolicy/gui.py:1408 msgid "Modify selected modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1399 +#: ../sepolicy/sepolicy/gui.py:1415 msgid "Add new File Equivalence definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1400 +#: ../sepolicy/sepolicy/gui.py:1416 msgid "Delete modified File Equivalence definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1401 +#: ../sepolicy/sepolicy/gui.py:1417 msgid "" "Modify selected modified File Equivalence definitions. Only bolded items in " "the list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1429 +#: ../sepolicy/sepolicy/gui.py:1445 #, python-format msgid "Boolean %s Allow Rules" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1442 +#: ../sepolicy/sepolicy/gui.py:1458 #, python-format msgid "Add Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1443 +#: ../sepolicy/sepolicy/gui.py:1459 #, python-format msgid "Add Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1448 +#: ../sepolicy/sepolicy/gui.py:1464 #, python-format msgid "" "Add File Labeling for %s. File labels will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1449 ../sepolicy/sepolicy/gui.py:1500 +#: ../sepolicy/sepolicy/gui.py:1465 ../sepolicy/sepolicy/gui.py:1518 #, python-format msgid "Add File Labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1459 +#: ../sepolicy/sepolicy/gui.py:1475 msgid "Add Login Mapping. User Mapping will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1460 +#: ../sepolicy/sepolicy/gui.py:1476 msgid "Add Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1465 +#: ../sepolicy/sepolicy/gui.py:1481 msgid "" "Add SELinux User Role. SELinux user roles will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1466 +#: ../sepolicy/sepolicy/gui.py:1482 msgid "Add SELinux Users" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1473 +#: ../sepolicy/sepolicy/gui.py:1489 msgid "" "Add File Equivalency Mapping. Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1474 +#: ../sepolicy/sepolicy/gui.py:1490 msgid "Add SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1499 +#: ../sepolicy/sepolicy/gui.py:1517 #, python-format msgid "" "Modify File Labeling for %s. File labels will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1566 +#: ../sepolicy/sepolicy/gui.py:1573 +msgid "" +"Modify SELinux User Role. SELinux user roles will be modified when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1574 +msgid "Modify SELinux Users" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1582 +msgid "" +"Modify Login Mapping. Login Mapping will be modified when Update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1583 +msgid "Modify Login Mapping" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1589 msgid "" "Modify File Equivalency Mapping. Mapping will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1567 +#: ../sepolicy/sepolicy/gui.py:1590 msgid "Modify SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1652 +#: ../sepolicy/sepolicy/gui.py:1675 #, python-format msgid "" "Modify Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1653 +#: ../sepolicy/sepolicy/gui.py:1676 #, python-format msgid "Modify Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1866 +#: ../sepolicy/sepolicy/gui.py:1894 #, python-format msgid "The entry '%s' is not a valid path. Paths must begin with a '/'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1879 +#: ../sepolicy/sepolicy/gui.py:1907 msgid "Port number must be between 1 and 65536" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2146 +#: ../sepolicy/sepolicy/gui.py:2183 #, python-format msgid "SELinux name: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2157 +#: ../sepolicy/sepolicy/gui.py:2194 #, python-format msgid "Add file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2159 +#: ../sepolicy/sepolicy/gui.py:2196 #, python-format msgid "Delete file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2161 +#: ../sepolicy/sepolicy/gui.py:2198 #, python-format msgid "Modify file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2165 +#: ../sepolicy/sepolicy/gui.py:2202 #, python-format msgid "File path: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2168 +#: ../sepolicy/sepolicy/gui.py:2205 #, python-format msgid "File class: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2171 ../sepolicy/sepolicy/gui.py:2195 +#: ../sepolicy/sepolicy/gui.py:2208 ../sepolicy/sepolicy/gui.py:2232 #, python-format msgid "SELinux file type: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2180 +#: ../sepolicy/sepolicy/gui.py:2217 #, python-format msgid "Add ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2182 +#: ../sepolicy/sepolicy/gui.py:2219 #, python-format msgid "Delete ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2184 +#: ../sepolicy/sepolicy/gui.py:2221 #, python-format msgid "Modify ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2187 +#: ../sepolicy/sepolicy/gui.py:2224 #, python-format msgid "Network ports: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2190 +#: ../sepolicy/sepolicy/gui.py:2227 #, python-format msgid "Network protocol: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2204 +#: ../sepolicy/sepolicy/gui.py:2241 msgid "Add user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2206 +#: ../sepolicy/sepolicy/gui.py:2243 msgid "Delete user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2208 +#: ../sepolicy/sepolicy/gui.py:2245 msgid "Modify user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2211 +#: ../sepolicy/sepolicy/gui.py:2248 #, python-format msgid "SELinux User : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2216 +#: ../sepolicy/sepolicy/gui.py:2253 #, python-format msgid "Roles: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2220 ../sepolicy/sepolicy/gui.py:2245 +#: ../sepolicy/sepolicy/gui.py:2257 ../sepolicy/sepolicy/gui.py:2282 #, python-format msgid "MLS/MCS Range: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2229 +#: ../sepolicy/sepolicy/gui.py:2266 msgid "Add login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2231 +#: ../sepolicy/sepolicy/gui.py:2268 msgid "Delete login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2233 +#: ../sepolicy/sepolicy/gui.py:2270 msgid "Modify login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2237 +#: ../sepolicy/sepolicy/gui.py:2274 #, python-format -msgid "Linux User : %s" +msgid "Login Name : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2241 +#: ../sepolicy/sepolicy/gui.py:2278 #, python-format msgid "SELinux User: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2254 +#: ../sepolicy/sepolicy/gui.py:2291 msgid "Add file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2256 +#: ../sepolicy/sepolicy/gui.py:2293 msgid "Delete file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2258 +#: ../sepolicy/sepolicy/gui.py:2295 msgid "Modify file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2262 +#: ../sepolicy/sepolicy/gui.py:2299 #, python-format msgid "File path : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2266 +#: ../sepolicy/sepolicy/gui.py:2303 #, python-format msgid "Equivalence: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2369 +#: ../sepolicy/sepolicy/gui.py:2406 #, python-format -msgid "Run restorecon on %s to change its type from %s to the default %s?" +msgid "" +"Run restorecon on %(PATH)s to change its type from %(CUR_CONTEXT)s to the " +"default %(DEF_CONTEXT)s?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2381 +#: ../sepolicy/sepolicy/gui.py:2418 msgid "Update Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2383 +#: ../sepolicy/sepolicy/gui.py:2420 msgid "Revert Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2556 +#: ../sepolicy/sepolicy/gui.py:2547 msgid "System Status: Enforcing" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2558 +#: ../sepolicy/sepolicy/gui.py:2549 msgid "System Status: Permissive" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2749 +#: ../sepolicy/sepolicy/gui.py:2743 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -5085,7 +5175,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "" "You are attempting to close the application without applying your changes.\n" " * To apply changes you have made during this session, click No and " @@ -5094,6 +5184,6 @@ msgid "" "All changes that you have made during this session will be lost." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "Loss of data Dialog" msgstr "" diff --git a/policycoreutils/po/aln.po b/policycoreutils/po/aln.po index 507644c..80e3e2f 100644 --- a/policycoreutils/po/aln.po +++ b/policycoreutils/po/aln.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: Policycoreutils\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-10-10 16:04-0400\n" -"PO-Revision-Date: 2012-03-30 18:14+0000\n" -"Last-Translator: FULL NAME \n" +"POT-Creation-Date: 2014-01-03 16:04-0500\n" +"PO-Revision-Date: 2013-12-20 13:58+0000\n" +"Last-Translator: dwalsh \n" "Language-Team: Albanian Gheg (http://www.transifex.com/projects/p/fedora/" "language/aln/)\n" "Language: aln\n" @@ -87,96 +87,101 @@ msgstr "" msgid "To make this policy package active, execute:" msgstr "" -#: ../semanage/seobject.py:210 +#: ../semanage/seobject/__init__.py:220 msgid "Could not create semanage handle" msgstr "" -#: ../semanage/seobject.py:218 +#: ../semanage/seobject/__init__.py:228 msgid "SELinux policy is not managed or store cannot be accessed." msgstr "" -#: ../semanage/seobject.py:223 +#: ../semanage/seobject/__init__.py:233 msgid "Cannot read policy store." msgstr "" -#: ../semanage/seobject.py:228 +#: ../semanage/seobject/__init__.py:238 msgid "Could not establish semanage connection" msgstr "" -#: ../semanage/seobject.py:233 +#: ../semanage/seobject/__init__.py:243 msgid "Could not test MLS enabled status" msgstr "" -#: ../semanage/seobject.py:239 ../semanage/seobject.py:254 +#: ../semanage/seobject/__init__.py:249 ../semanage/seobject/__init__.py:264 msgid "Not yet implemented" msgstr "" -#: ../semanage/seobject.py:243 +#: ../semanage/seobject/__init__.py:253 msgid "Semanage transaction already in progress" msgstr "" -#: ../semanage/seobject.py:252 +#: ../semanage/seobject/__init__.py:262 msgid "Could not start semanage transaction" msgstr "" -#: ../semanage/seobject.py:264 +#: ../semanage/seobject/__init__.py:274 msgid "Could not commit semanage transaction" msgstr "" -#: ../semanage/seobject.py:269 +#: ../semanage/seobject/__init__.py:279 msgid "Semanage transaction not in progress" msgstr "" -#: ../semanage/seobject.py:281 ../semanage/seobject.py:376 +#: ../semanage/seobject/__init__.py:291 ../semanage/seobject/__init__.py:386 msgid "Could not list SELinux modules" msgstr "" -#: ../semanage/seobject.py:300 +#: ../semanage/seobject/__init__.py:310 msgid "Modules Name" msgstr "" -#: ../semanage/seobject.py:300 ../gui/modulesPage.py:63 +#: ../semanage/seobject/__init__.py:310 ../gui/modulesPage.py:63 msgid "Version" msgstr "" -#: ../semanage/seobject.py:303 ../gui/statusPage.py:75 -#: ../sepolicy/sepolicy/sepolicy.glade:3430 +#: ../semanage/seobject/__init__.py:313 ../gui/statusPage.py:71 +#: ../sepolicy/sepolicy/sepolicy.glade:3431 msgid "Disabled" msgstr "" -#: ../semanage/seobject.py:312 +#: ../semanage/seobject/__init__.py:322 #, python-format msgid "Module does not exists %s " msgstr "" -#: ../semanage/seobject.py:322 +#: ../semanage/seobject/__init__.py:332 #, python-format msgid "Could not disable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:333 +#: ../semanage/seobject/__init__.py:343 #, python-format msgid "Could not enable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:348 +#: ../semanage/seobject/__init__.py:358 #, python-format msgid "Could not remove module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:363 +#: ../semanage/seobject/__init__.py:373 msgid "dontaudit requires either 'on' or 'off'" msgstr "" -#: ../semanage/seobject.py:391 +#: ../semanage/seobject/__init__.py:402 +msgid "Customized Permissive Types" +msgstr "" + +#: ../semanage/seobject/__init__.py:410 msgid "Builtin Permissive Types" msgstr "" -#: ../semanage/seobject.py:401 -msgid "Customized Permissive Types" +#: ../semanage/seobject/__init__.py:419 +#, python-format +msgid "%s is not a domain type" msgstr "" -#: ../semanage/seobject.py:410 +#: ../semanage/seobject/__init__.py:424 msgid "" "The sepolgen python module is required to setup permissive domains.\n" "In some distributions it is included in the policycoreutils-devel patckage.\n" @@ -184,810 +189,825 @@ msgid "" "Or similar for your distro." msgstr "" -#: ../semanage/seobject.py:447 +#: ../semanage/seobject/__init__.py:461 #, python-format msgid "Could not set permissive domain %s (module installation failed)" msgstr "" -#: ../semanage/seobject.py:453 +#: ../semanage/seobject/__init__.py:467 #, python-format msgid "Could not remove permissive domain %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:488 ../semanage/seobject.py:562 -#: ../semanage/seobject.py:608 ../semanage/seobject.py:730 -#: ../semanage/seobject.py:760 ../semanage/seobject.py:827 -#: ../semanage/seobject.py:884 ../semanage/seobject.py:1144 -#: ../semanage/seobject.py:1879 ../semanage/seobject.py:1942 -#: ../semanage/seobject.py:1961 ../semanage/seobject.py:2084 -#: ../semanage/seobject.py:2135 +#: ../semanage/seobject/__init__.py:501 ../semanage/seobject/__init__.py:575 +#: ../semanage/seobject/__init__.py:621 ../semanage/seobject/__init__.py:743 +#: ../semanage/seobject/__init__.py:773 ../semanage/seobject/__init__.py:839 +#: ../semanage/seobject/__init__.py:896 ../semanage/seobject/__init__.py:1156 +#: ../semanage/seobject/__init__.py:1891 ../semanage/seobject/__init__.py:1954 +#: ../semanage/seobject/__init__.py:1973 ../semanage/seobject/__init__.py:2096 +#: ../semanage/seobject/__init__.py:2147 #, python-format msgid "Could not create a key for %s" msgstr "" -#: ../semanage/seobject.py:492 ../semanage/seobject.py:566 -#: ../semanage/seobject.py:612 ../semanage/seobject.py:618 +#: ../semanage/seobject/__init__.py:505 ../semanage/seobject/__init__.py:579 +#: ../semanage/seobject/__init__.py:625 ../semanage/seobject/__init__.py:631 #, python-format msgid "Could not check if login mapping for %s is defined" msgstr "" -#: ../semanage/seobject.py:501 +#: ../semanage/seobject/__init__.py:514 #, python-format msgid "Linux Group %s does not exist" msgstr "" -#: ../semanage/seobject.py:506 +#: ../semanage/seobject/__init__.py:519 #, python-format msgid "Linux User %s does not exist" msgstr "" -#: ../semanage/seobject.py:510 +#: ../semanage/seobject/__init__.py:523 #, python-format msgid "Could not create login mapping for %s" msgstr "" -#: ../semanage/seobject.py:514 ../semanage/seobject.py:775 +#: ../semanage/seobject/__init__.py:527 ../semanage/seobject/__init__.py:788 #, python-format msgid "Could not set name for %s" msgstr "" -#: ../semanage/seobject.py:519 ../semanage/seobject.py:785 +#: ../semanage/seobject/__init__.py:532 ../semanage/seobject/__init__.py:798 #, python-format msgid "Could not set MLS range for %s" msgstr "" -#: ../semanage/seobject.py:523 +#: ../semanage/seobject/__init__.py:536 #, python-format msgid "Could not set SELinux user for %s" msgstr "" -#: ../semanage/seobject.py:527 +#: ../semanage/seobject/__init__.py:540 #, python-format msgid "Could not add login mapping for %s" msgstr "" -#: ../semanage/seobject.py:545 +#: ../semanage/seobject/__init__.py:558 msgid "Requires seuser or serange" msgstr "" -#: ../semanage/seobject.py:568 ../semanage/seobject.py:614 +#: ../semanage/seobject/__init__.py:581 ../semanage/seobject/__init__.py:627 #, python-format msgid "Login mapping for %s is not defined" msgstr "" -#: ../semanage/seobject.py:572 +#: ../semanage/seobject/__init__.py:585 #, python-format msgid "Could not query seuser for %s" msgstr "" -#: ../semanage/seobject.py:586 +#: ../semanage/seobject/__init__.py:599 #, python-format msgid "Could not modify login mapping for %s" msgstr "" -#: ../semanage/seobject.py:620 +#: ../semanage/seobject/__init__.py:633 #, python-format msgid "Login mapping for %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:624 +#: ../semanage/seobject/__init__.py:637 #, python-format msgid "Could not delete login mapping for %s" msgstr "" -#: ../semanage/seobject.py:646 ../semanage/seobject.py:679 -#: ../semanage/seobject.py:927 +#: ../semanage/seobject/__init__.py:659 ../semanage/seobject/__init__.py:692 +#: ../semanage/seobject/__init__.py:939 msgid "Could not list login mappings" msgstr "" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 #: ../gui/system-config-selinux.glade:100 -#: ../sepolicy/sepolicy/sepolicy.glade:1166 -#: ../sepolicy/sepolicy/sepolicy.glade:3155 +#: ../sepolicy/sepolicy/sepolicy.glade:1162 +#: ../sepolicy/sepolicy/sepolicy.glade:3156 msgid "Login Name" msgstr "" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 #: ../gui/system-config-selinux.glade:128 #: ../gui/system-config-selinux.glade:915 -#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:44 -#: ../sepolicy/sepolicy/sepolicy.glade:1192 -#: ../sepolicy/sepolicy/sepolicy.glade:3173 -#: ../sepolicy/sepolicy/sepolicy.glade:3259 +#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:41 +#: ../sepolicy/sepolicy/sepolicy.glade:1188 +#: ../sepolicy/sepolicy/sepolicy.glade:3174 +#: ../sepolicy/sepolicy/sepolicy.glade:3260 +#: ../sepolicy/sepolicy/sepolicy.glade:4915 msgid "SELinux User" msgstr "" -#: ../semanage/seobject.py:707 ../gui/system-config-selinux.glade:156 +#: ../semanage/seobject/__init__.py:720 ../gui/system-config-selinux.glade:156 #: ../gui/system-config-selinux.glade:943 msgid "MLS/MCS Range" msgstr "" -#: ../semanage/seobject.py:707 +#: ../semanage/seobject/__init__.py:720 msgid "Service" msgstr "" -#: ../semanage/seobject.py:733 ../semanage/seobject.py:764 -#: ../semanage/seobject.py:831 ../semanage/seobject.py:888 -#: ../semanage/seobject.py:894 +#: ../semanage/seobject/__init__.py:746 ../semanage/seobject/__init__.py:777 +#: ../semanage/seobject/__init__.py:843 ../semanage/seobject/__init__.py:900 +#: ../semanage/seobject/__init__.py:906 #, python-format msgid "Could not check if SELinux user %s is defined" msgstr "" -#: ../semanage/seobject.py:736 ../semanage/seobject.py:837 -#: ../semanage/seobject.py:900 +#: ../semanage/seobject/__init__.py:749 ../semanage/seobject/__init__.py:849 +#: ../semanage/seobject/__init__.py:912 #, python-format msgid "Could not query user for %s" msgstr "" -#: ../semanage/seobject.py:756 +#: ../semanage/seobject/__init__.py:769 #, python-format msgid "You must add at least one role for %s" msgstr "" -#: ../semanage/seobject.py:771 +#: ../semanage/seobject/__init__.py:784 #, python-format msgid "Could not create SELinux user for %s" msgstr "" -#: ../semanage/seobject.py:780 +#: ../semanage/seobject/__init__.py:793 #, python-format -msgid "Could not add role %s for %s" +msgid "Could not add role %(ROLE)s for %(NAME)s" msgstr "" -#: ../semanage/seobject.py:789 +#: ../semanage/seobject/__init__.py:802 #, python-format msgid "Could not set MLS level for %s" msgstr "" -#: ../semanage/seobject.py:792 +#: ../semanage/seobject/__init__.py:805 #, python-format -msgid "Could not add prefix %s for %s" +msgid "Could not add prefix %(PREFIX)s for %(ROLE)s" msgstr "" -#: ../semanage/seobject.py:795 +#: ../semanage/seobject/__init__.py:808 #, python-format msgid "Could not extract key for %s" msgstr "" -#: ../semanage/seobject.py:799 +#: ../semanage/seobject/__init__.py:812 #, python-format msgid "Could not add SELinux user %s" msgstr "" -#: ../semanage/seobject.py:821 +#: ../semanage/seobject/__init__.py:833 msgid "Requires prefix, roles, level or range" msgstr "" -#: ../semanage/seobject.py:823 +#: ../semanage/seobject/__init__.py:835 msgid "Requires prefix or roles" msgstr "" -#: ../semanage/seobject.py:833 ../semanage/seobject.py:890 +#: ../semanage/seobject/__init__.py:845 ../semanage/seobject/__init__.py:902 #, python-format msgid "SELinux user %s is not defined" msgstr "" -#: ../semanage/seobject.py:862 +#: ../semanage/seobject/__init__.py:874 #, python-format msgid "Could not modify SELinux user %s" msgstr "" -#: ../semanage/seobject.py:896 +#: ../semanage/seobject/__init__.py:908 #, python-format msgid "SELinux user %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:907 +#: ../semanage/seobject/__init__.py:919 #, python-format msgid "Could not delete SELinux user %s" msgstr "" -#: ../semanage/seobject.py:945 +#: ../semanage/seobject/__init__.py:957 msgid "Could not list SELinux users" msgstr "" -#: ../semanage/seobject.py:951 +#: ../semanage/seobject/__init__.py:963 #, python-format msgid "Could not list roles for user %s" msgstr "" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "Labeling" msgstr "" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "MLS/" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "Prefix" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Level" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Range" msgstr "" -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 -#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:59 -#: ../sepolicy/sepolicy/sepolicy.glade:3279 -#: ../sepolicy/sepolicy/sepolicy.glade:5170 -#: ../sepolicy/sepolicy/sepolicy.glade:5411 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 +#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:56 +#: ../sepolicy/sepolicy/sepolicy.glade:3280 +#: ../sepolicy/sepolicy/sepolicy.glade:5251 +#: ../sepolicy/sepolicy/sepolicy.glade:5400 msgid "SELinux Roles" msgstr "" -#: ../semanage/seobject.py:1002 +#: ../semanage/seobject/__init__.py:1014 msgid "Protocol udp or tcp is required" msgstr "" -#: ../semanage/seobject.py:1004 +#: ../semanage/seobject/__init__.py:1016 msgid "Port is required" msgstr "" -#: ../semanage/seobject.py:1014 +#: ../semanage/seobject/__init__.py:1026 msgid "Invalid Port" msgstr "" -#: ../semanage/seobject.py:1018 +#: ../semanage/seobject/__init__.py:1030 #, python-format -msgid "Could not create a key for %s/%s" +msgid "Could not create a key for %(PROTOTYPE)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1029 +#: ../semanage/seobject/__init__.py:1041 msgid "Type is required" msgstr "" -#: ../semanage/seobject.py:1032 ../semanage/seobject.py:1096 -#: ../semanage/seobject.py:1873 +#: ../semanage/seobject/__init__.py:1044 ../semanage/seobject/__init__.py:1108 +#: ../semanage/seobject/__init__.py:1885 #, python-format msgid "Type %s is invalid, must be a port type" msgstr "" -#: ../semanage/seobject.py:1040 ../semanage/seobject.py:1102 -#: ../semanage/seobject.py:1157 ../semanage/seobject.py:1163 +#: ../semanage/seobject/__init__.py:1052 ../semanage/seobject/__init__.py:1169 +#: ../semanage/seobject/__init__.py:1175 #, python-format -msgid "Could not check if port %s/%s is defined" +msgid "Could not check if port %(PROTOCOL)s/%(PORT)s is defined" msgstr "" -#: ../semanage/seobject.py:1042 +#: ../semanage/seobject/__init__.py:1054 #, python-format -msgid "Port %s/%s already defined" +msgid "Port %(PROTOCOL)s/%(PORT)s already defined" msgstr "" -#: ../semanage/seobject.py:1046 +#: ../semanage/seobject/__init__.py:1058 #, python-format -msgid "Could not create port for %s/%s" +msgid "Could not create port for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1052 +#: ../semanage/seobject/__init__.py:1064 #, python-format -msgid "Could not create context for %s/%s" +msgid "Could not create context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1056 +#: ../semanage/seobject/__init__.py:1068 #, python-format -msgid "Could not set user in port context for %s/%s" +msgid "Could not set user in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1060 +#: ../semanage/seobject/__init__.py:1072 #, python-format -msgid "Could not set role in port context for %s/%s" +msgid "Could not set role in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1064 +#: ../semanage/seobject/__init__.py:1076 #, python-format -msgid "Could not set type in port context for %s/%s" +msgid "Could not set type in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1069 +#: ../semanage/seobject/__init__.py:1081 #, python-format -msgid "Could not set mls fields in port context for %s/%s" +msgid "Could not set mls fields in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1073 +#: ../semanage/seobject/__init__.py:1085 #, python-format -msgid "Could not set port context for %s/%s" +msgid "Could not set port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1077 +#: ../semanage/seobject/__init__.py:1089 #, python-format -msgid "Could not add port %s/%s" +msgid "Could not add port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1091 ../semanage/seobject.py:1367 -#: ../semanage/seobject.py:1566 +#: ../semanage/seobject/__init__.py:1103 ../semanage/seobject/__init__.py:1379 +#: ../semanage/seobject/__init__.py:1578 msgid "Requires setype or serange" msgstr "" -#: ../semanage/seobject.py:1093 +#: ../semanage/seobject/__init__.py:1105 msgid "Requires setype" msgstr "" -#: ../semanage/seobject.py:1104 ../semanage/seobject.py:1159 +#: ../semanage/seobject/__init__.py:1114 +#, python-format +msgid "Could not check if port @%(PROTOCOL)s/%(PORT)s is defined" +msgstr "" + +#: ../semanage/seobject/__init__.py:1116 #, python-format -msgid "Port %s/%s is not defined" +msgid "Port @%(PROTOCOL)s/%(PORT)s is not defined" msgstr "" -#: ../semanage/seobject.py:1108 +#: ../semanage/seobject/__init__.py:1120 #, python-format -msgid "Could not query port %s/%s" +msgid "Could not query port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1119 +#: ../semanage/seobject/__init__.py:1131 #, python-format -msgid "Could not modify port %s/%s" +msgid "Could not modify port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1132 +#: ../semanage/seobject/__init__.py:1144 msgid "Could not list the ports" msgstr "" -#: ../semanage/seobject.py:1148 +#: ../semanage/seobject/__init__.py:1160 #, python-format msgid "Could not delete the port %s" msgstr "" -#: ../semanage/seobject.py:1165 +#: ../semanage/seobject/__init__.py:1171 #, python-format -msgid "Port %s/%s is defined in policy, cannot be deleted" +msgid "Port %(PROTOCOL)s/%(PORT)s is not defined" msgstr "" -#: ../semanage/seobject.py:1169 +#: ../semanage/seobject/__init__.py:1177 #, python-format -msgid "Could not delete port %s/%s" +msgid "Port %(PROTOCOL)s/%(PORT)s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1185 ../semanage/seobject.py:1207 +#: ../semanage/seobject/__init__.py:1181 +#, python-format +msgid "Could not delete port %(PROTOCOL)s/%(PORT)s" +msgstr "" + +#: ../semanage/seobject/__init__.py:1197 ../semanage/seobject/__init__.py:1219 msgid "Could not list ports" msgstr "" -#: ../semanage/seobject.py:1246 ../sepolicy/sepolicy/sepolicy.glade:2675 -#: ../sepolicy/sepolicy/sepolicy.glade:2773 -#: ../sepolicy/sepolicy/sepolicy.glade:4687 +#: ../semanage/seobject/__init__.py:1258 +#: ../sepolicy/sepolicy/sepolicy.glade:2676 +#: ../sepolicy/sepolicy/sepolicy.glade:2774 +#: ../sepolicy/sepolicy/sepolicy.glade:4648 msgid "SELinux Port Type" msgstr "" -#: ../semanage/seobject.py:1246 +#: ../semanage/seobject/__init__.py:1258 msgid "Proto" msgstr "" -#: ../semanage/seobject.py:1246 ../gui/system-config-selinux.glade:335 -#: ../sepolicy/sepolicy/sepolicy.glade:1417 +#: ../semanage/seobject/__init__.py:1258 +#: ../gui/system-config-selinux.glade:335 +#: ../sepolicy/sepolicy/sepolicy.glade:1413 msgid "Port Number" msgstr "" -#: ../semanage/seobject.py:1270 +#: ../semanage/seobject/__init__.py:1282 msgid "Node Address is required" msgstr "" -#: ../semanage/seobject.py:1285 +#: ../semanage/seobject/__init__.py:1297 msgid "Unknown or missing protocol" msgstr "" -#: ../semanage/seobject.py:1299 +#: ../semanage/seobject/__init__.py:1311 msgid "SELinux node type is required" msgstr "" -#: ../semanage/seobject.py:1302 ../semanage/seobject.py:1370 +#: ../semanage/seobject/__init__.py:1314 ../semanage/seobject/__init__.py:1382 #, python-format msgid "Type %s is invalid, must be a node type" msgstr "" -#: ../semanage/seobject.py:1306 ../semanage/seobject.py:1374 -#: ../semanage/seobject.py:1410 ../semanage/seobject.py:1508 -#: ../semanage/seobject.py:1570 ../semanage/seobject.py:1604 -#: ../semanage/seobject.py:1818 +#: ../semanage/seobject/__init__.py:1318 ../semanage/seobject/__init__.py:1386 +#: ../semanage/seobject/__init__.py:1422 ../semanage/seobject/__init__.py:1520 +#: ../semanage/seobject/__init__.py:1582 ../semanage/seobject/__init__.py:1616 +#: ../semanage/seobject/__init__.py:1830 #, python-format msgid "Could not create key for %s" msgstr "" -#: ../semanage/seobject.py:1308 ../semanage/seobject.py:1378 -#: ../semanage/seobject.py:1414 ../semanage/seobject.py:1420 +#: ../semanage/seobject/__init__.py:1320 ../semanage/seobject/__init__.py:1390 +#: ../semanage/seobject/__init__.py:1426 ../semanage/seobject/__init__.py:1432 #, python-format msgid "Could not check if addr %s is defined" msgstr "" -#: ../semanage/seobject.py:1317 +#: ../semanage/seobject/__init__.py:1329 #, python-format msgid "Could not create addr for %s" msgstr "" -#: ../semanage/seobject.py:1323 ../semanage/seobject.py:1524 -#: ../semanage/seobject.py:1767 +#: ../semanage/seobject/__init__.py:1335 ../semanage/seobject/__init__.py:1536 +#: ../semanage/seobject/__init__.py:1779 #, python-format msgid "Could not create context for %s" msgstr "" -#: ../semanage/seobject.py:1327 +#: ../semanage/seobject/__init__.py:1339 #, python-format msgid "Could not set mask for %s" msgstr "" -#: ../semanage/seobject.py:1331 +#: ../semanage/seobject/__init__.py:1343 #, python-format msgid "Could not set user in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1335 +#: ../semanage/seobject/__init__.py:1347 #, python-format msgid "Could not set role in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1339 +#: ../semanage/seobject/__init__.py:1351 #, python-format msgid "Could not set type in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1344 +#: ../semanage/seobject/__init__.py:1356 #, python-format msgid "Could not set mls fields in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1348 +#: ../semanage/seobject/__init__.py:1360 #, python-format msgid "Could not set addr context for %s" msgstr "" -#: ../semanage/seobject.py:1352 +#: ../semanage/seobject/__init__.py:1364 #, python-format msgid "Could not add addr %s" msgstr "" -#: ../semanage/seobject.py:1380 ../semanage/seobject.py:1416 +#: ../semanage/seobject/__init__.py:1392 ../semanage/seobject/__init__.py:1428 #, python-format msgid "Addr %s is not defined" msgstr "" -#: ../semanage/seobject.py:1384 +#: ../semanage/seobject/__init__.py:1396 #, python-format msgid "Could not query addr %s" msgstr "" -#: ../semanage/seobject.py:1394 +#: ../semanage/seobject/__init__.py:1406 #, python-format msgid "Could not modify addr %s" msgstr "" -#: ../semanage/seobject.py:1422 +#: ../semanage/seobject/__init__.py:1434 #, python-format msgid "Addr %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1426 +#: ../semanage/seobject/__init__.py:1438 #, python-format msgid "Could not delete addr %s" msgstr "" -#: ../semanage/seobject.py:1438 +#: ../semanage/seobject/__init__.py:1450 msgid "Could not deleteall node mappings" msgstr "" -#: ../semanage/seobject.py:1452 +#: ../semanage/seobject/__init__.py:1464 msgid "Could not list addrs" msgstr "" -#: ../semanage/seobject.py:1504 ../semanage/seobject.py:1811 +#: ../semanage/seobject/__init__.py:1516 ../semanage/seobject/__init__.py:1823 msgid "SELinux Type is required" msgstr "" -#: ../semanage/seobject.py:1512 ../semanage/seobject.py:1574 -#: ../semanage/seobject.py:1608 ../semanage/seobject.py:1614 +#: ../semanage/seobject/__init__.py:1524 ../semanage/seobject/__init__.py:1586 +#: ../semanage/seobject/__init__.py:1620 ../semanage/seobject/__init__.py:1626 #, python-format msgid "Could not check if interface %s is defined" msgstr "" -#: ../semanage/seobject.py:1519 +#: ../semanage/seobject/__init__.py:1531 #, python-format msgid "Could not create interface for %s" msgstr "" -#: ../semanage/seobject.py:1528 +#: ../semanage/seobject/__init__.py:1540 #, python-format msgid "Could not set user in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1532 +#: ../semanage/seobject/__init__.py:1544 #, python-format msgid "Could not set role in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1536 +#: ../semanage/seobject/__init__.py:1548 #, python-format msgid "Could not set type in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1541 +#: ../semanage/seobject/__init__.py:1553 #, python-format msgid "Could not set mls fields in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1545 +#: ../semanage/seobject/__init__.py:1557 #, python-format msgid "Could not set interface context for %s" msgstr "" -#: ../semanage/seobject.py:1549 +#: ../semanage/seobject/__init__.py:1561 #, python-format msgid "Could not set message context for %s" msgstr "" -#: ../semanage/seobject.py:1553 +#: ../semanage/seobject/__init__.py:1565 #, python-format msgid "Could not add interface %s" msgstr "" -#: ../semanage/seobject.py:1576 ../semanage/seobject.py:1610 +#: ../semanage/seobject/__init__.py:1588 ../semanage/seobject/__init__.py:1622 #, python-format msgid "Interface %s is not defined" msgstr "" -#: ../semanage/seobject.py:1580 +#: ../semanage/seobject/__init__.py:1592 #, python-format msgid "Could not query interface %s" msgstr "" -#: ../semanage/seobject.py:1591 +#: ../semanage/seobject/__init__.py:1603 #, python-format msgid "Could not modify interface %s" msgstr "" -#: ../semanage/seobject.py:1616 +#: ../semanage/seobject/__init__.py:1628 #, python-format msgid "Interface %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1620 +#: ../semanage/seobject/__init__.py:1632 #, python-format msgid "Could not delete interface %s" msgstr "" -#: ../semanage/seobject.py:1632 +#: ../semanage/seobject/__init__.py:1644 msgid "Could not delete all interface mappings" msgstr "" -#: ../semanage/seobject.py:1646 +#: ../semanage/seobject/__init__.py:1658 msgid "Could not list interfaces" msgstr "" -#: ../semanage/seobject.py:1671 +#: ../semanage/seobject/__init__.py:1683 msgid "SELinux Interface" msgstr "" -#: ../semanage/seobject.py:1671 ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:1683 ../semanage/seobject/__init__.py:2045 msgid "Context" msgstr "" -#: ../semanage/seobject.py:1738 +#: ../semanage/seobject/__init__.py:1750 #, python-format msgid "Target %s is not valid. Target is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1741 +#: ../semanage/seobject/__init__.py:1753 #, python-format -msgid "Substiture %s is not valid. Substitute is not allowed to end with '/'" +msgid "Substitute %s is not valid. Substitute is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1744 +#: ../semanage/seobject/__init__.py:1756 #, python-format msgid "Equivalence class for %s already exists" msgstr "" -#: ../semanage/seobject.py:1750 +#: ../semanage/seobject/__init__.py:1762 #, python-format -msgid "File spec %s conflicts with equivalency rule '%s %s'" +msgid "" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'" msgstr "" -#: ../semanage/seobject.py:1759 +#: ../semanage/seobject/__init__.py:1771 #, python-format msgid "Equivalence class for %s does not exists" msgstr "" -#: ../semanage/seobject.py:1773 +#: ../semanage/seobject/__init__.py:1785 #, python-format msgid "Could not set user in file context for %s" msgstr "" -#: ../semanage/seobject.py:1777 +#: ../semanage/seobject/__init__.py:1789 #, python-format msgid "Could not set role in file context for %s" msgstr "" -#: ../semanage/seobject.py:1782 ../semanage/seobject.py:1848 +#: ../semanage/seobject/__init__.py:1794 ../semanage/seobject/__init__.py:1860 #, python-format msgid "Could not set mls fields in file context for %s" msgstr "" -#: ../semanage/seobject.py:1788 +#: ../semanage/seobject/__init__.py:1800 msgid "Invalid file specification" msgstr "" -#: ../semanage/seobject.py:1790 +#: ../semanage/seobject/__init__.py:1802 msgid "File specification can not include spaces" msgstr "" -#: ../semanage/seobject.py:1795 +#: ../semanage/seobject/__init__.py:1807 #, python-format msgid "" -"File spec %s conflicts with equivalency rule '%s %s'; Try adding '%s' instead" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'; " +"Try adding '%(DEST1)s' instead" msgstr "" -#: ../semanage/seobject.py:1814 +#: ../semanage/seobject/__init__.py:1826 #, python-format msgid "Type %s is invalid, must be a file or device type" msgstr "" -#: ../semanage/seobject.py:1822 ../semanage/seobject.py:1827 -#: ../semanage/seobject.py:1883 ../semanage/seobject.py:1965 -#: ../semanage/seobject.py:1969 +#: ../semanage/seobject/__init__.py:1834 ../semanage/seobject/__init__.py:1839 +#: ../semanage/seobject/__init__.py:1895 ../semanage/seobject/__init__.py:1977 +#: ../semanage/seobject/__init__.py:1981 #, python-format msgid "Could not check if file context for %s is defined" msgstr "" -#: ../semanage/seobject.py:1835 +#: ../semanage/seobject/__init__.py:1847 #, python-format msgid "Could not create file context for %s" msgstr "" -#: ../semanage/seobject.py:1843 +#: ../semanage/seobject/__init__.py:1855 #, python-format msgid "Could not set type in file context for %s" msgstr "" -#: ../semanage/seobject.py:1851 ../semanage/seobject.py:1911 -#: ../semanage/seobject.py:1915 +#: ../semanage/seobject/__init__.py:1863 ../semanage/seobject/__init__.py:1923 +#: ../semanage/seobject/__init__.py:1927 #, python-format msgid "Could not set file context for %s" msgstr "" -#: ../semanage/seobject.py:1857 +#: ../semanage/seobject/__init__.py:1869 #, python-format msgid "Could not add file context for %s" msgstr "" -#: ../semanage/seobject.py:1871 +#: ../semanage/seobject/__init__.py:1883 msgid "Requires setype, serange or seuser" msgstr "" -#: ../semanage/seobject.py:1887 ../semanage/seobject.py:1973 +#: ../semanage/seobject/__init__.py:1899 ../semanage/seobject/__init__.py:1985 #, python-format msgid "File context for %s is not defined" msgstr "" -#: ../semanage/seobject.py:1893 +#: ../semanage/seobject/__init__.py:1905 #, python-format msgid "Could not query file context for %s" msgstr "" -#: ../semanage/seobject.py:1919 +#: ../semanage/seobject/__init__.py:1931 #, python-format msgid "Could not modify file context for %s" msgstr "" -#: ../semanage/seobject.py:1932 +#: ../semanage/seobject/__init__.py:1944 msgid "Could not list the file contexts" msgstr "" -#: ../semanage/seobject.py:1946 +#: ../semanage/seobject/__init__.py:1958 #, python-format msgid "Could not delete the file context %s" msgstr "" -#: ../semanage/seobject.py:1971 +#: ../semanage/seobject/__init__.py:1983 #, python-format msgid "File context for %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1977 +#: ../semanage/seobject/__init__.py:1989 #, python-format msgid "Could not delete file context for %s" msgstr "" -#: ../semanage/seobject.py:1992 +#: ../semanage/seobject/__init__.py:2004 msgid "Could not list file contexts" msgstr "" -#: ../semanage/seobject.py:1996 +#: ../semanage/seobject/__init__.py:2008 msgid "Could not list local file contexts" msgstr "" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "SELinux fcontext" msgstr "" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "type" msgstr "" -#: ../semanage/seobject.py:2046 +#: ../semanage/seobject/__init__.py:2058 msgid "" "\n" "SELinux Distribution fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2051 +#: ../semanage/seobject/__init__.py:2063 msgid "" "\n" "SELinux Local fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2087 ../semanage/seobject.py:2138 -#: ../semanage/seobject.py:2144 +#: ../semanage/seobject/__init__.py:2099 ../semanage/seobject/__init__.py:2150 +#: ../semanage/seobject/__init__.py:2156 #, python-format msgid "Could not check if boolean %s is defined" msgstr "" -#: ../semanage/seobject.py:2089 ../semanage/seobject.py:2140 +#: ../semanage/seobject/__init__.py:2101 ../semanage/seobject/__init__.py:2152 #, python-format msgid "Boolean %s is not defined" msgstr "" -#: ../semanage/seobject.py:2093 +#: ../semanage/seobject/__init__.py:2105 #, python-format msgid "Could not query file context %s" msgstr "" -#: ../semanage/seobject.py:2098 +#: ../semanage/seobject/__init__.py:2110 #, python-format msgid "You must specify one of the following values: %s" msgstr "" -#: ../semanage/seobject.py:2103 +#: ../semanage/seobject/__init__.py:2115 #, python-format msgid "Could not set active value of boolean %s" msgstr "" -#: ../semanage/seobject.py:2106 +#: ../semanage/seobject/__init__.py:2118 #, python-format msgid "Could not modify boolean %s" msgstr "" -#: ../semanage/seobject.py:2122 +#: ../semanage/seobject/__init__.py:2134 #, python-format -msgid "Bad format %s: Record %s" +msgid "Bad format %(BOOLNAME)s: Record %(VALUE)s" msgstr "" -#: ../semanage/seobject.py:2146 +#: ../semanage/seobject/__init__.py:2158 #, python-format msgid "Boolean %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:2150 +#: ../semanage/seobject/__init__.py:2162 #, python-format msgid "Could not delete boolean %s" msgstr "" -#: ../semanage/seobject.py:2162 ../semanage/seobject.py:2179 +#: ../semanage/seobject/__init__.py:2174 ../semanage/seobject/__init__.py:2191 msgid "Could not list booleans" msgstr "" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "off" msgstr "" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "on" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "SELinux boolean" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "State" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "Default" msgstr "" -#: ../semanage/seobject.py:2228 ../gui/polgen.glade:113 -#: ../gui/polgengui.py:274 ../sepolicy/sepolicy/sepolicy.glade:2147 -#: ../sepolicy/sepolicy/sepolicy.glade:2517 -#: ../sepolicy/sepolicy/sepolicy.glade:5021 +#: ../semanage/seobject/__init__.py:2240 ../gui/polgen.glade:113 +#: ../gui/polgengui.py:260 ../sepolicy/sepolicy/sepolicy.glade:2148 +#: ../sepolicy/sepolicy/sepolicy.glade:2518 +#: ../sepolicy/sepolicy/sepolicy.glade:5117 msgid "Description" msgstr "" @@ -1353,66 +1373,66 @@ msgstr "" msgid "Options Error %s " msgstr "" -#: ../gui/booleansPage.py:194 ../gui/system-config-selinux.glade:1706 +#: ../gui/booleansPage.py:186 ../gui/system-config-selinux.glade:1706 msgid "Boolean" msgstr "" -#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:162 +#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:186 msgid "all" msgstr "" -#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:164 +#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:188 #: ../gui/system-config-selinux.glade:1615 #: ../gui/system-config-selinux.glade:1820 #: ../gui/system-config-selinux.glade:2437 msgid "Customized" msgstr "" -#: ../gui/fcontextPage.py:64 ../gui/system-config-selinux.glade:1911 +#: ../gui/fcontextPage.py:63 ../gui/system-config-selinux.glade:1911 msgid "File Labeling" msgstr "" -#: ../gui/fcontextPage.py:74 +#: ../gui/fcontextPage.py:73 msgid "" "File\n" "Specification" msgstr "" -#: ../gui/fcontextPage.py:81 +#: ../gui/fcontextPage.py:80 msgid "" "Selinux\n" "File Type" msgstr "" -#: ../gui/fcontextPage.py:88 +#: ../gui/fcontextPage.py:87 msgid "" "File\n" "Type" msgstr "" -#: ../gui/loginsPage.py:48 ../gui/system-config-selinux.glade:2098 +#: ../gui/loginsPage.py:45 ../gui/system-config-selinux.glade:2098 msgid "User Mapping" msgstr "" -#: ../gui/loginsPage.py:52 +#: ../gui/loginsPage.py:49 msgid "" "Login\n" "Name" msgstr "" -#: ../gui/loginsPage.py:56 ../gui/usersPage.py:50 +#: ../gui/loginsPage.py:53 ../gui/usersPage.py:47 msgid "" "SELinux\n" "User" msgstr "" -#: ../gui/loginsPage.py:59 ../gui/usersPage.py:55 +#: ../gui/loginsPage.py:56 ../gui/usersPage.py:52 msgid "" "MLS/\n" "MCS Range" msgstr "" -#: ../gui/loginsPage.py:133 +#: ../gui/loginsPage.py:130 #, python-format msgid "Login '%s' is required" msgstr "" @@ -1425,15 +1445,15 @@ msgstr "" msgid "Module Name" msgstr "" -#: ../gui/modulesPage.py:135 +#: ../gui/modulesPage.py:131 msgid "Disable Audit" msgstr "" -#: ../gui/modulesPage.py:138 ../gui/system-config-selinux.glade:2662 +#: ../gui/modulesPage.py:134 ../gui/system-config-selinux.glade:2662 msgid "Enable Audit" msgstr "" -#: ../gui/modulesPage.py:163 +#: ../gui/modulesPage.py:161 msgid "Load Policy Module" msgstr "" @@ -1472,7 +1492,7 @@ msgstr "" msgid "Applications" msgstr "" -#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:130 +#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:132 msgid "Standard Init Daemon" msgstr "" @@ -1482,7 +1502,7 @@ msgid "" "requires a script in /etc/rc.d/init.d" msgstr "" -#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:131 +#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:133 msgid "DBUS System Daemon" msgstr "" @@ -1494,7 +1514,7 @@ msgstr "" msgid "Internet Services Daemon are daemons started by xinetd" msgstr "" -#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:133 +#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:135 msgid "Web Application/Script (CGI)" msgstr "" @@ -1503,7 +1523,7 @@ msgid "" "Web Applications/Script (CGI) CGI scripts started by the web server (apache)" msgstr "" -#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:135 +#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:137 msgid "User Application" msgstr "" @@ -1513,7 +1533,7 @@ msgid "" "started by a user" msgstr "" -#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:134 +#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:136 msgid "Sandbox" msgstr "" @@ -1588,8 +1608,8 @@ msgstr "" msgid "Enter name of application or user role:" msgstr "" -#: ../gui/polgen.glade:728 ../gui/polgengui.py:272 -#: ../sepolicy/sepolicy/sepolicy.glade:2182 +#: ../gui/polgen.glade:728 ../gui/polgengui.py:258 +#: ../sepolicy/sepolicy/sepolicy.glade:2183 msgid "Name" msgstr "" @@ -1673,7 +1693,7 @@ msgid "TCP Ports" msgstr "" #: ../gui/polgen.glade:1223 ../gui/polgen.glade:1390 ../gui/polgen.glade:1589 -#: ../gui/polgen.glade:1698 ../sepolicy/sepolicy/sepolicy.glade:4314 +#: ../gui/polgen.glade:1698 msgid "All" msgstr "" @@ -1804,118 +1824,118 @@ msgstr "" msgid "Policy Directory" msgstr "" -#: ../gui/polgengui.py:282 +#: ../gui/polgengui.py:268 msgid "Role" msgstr "" -#: ../gui/polgengui.py:289 +#: ../gui/polgengui.py:275 msgid "Existing_User" msgstr "" -#: ../gui/polgengui.py:303 ../gui/polgengui.py:311 ../gui/polgengui.py:325 +#: ../gui/polgengui.py:289 ../gui/polgengui.py:297 ../gui/polgengui.py:311 msgid "Application" msgstr "" -#: ../gui/polgengui.py:370 +#: ../gui/polgengui.py:356 #, python-format msgid "%s must be a directory" msgstr "" -#: ../gui/polgengui.py:430 ../gui/polgengui.py:711 +#: ../gui/polgengui.py:416 ../gui/polgengui.py:697 msgid "You must select a user" msgstr "" -#: ../gui/polgengui.py:560 +#: ../gui/polgengui.py:546 msgid "Select executable file to be confined." msgstr "" -#: ../gui/polgengui.py:571 +#: ../gui/polgengui.py:557 msgid "Select init script file to be confined." msgstr "" -#: ../gui/polgengui.py:581 +#: ../gui/polgengui.py:567 msgid "Select file(s) that confined application creates or writes" msgstr "" -#: ../gui/polgengui.py:588 +#: ../gui/polgengui.py:574 msgid "Select directory(s) that the confined application owns and writes into" msgstr "" -#: ../gui/polgengui.py:650 +#: ../gui/polgengui.py:636 msgid "Select directory to generate policy files in" msgstr "" -#: ../gui/polgengui.py:667 +#: ../gui/polgengui.py:653 #, python-format msgid "" "Type %s_t already defined in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:667 ../gui/polgengui.py:671 +#: ../gui/polgengui.py:653 ../gui/polgengui.py:657 msgid "Verify Name" msgstr "" -#: ../gui/polgengui.py:671 +#: ../gui/polgengui.py:657 #, python-format msgid "" "Module %s.pp already loaded in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:717 +#: ../gui/polgengui.py:703 msgid "" "You must add a name made up of letters and numbers and containing no spaces." msgstr "" -#: ../gui/polgengui.py:731 +#: ../gui/polgengui.py:717 msgid "You must enter a executable" msgstr "" -#: ../gui/polgengui.py:756 ../gui/system-config-selinux.py:180 +#: ../gui/polgengui.py:742 ../gui/system-config-selinux.py:180 msgid "Configue SELinux" msgstr "" -#: ../gui/portsPage.py:51 ../gui/system-config-selinux.glade:2528 +#: ../gui/portsPage.py:48 ../gui/system-config-selinux.glade:2528 msgid "Network Port" msgstr "" -#: ../gui/portsPage.py:85 +#: ../gui/portsPage.py:82 msgid "" "SELinux Port\n" "Type" msgstr "" -#: ../gui/portsPage.py:91 ../gui/system-config-selinux.glade:363 -#: ../sepolicy/sepolicy/sepolicy.glade:1443 -#: ../sepolicy/sepolicy/sepolicy.glade:2657 -#: ../sepolicy/sepolicy/sepolicy.glade:2755 -#: ../sepolicy/sepolicy/sepolicy.glade:4672 +#: ../gui/portsPage.py:88 ../gui/system-config-selinux.glade:363 +#: ../sepolicy/sepolicy/sepolicy.glade:1439 +#: ../sepolicy/sepolicy/sepolicy.glade:2658 +#: ../sepolicy/sepolicy/sepolicy.glade:2756 +#: ../sepolicy/sepolicy/sepolicy.glade:4633 msgid "Protocol" msgstr "" -#: ../gui/portsPage.py:96 ../gui/system-config-selinux.glade:479 +#: ../gui/portsPage.py:93 ../gui/system-config-selinux.glade:479 msgid "" "MLS/MCS\n" "Level" msgstr "" -#: ../gui/portsPage.py:101 ../sepolicy/sepolicy/sepolicy.glade:2638 -#: ../sepolicy/sepolicy/sepolicy.glade:2737 -#: ../sepolicy/sepolicy/sepolicy.glade:4658 +#: ../gui/portsPage.py:98 ../sepolicy/sepolicy/sepolicy.glade:2639 +#: ../sepolicy/sepolicy/sepolicy.glade:2738 +#: ../sepolicy/sepolicy/sepolicy.glade:4619 msgid "Port" msgstr "" -#: ../gui/portsPage.py:207 +#: ../gui/portsPage.py:205 #, python-format msgid "Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 " msgstr "" -#: ../gui/portsPage.py:252 +#: ../gui/portsPage.py:258 msgid "List View" msgstr "" -#: ../gui/portsPage.py:255 ../gui/system-config-selinux.glade:2419 +#: ../gui/portsPage.py:261 ../gui/system-config-selinux.glade:2419 msgid "Group View" msgstr "" @@ -1929,40 +1949,40 @@ msgstr "" msgid "Delete %s" msgstr "" -#: ../gui/semanagePage.py:134 +#: ../gui/semanagePage.py:158 #, python-format msgid "Add %s" msgstr "" -#: ../gui/semanagePage.py:148 +#: ../gui/semanagePage.py:172 #, python-format msgid "Modify %s" msgstr "" -#: ../gui/statusPage.py:69 ../gui/system-config-selinux.glade:2819 -#: ../sepolicy/sepolicy/sepolicy.glade:3413 -#: ../sepolicy/sepolicy/sepolicy.glade:3486 +#: ../gui/statusPage.py:65 ../gui/system-config-selinux.glade:2819 +#: ../sepolicy/sepolicy/sepolicy.glade:3414 +#: ../sepolicy/sepolicy/sepolicy.glade:3487 msgid "Permissive" msgstr "" -#: ../gui/statusPage.py:70 ../gui/system-config-selinux.glade:2837 -#: ../sepolicy/sepolicy/sepolicy.glade:3394 -#: ../sepolicy/sepolicy/sepolicy.glade:3468 +#: ../gui/statusPage.py:66 ../gui/system-config-selinux.glade:2837 +#: ../sepolicy/sepolicy/sepolicy.glade:3395 +#: ../sepolicy/sepolicy/sepolicy.glade:3469 msgid "Enforcing" msgstr "" -#: ../gui/statusPage.py:94 +#: ../gui/statusPage.py:90 msgid "Status" msgstr "" -#: ../gui/statusPage.py:133 ../sepolicy/sepolicy/gui.py:2619 +#: ../gui/statusPage.py:129 ../sepolicy/sepolicy/gui.py:2613 msgid "" "Changing the policy type will cause a relabel of the entire file system on " "the next boot. Relabeling takes a long time depending on the size of the " "file system. Do you wish to continue?" msgstr "" -#: ../gui/statusPage.py:147 +#: ../gui/statusPage.py:143 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -1972,7 +1992,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../gui/statusPage.py:152 ../sepolicy/sepolicy/gui.py:2753 +#: ../gui/statusPage.py:148 ../sepolicy/sepolicy/gui.py:2747 msgid "" "Changing to SELinux enabled will cause a relabel of the entire file system " "on the next boot. Relabeling takes a long time depending on the size of the " @@ -2024,8 +2044,8 @@ msgid "" msgstr "" #: ../gui/system-config-selinux.glade:773 -#: ../sepolicy/sepolicy/sepolicy.glade:729 -#: ../sepolicy/sepolicy/sepolicy.glade:1489 +#: ../sepolicy/sepolicy/sepolicy.glade:711 +#: ../sepolicy/sepolicy/sepolicy.glade:1485 msgid "MLS" msgstr "" @@ -2038,7 +2058,7 @@ msgid "SELinux Administration" msgstr "" #: ../gui/system-config-selinux.glade:1122 -#: ../sepolicy/sepolicy/sepolicy.glade:4162 +#: ../sepolicy/sepolicy/sepolicy.glade:4163 msgid "Add" msgstr "" @@ -2108,7 +2128,7 @@ msgstr "" #: ../gui/system-config-selinux.glade:2467 #: ../gui/system-config-selinux.glade:2692 #: ../gui/system-config-selinux.glade:2867 -#: ../sepolicy/sepolicy/sepolicy.glade:1992 +#: ../sepolicy/sepolicy/sepolicy.glade:1993 msgid "Filter" msgstr "" @@ -2227,7 +2247,7 @@ msgstr "" msgid "label59" msgstr "" -#: ../gui/usersPage.py:138 +#: ../gui/usersPage.py:140 #, python-format msgid "SELinux user '%s' is required" msgstr "" @@ -2239,13 +2259,14 @@ msgstr "" #: booleans.py:2 msgid "" -"Allow ABRT to run in abrt_handle_event_t domain to handle ABRT event scripts" +"Determine whether ABRT can run in the abrt_handle_event_t domain to handle " +"ABRT event scripts." msgstr "" #: booleans.py:3 msgid "" -"Allow abrt-handle-upload to modify public files used for public file " -"transfer services in /var/spool/abrt-upload/." +"Determine whether abrt-handle-upload can modify public files used for public " +"file transfer services in /var/spool/abrt-upload/." msgstr "" #: booleans.py:4 @@ -2279,7 +2300,7 @@ msgid "Determine whether awstats can purge httpd log files." msgstr "" #: booleans.py:11 -msgid "Allow boinc_domain execmem/execstack." +msgid "Determine whether boinc can execmem/execstack." msgstr "" #: booleans.py:12 @@ -2335,1467 +2356,1501 @@ msgid "" msgstr "" #: booleans.py:23 -msgid "Determine whether cvs can read shadow password files." +msgid "" +"Determine whether crond can execute jobs in the user domain as opposed to " +"the the generic cronjob domain." msgstr "" #: booleans.py:24 -msgid "Allow all daemons to write corefiles to /" +msgid "Determine whether cvs can read shadow password files." msgstr "" #: booleans.py:25 -msgid "Allow all daemons to use tcp wrappers." +msgid "Allow all daemons to write corefiles to /" msgstr "" #: booleans.py:26 -msgid "Allow all daemons the ability to read/write terminals" +msgid "Enable cluster mode for daemons." msgstr "" #: booleans.py:27 -msgid "Determine whether dbadm can manage generic user files." +msgid "Allow all daemons to use tcp wrappers." msgstr "" #: booleans.py:28 -msgid "Determine whether dbadm can read generic user files." +msgid "Allow all daemons the ability to read/write terminals" msgstr "" #: booleans.py:29 +msgid "Allow dbadm to exec content" +msgstr "" + +#: booleans.py:30 +msgid "Determine whether dbadm can manage generic user files." +msgstr "" + +#: booleans.py:31 +msgid "Determine whether dbadm can read generic user files." +msgstr "" + +#: booleans.py:32 msgid "" "Deny user domains applications to map a memory region as both executable and " "writable, this is dangerous and the executable should be reported in bugzilla" msgstr "" -#: booleans.py:30 +#: booleans.py:33 msgid "Deny any process from ptracing or debugging any other processes." msgstr "" -#: booleans.py:31 +#: booleans.py:34 msgid "Allow dhcpc client applications to execute iptables commands" msgstr "" -#: booleans.py:32 +#: booleans.py:35 msgid "Determine whether DHCP daemon can use LDAP backends." msgstr "" -#: booleans.py:33 +#: booleans.py:36 msgid "Allow all domains to use other domains file descriptors" msgstr "" -#: booleans.py:34 +#: booleans.py:37 msgid "Allow all domains to have the kernel load modules" msgstr "" -#: booleans.py:35 +#: booleans.py:38 msgid "" "Determine whether entropyd can use audio devices as the source for the " "entropy feeds." msgstr "" -#: booleans.py:36 +#: booleans.py:39 msgid "Determine whether exim can connect to databases." msgstr "" -#: booleans.py:37 +#: booleans.py:40 msgid "" "Determine whether exim can create, read, write, and delete generic user " "content files." msgstr "" -#: booleans.py:38 +#: booleans.py:41 msgid "Determine whether exim can read generic user content files." msgstr "" -#: booleans.py:39 +#: booleans.py:42 msgid "Enable extra rules in the cron domain to support fcron." msgstr "" -#: booleans.py:40 +#: booleans.py:43 msgid "Determine whether fenced can connect to the TCP network." msgstr "" -#: booleans.py:41 +#: booleans.py:44 msgid "Determine whether fenced can use ssh." msgstr "" -#: booleans.py:42 +#: booleans.py:45 msgid "Allow all domains to execute in fips_mode" msgstr "" -#: booleans.py:43 +#: booleans.py:46 msgid "" "Determine whether ftpd can read and write files in user home directories." msgstr "" -#: booleans.py:44 +#: booleans.py:47 msgid "" "Determine whether ftpd can modify public files used for public file transfer " "services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:45 +#: booleans.py:48 msgid "Determine whether ftpd can connect to all unreserved ports." msgstr "" -#: booleans.py:46 +#: booleans.py:49 msgid "Determine whether ftpd can connect to databases over the TCP network." msgstr "" -#: booleans.py:47 +#: booleans.py:50 msgid "" "Determine whether ftpd can login to local users and can read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:48 +#: booleans.py:51 msgid "" "Determine whether ftpd can use CIFS used for public file transfer services." msgstr "" -#: booleans.py:49 +#: booleans.py:52 msgid "Allow ftpd to use ntfs/fusefs volumes." msgstr "" -#: booleans.py:50 +#: booleans.py:53 msgid "" "Determine whether ftpd can use NFS used for public file transfer services." msgstr "" -#: booleans.py:51 +#: booleans.py:54 msgid "" "Determine whether ftpd can bind to all unreserved ports for passive mode." msgstr "" -#: booleans.py:52 +#: booleans.py:55 msgid "Determine whether Git CGI can search home directories." msgstr "" -#: booleans.py:53 +#: booleans.py:56 msgid "Determine whether Git CGI can access cifs file systems." msgstr "" -#: booleans.py:54 +#: booleans.py:57 msgid "Determine whether Git CGI can access nfs file systems." msgstr "" -#: booleans.py:55 +#: booleans.py:58 msgid "" "Determine whether Git session daemon can bind TCP sockets to all unreserved " "ports." msgstr "" -#: booleans.py:56 +#: booleans.py:59 msgid "" "Determine whether calling user domains can execute Git daemon in the " "git_session_t domain." msgstr "" -#: booleans.py:57 +#: booleans.py:60 msgid "Determine whether Git system daemon can search home directories." msgstr "" -#: booleans.py:58 +#: booleans.py:61 msgid "Determine whether Git system daemon can access cifs file systems." msgstr "" -#: booleans.py:59 +#: booleans.py:62 msgid "Determine whether Git system daemon can access nfs file systems." msgstr "" -#: booleans.py:60 +#: booleans.py:63 msgid "Determine whether Gitosis can send mail." msgstr "" -#: booleans.py:61 +#: booleans.py:64 msgid "Enable reading of urandom for all domains." msgstr "" -#: booleans.py:62 +#: booleans.py:65 msgid "" "Allow glusterfsd to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:63 +#: booleans.py:66 msgid "Allow glusterfsd to share any file/directory read only." msgstr "" -#: booleans.py:64 +#: booleans.py:67 msgid "Allow glusterfsd to share any file/directory read/write." msgstr "" -#: booleans.py:65 +#: booleans.py:68 msgid "" "Allow usage of the gpg-agent --write-env-file option. This also allows gpg-" "agent to manage user files." msgstr "" -#: booleans.py:66 +#: booleans.py:69 msgid "" "Allow gpg web domain to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:67 +#: booleans.py:70 msgid "" "Allow gssd to list tmp directories and read the kerberos credential cache." msgstr "" -#: booleans.py:68 +#: booleans.py:71 msgid "Allow guest to exec content" msgstr "" -#: booleans.py:69 +#: booleans.py:72 msgid "" "Allow Apache to modify public files used for public file transfer services. " "Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:70 +#: booleans.py:73 msgid "Allow httpd to use built in scripting (usually php)" msgstr "" -#: booleans.py:71 +#: booleans.py:74 msgid "Allow http daemon to check spam" msgstr "" -#: booleans.py:72 +#: booleans.py:75 msgid "" "Allow httpd to act as a FTP client connecting to the ftp port and ephemeral " "ports" msgstr "" -#: booleans.py:73 +#: booleans.py:76 msgid "Allow httpd to connect to the ldap port" msgstr "" -#: booleans.py:74 +#: booleans.py:77 msgid "Allow http daemon to connect to mythtv" msgstr "" -#: booleans.py:75 +#: booleans.py:78 msgid "Allow http daemon to connect to zabbix" msgstr "" -#: booleans.py:76 +#: booleans.py:79 msgid "Allow HTTPD scripts and modules to connect to the network using TCP." msgstr "" -#: booleans.py:77 +#: booleans.py:80 msgid "Allow HTTPD scripts and modules to connect to cobbler over the network." msgstr "" -#: booleans.py:78 +#: booleans.py:81 msgid "" "Allow HTTPD scripts and modules to connect to databases over the network." msgstr "" -#: booleans.py:79 +#: booleans.py:82 msgid "Allow httpd to connect to memcache server" msgstr "" -#: booleans.py:80 +#: booleans.py:83 msgid "Allow httpd to act as a relay" msgstr "" -#: booleans.py:81 +#: booleans.py:84 msgid "Allow http daemon to send mail" msgstr "" -#: booleans.py:82 +#: booleans.py:85 msgid "Allow Apache to communicate with avahi service via dbus" msgstr "" -#: booleans.py:83 +#: booleans.py:86 msgid "Allow httpd cgi support" msgstr "" -#: booleans.py:84 +#: booleans.py:87 msgid "Allow httpd to act as a FTP server by listening on the ftp port." msgstr "" -#: booleans.py:85 +#: booleans.py:88 msgid "Allow httpd to read home directories" msgstr "" -#: booleans.py:86 +#: booleans.py:89 msgid "Allow httpd scripts and modules execmem/execstack" msgstr "" -#: booleans.py:87 +#: booleans.py:90 msgid "Allow HTTPD to connect to port 80 for graceful shutdown" msgstr "" -#: booleans.py:88 +#: booleans.py:91 msgid "Allow httpd processes to manage IPA content" msgstr "" -#: booleans.py:89 +#: booleans.py:92 msgid "Allow Apache to use mod_auth_ntlm_winbind" msgstr "" -#: booleans.py:90 +#: booleans.py:93 msgid "Allow Apache to use mod_auth_pam" msgstr "" -#: booleans.py:91 +#: booleans.py:94 msgid "Allow httpd to read user content" msgstr "" -#: booleans.py:92 +#: booleans.py:95 msgid "Allow Apache to run in stickshift mode, not transition to passenger" msgstr "" -#: booleans.py:93 +#: booleans.py:96 msgid "Allow HTTPD scripts and modules to server cobbler files." msgstr "" -#: booleans.py:94 +#: booleans.py:97 msgid "Allow httpd daemon to change its resource limits" msgstr "" -#: booleans.py:95 +#: booleans.py:98 msgid "" "Allow HTTPD to run SSI executables in the same domain as system CGI scripts." msgstr "" -#: booleans.py:96 +#: booleans.py:99 msgid "" "Allow apache scripts to write to public content, directories/files must be " "labeled public_rw_content_t." msgstr "" -#: booleans.py:97 +#: booleans.py:100 msgid "Allow Apache to execute tmp content." msgstr "" -#: booleans.py:98 +#: booleans.py:101 msgid "" "Unify HTTPD to communicate with the terminal. Needed for entering the " "passphrase for certificates at the terminal." msgstr "" -#: booleans.py:99 +#: booleans.py:102 msgid "Unify HTTPD handling of all content files." msgstr "" -#: booleans.py:100 +#: booleans.py:103 msgid "Allow httpd to access cifs file systems" msgstr "" -#: booleans.py:101 +#: booleans.py:104 msgid "Allow httpd to access FUSE file systems" msgstr "" -#: booleans.py:102 +#: booleans.py:105 msgid "Allow httpd to run gpg" msgstr "" -#: booleans.py:103 +#: booleans.py:106 msgid "Allow httpd to access nfs file systems" msgstr "" -#: booleans.py:104 +#: booleans.py:107 msgid "Allow httpd to access openstack ports" msgstr "" -#: booleans.py:105 +#: booleans.py:108 msgid "Allow httpd to connect to sasl" msgstr "" -#: booleans.py:106 +#: booleans.py:109 msgid "Allow Apache to query NS records" msgstr "" -#: booleans.py:107 +#: booleans.py:110 msgid "Determine whether icecast can listen on and connect to any TCP port." msgstr "" -#: booleans.py:108 +#: booleans.py:111 msgid "" "Determine whether irc clients can listen on and connect to any unreserved " "TCP ports." msgstr "" -#: booleans.py:109 +#: booleans.py:112 msgid "" "Allow the Irssi IRC Client to connect to any port, and to bind to any " "unreserved port." msgstr "" -#: booleans.py:110 +#: booleans.py:113 +msgid "Allow s-c-kdump to run bootloader in bootloader_t." +msgstr "" + +#: booleans.py:114 msgid "Allow confined applications to run with kerberos." msgstr "" -#: booleans.py:111 +#: booleans.py:115 msgid "Allow ksmtuned to use cifs/Samba file systems" msgstr "" -#: booleans.py:112 +#: booleans.py:116 msgid "Allow ksmtuned to use nfs file systems" msgstr "" -#: booleans.py:113 +#: booleans.py:117 +msgid "Allow logadm to exec content" +msgstr "" + +#: booleans.py:118 msgid "Allow syslogd daemon to send mail" msgstr "" -#: booleans.py:114 +#: booleans.py:119 msgid "Allow syslogd the ability to read/write terminals" msgstr "" -#: booleans.py:115 +#: booleans.py:120 msgid "Allow logging in and using the system from /dev/console." msgstr "" -#: booleans.py:116 +#: booleans.py:121 +msgid "Determine whether logwatch can connect to mail over the network." +msgstr "" + +#: booleans.py:122 msgid "Allow epylog to send mail" msgstr "" -#: booleans.py:117 +#: booleans.py:123 msgid "Allow mailman to access FUSE file systems" msgstr "" -#: booleans.py:118 +#: booleans.py:124 msgid "Determine whether mcelog supports client mode." msgstr "" -#: booleans.py:119 +#: booleans.py:125 msgid "Determine whether mcelog can execute scripts." msgstr "" -#: booleans.py:120 +#: booleans.py:126 msgid "Determine whether mcelog can use all the user ttys." msgstr "" -#: booleans.py:121 +#: booleans.py:127 msgid "Determine whether mcelog supports server mode." msgstr "" -#: booleans.py:122 +#: booleans.py:128 +msgid "Determine whether minidlna can read generic user content." +msgstr "" + +#: booleans.py:129 msgid "" "Control the ability to mmap a low area of the address space, as configured " "by /proc/sys/kernel/mmap_min_addr." msgstr "" -#: booleans.py:123 +#: booleans.py:130 msgid "Allow mock to read files in home directories." msgstr "" -#: booleans.py:124 +#: booleans.py:131 msgid "Allow the mount commands to mount any directory or file." msgstr "" -#: booleans.py:125 +#: booleans.py:132 msgid "Allow mozilla plugin domain to connect to the network using TCP." msgstr "" -#: booleans.py:126 +#: booleans.py:133 msgid "Allow mozilla plugin to support GPS." msgstr "" -#: booleans.py:127 +#: booleans.py:134 msgid "Allow mozilla plugin to support spice protocols." msgstr "" -#: booleans.py:128 +#: booleans.py:135 msgid "Allow confined web browsers to read home directory content" msgstr "" -#: booleans.py:129 +#: booleans.py:136 msgid "Determine whether mpd can traverse user home directories." msgstr "" -#: booleans.py:130 +#: booleans.py:137 msgid "Determine whether mpd can use cifs file systems." msgstr "" -#: booleans.py:131 +#: booleans.py:138 msgid "Determine whether mpd can use nfs file systems." msgstr "" -#: booleans.py:132 +#: booleans.py:139 msgid "Determine whether mplayer can make its stack executable." msgstr "" -#: booleans.py:133 +#: booleans.py:140 msgid "Allow mysqld to connect to all ports" msgstr "" -#: booleans.py:134 +#: booleans.py:141 msgid "Determine whether Bind can bind tcp socket to http ports." msgstr "" -#: booleans.py:135 +#: booleans.py:142 msgid "" "Determine whether Bind can write to master zone files. Generally this is " "used for dynamic DNS or zone transfers." msgstr "" -#: booleans.py:136 +#: booleans.py:143 msgid "Allow any files/directories to be exported read/only via NFS." msgstr "" -#: booleans.py:137 +#: booleans.py:144 msgid "Allow any files/directories to be exported read/write via NFS." msgstr "" -#: booleans.py:138 +#: booleans.py:145 msgid "" "Allow nfs servers to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:139 +#: booleans.py:146 msgid "Allow system to run with NIS" msgstr "" -#: booleans.py:140 +#: booleans.py:147 msgid "Allow confined applications to use nscd shared memory." msgstr "" -#: booleans.py:141 +#: booleans.py:148 msgid "Allow openshift to lockdown app" msgstr "" -#: booleans.py:142 +#: booleans.py:149 msgid "Determine whether openvpn can connect to the TCP network." msgstr "" -#: booleans.py:143 +#: booleans.py:150 msgid "Determine whether openvpn can read generic user home content files." msgstr "" -#: booleans.py:144 +#: booleans.py:151 msgid "Allow openvpn to run unconfined scripts" msgstr "" -#: booleans.py:145 +#: booleans.py:152 msgid "Allow piranha-lvs domain to connect to the network using TCP." msgstr "" -#: booleans.py:146 +#: booleans.py:153 msgid "Allow polipo to connect to all ports > 1023" msgstr "" -#: booleans.py:147 +#: booleans.py:154 msgid "" "Determine whether Polipo session daemon can bind tcp sockets to all " "unreserved ports." msgstr "" -#: booleans.py:148 +#: booleans.py:155 msgid "" "Determine whether calling user domains can execute Polipo daemon in the " "polipo_session_t domain." msgstr "" -#: booleans.py:149 +#: booleans.py:156 msgid "Determine whether polipo can access cifs file systems." msgstr "" -#: booleans.py:150 +#: booleans.py:157 msgid "Determine whether Polipo can access nfs file systems." msgstr "" -#: booleans.py:151 +#: booleans.py:158 msgid "Enable polyinstantiated directory support." msgstr "" -#: booleans.py:152 +#: booleans.py:159 msgid "Allow postfix_local domain full write access to mail_spool directories" msgstr "" -#: booleans.py:153 +#: booleans.py:160 msgid "Allow postgresql to use ssh and rsync for point-in-time recovery" msgstr "" -#: booleans.py:154 +#: booleans.py:161 msgid "Allow transmit client label to foreign database" msgstr "" -#: booleans.py:155 +#: booleans.py:162 msgid "Allow database admins to execute DML statement" msgstr "" -#: booleans.py:156 +#: booleans.py:163 msgid "Allow unprivileged users to execute DDL statement" msgstr "" -#: booleans.py:157 +#: booleans.py:164 msgid "Allow pppd to load kernel modules for certain modems" msgstr "" -#: booleans.py:158 +#: booleans.py:165 msgid "Allow pppd to be run for a regular user" msgstr "" -#: booleans.py:159 +#: booleans.py:166 msgid "Determine whether privoxy can connect to all tcp ports." msgstr "" -#: booleans.py:160 +#: booleans.py:167 msgid "" "Permit to prosody to bind apache port. Need to be activated to use BOSH." msgstr "" -#: booleans.py:161 +#: booleans.py:168 msgid "Allow Puppet client to manage all file types." msgstr "" -#: booleans.py:162 +#: booleans.py:169 msgid "Allow Puppet master to use connect to MySQL and PostgreSQL database" msgstr "" -#: booleans.py:163 +#: booleans.py:170 msgid "Allow racoon to read shadow" msgstr "" -#: booleans.py:164 +#: booleans.py:171 msgid "" "Allow rsync to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:165 +#: booleans.py:172 msgid "Allow rsync to run as a client" msgstr "" -#: booleans.py:166 +#: booleans.py:173 msgid "Allow rsync to export any files/directories read only." msgstr "" -#: booleans.py:167 +#: booleans.py:174 msgid "Allow rsync server to manage all files/directories on the system." msgstr "" -#: booleans.py:168 +#: booleans.py:175 msgid "Allow samba to create new home directories (e.g. via PAM)" msgstr "" -#: booleans.py:169 +#: booleans.py:176 msgid "" "Allow samba to act as the domain controller, add users, groups and change " "passwords." msgstr "" -#: booleans.py:170 +#: booleans.py:177 msgid "Allow samba to share users home directories." msgstr "" -#: booleans.py:171 +#: booleans.py:178 msgid "Allow samba to share any file/directory read only." msgstr "" -#: booleans.py:172 +#: booleans.py:179 msgid "Allow samba to share any file/directory read/write." msgstr "" -#: booleans.py:173 +#: booleans.py:180 msgid "Allow samba to act as a portmapper" msgstr "" -#: booleans.py:174 +#: booleans.py:181 msgid "Allow samba to run unconfined scripts" msgstr "" -#: booleans.py:175 +#: booleans.py:182 msgid "Allow samba to export ntfs/fusefs volumes." msgstr "" -#: booleans.py:176 +#: booleans.py:183 msgid "Allow samba to export NFS volumes." msgstr "" -#: booleans.py:177 +#: booleans.py:184 msgid "Allow sanlock to read/write fuse files" msgstr "" -#: booleans.py:178 +#: booleans.py:185 msgid "Allow sanlock to manage nfs files" msgstr "" -#: booleans.py:179 +#: booleans.py:186 msgid "Allow sanlock to manage cifs files" msgstr "" -#: booleans.py:180 +#: booleans.py:187 msgid "Allow sasl to read shadow" msgstr "" -#: booleans.py:181 +#: booleans.py:188 msgid "Allow secadm to exec content" msgstr "" -#: booleans.py:182 +#: booleans.py:189 msgid "" "disallow programs, such as newrole, from transitioning to administrative " "user domains." msgstr "" -#: booleans.py:183 +#: booleans.py:190 msgid "Disable kernel module loading." msgstr "" -#: booleans.py:184 +#: booleans.py:191 msgid "" "Boolean to determine whether the system permits loading policy, setting " "enforcing mode, and changing boolean values. Set this to true and you have " "to reboot to set it back." msgstr "" -#: booleans.py:185 +#: booleans.py:192 msgid "Allow regular users direct dri device access" msgstr "" -#: booleans.py:186 +#: booleans.py:193 msgid "" "Allow unconfined executables to make their heap memory executable. Doing " "this is a really bad idea. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:187 +#: booleans.py:194 msgid "" "Allow all unconfined executables to use libraries requiring text relocation " "that are not labeled textrel_shlib_t" msgstr "" -#: booleans.py:188 +#: booleans.py:195 msgid "" "Allow unconfined executables to make their stack executable. This should " "never, ever be necessary. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:189 +#: booleans.py:196 msgid "Allow users to connect to the local mysql server" msgstr "" -#: booleans.py:190 +#: booleans.py:197 msgid "" "Allow confined users the ability to execute the ping and traceroute commands." msgstr "" -#: booleans.py:191 +#: booleans.py:198 msgid "Allow users to connect to PostgreSQL" msgstr "" -#: booleans.py:192 +#: booleans.py:199 msgid "" "Allow user to r/w files on filesystems that do not have extended attributes " "(FAT, CDROM, FLOPPY)" msgstr "" -#: booleans.py:193 +#: booleans.py:200 msgid "Allow user music sharing" msgstr "" -#: booleans.py:194 +#: booleans.py:201 msgid "" "Allow users to run TCP servers (bind to ports and accept connection from the " "same domain and outside users) disabling this forces FTP passive mode and " "may change other protocols." msgstr "" -#: booleans.py:195 +#: booleans.py:202 msgid "Allow user to use ssh chroot environment." msgstr "" -#: booleans.py:196 +#: booleans.py:203 msgid "" "Determine whether sftpd can modify public files used for public file " "transfer services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:197 +#: booleans.py:204 msgid "" "Determine whether sftpd-can read and write files in user home directories." msgstr "" -#: booleans.py:198 +#: booleans.py:205 msgid "" "Determine whether sftpd-can login to local users and read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:199 +#: booleans.py:206 msgid "" "Determine whether sftpd can read and write files in user ssh home " "directories." msgstr "" -#: booleans.py:200 +#: booleans.py:207 msgid "Allow sge to connect to the network using any TCP port" msgstr "" -#: booleans.py:201 +#: booleans.py:208 msgid "Allow sge to access nfs file systems." msgstr "" -#: booleans.py:202 +#: booleans.py:209 msgid "Determine whether smartmon can support devices on 3ware controllers." msgstr "" -#: booleans.py:203 +#: booleans.py:210 msgid "" "Allow samba to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:204 +#: booleans.py:211 msgid "Allow user spamassassin clients to use the network." msgstr "" -#: booleans.py:205 +#: booleans.py:212 msgid "Allow spamd to read/write user home directories." msgstr "" -#: booleans.py:206 +#: booleans.py:213 msgid "Determine whether squid can connect to all TCP ports." msgstr "" -#: booleans.py:207 +#: booleans.py:214 msgid "Determine whether squid can run as a transparent proxy." msgstr "" -#: booleans.py:208 +#: booleans.py:215 msgid "" "Allow ssh with chroot env to read and write files in the user home " "directories" msgstr "" -#: booleans.py:209 +#: booleans.py:216 msgid "allow host key based authentication" msgstr "" -#: booleans.py:210 +#: booleans.py:217 msgid "Allow ssh logins as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:211 +#: booleans.py:218 msgid "Allow staff to exec content" msgstr "" -#: booleans.py:212 +#: booleans.py:219 msgid "allow staff user to create and transition to svirt domains." msgstr "" -#: booleans.py:213 +#: booleans.py:220 msgid "Allow sysadm to exec content" msgstr "" -#: booleans.py:214 +#: booleans.py:221 msgid "Allow the Telepathy connection managers to connect to any network port." msgstr "" -#: booleans.py:215 +#: booleans.py:222 msgid "" "Allow the Telepathy connection managers to connect to any generic TCP port." msgstr "" -#: booleans.py:216 -msgid "Allow testpolicy to exec content" -msgstr "" - -#: booleans.py:217 +#: booleans.py:223 msgid "" "Allow tftp to modify public files used for public file transfer services." msgstr "" -#: booleans.py:218 +#: booleans.py:224 msgid "Allow tftp to read and write files in the user home directories" msgstr "" -#: booleans.py:219 +#: booleans.py:225 msgid "Determine whether tor can bind tcp sockets to all unreserved ports." msgstr "" -#: booleans.py:220 +#: booleans.py:226 msgid "Allow tor to act as a relay" msgstr "" -#: booleans.py:221 +#: booleans.py:227 msgid "" "allow unconfined users to transition to the chrome sandbox domains when " "running chrome-sandbox" msgstr "" -#: booleans.py:222 +#: booleans.py:228 msgid "Allow a user to login as an unconfined domain" msgstr "" -#: booleans.py:223 +#: booleans.py:229 msgid "" "Allow unconfined users to transition to the Mozilla plugin domain when " "running xulrunner plugin-container." msgstr "" -#: booleans.py:224 +#: booleans.py:230 msgid "Allow unprivledged user to create and transition to svirt domains." msgstr "" -#: booleans.py:225 +#: booleans.py:231 msgid "Support ecryptfs home directories" msgstr "" -#: booleans.py:226 +#: booleans.py:232 msgid "Support fusefs home directories" msgstr "" -#: booleans.py:227 +#: booleans.py:233 msgid "Determine whether to support lpd server." msgstr "" -#: booleans.py:228 +#: booleans.py:234 msgid "Support NFS home directories" msgstr "" -#: booleans.py:229 +#: booleans.py:235 msgid "Support SAMBA home directories" msgstr "" -#: booleans.py:230 +#: booleans.py:236 msgid "Allow user to exec content" msgstr "" -#: booleans.py:231 +#: booleans.py:237 msgid "Determine whether varnishd can use the full TCP network." msgstr "" -#: booleans.py:232 +#: booleans.py:238 msgid "" "Determine whether attempts by vbetool to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:233 +#: booleans.py:239 +msgid "Allow sandbox containers to send audit messages" +msgstr "" + +#: booleans.py:240 +msgid "Allow sandbox containers to use netlink system calls" +msgstr "" + +#: booleans.py:241 msgid "Allow virtual processes to run as userdomains" msgstr "" -#: booleans.py:234 +#: booleans.py:242 msgid "" "Allow confined virtual guests to use serial/parallel communication ports" msgstr "" -#: booleans.py:235 +#: booleans.py:243 msgid "" "Allow confined virtual guests to use executable memory and executable stack" msgstr "" -#: booleans.py:236 +#: booleans.py:244 msgid "Allow confined virtual guests to read fuse files" msgstr "" -#: booleans.py:237 +#: booleans.py:245 msgid "Allow confined virtual guests to manage nfs files" msgstr "" -#: booleans.py:238 +#: booleans.py:246 msgid "Allow confined virtual guests to interact with rawip sockets" msgstr "" -#: booleans.py:239 +#: booleans.py:247 msgid "Allow confined virtual guests to manage cifs files" msgstr "" -#: booleans.py:240 +#: booleans.py:248 msgid "Allow confined virtual guests to interact with the sanlock" msgstr "" -#: booleans.py:241 +#: booleans.py:249 msgid "Allow confined virtual guests to use usb devices" msgstr "" -#: booleans.py:242 +#: booleans.py:250 msgid "Allow confined virtual guests to interact with the xserver" msgstr "" -#: booleans.py:243 +#: booleans.py:251 msgid "Determine whether webadm can manage generic user files." msgstr "" -#: booleans.py:244 +#: booleans.py:252 msgid "Determine whether webadm can read generic user files." msgstr "" -#: booleans.py:245 +#: booleans.py:253 msgid "" "Determine whether attempts by wine to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:246 +#: booleans.py:254 msgid "Allow the graphical login program to execute bootloader" msgstr "" -#: booleans.py:247 +#: booleans.py:255 msgid "" "Allow the graphical login program to login directly as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:248 +#: booleans.py:256 msgid "" "Allow the graphical login program to create files in HOME dirs as xdm_home_t." msgstr "" -#: booleans.py:249 +#: booleans.py:257 msgid "Allow xen to manage nfs files" msgstr "" -#: booleans.py:250 +#: booleans.py:258 msgid "" "Allow xend to run blktapctrl/tapdisk. Not required if using dedicated " "logical volumes for disk images." msgstr "" -#: booleans.py:251 +#: booleans.py:259 msgid "Allow xend to run qemu-dm. Not required if using paravirt and no vfb." msgstr "" -#: booleans.py:252 +#: booleans.py:260 msgid "" "Allow xguest users to configure Network Manager and connect to apache ports" msgstr "" -#: booleans.py:253 +#: booleans.py:261 msgid "Allow xguest to exec content" msgstr "" -#: booleans.py:254 +#: booleans.py:262 msgid "Allow xguest users to mount removable media" msgstr "" -#: booleans.py:255 +#: booleans.py:263 msgid "Allow xguest to use blue tooth devices" msgstr "" -#: booleans.py:256 +#: booleans.py:264 msgid "Allows clients to write to the X server shared memory segments." msgstr "" -#: booleans.py:257 +#: booleans.py:265 msgid "Allows XServer to execute writable memory" msgstr "" -#: booleans.py:258 +#: booleans.py:266 msgid "Support X userspace object manager" msgstr "" -#: booleans.py:259 +#: booleans.py:267 msgid "Determine whether zabbix can connect to all TCP ports" msgstr "" -#: booleans.py:260 +#: booleans.py:268 msgid "Allow zarafa domains to setrlimit/sys_rouserce." msgstr "" -#: booleans.py:261 +#: booleans.py:269 msgid "Allow zebra daemon to write it configuration files" msgstr "" -#: booleans.py:262 +#: booleans.py:270 msgid "" "Allow ZoneMinder to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:263 +#: booleans.py:271 msgid "Allow ZoneMinder to run su/sudo." msgstr "" -#: ../sepolicy/sepolicy.py:194 +#: ../sepolicy/sepolicy.py:195 #, python-format msgid "Interface %s does not exist." msgstr "" -#: ../sepolicy/sepolicy.py:292 +#: ../sepolicy/sepolicy.py:293 msgid "You need to install policycoreutils-gui package to use the gui option" msgstr "" -#: ../sepolicy/sepolicy.py:296 +#: ../sepolicy/sepolicy.py:297 msgid "Graphical User Interface for SELinux Policy" msgstr "" -#: ../sepolicy/sepolicy.py:299 ../sepolicy/sepolicy.py:345 +#: ../sepolicy/sepolicy.py:300 ../sepolicy/sepolicy.py:346 msgid "Domain name(s) of man pages to be created" msgstr "" -#: ../sepolicy/sepolicy.py:311 +#: ../sepolicy/sepolicy.py:312 msgid "Alternative root needs to be setup" msgstr "" -#: ../sepolicy/sepolicy.py:327 +#: ../sepolicy/sepolicy.py:328 msgid "Generate SELinux man pages" msgstr "" -#: ../sepolicy/sepolicy.py:330 +#: ../sepolicy/sepolicy.py:331 msgid "path in which the generated SELinux man pages will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:332 +#: ../sepolicy/sepolicy.py:333 msgid "name of the OS for man pages" msgstr "" -#: ../sepolicy/sepolicy.py:334 +#: ../sepolicy/sepolicy.py:335 msgid "Generate HTML man pages structure for selected SELinux man page" msgstr "" -#: ../sepolicy/sepolicy.py:336 +#: ../sepolicy/sepolicy.py:337 msgid "Alternate root directory, defaults to /" msgstr "" -#: ../sepolicy/sepolicy.py:338 +#: ../sepolicy/sepolicy.py:339 msgid "" "With this flag, alternative root path needs to include file context files " "and policy.xml file" msgstr "" -#: ../sepolicy/sepolicy.py:342 +#: ../sepolicy/sepolicy.py:343 msgid "All domains" msgstr "" -#: ../sepolicy/sepolicy.py:350 +#: ../sepolicy/sepolicy.py:351 msgid "Query SELinux policy network information" msgstr "" -#: ../sepolicy/sepolicy.py:355 +#: ../sepolicy/sepolicy.py:356 msgid "list all SELinux port types" msgstr "" -#: ../sepolicy/sepolicy.py:358 +#: ../sepolicy/sepolicy.py:359 msgid "show SELinux type related to the port" msgstr "" -#: ../sepolicy/sepolicy.py:361 +#: ../sepolicy/sepolicy.py:362 msgid "Show ports defined for this SELinux type" msgstr "" -#: ../sepolicy/sepolicy.py:364 +#: ../sepolicy/sepolicy.py:365 msgid "show ports to which this domain can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:367 +#: ../sepolicy/sepolicy.py:368 msgid "show ports to which this application can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:382 +#: ../sepolicy/sepolicy.py:383 msgid "query SELinux policy to see if domains can communicate with each other" msgstr "" -#: ../sepolicy/sepolicy.py:385 +#: ../sepolicy/sepolicy.py:386 msgid "Source Domain" msgstr "" -#: ../sepolicy/sepolicy.py:388 +#: ../sepolicy/sepolicy.py:389 msgid "Target Domain" msgstr "" -#: ../sepolicy/sepolicy.py:407 +#: ../sepolicy/sepolicy.py:408 msgid "query SELinux Policy to see description of booleans" msgstr "" -#: ../sepolicy/sepolicy.py:411 +#: ../sepolicy/sepolicy.py:412 msgid "get all booleans descriptions" msgstr "" -#: ../sepolicy/sepolicy.py:414 +#: ../sepolicy/sepolicy.py:415 msgid "boolean to get description" msgstr "" -#: ../sepolicy/sepolicy.py:424 +#: ../sepolicy/sepolicy.py:425 msgid "" "query SELinux Policy to see how a source process domain can transition to " "the target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:427 +#: ../sepolicy/sepolicy.py:428 msgid "source process domain" msgstr "" -#: ../sepolicy/sepolicy.py:430 +#: ../sepolicy/sepolicy.py:431 msgid "target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:472 +#: ../sepolicy/sepolicy.py:473 #, python-format msgid "sepolicy generate: error: one of the arguments %s is required" msgstr "" -#: ../sepolicy/sepolicy.py:477 +#: ../sepolicy/sepolicy.py:478 msgid "Command required for this type of policy" msgstr "" -#: ../sepolicy/sepolicy.py:488 +#: ../sepolicy/sepolicy.py:489 #, python-format msgid "" "-t option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:493 +#: ../sepolicy/sepolicy.py:494 #, python-format msgid "" "-d option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:497 +#: ../sepolicy/sepolicy.py:498 #, python-format msgid "" "-a option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:501 +#: ../sepolicy/sepolicy.py:502 msgid "-w option can not be used with the --newtype option" msgstr "" -#: ../sepolicy/sepolicy.py:521 +#: ../sepolicy/sepolicy.py:522 msgid "List SELinux Policy interfaces" msgstr "" -#: ../sepolicy/sepolicy.py:541 +#: ../sepolicy/sepolicy.py:542 msgid "Enter interface names, you wish to query" msgstr "" -#: ../sepolicy/sepolicy.py:550 +#: ../sepolicy/sepolicy.py:551 msgid "Generate SELinux Policy module template" msgstr "" -#: ../sepolicy/sepolicy.py:553 +#: ../sepolicy/sepolicy.py:554 msgid "Enter domain type which you will be extending" msgstr "" -#: ../sepolicy/sepolicy.py:556 +#: ../sepolicy/sepolicy.py:557 msgid "Enter SELinux user(s) which will transition to this domain" msgstr "" -#: ../sepolicy/sepolicy.py:559 +#: ../sepolicy/sepolicy.py:560 msgid "Enter SELinux role(s) to which the administror domain will transition" msgstr "" -#: ../sepolicy/sepolicy.py:562 +#: ../sepolicy/sepolicy.py:563 msgid "Enter domain(s) which this confined admin will administrate" msgstr "" -#: ../sepolicy/sepolicy.py:565 +#: ../sepolicy/sepolicy.py:566 msgid "name of policy to generate" msgstr "" -#: ../sepolicy/sepolicy.py:572 +#: ../sepolicy/sepolicy.py:573 msgid "path in which the generated policy files will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:574 +#: ../sepolicy/sepolicy.py:575 msgid "path to which the confined processes will need to write" msgstr "" -#: ../sepolicy/sepolicy.py:575 +#: ../sepolicy/sepolicy.py:576 msgid "Policy types which require a command" msgstr "" -#: ../sepolicy/sepolicy.py:579 ../sepolicy/sepolicy.py:582 -#: ../sepolicy/sepolicy.py:585 ../sepolicy/sepolicy.py:588 -#: ../sepolicy/sepolicy.py:591 ../sepolicy/sepolicy.py:597 -#: ../sepolicy/sepolicy.py:600 ../sepolicy/sepolicy.py:603 -#: ../sepolicy/sepolicy.py:609 ../sepolicy/sepolicy.py:612 -#: ../sepolicy/sepolicy.py:615 ../sepolicy/sepolicy.py:618 +#: ../sepolicy/sepolicy.py:580 ../sepolicy/sepolicy.py:583 +#: ../sepolicy/sepolicy.py:586 ../sepolicy/sepolicy.py:589 +#: ../sepolicy/sepolicy.py:592 ../sepolicy/sepolicy.py:598 +#: ../sepolicy/sepolicy.py:601 ../sepolicy/sepolicy.py:604 +#: ../sepolicy/sepolicy.py:610 ../sepolicy/sepolicy.py:613 +#: ../sepolicy/sepolicy.py:616 ../sepolicy/sepolicy.py:619 #, python-format msgid "Generate '%s' policy" msgstr "" -#: ../sepolicy/sepolicy.py:606 +#: ../sepolicy/sepolicy.py:607 #, python-format msgid "Generate '%s' policy " msgstr "" -#: ../sepolicy/sepolicy.py:620 +#: ../sepolicy/sepolicy.py:621 msgid "executable to confine" msgstr "" -#: ../sepolicy/sepolicy.py:625 +#: ../sepolicy/sepolicy.py:626 msgid "commands" msgstr "" -#: ../sepolicy/sepolicy.py:628 +#: ../sepolicy/sepolicy.py:629 msgid "Alternate SELinux policy, defaults to /sys/fs/selinux/policy" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:89 +#: ../sepolicy/sepolicy/__init__.py:96 #, python-format msgid "-- Allowed %s [ %s ]" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:95 ../sepolicy/sepolicy/gui.py:1135 +#: ../sepolicy/sepolicy/__init__.py:102 ../sepolicy/sepolicy/gui.py:1152 msgid "all files" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:96 +#: ../sepolicy/sepolicy/__init__.py:103 msgid "regular file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:97 +#: ../sepolicy/sepolicy/__init__.py:104 msgid "directory" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:98 +#: ../sepolicy/sepolicy/__init__.py:105 msgid "character device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:99 +#: ../sepolicy/sepolicy/__init__.py:106 msgid "block device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:100 +#: ../sepolicy/sepolicy/__init__.py:107 msgid "socket file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:101 +#: ../sepolicy/sepolicy/__init__.py:108 msgid "symbolic link" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:102 +#: ../sepolicy/sepolicy/__init__.py:109 msgid "named pipe" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:398 +#: ../sepolicy/sepolicy/__init__.py:427 msgid "No SELinux Policy installed" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:478 +#: ../sepolicy/sepolicy/__init__.py:506 msgid "You must regenerate interface info by running /usr/bin/sepolgen-ifgen" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:724 +#: ../sepolicy/sepolicy/__init__.py:768 #, python-format msgid "Failed to read %s policy file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:829 +#: ../sepolicy/sepolicy/__init__.py:873 msgid "unknown" msgstr "" -#: ../sepolicy/sepolicy/generate.py:132 +#: ../sepolicy/sepolicy/generate.py:134 msgid "Internet Services Daemon" msgstr "" -#: ../sepolicy/sepolicy/generate.py:136 +#: ../sepolicy/sepolicy/generate.py:138 msgid "Existing Domain Type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:137 +#: ../sepolicy/sepolicy/generate.py:139 msgid "Minimal Terminal Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:138 +#: ../sepolicy/sepolicy/generate.py:140 msgid "Minimal X Windows Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:139 +#: ../sepolicy/sepolicy/generate.py:141 msgid "Desktop Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:140 +#: ../sepolicy/sepolicy/generate.py:142 msgid "Administrator Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:141 +#: ../sepolicy/sepolicy/generate.py:143 msgid "Confined Root Administrator Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:142 +#: ../sepolicy/sepolicy/generate.py:144 msgid "Module information for a new type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:147 +#: ../sepolicy/sepolicy/generate.py:149 msgid "Valid Types:\n" msgstr "" -#: ../sepolicy/sepolicy/generate.py:181 +#: ../sepolicy/sepolicy/generate.py:183 #, python-format msgid "Ports must be numbers or ranges of numbers from 1 to %d " msgstr "" -#: ../sepolicy/sepolicy/generate.py:192 +#: ../sepolicy/sepolicy/generate.py:194 msgid "You must enter a valid policy type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:195 +#: ../sepolicy/sepolicy/generate.py:197 #, python-format msgid "You must enter a name for your policy module for your '%s'." msgstr "" -#: ../sepolicy/sepolicy/generate.py:333 +#: ../sepolicy/sepolicy/generate.py:335 msgid "" "Name must be alpha numberic with no spaces. Consider using option \"-n " "MODULENAME\"" msgstr "" -#: ../sepolicy/sepolicy/generate.py:425 +#: ../sepolicy/sepolicy/generate.py:427 msgid "User Role types can not be assigned executables." msgstr "" -#: ../sepolicy/sepolicy/generate.py:431 +#: ../sepolicy/sepolicy/generate.py:433 msgid "Only Daemon apps can use an init script.." msgstr "" -#: ../sepolicy/sepolicy/generate.py:449 +#: ../sepolicy/sepolicy/generate.py:451 msgid "use_resolve must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:455 +#: ../sepolicy/sepolicy/generate.py:457 msgid "use_syslog must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:461 +#: ../sepolicy/sepolicy/generate.py:463 msgid "use_kerberos must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:467 +#: ../sepolicy/sepolicy/generate.py:469 msgid "manage_krb5_rcache must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:497 +#: ../sepolicy/sepolicy/generate.py:499 msgid "USER Types automatically get a tmp type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:838 +#: ../sepolicy/sepolicy/generate.py:840 #, python-format msgid "'%s' policy modules require existing domains" msgstr "" -#: ../sepolicy/sepolicy/generate.py:863 +#: ../sepolicy/sepolicy/generate.py:865 msgid "Type field required" msgstr "" -#: ../sepolicy/sepolicy/generate.py:876 +#: ../sepolicy/sepolicy/generate.py:878 #, python-format msgid "" "You need to define a new type which ends with: \n" " %s" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1104 +#: ../sepolicy/sepolicy/generate.py:1106 msgid "You must enter the executable path for your confined process" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1363 +#: ../sepolicy/sepolicy/generate.py:1369 msgid "Type Enforcement file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1364 +#: ../sepolicy/sepolicy/generate.py:1370 msgid "Interface file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1365 +#: ../sepolicy/sepolicy/generate.py:1371 msgid "File Contexts file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1367 +#: ../sepolicy/sepolicy/generate.py:1373 msgid "Spec file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1368 +#: ../sepolicy/sepolicy/generate.py:1374 msgid "Setup Script" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:25 -#: ../sepolicy/sepolicy/sepolicy.glade:4369 +#: ../sepolicy/sepolicy/sepolicy.glade:4330 msgid "Applications" msgstr "" @@ -3803,562 +3858,555 @@ msgstr "" msgid "Select domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2343 msgid "File Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2316 +#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2353 msgid "Users" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:129 -#: ../sepolicy/sepolicy/sepolicy.glade:1897 -#: ../sepolicy/sepolicy/sepolicy.glade:3802 ../sepolicy/sepolicy/gui.py:2297 +#: ../sepolicy/sepolicy/sepolicy.glade:1898 +#: ../sepolicy/sepolicy/sepolicy.glade:3803 ../sepolicy/sepolicy/gui.py:2334 msgid "System" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:189 -#: ../sepolicy/sepolicy/sepolicy.glade:4406 -#: ../sepolicy/sepolicy/sepolicy.glade:4499 -#: ../sepolicy/sepolicy/sepolicy.glade:4645 -#: ../sepolicy/sepolicy/sepolicy.glade:4793 -#: ../sepolicy/sepolicy/sepolicy.glade:4934 -#: ../sepolicy/sepolicy/sepolicy.glade:5007 +#: ../sepolicy/sepolicy/sepolicy.glade:4367 +#: ../sepolicy/sepolicy/sepolicy.glade:4460 +#: ../sepolicy/sepolicy/sepolicy.glade:4606 +#: ../sepolicy/sepolicy/sepolicy.glade:4755 +#: ../sepolicy/sepolicy/sepolicy.glade:4889 +#: ../sepolicy/sepolicy/sepolicy.glade:5030 +#: ../sepolicy/sepolicy/sepolicy.glade:5103 +#: ../sepolicy/sepolicy/sepolicy.glade:5238 msgid "Select" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:204 -#: ../sepolicy/sepolicy/sepolicy.glade:557 -#: ../sepolicy/sepolicy/sepolicy.glade:702 -#: ../sepolicy/sepolicy/sepolicy.glade:1243 -#: ../sepolicy/sepolicy/sepolicy.glade:1539 -#: ../sepolicy/sepolicy/sepolicy.glade:4579 -#: ../sepolicy/sepolicy/sepolicy.glade:4729 -#: ../sepolicy/sepolicy/sepolicy.glade:4859 -#: ../sepolicy/sepolicy/sepolicy.glade:5077 -#: ../sepolicy/sepolicy/sepolicy.glade:5233 -#: ../sepolicy/sepolicy/sepolicy.glade:5474 +#: ../sepolicy/sepolicy/sepolicy.glade:539 +#: ../sepolicy/sepolicy/sepolicy.glade:684 +#: ../sepolicy/sepolicy/sepolicy.glade:1239 +#: ../sepolicy/sepolicy/sepolicy.glade:1535 +#: ../sepolicy/sepolicy/sepolicy.glade:4540 +#: ../sepolicy/sepolicy/sepolicy.glade:4690 +#: ../sepolicy/sepolicy/sepolicy.glade:4821 +#: ../sepolicy/sepolicy/sepolicy.glade:4955 +#: ../sepolicy/sepolicy/sepolicy.glade:5173 +#: ../sepolicy/sepolicy/sepolicy.glade:5304 +#: ../sepolicy/sepolicy/sepolicy.glade:5464 msgid "Cancel" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:350 +#: ../sepolicy/sepolicy/sepolicy.glade:332 msgid "" "The entry that was entered is incorrect. Please try again in the " "ex:/.../... format." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:376 +#: ../sepolicy/sepolicy/sepolicy.glade:358 msgid "Retry" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:460 -#: ../sepolicy/sepolicy/sepolicy.glade:1124 -#: ../sepolicy/sepolicy/sepolicy.glade:1372 -#: ../sepolicy/sepolicy/sepolicy.glade:5102 -#: ../sepolicy/sepolicy/sepolicy.glade:5343 +#: ../sepolicy/sepolicy/sepolicy.glade:442 +#: ../sepolicy/sepolicy/sepolicy.glade:1120 +#: ../sepolicy/sepolicy/sepolicy.glade:1368 +#: ../sepolicy/sepolicy/sepolicy.glade:5332 msgid "Network Port Definitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:476 +#: ../sepolicy/sepolicy/sepolicy.glade:458 msgid "" -"Add file Equivilence Mapping. Mapping will be created when Update is " +"Add file Equivalence Mapping. Mapping will be created when Update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:501 -#: ../sepolicy/sepolicy/sepolicy.glade:4045 +#: ../sepolicy/sepolicy/sepolicy.glade:483 +#: ../sepolicy/sepolicy/sepolicy.glade:4046 msgid "Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:511 -#: ../sepolicy/sepolicy/sepolicy.glade:5154 -#: ../sepolicy/sepolicy/sepolicy.glade:5395 +#: ../sepolicy/sepolicy/sepolicy.glade:493 +#: ../sepolicy/sepolicy/sepolicy.glade:5384 msgid "" "Specify a new SELinux user name. By convention SELinux User names usually " "end in an _u." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:515 +#: ../sepolicy/sepolicy/sepolicy.glade:497 msgid "Enter the path to which you want to setup an equivalence label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:528 -#: ../sepolicy/sepolicy/sepolicy.glade:4062 -#: ../sepolicy/sepolicy/sepolicy.glade:4819 +#: ../sepolicy/sepolicy/sepolicy.glade:510 +#: ../sepolicy/sepolicy/sepolicy.glade:4063 +#: ../sepolicy/sepolicy/sepolicy.glade:4781 msgid "Equivalence Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:542 -#: ../sepolicy/sepolicy/sepolicy.glade:687 -#: ../sepolicy/sepolicy/sepolicy.glade:1228 -#: ../sepolicy/sepolicy/sepolicy.glade:1524 -#: ../sepolicy/sepolicy/sepolicy.glade:5218 -#: ../sepolicy/sepolicy/sepolicy.glade:5459 +#: ../sepolicy/sepolicy/sepolicy.glade:524 +#: ../sepolicy/sepolicy/sepolicy.glade:669 +#: ../sepolicy/sepolicy/sepolicy.glade:1224 +#: ../sepolicy/sepolicy/sepolicy.glade:1520 +#: ../sepolicy/sepolicy/sepolicy.glade:5449 msgid "Save to update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:582 +#: ../sepolicy/sepolicy/sepolicy.glade:564 msgid "" "Specify the mapping between the new path and the equivalence path. " "Everything under this new path will be labeled as if they were under the " "equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:639 +#: ../sepolicy/sepolicy/sepolicy.glade:621 msgid "Add a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:656 +#: ../sepolicy/sepolicy/sepolicy.glade:638 msgid "" " File Labeling for . File labels will be created " "when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:744 -#: ../sepolicy/sepolicy/sepolicy.glade:1471 -#: ../sepolicy/sepolicy/sepolicy.glade:3510 ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/sepolicy.glade:726 +#: ../sepolicy/sepolicy/sepolicy.glade:1467 +#: ../sepolicy/sepolicy/sepolicy.glade:3511 ../sepolicy/sepolicy/gui.py:68 msgid "Advanced >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:765 -#: ../sepolicy/sepolicy/sepolicy.glade:2305 -#: ../sepolicy/sepolicy/sepolicy.glade:2417 -#: ../sepolicy/sepolicy/sepolicy.glade:2539 -#: ../sepolicy/sepolicy/sepolicy.glade:4539 +#: ../sepolicy/sepolicy/sepolicy.glade:747 +#: ../sepolicy/sepolicy/sepolicy.glade:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:2418 +#: ../sepolicy/sepolicy/sepolicy.glade:2540 +#: ../sepolicy/sepolicy/sepolicy.glade:4500 msgid "Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:781 +#: ../sepolicy/sepolicy/sepolicy.glade:763 msgid "Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:795 +#: ../sepolicy/sepolicy/sepolicy.glade:777 msgid "" "Select the file class to which this label will be applied. Defaults to all " "classes." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:822 +#: ../sepolicy/sepolicy/sepolicy.glade:804 msgid "Make Path Recursive" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:826 +#: ../sepolicy/sepolicy/sepolicy.glade:808 msgid "" -"Select Make Path Recursive iff you want to apply this label to all children " +"Select Make Path Recursive if you want to apply this label to all children " "of the specified directory path. objects under the directory to have this " "label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:839 +#: ../sepolicy/sepolicy/sepolicy.glade:821 msgid "Browse" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:843 +#: ../sepolicy/sepolicy/sepolicy.glade:825 msgid "Browse to select the file/directory for labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:887 +#: ../sepolicy/sepolicy/sepolicy.glade:869 msgid "Path " msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:898 +#: ../sepolicy/sepolicy/sepolicy.glade:880 msgid "" "Specify the path using regular expressions that you would like to modify the " "labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:920 +#: ../sepolicy/sepolicy/sepolicy.glade:902 msgid "Select the SELinux file type to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:947 +#: ../sepolicy/sepolicy/sepolicy.glade:929 msgid "Enter the MLS Label to assign to this file path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:951 +#: ../sepolicy/sepolicy/sepolicy.glade:933 msgid "SELinux MLS Label you wish to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1088 +#: ../sepolicy/sepolicy/sepolicy.glade:1070 msgid "Analyzing Policy..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1141 +#: ../sepolicy/sepolicy/sepolicy.glade:1137 msgid "" "Add Login Mapping. Login Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1176 +#: ../sepolicy/sepolicy/sepolicy.glade:1172 msgid "" "Enter the login user name of the user to which you wish to add SELinux User " "confinement." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1205 +#: ../sepolicy/sepolicy/sepolicy.glade:1201 msgid "" "Select the SELinux User to assign to this login user. Login users by " "default get assigned by the __default__ user." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1268 +#: ../sepolicy/sepolicy/sepolicy.glade:1264 msgid "" "Enter MLS/MCS Range for this login User. Defaults to the range for the " "Selected SELinux User." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1271 -#: ../sepolicy/sepolicy/sepolicy.glade:3191 -#: ../sepolicy/sepolicy/sepolicy.glade:3312 -#: ../sepolicy/sepolicy/sepolicy.glade:5184 -#: ../sepolicy/sepolicy/sepolicy.glade:5425 +#: ../sepolicy/sepolicy/sepolicy.glade:1267 +#: ../sepolicy/sepolicy/sepolicy.glade:3192 +#: ../sepolicy/sepolicy/sepolicy.glade:3313 +#: ../sepolicy/sepolicy/sepolicy.glade:5414 msgid "MLS Range" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1283 +#: ../sepolicy/sepolicy/sepolicy.glade:1279 msgid "" "Specify the MLS Range for this user to login in with. Defaults to the " "selected SELinux Users MLS Range." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1389 +#: ../sepolicy/sepolicy/sepolicy.glade:1385 msgid "" " Network Port for . Ports will be created when " "update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1427 +#: ../sepolicy/sepolicy/sepolicy.glade:1423 msgid "Enter the port number or range to which you want to add a port type." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1457 +#: ../sepolicy/sepolicy/sepolicy.glade:1453 msgid "Port Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1502 +#: ../sepolicy/sepolicy/sepolicy.glade:1498 msgid "Select the port type you want to assign to the specified port number." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1566 +#: ../sepolicy/sepolicy/sepolicy.glade:1562 msgid "tcp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1570 +#: ../sepolicy/sepolicy/sepolicy.glade:1566 msgid "" "Select tcp if the port type should be assigned to tcp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1583 +#: ../sepolicy/sepolicy/sepolicy.glade:1579 msgid "udp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1587 +#: ../sepolicy/sepolicy/sepolicy.glade:1583 msgid "" "Select udp if the port type should be assigned to udp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1609 +#: ../sepolicy/sepolicy/sepolicy.glade:1605 msgid "Enter the MLS Label to assign to this port." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1706 +#: ../sepolicy/sepolicy/sepolicy.glade:1707 msgid "SELinux Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1742 +#: ../sepolicy/sepolicy/sepolicy.glade:1743 msgid "Select..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1791 -#: ../sepolicy/sepolicy/sepolicy.glade:2211 +#: ../sepolicy/sepolicy/sepolicy.glade:1792 +#: ../sepolicy/sepolicy/sepolicy.glade:2212 msgid "Booleans" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1795 +#: ../sepolicy/sepolicy/sepolicy.glade:1796 msgid "" "Display boolean information that can be used to modify the policy for the " "'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1809 -#: ../sepolicy/sepolicy/sepolicy.glade:2596 +#: ../sepolicy/sepolicy/sepolicy.glade:1810 +#: ../sepolicy/sepolicy/sepolicy.glade:2597 msgid "Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1813 +#: ../sepolicy/sepolicy/sepolicy.glade:1814 msgid "" "Display file type information that can be used by the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1827 -#: ../sepolicy/sepolicy/sepolicy.glade:2829 +#: ../sepolicy/sepolicy/sepolicy.glade:1828 +#: ../sepolicy/sepolicy/sepolicy.glade:2830 msgid "Network" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1831 +#: ../sepolicy/sepolicy/sepolicy.glade:1832 msgid "" "Display network ports to which the 'selected domain' can connect or listen " "to." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1845 -#: ../sepolicy/sepolicy/sepolicy.glade:3120 +#: ../sepolicy/sepolicy/sepolicy.glade:1846 +#: ../sepolicy/sepolicy/sepolicy.glade:3121 msgid "Transitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1849 +#: ../sepolicy/sepolicy/sepolicy.glade:1850 msgid "" "Display applications that can transition into or out of the 'selected " "domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1863 -#: ../sepolicy/sepolicy/sepolicy.glade:3221 +#: ../sepolicy/sepolicy/sepolicy.glade:1864 +#: ../sepolicy/sepolicy/sepolicy.glade:3222 msgid "Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1866 -#: ../sepolicy/sepolicy/sepolicy.glade:1883 -#: ../sepolicy/sepolicy/sepolicy.glade:1900 +#: ../sepolicy/sepolicy/sepolicy.glade:1867 +#: ../sepolicy/sepolicy/sepolicy.glade:1884 +#: ../sepolicy/sepolicy/sepolicy.glade:1901 msgid "Manage the SELinux configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1880 -#: ../sepolicy/sepolicy/sepolicy.glade:3343 +#: ../sepolicy/sepolicy/sepolicy.glade:1881 +#: ../sepolicy/sepolicy/sepolicy.glade:3344 msgid "SELinux Users" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1914 -#: ../sepolicy/sepolicy/sepolicy.glade:4015 +#: ../sepolicy/sepolicy/sepolicy.glade:1915 +#: ../sepolicy/sepolicy/sepolicy.glade:4016 msgid "Lockdown" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1917 +#: ../sepolicy/sepolicy/sepolicy.glade:1918 msgid "" "Lockdown the SELinux System.\n" "This screen can be used to turn up the SELinux Protections." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1932 +#: ../sepolicy/sepolicy/sepolicy.glade:1933 msgid "radiobutton" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2020 +#: ../sepolicy/sepolicy/sepolicy.glade:2021 msgid "Show Modified Only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2059 +#: ../sepolicy/sepolicy/sepolicy.glade:2060 msgid "Mislabeled files exist" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2079 +#: ../sepolicy/sepolicy/sepolicy.glade:2080 msgid "Show mislabeled files only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2119 -#: ../sepolicy/sepolicy/sepolicy.glade:3243 +#: ../sepolicy/sepolicy/sepolicy.glade:2120 +#: ../sepolicy/sepolicy/sepolicy.glade:3244 msgid "" -"If-Then-Else rules written in policy that can \n" +"If-Then-Else rules written in policy that can\n" "allow alternative access control." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2131 +#: ../sepolicy/sepolicy/sepolicy.glade:2132 msgid "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2251 -#: ../sepolicy/sepolicy/sepolicy.glade:2363 -#: ../sepolicy/sepolicy/sepolicy.glade:2481 -#: ../sepolicy/sepolicy/sepolicy.glade:4512 -#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:2252 +#: ../sepolicy/sepolicy/sepolicy.glade:2364 +#: ../sepolicy/sepolicy/sepolicy.glade:2482 +#: ../sepolicy/sepolicy/sepolicy.glade:4473 +#: ../sepolicy/sepolicy/sepolicy.glade:4768 msgid "File Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2287 -#: ../sepolicy/sepolicy/sepolicy.glade:2398 +#: ../sepolicy/sepolicy/sepolicy.glade:2288 +#: ../sepolicy/sepolicy/sepolicy.glade:2399 msgid "SELinux File Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2331 +#: ../sepolicy/sepolicy/sepolicy.glade:2332 msgid "File path used to enter the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2332 +#: ../sepolicy/sepolicy/sepolicy.glade:2333 msgid "Executable Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2447 +#: ../sepolicy/sepolicy/sepolicy.glade:2448 msgid "Files to which the 'selected domain' can write." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2448 +#: ../sepolicy/sepolicy/sepolicy.glade:2449 msgid "Writable files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2570 +#: ../sepolicy/sepolicy/sepolicy.glade:2571 msgid "File Types defined for the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2571 +#: ../sepolicy/sepolicy/sepolicy.glade:2572 msgid "Application File Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2703 +#: ../sepolicy/sepolicy/sepolicy.glade:2704 msgid "Network Ports to which the 'selected domain' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2704 +#: ../sepolicy/sepolicy/sepolicy.glade:2705 msgid "Outbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2803 +#: ../sepolicy/sepolicy/sepolicy.glade:2804 msgid "Network Ports to which the 'selected domain' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2804 +#: ../sepolicy/sepolicy/sepolicy.glade:2805 msgid "Inbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2865 +#: ../sepolicy/sepolicy/sepolicy.glade:2866 +#: ../sepolicy/sepolicy/sepolicy.glade:2956 msgid "" -"Boolean \n" +"Boolean\n" "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2891 +#: ../sepolicy/sepolicy/sepolicy.glade:2892 msgid "Boolean name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2908 +#: ../sepolicy/sepolicy/sepolicy.glade:2909 msgid "SELinux Application Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2929 +#: ../sepolicy/sepolicy/sepolicy.glade:2930 msgid "" "Executables which will transition to a different domain, when the 'selected " "domain' executes them." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2932 -msgid "Applicaton Transitions From 'select domain'" +#: ../sepolicy/sepolicy/sepolicy.glade:2933 +msgid "Application Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2955 -msgid "" -"Boolean\n" -"Enabled" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:2971 +#: ../sepolicy/sepolicy/sepolicy.glade:2972 msgid "Calling Process Domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2987 +#: ../sepolicy/sepolicy/sepolicy.glade:2988 msgid "Executable File" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3011 +#: ../sepolicy/sepolicy/sepolicy.glade:3012 msgid "" "Executables which will transition to the 'selected domain', when executing a " "selected domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3012 +#: ../sepolicy/sepolicy/sepolicy.glade:3013 msgid "Application Transitions Into 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3027 +#: ../sepolicy/sepolicy/sepolicy.glade:3028 msgid "" "File Transitions define what happens when the current domain creates the " "content of a particular class in a directory of the destination type. " "Optionally a file name could be specified for the transition." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3035 +#: ../sepolicy/sepolicy/sepolicy.glade:3036 msgid "SELinux Directory Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3048 +#: ../sepolicy/sepolicy/sepolicy.glade:3049 msgid "Destination Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3062 +#: ../sepolicy/sepolicy/sepolicy.glade:3063 msgid "SELinux Destination Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3075 +#: ../sepolicy/sepolicy/sepolicy.glade:3076 msgid "File Name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3097 +#: ../sepolicy/sepolicy/sepolicy.glade:3098 msgid "File Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3296 -#: ../sepolicy/sepolicy/sepolicy.glade:5277 -#: ../sepolicy/sepolicy/sepolicy.glade:5518 +#: ../sepolicy/sepolicy/sepolicy.glade:3297 +#: ../sepolicy/sepolicy/sepolicy.glade:5508 msgid "Default Level" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3382 +#: ../sepolicy/sepolicy/sepolicy.glade:3383 msgid "Select the system mode when the system first boots up" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3455 +#: ../sepolicy/sepolicy/sepolicy.glade:3456 msgid "Select the system mode for the current session" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3532 +#: ../sepolicy/sepolicy/sepolicy.glade:3533 msgid "System Policy Type:" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3593 +#: ../sepolicy/sepolicy/sepolicy.glade:3594 msgid "System Mode" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3631 +#: ../sepolicy/sepolicy/sepolicy.glade:3632 msgid "Import system settings from another machine" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3639 +#: ../sepolicy/sepolicy/sepolicy.glade:3640 msgid "Import" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3658 +#: ../sepolicy/sepolicy/sepolicy.glade:3659 msgid "Export system settings to a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3668 +#: ../sepolicy/sepolicy/sepolicy.glade:3669 msgid "Export" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3687 +#: ../sepolicy/sepolicy/sepolicy.glade:3688 msgid "Relabel all files back to system defaults on reboot" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3724 -#: ../sepolicy/sepolicy/sepolicy.glade:3825 -#: ../sepolicy/sepolicy/sepolicy.glade:3889 -#: ../sepolicy/sepolicy/sepolicy.glade:3952 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3725 +#: ../sepolicy/sepolicy/sepolicy.glade:3826 +#: ../sepolicy/sepolicy/sepolicy.glade:3890 +#: ../sepolicy/sepolicy/sepolicy.glade:3953 ../sepolicy/sepolicy/gui.py:64 msgid "Yes" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3741 -#: ../sepolicy/sepolicy/sepolicy.glade:3843 -#: ../sepolicy/sepolicy/sepolicy.glade:3906 -#: ../sepolicy/sepolicy/sepolicy.glade:3969 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3742 +#: ../sepolicy/sepolicy/sepolicy.glade:3844 +#: ../sepolicy/sepolicy/sepolicy.glade:3907 +#: ../sepolicy/sepolicy/sepolicy.glade:3970 ../sepolicy/sepolicy/gui.py:64 msgid "No" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3782 +#: ../sepolicy/sepolicy/sepolicy.glade:3783 msgid "System Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3829 -#: ../sepolicy/sepolicy/sepolicy.glade:3847 +#: ../sepolicy/sepolicy/sepolicy.glade:3830 +#: ../sepolicy/sepolicy/sepolicy.glade:3848 msgid "" "An unconfined domain is a process label that allows the process to do what " "it wants, without SELinux interfering. Applications started at boot by the " @@ -4368,13 +4416,13 @@ msgid "" "unconfined_t from the users/login screens." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3865 +#: ../sepolicy/sepolicy/sepolicy.glade:3866 msgid "Disable ability to run unconfined system processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3893 -#: ../sepolicy/sepolicy/sepolicy.glade:3910 -#: ../sepolicy/sepolicy/sepolicy.glade:3973 +#: ../sepolicy/sepolicy/sepolicy.glade:3894 +#: ../sepolicy/sepolicy/sepolicy.glade:3911 +#: ../sepolicy/sepolicy/sepolicy.glade:3974 msgid "" "An permissive domain is a process label that allows the process to do what " "it wants, with SELinux only logging the denials, but not enforcing them. " @@ -4383,11 +4431,11 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3928 +#: ../sepolicy/sepolicy/sepolicy.glade:3929 msgid "Disable all permissive processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3956 +#: ../sepolicy/sepolicy/sepolicy.glade:3957 msgid "" "A permissive domain is a process label that allows the process to do what it " "wants, with SELinux only logging the denials, but not enforcing them. " @@ -4396,171 +4444,189 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3994 +#: ../sepolicy/sepolicy/sepolicy.glade:3995 msgid "Deny all processes from ptracing or debugging other processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4031 +#: ../sepolicy/sepolicy/sepolicy.glade:4032 msgid "" "File equivalence cause the system to label content under the new path as if " "it were under the equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4087 +#: ../sepolicy/sepolicy/sepolicy.glade:4088 msgid "Files Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4100 +#: ../sepolicy/sepolicy/sepolicy.glade:4101 msgid "...SELECT TO VIEW DATA..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4131 +#: ../sepolicy/sepolicy/sepolicy.glade:4132 msgid "Delete" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4147 +#: ../sepolicy/sepolicy/sepolicy.glade:4148 msgid "Modify" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4208 +#: ../sepolicy/sepolicy/sepolicy.glade:4209 msgid "Revert" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4213 +#: ../sepolicy/sepolicy/sepolicy.glade:4214 msgid "" "Revert button will launch a dialog window which allows you to revert changes " "within the current transaction." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4225 ../sepolicy/sepolicy/gui.py:2379 +#: ../sepolicy/sepolicy/sepolicy.glade:4226 ../sepolicy/sepolicy/gui.py:2416 msgid "Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4230 +#: ../sepolicy/sepolicy/sepolicy.glade:4231 msgid "Commit all changes in your current transaction to the server." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4278 +#: ../sepolicy/sepolicy/sepolicy.glade:4279 msgid "Applications - Advanced Search" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4331 -msgid "Installed" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:4383 +#: ../sepolicy/sepolicy/sepolicy.glade:4344 msgid "Process Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4424 +#: ../sepolicy/sepolicy/sepolicy.glade:4385 msgid "More Details" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4460 -#: ../sepolicy/sepolicy/sepolicy.glade:4754 +#: ../sepolicy/sepolicy/sepolicy.glade:4421 +#: ../sepolicy/sepolicy/sepolicy.glade:4715 msgid "Delete Modified File Labeling" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4478 +#: ../sepolicy/sepolicy/sepolicy.glade:4439 msgid "" "Select file labeling to delete. File labeling will be deleted when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4486 msgid "SELinux File Label" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4564 -#: ../sepolicy/sepolicy/sepolicy.glade:4714 -#: ../sepolicy/sepolicy/sepolicy.glade:4844 +#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4675 +#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:4940 +#: ../sepolicy/sepolicy/sepolicy.glade:5289 msgid "Save to Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4604 +#: ../sepolicy/sepolicy/sepolicy.glade:4565 msgid "Delete Modified Ports" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4622 +#: ../sepolicy/sepolicy/sepolicy.glade:4583 msgid "Select ports to delete. Ports will be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4771 +#: ../sepolicy/sepolicy/sepolicy.glade:4733 msgid "" -"Select file equivalence labeling to delete.File equivalence labeling will be " -"deleted when update is applied." +"Select file equivalence labeling to delete. File equivalence labeling will " +"be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4887 +#: ../sepolicy/sepolicy/sepolicy.glade:4849 +#: ../sepolicy/sepolicy/sepolicy.glade:5198 +msgid "Delete Modified Users Mapping." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4867 +msgid "" +"Select login user mapping to delete. Login user mapping will be deleted when " +"update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4902 +msgid "Login name" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4983 msgid "More Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4914 +#: ../sepolicy/sepolicy/sepolicy.glade:5010 msgid "Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4973 +#: ../sepolicy/sepolicy/sepolicy.glade:5069 msgid "" "Review the updates you have made before committing them to the system. To " "reset an item, uncheck the checkbox. All items checked will be updated in " "the system when you select update." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5036 +#: ../sepolicy/sepolicy/sepolicy.glade:5132 msgid "Action" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5062 +#: ../sepolicy/sepolicy/sepolicy.glade:5158 msgid "Apply" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5119 -#: ../sepolicy/sepolicy/sepolicy.glade:5360 +#: ../sepolicy/sepolicy/sepolicy.glade:5216 +msgid "" +"Select users mapping to delete.Users mapping will be deleted when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5264 +msgid "SELinux Username" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5349 msgid "" "Add User Roles. SELinux User Roles will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5144 -#: ../sepolicy/sepolicy/sepolicy.glade:5385 +#: ../sepolicy/sepolicy/sepolicy.glade:5374 msgid "SELinux User Name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5258 -#: ../sepolicy/sepolicy/sepolicy.glade:5499 +#: ../sepolicy/sepolicy/sepolicy.glade:5489 msgid "" "Enter MLS/MCS Range for this SELinux User.\n" "s0-s0:c1023" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5289 -#: ../sepolicy/sepolicy/sepolicy.glade:5530 +#: ../sepolicy/sepolicy/sepolicy.glade:5520 msgid "" "Specify the default level that you would like this SELinux user to login " "with. Defaults to s0." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5293 -#: ../sepolicy/sepolicy/sepolicy.glade:5534 +#: ../sepolicy/sepolicy/sepolicy.glade:5524 msgid "Enter Default Level for SELinux User to login with. Default s0" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Disable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Enable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/gui.py:68 msgid "Advanced <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:92 +#: ../sepolicy/sepolicy/gui.py:94 msgid "" "\n" "To change from Disabled to Enforcing mode\n" @@ -4570,512 +4636,536 @@ msgid "" " * Change the system mode to Enforcing\n" msgstr "" -#: ../sepolicy/sepolicy/gui.py:115 +#: ../sepolicy/sepolicy/gui.py:488 #, python-format msgid "%s is not a valid domain" msgstr "" -#: ../sepolicy/sepolicy/gui.py:624 +#: ../sepolicy/sepolicy/gui.py:636 msgid "System Status: Disabled" msgstr "" -#: ../sepolicy/sepolicy/gui.py:722 +#: ../sepolicy/sepolicy/gui.py:734 msgid "Help: Start Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:726 +#: ../sepolicy/sepolicy/gui.py:738 msgid "Help: Booleans Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:732 +#: ../sepolicy/sepolicy/gui.py:744 msgid "Help: Executable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:735 +#: ../sepolicy/sepolicy/gui.py:747 msgid "Help: Writable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:738 +#: ../sepolicy/sepolicy/gui.py:750 msgid "Help: Application Types Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:743 +#: ../sepolicy/sepolicy/gui.py:755 msgid "Help: Outbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:746 +#: ../sepolicy/sepolicy/gui.py:758 msgid "Help: Inbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:752 +#: ../sepolicy/sepolicy/gui.py:764 msgid "Help: Transition from application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:755 +#: ../sepolicy/sepolicy/gui.py:767 msgid "Help: Transition into application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:758 +#: ../sepolicy/sepolicy/gui.py:770 msgid "Help: Transition application file Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:762 +#: ../sepolicy/sepolicy/gui.py:774 msgid "Help: Systems Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:766 +#: ../sepolicy/sepolicy/gui.py:778 msgid "Help: Lockdown Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:770 +#: ../sepolicy/sepolicy/gui.py:782 msgid "Help: Login Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:774 +#: ../sepolicy/sepolicy/gui.py:786 msgid "Help: SELinux User Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:778 +#: ../sepolicy/sepolicy/gui.py:790 msgid "Help: File Equivalence Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:922 ../sepolicy/sepolicy/gui.py:1211 -#: ../sepolicy/sepolicy/gui.py:1644 ../sepolicy/sepolicy/gui.py:1885 -#: ../sepolicy/sepolicy/gui.py:2698 +#: ../sepolicy/sepolicy/gui.py:936 ../sepolicy/sepolicy/gui.py:1227 +#: ../sepolicy/sepolicy/gui.py:1667 ../sepolicy/sepolicy/gui.py:1913 +#: ../sepolicy/sepolicy/gui.py:2692 msgid "More..." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1031 +#: ../sepolicy/sepolicy/gui.py:1044 #, python-format msgid "File path used to enter the '%s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1032 +#: ../sepolicy/sepolicy/gui.py:1045 #, python-format msgid "Files to which the '%s' domain can write." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1033 +#: ../sepolicy/sepolicy/gui.py:1046 #, python-format msgid "Network Ports to which the '%s' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1034 +#: ../sepolicy/sepolicy/gui.py:1047 #, python-format msgid "Network Ports to which the '%s' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1035 +#: ../sepolicy/sepolicy/gui.py:1048 #, python-format msgid "File Types defined for the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1036 +#: ../sepolicy/sepolicy/gui.py:1049 #, python-format msgid "" "Display boolean information that can be used to modify the policy for the " "'%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1037 +#: ../sepolicy/sepolicy/gui.py:1050 #, python-format msgid "Display file type information that can be used by the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1038 +#: ../sepolicy/sepolicy/gui.py:1051 #, python-format msgid "Display network ports to which the '%s' can connect or listen to." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1039 +#: ../sepolicy/sepolicy/gui.py:1052 #, python-format msgid "Application Transitions Into '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1040 +#: ../sepolicy/sepolicy/gui.py:1053 #, python-format msgid "Application Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1041 +#: ../sepolicy/sepolicy/gui.py:1054 #, python-format msgid "File Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1042 +#: ../sepolicy/sepolicy/gui.py:1055 #, python-format msgid "" "Executables which will transition to the '%s', when executing a selected " "domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1043 +#: ../sepolicy/sepolicy/gui.py:1056 #, python-format msgid "" "Executables which will transition to a different domain, when the '%s' " "executes them." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1044 +#: ../sepolicy/sepolicy/gui.py:1057 #, python-format msgid "Files by '%s' will transitions to a different label." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1045 +#: ../sepolicy/sepolicy/gui.py:1058 #, python-format msgid "Display applications that can transition into or out of the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1149 +#: ../sepolicy/sepolicy/gui.py:1166 msgid "MISSING FILE PATH" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1281 ../sepolicy/sepolicy/gui.py:1283 msgid "Boolean section." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 +#: ../sepolicy/sepolicy/gui.py:1281 msgid "To disable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1283 msgid "To enable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1324 +#: ../sepolicy/sepolicy/gui.py:1340 msgid "executable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1327 +#: ../sepolicy/sepolicy/gui.py:1343 msgid "writable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1330 +#: ../sepolicy/sepolicy/gui.py:1346 msgid "application" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1331 +#: ../sepolicy/sepolicy/gui.py:1347 #, python-format -msgid "Add new %s file path for '%s' domains." +msgid "Add new %(TYPE)s file path for '%(DOMAIN)s' domains." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1332 +#: ../sepolicy/sepolicy/gui.py:1348 #, python-format -msgid "Delete modified %s file paths for '%s' domain." +msgid "Delete %(TYPE)s file paths for '%(DOMAIN)s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1333 +#: ../sepolicy/sepolicy/gui.py:1349 #, python-format msgid "" -"Modify selected modified %s file path for '%s' domain. Only bolded items in " -"the list can be selected, this indicates they were modified previously." +"Modify %(TYPE)s file path for '%(DOMAIN)s' domain. Only bolded items in the " +"list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1345 +#: ../sepolicy/sepolicy/gui.py:1361 msgid "connect" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1348 +#: ../sepolicy/sepolicy/gui.py:1364 msgid "listen for inbound connections" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1350 +#: ../sepolicy/sepolicy/gui.py:1366 #, python-format -msgid "Add new port definition to which the '%s' domains is allowed to %s." +msgid "" +"Add new port definition to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1351 +#: ../sepolicy/sepolicy/gui.py:1367 #, python-format msgid "" -"Delete modified port definitions to which the '%s' domain is allowed to %s." +"Delete modified port definitions to which the '%(APP)s' domain is allowed to " +"%(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1352 +#: ../sepolicy/sepolicy/gui.py:1368 #, python-format -msgid "Modify port definitions to which the '%s' domain is allowed to %s." +msgid "" +"Modify port definitions to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1381 +#: ../sepolicy/sepolicy/gui.py:1397 msgid "Add new SELinux User/Role definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1382 +#: ../sepolicy/sepolicy/gui.py:1398 msgid "Delete modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1383 +#: ../sepolicy/sepolicy/gui.py:1399 msgid "Modify selected modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1390 +#: ../sepolicy/sepolicy/gui.py:1406 msgid "Add new Login Mapping definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1391 +#: ../sepolicy/sepolicy/gui.py:1407 msgid "Delete modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1392 +#: ../sepolicy/sepolicy/gui.py:1408 msgid "Modify selected modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1399 +#: ../sepolicy/sepolicy/gui.py:1415 msgid "Add new File Equivalence definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1400 +#: ../sepolicy/sepolicy/gui.py:1416 msgid "Delete modified File Equivalence definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1401 +#: ../sepolicy/sepolicy/gui.py:1417 msgid "" "Modify selected modified File Equivalence definitions. Only bolded items in " "the list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1429 +#: ../sepolicy/sepolicy/gui.py:1445 #, python-format msgid "Boolean %s Allow Rules" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1442 +#: ../sepolicy/sepolicy/gui.py:1458 #, python-format msgid "Add Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1443 +#: ../sepolicy/sepolicy/gui.py:1459 #, python-format msgid "Add Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1448 +#: ../sepolicy/sepolicy/gui.py:1464 #, python-format msgid "" "Add File Labeling for %s. File labels will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1449 ../sepolicy/sepolicy/gui.py:1500 +#: ../sepolicy/sepolicy/gui.py:1465 ../sepolicy/sepolicy/gui.py:1518 #, python-format msgid "Add File Labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1459 +#: ../sepolicy/sepolicy/gui.py:1475 msgid "Add Login Mapping. User Mapping will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1460 +#: ../sepolicy/sepolicy/gui.py:1476 msgid "Add Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1465 +#: ../sepolicy/sepolicy/gui.py:1481 msgid "" "Add SELinux User Role. SELinux user roles will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1466 +#: ../sepolicy/sepolicy/gui.py:1482 msgid "Add SELinux Users" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1473 +#: ../sepolicy/sepolicy/gui.py:1489 msgid "" "Add File Equivalency Mapping. Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1474 +#: ../sepolicy/sepolicy/gui.py:1490 msgid "Add SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1499 +#: ../sepolicy/sepolicy/gui.py:1517 #, python-format msgid "" "Modify File Labeling for %s. File labels will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1566 +#: ../sepolicy/sepolicy/gui.py:1573 +msgid "" +"Modify SELinux User Role. SELinux user roles will be modified when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1574 +msgid "Modify SELinux Users" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1582 +msgid "" +"Modify Login Mapping. Login Mapping will be modified when Update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1583 +msgid "Modify Login Mapping" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1589 msgid "" "Modify File Equivalency Mapping. Mapping will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1567 +#: ../sepolicy/sepolicy/gui.py:1590 msgid "Modify SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1652 +#: ../sepolicy/sepolicy/gui.py:1675 #, python-format msgid "" "Modify Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1653 +#: ../sepolicy/sepolicy/gui.py:1676 #, python-format msgid "Modify Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1866 +#: ../sepolicy/sepolicy/gui.py:1894 #, python-format msgid "The entry '%s' is not a valid path. Paths must begin with a '/'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1879 +#: ../sepolicy/sepolicy/gui.py:1907 msgid "Port number must be between 1 and 65536" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2146 +#: ../sepolicy/sepolicy/gui.py:2183 #, python-format msgid "SELinux name: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2157 +#: ../sepolicy/sepolicy/gui.py:2194 #, python-format msgid "Add file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2159 +#: ../sepolicy/sepolicy/gui.py:2196 #, python-format msgid "Delete file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2161 +#: ../sepolicy/sepolicy/gui.py:2198 #, python-format msgid "Modify file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2165 +#: ../sepolicy/sepolicy/gui.py:2202 #, python-format msgid "File path: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2168 +#: ../sepolicy/sepolicy/gui.py:2205 #, python-format msgid "File class: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2171 ../sepolicy/sepolicy/gui.py:2195 +#: ../sepolicy/sepolicy/gui.py:2208 ../sepolicy/sepolicy/gui.py:2232 #, python-format msgid "SELinux file type: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2180 +#: ../sepolicy/sepolicy/gui.py:2217 #, python-format msgid "Add ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2182 +#: ../sepolicy/sepolicy/gui.py:2219 #, python-format msgid "Delete ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2184 +#: ../sepolicy/sepolicy/gui.py:2221 #, python-format msgid "Modify ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2187 +#: ../sepolicy/sepolicy/gui.py:2224 #, python-format msgid "Network ports: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2190 +#: ../sepolicy/sepolicy/gui.py:2227 #, python-format msgid "Network protocol: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2204 +#: ../sepolicy/sepolicy/gui.py:2241 msgid "Add user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2206 +#: ../sepolicy/sepolicy/gui.py:2243 msgid "Delete user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2208 +#: ../sepolicy/sepolicy/gui.py:2245 msgid "Modify user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2211 +#: ../sepolicy/sepolicy/gui.py:2248 #, python-format msgid "SELinux User : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2216 +#: ../sepolicy/sepolicy/gui.py:2253 #, python-format msgid "Roles: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2220 ../sepolicy/sepolicy/gui.py:2245 +#: ../sepolicy/sepolicy/gui.py:2257 ../sepolicy/sepolicy/gui.py:2282 #, python-format msgid "MLS/MCS Range: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2229 +#: ../sepolicy/sepolicy/gui.py:2266 msgid "Add login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2231 +#: ../sepolicy/sepolicy/gui.py:2268 msgid "Delete login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2233 +#: ../sepolicy/sepolicy/gui.py:2270 msgid "Modify login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2237 +#: ../sepolicy/sepolicy/gui.py:2274 #, python-format -msgid "Linux User : %s" +msgid "Login Name : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2241 +#: ../sepolicy/sepolicy/gui.py:2278 #, python-format msgid "SELinux User: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2254 +#: ../sepolicy/sepolicy/gui.py:2291 msgid "Add file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2256 +#: ../sepolicy/sepolicy/gui.py:2293 msgid "Delete file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2258 +#: ../sepolicy/sepolicy/gui.py:2295 msgid "Modify file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2262 +#: ../sepolicy/sepolicy/gui.py:2299 #, python-format msgid "File path : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2266 +#: ../sepolicy/sepolicy/gui.py:2303 #, python-format msgid "Equivalence: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2369 +#: ../sepolicy/sepolicy/gui.py:2406 #, python-format -msgid "Run restorecon on %s to change its type from %s to the default %s?" +msgid "" +"Run restorecon on %(PATH)s to change its type from %(CUR_CONTEXT)s to the " +"default %(DEF_CONTEXT)s?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2381 +#: ../sepolicy/sepolicy/gui.py:2418 msgid "Update Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2383 +#: ../sepolicy/sepolicy/gui.py:2420 msgid "Revert Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2556 +#: ../sepolicy/sepolicy/gui.py:2547 msgid "System Status: Enforcing" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2558 +#: ../sepolicy/sepolicy/gui.py:2549 msgid "System Status: Permissive" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2749 +#: ../sepolicy/sepolicy/gui.py:2743 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -5085,7 +5175,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "" "You are attempting to close the application without applying your changes.\n" " * To apply changes you have made during this session, click No and " @@ -5094,6 +5184,6 @@ msgid "" "All changes that you have made during this session will be lost." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "Loss of data Dialog" msgstr "" diff --git a/policycoreutils/po/am.po b/policycoreutils/po/am.po index db49486..bcc3f8e 100644 --- a/policycoreutils/po/am.po +++ b/policycoreutils/po/am.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: Policycoreutils\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-10-10 16:04-0400\n" -"PO-Revision-Date: 2012-03-30 18:14+0000\n" -"Last-Translator: FULL NAME \n" +"POT-Creation-Date: 2014-01-03 16:04-0500\n" +"PO-Revision-Date: 2013-12-20 13:58+0000\n" +"Last-Translator: dwalsh \n" "Language-Team: Amharic (http://www.transifex.com/projects/p/fedora/language/" "am/)\n" "Language: am\n" @@ -87,96 +87,101 @@ msgstr "" msgid "To make this policy package active, execute:" msgstr "" -#: ../semanage/seobject.py:210 +#: ../semanage/seobject/__init__.py:220 msgid "Could not create semanage handle" msgstr "" -#: ../semanage/seobject.py:218 +#: ../semanage/seobject/__init__.py:228 msgid "SELinux policy is not managed or store cannot be accessed." msgstr "" -#: ../semanage/seobject.py:223 +#: ../semanage/seobject/__init__.py:233 msgid "Cannot read policy store." msgstr "" -#: ../semanage/seobject.py:228 +#: ../semanage/seobject/__init__.py:238 msgid "Could not establish semanage connection" msgstr "" -#: ../semanage/seobject.py:233 +#: ../semanage/seobject/__init__.py:243 msgid "Could not test MLS enabled status" msgstr "" -#: ../semanage/seobject.py:239 ../semanage/seobject.py:254 +#: ../semanage/seobject/__init__.py:249 ../semanage/seobject/__init__.py:264 msgid "Not yet implemented" msgstr "" -#: ../semanage/seobject.py:243 +#: ../semanage/seobject/__init__.py:253 msgid "Semanage transaction already in progress" msgstr "" -#: ../semanage/seobject.py:252 +#: ../semanage/seobject/__init__.py:262 msgid "Could not start semanage transaction" msgstr "" -#: ../semanage/seobject.py:264 +#: ../semanage/seobject/__init__.py:274 msgid "Could not commit semanage transaction" msgstr "" -#: ../semanage/seobject.py:269 +#: ../semanage/seobject/__init__.py:279 msgid "Semanage transaction not in progress" msgstr "" -#: ../semanage/seobject.py:281 ../semanage/seobject.py:376 +#: ../semanage/seobject/__init__.py:291 ../semanage/seobject/__init__.py:386 msgid "Could not list SELinux modules" msgstr "" -#: ../semanage/seobject.py:300 +#: ../semanage/seobject/__init__.py:310 msgid "Modules Name" msgstr "" -#: ../semanage/seobject.py:300 ../gui/modulesPage.py:63 +#: ../semanage/seobject/__init__.py:310 ../gui/modulesPage.py:63 msgid "Version" msgstr "" -#: ../semanage/seobject.py:303 ../gui/statusPage.py:75 -#: ../sepolicy/sepolicy/sepolicy.glade:3430 +#: ../semanage/seobject/__init__.py:313 ../gui/statusPage.py:71 +#: ../sepolicy/sepolicy/sepolicy.glade:3431 msgid "Disabled" msgstr "" -#: ../semanage/seobject.py:312 +#: ../semanage/seobject/__init__.py:322 #, python-format msgid "Module does not exists %s " msgstr "" -#: ../semanage/seobject.py:322 +#: ../semanage/seobject/__init__.py:332 #, python-format msgid "Could not disable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:333 +#: ../semanage/seobject/__init__.py:343 #, python-format msgid "Could not enable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:348 +#: ../semanage/seobject/__init__.py:358 #, python-format msgid "Could not remove module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:363 +#: ../semanage/seobject/__init__.py:373 msgid "dontaudit requires either 'on' or 'off'" msgstr "" -#: ../semanage/seobject.py:391 +#: ../semanage/seobject/__init__.py:402 +msgid "Customized Permissive Types" +msgstr "" + +#: ../semanage/seobject/__init__.py:410 msgid "Builtin Permissive Types" msgstr "" -#: ../semanage/seobject.py:401 -msgid "Customized Permissive Types" +#: ../semanage/seobject/__init__.py:419 +#, python-format +msgid "%s is not a domain type" msgstr "" -#: ../semanage/seobject.py:410 +#: ../semanage/seobject/__init__.py:424 msgid "" "The sepolgen python module is required to setup permissive domains.\n" "In some distributions it is included in the policycoreutils-devel patckage.\n" @@ -184,810 +189,825 @@ msgid "" "Or similar for your distro." msgstr "" -#: ../semanage/seobject.py:447 +#: ../semanage/seobject/__init__.py:461 #, python-format msgid "Could not set permissive domain %s (module installation failed)" msgstr "" -#: ../semanage/seobject.py:453 +#: ../semanage/seobject/__init__.py:467 #, python-format msgid "Could not remove permissive domain %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:488 ../semanage/seobject.py:562 -#: ../semanage/seobject.py:608 ../semanage/seobject.py:730 -#: ../semanage/seobject.py:760 ../semanage/seobject.py:827 -#: ../semanage/seobject.py:884 ../semanage/seobject.py:1144 -#: ../semanage/seobject.py:1879 ../semanage/seobject.py:1942 -#: ../semanage/seobject.py:1961 ../semanage/seobject.py:2084 -#: ../semanage/seobject.py:2135 +#: ../semanage/seobject/__init__.py:501 ../semanage/seobject/__init__.py:575 +#: ../semanage/seobject/__init__.py:621 ../semanage/seobject/__init__.py:743 +#: ../semanage/seobject/__init__.py:773 ../semanage/seobject/__init__.py:839 +#: ../semanage/seobject/__init__.py:896 ../semanage/seobject/__init__.py:1156 +#: ../semanage/seobject/__init__.py:1891 ../semanage/seobject/__init__.py:1954 +#: ../semanage/seobject/__init__.py:1973 ../semanage/seobject/__init__.py:2096 +#: ../semanage/seobject/__init__.py:2147 #, python-format msgid "Could not create a key for %s" msgstr "" -#: ../semanage/seobject.py:492 ../semanage/seobject.py:566 -#: ../semanage/seobject.py:612 ../semanage/seobject.py:618 +#: ../semanage/seobject/__init__.py:505 ../semanage/seobject/__init__.py:579 +#: ../semanage/seobject/__init__.py:625 ../semanage/seobject/__init__.py:631 #, python-format msgid "Could not check if login mapping for %s is defined" msgstr "" -#: ../semanage/seobject.py:501 +#: ../semanage/seobject/__init__.py:514 #, python-format msgid "Linux Group %s does not exist" msgstr "" -#: ../semanage/seobject.py:506 +#: ../semanage/seobject/__init__.py:519 #, python-format msgid "Linux User %s does not exist" msgstr "" -#: ../semanage/seobject.py:510 +#: ../semanage/seobject/__init__.py:523 #, python-format msgid "Could not create login mapping for %s" msgstr "" -#: ../semanage/seobject.py:514 ../semanage/seobject.py:775 +#: ../semanage/seobject/__init__.py:527 ../semanage/seobject/__init__.py:788 #, python-format msgid "Could not set name for %s" msgstr "" -#: ../semanage/seobject.py:519 ../semanage/seobject.py:785 +#: ../semanage/seobject/__init__.py:532 ../semanage/seobject/__init__.py:798 #, python-format msgid "Could not set MLS range for %s" msgstr "" -#: ../semanage/seobject.py:523 +#: ../semanage/seobject/__init__.py:536 #, python-format msgid "Could not set SELinux user for %s" msgstr "" -#: ../semanage/seobject.py:527 +#: ../semanage/seobject/__init__.py:540 #, python-format msgid "Could not add login mapping for %s" msgstr "" -#: ../semanage/seobject.py:545 +#: ../semanage/seobject/__init__.py:558 msgid "Requires seuser or serange" msgstr "" -#: ../semanage/seobject.py:568 ../semanage/seobject.py:614 +#: ../semanage/seobject/__init__.py:581 ../semanage/seobject/__init__.py:627 #, python-format msgid "Login mapping for %s is not defined" msgstr "" -#: ../semanage/seobject.py:572 +#: ../semanage/seobject/__init__.py:585 #, python-format msgid "Could not query seuser for %s" msgstr "" -#: ../semanage/seobject.py:586 +#: ../semanage/seobject/__init__.py:599 #, python-format msgid "Could not modify login mapping for %s" msgstr "" -#: ../semanage/seobject.py:620 +#: ../semanage/seobject/__init__.py:633 #, python-format msgid "Login mapping for %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:624 +#: ../semanage/seobject/__init__.py:637 #, python-format msgid "Could not delete login mapping for %s" msgstr "" -#: ../semanage/seobject.py:646 ../semanage/seobject.py:679 -#: ../semanage/seobject.py:927 +#: ../semanage/seobject/__init__.py:659 ../semanage/seobject/__init__.py:692 +#: ../semanage/seobject/__init__.py:939 msgid "Could not list login mappings" msgstr "" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 #: ../gui/system-config-selinux.glade:100 -#: ../sepolicy/sepolicy/sepolicy.glade:1166 -#: ../sepolicy/sepolicy/sepolicy.glade:3155 +#: ../sepolicy/sepolicy/sepolicy.glade:1162 +#: ../sepolicy/sepolicy/sepolicy.glade:3156 msgid "Login Name" msgstr "" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 #: ../gui/system-config-selinux.glade:128 #: ../gui/system-config-selinux.glade:915 -#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:44 -#: ../sepolicy/sepolicy/sepolicy.glade:1192 -#: ../sepolicy/sepolicy/sepolicy.glade:3173 -#: ../sepolicy/sepolicy/sepolicy.glade:3259 +#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:41 +#: ../sepolicy/sepolicy/sepolicy.glade:1188 +#: ../sepolicy/sepolicy/sepolicy.glade:3174 +#: ../sepolicy/sepolicy/sepolicy.glade:3260 +#: ../sepolicy/sepolicy/sepolicy.glade:4915 msgid "SELinux User" msgstr "" -#: ../semanage/seobject.py:707 ../gui/system-config-selinux.glade:156 +#: ../semanage/seobject/__init__.py:720 ../gui/system-config-selinux.glade:156 #: ../gui/system-config-selinux.glade:943 msgid "MLS/MCS Range" msgstr "" -#: ../semanage/seobject.py:707 +#: ../semanage/seobject/__init__.py:720 msgid "Service" msgstr "" -#: ../semanage/seobject.py:733 ../semanage/seobject.py:764 -#: ../semanage/seobject.py:831 ../semanage/seobject.py:888 -#: ../semanage/seobject.py:894 +#: ../semanage/seobject/__init__.py:746 ../semanage/seobject/__init__.py:777 +#: ../semanage/seobject/__init__.py:843 ../semanage/seobject/__init__.py:900 +#: ../semanage/seobject/__init__.py:906 #, python-format msgid "Could not check if SELinux user %s is defined" msgstr "" -#: ../semanage/seobject.py:736 ../semanage/seobject.py:837 -#: ../semanage/seobject.py:900 +#: ../semanage/seobject/__init__.py:749 ../semanage/seobject/__init__.py:849 +#: ../semanage/seobject/__init__.py:912 #, python-format msgid "Could not query user for %s" msgstr "" -#: ../semanage/seobject.py:756 +#: ../semanage/seobject/__init__.py:769 #, python-format msgid "You must add at least one role for %s" msgstr "" -#: ../semanage/seobject.py:771 +#: ../semanage/seobject/__init__.py:784 #, python-format msgid "Could not create SELinux user for %s" msgstr "" -#: ../semanage/seobject.py:780 +#: ../semanage/seobject/__init__.py:793 #, python-format -msgid "Could not add role %s for %s" +msgid "Could not add role %(ROLE)s for %(NAME)s" msgstr "" -#: ../semanage/seobject.py:789 +#: ../semanage/seobject/__init__.py:802 #, python-format msgid "Could not set MLS level for %s" msgstr "" -#: ../semanage/seobject.py:792 +#: ../semanage/seobject/__init__.py:805 #, python-format -msgid "Could not add prefix %s for %s" +msgid "Could not add prefix %(PREFIX)s for %(ROLE)s" msgstr "" -#: ../semanage/seobject.py:795 +#: ../semanage/seobject/__init__.py:808 #, python-format msgid "Could not extract key for %s" msgstr "" -#: ../semanage/seobject.py:799 +#: ../semanage/seobject/__init__.py:812 #, python-format msgid "Could not add SELinux user %s" msgstr "" -#: ../semanage/seobject.py:821 +#: ../semanage/seobject/__init__.py:833 msgid "Requires prefix, roles, level or range" msgstr "" -#: ../semanage/seobject.py:823 +#: ../semanage/seobject/__init__.py:835 msgid "Requires prefix or roles" msgstr "" -#: ../semanage/seobject.py:833 ../semanage/seobject.py:890 +#: ../semanage/seobject/__init__.py:845 ../semanage/seobject/__init__.py:902 #, python-format msgid "SELinux user %s is not defined" msgstr "" -#: ../semanage/seobject.py:862 +#: ../semanage/seobject/__init__.py:874 #, python-format msgid "Could not modify SELinux user %s" msgstr "" -#: ../semanage/seobject.py:896 +#: ../semanage/seobject/__init__.py:908 #, python-format msgid "SELinux user %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:907 +#: ../semanage/seobject/__init__.py:919 #, python-format msgid "Could not delete SELinux user %s" msgstr "" -#: ../semanage/seobject.py:945 +#: ../semanage/seobject/__init__.py:957 msgid "Could not list SELinux users" msgstr "" -#: ../semanage/seobject.py:951 +#: ../semanage/seobject/__init__.py:963 #, python-format msgid "Could not list roles for user %s" msgstr "" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "Labeling" msgstr "" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "MLS/" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "Prefix" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Level" msgstr "" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Range" msgstr "" -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 -#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:59 -#: ../sepolicy/sepolicy/sepolicy.glade:3279 -#: ../sepolicy/sepolicy/sepolicy.glade:5170 -#: ../sepolicy/sepolicy/sepolicy.glade:5411 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 +#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:56 +#: ../sepolicy/sepolicy/sepolicy.glade:3280 +#: ../sepolicy/sepolicy/sepolicy.glade:5251 +#: ../sepolicy/sepolicy/sepolicy.glade:5400 msgid "SELinux Roles" msgstr "" -#: ../semanage/seobject.py:1002 +#: ../semanage/seobject/__init__.py:1014 msgid "Protocol udp or tcp is required" msgstr "" -#: ../semanage/seobject.py:1004 +#: ../semanage/seobject/__init__.py:1016 msgid "Port is required" msgstr "" -#: ../semanage/seobject.py:1014 +#: ../semanage/seobject/__init__.py:1026 msgid "Invalid Port" msgstr "" -#: ../semanage/seobject.py:1018 +#: ../semanage/seobject/__init__.py:1030 #, python-format -msgid "Could not create a key for %s/%s" +msgid "Could not create a key for %(PROTOTYPE)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1029 +#: ../semanage/seobject/__init__.py:1041 msgid "Type is required" msgstr "" -#: ../semanage/seobject.py:1032 ../semanage/seobject.py:1096 -#: ../semanage/seobject.py:1873 +#: ../semanage/seobject/__init__.py:1044 ../semanage/seobject/__init__.py:1108 +#: ../semanage/seobject/__init__.py:1885 #, python-format msgid "Type %s is invalid, must be a port type" msgstr "" -#: ../semanage/seobject.py:1040 ../semanage/seobject.py:1102 -#: ../semanage/seobject.py:1157 ../semanage/seobject.py:1163 +#: ../semanage/seobject/__init__.py:1052 ../semanage/seobject/__init__.py:1169 +#: ../semanage/seobject/__init__.py:1175 #, python-format -msgid "Could not check if port %s/%s is defined" +msgid "Could not check if port %(PROTOCOL)s/%(PORT)s is defined" msgstr "" -#: ../semanage/seobject.py:1042 +#: ../semanage/seobject/__init__.py:1054 #, python-format -msgid "Port %s/%s already defined" +msgid "Port %(PROTOCOL)s/%(PORT)s already defined" msgstr "" -#: ../semanage/seobject.py:1046 +#: ../semanage/seobject/__init__.py:1058 #, python-format -msgid "Could not create port for %s/%s" +msgid "Could not create port for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1052 +#: ../semanage/seobject/__init__.py:1064 #, python-format -msgid "Could not create context for %s/%s" +msgid "Could not create context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1056 +#: ../semanage/seobject/__init__.py:1068 #, python-format -msgid "Could not set user in port context for %s/%s" +msgid "Could not set user in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1060 +#: ../semanage/seobject/__init__.py:1072 #, python-format -msgid "Could not set role in port context for %s/%s" +msgid "Could not set role in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1064 +#: ../semanage/seobject/__init__.py:1076 #, python-format -msgid "Could not set type in port context for %s/%s" +msgid "Could not set type in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1069 +#: ../semanage/seobject/__init__.py:1081 #, python-format -msgid "Could not set mls fields in port context for %s/%s" +msgid "Could not set mls fields in port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1073 +#: ../semanage/seobject/__init__.py:1085 #, python-format -msgid "Could not set port context for %s/%s" +msgid "Could not set port context for %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1077 +#: ../semanage/seobject/__init__.py:1089 #, python-format -msgid "Could not add port %s/%s" +msgid "Could not add port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1091 ../semanage/seobject.py:1367 -#: ../semanage/seobject.py:1566 +#: ../semanage/seobject/__init__.py:1103 ../semanage/seobject/__init__.py:1379 +#: ../semanage/seobject/__init__.py:1578 msgid "Requires setype or serange" msgstr "" -#: ../semanage/seobject.py:1093 +#: ../semanage/seobject/__init__.py:1105 msgid "Requires setype" msgstr "" -#: ../semanage/seobject.py:1104 ../semanage/seobject.py:1159 +#: ../semanage/seobject/__init__.py:1114 +#, python-format +msgid "Could not check if port @%(PROTOCOL)s/%(PORT)s is defined" +msgstr "" + +#: ../semanage/seobject/__init__.py:1116 #, python-format -msgid "Port %s/%s is not defined" +msgid "Port @%(PROTOCOL)s/%(PORT)s is not defined" msgstr "" -#: ../semanage/seobject.py:1108 +#: ../semanage/seobject/__init__.py:1120 #, python-format -msgid "Could not query port %s/%s" +msgid "Could not query port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1119 +#: ../semanage/seobject/__init__.py:1131 #, python-format -msgid "Could not modify port %s/%s" +msgid "Could not modify port %(PROTOCOL)s/%(PORT)s" msgstr "" -#: ../semanage/seobject.py:1132 +#: ../semanage/seobject/__init__.py:1144 msgid "Could not list the ports" msgstr "" -#: ../semanage/seobject.py:1148 +#: ../semanage/seobject/__init__.py:1160 #, python-format msgid "Could not delete the port %s" msgstr "" -#: ../semanage/seobject.py:1165 +#: ../semanage/seobject/__init__.py:1171 #, python-format -msgid "Port %s/%s is defined in policy, cannot be deleted" +msgid "Port %(PROTOCOL)s/%(PORT)s is not defined" msgstr "" -#: ../semanage/seobject.py:1169 +#: ../semanage/seobject/__init__.py:1177 #, python-format -msgid "Could not delete port %s/%s" +msgid "Port %(PROTOCOL)s/%(PORT)s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1185 ../semanage/seobject.py:1207 +#: ../semanage/seobject/__init__.py:1181 +#, python-format +msgid "Could not delete port %(PROTOCOL)s/%(PORT)s" +msgstr "" + +#: ../semanage/seobject/__init__.py:1197 ../semanage/seobject/__init__.py:1219 msgid "Could not list ports" msgstr "" -#: ../semanage/seobject.py:1246 ../sepolicy/sepolicy/sepolicy.glade:2675 -#: ../sepolicy/sepolicy/sepolicy.glade:2773 -#: ../sepolicy/sepolicy/sepolicy.glade:4687 +#: ../semanage/seobject/__init__.py:1258 +#: ../sepolicy/sepolicy/sepolicy.glade:2676 +#: ../sepolicy/sepolicy/sepolicy.glade:2774 +#: ../sepolicy/sepolicy/sepolicy.glade:4648 msgid "SELinux Port Type" msgstr "" -#: ../semanage/seobject.py:1246 +#: ../semanage/seobject/__init__.py:1258 msgid "Proto" msgstr "" -#: ../semanage/seobject.py:1246 ../gui/system-config-selinux.glade:335 -#: ../sepolicy/sepolicy/sepolicy.glade:1417 +#: ../semanage/seobject/__init__.py:1258 +#: ../gui/system-config-selinux.glade:335 +#: ../sepolicy/sepolicy/sepolicy.glade:1413 msgid "Port Number" msgstr "" -#: ../semanage/seobject.py:1270 +#: ../semanage/seobject/__init__.py:1282 msgid "Node Address is required" msgstr "" -#: ../semanage/seobject.py:1285 +#: ../semanage/seobject/__init__.py:1297 msgid "Unknown or missing protocol" msgstr "" -#: ../semanage/seobject.py:1299 +#: ../semanage/seobject/__init__.py:1311 msgid "SELinux node type is required" msgstr "" -#: ../semanage/seobject.py:1302 ../semanage/seobject.py:1370 +#: ../semanage/seobject/__init__.py:1314 ../semanage/seobject/__init__.py:1382 #, python-format msgid "Type %s is invalid, must be a node type" msgstr "" -#: ../semanage/seobject.py:1306 ../semanage/seobject.py:1374 -#: ../semanage/seobject.py:1410 ../semanage/seobject.py:1508 -#: ../semanage/seobject.py:1570 ../semanage/seobject.py:1604 -#: ../semanage/seobject.py:1818 +#: ../semanage/seobject/__init__.py:1318 ../semanage/seobject/__init__.py:1386 +#: ../semanage/seobject/__init__.py:1422 ../semanage/seobject/__init__.py:1520 +#: ../semanage/seobject/__init__.py:1582 ../semanage/seobject/__init__.py:1616 +#: ../semanage/seobject/__init__.py:1830 #, python-format msgid "Could not create key for %s" msgstr "" -#: ../semanage/seobject.py:1308 ../semanage/seobject.py:1378 -#: ../semanage/seobject.py:1414 ../semanage/seobject.py:1420 +#: ../semanage/seobject/__init__.py:1320 ../semanage/seobject/__init__.py:1390 +#: ../semanage/seobject/__init__.py:1426 ../semanage/seobject/__init__.py:1432 #, python-format msgid "Could not check if addr %s is defined" msgstr "" -#: ../semanage/seobject.py:1317 +#: ../semanage/seobject/__init__.py:1329 #, python-format msgid "Could not create addr for %s" msgstr "" -#: ../semanage/seobject.py:1323 ../semanage/seobject.py:1524 -#: ../semanage/seobject.py:1767 +#: ../semanage/seobject/__init__.py:1335 ../semanage/seobject/__init__.py:1536 +#: ../semanage/seobject/__init__.py:1779 #, python-format msgid "Could not create context for %s" msgstr "" -#: ../semanage/seobject.py:1327 +#: ../semanage/seobject/__init__.py:1339 #, python-format msgid "Could not set mask for %s" msgstr "" -#: ../semanage/seobject.py:1331 +#: ../semanage/seobject/__init__.py:1343 #, python-format msgid "Could not set user in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1335 +#: ../semanage/seobject/__init__.py:1347 #, python-format msgid "Could not set role in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1339 +#: ../semanage/seobject/__init__.py:1351 #, python-format msgid "Could not set type in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1344 +#: ../semanage/seobject/__init__.py:1356 #, python-format msgid "Could not set mls fields in addr context for %s" msgstr "" -#: ../semanage/seobject.py:1348 +#: ../semanage/seobject/__init__.py:1360 #, python-format msgid "Could not set addr context for %s" msgstr "" -#: ../semanage/seobject.py:1352 +#: ../semanage/seobject/__init__.py:1364 #, python-format msgid "Could not add addr %s" msgstr "" -#: ../semanage/seobject.py:1380 ../semanage/seobject.py:1416 +#: ../semanage/seobject/__init__.py:1392 ../semanage/seobject/__init__.py:1428 #, python-format msgid "Addr %s is not defined" msgstr "" -#: ../semanage/seobject.py:1384 +#: ../semanage/seobject/__init__.py:1396 #, python-format msgid "Could not query addr %s" msgstr "" -#: ../semanage/seobject.py:1394 +#: ../semanage/seobject/__init__.py:1406 #, python-format msgid "Could not modify addr %s" msgstr "" -#: ../semanage/seobject.py:1422 +#: ../semanage/seobject/__init__.py:1434 #, python-format msgid "Addr %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1426 +#: ../semanage/seobject/__init__.py:1438 #, python-format msgid "Could not delete addr %s" msgstr "" -#: ../semanage/seobject.py:1438 +#: ../semanage/seobject/__init__.py:1450 msgid "Could not deleteall node mappings" msgstr "" -#: ../semanage/seobject.py:1452 +#: ../semanage/seobject/__init__.py:1464 msgid "Could not list addrs" msgstr "" -#: ../semanage/seobject.py:1504 ../semanage/seobject.py:1811 +#: ../semanage/seobject/__init__.py:1516 ../semanage/seobject/__init__.py:1823 msgid "SELinux Type is required" msgstr "" -#: ../semanage/seobject.py:1512 ../semanage/seobject.py:1574 -#: ../semanage/seobject.py:1608 ../semanage/seobject.py:1614 +#: ../semanage/seobject/__init__.py:1524 ../semanage/seobject/__init__.py:1586 +#: ../semanage/seobject/__init__.py:1620 ../semanage/seobject/__init__.py:1626 #, python-format msgid "Could not check if interface %s is defined" msgstr "" -#: ../semanage/seobject.py:1519 +#: ../semanage/seobject/__init__.py:1531 #, python-format msgid "Could not create interface for %s" msgstr "" -#: ../semanage/seobject.py:1528 +#: ../semanage/seobject/__init__.py:1540 #, python-format msgid "Could not set user in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1532 +#: ../semanage/seobject/__init__.py:1544 #, python-format msgid "Could not set role in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1536 +#: ../semanage/seobject/__init__.py:1548 #, python-format msgid "Could not set type in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1541 +#: ../semanage/seobject/__init__.py:1553 #, python-format msgid "Could not set mls fields in interface context for %s" msgstr "" -#: ../semanage/seobject.py:1545 +#: ../semanage/seobject/__init__.py:1557 #, python-format msgid "Could not set interface context for %s" msgstr "" -#: ../semanage/seobject.py:1549 +#: ../semanage/seobject/__init__.py:1561 #, python-format msgid "Could not set message context for %s" msgstr "" -#: ../semanage/seobject.py:1553 +#: ../semanage/seobject/__init__.py:1565 #, python-format msgid "Could not add interface %s" msgstr "" -#: ../semanage/seobject.py:1576 ../semanage/seobject.py:1610 +#: ../semanage/seobject/__init__.py:1588 ../semanage/seobject/__init__.py:1622 #, python-format msgid "Interface %s is not defined" msgstr "" -#: ../semanage/seobject.py:1580 +#: ../semanage/seobject/__init__.py:1592 #, python-format msgid "Could not query interface %s" msgstr "" -#: ../semanage/seobject.py:1591 +#: ../semanage/seobject/__init__.py:1603 #, python-format msgid "Could not modify interface %s" msgstr "" -#: ../semanage/seobject.py:1616 +#: ../semanage/seobject/__init__.py:1628 #, python-format msgid "Interface %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1620 +#: ../semanage/seobject/__init__.py:1632 #, python-format msgid "Could not delete interface %s" msgstr "" -#: ../semanage/seobject.py:1632 +#: ../semanage/seobject/__init__.py:1644 msgid "Could not delete all interface mappings" msgstr "" -#: ../semanage/seobject.py:1646 +#: ../semanage/seobject/__init__.py:1658 msgid "Could not list interfaces" msgstr "" -#: ../semanage/seobject.py:1671 +#: ../semanage/seobject/__init__.py:1683 msgid "SELinux Interface" msgstr "" -#: ../semanage/seobject.py:1671 ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:1683 ../semanage/seobject/__init__.py:2045 msgid "Context" msgstr "" -#: ../semanage/seobject.py:1738 +#: ../semanage/seobject/__init__.py:1750 #, python-format msgid "Target %s is not valid. Target is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1741 +#: ../semanage/seobject/__init__.py:1753 #, python-format -msgid "Substiture %s is not valid. Substitute is not allowed to end with '/'" +msgid "Substitute %s is not valid. Substitute is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1744 +#: ../semanage/seobject/__init__.py:1756 #, python-format msgid "Equivalence class for %s already exists" msgstr "" -#: ../semanage/seobject.py:1750 +#: ../semanage/seobject/__init__.py:1762 #, python-format -msgid "File spec %s conflicts with equivalency rule '%s %s'" +msgid "" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'" msgstr "" -#: ../semanage/seobject.py:1759 +#: ../semanage/seobject/__init__.py:1771 #, python-format msgid "Equivalence class for %s does not exists" msgstr "" -#: ../semanage/seobject.py:1773 +#: ../semanage/seobject/__init__.py:1785 #, python-format msgid "Could not set user in file context for %s" msgstr "" -#: ../semanage/seobject.py:1777 +#: ../semanage/seobject/__init__.py:1789 #, python-format msgid "Could not set role in file context for %s" msgstr "" -#: ../semanage/seobject.py:1782 ../semanage/seobject.py:1848 +#: ../semanage/seobject/__init__.py:1794 ../semanage/seobject/__init__.py:1860 #, python-format msgid "Could not set mls fields in file context for %s" msgstr "" -#: ../semanage/seobject.py:1788 +#: ../semanage/seobject/__init__.py:1800 msgid "Invalid file specification" msgstr "" -#: ../semanage/seobject.py:1790 +#: ../semanage/seobject/__init__.py:1802 msgid "File specification can not include spaces" msgstr "" -#: ../semanage/seobject.py:1795 +#: ../semanage/seobject/__init__.py:1807 #, python-format msgid "" -"File spec %s conflicts with equivalency rule '%s %s'; Try adding '%s' instead" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'; " +"Try adding '%(DEST1)s' instead" msgstr "" -#: ../semanage/seobject.py:1814 +#: ../semanage/seobject/__init__.py:1826 #, python-format msgid "Type %s is invalid, must be a file or device type" msgstr "" -#: ../semanage/seobject.py:1822 ../semanage/seobject.py:1827 -#: ../semanage/seobject.py:1883 ../semanage/seobject.py:1965 -#: ../semanage/seobject.py:1969 +#: ../semanage/seobject/__init__.py:1834 ../semanage/seobject/__init__.py:1839 +#: ../semanage/seobject/__init__.py:1895 ../semanage/seobject/__init__.py:1977 +#: ../semanage/seobject/__init__.py:1981 #, python-format msgid "Could not check if file context for %s is defined" msgstr "" -#: ../semanage/seobject.py:1835 +#: ../semanage/seobject/__init__.py:1847 #, python-format msgid "Could not create file context for %s" msgstr "" -#: ../semanage/seobject.py:1843 +#: ../semanage/seobject/__init__.py:1855 #, python-format msgid "Could not set type in file context for %s" msgstr "" -#: ../semanage/seobject.py:1851 ../semanage/seobject.py:1911 -#: ../semanage/seobject.py:1915 +#: ../semanage/seobject/__init__.py:1863 ../semanage/seobject/__init__.py:1923 +#: ../semanage/seobject/__init__.py:1927 #, python-format msgid "Could not set file context for %s" msgstr "" -#: ../semanage/seobject.py:1857 +#: ../semanage/seobject/__init__.py:1869 #, python-format msgid "Could not add file context for %s" msgstr "" -#: ../semanage/seobject.py:1871 +#: ../semanage/seobject/__init__.py:1883 msgid "Requires setype, serange or seuser" msgstr "" -#: ../semanage/seobject.py:1887 ../semanage/seobject.py:1973 +#: ../semanage/seobject/__init__.py:1899 ../semanage/seobject/__init__.py:1985 #, python-format msgid "File context for %s is not defined" msgstr "" -#: ../semanage/seobject.py:1893 +#: ../semanage/seobject/__init__.py:1905 #, python-format msgid "Could not query file context for %s" msgstr "" -#: ../semanage/seobject.py:1919 +#: ../semanage/seobject/__init__.py:1931 #, python-format msgid "Could not modify file context for %s" msgstr "" -#: ../semanage/seobject.py:1932 +#: ../semanage/seobject/__init__.py:1944 msgid "Could not list the file contexts" msgstr "" -#: ../semanage/seobject.py:1946 +#: ../semanage/seobject/__init__.py:1958 #, python-format msgid "Could not delete the file context %s" msgstr "" -#: ../semanage/seobject.py:1971 +#: ../semanage/seobject/__init__.py:1983 #, python-format msgid "File context for %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:1977 +#: ../semanage/seobject/__init__.py:1989 #, python-format msgid "Could not delete file context for %s" msgstr "" -#: ../semanage/seobject.py:1992 +#: ../semanage/seobject/__init__.py:2004 msgid "Could not list file contexts" msgstr "" -#: ../semanage/seobject.py:1996 +#: ../semanage/seobject/__init__.py:2008 msgid "Could not list local file contexts" msgstr "" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "SELinux fcontext" msgstr "" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "type" msgstr "" -#: ../semanage/seobject.py:2046 +#: ../semanage/seobject/__init__.py:2058 msgid "" "\n" "SELinux Distribution fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2051 +#: ../semanage/seobject/__init__.py:2063 msgid "" "\n" "SELinux Local fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2087 ../semanage/seobject.py:2138 -#: ../semanage/seobject.py:2144 +#: ../semanage/seobject/__init__.py:2099 ../semanage/seobject/__init__.py:2150 +#: ../semanage/seobject/__init__.py:2156 #, python-format msgid "Could not check if boolean %s is defined" msgstr "" -#: ../semanage/seobject.py:2089 ../semanage/seobject.py:2140 +#: ../semanage/seobject/__init__.py:2101 ../semanage/seobject/__init__.py:2152 #, python-format msgid "Boolean %s is not defined" msgstr "" -#: ../semanage/seobject.py:2093 +#: ../semanage/seobject/__init__.py:2105 #, python-format msgid "Could not query file context %s" msgstr "" -#: ../semanage/seobject.py:2098 +#: ../semanage/seobject/__init__.py:2110 #, python-format msgid "You must specify one of the following values: %s" msgstr "" -#: ../semanage/seobject.py:2103 +#: ../semanage/seobject/__init__.py:2115 #, python-format msgid "Could not set active value of boolean %s" msgstr "" -#: ../semanage/seobject.py:2106 +#: ../semanage/seobject/__init__.py:2118 #, python-format msgid "Could not modify boolean %s" msgstr "" -#: ../semanage/seobject.py:2122 +#: ../semanage/seobject/__init__.py:2134 #, python-format -msgid "Bad format %s: Record %s" +msgid "Bad format %(BOOLNAME)s: Record %(VALUE)s" msgstr "" -#: ../semanage/seobject.py:2146 +#: ../semanage/seobject/__init__.py:2158 #, python-format msgid "Boolean %s is defined in policy, cannot be deleted" msgstr "" -#: ../semanage/seobject.py:2150 +#: ../semanage/seobject/__init__.py:2162 #, python-format msgid "Could not delete boolean %s" msgstr "" -#: ../semanage/seobject.py:2162 ../semanage/seobject.py:2179 +#: ../semanage/seobject/__init__.py:2174 ../semanage/seobject/__init__.py:2191 msgid "Could not list booleans" msgstr "" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "off" msgstr "" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "on" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "SELinux boolean" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "State" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "Default" msgstr "" -#: ../semanage/seobject.py:2228 ../gui/polgen.glade:113 -#: ../gui/polgengui.py:274 ../sepolicy/sepolicy/sepolicy.glade:2147 -#: ../sepolicy/sepolicy/sepolicy.glade:2517 -#: ../sepolicy/sepolicy/sepolicy.glade:5021 +#: ../semanage/seobject/__init__.py:2240 ../gui/polgen.glade:113 +#: ../gui/polgengui.py:260 ../sepolicy/sepolicy/sepolicy.glade:2148 +#: ../sepolicy/sepolicy/sepolicy.glade:2518 +#: ../sepolicy/sepolicy/sepolicy.glade:5117 msgid "Description" msgstr "" @@ -1353,66 +1373,66 @@ msgstr "" msgid "Options Error %s " msgstr "" -#: ../gui/booleansPage.py:194 ../gui/system-config-selinux.glade:1706 +#: ../gui/booleansPage.py:186 ../gui/system-config-selinux.glade:1706 msgid "Boolean" msgstr "" -#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:162 +#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:186 msgid "all" msgstr "" -#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:164 +#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:188 #: ../gui/system-config-selinux.glade:1615 #: ../gui/system-config-selinux.glade:1820 #: ../gui/system-config-selinux.glade:2437 msgid "Customized" msgstr "" -#: ../gui/fcontextPage.py:64 ../gui/system-config-selinux.glade:1911 +#: ../gui/fcontextPage.py:63 ../gui/system-config-selinux.glade:1911 msgid "File Labeling" msgstr "" -#: ../gui/fcontextPage.py:74 +#: ../gui/fcontextPage.py:73 msgid "" "File\n" "Specification" msgstr "" -#: ../gui/fcontextPage.py:81 +#: ../gui/fcontextPage.py:80 msgid "" "Selinux\n" "File Type" msgstr "" -#: ../gui/fcontextPage.py:88 +#: ../gui/fcontextPage.py:87 msgid "" "File\n" "Type" msgstr "" -#: ../gui/loginsPage.py:48 ../gui/system-config-selinux.glade:2098 +#: ../gui/loginsPage.py:45 ../gui/system-config-selinux.glade:2098 msgid "User Mapping" msgstr "" -#: ../gui/loginsPage.py:52 +#: ../gui/loginsPage.py:49 msgid "" "Login\n" "Name" msgstr "" -#: ../gui/loginsPage.py:56 ../gui/usersPage.py:50 +#: ../gui/loginsPage.py:53 ../gui/usersPage.py:47 msgid "" "SELinux\n" "User" msgstr "" -#: ../gui/loginsPage.py:59 ../gui/usersPage.py:55 +#: ../gui/loginsPage.py:56 ../gui/usersPage.py:52 msgid "" "MLS/\n" "MCS Range" msgstr "" -#: ../gui/loginsPage.py:133 +#: ../gui/loginsPage.py:130 #, python-format msgid "Login '%s' is required" msgstr "" @@ -1425,15 +1445,15 @@ msgstr "" msgid "Module Name" msgstr "" -#: ../gui/modulesPage.py:135 +#: ../gui/modulesPage.py:131 msgid "Disable Audit" msgstr "" -#: ../gui/modulesPage.py:138 ../gui/system-config-selinux.glade:2662 +#: ../gui/modulesPage.py:134 ../gui/system-config-selinux.glade:2662 msgid "Enable Audit" msgstr "" -#: ../gui/modulesPage.py:163 +#: ../gui/modulesPage.py:161 msgid "Load Policy Module" msgstr "" @@ -1472,7 +1492,7 @@ msgstr "" msgid "Applications" msgstr "" -#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:130 +#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:132 msgid "Standard Init Daemon" msgstr "" @@ -1482,7 +1502,7 @@ msgid "" "requires a script in /etc/rc.d/init.d" msgstr "" -#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:131 +#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:133 msgid "DBUS System Daemon" msgstr "" @@ -1494,7 +1514,7 @@ msgstr "" msgid "Internet Services Daemon are daemons started by xinetd" msgstr "" -#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:133 +#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:135 msgid "Web Application/Script (CGI)" msgstr "" @@ -1503,7 +1523,7 @@ msgid "" "Web Applications/Script (CGI) CGI scripts started by the web server (apache)" msgstr "" -#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:135 +#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:137 msgid "User Application" msgstr "" @@ -1513,7 +1533,7 @@ msgid "" "started by a user" msgstr "" -#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:134 +#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:136 msgid "Sandbox" msgstr "" @@ -1588,8 +1608,8 @@ msgstr "" msgid "Enter name of application or user role:" msgstr "" -#: ../gui/polgen.glade:728 ../gui/polgengui.py:272 -#: ../sepolicy/sepolicy/sepolicy.glade:2182 +#: ../gui/polgen.glade:728 ../gui/polgengui.py:258 +#: ../sepolicy/sepolicy/sepolicy.glade:2183 msgid "Name" msgstr "" @@ -1673,7 +1693,7 @@ msgid "TCP Ports" msgstr "" #: ../gui/polgen.glade:1223 ../gui/polgen.glade:1390 ../gui/polgen.glade:1589 -#: ../gui/polgen.glade:1698 ../sepolicy/sepolicy/sepolicy.glade:4314 +#: ../gui/polgen.glade:1698 msgid "All" msgstr "" @@ -1804,118 +1824,118 @@ msgstr "" msgid "Policy Directory" msgstr "" -#: ../gui/polgengui.py:282 +#: ../gui/polgengui.py:268 msgid "Role" msgstr "" -#: ../gui/polgengui.py:289 +#: ../gui/polgengui.py:275 msgid "Existing_User" msgstr "" -#: ../gui/polgengui.py:303 ../gui/polgengui.py:311 ../gui/polgengui.py:325 +#: ../gui/polgengui.py:289 ../gui/polgengui.py:297 ../gui/polgengui.py:311 msgid "Application" msgstr "" -#: ../gui/polgengui.py:370 +#: ../gui/polgengui.py:356 #, python-format msgid "%s must be a directory" msgstr "" -#: ../gui/polgengui.py:430 ../gui/polgengui.py:711 +#: ../gui/polgengui.py:416 ../gui/polgengui.py:697 msgid "You must select a user" msgstr "" -#: ../gui/polgengui.py:560 +#: ../gui/polgengui.py:546 msgid "Select executable file to be confined." msgstr "" -#: ../gui/polgengui.py:571 +#: ../gui/polgengui.py:557 msgid "Select init script file to be confined." msgstr "" -#: ../gui/polgengui.py:581 +#: ../gui/polgengui.py:567 msgid "Select file(s) that confined application creates or writes" msgstr "" -#: ../gui/polgengui.py:588 +#: ../gui/polgengui.py:574 msgid "Select directory(s) that the confined application owns and writes into" msgstr "" -#: ../gui/polgengui.py:650 +#: ../gui/polgengui.py:636 msgid "Select directory to generate policy files in" msgstr "" -#: ../gui/polgengui.py:667 +#: ../gui/polgengui.py:653 #, python-format msgid "" "Type %s_t already defined in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:667 ../gui/polgengui.py:671 +#: ../gui/polgengui.py:653 ../gui/polgengui.py:657 msgid "Verify Name" msgstr "" -#: ../gui/polgengui.py:671 +#: ../gui/polgengui.py:657 #, python-format msgid "" "Module %s.pp already loaded in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:717 +#: ../gui/polgengui.py:703 msgid "" "You must add a name made up of letters and numbers and containing no spaces." msgstr "" -#: ../gui/polgengui.py:731 +#: ../gui/polgengui.py:717 msgid "You must enter a executable" msgstr "" -#: ../gui/polgengui.py:756 ../gui/system-config-selinux.py:180 +#: ../gui/polgengui.py:742 ../gui/system-config-selinux.py:180 msgid "Configue SELinux" msgstr "" -#: ../gui/portsPage.py:51 ../gui/system-config-selinux.glade:2528 +#: ../gui/portsPage.py:48 ../gui/system-config-selinux.glade:2528 msgid "Network Port" msgstr "" -#: ../gui/portsPage.py:85 +#: ../gui/portsPage.py:82 msgid "" "SELinux Port\n" "Type" msgstr "" -#: ../gui/portsPage.py:91 ../gui/system-config-selinux.glade:363 -#: ../sepolicy/sepolicy/sepolicy.glade:1443 -#: ../sepolicy/sepolicy/sepolicy.glade:2657 -#: ../sepolicy/sepolicy/sepolicy.glade:2755 -#: ../sepolicy/sepolicy/sepolicy.glade:4672 +#: ../gui/portsPage.py:88 ../gui/system-config-selinux.glade:363 +#: ../sepolicy/sepolicy/sepolicy.glade:1439 +#: ../sepolicy/sepolicy/sepolicy.glade:2658 +#: ../sepolicy/sepolicy/sepolicy.glade:2756 +#: ../sepolicy/sepolicy/sepolicy.glade:4633 msgid "Protocol" msgstr "" -#: ../gui/portsPage.py:96 ../gui/system-config-selinux.glade:479 +#: ../gui/portsPage.py:93 ../gui/system-config-selinux.glade:479 msgid "" "MLS/MCS\n" "Level" msgstr "" -#: ../gui/portsPage.py:101 ../sepolicy/sepolicy/sepolicy.glade:2638 -#: ../sepolicy/sepolicy/sepolicy.glade:2737 -#: ../sepolicy/sepolicy/sepolicy.glade:4658 +#: ../gui/portsPage.py:98 ../sepolicy/sepolicy/sepolicy.glade:2639 +#: ../sepolicy/sepolicy/sepolicy.glade:2738 +#: ../sepolicy/sepolicy/sepolicy.glade:4619 msgid "Port" msgstr "" -#: ../gui/portsPage.py:207 +#: ../gui/portsPage.py:205 #, python-format msgid "Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 " msgstr "" -#: ../gui/portsPage.py:252 +#: ../gui/portsPage.py:258 msgid "List View" msgstr "" -#: ../gui/portsPage.py:255 ../gui/system-config-selinux.glade:2419 +#: ../gui/portsPage.py:261 ../gui/system-config-selinux.glade:2419 msgid "Group View" msgstr "" @@ -1929,40 +1949,40 @@ msgstr "" msgid "Delete %s" msgstr "" -#: ../gui/semanagePage.py:134 +#: ../gui/semanagePage.py:158 #, python-format msgid "Add %s" msgstr "" -#: ../gui/semanagePage.py:148 +#: ../gui/semanagePage.py:172 #, python-format msgid "Modify %s" msgstr "" -#: ../gui/statusPage.py:69 ../gui/system-config-selinux.glade:2819 -#: ../sepolicy/sepolicy/sepolicy.glade:3413 -#: ../sepolicy/sepolicy/sepolicy.glade:3486 +#: ../gui/statusPage.py:65 ../gui/system-config-selinux.glade:2819 +#: ../sepolicy/sepolicy/sepolicy.glade:3414 +#: ../sepolicy/sepolicy/sepolicy.glade:3487 msgid "Permissive" msgstr "" -#: ../gui/statusPage.py:70 ../gui/system-config-selinux.glade:2837 -#: ../sepolicy/sepolicy/sepolicy.glade:3394 -#: ../sepolicy/sepolicy/sepolicy.glade:3468 +#: ../gui/statusPage.py:66 ../gui/system-config-selinux.glade:2837 +#: ../sepolicy/sepolicy/sepolicy.glade:3395 +#: ../sepolicy/sepolicy/sepolicy.glade:3469 msgid "Enforcing" msgstr "" -#: ../gui/statusPage.py:94 +#: ../gui/statusPage.py:90 msgid "Status" msgstr "" -#: ../gui/statusPage.py:133 ../sepolicy/sepolicy/gui.py:2619 +#: ../gui/statusPage.py:129 ../sepolicy/sepolicy/gui.py:2613 msgid "" "Changing the policy type will cause a relabel of the entire file system on " "the next boot. Relabeling takes a long time depending on the size of the " "file system. Do you wish to continue?" msgstr "" -#: ../gui/statusPage.py:147 +#: ../gui/statusPage.py:143 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -1972,7 +1992,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../gui/statusPage.py:152 ../sepolicy/sepolicy/gui.py:2753 +#: ../gui/statusPage.py:148 ../sepolicy/sepolicy/gui.py:2747 msgid "" "Changing to SELinux enabled will cause a relabel of the entire file system " "on the next boot. Relabeling takes a long time depending on the size of the " @@ -2024,8 +2044,8 @@ msgid "" msgstr "" #: ../gui/system-config-selinux.glade:773 -#: ../sepolicy/sepolicy/sepolicy.glade:729 -#: ../sepolicy/sepolicy/sepolicy.glade:1489 +#: ../sepolicy/sepolicy/sepolicy.glade:711 +#: ../sepolicy/sepolicy/sepolicy.glade:1485 msgid "MLS" msgstr "" @@ -2038,7 +2058,7 @@ msgid "SELinux Administration" msgstr "" #: ../gui/system-config-selinux.glade:1122 -#: ../sepolicy/sepolicy/sepolicy.glade:4162 +#: ../sepolicy/sepolicy/sepolicy.glade:4163 msgid "Add" msgstr "" @@ -2108,7 +2128,7 @@ msgstr "" #: ../gui/system-config-selinux.glade:2467 #: ../gui/system-config-selinux.glade:2692 #: ../gui/system-config-selinux.glade:2867 -#: ../sepolicy/sepolicy/sepolicy.glade:1992 +#: ../sepolicy/sepolicy/sepolicy.glade:1993 msgid "Filter" msgstr "" @@ -2227,7 +2247,7 @@ msgstr "" msgid "label59" msgstr "" -#: ../gui/usersPage.py:138 +#: ../gui/usersPage.py:140 #, python-format msgid "SELinux user '%s' is required" msgstr "" @@ -2239,13 +2259,14 @@ msgstr "" #: booleans.py:2 msgid "" -"Allow ABRT to run in abrt_handle_event_t domain to handle ABRT event scripts" +"Determine whether ABRT can run in the abrt_handle_event_t domain to handle " +"ABRT event scripts." msgstr "" #: booleans.py:3 msgid "" -"Allow abrt-handle-upload to modify public files used for public file " -"transfer services in /var/spool/abrt-upload/." +"Determine whether abrt-handle-upload can modify public files used for public " +"file transfer services in /var/spool/abrt-upload/." msgstr "" #: booleans.py:4 @@ -2279,7 +2300,7 @@ msgid "Determine whether awstats can purge httpd log files." msgstr "" #: booleans.py:11 -msgid "Allow boinc_domain execmem/execstack." +msgid "Determine whether boinc can execmem/execstack." msgstr "" #: booleans.py:12 @@ -2335,1467 +2356,1501 @@ msgid "" msgstr "" #: booleans.py:23 -msgid "Determine whether cvs can read shadow password files." +msgid "" +"Determine whether crond can execute jobs in the user domain as opposed to " +"the the generic cronjob domain." msgstr "" #: booleans.py:24 -msgid "Allow all daemons to write corefiles to /" +msgid "Determine whether cvs can read shadow password files." msgstr "" #: booleans.py:25 -msgid "Allow all daemons to use tcp wrappers." +msgid "Allow all daemons to write corefiles to /" msgstr "" #: booleans.py:26 -msgid "Allow all daemons the ability to read/write terminals" +msgid "Enable cluster mode for daemons." msgstr "" #: booleans.py:27 -msgid "Determine whether dbadm can manage generic user files." +msgid "Allow all daemons to use tcp wrappers." msgstr "" #: booleans.py:28 -msgid "Determine whether dbadm can read generic user files." +msgid "Allow all daemons the ability to read/write terminals" msgstr "" #: booleans.py:29 +msgid "Allow dbadm to exec content" +msgstr "" + +#: booleans.py:30 +msgid "Determine whether dbadm can manage generic user files." +msgstr "" + +#: booleans.py:31 +msgid "Determine whether dbadm can read generic user files." +msgstr "" + +#: booleans.py:32 msgid "" "Deny user domains applications to map a memory region as both executable and " "writable, this is dangerous and the executable should be reported in bugzilla" msgstr "" -#: booleans.py:30 +#: booleans.py:33 msgid "Deny any process from ptracing or debugging any other processes." msgstr "" -#: booleans.py:31 +#: booleans.py:34 msgid "Allow dhcpc client applications to execute iptables commands" msgstr "" -#: booleans.py:32 +#: booleans.py:35 msgid "Determine whether DHCP daemon can use LDAP backends." msgstr "" -#: booleans.py:33 +#: booleans.py:36 msgid "Allow all domains to use other domains file descriptors" msgstr "" -#: booleans.py:34 +#: booleans.py:37 msgid "Allow all domains to have the kernel load modules" msgstr "" -#: booleans.py:35 +#: booleans.py:38 msgid "" "Determine whether entropyd can use audio devices as the source for the " "entropy feeds." msgstr "" -#: booleans.py:36 +#: booleans.py:39 msgid "Determine whether exim can connect to databases." msgstr "" -#: booleans.py:37 +#: booleans.py:40 msgid "" "Determine whether exim can create, read, write, and delete generic user " "content files." msgstr "" -#: booleans.py:38 +#: booleans.py:41 msgid "Determine whether exim can read generic user content files." msgstr "" -#: booleans.py:39 +#: booleans.py:42 msgid "Enable extra rules in the cron domain to support fcron." msgstr "" -#: booleans.py:40 +#: booleans.py:43 msgid "Determine whether fenced can connect to the TCP network." msgstr "" -#: booleans.py:41 +#: booleans.py:44 msgid "Determine whether fenced can use ssh." msgstr "" -#: booleans.py:42 +#: booleans.py:45 msgid "Allow all domains to execute in fips_mode" msgstr "" -#: booleans.py:43 +#: booleans.py:46 msgid "" "Determine whether ftpd can read and write files in user home directories." msgstr "" -#: booleans.py:44 +#: booleans.py:47 msgid "" "Determine whether ftpd can modify public files used for public file transfer " "services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:45 +#: booleans.py:48 msgid "Determine whether ftpd can connect to all unreserved ports." msgstr "" -#: booleans.py:46 +#: booleans.py:49 msgid "Determine whether ftpd can connect to databases over the TCP network." msgstr "" -#: booleans.py:47 +#: booleans.py:50 msgid "" "Determine whether ftpd can login to local users and can read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:48 +#: booleans.py:51 msgid "" "Determine whether ftpd can use CIFS used for public file transfer services." msgstr "" -#: booleans.py:49 +#: booleans.py:52 msgid "Allow ftpd to use ntfs/fusefs volumes." msgstr "" -#: booleans.py:50 +#: booleans.py:53 msgid "" "Determine whether ftpd can use NFS used for public file transfer services." msgstr "" -#: booleans.py:51 +#: booleans.py:54 msgid "" "Determine whether ftpd can bind to all unreserved ports for passive mode." msgstr "" -#: booleans.py:52 +#: booleans.py:55 msgid "Determine whether Git CGI can search home directories." msgstr "" -#: booleans.py:53 +#: booleans.py:56 msgid "Determine whether Git CGI can access cifs file systems." msgstr "" -#: booleans.py:54 +#: booleans.py:57 msgid "Determine whether Git CGI can access nfs file systems." msgstr "" -#: booleans.py:55 +#: booleans.py:58 msgid "" "Determine whether Git session daemon can bind TCP sockets to all unreserved " "ports." msgstr "" -#: booleans.py:56 +#: booleans.py:59 msgid "" "Determine whether calling user domains can execute Git daemon in the " "git_session_t domain." msgstr "" -#: booleans.py:57 +#: booleans.py:60 msgid "Determine whether Git system daemon can search home directories." msgstr "" -#: booleans.py:58 +#: booleans.py:61 msgid "Determine whether Git system daemon can access cifs file systems." msgstr "" -#: booleans.py:59 +#: booleans.py:62 msgid "Determine whether Git system daemon can access nfs file systems." msgstr "" -#: booleans.py:60 +#: booleans.py:63 msgid "Determine whether Gitosis can send mail." msgstr "" -#: booleans.py:61 +#: booleans.py:64 msgid "Enable reading of urandom for all domains." msgstr "" -#: booleans.py:62 +#: booleans.py:65 msgid "" "Allow glusterfsd to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:63 +#: booleans.py:66 msgid "Allow glusterfsd to share any file/directory read only." msgstr "" -#: booleans.py:64 +#: booleans.py:67 msgid "Allow glusterfsd to share any file/directory read/write." msgstr "" -#: booleans.py:65 +#: booleans.py:68 msgid "" "Allow usage of the gpg-agent --write-env-file option. This also allows gpg-" "agent to manage user files." msgstr "" -#: booleans.py:66 +#: booleans.py:69 msgid "" "Allow gpg web domain to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:67 +#: booleans.py:70 msgid "" "Allow gssd to list tmp directories and read the kerberos credential cache." msgstr "" -#: booleans.py:68 +#: booleans.py:71 msgid "Allow guest to exec content" msgstr "" -#: booleans.py:69 +#: booleans.py:72 msgid "" "Allow Apache to modify public files used for public file transfer services. " "Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:70 +#: booleans.py:73 msgid "Allow httpd to use built in scripting (usually php)" msgstr "" -#: booleans.py:71 +#: booleans.py:74 msgid "Allow http daemon to check spam" msgstr "" -#: booleans.py:72 +#: booleans.py:75 msgid "" "Allow httpd to act as a FTP client connecting to the ftp port and ephemeral " "ports" msgstr "" -#: booleans.py:73 +#: booleans.py:76 msgid "Allow httpd to connect to the ldap port" msgstr "" -#: booleans.py:74 +#: booleans.py:77 msgid "Allow http daemon to connect to mythtv" msgstr "" -#: booleans.py:75 +#: booleans.py:78 msgid "Allow http daemon to connect to zabbix" msgstr "" -#: booleans.py:76 +#: booleans.py:79 msgid "Allow HTTPD scripts and modules to connect to the network using TCP." msgstr "" -#: booleans.py:77 +#: booleans.py:80 msgid "Allow HTTPD scripts and modules to connect to cobbler over the network." msgstr "" -#: booleans.py:78 +#: booleans.py:81 msgid "" "Allow HTTPD scripts and modules to connect to databases over the network." msgstr "" -#: booleans.py:79 +#: booleans.py:82 msgid "Allow httpd to connect to memcache server" msgstr "" -#: booleans.py:80 +#: booleans.py:83 msgid "Allow httpd to act as a relay" msgstr "" -#: booleans.py:81 +#: booleans.py:84 msgid "Allow http daemon to send mail" msgstr "" -#: booleans.py:82 +#: booleans.py:85 msgid "Allow Apache to communicate with avahi service via dbus" msgstr "" -#: booleans.py:83 +#: booleans.py:86 msgid "Allow httpd cgi support" msgstr "" -#: booleans.py:84 +#: booleans.py:87 msgid "Allow httpd to act as a FTP server by listening on the ftp port." msgstr "" -#: booleans.py:85 +#: booleans.py:88 msgid "Allow httpd to read home directories" msgstr "" -#: booleans.py:86 +#: booleans.py:89 msgid "Allow httpd scripts and modules execmem/execstack" msgstr "" -#: booleans.py:87 +#: booleans.py:90 msgid "Allow HTTPD to connect to port 80 for graceful shutdown" msgstr "" -#: booleans.py:88 +#: booleans.py:91 msgid "Allow httpd processes to manage IPA content" msgstr "" -#: booleans.py:89 +#: booleans.py:92 msgid "Allow Apache to use mod_auth_ntlm_winbind" msgstr "" -#: booleans.py:90 +#: booleans.py:93 msgid "Allow Apache to use mod_auth_pam" msgstr "" -#: booleans.py:91 +#: booleans.py:94 msgid "Allow httpd to read user content" msgstr "" -#: booleans.py:92 +#: booleans.py:95 msgid "Allow Apache to run in stickshift mode, not transition to passenger" msgstr "" -#: booleans.py:93 +#: booleans.py:96 msgid "Allow HTTPD scripts and modules to server cobbler files." msgstr "" -#: booleans.py:94 +#: booleans.py:97 msgid "Allow httpd daemon to change its resource limits" msgstr "" -#: booleans.py:95 +#: booleans.py:98 msgid "" "Allow HTTPD to run SSI executables in the same domain as system CGI scripts." msgstr "" -#: booleans.py:96 +#: booleans.py:99 msgid "" "Allow apache scripts to write to public content, directories/files must be " "labeled public_rw_content_t." msgstr "" -#: booleans.py:97 +#: booleans.py:100 msgid "Allow Apache to execute tmp content." msgstr "" -#: booleans.py:98 +#: booleans.py:101 msgid "" "Unify HTTPD to communicate with the terminal. Needed for entering the " "passphrase for certificates at the terminal." msgstr "" -#: booleans.py:99 +#: booleans.py:102 msgid "Unify HTTPD handling of all content files." msgstr "" -#: booleans.py:100 +#: booleans.py:103 msgid "Allow httpd to access cifs file systems" msgstr "" -#: booleans.py:101 +#: booleans.py:104 msgid "Allow httpd to access FUSE file systems" msgstr "" -#: booleans.py:102 +#: booleans.py:105 msgid "Allow httpd to run gpg" msgstr "" -#: booleans.py:103 +#: booleans.py:106 msgid "Allow httpd to access nfs file systems" msgstr "" -#: booleans.py:104 +#: booleans.py:107 msgid "Allow httpd to access openstack ports" msgstr "" -#: booleans.py:105 +#: booleans.py:108 msgid "Allow httpd to connect to sasl" msgstr "" -#: booleans.py:106 +#: booleans.py:109 msgid "Allow Apache to query NS records" msgstr "" -#: booleans.py:107 +#: booleans.py:110 msgid "Determine whether icecast can listen on and connect to any TCP port." msgstr "" -#: booleans.py:108 +#: booleans.py:111 msgid "" "Determine whether irc clients can listen on and connect to any unreserved " "TCP ports." msgstr "" -#: booleans.py:109 +#: booleans.py:112 msgid "" "Allow the Irssi IRC Client to connect to any port, and to bind to any " "unreserved port." msgstr "" -#: booleans.py:110 +#: booleans.py:113 +msgid "Allow s-c-kdump to run bootloader in bootloader_t." +msgstr "" + +#: booleans.py:114 msgid "Allow confined applications to run with kerberos." msgstr "" -#: booleans.py:111 +#: booleans.py:115 msgid "Allow ksmtuned to use cifs/Samba file systems" msgstr "" -#: booleans.py:112 +#: booleans.py:116 msgid "Allow ksmtuned to use nfs file systems" msgstr "" -#: booleans.py:113 +#: booleans.py:117 +msgid "Allow logadm to exec content" +msgstr "" + +#: booleans.py:118 msgid "Allow syslogd daemon to send mail" msgstr "" -#: booleans.py:114 +#: booleans.py:119 msgid "Allow syslogd the ability to read/write terminals" msgstr "" -#: booleans.py:115 +#: booleans.py:120 msgid "Allow logging in and using the system from /dev/console." msgstr "" -#: booleans.py:116 +#: booleans.py:121 +msgid "Determine whether logwatch can connect to mail over the network." +msgstr "" + +#: booleans.py:122 msgid "Allow epylog to send mail" msgstr "" -#: booleans.py:117 +#: booleans.py:123 msgid "Allow mailman to access FUSE file systems" msgstr "" -#: booleans.py:118 +#: booleans.py:124 msgid "Determine whether mcelog supports client mode." msgstr "" -#: booleans.py:119 +#: booleans.py:125 msgid "Determine whether mcelog can execute scripts." msgstr "" -#: booleans.py:120 +#: booleans.py:126 msgid "Determine whether mcelog can use all the user ttys." msgstr "" -#: booleans.py:121 +#: booleans.py:127 msgid "Determine whether mcelog supports server mode." msgstr "" -#: booleans.py:122 +#: booleans.py:128 +msgid "Determine whether minidlna can read generic user content." +msgstr "" + +#: booleans.py:129 msgid "" "Control the ability to mmap a low area of the address space, as configured " "by /proc/sys/kernel/mmap_min_addr." msgstr "" -#: booleans.py:123 +#: booleans.py:130 msgid "Allow mock to read files in home directories." msgstr "" -#: booleans.py:124 +#: booleans.py:131 msgid "Allow the mount commands to mount any directory or file." msgstr "" -#: booleans.py:125 +#: booleans.py:132 msgid "Allow mozilla plugin domain to connect to the network using TCP." msgstr "" -#: booleans.py:126 +#: booleans.py:133 msgid "Allow mozilla plugin to support GPS." msgstr "" -#: booleans.py:127 +#: booleans.py:134 msgid "Allow mozilla plugin to support spice protocols." msgstr "" -#: booleans.py:128 +#: booleans.py:135 msgid "Allow confined web browsers to read home directory content" msgstr "" -#: booleans.py:129 +#: booleans.py:136 msgid "Determine whether mpd can traverse user home directories." msgstr "" -#: booleans.py:130 +#: booleans.py:137 msgid "Determine whether mpd can use cifs file systems." msgstr "" -#: booleans.py:131 +#: booleans.py:138 msgid "Determine whether mpd can use nfs file systems." msgstr "" -#: booleans.py:132 +#: booleans.py:139 msgid "Determine whether mplayer can make its stack executable." msgstr "" -#: booleans.py:133 +#: booleans.py:140 msgid "Allow mysqld to connect to all ports" msgstr "" -#: booleans.py:134 +#: booleans.py:141 msgid "Determine whether Bind can bind tcp socket to http ports." msgstr "" -#: booleans.py:135 +#: booleans.py:142 msgid "" "Determine whether Bind can write to master zone files. Generally this is " "used for dynamic DNS or zone transfers." msgstr "" -#: booleans.py:136 +#: booleans.py:143 msgid "Allow any files/directories to be exported read/only via NFS." msgstr "" -#: booleans.py:137 +#: booleans.py:144 msgid "Allow any files/directories to be exported read/write via NFS." msgstr "" -#: booleans.py:138 +#: booleans.py:145 msgid "" "Allow nfs servers to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:139 +#: booleans.py:146 msgid "Allow system to run with NIS" msgstr "" -#: booleans.py:140 +#: booleans.py:147 msgid "Allow confined applications to use nscd shared memory." msgstr "" -#: booleans.py:141 +#: booleans.py:148 msgid "Allow openshift to lockdown app" msgstr "" -#: booleans.py:142 +#: booleans.py:149 msgid "Determine whether openvpn can connect to the TCP network." msgstr "" -#: booleans.py:143 +#: booleans.py:150 msgid "Determine whether openvpn can read generic user home content files." msgstr "" -#: booleans.py:144 +#: booleans.py:151 msgid "Allow openvpn to run unconfined scripts" msgstr "" -#: booleans.py:145 +#: booleans.py:152 msgid "Allow piranha-lvs domain to connect to the network using TCP." msgstr "" -#: booleans.py:146 +#: booleans.py:153 msgid "Allow polipo to connect to all ports > 1023" msgstr "" -#: booleans.py:147 +#: booleans.py:154 msgid "" "Determine whether Polipo session daemon can bind tcp sockets to all " "unreserved ports." msgstr "" -#: booleans.py:148 +#: booleans.py:155 msgid "" "Determine whether calling user domains can execute Polipo daemon in the " "polipo_session_t domain." msgstr "" -#: booleans.py:149 +#: booleans.py:156 msgid "Determine whether polipo can access cifs file systems." msgstr "" -#: booleans.py:150 +#: booleans.py:157 msgid "Determine whether Polipo can access nfs file systems." msgstr "" -#: booleans.py:151 +#: booleans.py:158 msgid "Enable polyinstantiated directory support." msgstr "" -#: booleans.py:152 +#: booleans.py:159 msgid "Allow postfix_local domain full write access to mail_spool directories" msgstr "" -#: booleans.py:153 +#: booleans.py:160 msgid "Allow postgresql to use ssh and rsync for point-in-time recovery" msgstr "" -#: booleans.py:154 +#: booleans.py:161 msgid "Allow transmit client label to foreign database" msgstr "" -#: booleans.py:155 +#: booleans.py:162 msgid "Allow database admins to execute DML statement" msgstr "" -#: booleans.py:156 +#: booleans.py:163 msgid "Allow unprivileged users to execute DDL statement" msgstr "" -#: booleans.py:157 +#: booleans.py:164 msgid "Allow pppd to load kernel modules for certain modems" msgstr "" -#: booleans.py:158 +#: booleans.py:165 msgid "Allow pppd to be run for a regular user" msgstr "" -#: booleans.py:159 +#: booleans.py:166 msgid "Determine whether privoxy can connect to all tcp ports." msgstr "" -#: booleans.py:160 +#: booleans.py:167 msgid "" "Permit to prosody to bind apache port. Need to be activated to use BOSH." msgstr "" -#: booleans.py:161 +#: booleans.py:168 msgid "Allow Puppet client to manage all file types." msgstr "" -#: booleans.py:162 +#: booleans.py:169 msgid "Allow Puppet master to use connect to MySQL and PostgreSQL database" msgstr "" -#: booleans.py:163 +#: booleans.py:170 msgid "Allow racoon to read shadow" msgstr "" -#: booleans.py:164 +#: booleans.py:171 msgid "" "Allow rsync to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:165 +#: booleans.py:172 msgid "Allow rsync to run as a client" msgstr "" -#: booleans.py:166 +#: booleans.py:173 msgid "Allow rsync to export any files/directories read only." msgstr "" -#: booleans.py:167 +#: booleans.py:174 msgid "Allow rsync server to manage all files/directories on the system." msgstr "" -#: booleans.py:168 +#: booleans.py:175 msgid "Allow samba to create new home directories (e.g. via PAM)" msgstr "" -#: booleans.py:169 +#: booleans.py:176 msgid "" "Allow samba to act as the domain controller, add users, groups and change " "passwords." msgstr "" -#: booleans.py:170 +#: booleans.py:177 msgid "Allow samba to share users home directories." msgstr "" -#: booleans.py:171 +#: booleans.py:178 msgid "Allow samba to share any file/directory read only." msgstr "" -#: booleans.py:172 +#: booleans.py:179 msgid "Allow samba to share any file/directory read/write." msgstr "" -#: booleans.py:173 +#: booleans.py:180 msgid "Allow samba to act as a portmapper" msgstr "" -#: booleans.py:174 +#: booleans.py:181 msgid "Allow samba to run unconfined scripts" msgstr "" -#: booleans.py:175 +#: booleans.py:182 msgid "Allow samba to export ntfs/fusefs volumes." msgstr "" -#: booleans.py:176 +#: booleans.py:183 msgid "Allow samba to export NFS volumes." msgstr "" -#: booleans.py:177 +#: booleans.py:184 msgid "Allow sanlock to read/write fuse files" msgstr "" -#: booleans.py:178 +#: booleans.py:185 msgid "Allow sanlock to manage nfs files" msgstr "" -#: booleans.py:179 +#: booleans.py:186 msgid "Allow sanlock to manage cifs files" msgstr "" -#: booleans.py:180 +#: booleans.py:187 msgid "Allow sasl to read shadow" msgstr "" -#: booleans.py:181 +#: booleans.py:188 msgid "Allow secadm to exec content" msgstr "" -#: booleans.py:182 +#: booleans.py:189 msgid "" "disallow programs, such as newrole, from transitioning to administrative " "user domains." msgstr "" -#: booleans.py:183 +#: booleans.py:190 msgid "Disable kernel module loading." msgstr "" -#: booleans.py:184 +#: booleans.py:191 msgid "" "Boolean to determine whether the system permits loading policy, setting " "enforcing mode, and changing boolean values. Set this to true and you have " "to reboot to set it back." msgstr "" -#: booleans.py:185 +#: booleans.py:192 msgid "Allow regular users direct dri device access" msgstr "" -#: booleans.py:186 +#: booleans.py:193 msgid "" "Allow unconfined executables to make their heap memory executable. Doing " "this is a really bad idea. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:187 +#: booleans.py:194 msgid "" "Allow all unconfined executables to use libraries requiring text relocation " "that are not labeled textrel_shlib_t" msgstr "" -#: booleans.py:188 +#: booleans.py:195 msgid "" "Allow unconfined executables to make their stack executable. This should " "never, ever be necessary. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:189 +#: booleans.py:196 msgid "Allow users to connect to the local mysql server" msgstr "" -#: booleans.py:190 +#: booleans.py:197 msgid "" "Allow confined users the ability to execute the ping and traceroute commands." msgstr "" -#: booleans.py:191 +#: booleans.py:198 msgid "Allow users to connect to PostgreSQL" msgstr "" -#: booleans.py:192 +#: booleans.py:199 msgid "" "Allow user to r/w files on filesystems that do not have extended attributes " "(FAT, CDROM, FLOPPY)" msgstr "" -#: booleans.py:193 +#: booleans.py:200 msgid "Allow user music sharing" msgstr "" -#: booleans.py:194 +#: booleans.py:201 msgid "" "Allow users to run TCP servers (bind to ports and accept connection from the " "same domain and outside users) disabling this forces FTP passive mode and " "may change other protocols." msgstr "" -#: booleans.py:195 +#: booleans.py:202 msgid "Allow user to use ssh chroot environment." msgstr "" -#: booleans.py:196 +#: booleans.py:203 msgid "" "Determine whether sftpd can modify public files used for public file " "transfer services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:197 +#: booleans.py:204 msgid "" "Determine whether sftpd-can read and write files in user home directories." msgstr "" -#: booleans.py:198 +#: booleans.py:205 msgid "" "Determine whether sftpd-can login to local users and read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:199 +#: booleans.py:206 msgid "" "Determine whether sftpd can read and write files in user ssh home " "directories." msgstr "" -#: booleans.py:200 +#: booleans.py:207 msgid "Allow sge to connect to the network using any TCP port" msgstr "" -#: booleans.py:201 +#: booleans.py:208 msgid "Allow sge to access nfs file systems." msgstr "" -#: booleans.py:202 +#: booleans.py:209 msgid "Determine whether smartmon can support devices on 3ware controllers." msgstr "" -#: booleans.py:203 +#: booleans.py:210 msgid "" "Allow samba to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:204 +#: booleans.py:211 msgid "Allow user spamassassin clients to use the network." msgstr "" -#: booleans.py:205 +#: booleans.py:212 msgid "Allow spamd to read/write user home directories." msgstr "" -#: booleans.py:206 +#: booleans.py:213 msgid "Determine whether squid can connect to all TCP ports." msgstr "" -#: booleans.py:207 +#: booleans.py:214 msgid "Determine whether squid can run as a transparent proxy." msgstr "" -#: booleans.py:208 +#: booleans.py:215 msgid "" "Allow ssh with chroot env to read and write files in the user home " "directories" msgstr "" -#: booleans.py:209 +#: booleans.py:216 msgid "allow host key based authentication" msgstr "" -#: booleans.py:210 +#: booleans.py:217 msgid "Allow ssh logins as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:211 +#: booleans.py:218 msgid "Allow staff to exec content" msgstr "" -#: booleans.py:212 +#: booleans.py:219 msgid "allow staff user to create and transition to svirt domains." msgstr "" -#: booleans.py:213 +#: booleans.py:220 msgid "Allow sysadm to exec content" msgstr "" -#: booleans.py:214 +#: booleans.py:221 msgid "Allow the Telepathy connection managers to connect to any network port." msgstr "" -#: booleans.py:215 +#: booleans.py:222 msgid "" "Allow the Telepathy connection managers to connect to any generic TCP port." msgstr "" -#: booleans.py:216 -msgid "Allow testpolicy to exec content" -msgstr "" - -#: booleans.py:217 +#: booleans.py:223 msgid "" "Allow tftp to modify public files used for public file transfer services." msgstr "" -#: booleans.py:218 +#: booleans.py:224 msgid "Allow tftp to read and write files in the user home directories" msgstr "" -#: booleans.py:219 +#: booleans.py:225 msgid "Determine whether tor can bind tcp sockets to all unreserved ports." msgstr "" -#: booleans.py:220 +#: booleans.py:226 msgid "Allow tor to act as a relay" msgstr "" -#: booleans.py:221 +#: booleans.py:227 msgid "" "allow unconfined users to transition to the chrome sandbox domains when " "running chrome-sandbox" msgstr "" -#: booleans.py:222 +#: booleans.py:228 msgid "Allow a user to login as an unconfined domain" msgstr "" -#: booleans.py:223 +#: booleans.py:229 msgid "" "Allow unconfined users to transition to the Mozilla plugin domain when " "running xulrunner plugin-container." msgstr "" -#: booleans.py:224 +#: booleans.py:230 msgid "Allow unprivledged user to create and transition to svirt domains." msgstr "" -#: booleans.py:225 +#: booleans.py:231 msgid "Support ecryptfs home directories" msgstr "" -#: booleans.py:226 +#: booleans.py:232 msgid "Support fusefs home directories" msgstr "" -#: booleans.py:227 +#: booleans.py:233 msgid "Determine whether to support lpd server." msgstr "" -#: booleans.py:228 +#: booleans.py:234 msgid "Support NFS home directories" msgstr "" -#: booleans.py:229 +#: booleans.py:235 msgid "Support SAMBA home directories" msgstr "" -#: booleans.py:230 +#: booleans.py:236 msgid "Allow user to exec content" msgstr "" -#: booleans.py:231 +#: booleans.py:237 msgid "Determine whether varnishd can use the full TCP network." msgstr "" -#: booleans.py:232 +#: booleans.py:238 msgid "" "Determine whether attempts by vbetool to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:233 +#: booleans.py:239 +msgid "Allow sandbox containers to send audit messages" +msgstr "" + +#: booleans.py:240 +msgid "Allow sandbox containers to use netlink system calls" +msgstr "" + +#: booleans.py:241 msgid "Allow virtual processes to run as userdomains" msgstr "" -#: booleans.py:234 +#: booleans.py:242 msgid "" "Allow confined virtual guests to use serial/parallel communication ports" msgstr "" -#: booleans.py:235 +#: booleans.py:243 msgid "" "Allow confined virtual guests to use executable memory and executable stack" msgstr "" -#: booleans.py:236 +#: booleans.py:244 msgid "Allow confined virtual guests to read fuse files" msgstr "" -#: booleans.py:237 +#: booleans.py:245 msgid "Allow confined virtual guests to manage nfs files" msgstr "" -#: booleans.py:238 +#: booleans.py:246 msgid "Allow confined virtual guests to interact with rawip sockets" msgstr "" -#: booleans.py:239 +#: booleans.py:247 msgid "Allow confined virtual guests to manage cifs files" msgstr "" -#: booleans.py:240 +#: booleans.py:248 msgid "Allow confined virtual guests to interact with the sanlock" msgstr "" -#: booleans.py:241 +#: booleans.py:249 msgid "Allow confined virtual guests to use usb devices" msgstr "" -#: booleans.py:242 +#: booleans.py:250 msgid "Allow confined virtual guests to interact with the xserver" msgstr "" -#: booleans.py:243 +#: booleans.py:251 msgid "Determine whether webadm can manage generic user files." msgstr "" -#: booleans.py:244 +#: booleans.py:252 msgid "Determine whether webadm can read generic user files." msgstr "" -#: booleans.py:245 +#: booleans.py:253 msgid "" "Determine whether attempts by wine to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:246 +#: booleans.py:254 msgid "Allow the graphical login program to execute bootloader" msgstr "" -#: booleans.py:247 +#: booleans.py:255 msgid "" "Allow the graphical login program to login directly as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:248 +#: booleans.py:256 msgid "" "Allow the graphical login program to create files in HOME dirs as xdm_home_t." msgstr "" -#: booleans.py:249 +#: booleans.py:257 msgid "Allow xen to manage nfs files" msgstr "" -#: booleans.py:250 +#: booleans.py:258 msgid "" "Allow xend to run blktapctrl/tapdisk. Not required if using dedicated " "logical volumes for disk images." msgstr "" -#: booleans.py:251 +#: booleans.py:259 msgid "Allow xend to run qemu-dm. Not required if using paravirt and no vfb." msgstr "" -#: booleans.py:252 +#: booleans.py:260 msgid "" "Allow xguest users to configure Network Manager and connect to apache ports" msgstr "" -#: booleans.py:253 +#: booleans.py:261 msgid "Allow xguest to exec content" msgstr "" -#: booleans.py:254 +#: booleans.py:262 msgid "Allow xguest users to mount removable media" msgstr "" -#: booleans.py:255 +#: booleans.py:263 msgid "Allow xguest to use blue tooth devices" msgstr "" -#: booleans.py:256 +#: booleans.py:264 msgid "Allows clients to write to the X server shared memory segments." msgstr "" -#: booleans.py:257 +#: booleans.py:265 msgid "Allows XServer to execute writable memory" msgstr "" -#: booleans.py:258 +#: booleans.py:266 msgid "Support X userspace object manager" msgstr "" -#: booleans.py:259 +#: booleans.py:267 msgid "Determine whether zabbix can connect to all TCP ports" msgstr "" -#: booleans.py:260 +#: booleans.py:268 msgid "Allow zarafa domains to setrlimit/sys_rouserce." msgstr "" -#: booleans.py:261 +#: booleans.py:269 msgid "Allow zebra daemon to write it configuration files" msgstr "" -#: booleans.py:262 +#: booleans.py:270 msgid "" "Allow ZoneMinder to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:263 +#: booleans.py:271 msgid "Allow ZoneMinder to run su/sudo." msgstr "" -#: ../sepolicy/sepolicy.py:194 +#: ../sepolicy/sepolicy.py:195 #, python-format msgid "Interface %s does not exist." msgstr "" -#: ../sepolicy/sepolicy.py:292 +#: ../sepolicy/sepolicy.py:293 msgid "You need to install policycoreutils-gui package to use the gui option" msgstr "" -#: ../sepolicy/sepolicy.py:296 +#: ../sepolicy/sepolicy.py:297 msgid "Graphical User Interface for SELinux Policy" msgstr "" -#: ../sepolicy/sepolicy.py:299 ../sepolicy/sepolicy.py:345 +#: ../sepolicy/sepolicy.py:300 ../sepolicy/sepolicy.py:346 msgid "Domain name(s) of man pages to be created" msgstr "" -#: ../sepolicy/sepolicy.py:311 +#: ../sepolicy/sepolicy.py:312 msgid "Alternative root needs to be setup" msgstr "" -#: ../sepolicy/sepolicy.py:327 +#: ../sepolicy/sepolicy.py:328 msgid "Generate SELinux man pages" msgstr "" -#: ../sepolicy/sepolicy.py:330 +#: ../sepolicy/sepolicy.py:331 msgid "path in which the generated SELinux man pages will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:332 +#: ../sepolicy/sepolicy.py:333 msgid "name of the OS for man pages" msgstr "" -#: ../sepolicy/sepolicy.py:334 +#: ../sepolicy/sepolicy.py:335 msgid "Generate HTML man pages structure for selected SELinux man page" msgstr "" -#: ../sepolicy/sepolicy.py:336 +#: ../sepolicy/sepolicy.py:337 msgid "Alternate root directory, defaults to /" msgstr "" -#: ../sepolicy/sepolicy.py:338 +#: ../sepolicy/sepolicy.py:339 msgid "" "With this flag, alternative root path needs to include file context files " "and policy.xml file" msgstr "" -#: ../sepolicy/sepolicy.py:342 +#: ../sepolicy/sepolicy.py:343 msgid "All domains" msgstr "" -#: ../sepolicy/sepolicy.py:350 +#: ../sepolicy/sepolicy.py:351 msgid "Query SELinux policy network information" msgstr "" -#: ../sepolicy/sepolicy.py:355 +#: ../sepolicy/sepolicy.py:356 msgid "list all SELinux port types" msgstr "" -#: ../sepolicy/sepolicy.py:358 +#: ../sepolicy/sepolicy.py:359 msgid "show SELinux type related to the port" msgstr "" -#: ../sepolicy/sepolicy.py:361 +#: ../sepolicy/sepolicy.py:362 msgid "Show ports defined for this SELinux type" msgstr "" -#: ../sepolicy/sepolicy.py:364 +#: ../sepolicy/sepolicy.py:365 msgid "show ports to which this domain can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:367 +#: ../sepolicy/sepolicy.py:368 msgid "show ports to which this application can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:382 +#: ../sepolicy/sepolicy.py:383 msgid "query SELinux policy to see if domains can communicate with each other" msgstr "" -#: ../sepolicy/sepolicy.py:385 +#: ../sepolicy/sepolicy.py:386 msgid "Source Domain" msgstr "" -#: ../sepolicy/sepolicy.py:388 +#: ../sepolicy/sepolicy.py:389 msgid "Target Domain" msgstr "" -#: ../sepolicy/sepolicy.py:407 +#: ../sepolicy/sepolicy.py:408 msgid "query SELinux Policy to see description of booleans" msgstr "" -#: ../sepolicy/sepolicy.py:411 +#: ../sepolicy/sepolicy.py:412 msgid "get all booleans descriptions" msgstr "" -#: ../sepolicy/sepolicy.py:414 +#: ../sepolicy/sepolicy.py:415 msgid "boolean to get description" msgstr "" -#: ../sepolicy/sepolicy.py:424 +#: ../sepolicy/sepolicy.py:425 msgid "" "query SELinux Policy to see how a source process domain can transition to " "the target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:427 +#: ../sepolicy/sepolicy.py:428 msgid "source process domain" msgstr "" -#: ../sepolicy/sepolicy.py:430 +#: ../sepolicy/sepolicy.py:431 msgid "target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:472 +#: ../sepolicy/sepolicy.py:473 #, python-format msgid "sepolicy generate: error: one of the arguments %s is required" msgstr "" -#: ../sepolicy/sepolicy.py:477 +#: ../sepolicy/sepolicy.py:478 msgid "Command required for this type of policy" msgstr "" -#: ../sepolicy/sepolicy.py:488 +#: ../sepolicy/sepolicy.py:489 #, python-format msgid "" "-t option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:493 +#: ../sepolicy/sepolicy.py:494 #, python-format msgid "" "-d option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:497 +#: ../sepolicy/sepolicy.py:498 #, python-format msgid "" "-a option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:501 +#: ../sepolicy/sepolicy.py:502 msgid "-w option can not be used with the --newtype option" msgstr "" -#: ../sepolicy/sepolicy.py:521 +#: ../sepolicy/sepolicy.py:522 msgid "List SELinux Policy interfaces" msgstr "" -#: ../sepolicy/sepolicy.py:541 +#: ../sepolicy/sepolicy.py:542 msgid "Enter interface names, you wish to query" msgstr "" -#: ../sepolicy/sepolicy.py:550 +#: ../sepolicy/sepolicy.py:551 msgid "Generate SELinux Policy module template" msgstr "" -#: ../sepolicy/sepolicy.py:553 +#: ../sepolicy/sepolicy.py:554 msgid "Enter domain type which you will be extending" msgstr "" -#: ../sepolicy/sepolicy.py:556 +#: ../sepolicy/sepolicy.py:557 msgid "Enter SELinux user(s) which will transition to this domain" msgstr "" -#: ../sepolicy/sepolicy.py:559 +#: ../sepolicy/sepolicy.py:560 msgid "Enter SELinux role(s) to which the administror domain will transition" msgstr "" -#: ../sepolicy/sepolicy.py:562 +#: ../sepolicy/sepolicy.py:563 msgid "Enter domain(s) which this confined admin will administrate" msgstr "" -#: ../sepolicy/sepolicy.py:565 +#: ../sepolicy/sepolicy.py:566 msgid "name of policy to generate" msgstr "" -#: ../sepolicy/sepolicy.py:572 +#: ../sepolicy/sepolicy.py:573 msgid "path in which the generated policy files will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:574 +#: ../sepolicy/sepolicy.py:575 msgid "path to which the confined processes will need to write" msgstr "" -#: ../sepolicy/sepolicy.py:575 +#: ../sepolicy/sepolicy.py:576 msgid "Policy types which require a command" msgstr "" -#: ../sepolicy/sepolicy.py:579 ../sepolicy/sepolicy.py:582 -#: ../sepolicy/sepolicy.py:585 ../sepolicy/sepolicy.py:588 -#: ../sepolicy/sepolicy.py:591 ../sepolicy/sepolicy.py:597 -#: ../sepolicy/sepolicy.py:600 ../sepolicy/sepolicy.py:603 -#: ../sepolicy/sepolicy.py:609 ../sepolicy/sepolicy.py:612 -#: ../sepolicy/sepolicy.py:615 ../sepolicy/sepolicy.py:618 +#: ../sepolicy/sepolicy.py:580 ../sepolicy/sepolicy.py:583 +#: ../sepolicy/sepolicy.py:586 ../sepolicy/sepolicy.py:589 +#: ../sepolicy/sepolicy.py:592 ../sepolicy/sepolicy.py:598 +#: ../sepolicy/sepolicy.py:601 ../sepolicy/sepolicy.py:604 +#: ../sepolicy/sepolicy.py:610 ../sepolicy/sepolicy.py:613 +#: ../sepolicy/sepolicy.py:616 ../sepolicy/sepolicy.py:619 #, python-format msgid "Generate '%s' policy" msgstr "" -#: ../sepolicy/sepolicy.py:606 +#: ../sepolicy/sepolicy.py:607 #, python-format msgid "Generate '%s' policy " msgstr "" -#: ../sepolicy/sepolicy.py:620 +#: ../sepolicy/sepolicy.py:621 msgid "executable to confine" msgstr "" -#: ../sepolicy/sepolicy.py:625 +#: ../sepolicy/sepolicy.py:626 msgid "commands" msgstr "" -#: ../sepolicy/sepolicy.py:628 +#: ../sepolicy/sepolicy.py:629 msgid "Alternate SELinux policy, defaults to /sys/fs/selinux/policy" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:89 +#: ../sepolicy/sepolicy/__init__.py:96 #, python-format msgid "-- Allowed %s [ %s ]" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:95 ../sepolicy/sepolicy/gui.py:1135 +#: ../sepolicy/sepolicy/__init__.py:102 ../sepolicy/sepolicy/gui.py:1152 msgid "all files" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:96 +#: ../sepolicy/sepolicy/__init__.py:103 msgid "regular file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:97 +#: ../sepolicy/sepolicy/__init__.py:104 msgid "directory" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:98 +#: ../sepolicy/sepolicy/__init__.py:105 msgid "character device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:99 +#: ../sepolicy/sepolicy/__init__.py:106 msgid "block device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:100 +#: ../sepolicy/sepolicy/__init__.py:107 msgid "socket file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:101 +#: ../sepolicy/sepolicy/__init__.py:108 msgid "symbolic link" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:102 +#: ../sepolicy/sepolicy/__init__.py:109 msgid "named pipe" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:398 +#: ../sepolicy/sepolicy/__init__.py:427 msgid "No SELinux Policy installed" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:478 +#: ../sepolicy/sepolicy/__init__.py:506 msgid "You must regenerate interface info by running /usr/bin/sepolgen-ifgen" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:724 +#: ../sepolicy/sepolicy/__init__.py:768 #, python-format msgid "Failed to read %s policy file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:829 +#: ../sepolicy/sepolicy/__init__.py:873 msgid "unknown" msgstr "" -#: ../sepolicy/sepolicy/generate.py:132 +#: ../sepolicy/sepolicy/generate.py:134 msgid "Internet Services Daemon" msgstr "" -#: ../sepolicy/sepolicy/generate.py:136 +#: ../sepolicy/sepolicy/generate.py:138 msgid "Existing Domain Type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:137 +#: ../sepolicy/sepolicy/generate.py:139 msgid "Minimal Terminal Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:138 +#: ../sepolicy/sepolicy/generate.py:140 msgid "Minimal X Windows Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:139 +#: ../sepolicy/sepolicy/generate.py:141 msgid "Desktop Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:140 +#: ../sepolicy/sepolicy/generate.py:142 msgid "Administrator Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:141 +#: ../sepolicy/sepolicy/generate.py:143 msgid "Confined Root Administrator Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:142 +#: ../sepolicy/sepolicy/generate.py:144 msgid "Module information for a new type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:147 +#: ../sepolicy/sepolicy/generate.py:149 msgid "Valid Types:\n" msgstr "" -#: ../sepolicy/sepolicy/generate.py:181 +#: ../sepolicy/sepolicy/generate.py:183 #, python-format msgid "Ports must be numbers or ranges of numbers from 1 to %d " msgstr "" -#: ../sepolicy/sepolicy/generate.py:192 +#: ../sepolicy/sepolicy/generate.py:194 msgid "You must enter a valid policy type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:195 +#: ../sepolicy/sepolicy/generate.py:197 #, python-format msgid "You must enter a name for your policy module for your '%s'." msgstr "" -#: ../sepolicy/sepolicy/generate.py:333 +#: ../sepolicy/sepolicy/generate.py:335 msgid "" "Name must be alpha numberic with no spaces. Consider using option \"-n " "MODULENAME\"" msgstr "" -#: ../sepolicy/sepolicy/generate.py:425 +#: ../sepolicy/sepolicy/generate.py:427 msgid "User Role types can not be assigned executables." msgstr "" -#: ../sepolicy/sepolicy/generate.py:431 +#: ../sepolicy/sepolicy/generate.py:433 msgid "Only Daemon apps can use an init script.." msgstr "" -#: ../sepolicy/sepolicy/generate.py:449 +#: ../sepolicy/sepolicy/generate.py:451 msgid "use_resolve must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:455 +#: ../sepolicy/sepolicy/generate.py:457 msgid "use_syslog must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:461 +#: ../sepolicy/sepolicy/generate.py:463 msgid "use_kerberos must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:467 +#: ../sepolicy/sepolicy/generate.py:469 msgid "manage_krb5_rcache must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:497 +#: ../sepolicy/sepolicy/generate.py:499 msgid "USER Types automatically get a tmp type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:838 +#: ../sepolicy/sepolicy/generate.py:840 #, python-format msgid "'%s' policy modules require existing domains" msgstr "" -#: ../sepolicy/sepolicy/generate.py:863 +#: ../sepolicy/sepolicy/generate.py:865 msgid "Type field required" msgstr "" -#: ../sepolicy/sepolicy/generate.py:876 +#: ../sepolicy/sepolicy/generate.py:878 #, python-format msgid "" "You need to define a new type which ends with: \n" " %s" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1104 +#: ../sepolicy/sepolicy/generate.py:1106 msgid "You must enter the executable path for your confined process" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1363 +#: ../sepolicy/sepolicy/generate.py:1369 msgid "Type Enforcement file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1364 +#: ../sepolicy/sepolicy/generate.py:1370 msgid "Interface file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1365 +#: ../sepolicy/sepolicy/generate.py:1371 msgid "File Contexts file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1367 +#: ../sepolicy/sepolicy/generate.py:1373 msgid "Spec file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1368 +#: ../sepolicy/sepolicy/generate.py:1374 msgid "Setup Script" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:25 -#: ../sepolicy/sepolicy/sepolicy.glade:4369 +#: ../sepolicy/sepolicy/sepolicy.glade:4330 msgid "Applications" msgstr "" @@ -3803,562 +3858,555 @@ msgstr "" msgid "Select domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2343 msgid "File Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2316 +#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2353 msgid "Users" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:129 -#: ../sepolicy/sepolicy/sepolicy.glade:1897 -#: ../sepolicy/sepolicy/sepolicy.glade:3802 ../sepolicy/sepolicy/gui.py:2297 +#: ../sepolicy/sepolicy/sepolicy.glade:1898 +#: ../sepolicy/sepolicy/sepolicy.glade:3803 ../sepolicy/sepolicy/gui.py:2334 msgid "System" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:189 -#: ../sepolicy/sepolicy/sepolicy.glade:4406 -#: ../sepolicy/sepolicy/sepolicy.glade:4499 -#: ../sepolicy/sepolicy/sepolicy.glade:4645 -#: ../sepolicy/sepolicy/sepolicy.glade:4793 -#: ../sepolicy/sepolicy/sepolicy.glade:4934 -#: ../sepolicy/sepolicy/sepolicy.glade:5007 +#: ../sepolicy/sepolicy/sepolicy.glade:4367 +#: ../sepolicy/sepolicy/sepolicy.glade:4460 +#: ../sepolicy/sepolicy/sepolicy.glade:4606 +#: ../sepolicy/sepolicy/sepolicy.glade:4755 +#: ../sepolicy/sepolicy/sepolicy.glade:4889 +#: ../sepolicy/sepolicy/sepolicy.glade:5030 +#: ../sepolicy/sepolicy/sepolicy.glade:5103 +#: ../sepolicy/sepolicy/sepolicy.glade:5238 msgid "Select" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:204 -#: ../sepolicy/sepolicy/sepolicy.glade:557 -#: ../sepolicy/sepolicy/sepolicy.glade:702 -#: ../sepolicy/sepolicy/sepolicy.glade:1243 -#: ../sepolicy/sepolicy/sepolicy.glade:1539 -#: ../sepolicy/sepolicy/sepolicy.glade:4579 -#: ../sepolicy/sepolicy/sepolicy.glade:4729 -#: ../sepolicy/sepolicy/sepolicy.glade:4859 -#: ../sepolicy/sepolicy/sepolicy.glade:5077 -#: ../sepolicy/sepolicy/sepolicy.glade:5233 -#: ../sepolicy/sepolicy/sepolicy.glade:5474 +#: ../sepolicy/sepolicy/sepolicy.glade:539 +#: ../sepolicy/sepolicy/sepolicy.glade:684 +#: ../sepolicy/sepolicy/sepolicy.glade:1239 +#: ../sepolicy/sepolicy/sepolicy.glade:1535 +#: ../sepolicy/sepolicy/sepolicy.glade:4540 +#: ../sepolicy/sepolicy/sepolicy.glade:4690 +#: ../sepolicy/sepolicy/sepolicy.glade:4821 +#: ../sepolicy/sepolicy/sepolicy.glade:4955 +#: ../sepolicy/sepolicy/sepolicy.glade:5173 +#: ../sepolicy/sepolicy/sepolicy.glade:5304 +#: ../sepolicy/sepolicy/sepolicy.glade:5464 msgid "Cancel" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:350 +#: ../sepolicy/sepolicy/sepolicy.glade:332 msgid "" "The entry that was entered is incorrect. Please try again in the " "ex:/.../... format." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:376 +#: ../sepolicy/sepolicy/sepolicy.glade:358 msgid "Retry" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:460 -#: ../sepolicy/sepolicy/sepolicy.glade:1124 -#: ../sepolicy/sepolicy/sepolicy.glade:1372 -#: ../sepolicy/sepolicy/sepolicy.glade:5102 -#: ../sepolicy/sepolicy/sepolicy.glade:5343 +#: ../sepolicy/sepolicy/sepolicy.glade:442 +#: ../sepolicy/sepolicy/sepolicy.glade:1120 +#: ../sepolicy/sepolicy/sepolicy.glade:1368 +#: ../sepolicy/sepolicy/sepolicy.glade:5332 msgid "Network Port Definitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:476 +#: ../sepolicy/sepolicy/sepolicy.glade:458 msgid "" -"Add file Equivilence Mapping. Mapping will be created when Update is " +"Add file Equivalence Mapping. Mapping will be created when Update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:501 -#: ../sepolicy/sepolicy/sepolicy.glade:4045 +#: ../sepolicy/sepolicy/sepolicy.glade:483 +#: ../sepolicy/sepolicy/sepolicy.glade:4046 msgid "Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:511 -#: ../sepolicy/sepolicy/sepolicy.glade:5154 -#: ../sepolicy/sepolicy/sepolicy.glade:5395 +#: ../sepolicy/sepolicy/sepolicy.glade:493 +#: ../sepolicy/sepolicy/sepolicy.glade:5384 msgid "" "Specify a new SELinux user name. By convention SELinux User names usually " "end in an _u." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:515 +#: ../sepolicy/sepolicy/sepolicy.glade:497 msgid "Enter the path to which you want to setup an equivalence label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:528 -#: ../sepolicy/sepolicy/sepolicy.glade:4062 -#: ../sepolicy/sepolicy/sepolicy.glade:4819 +#: ../sepolicy/sepolicy/sepolicy.glade:510 +#: ../sepolicy/sepolicy/sepolicy.glade:4063 +#: ../sepolicy/sepolicy/sepolicy.glade:4781 msgid "Equivalence Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:542 -#: ../sepolicy/sepolicy/sepolicy.glade:687 -#: ../sepolicy/sepolicy/sepolicy.glade:1228 -#: ../sepolicy/sepolicy/sepolicy.glade:1524 -#: ../sepolicy/sepolicy/sepolicy.glade:5218 -#: ../sepolicy/sepolicy/sepolicy.glade:5459 +#: ../sepolicy/sepolicy/sepolicy.glade:524 +#: ../sepolicy/sepolicy/sepolicy.glade:669 +#: ../sepolicy/sepolicy/sepolicy.glade:1224 +#: ../sepolicy/sepolicy/sepolicy.glade:1520 +#: ../sepolicy/sepolicy/sepolicy.glade:5449 msgid "Save to update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:582 +#: ../sepolicy/sepolicy/sepolicy.glade:564 msgid "" "Specify the mapping between the new path and the equivalence path. " "Everything under this new path will be labeled as if they were under the " "equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:639 +#: ../sepolicy/sepolicy/sepolicy.glade:621 msgid "Add a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:656 +#: ../sepolicy/sepolicy/sepolicy.glade:638 msgid "" " File Labeling for . File labels will be created " "when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:744 -#: ../sepolicy/sepolicy/sepolicy.glade:1471 -#: ../sepolicy/sepolicy/sepolicy.glade:3510 ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/sepolicy.glade:726 +#: ../sepolicy/sepolicy/sepolicy.glade:1467 +#: ../sepolicy/sepolicy/sepolicy.glade:3511 ../sepolicy/sepolicy/gui.py:68 msgid "Advanced >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:765 -#: ../sepolicy/sepolicy/sepolicy.glade:2305 -#: ../sepolicy/sepolicy/sepolicy.glade:2417 -#: ../sepolicy/sepolicy/sepolicy.glade:2539 -#: ../sepolicy/sepolicy/sepolicy.glade:4539 +#: ../sepolicy/sepolicy/sepolicy.glade:747 +#: ../sepolicy/sepolicy/sepolicy.glade:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:2418 +#: ../sepolicy/sepolicy/sepolicy.glade:2540 +#: ../sepolicy/sepolicy/sepolicy.glade:4500 msgid "Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:781 +#: ../sepolicy/sepolicy/sepolicy.glade:763 msgid "Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:795 +#: ../sepolicy/sepolicy/sepolicy.glade:777 msgid "" "Select the file class to which this label will be applied. Defaults to all " "classes." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:822 +#: ../sepolicy/sepolicy/sepolicy.glade:804 msgid "Make Path Recursive" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:826 +#: ../sepolicy/sepolicy/sepolicy.glade:808 msgid "" -"Select Make Path Recursive iff you want to apply this label to all children " +"Select Make Path Recursive if you want to apply this label to all children " "of the specified directory path. objects under the directory to have this " "label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:839 +#: ../sepolicy/sepolicy/sepolicy.glade:821 msgid "Browse" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:843 +#: ../sepolicy/sepolicy/sepolicy.glade:825 msgid "Browse to select the file/directory for labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:887 +#: ../sepolicy/sepolicy/sepolicy.glade:869 msgid "Path " msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:898 +#: ../sepolicy/sepolicy/sepolicy.glade:880 msgid "" "Specify the path using regular expressions that you would like to modify the " "labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:920 +#: ../sepolicy/sepolicy/sepolicy.glade:902 msgid "Select the SELinux file type to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:947 +#: ../sepolicy/sepolicy/sepolicy.glade:929 msgid "Enter the MLS Label to assign to this file path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:951 +#: ../sepolicy/sepolicy/sepolicy.glade:933 msgid "SELinux MLS Label you wish to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1088 +#: ../sepolicy/sepolicy/sepolicy.glade:1070 msgid "Analyzing Policy..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1141 +#: ../sepolicy/sepolicy/sepolicy.glade:1137 msgid "" "Add Login Mapping. Login Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1176 +#: ../sepolicy/sepolicy/sepolicy.glade:1172 msgid "" "Enter the login user name of the user to which you wish to add SELinux User " "confinement." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1205 +#: ../sepolicy/sepolicy/sepolicy.glade:1201 msgid "" "Select the SELinux User to assign to this login user. Login users by " "default get assigned by the __default__ user." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1268 +#: ../sepolicy/sepolicy/sepolicy.glade:1264 msgid "" "Enter MLS/MCS Range for this login User. Defaults to the range for the " "Selected SELinux User." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1271 -#: ../sepolicy/sepolicy/sepolicy.glade:3191 -#: ../sepolicy/sepolicy/sepolicy.glade:3312 -#: ../sepolicy/sepolicy/sepolicy.glade:5184 -#: ../sepolicy/sepolicy/sepolicy.glade:5425 +#: ../sepolicy/sepolicy/sepolicy.glade:1267 +#: ../sepolicy/sepolicy/sepolicy.glade:3192 +#: ../sepolicy/sepolicy/sepolicy.glade:3313 +#: ../sepolicy/sepolicy/sepolicy.glade:5414 msgid "MLS Range" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1283 +#: ../sepolicy/sepolicy/sepolicy.glade:1279 msgid "" "Specify the MLS Range for this user to login in with. Defaults to the " "selected SELinux Users MLS Range." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1389 +#: ../sepolicy/sepolicy/sepolicy.glade:1385 msgid "" " Network Port for . Ports will be created when " "update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1427 +#: ../sepolicy/sepolicy/sepolicy.glade:1423 msgid "Enter the port number or range to which you want to add a port type." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1457 +#: ../sepolicy/sepolicy/sepolicy.glade:1453 msgid "Port Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1502 +#: ../sepolicy/sepolicy/sepolicy.glade:1498 msgid "Select the port type you want to assign to the specified port number." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1566 +#: ../sepolicy/sepolicy/sepolicy.glade:1562 msgid "tcp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1570 +#: ../sepolicy/sepolicy/sepolicy.glade:1566 msgid "" "Select tcp if the port type should be assigned to tcp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1583 +#: ../sepolicy/sepolicy/sepolicy.glade:1579 msgid "udp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1587 +#: ../sepolicy/sepolicy/sepolicy.glade:1583 msgid "" "Select udp if the port type should be assigned to udp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1609 +#: ../sepolicy/sepolicy/sepolicy.glade:1605 msgid "Enter the MLS Label to assign to this port." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1706 +#: ../sepolicy/sepolicy/sepolicy.glade:1707 msgid "SELinux Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1742 +#: ../sepolicy/sepolicy/sepolicy.glade:1743 msgid "Select..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1791 -#: ../sepolicy/sepolicy/sepolicy.glade:2211 +#: ../sepolicy/sepolicy/sepolicy.glade:1792 +#: ../sepolicy/sepolicy/sepolicy.glade:2212 msgid "Booleans" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1795 +#: ../sepolicy/sepolicy/sepolicy.glade:1796 msgid "" "Display boolean information that can be used to modify the policy for the " "'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1809 -#: ../sepolicy/sepolicy/sepolicy.glade:2596 +#: ../sepolicy/sepolicy/sepolicy.glade:1810 +#: ../sepolicy/sepolicy/sepolicy.glade:2597 msgid "Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1813 +#: ../sepolicy/sepolicy/sepolicy.glade:1814 msgid "" "Display file type information that can be used by the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1827 -#: ../sepolicy/sepolicy/sepolicy.glade:2829 +#: ../sepolicy/sepolicy/sepolicy.glade:1828 +#: ../sepolicy/sepolicy/sepolicy.glade:2830 msgid "Network" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1831 +#: ../sepolicy/sepolicy/sepolicy.glade:1832 msgid "" "Display network ports to which the 'selected domain' can connect or listen " "to." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1845 -#: ../sepolicy/sepolicy/sepolicy.glade:3120 +#: ../sepolicy/sepolicy/sepolicy.glade:1846 +#: ../sepolicy/sepolicy/sepolicy.glade:3121 msgid "Transitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1849 +#: ../sepolicy/sepolicy/sepolicy.glade:1850 msgid "" "Display applications that can transition into or out of the 'selected " "domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1863 -#: ../sepolicy/sepolicy/sepolicy.glade:3221 +#: ../sepolicy/sepolicy/sepolicy.glade:1864 +#: ../sepolicy/sepolicy/sepolicy.glade:3222 msgid "Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1866 -#: ../sepolicy/sepolicy/sepolicy.glade:1883 -#: ../sepolicy/sepolicy/sepolicy.glade:1900 +#: ../sepolicy/sepolicy/sepolicy.glade:1867 +#: ../sepolicy/sepolicy/sepolicy.glade:1884 +#: ../sepolicy/sepolicy/sepolicy.glade:1901 msgid "Manage the SELinux configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1880 -#: ../sepolicy/sepolicy/sepolicy.glade:3343 +#: ../sepolicy/sepolicy/sepolicy.glade:1881 +#: ../sepolicy/sepolicy/sepolicy.glade:3344 msgid "SELinux Users" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1914 -#: ../sepolicy/sepolicy/sepolicy.glade:4015 +#: ../sepolicy/sepolicy/sepolicy.glade:1915 +#: ../sepolicy/sepolicy/sepolicy.glade:4016 msgid "Lockdown" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1917 +#: ../sepolicy/sepolicy/sepolicy.glade:1918 msgid "" "Lockdown the SELinux System.\n" "This screen can be used to turn up the SELinux Protections." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1932 +#: ../sepolicy/sepolicy/sepolicy.glade:1933 msgid "radiobutton" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2020 +#: ../sepolicy/sepolicy/sepolicy.glade:2021 msgid "Show Modified Only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2059 +#: ../sepolicy/sepolicy/sepolicy.glade:2060 msgid "Mislabeled files exist" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2079 +#: ../sepolicy/sepolicy/sepolicy.glade:2080 msgid "Show mislabeled files only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2119 -#: ../sepolicy/sepolicy/sepolicy.glade:3243 +#: ../sepolicy/sepolicy/sepolicy.glade:2120 +#: ../sepolicy/sepolicy/sepolicy.glade:3244 msgid "" -"If-Then-Else rules written in policy that can \n" +"If-Then-Else rules written in policy that can\n" "allow alternative access control." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2131 +#: ../sepolicy/sepolicy/sepolicy.glade:2132 msgid "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2251 -#: ../sepolicy/sepolicy/sepolicy.glade:2363 -#: ../sepolicy/sepolicy/sepolicy.glade:2481 -#: ../sepolicy/sepolicy/sepolicy.glade:4512 -#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:2252 +#: ../sepolicy/sepolicy/sepolicy.glade:2364 +#: ../sepolicy/sepolicy/sepolicy.glade:2482 +#: ../sepolicy/sepolicy/sepolicy.glade:4473 +#: ../sepolicy/sepolicy/sepolicy.glade:4768 msgid "File Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2287 -#: ../sepolicy/sepolicy/sepolicy.glade:2398 +#: ../sepolicy/sepolicy/sepolicy.glade:2288 +#: ../sepolicy/sepolicy/sepolicy.glade:2399 msgid "SELinux File Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2331 +#: ../sepolicy/sepolicy/sepolicy.glade:2332 msgid "File path used to enter the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2332 +#: ../sepolicy/sepolicy/sepolicy.glade:2333 msgid "Executable Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2447 +#: ../sepolicy/sepolicy/sepolicy.glade:2448 msgid "Files to which the 'selected domain' can write." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2448 +#: ../sepolicy/sepolicy/sepolicy.glade:2449 msgid "Writable files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2570 +#: ../sepolicy/sepolicy/sepolicy.glade:2571 msgid "File Types defined for the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2571 +#: ../sepolicy/sepolicy/sepolicy.glade:2572 msgid "Application File Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2703 +#: ../sepolicy/sepolicy/sepolicy.glade:2704 msgid "Network Ports to which the 'selected domain' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2704 +#: ../sepolicy/sepolicy/sepolicy.glade:2705 msgid "Outbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2803 +#: ../sepolicy/sepolicy/sepolicy.glade:2804 msgid "Network Ports to which the 'selected domain' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2804 +#: ../sepolicy/sepolicy/sepolicy.glade:2805 msgid "Inbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2865 +#: ../sepolicy/sepolicy/sepolicy.glade:2866 +#: ../sepolicy/sepolicy/sepolicy.glade:2956 msgid "" -"Boolean \n" +"Boolean\n" "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2891 +#: ../sepolicy/sepolicy/sepolicy.glade:2892 msgid "Boolean name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2908 +#: ../sepolicy/sepolicy/sepolicy.glade:2909 msgid "SELinux Application Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2929 +#: ../sepolicy/sepolicy/sepolicy.glade:2930 msgid "" "Executables which will transition to a different domain, when the 'selected " "domain' executes them." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2932 -msgid "Applicaton Transitions From 'select domain'" +#: ../sepolicy/sepolicy/sepolicy.glade:2933 +msgid "Application Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2955 -msgid "" -"Boolean\n" -"Enabled" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:2971 +#: ../sepolicy/sepolicy/sepolicy.glade:2972 msgid "Calling Process Domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2987 +#: ../sepolicy/sepolicy/sepolicy.glade:2988 msgid "Executable File" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3011 +#: ../sepolicy/sepolicy/sepolicy.glade:3012 msgid "" "Executables which will transition to the 'selected domain', when executing a " "selected domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3012 +#: ../sepolicy/sepolicy/sepolicy.glade:3013 msgid "Application Transitions Into 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3027 +#: ../sepolicy/sepolicy/sepolicy.glade:3028 msgid "" "File Transitions define what happens when the current domain creates the " "content of a particular class in a directory of the destination type. " "Optionally a file name could be specified for the transition." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3035 +#: ../sepolicy/sepolicy/sepolicy.glade:3036 msgid "SELinux Directory Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3048 +#: ../sepolicy/sepolicy/sepolicy.glade:3049 msgid "Destination Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3062 +#: ../sepolicy/sepolicy/sepolicy.glade:3063 msgid "SELinux Destination Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3075 +#: ../sepolicy/sepolicy/sepolicy.glade:3076 msgid "File Name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3097 +#: ../sepolicy/sepolicy/sepolicy.glade:3098 msgid "File Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3296 -#: ../sepolicy/sepolicy/sepolicy.glade:5277 -#: ../sepolicy/sepolicy/sepolicy.glade:5518 +#: ../sepolicy/sepolicy/sepolicy.glade:3297 +#: ../sepolicy/sepolicy/sepolicy.glade:5508 msgid "Default Level" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3382 +#: ../sepolicy/sepolicy/sepolicy.glade:3383 msgid "Select the system mode when the system first boots up" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3455 +#: ../sepolicy/sepolicy/sepolicy.glade:3456 msgid "Select the system mode for the current session" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3532 +#: ../sepolicy/sepolicy/sepolicy.glade:3533 msgid "System Policy Type:" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3593 +#: ../sepolicy/sepolicy/sepolicy.glade:3594 msgid "System Mode" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3631 +#: ../sepolicy/sepolicy/sepolicy.glade:3632 msgid "Import system settings from another machine" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3639 +#: ../sepolicy/sepolicy/sepolicy.glade:3640 msgid "Import" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3658 +#: ../sepolicy/sepolicy/sepolicy.glade:3659 msgid "Export system settings to a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3668 +#: ../sepolicy/sepolicy/sepolicy.glade:3669 msgid "Export" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3687 +#: ../sepolicy/sepolicy/sepolicy.glade:3688 msgid "Relabel all files back to system defaults on reboot" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3724 -#: ../sepolicy/sepolicy/sepolicy.glade:3825 -#: ../sepolicy/sepolicy/sepolicy.glade:3889 -#: ../sepolicy/sepolicy/sepolicy.glade:3952 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3725 +#: ../sepolicy/sepolicy/sepolicy.glade:3826 +#: ../sepolicy/sepolicy/sepolicy.glade:3890 +#: ../sepolicy/sepolicy/sepolicy.glade:3953 ../sepolicy/sepolicy/gui.py:64 msgid "Yes" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3741 -#: ../sepolicy/sepolicy/sepolicy.glade:3843 -#: ../sepolicy/sepolicy/sepolicy.glade:3906 -#: ../sepolicy/sepolicy/sepolicy.glade:3969 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3742 +#: ../sepolicy/sepolicy/sepolicy.glade:3844 +#: ../sepolicy/sepolicy/sepolicy.glade:3907 +#: ../sepolicy/sepolicy/sepolicy.glade:3970 ../sepolicy/sepolicy/gui.py:64 msgid "No" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3782 +#: ../sepolicy/sepolicy/sepolicy.glade:3783 msgid "System Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3829 -#: ../sepolicy/sepolicy/sepolicy.glade:3847 +#: ../sepolicy/sepolicy/sepolicy.glade:3830 +#: ../sepolicy/sepolicy/sepolicy.glade:3848 msgid "" "An unconfined domain is a process label that allows the process to do what " "it wants, without SELinux interfering. Applications started at boot by the " @@ -4368,13 +4416,13 @@ msgid "" "unconfined_t from the users/login screens." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3865 +#: ../sepolicy/sepolicy/sepolicy.glade:3866 msgid "Disable ability to run unconfined system processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3893 -#: ../sepolicy/sepolicy/sepolicy.glade:3910 -#: ../sepolicy/sepolicy/sepolicy.glade:3973 +#: ../sepolicy/sepolicy/sepolicy.glade:3894 +#: ../sepolicy/sepolicy/sepolicy.glade:3911 +#: ../sepolicy/sepolicy/sepolicy.glade:3974 msgid "" "An permissive domain is a process label that allows the process to do what " "it wants, with SELinux only logging the denials, but not enforcing them. " @@ -4383,11 +4431,11 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3928 +#: ../sepolicy/sepolicy/sepolicy.glade:3929 msgid "Disable all permissive processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3956 +#: ../sepolicy/sepolicy/sepolicy.glade:3957 msgid "" "A permissive domain is a process label that allows the process to do what it " "wants, with SELinux only logging the denials, but not enforcing them. " @@ -4396,171 +4444,189 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3994 +#: ../sepolicy/sepolicy/sepolicy.glade:3995 msgid "Deny all processes from ptracing or debugging other processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4031 +#: ../sepolicy/sepolicy/sepolicy.glade:4032 msgid "" "File equivalence cause the system to label content under the new path as if " "it were under the equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4087 +#: ../sepolicy/sepolicy/sepolicy.glade:4088 msgid "Files Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4100 +#: ../sepolicy/sepolicy/sepolicy.glade:4101 msgid "...SELECT TO VIEW DATA..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4131 +#: ../sepolicy/sepolicy/sepolicy.glade:4132 msgid "Delete" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4147 +#: ../sepolicy/sepolicy/sepolicy.glade:4148 msgid "Modify" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4208 +#: ../sepolicy/sepolicy/sepolicy.glade:4209 msgid "Revert" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4213 +#: ../sepolicy/sepolicy/sepolicy.glade:4214 msgid "" "Revert button will launch a dialog window which allows you to revert changes " "within the current transaction." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4225 ../sepolicy/sepolicy/gui.py:2379 +#: ../sepolicy/sepolicy/sepolicy.glade:4226 ../sepolicy/sepolicy/gui.py:2416 msgid "Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4230 +#: ../sepolicy/sepolicy/sepolicy.glade:4231 msgid "Commit all changes in your current transaction to the server." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4278 +#: ../sepolicy/sepolicy/sepolicy.glade:4279 msgid "Applications - Advanced Search" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4331 -msgid "Installed" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:4383 +#: ../sepolicy/sepolicy/sepolicy.glade:4344 msgid "Process Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4424 +#: ../sepolicy/sepolicy/sepolicy.glade:4385 msgid "More Details" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4460 -#: ../sepolicy/sepolicy/sepolicy.glade:4754 +#: ../sepolicy/sepolicy/sepolicy.glade:4421 +#: ../sepolicy/sepolicy/sepolicy.glade:4715 msgid "Delete Modified File Labeling" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4478 +#: ../sepolicy/sepolicy/sepolicy.glade:4439 msgid "" "Select file labeling to delete. File labeling will be deleted when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4486 msgid "SELinux File Label" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4564 -#: ../sepolicy/sepolicy/sepolicy.glade:4714 -#: ../sepolicy/sepolicy/sepolicy.glade:4844 +#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4675 +#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:4940 +#: ../sepolicy/sepolicy/sepolicy.glade:5289 msgid "Save to Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4604 +#: ../sepolicy/sepolicy/sepolicy.glade:4565 msgid "Delete Modified Ports" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4622 +#: ../sepolicy/sepolicy/sepolicy.glade:4583 msgid "Select ports to delete. Ports will be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4771 +#: ../sepolicy/sepolicy/sepolicy.glade:4733 msgid "" -"Select file equivalence labeling to delete.File equivalence labeling will be " -"deleted when update is applied." +"Select file equivalence labeling to delete. File equivalence labeling will " +"be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4887 +#: ../sepolicy/sepolicy/sepolicy.glade:4849 +#: ../sepolicy/sepolicy/sepolicy.glade:5198 +msgid "Delete Modified Users Mapping." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4867 +msgid "" +"Select login user mapping to delete. Login user mapping will be deleted when " +"update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4902 +msgid "Login name" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4983 msgid "More Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4914 +#: ../sepolicy/sepolicy/sepolicy.glade:5010 msgid "Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4973 +#: ../sepolicy/sepolicy/sepolicy.glade:5069 msgid "" "Review the updates you have made before committing them to the system. To " "reset an item, uncheck the checkbox. All items checked will be updated in " "the system when you select update." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5036 +#: ../sepolicy/sepolicy/sepolicy.glade:5132 msgid "Action" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5062 +#: ../sepolicy/sepolicy/sepolicy.glade:5158 msgid "Apply" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5119 -#: ../sepolicy/sepolicy/sepolicy.glade:5360 +#: ../sepolicy/sepolicy/sepolicy.glade:5216 +msgid "" +"Select users mapping to delete.Users mapping will be deleted when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5264 +msgid "SELinux Username" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5349 msgid "" "Add User Roles. SELinux User Roles will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5144 -#: ../sepolicy/sepolicy/sepolicy.glade:5385 +#: ../sepolicy/sepolicy/sepolicy.glade:5374 msgid "SELinux User Name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5258 -#: ../sepolicy/sepolicy/sepolicy.glade:5499 +#: ../sepolicy/sepolicy/sepolicy.glade:5489 msgid "" "Enter MLS/MCS Range for this SELinux User.\n" "s0-s0:c1023" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5289 -#: ../sepolicy/sepolicy/sepolicy.glade:5530 +#: ../sepolicy/sepolicy/sepolicy.glade:5520 msgid "" "Specify the default level that you would like this SELinux user to login " "with. Defaults to s0." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5293 -#: ../sepolicy/sepolicy/sepolicy.glade:5534 +#: ../sepolicy/sepolicy/sepolicy.glade:5524 msgid "Enter Default Level for SELinux User to login with. Default s0" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Disable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Enable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/gui.py:68 msgid "Advanced <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:92 +#: ../sepolicy/sepolicy/gui.py:94 msgid "" "\n" "To change from Disabled to Enforcing mode\n" @@ -4570,512 +4636,536 @@ msgid "" " * Change the system mode to Enforcing\n" msgstr "" -#: ../sepolicy/sepolicy/gui.py:115 +#: ../sepolicy/sepolicy/gui.py:488 #, python-format msgid "%s is not a valid domain" msgstr "" -#: ../sepolicy/sepolicy/gui.py:624 +#: ../sepolicy/sepolicy/gui.py:636 msgid "System Status: Disabled" msgstr "" -#: ../sepolicy/sepolicy/gui.py:722 +#: ../sepolicy/sepolicy/gui.py:734 msgid "Help: Start Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:726 +#: ../sepolicy/sepolicy/gui.py:738 msgid "Help: Booleans Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:732 +#: ../sepolicy/sepolicy/gui.py:744 msgid "Help: Executable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:735 +#: ../sepolicy/sepolicy/gui.py:747 msgid "Help: Writable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:738 +#: ../sepolicy/sepolicy/gui.py:750 msgid "Help: Application Types Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:743 +#: ../sepolicy/sepolicy/gui.py:755 msgid "Help: Outbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:746 +#: ../sepolicy/sepolicy/gui.py:758 msgid "Help: Inbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:752 +#: ../sepolicy/sepolicy/gui.py:764 msgid "Help: Transition from application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:755 +#: ../sepolicy/sepolicy/gui.py:767 msgid "Help: Transition into application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:758 +#: ../sepolicy/sepolicy/gui.py:770 msgid "Help: Transition application file Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:762 +#: ../sepolicy/sepolicy/gui.py:774 msgid "Help: Systems Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:766 +#: ../sepolicy/sepolicy/gui.py:778 msgid "Help: Lockdown Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:770 +#: ../sepolicy/sepolicy/gui.py:782 msgid "Help: Login Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:774 +#: ../sepolicy/sepolicy/gui.py:786 msgid "Help: SELinux User Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:778 +#: ../sepolicy/sepolicy/gui.py:790 msgid "Help: File Equivalence Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:922 ../sepolicy/sepolicy/gui.py:1211 -#: ../sepolicy/sepolicy/gui.py:1644 ../sepolicy/sepolicy/gui.py:1885 -#: ../sepolicy/sepolicy/gui.py:2698 +#: ../sepolicy/sepolicy/gui.py:936 ../sepolicy/sepolicy/gui.py:1227 +#: ../sepolicy/sepolicy/gui.py:1667 ../sepolicy/sepolicy/gui.py:1913 +#: ../sepolicy/sepolicy/gui.py:2692 msgid "More..." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1031 +#: ../sepolicy/sepolicy/gui.py:1044 #, python-format msgid "File path used to enter the '%s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1032 +#: ../sepolicy/sepolicy/gui.py:1045 #, python-format msgid "Files to which the '%s' domain can write." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1033 +#: ../sepolicy/sepolicy/gui.py:1046 #, python-format msgid "Network Ports to which the '%s' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1034 +#: ../sepolicy/sepolicy/gui.py:1047 #, python-format msgid "Network Ports to which the '%s' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1035 +#: ../sepolicy/sepolicy/gui.py:1048 #, python-format msgid "File Types defined for the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1036 +#: ../sepolicy/sepolicy/gui.py:1049 #, python-format msgid "" "Display boolean information that can be used to modify the policy for the " "'%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1037 +#: ../sepolicy/sepolicy/gui.py:1050 #, python-format msgid "Display file type information that can be used by the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1038 +#: ../sepolicy/sepolicy/gui.py:1051 #, python-format msgid "Display network ports to which the '%s' can connect or listen to." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1039 +#: ../sepolicy/sepolicy/gui.py:1052 #, python-format msgid "Application Transitions Into '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1040 +#: ../sepolicy/sepolicy/gui.py:1053 #, python-format msgid "Application Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1041 +#: ../sepolicy/sepolicy/gui.py:1054 #, python-format msgid "File Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1042 +#: ../sepolicy/sepolicy/gui.py:1055 #, python-format msgid "" "Executables which will transition to the '%s', when executing a selected " "domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1043 +#: ../sepolicy/sepolicy/gui.py:1056 #, python-format msgid "" "Executables which will transition to a different domain, when the '%s' " "executes them." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1044 +#: ../sepolicy/sepolicy/gui.py:1057 #, python-format msgid "Files by '%s' will transitions to a different label." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1045 +#: ../sepolicy/sepolicy/gui.py:1058 #, python-format msgid "Display applications that can transition into or out of the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1149 +#: ../sepolicy/sepolicy/gui.py:1166 msgid "MISSING FILE PATH" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1281 ../sepolicy/sepolicy/gui.py:1283 msgid "Boolean section." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 +#: ../sepolicy/sepolicy/gui.py:1281 msgid "To disable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1283 msgid "To enable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1324 +#: ../sepolicy/sepolicy/gui.py:1340 msgid "executable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1327 +#: ../sepolicy/sepolicy/gui.py:1343 msgid "writable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1330 +#: ../sepolicy/sepolicy/gui.py:1346 msgid "application" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1331 +#: ../sepolicy/sepolicy/gui.py:1347 #, python-format -msgid "Add new %s file path for '%s' domains." +msgid "Add new %(TYPE)s file path for '%(DOMAIN)s' domains." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1332 +#: ../sepolicy/sepolicy/gui.py:1348 #, python-format -msgid "Delete modified %s file paths for '%s' domain." +msgid "Delete %(TYPE)s file paths for '%(DOMAIN)s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1333 +#: ../sepolicy/sepolicy/gui.py:1349 #, python-format msgid "" -"Modify selected modified %s file path for '%s' domain. Only bolded items in " -"the list can be selected, this indicates they were modified previously." +"Modify %(TYPE)s file path for '%(DOMAIN)s' domain. Only bolded items in the " +"list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1345 +#: ../sepolicy/sepolicy/gui.py:1361 msgid "connect" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1348 +#: ../sepolicy/sepolicy/gui.py:1364 msgid "listen for inbound connections" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1350 +#: ../sepolicy/sepolicy/gui.py:1366 #, python-format -msgid "Add new port definition to which the '%s' domains is allowed to %s." +msgid "" +"Add new port definition to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1351 +#: ../sepolicy/sepolicy/gui.py:1367 #, python-format msgid "" -"Delete modified port definitions to which the '%s' domain is allowed to %s." +"Delete modified port definitions to which the '%(APP)s' domain is allowed to " +"%(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1352 +#: ../sepolicy/sepolicy/gui.py:1368 #, python-format -msgid "Modify port definitions to which the '%s' domain is allowed to %s." +msgid "" +"Modify port definitions to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1381 +#: ../sepolicy/sepolicy/gui.py:1397 msgid "Add new SELinux User/Role definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1382 +#: ../sepolicy/sepolicy/gui.py:1398 msgid "Delete modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1383 +#: ../sepolicy/sepolicy/gui.py:1399 msgid "Modify selected modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1390 +#: ../sepolicy/sepolicy/gui.py:1406 msgid "Add new Login Mapping definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1391 +#: ../sepolicy/sepolicy/gui.py:1407 msgid "Delete modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1392 +#: ../sepolicy/sepolicy/gui.py:1408 msgid "Modify selected modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1399 +#: ../sepolicy/sepolicy/gui.py:1415 msgid "Add new File Equivalence definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1400 +#: ../sepolicy/sepolicy/gui.py:1416 msgid "Delete modified File Equivalence definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1401 +#: ../sepolicy/sepolicy/gui.py:1417 msgid "" "Modify selected modified File Equivalence definitions. Only bolded items in " "the list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1429 +#: ../sepolicy/sepolicy/gui.py:1445 #, python-format msgid "Boolean %s Allow Rules" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1442 +#: ../sepolicy/sepolicy/gui.py:1458 #, python-format msgid "Add Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1443 +#: ../sepolicy/sepolicy/gui.py:1459 #, python-format msgid "Add Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1448 +#: ../sepolicy/sepolicy/gui.py:1464 #, python-format msgid "" "Add File Labeling for %s. File labels will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1449 ../sepolicy/sepolicy/gui.py:1500 +#: ../sepolicy/sepolicy/gui.py:1465 ../sepolicy/sepolicy/gui.py:1518 #, python-format msgid "Add File Labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1459 +#: ../sepolicy/sepolicy/gui.py:1475 msgid "Add Login Mapping. User Mapping will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1460 +#: ../sepolicy/sepolicy/gui.py:1476 msgid "Add Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1465 +#: ../sepolicy/sepolicy/gui.py:1481 msgid "" "Add SELinux User Role. SELinux user roles will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1466 +#: ../sepolicy/sepolicy/gui.py:1482 msgid "Add SELinux Users" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1473 +#: ../sepolicy/sepolicy/gui.py:1489 msgid "" "Add File Equivalency Mapping. Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1474 +#: ../sepolicy/sepolicy/gui.py:1490 msgid "Add SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1499 +#: ../sepolicy/sepolicy/gui.py:1517 #, python-format msgid "" "Modify File Labeling for %s. File labels will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1566 +#: ../sepolicy/sepolicy/gui.py:1573 +msgid "" +"Modify SELinux User Role. SELinux user roles will be modified when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1574 +msgid "Modify SELinux Users" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1582 +msgid "" +"Modify Login Mapping. Login Mapping will be modified when Update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1583 +msgid "Modify Login Mapping" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1589 msgid "" "Modify File Equivalency Mapping. Mapping will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1567 +#: ../sepolicy/sepolicy/gui.py:1590 msgid "Modify SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1652 +#: ../sepolicy/sepolicy/gui.py:1675 #, python-format msgid "" "Modify Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1653 +#: ../sepolicy/sepolicy/gui.py:1676 #, python-format msgid "Modify Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1866 +#: ../sepolicy/sepolicy/gui.py:1894 #, python-format msgid "The entry '%s' is not a valid path. Paths must begin with a '/'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1879 +#: ../sepolicy/sepolicy/gui.py:1907 msgid "Port number must be between 1 and 65536" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2146 +#: ../sepolicy/sepolicy/gui.py:2183 #, python-format msgid "SELinux name: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2157 +#: ../sepolicy/sepolicy/gui.py:2194 #, python-format msgid "Add file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2159 +#: ../sepolicy/sepolicy/gui.py:2196 #, python-format msgid "Delete file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2161 +#: ../sepolicy/sepolicy/gui.py:2198 #, python-format msgid "Modify file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2165 +#: ../sepolicy/sepolicy/gui.py:2202 #, python-format msgid "File path: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2168 +#: ../sepolicy/sepolicy/gui.py:2205 #, python-format msgid "File class: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2171 ../sepolicy/sepolicy/gui.py:2195 +#: ../sepolicy/sepolicy/gui.py:2208 ../sepolicy/sepolicy/gui.py:2232 #, python-format msgid "SELinux file type: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2180 +#: ../sepolicy/sepolicy/gui.py:2217 #, python-format msgid "Add ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2182 +#: ../sepolicy/sepolicy/gui.py:2219 #, python-format msgid "Delete ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2184 +#: ../sepolicy/sepolicy/gui.py:2221 #, python-format msgid "Modify ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2187 +#: ../sepolicy/sepolicy/gui.py:2224 #, python-format msgid "Network ports: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2190 +#: ../sepolicy/sepolicy/gui.py:2227 #, python-format msgid "Network protocol: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2204 +#: ../sepolicy/sepolicy/gui.py:2241 msgid "Add user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2206 +#: ../sepolicy/sepolicy/gui.py:2243 msgid "Delete user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2208 +#: ../sepolicy/sepolicy/gui.py:2245 msgid "Modify user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2211 +#: ../sepolicy/sepolicy/gui.py:2248 #, python-format msgid "SELinux User : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2216 +#: ../sepolicy/sepolicy/gui.py:2253 #, python-format msgid "Roles: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2220 ../sepolicy/sepolicy/gui.py:2245 +#: ../sepolicy/sepolicy/gui.py:2257 ../sepolicy/sepolicy/gui.py:2282 #, python-format msgid "MLS/MCS Range: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2229 +#: ../sepolicy/sepolicy/gui.py:2266 msgid "Add login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2231 +#: ../sepolicy/sepolicy/gui.py:2268 msgid "Delete login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2233 +#: ../sepolicy/sepolicy/gui.py:2270 msgid "Modify login mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2237 +#: ../sepolicy/sepolicy/gui.py:2274 #, python-format -msgid "Linux User : %s" +msgid "Login Name : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2241 +#: ../sepolicy/sepolicy/gui.py:2278 #, python-format msgid "SELinux User: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2254 +#: ../sepolicy/sepolicy/gui.py:2291 msgid "Add file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2256 +#: ../sepolicy/sepolicy/gui.py:2293 msgid "Delete file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2258 +#: ../sepolicy/sepolicy/gui.py:2295 msgid "Modify file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2262 +#: ../sepolicy/sepolicy/gui.py:2299 #, python-format msgid "File path : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2266 +#: ../sepolicy/sepolicy/gui.py:2303 #, python-format msgid "Equivalence: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2369 +#: ../sepolicy/sepolicy/gui.py:2406 #, python-format -msgid "Run restorecon on %s to change its type from %s to the default %s?" +msgid "" +"Run restorecon on %(PATH)s to change its type from %(CUR_CONTEXT)s to the " +"default %(DEF_CONTEXT)s?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2381 +#: ../sepolicy/sepolicy/gui.py:2418 msgid "Update Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2383 +#: ../sepolicy/sepolicy/gui.py:2420 msgid "Revert Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2556 +#: ../sepolicy/sepolicy/gui.py:2547 msgid "System Status: Enforcing" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2558 +#: ../sepolicy/sepolicy/gui.py:2549 msgid "System Status: Permissive" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2749 +#: ../sepolicy/sepolicy/gui.py:2743 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -5085,7 +5175,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "" "You are attempting to close the application without applying your changes.\n" " * To apply changes you have made during this session, click No and " @@ -5094,6 +5184,6 @@ msgid "" "All changes that you have made during this session will be lost." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "Loss of data Dialog" msgstr "" diff --git a/policycoreutils/po/ar.po b/policycoreutils/po/ar.po index b03fb78..6e400ae 100644 --- a/policycoreutils/po/ar.po +++ b/policycoreutils/po/ar.po @@ -12,10 +12,11 @@ msgid "" msgstr "" "Project-Id-Version: Policycoreutils\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-10-10 16:04-0400\n" -"PO-Revision-Date: 2013-07-10 20:44+0000\n" +"POT-Creation-Date: 2014-01-03 16:04-0500\n" +"PO-Revision-Date: 2013-12-20 13:58+0000\n" "Last-Translator: dwalsh \n" -"Language-Team: Arabic \n" +"Language-Team: Arabic (http://www.transifex.com/projects/p/fedora/language/" +"ar/)\n" "Language: ar\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -95,96 +96,101 @@ msgstr "******************** مهم ***********************\n" msgid "To make this policy package active, execute:" msgstr "لتفعيل حزمة السياسات هذه، نفذ:" -#: ../semanage/seobject.py:210 +#: ../semanage/seobject/__init__.py:220 msgid "Could not create semanage handle" msgstr "لا يمكن إنشاء معالج semanage" -#: ../semanage/seobject.py:218 +#: ../semanage/seobject/__init__.py:228 msgid "SELinux policy is not managed or store cannot be accessed." msgstr "سياسة SELinux غير مُدارة أو لا يمكن الوصول إلى المخزن." -#: ../semanage/seobject.py:223 +#: ../semanage/seobject/__init__.py:233 msgid "Cannot read policy store." msgstr "لا يمكن قراءة مخزن السياسات." -#: ../semanage/seobject.py:228 +#: ../semanage/seobject/__init__.py:238 msgid "Could not establish semanage connection" msgstr "لا يمكن إنشاء اتصال semanage" -#: ../semanage/seobject.py:233 +#: ../semanage/seobject/__init__.py:243 msgid "Could not test MLS enabled status" msgstr "لا يمكن اختبار حالة تفعيل MLS" -#: ../semanage/seobject.py:239 ../semanage/seobject.py:254 +#: ../semanage/seobject/__init__.py:249 ../semanage/seobject/__init__.py:264 msgid "Not yet implemented" msgstr "غير مطبقة بعد" -#: ../semanage/seobject.py:243 +#: ../semanage/seobject/__init__.py:253 msgid "Semanage transaction already in progress" msgstr "عملية semanage تحت التنفيذ" -#: ../semanage/seobject.py:252 +#: ../semanage/seobject/__init__.py:262 msgid "Could not start semanage transaction" msgstr "لا يمكن بدء عملية semanage" -#: ../semanage/seobject.py:264 +#: ../semanage/seobject/__init__.py:274 msgid "Could not commit semanage transaction" msgstr "لا يمكن تنفيذ عملية semanage" -#: ../semanage/seobject.py:269 +#: ../semanage/seobject/__init__.py:279 msgid "Semanage transaction not in progress" msgstr "عملية semanage ليست تحت التنفيذ" -#: ../semanage/seobject.py:281 ../semanage/seobject.py:376 +#: ../semanage/seobject/__init__.py:291 ../semanage/seobject/__init__.py:386 msgid "Could not list SELinux modules" msgstr "لا يمكن عرض قائمة وحدات SELinux" -#: ../semanage/seobject.py:300 +#: ../semanage/seobject/__init__.py:310 msgid "Modules Name" msgstr "اسم الوحدة" -#: ../semanage/seobject.py:300 ../gui/modulesPage.py:63 +#: ../semanage/seobject/__init__.py:310 ../gui/modulesPage.py:63 msgid "Version" msgstr "إصدار" -#: ../semanage/seobject.py:303 ../gui/statusPage.py:75 -#: ../sepolicy/sepolicy/sepolicy.glade:3430 +#: ../semanage/seobject/__init__.py:313 ../gui/statusPage.py:71 +#: ../sepolicy/sepolicy/sepolicy.glade:3431 msgid "Disabled" msgstr "معطّل" -#: ../semanage/seobject.py:312 +#: ../semanage/seobject/__init__.py:322 #, python-format msgid "Module does not exists %s " msgstr "" -#: ../semanage/seobject.py:322 +#: ../semanage/seobject/__init__.py:332 #, python-format msgid "Could not disable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:333 +#: ../semanage/seobject/__init__.py:343 #, python-format msgid "Could not enable module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:348 +#: ../semanage/seobject/__init__.py:358 #, python-format msgid "Could not remove module %s (remove failed)" msgstr "" -#: ../semanage/seobject.py:363 +#: ../semanage/seobject/__init__.py:373 msgid "dontaudit requires either 'on' or 'off'" msgstr "" -#: ../semanage/seobject.py:391 +#: ../semanage/seobject/__init__.py:402 +msgid "Customized Permissive Types" +msgstr "" + +#: ../semanage/seobject/__init__.py:410 msgid "Builtin Permissive Types" msgstr "" -#: ../semanage/seobject.py:401 -msgid "Customized Permissive Types" +#: ../semanage/seobject/__init__.py:419 +#, python-format +msgid "%s is not a domain type" msgstr "" -#: ../semanage/seobject.py:410 +#: ../semanage/seobject/__init__.py:424 msgid "" "The sepolgen python module is required to setup permissive domains.\n" "In some distributions it is included in the policycoreutils-devel patckage.\n" @@ -192,810 +198,825 @@ msgid "" "Or similar for your distro." msgstr "" -#: ../semanage/seobject.py:447 +#: ../semanage/seobject/__init__.py:461 #, python-format msgid "Could not set permissive domain %s (module installation failed)" msgstr "لا يمكن ضبط النطاق المتساهل %s (خطأ في تثبيت الوحدة)" -#: ../semanage/seobject.py:453 +#: ../semanage/seobject/__init__.py:467 #, python-format msgid "Could not remove permissive domain %s (remove failed)" msgstr "لا يمكن إزالة النطاق المتساهل %s (فشل في الإزالة)" -#: ../semanage/seobject.py:488 ../semanage/seobject.py:562 -#: ../semanage/seobject.py:608 ../semanage/seobject.py:730 -#: ../semanage/seobject.py:760 ../semanage/seobject.py:827 -#: ../semanage/seobject.py:884 ../semanage/seobject.py:1144 -#: ../semanage/seobject.py:1879 ../semanage/seobject.py:1942 -#: ../semanage/seobject.py:1961 ../semanage/seobject.py:2084 -#: ../semanage/seobject.py:2135 +#: ../semanage/seobject/__init__.py:501 ../semanage/seobject/__init__.py:575 +#: ../semanage/seobject/__init__.py:621 ../semanage/seobject/__init__.py:743 +#: ../semanage/seobject/__init__.py:773 ../semanage/seobject/__init__.py:839 +#: ../semanage/seobject/__init__.py:896 ../semanage/seobject/__init__.py:1156 +#: ../semanage/seobject/__init__.py:1891 ../semanage/seobject/__init__.py:1954 +#: ../semanage/seobject/__init__.py:1973 ../semanage/seobject/__init__.py:2096 +#: ../semanage/seobject/__init__.py:2147 #, python-format msgid "Could not create a key for %s" msgstr "لا يمكن إنشاء مفتاح لـ %s" -#: ../semanage/seobject.py:492 ../semanage/seobject.py:566 -#: ../semanage/seobject.py:612 ../semanage/seobject.py:618 +#: ../semanage/seobject/__init__.py:505 ../semanage/seobject/__init__.py:579 +#: ../semanage/seobject/__init__.py:625 ../semanage/seobject/__init__.py:631 #, python-format msgid "Could not check if login mapping for %s is defined" msgstr "لا يمكن التحقق في إذا ما كان مخطط الدخول لـ %s معرفا" -#: ../semanage/seobject.py:501 +#: ../semanage/seobject/__init__.py:514 #, python-format msgid "Linux Group %s does not exist" msgstr "مجموعة لينكس %s غير موجودة" -#: ../semanage/seobject.py:506 +#: ../semanage/seobject/__init__.py:519 #, python-format msgid "Linux User %s does not exist" msgstr "مستخدم لينكس %s غير موجود" -#: ../semanage/seobject.py:510 +#: ../semanage/seobject/__init__.py:523 #, python-format msgid "Could not create login mapping for %s" msgstr "لا يمكن إنشاء مخطط الدخول لـ %s" -#: ../semanage/seobject.py:514 ../semanage/seobject.py:775 +#: ../semanage/seobject/__init__.py:527 ../semanage/seobject/__init__.py:788 #, python-format msgid "Could not set name for %s" msgstr "لا يمكن ضبط اسم لـ %s" -#: ../semanage/seobject.py:519 ../semanage/seobject.py:785 +#: ../semanage/seobject/__init__.py:532 ../semanage/seobject/__init__.py:798 #, python-format msgid "Could not set MLS range for %s" msgstr "لا يمكن ضبط مدى MLS لـ %s" -#: ../semanage/seobject.py:523 +#: ../semanage/seobject/__init__.py:536 #, python-format msgid "Could not set SELinux user for %s" msgstr "لا يمكن ضبط مستخدم SELinux لـ %s" -#: ../semanage/seobject.py:527 +#: ../semanage/seobject/__init__.py:540 #, python-format msgid "Could not add login mapping for %s" msgstr "لا يمكن إضافة مخطط الدخول لـ %s" -#: ../semanage/seobject.py:545 +#: ../semanage/seobject/__init__.py:558 msgid "Requires seuser or serange" msgstr "بحاجة إلى seuser أو serange" -#: ../semanage/seobject.py:568 ../semanage/seobject.py:614 +#: ../semanage/seobject/__init__.py:581 ../semanage/seobject/__init__.py:627 #, python-format msgid "Login mapping for %s is not defined" msgstr "مخطط الدخول لـ %s غير معرّف" -#: ../semanage/seobject.py:572 +#: ../semanage/seobject/__init__.py:585 #, python-format msgid "Could not query seuser for %s" msgstr "لا يمكن استعلام seuser لـ %s" -#: ../semanage/seobject.py:586 +#: ../semanage/seobject/__init__.py:599 #, python-format msgid "Could not modify login mapping for %s" msgstr "لا يمكن تغيير مخطط الدخول لـ %s" -#: ../semanage/seobject.py:620 +#: ../semanage/seobject/__init__.py:633 #, python-format msgid "Login mapping for %s is defined in policy, cannot be deleted" msgstr "تخطيط الدخول لـ %s معرف في السياسة، لا يمكن حذفه" -#: ../semanage/seobject.py:624 +#: ../semanage/seobject/__init__.py:637 #, python-format msgid "Could not delete login mapping for %s" msgstr "لا يمكن حذف تخطيط الدخول لـ %s" -#: ../semanage/seobject.py:646 ../semanage/seobject.py:679 -#: ../semanage/seobject.py:927 +#: ../semanage/seobject/__init__.py:659 ../semanage/seobject/__init__.py:692 +#: ../semanage/seobject/__init__.py:939 msgid "Could not list login mappings" msgstr "لا يمكن عرض قائمة تخطيطات الدخول" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 #: ../gui/system-config-selinux.glade:100 -#: ../sepolicy/sepolicy/sepolicy.glade:1166 -#: ../sepolicy/sepolicy/sepolicy.glade:3155 +#: ../sepolicy/sepolicy/sepolicy.glade:1162 +#: ../sepolicy/sepolicy/sepolicy.glade:3156 msgid "Login Name" msgstr "اسم الدخول" -#: ../semanage/seobject.py:707 ../semanage/seobject.py:719 -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 +#: ../semanage/seobject/__init__.py:720 ../semanage/seobject/__init__.py:732 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 #: ../gui/system-config-selinux.glade:128 #: ../gui/system-config-selinux.glade:915 -#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:44 -#: ../sepolicy/sepolicy/sepolicy.glade:1192 -#: ../sepolicy/sepolicy/sepolicy.glade:3173 -#: ../sepolicy/sepolicy/sepolicy.glade:3259 +#: ../gui/system-config-selinux.glade:2285 ../gui/usersPage.py:41 +#: ../sepolicy/sepolicy/sepolicy.glade:1188 +#: ../sepolicy/sepolicy/sepolicy.glade:3174 +#: ../sepolicy/sepolicy/sepolicy.glade:3260 +#: ../sepolicy/sepolicy/sepolicy.glade:4915 msgid "SELinux User" msgstr "مستخدم SELinux" -#: ../semanage/seobject.py:707 ../gui/system-config-selinux.glade:156 +#: ../semanage/seobject/__init__.py:720 ../gui/system-config-selinux.glade:156 #: ../gui/system-config-selinux.glade:943 msgid "MLS/MCS Range" msgstr "مدى MLS/MCS" -#: ../semanage/seobject.py:707 +#: ../semanage/seobject/__init__.py:720 msgid "Service" msgstr "" -#: ../semanage/seobject.py:733 ../semanage/seobject.py:764 -#: ../semanage/seobject.py:831 ../semanage/seobject.py:888 -#: ../semanage/seobject.py:894 +#: ../semanage/seobject/__init__.py:746 ../semanage/seobject/__init__.py:777 +#: ../semanage/seobject/__init__.py:843 ../semanage/seobject/__init__.py:900 +#: ../semanage/seobject/__init__.py:906 #, python-format msgid "Could not check if SELinux user %s is defined" msgstr "لا يمكن التحقق من إذا كان مستخدم SELinux %s معرفا" -#: ../semanage/seobject.py:736 ../semanage/seobject.py:837 -#: ../semanage/seobject.py:900 +#: ../semanage/seobject/__init__.py:749 ../semanage/seobject/__init__.py:849 +#: ../semanage/seobject/__init__.py:912 #, python-format msgid "Could not query user for %s" msgstr "لا يمكن استعلام المستخدم عن %s" -#: ../semanage/seobject.py:756 +#: ../semanage/seobject/__init__.py:769 #, python-format msgid "You must add at least one role for %s" msgstr "يجب إضافة دور واحد على الأقل لـ %s" -#: ../semanage/seobject.py:771 +#: ../semanage/seobject/__init__.py:784 #, python-format msgid "Could not create SELinux user for %s" msgstr "لا يمكن إنشاء مستخدم SELinux لـ %s" -#: ../semanage/seobject.py:780 +#: ../semanage/seobject/__init__.py:793 #, python-format -msgid "Could not add role %s for %s" -msgstr "لا يمكن إضافة دور %s لـ %s" +msgid "Could not add role %(ROLE)s for %(NAME)s" +msgstr "" -#: ../semanage/seobject.py:789 +#: ../semanage/seobject/__init__.py:802 #, python-format msgid "Could not set MLS level for %s" msgstr "لا يمكن ضبط مستوى MLS لـ %s" -#: ../semanage/seobject.py:792 -#, python-format -msgid "Could not add prefix %s for %s" -msgstr "لا يمكن إضافة البادئة %s لـ %s" +#: ../semanage/seobject/__init__.py:805 +#, fuzzy, python-format +msgid "Could not add prefix %(PREFIX)s for %(ROLE)s" +msgstr "لا يمكن إضافة سياق ملف لـ %s" -#: ../semanage/seobject.py:795 +#: ../semanage/seobject/__init__.py:808 #, python-format msgid "Could not extract key for %s" msgstr "لا يمكن استخراج مفتاح لـ %s" -#: ../semanage/seobject.py:799 +#: ../semanage/seobject/__init__.py:812 #, python-format msgid "Could not add SELinux user %s" msgstr "لا يمكن إضافة مستخدم SELinux %s" -#: ../semanage/seobject.py:821 +#: ../semanage/seobject/__init__.py:833 msgid "Requires prefix, roles, level or range" msgstr "يحتاج إلى بادئة، أدوار، مستويات أو مدى" -#: ../semanage/seobject.py:823 +#: ../semanage/seobject/__init__.py:835 msgid "Requires prefix or roles" msgstr "يحتاج إلى بادئة أو أدوار" -#: ../semanage/seobject.py:833 ../semanage/seobject.py:890 +#: ../semanage/seobject/__init__.py:845 ../semanage/seobject/__init__.py:902 #, python-format msgid "SELinux user %s is not defined" msgstr "مستخدم SELinux %s غير معرف" -#: ../semanage/seobject.py:862 +#: ../semanage/seobject/__init__.py:874 #, python-format msgid "Could not modify SELinux user %s" msgstr "لا يمكن تعديل مستخدم SELinux %s" -#: ../semanage/seobject.py:896 +#: ../semanage/seobject/__init__.py:908 #, python-format msgid "SELinux user %s is defined in policy, cannot be deleted" msgstr "مستخدم SELinux لـ %s معرف في السياسة، لا يمكن حذفه" -#: ../semanage/seobject.py:907 +#: ../semanage/seobject/__init__.py:919 #, python-format msgid "Could not delete SELinux user %s" msgstr "لا يمكن حذف مستخدم SELinux %s" -#: ../semanage/seobject.py:945 +#: ../semanage/seobject/__init__.py:957 msgid "Could not list SELinux users" msgstr "لا يمكن عرض قائمة مستخدمي SELinux" -#: ../semanage/seobject.py:951 +#: ../semanage/seobject/__init__.py:963 #, python-format msgid "Could not list roles for user %s" msgstr "لا يمكن عرض قائمة أدوار المستخدم %s" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "Labeling" msgstr "عنونة" -#: ../semanage/seobject.py:976 +#: ../semanage/seobject/__init__.py:988 msgid "MLS/" msgstr "MLS/" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "Prefix" msgstr "بادئة" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Level" msgstr "مستوى MSC" -#: ../semanage/seobject.py:977 +#: ../semanage/seobject/__init__.py:989 msgid "MCS Range" msgstr "مدى MSC" -#: ../semanage/seobject.py:977 ../semanage/seobject.py:982 -#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:59 -#: ../sepolicy/sepolicy/sepolicy.glade:3279 -#: ../sepolicy/sepolicy/sepolicy.glade:5170 -#: ../sepolicy/sepolicy/sepolicy.glade:5411 +#: ../semanage/seobject/__init__.py:989 ../semanage/seobject/__init__.py:994 +#: ../gui/system-config-selinux.glade:992 ../gui/usersPage.py:56 +#: ../sepolicy/sepolicy/sepolicy.glade:3280 +#: ../sepolicy/sepolicy/sepolicy.glade:5251 +#: ../sepolicy/sepolicy/sepolicy.glade:5400 msgid "SELinux Roles" msgstr "أدوار SELinux" -#: ../semanage/seobject.py:1002 +#: ../semanage/seobject/__init__.py:1014 msgid "Protocol udp or tcp is required" msgstr "بروتوكول udp أو tcp مطلوب" -#: ../semanage/seobject.py:1004 +#: ../semanage/seobject/__init__.py:1016 msgid "Port is required" msgstr "المنفذ مطلوب" -#: ../semanage/seobject.py:1014 +#: ../semanage/seobject/__init__.py:1026 msgid "Invalid Port" msgstr "" -#: ../semanage/seobject.py:1018 +#: ../semanage/seobject/__init__.py:1030 #, python-format -msgid "Could not create a key for %s/%s" -msgstr "لا يمكن إنشاء مفتاح لـ %s/%s" +msgid "Could not create a key for %(PROTOTYPE)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1029 +#: ../semanage/seobject/__init__.py:1041 msgid "Type is required" msgstr "النوع مطلوب" -#: ../semanage/seobject.py:1032 ../semanage/seobject.py:1096 -#: ../semanage/seobject.py:1873 +#: ../semanage/seobject/__init__.py:1044 ../semanage/seobject/__init__.py:1108 +#: ../semanage/seobject/__init__.py:1885 #, python-format msgid "Type %s is invalid, must be a port type" msgstr "" -#: ../semanage/seobject.py:1040 ../semanage/seobject.py:1102 -#: ../semanage/seobject.py:1157 ../semanage/seobject.py:1163 +#: ../semanage/seobject/__init__.py:1052 ../semanage/seobject/__init__.py:1169 +#: ../semanage/seobject/__init__.py:1175 #, python-format -msgid "Could not check if port %s/%s is defined" -msgstr "لا يمكن التحقق من إذا كان المنفذ %s/%s معرفا" +msgid "Could not check if port %(PROTOCOL)s/%(PORT)s is defined" +msgstr "" -#: ../semanage/seobject.py:1042 +#: ../semanage/seobject/__init__.py:1054 #, python-format -msgid "Port %s/%s already defined" -msgstr "المنفذ %s/%s معرف مسبقا" +msgid "Port %(PROTOCOL)s/%(PORT)s already defined" +msgstr "" -#: ../semanage/seobject.py:1046 +#: ../semanage/seobject/__init__.py:1058 #, python-format -msgid "Could not create port for %s/%s" -msgstr "لا يمكن إنشاء منفذ لـ %s/%s" +msgid "Could not create port for %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1052 +#: ../semanage/seobject/__init__.py:1064 #, python-format -msgid "Could not create context for %s/%s" -msgstr "لا يمكن إنشاء سياق لـ %s/%s" +msgid "Could not create context for %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1056 +#: ../semanage/seobject/__init__.py:1068 #, python-format -msgid "Could not set user in port context for %s/%s" -msgstr "لا يمكن ضبط مستخدم في سياق المنفذ لـ %s/%s" +msgid "Could not set user in port context for %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1060 +#: ../semanage/seobject/__init__.py:1072 #, python-format -msgid "Could not set role in port context for %s/%s" -msgstr "لا يمكن ضبط دور في سياق المنفذ لـ %s/%s" +msgid "Could not set role in port context for %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1064 +#: ../semanage/seobject/__init__.py:1076 #, python-format -msgid "Could not set type in port context for %s/%s" -msgstr "لا يمكن ضبط نوع في سياق المنفذ لـ %s/%s" +msgid "Could not set type in port context for %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1069 +#: ../semanage/seobject/__init__.py:1081 #, python-format -msgid "Could not set mls fields in port context for %s/%s" -msgstr "لا يمكن ضبط حقل mls في سياق المنفذ لـ %s/%s" +msgid "Could not set mls fields in port context for %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1073 +#: ../semanage/seobject/__init__.py:1085 #, python-format -msgid "Could not set port context for %s/%s" -msgstr "لا يمكن ضبط سياق المنفذ لـ %s/%s" +msgid "Could not set port context for %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1077 +#: ../semanage/seobject/__init__.py:1089 #, python-format -msgid "Could not add port %s/%s" -msgstr "لا يمكن إضافة المنفذ %s/%s" +msgid "Could not add port %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1091 ../semanage/seobject.py:1367 -#: ../semanage/seobject.py:1566 +#: ../semanage/seobject/__init__.py:1103 ../semanage/seobject/__init__.py:1379 +#: ../semanage/seobject/__init__.py:1578 msgid "Requires setype or serange" msgstr "يتطلب setype أو serange" -#: ../semanage/seobject.py:1093 +#: ../semanage/seobject/__init__.py:1105 msgid "Requires setype" msgstr "يتطلب setype" -#: ../semanage/seobject.py:1104 ../semanage/seobject.py:1159 +#: ../semanage/seobject/__init__.py:1114 #, python-format -msgid "Port %s/%s is not defined" -msgstr "المنفذ %s/%s غير معرفة" +msgid "Could not check if port @%(PROTOCOL)s/%(PORT)s is defined" +msgstr "" + +#: ../semanage/seobject/__init__.py:1116 +#, python-format +msgid "Port @%(PROTOCOL)s/%(PORT)s is not defined" +msgstr "" -#: ../semanage/seobject.py:1108 +#: ../semanage/seobject/__init__.py:1120 #, python-format -msgid "Could not query port %s/%s" -msgstr "لا يمكن استعلام المنفذ %s/%s" +msgid "Could not query port %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1119 +#: ../semanage/seobject/__init__.py:1131 #, python-format -msgid "Could not modify port %s/%s" -msgstr "لا يمكن تعديل المنفذ %s/%s" +msgid "Could not modify port %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1132 +#: ../semanage/seobject/__init__.py:1144 msgid "Could not list the ports" msgstr "لا يمكن عرض قائمة المنافذ" -#: ../semanage/seobject.py:1148 +#: ../semanage/seobject/__init__.py:1160 #, python-format msgid "Could not delete the port %s" msgstr "لا يمكن حذف المنفذ %s" -#: ../semanage/seobject.py:1165 +#: ../semanage/seobject/__init__.py:1171 +#, python-format +msgid "Port %(PROTOCOL)s/%(PORT)s is not defined" +msgstr "" + +#: ../semanage/seobject/__init__.py:1177 #, python-format -msgid "Port %s/%s is defined in policy, cannot be deleted" -msgstr "المنفذ %s/%s معرف في السياسة، لا يمكن حذفه" +msgid "Port %(PROTOCOL)s/%(PORT)s is defined in policy, cannot be deleted" +msgstr "" -#: ../semanage/seobject.py:1169 +#: ../semanage/seobject/__init__.py:1181 #, python-format -msgid "Could not delete port %s/%s" -msgstr "لا يمكن حذف المنفذ %s/%s" +msgid "Could not delete port %(PROTOCOL)s/%(PORT)s" +msgstr "" -#: ../semanage/seobject.py:1185 ../semanage/seobject.py:1207 +#: ../semanage/seobject/__init__.py:1197 ../semanage/seobject/__init__.py:1219 msgid "Could not list ports" msgstr "لا يمكن عرض قائمة المنافذ" -#: ../semanage/seobject.py:1246 ../sepolicy/sepolicy/sepolicy.glade:2675 -#: ../sepolicy/sepolicy/sepolicy.glade:2773 -#: ../sepolicy/sepolicy/sepolicy.glade:4687 +#: ../semanage/seobject/__init__.py:1258 +#: ../sepolicy/sepolicy/sepolicy.glade:2676 +#: ../sepolicy/sepolicy/sepolicy.glade:2774 +#: ../sepolicy/sepolicy/sepolicy.glade:4648 msgid "SELinux Port Type" msgstr "نوع منفذ SELinux" -#: ../semanage/seobject.py:1246 +#: ../semanage/seobject/__init__.py:1258 msgid "Proto" msgstr "الأول" -#: ../semanage/seobject.py:1246 ../gui/system-config-selinux.glade:335 -#: ../sepolicy/sepolicy/sepolicy.glade:1417 +#: ../semanage/seobject/__init__.py:1258 +#: ../gui/system-config-selinux.glade:335 +#: ../sepolicy/sepolicy/sepolicy.glade:1413 msgid "Port Number" msgstr "رقم المنفذ" -#: ../semanage/seobject.py:1270 +#: ../semanage/seobject/__init__.py:1282 msgid "Node Address is required" msgstr "عنوان العقدة مطلوب" -#: ../semanage/seobject.py:1285 +#: ../semanage/seobject/__init__.py:1297 msgid "Unknown or missing protocol" msgstr "البروتوكول غير معروف أو مفقود" -#: ../semanage/seobject.py:1299 +#: ../semanage/seobject/__init__.py:1311 msgid "SELinux node type is required" msgstr "" -#: ../semanage/seobject.py:1302 ../semanage/seobject.py:1370 +#: ../semanage/seobject/__init__.py:1314 ../semanage/seobject/__init__.py:1382 #, python-format msgid "Type %s is invalid, must be a node type" msgstr "" -#: ../semanage/seobject.py:1306 ../semanage/seobject.py:1374 -#: ../semanage/seobject.py:1410 ../semanage/seobject.py:1508 -#: ../semanage/seobject.py:1570 ../semanage/seobject.py:1604 -#: ../semanage/seobject.py:1818 +#: ../semanage/seobject/__init__.py:1318 ../semanage/seobject/__init__.py:1386 +#: ../semanage/seobject/__init__.py:1422 ../semanage/seobject/__init__.py:1520 +#: ../semanage/seobject/__init__.py:1582 ../semanage/seobject/__init__.py:1616 +#: ../semanage/seobject/__init__.py:1830 #, python-format msgid "Could not create key for %s" msgstr "لا يمكن إنشاء مفتاح لـ %s" -#: ../semanage/seobject.py:1308 ../semanage/seobject.py:1378 -#: ../semanage/seobject.py:1414 ../semanage/seobject.py:1420 +#: ../semanage/seobject/__init__.py:1320 ../semanage/seobject/__init__.py:1390 +#: ../semanage/seobject/__init__.py:1426 ../semanage/seobject/__init__.py:1432 #, python-format msgid "Could not check if addr %s is defined" msgstr "لا يمكن التحقق من إذا كان العنوان %s معرفا" -#: ../semanage/seobject.py:1317 +#: ../semanage/seobject/__init__.py:1329 #, python-format msgid "Could not create addr for %s" msgstr "لا يمكن إنشاء العنوان لـ %s" -#: ../semanage/seobject.py:1323 ../semanage/seobject.py:1524 -#: ../semanage/seobject.py:1767 +#: ../semanage/seobject/__init__.py:1335 ../semanage/seobject/__init__.py:1536 +#: ../semanage/seobject/__init__.py:1779 #, python-format msgid "Could not create context for %s" msgstr "لا يمكن إنشاء سياق لـ %s" -#: ../semanage/seobject.py:1327 +#: ../semanage/seobject/__init__.py:1339 #, python-format msgid "Could not set mask for %s" msgstr "لا يمكن ضبط قناع لـ %s" -#: ../semanage/seobject.py:1331 +#: ../semanage/seobject/__init__.py:1343 #, python-format msgid "Could not set user in addr context for %s" msgstr "لا يمكن ضبط مستخدم في سياق العنوان لـ %s" -#: ../semanage/seobject.py:1335 +#: ../semanage/seobject/__init__.py:1347 #, python-format msgid "Could not set role in addr context for %s" msgstr "لا يمكن ضبط دور في سياق العنوان لـ %s" -#: ../semanage/seobject.py:1339 +#: ../semanage/seobject/__init__.py:1351 #, python-format msgid "Could not set type in addr context for %s" msgstr "لا يمكن ضبط نوع في سياق العنوان لـ %s" -#: ../semanage/seobject.py:1344 +#: ../semanage/seobject/__init__.py:1356 #, python-format msgid "Could not set mls fields in addr context for %s" msgstr "لا يمكن ضبط حقل mls في سياق العنوان لـ %s" -#: ../semanage/seobject.py:1348 +#: ../semanage/seobject/__init__.py:1360 #, python-format msgid "Could not set addr context for %s" msgstr "لا يمكن ضبط سياق العنوان لـ %s" -#: ../semanage/seobject.py:1352 +#: ../semanage/seobject/__init__.py:1364 #, python-format msgid "Could not add addr %s" msgstr "لا يمكن إضافة العنوان %s" -#: ../semanage/seobject.py:1380 ../semanage/seobject.py:1416 +#: ../semanage/seobject/__init__.py:1392 ../semanage/seobject/__init__.py:1428 #, python-format msgid "Addr %s is not defined" msgstr "العنوان %s غير معرف" -#: ../semanage/seobject.py:1384 +#: ../semanage/seobject/__init__.py:1396 #, python-format msgid "Could not query addr %s" msgstr "لا يمكن استعلام العنوان %s" -#: ../semanage/seobject.py:1394 +#: ../semanage/seobject/__init__.py:1406 #, python-format msgid "Could not modify addr %s" msgstr "لا يمكن تعديل العنوان %s" -#: ../semanage/seobject.py:1422 +#: ../semanage/seobject/__init__.py:1434 #, python-format msgid "Addr %s is defined in policy, cannot be deleted" msgstr "العنوان %s معرف في السياسة، لا يمكن حذفه" -#: ../semanage/seobject.py:1426 +#: ../semanage/seobject/__init__.py:1438 #, python-format msgid "Could not delete addr %s" msgstr "لا يمكن حذف العنوان %s" -#: ../semanage/seobject.py:1438 +#: ../semanage/seobject/__init__.py:1450 msgid "Could not deleteall node mappings" msgstr "" -#: ../semanage/seobject.py:1452 +#: ../semanage/seobject/__init__.py:1464 msgid "Could not list addrs" msgstr "لا يمكن عرض قائمة العناوين" -#: ../semanage/seobject.py:1504 ../semanage/seobject.py:1811 +#: ../semanage/seobject/__init__.py:1516 ../semanage/seobject/__init__.py:1823 msgid "SELinux Type is required" msgstr "نوع SELinux مطلوب" -#: ../semanage/seobject.py:1512 ../semanage/seobject.py:1574 -#: ../semanage/seobject.py:1608 ../semanage/seobject.py:1614 +#: ../semanage/seobject/__init__.py:1524 ../semanage/seobject/__init__.py:1586 +#: ../semanage/seobject/__init__.py:1620 ../semanage/seobject/__init__.py:1626 #, python-format msgid "Could not check if interface %s is defined" msgstr "لا يمكن التحقق من إذا كانت الواجهة %s معرفة" -#: ../semanage/seobject.py:1519 +#: ../semanage/seobject/__init__.py:1531 #, python-format msgid "Could not create interface for %s" msgstr "لا يمكن إنشاء واجهة لـ %s" -#: ../semanage/seobject.py:1528 +#: ../semanage/seobject/__init__.py:1540 #, python-format msgid "Could not set user in interface context for %s" msgstr "لا يمكن ضبط مستخدم في سياق الواجهة لـ %s" -#: ../semanage/seobject.py:1532 +#: ../semanage/seobject/__init__.py:1544 #, python-format msgid "Could not set role in interface context for %s" msgstr "لا يمكن ضبط دور في سياق الواجهة لـ %s" -#: ../semanage/seobject.py:1536 +#: ../semanage/seobject/__init__.py:1548 #, python-format msgid "Could not set type in interface context for %s" msgstr "لا يمكن ضبط نوع في سياق الواجهة لـ %s" -#: ../semanage/seobject.py:1541 +#: ../semanage/seobject/__init__.py:1553 #, python-format msgid "Could not set mls fields in interface context for %s" msgstr "لا يمكن ضبط حقل mls في سياق الواجهة لـ %s" -#: ../semanage/seobject.py:1545 +#: ../semanage/seobject/__init__.py:1557 #, python-format msgid "Could not set interface context for %s" msgstr "لا يمكن ضبط سياق المنفذ لـ %s" -#: ../semanage/seobject.py:1549 +#: ../semanage/seobject/__init__.py:1561 #, python-format msgid "Could not set message context for %s" msgstr "لا يمكن ضبط سياق الرسالة ل%s" -#: ../semanage/seobject.py:1553 +#: ../semanage/seobject/__init__.py:1565 #, python-format msgid "Could not add interface %s" msgstr "لا يمكن إضافة الواجهة %s" -#: ../semanage/seobject.py:1576 ../semanage/seobject.py:1610 +#: ../semanage/seobject/__init__.py:1588 ../semanage/seobject/__init__.py:1622 #, python-format msgid "Interface %s is not defined" msgstr "الواجهة %s غير معرفة" -#: ../semanage/seobject.py:1580 +#: ../semanage/seobject/__init__.py:1592 #, python-format msgid "Could not query interface %s" msgstr "لا يمكن استعلام الواجهة %s" -#: ../semanage/seobject.py:1591 +#: ../semanage/seobject/__init__.py:1603 #, python-format msgid "Could not modify interface %s" msgstr "لا يمكن تعديل الواجهة %s" -#: ../semanage/seobject.py:1616 +#: ../semanage/seobject/__init__.py:1628 #, python-format msgid "Interface %s is defined in policy, cannot be deleted" msgstr "الواجهة %s معرفة في السياسة، لا يمكن حذفها" -#: ../semanage/seobject.py:1620 +#: ../semanage/seobject/__init__.py:1632 #, python-format msgid "Could not delete interface %s" msgstr "لا يمكن حذف الواجهة %s" -#: ../semanage/seobject.py:1632 +#: ../semanage/seobject/__init__.py:1644 msgid "Could not delete all interface mappings" msgstr "" -#: ../semanage/seobject.py:1646 +#: ../semanage/seobject/__init__.py:1658 msgid "Could not list interfaces" msgstr "لا يمكن عرض قائمة الواجهات" -#: ../semanage/seobject.py:1671 +#: ../semanage/seobject/__init__.py:1683 msgid "SELinux Interface" msgstr "واجهة SELinux" -#: ../semanage/seobject.py:1671 ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:1683 ../semanage/seobject/__init__.py:2045 msgid "Context" msgstr "سياق" -#: ../semanage/seobject.py:1738 +#: ../semanage/seobject/__init__.py:1750 #, python-format msgid "Target %s is not valid. Target is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1741 +#: ../semanage/seobject/__init__.py:1753 #, python-format -msgid "Substiture %s is not valid. Substitute is not allowed to end with '/'" +msgid "Substitute %s is not valid. Substitute is not allowed to end with '/'" msgstr "" -#: ../semanage/seobject.py:1744 +#: ../semanage/seobject/__init__.py:1756 #, python-format msgid "Equivalence class for %s already exists" msgstr "" -#: ../semanage/seobject.py:1750 +#: ../semanage/seobject/__init__.py:1762 #, python-format -msgid "File spec %s conflicts with equivalency rule '%s %s'" +msgid "" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'" msgstr "" -#: ../semanage/seobject.py:1759 +#: ../semanage/seobject/__init__.py:1771 #, python-format msgid "Equivalence class for %s does not exists" msgstr "" -#: ../semanage/seobject.py:1773 +#: ../semanage/seobject/__init__.py:1785 #, python-format msgid "Could not set user in file context for %s" msgstr "لا يمكن ضبط مستخدم في سياق الملف لـ %s" -#: ../semanage/seobject.py:1777 +#: ../semanage/seobject/__init__.py:1789 #, python-format msgid "Could not set role in file context for %s" msgstr "لا يمكن ضبط دور في سياق الملف لـ %s" -#: ../semanage/seobject.py:1782 ../semanage/seobject.py:1848 +#: ../semanage/seobject/__init__.py:1794 ../semanage/seobject/__init__.py:1860 #, python-format msgid "Could not set mls fields in file context for %s" msgstr "لا يمكن ضبط حقل mls في سياق الملف لـ %s" -#: ../semanage/seobject.py:1788 +#: ../semanage/seobject/__init__.py:1800 msgid "Invalid file specification" msgstr "مواصفات ملف خاطئة" -#: ../semanage/seobject.py:1790 +#: ../semanage/seobject/__init__.py:1802 msgid "File specification can not include spaces" msgstr "" -#: ../semanage/seobject.py:1795 +#: ../semanage/seobject/__init__.py:1807 #, python-format msgid "" -"File spec %s conflicts with equivalency rule '%s %s'; Try adding '%s' instead" +"File spec %(TARGET)s conflicts with equivalency rule '%(SOURCE)s %(DEST)s'; " +"Try adding '%(DEST1)s' instead" msgstr "" -#: ../semanage/seobject.py:1814 +#: ../semanage/seobject/__init__.py:1826 #, python-format msgid "Type %s is invalid, must be a file or device type" msgstr "" -#: ../semanage/seobject.py:1822 ../semanage/seobject.py:1827 -#: ../semanage/seobject.py:1883 ../semanage/seobject.py:1965 -#: ../semanage/seobject.py:1969 +#: ../semanage/seobject/__init__.py:1834 ../semanage/seobject/__init__.py:1839 +#: ../semanage/seobject/__init__.py:1895 ../semanage/seobject/__init__.py:1977 +#: ../semanage/seobject/__init__.py:1981 #, python-format msgid "Could not check if file context for %s is defined" msgstr "لا يمكن التحقق من إذا كان سياق الملف لـ %s معرفا" -#: ../semanage/seobject.py:1835 +#: ../semanage/seobject/__init__.py:1847 #, python-format msgid "Could not create file context for %s" msgstr "لا يمكن إنشاء سياق الملف لـ %s" -#: ../semanage/seobject.py:1843 +#: ../semanage/seobject/__init__.py:1855 #, python-format msgid "Could not set type in file context for %s" msgstr "لا يمكن ضبط نوع في سياق الملف لـ %s" -#: ../semanage/seobject.py:1851 ../semanage/seobject.py:1911 -#: ../semanage/seobject.py:1915 +#: ../semanage/seobject/__init__.py:1863 ../semanage/seobject/__init__.py:1923 +#: ../semanage/seobject/__init__.py:1927 #, python-format msgid "Could not set file context for %s" msgstr "لا يمكن ضبط سياق ملف لـ %s" -#: ../semanage/seobject.py:1857 +#: ../semanage/seobject/__init__.py:1869 #, python-format msgid "Could not add file context for %s" msgstr "لا يمكن إضافة سياق ملف لـ %s" -#: ../semanage/seobject.py:1871 +#: ../semanage/seobject/__init__.py:1883 msgid "Requires setype, serange or seuser" msgstr "يتطلب setype، serange أو seuser" -#: ../semanage/seobject.py:1887 ../semanage/seobject.py:1973 +#: ../semanage/seobject/__init__.py:1899 ../semanage/seobject/__init__.py:1985 #, python-format msgid "File context for %s is not defined" msgstr "سياق الملف لـ %s غير معرف" -#: ../semanage/seobject.py:1893 +#: ../semanage/seobject/__init__.py:1905 #, python-format msgid "Could not query file context for %s" msgstr "لا يمكن استعلام سياق الملف لـ %s" -#: ../semanage/seobject.py:1919 +#: ../semanage/seobject/__init__.py:1931 #, python-format msgid "Could not modify file context for %s" msgstr "لا يمكن تعديل سياق الملف لـ %s" -#: ../semanage/seobject.py:1932 +#: ../semanage/seobject/__init__.py:1944 msgid "Could not list the file contexts" msgstr "لا يمكن عرض قائمة سياقات الملفات" -#: ../semanage/seobject.py:1946 +#: ../semanage/seobject/__init__.py:1958 #, python-format msgid "Could not delete the file context %s" msgstr "لا يمكن حذف سياق الملف %s" -#: ../semanage/seobject.py:1971 +#: ../semanage/seobject/__init__.py:1983 #, python-format msgid "File context for %s is defined in policy, cannot be deleted" msgstr "سياق الملف لـ %s معرف في السياسة، لا يمكن حذفه" -#: ../semanage/seobject.py:1977 +#: ../semanage/seobject/__init__.py:1989 #, python-format msgid "Could not delete file context for %s" msgstr "لا يمكن حذف سياق الملف لـ %s" -#: ../semanage/seobject.py:1992 +#: ../semanage/seobject/__init__.py:2004 msgid "Could not list file contexts" msgstr "لا يمكن عرض قائمة سياقات الملفات" -#: ../semanage/seobject.py:1996 +#: ../semanage/seobject/__init__.py:2008 msgid "Could not list local file contexts" msgstr "لا يمكن عرض قائمة سياقات الملفات المحلية" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "SELinux fcontext" msgstr "SELinux fcontext" -#: ../semanage/seobject.py:2033 +#: ../semanage/seobject/__init__.py:2045 msgid "type" msgstr "نوع" -#: ../semanage/seobject.py:2046 +#: ../semanage/seobject/__init__.py:2058 msgid "" "\n" "SELinux Distribution fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2051 +#: ../semanage/seobject/__init__.py:2063 msgid "" "\n" "SELinux Local fcontext Equivalence \n" msgstr "" -#: ../semanage/seobject.py:2087 ../semanage/seobject.py:2138 -#: ../semanage/seobject.py:2144 +#: ../semanage/seobject/__init__.py:2099 ../semanage/seobject/__init__.py:2150 +#: ../semanage/seobject/__init__.py:2156 #, python-format msgid "Could not check if boolean %s is defined" msgstr "لا يمكن التحقق من إذا كانت القيمة المنطقية %s معرفة" -#: ../semanage/seobject.py:2089 ../semanage/seobject.py:2140 +#: ../semanage/seobject/__init__.py:2101 ../semanage/seobject/__init__.py:2152 #, python-format msgid "Boolean %s is not defined" msgstr "القيمة المنطقية %s غير معرفة" -#: ../semanage/seobject.py:2093 +#: ../semanage/seobject/__init__.py:2105 #, python-format msgid "Could not query file context %s" msgstr "لا يمكن استعلام سياق الملف %s" -#: ../semanage/seobject.py:2098 +#: ../semanage/seobject/__init__.py:2110 #, python-format msgid "You must specify one of the following values: %s" msgstr "يجب أن تحدد أحد القيم التالية: %s" -#: ../semanage/seobject.py:2103 +#: ../semanage/seobject/__init__.py:2115 #, python-format msgid "Could not set active value of boolean %s" msgstr "لا يمكن ضبط القيمة المنطقية النشطة %s" -#: ../semanage/seobject.py:2106 +#: ../semanage/seobject/__init__.py:2118 #, python-format msgid "Could not modify boolean %s" msgstr "لا يمكن تعديل القيمة المنطقية %s" -#: ../semanage/seobject.py:2122 +#: ../semanage/seobject/__init__.py:2134 #, python-format -msgid "Bad format %s: Record %s" -msgstr "بنية خاطئة %s: سجّل %s" +msgid "Bad format %(BOOLNAME)s: Record %(VALUE)s" +msgstr "" -#: ../semanage/seobject.py:2146 +#: ../semanage/seobject/__init__.py:2158 #, python-format msgid "Boolean %s is defined in policy, cannot be deleted" msgstr "القيمة المنطقية %s معرفة في السياسة، لا يمكن حذفها" -#: ../semanage/seobject.py:2150 +#: ../semanage/seobject/__init__.py:2162 #, python-format msgid "Could not delete boolean %s" msgstr "لا يمكن حذف القيمة المنطقية %s" -#: ../semanage/seobject.py:2162 ../semanage/seobject.py:2179 +#: ../semanage/seobject/__init__.py:2174 ../semanage/seobject/__init__.py:2191 msgid "Could not list booleans" msgstr "لا يمكن عرض قائمة القيم المنطقية" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "off" msgstr "إلغاء التشغيل" -#: ../semanage/seobject.py:2214 +#: ../semanage/seobject/__init__.py:2226 msgid "on" msgstr "تشغيل" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "SELinux boolean" msgstr "قيمة منطقية لـSELinux" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "State" msgstr "" -#: ../semanage/seobject.py:2228 +#: ../semanage/seobject/__init__.py:2240 msgid "Default" msgstr "" -#: ../semanage/seobject.py:2228 ../gui/polgen.glade:113 -#: ../gui/polgengui.py:274 ../sepolicy/sepolicy/sepolicy.glade:2147 -#: ../sepolicy/sepolicy/sepolicy.glade:2517 -#: ../sepolicy/sepolicy/sepolicy.glade:5021 +#: ../semanage/seobject/__init__.py:2240 ../gui/polgen.glade:113 +#: ../gui/polgengui.py:260 ../sepolicy/sepolicy/sepolicy.glade:2148 +#: ../sepolicy/sepolicy/sepolicy.glade:2518 +#: ../sepolicy/sepolicy/sepolicy.glade:5117 msgid "Description" msgstr "وصف" @@ -1361,66 +1382,66 @@ msgstr "chcat -l +CompanyConfidential juser" msgid "Options Error %s " msgstr "خطأ في الخيارات %s " -#: ../gui/booleansPage.py:194 ../gui/system-config-selinux.glade:1706 +#: ../gui/booleansPage.py:186 ../gui/system-config-selinux.glade:1706 msgid "Boolean" msgstr "" -#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:162 +#: ../gui/booleansPage.py:245 ../gui/semanagePage.py:186 msgid "all" msgstr "" -#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:164 +#: ../gui/booleansPage.py:247 ../gui/semanagePage.py:188 #: ../gui/system-config-selinux.glade:1615 #: ../gui/system-config-selinux.glade:1820 #: ../gui/system-config-selinux.glade:2437 msgid "Customized" msgstr "" -#: ../gui/fcontextPage.py:64 ../gui/system-config-selinux.glade:1911 +#: ../gui/fcontextPage.py:63 ../gui/system-config-selinux.glade:1911 msgid "File Labeling" msgstr "" -#: ../gui/fcontextPage.py:74 +#: ../gui/fcontextPage.py:73 msgid "" "File\n" "Specification" msgstr "" -#: ../gui/fcontextPage.py:81 +#: ../gui/fcontextPage.py:80 msgid "" "Selinux\n" "File Type" msgstr "" -#: ../gui/fcontextPage.py:88 +#: ../gui/fcontextPage.py:87 msgid "" "File\n" "Type" msgstr "" -#: ../gui/loginsPage.py:48 ../gui/system-config-selinux.glade:2098 +#: ../gui/loginsPage.py:45 ../gui/system-config-selinux.glade:2098 msgid "User Mapping" msgstr "" -#: ../gui/loginsPage.py:52 +#: ../gui/loginsPage.py:49 msgid "" "Login\n" "Name" msgstr "" -#: ../gui/loginsPage.py:56 ../gui/usersPage.py:50 +#: ../gui/loginsPage.py:53 ../gui/usersPage.py:47 msgid "" "SELinux\n" "User" msgstr "" -#: ../gui/loginsPage.py:59 ../gui/usersPage.py:55 +#: ../gui/loginsPage.py:56 ../gui/usersPage.py:52 msgid "" "MLS/\n" "MCS Range" msgstr "" -#: ../gui/loginsPage.py:133 +#: ../gui/loginsPage.py:130 #, python-format msgid "Login '%s' is required" msgstr "" @@ -1433,15 +1454,15 @@ msgstr "" msgid "Module Name" msgstr "" -#: ../gui/modulesPage.py:135 +#: ../gui/modulesPage.py:131 msgid "Disable Audit" msgstr "" -#: ../gui/modulesPage.py:138 ../gui/system-config-selinux.glade:2662 +#: ../gui/modulesPage.py:134 ../gui/system-config-selinux.glade:2662 msgid "Enable Audit" msgstr "" -#: ../gui/modulesPage.py:163 +#: ../gui/modulesPage.py:161 msgid "Load Policy Module" msgstr "" @@ -1480,7 +1501,7 @@ msgstr "" msgid "Applications" msgstr "" -#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:130 +#: ../gui/polgen.glade:316 ../sepolicy/sepolicy/generate.py:132 msgid "Standard Init Daemon" msgstr "" @@ -1490,7 +1511,7 @@ msgid "" "requires a script in /etc/rc.d/init.d" msgstr "" -#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:131 +#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:133 msgid "DBUS System Daemon" msgstr "" @@ -1502,7 +1523,7 @@ msgstr "" msgid "Internet Services Daemon are daemons started by xinetd" msgstr "" -#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:133 +#: ../gui/polgen.glade:366 ../sepolicy/sepolicy/generate.py:135 msgid "Web Application/Script (CGI)" msgstr "" @@ -1511,7 +1532,7 @@ msgid "" "Web Applications/Script (CGI) CGI scripts started by the web server (apache)" msgstr "" -#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:135 +#: ../gui/polgen.glade:383 ../sepolicy/sepolicy/generate.py:137 msgid "User Application" msgstr "" @@ -1521,7 +1542,7 @@ msgid "" "started by a user" msgstr "" -#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:134 +#: ../gui/polgen.glade:400 ../sepolicy/sepolicy/generate.py:136 msgid "Sandbox" msgstr "" @@ -1596,8 +1617,8 @@ msgstr "" msgid "Enter name of application or user role:" msgstr "" -#: ../gui/polgen.glade:728 ../gui/polgengui.py:272 -#: ../sepolicy/sepolicy/sepolicy.glade:2182 +#: ../gui/polgen.glade:728 ../gui/polgengui.py:258 +#: ../sepolicy/sepolicy/sepolicy.glade:2183 msgid "Name" msgstr "" @@ -1681,7 +1702,7 @@ msgid "TCP Ports" msgstr "" #: ../gui/polgen.glade:1223 ../gui/polgen.glade:1390 ../gui/polgen.glade:1589 -#: ../gui/polgen.glade:1698 ../sepolicy/sepolicy/sepolicy.glade:4314 +#: ../gui/polgen.glade:1698 msgid "All" msgstr "" @@ -1812,118 +1833,118 @@ msgstr "" msgid "Policy Directory" msgstr "" -#: ../gui/polgengui.py:282 +#: ../gui/polgengui.py:268 msgid "Role" msgstr "" -#: ../gui/polgengui.py:289 +#: ../gui/polgengui.py:275 msgid "Existing_User" msgstr "" -#: ../gui/polgengui.py:303 ../gui/polgengui.py:311 ../gui/polgengui.py:325 +#: ../gui/polgengui.py:289 ../gui/polgengui.py:297 ../gui/polgengui.py:311 msgid "Application" msgstr "" -#: ../gui/polgengui.py:370 +#: ../gui/polgengui.py:356 #, python-format msgid "%s must be a directory" msgstr "" -#: ../gui/polgengui.py:430 ../gui/polgengui.py:711 +#: ../gui/polgengui.py:416 ../gui/polgengui.py:697 msgid "You must select a user" msgstr "" -#: ../gui/polgengui.py:560 +#: ../gui/polgengui.py:546 msgid "Select executable file to be confined." msgstr "" -#: ../gui/polgengui.py:571 +#: ../gui/polgengui.py:557 msgid "Select init script file to be confined." msgstr "" -#: ../gui/polgengui.py:581 +#: ../gui/polgengui.py:567 msgid "Select file(s) that confined application creates or writes" msgstr "" -#: ../gui/polgengui.py:588 +#: ../gui/polgengui.py:574 msgid "Select directory(s) that the confined application owns and writes into" msgstr "" -#: ../gui/polgengui.py:650 +#: ../gui/polgengui.py:636 msgid "Select directory to generate policy files in" msgstr "" -#: ../gui/polgengui.py:667 +#: ../gui/polgengui.py:653 #, python-format msgid "" "Type %s_t already defined in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:667 ../gui/polgengui.py:671 +#: ../gui/polgengui.py:653 ../gui/polgengui.py:657 msgid "Verify Name" msgstr "" -#: ../gui/polgengui.py:671 +#: ../gui/polgengui.py:657 #, python-format msgid "" "Module %s.pp already loaded in current policy.\n" "Do you want to continue?" msgstr "" -#: ../gui/polgengui.py:717 +#: ../gui/polgengui.py:703 msgid "" "You must add a name made up of letters and numbers and containing no spaces." msgstr "" -#: ../gui/polgengui.py:731 +#: ../gui/polgengui.py:717 msgid "You must enter a executable" msgstr "" -#: ../gui/polgengui.py:756 ../gui/system-config-selinux.py:180 +#: ../gui/polgengui.py:742 ../gui/system-config-selinux.py:180 msgid "Configue SELinux" msgstr "" -#: ../gui/portsPage.py:51 ../gui/system-config-selinux.glade:2528 +#: ../gui/portsPage.py:48 ../gui/system-config-selinux.glade:2528 msgid "Network Port" msgstr "" -#: ../gui/portsPage.py:85 +#: ../gui/portsPage.py:82 msgid "" "SELinux Port\n" "Type" msgstr "" -#: ../gui/portsPage.py:91 ../gui/system-config-selinux.glade:363 -#: ../sepolicy/sepolicy/sepolicy.glade:1443 -#: ../sepolicy/sepolicy/sepolicy.glade:2657 -#: ../sepolicy/sepolicy/sepolicy.glade:2755 -#: ../sepolicy/sepolicy/sepolicy.glade:4672 +#: ../gui/portsPage.py:88 ../gui/system-config-selinux.glade:363 +#: ../sepolicy/sepolicy/sepolicy.glade:1439 +#: ../sepolicy/sepolicy/sepolicy.glade:2658 +#: ../sepolicy/sepolicy/sepolicy.glade:2756 +#: ../sepolicy/sepolicy/sepolicy.glade:4633 msgid "Protocol" msgstr "" -#: ../gui/portsPage.py:96 ../gui/system-config-selinux.glade:479 +#: ../gui/portsPage.py:93 ../gui/system-config-selinux.glade:479 msgid "" "MLS/MCS\n" "Level" msgstr "" -#: ../gui/portsPage.py:101 ../sepolicy/sepolicy/sepolicy.glade:2638 -#: ../sepolicy/sepolicy/sepolicy.glade:2737 -#: ../sepolicy/sepolicy/sepolicy.glade:4658 +#: ../gui/portsPage.py:98 ../sepolicy/sepolicy/sepolicy.glade:2639 +#: ../sepolicy/sepolicy/sepolicy.glade:2738 +#: ../sepolicy/sepolicy/sepolicy.glade:4619 msgid "Port" msgstr "" -#: ../gui/portsPage.py:207 +#: ../gui/portsPage.py:205 #, python-format msgid "Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 " msgstr "" -#: ../gui/portsPage.py:252 +#: ../gui/portsPage.py:258 msgid "List View" msgstr "" -#: ../gui/portsPage.py:255 ../gui/system-config-selinux.glade:2419 +#: ../gui/portsPage.py:261 ../gui/system-config-selinux.glade:2419 msgid "Group View" msgstr "" @@ -1937,40 +1958,40 @@ msgstr "" msgid "Delete %s" msgstr "" -#: ../gui/semanagePage.py:134 +#: ../gui/semanagePage.py:158 #, python-format msgid "Add %s" msgstr "" -#: ../gui/semanagePage.py:148 +#: ../gui/semanagePage.py:172 #, python-format msgid "Modify %s" msgstr "" -#: ../gui/statusPage.py:69 ../gui/system-config-selinux.glade:2819 -#: ../sepolicy/sepolicy/sepolicy.glade:3413 -#: ../sepolicy/sepolicy/sepolicy.glade:3486 +#: ../gui/statusPage.py:65 ../gui/system-config-selinux.glade:2819 +#: ../sepolicy/sepolicy/sepolicy.glade:3414 +#: ../sepolicy/sepolicy/sepolicy.glade:3487 msgid "Permissive" msgstr "" -#: ../gui/statusPage.py:70 ../gui/system-config-selinux.glade:2837 -#: ../sepolicy/sepolicy/sepolicy.glade:3394 -#: ../sepolicy/sepolicy/sepolicy.glade:3468 +#: ../gui/statusPage.py:66 ../gui/system-config-selinux.glade:2837 +#: ../sepolicy/sepolicy/sepolicy.glade:3395 +#: ../sepolicy/sepolicy/sepolicy.glade:3469 msgid "Enforcing" msgstr "" -#: ../gui/statusPage.py:94 +#: ../gui/statusPage.py:90 msgid "Status" msgstr "" -#: ../gui/statusPage.py:133 ../sepolicy/sepolicy/gui.py:2619 +#: ../gui/statusPage.py:129 ../sepolicy/sepolicy/gui.py:2613 msgid "" "Changing the policy type will cause a relabel of the entire file system on " "the next boot. Relabeling takes a long time depending on the size of the " "file system. Do you wish to continue?" msgstr "" -#: ../gui/statusPage.py:147 +#: ../gui/statusPage.py:143 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -1980,7 +2001,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../gui/statusPage.py:152 ../sepolicy/sepolicy/gui.py:2753 +#: ../gui/statusPage.py:148 ../sepolicy/sepolicy/gui.py:2747 msgid "" "Changing to SELinux enabled will cause a relabel of the entire file system " "on the next boot. Relabeling takes a long time depending on the size of the " @@ -2032,8 +2053,8 @@ msgid "" msgstr "" #: ../gui/system-config-selinux.glade:773 -#: ../sepolicy/sepolicy/sepolicy.glade:729 -#: ../sepolicy/sepolicy/sepolicy.glade:1489 +#: ../sepolicy/sepolicy/sepolicy.glade:711 +#: ../sepolicy/sepolicy/sepolicy.glade:1485 msgid "MLS" msgstr "" @@ -2046,7 +2067,7 @@ msgid "SELinux Administration" msgstr "" #: ../gui/system-config-selinux.glade:1122 -#: ../sepolicy/sepolicy/sepolicy.glade:4162 +#: ../sepolicy/sepolicy/sepolicy.glade:4163 msgid "Add" msgstr "" @@ -2116,7 +2137,7 @@ msgstr "" #: ../gui/system-config-selinux.glade:2467 #: ../gui/system-config-selinux.glade:2692 #: ../gui/system-config-selinux.glade:2867 -#: ../sepolicy/sepolicy/sepolicy.glade:1992 +#: ../sepolicy/sepolicy/sepolicy.glade:1993 msgid "Filter" msgstr "" @@ -2235,7 +2256,7 @@ msgstr "" msgid "label59" msgstr "" -#: ../gui/usersPage.py:138 +#: ../gui/usersPage.py:140 #, python-format msgid "SELinux user '%s' is required" msgstr "" @@ -2247,13 +2268,14 @@ msgstr "" #: booleans.py:2 msgid "" -"Allow ABRT to run in abrt_handle_event_t domain to handle ABRT event scripts" +"Determine whether ABRT can run in the abrt_handle_event_t domain to handle " +"ABRT event scripts." msgstr "" #: booleans.py:3 msgid "" -"Allow abrt-handle-upload to modify public files used for public file " -"transfer services in /var/spool/abrt-upload/." +"Determine whether abrt-handle-upload can modify public files used for public " +"file transfer services in /var/spool/abrt-upload/." msgstr "" #: booleans.py:4 @@ -2287,7 +2309,7 @@ msgid "Determine whether awstats can purge httpd log files." msgstr "" #: booleans.py:11 -msgid "Allow boinc_domain execmem/execstack." +msgid "Determine whether boinc can execmem/execstack." msgstr "" #: booleans.py:12 @@ -2343,1467 +2365,1501 @@ msgid "" msgstr "" #: booleans.py:23 -msgid "Determine whether cvs can read shadow password files." +msgid "" +"Determine whether crond can execute jobs in the user domain as opposed to " +"the the generic cronjob domain." msgstr "" #: booleans.py:24 -msgid "Allow all daemons to write corefiles to /" +msgid "Determine whether cvs can read shadow password files." msgstr "" #: booleans.py:25 -msgid "Allow all daemons to use tcp wrappers." +msgid "Allow all daemons to write corefiles to /" msgstr "" #: booleans.py:26 -msgid "Allow all daemons the ability to read/write terminals" +msgid "Enable cluster mode for daemons." msgstr "" #: booleans.py:27 -msgid "Determine whether dbadm can manage generic user files." +msgid "Allow all daemons to use tcp wrappers." msgstr "" #: booleans.py:28 -msgid "Determine whether dbadm can read generic user files." +msgid "Allow all daemons the ability to read/write terminals" msgstr "" #: booleans.py:29 +msgid "Allow dbadm to exec content" +msgstr "" + +#: booleans.py:30 +msgid "Determine whether dbadm can manage generic user files." +msgstr "" + +#: booleans.py:31 +msgid "Determine whether dbadm can read generic user files." +msgstr "" + +#: booleans.py:32 msgid "" "Deny user domains applications to map a memory region as both executable and " "writable, this is dangerous and the executable should be reported in bugzilla" msgstr "" -#: booleans.py:30 +#: booleans.py:33 msgid "Deny any process from ptracing or debugging any other processes." msgstr "" -#: booleans.py:31 +#: booleans.py:34 msgid "Allow dhcpc client applications to execute iptables commands" msgstr "" -#: booleans.py:32 +#: booleans.py:35 msgid "Determine whether DHCP daemon can use LDAP backends." msgstr "" -#: booleans.py:33 +#: booleans.py:36 msgid "Allow all domains to use other domains file descriptors" msgstr "" -#: booleans.py:34 +#: booleans.py:37 msgid "Allow all domains to have the kernel load modules" msgstr "" -#: booleans.py:35 +#: booleans.py:38 msgid "" "Determine whether entropyd can use audio devices as the source for the " "entropy feeds." msgstr "" -#: booleans.py:36 +#: booleans.py:39 msgid "Determine whether exim can connect to databases." msgstr "" -#: booleans.py:37 +#: booleans.py:40 msgid "" "Determine whether exim can create, read, write, and delete generic user " "content files." msgstr "" -#: booleans.py:38 +#: booleans.py:41 msgid "Determine whether exim can read generic user content files." msgstr "" -#: booleans.py:39 +#: booleans.py:42 msgid "Enable extra rules in the cron domain to support fcron." msgstr "" -#: booleans.py:40 +#: booleans.py:43 msgid "Determine whether fenced can connect to the TCP network." msgstr "" -#: booleans.py:41 +#: booleans.py:44 msgid "Determine whether fenced can use ssh." msgstr "" -#: booleans.py:42 +#: booleans.py:45 msgid "Allow all domains to execute in fips_mode" msgstr "" -#: booleans.py:43 +#: booleans.py:46 msgid "" "Determine whether ftpd can read and write files in user home directories." msgstr "" -#: booleans.py:44 +#: booleans.py:47 msgid "" "Determine whether ftpd can modify public files used for public file transfer " "services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:45 +#: booleans.py:48 msgid "Determine whether ftpd can connect to all unreserved ports." msgstr "" -#: booleans.py:46 +#: booleans.py:49 msgid "Determine whether ftpd can connect to databases over the TCP network." msgstr "" -#: booleans.py:47 +#: booleans.py:50 msgid "" "Determine whether ftpd can login to local users and can read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:48 +#: booleans.py:51 msgid "" "Determine whether ftpd can use CIFS used for public file transfer services." msgstr "" -#: booleans.py:49 +#: booleans.py:52 msgid "Allow ftpd to use ntfs/fusefs volumes." msgstr "" -#: booleans.py:50 +#: booleans.py:53 msgid "" "Determine whether ftpd can use NFS used for public file transfer services." msgstr "" -#: booleans.py:51 +#: booleans.py:54 msgid "" "Determine whether ftpd can bind to all unreserved ports for passive mode." msgstr "" -#: booleans.py:52 +#: booleans.py:55 msgid "Determine whether Git CGI can search home directories." msgstr "" -#: booleans.py:53 +#: booleans.py:56 msgid "Determine whether Git CGI can access cifs file systems." msgstr "" -#: booleans.py:54 +#: booleans.py:57 msgid "Determine whether Git CGI can access nfs file systems." msgstr "" -#: booleans.py:55 +#: booleans.py:58 msgid "" "Determine whether Git session daemon can bind TCP sockets to all unreserved " "ports." msgstr "" -#: booleans.py:56 +#: booleans.py:59 msgid "" "Determine whether calling user domains can execute Git daemon in the " "git_session_t domain." msgstr "" -#: booleans.py:57 +#: booleans.py:60 msgid "Determine whether Git system daemon can search home directories." msgstr "" -#: booleans.py:58 +#: booleans.py:61 msgid "Determine whether Git system daemon can access cifs file systems." msgstr "" -#: booleans.py:59 +#: booleans.py:62 msgid "Determine whether Git system daemon can access nfs file systems." msgstr "" -#: booleans.py:60 +#: booleans.py:63 msgid "Determine whether Gitosis can send mail." msgstr "" -#: booleans.py:61 +#: booleans.py:64 msgid "Enable reading of urandom for all domains." msgstr "" -#: booleans.py:62 +#: booleans.py:65 msgid "" "Allow glusterfsd to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:63 +#: booleans.py:66 msgid "Allow glusterfsd to share any file/directory read only." msgstr "" -#: booleans.py:64 +#: booleans.py:67 msgid "Allow glusterfsd to share any file/directory read/write." msgstr "" -#: booleans.py:65 +#: booleans.py:68 msgid "" "Allow usage of the gpg-agent --write-env-file option. This also allows gpg-" "agent to manage user files." msgstr "" -#: booleans.py:66 +#: booleans.py:69 msgid "" "Allow gpg web domain to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:67 +#: booleans.py:70 msgid "" "Allow gssd to list tmp directories and read the kerberos credential cache." msgstr "" -#: booleans.py:68 +#: booleans.py:71 msgid "Allow guest to exec content" msgstr "" -#: booleans.py:69 +#: booleans.py:72 msgid "" "Allow Apache to modify public files used for public file transfer services. " "Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:70 +#: booleans.py:73 msgid "Allow httpd to use built in scripting (usually php)" msgstr "" -#: booleans.py:71 +#: booleans.py:74 msgid "Allow http daemon to check spam" msgstr "" -#: booleans.py:72 +#: booleans.py:75 msgid "" "Allow httpd to act as a FTP client connecting to the ftp port and ephemeral " "ports" msgstr "" -#: booleans.py:73 +#: booleans.py:76 msgid "Allow httpd to connect to the ldap port" msgstr "" -#: booleans.py:74 +#: booleans.py:77 msgid "Allow http daemon to connect to mythtv" msgstr "" -#: booleans.py:75 +#: booleans.py:78 msgid "Allow http daemon to connect to zabbix" msgstr "" -#: booleans.py:76 +#: booleans.py:79 msgid "Allow HTTPD scripts and modules to connect to the network using TCP." msgstr "" -#: booleans.py:77 +#: booleans.py:80 msgid "Allow HTTPD scripts and modules to connect to cobbler over the network." msgstr "" -#: booleans.py:78 +#: booleans.py:81 msgid "" "Allow HTTPD scripts and modules to connect to databases over the network." msgstr "" -#: booleans.py:79 +#: booleans.py:82 msgid "Allow httpd to connect to memcache server" msgstr "" -#: booleans.py:80 +#: booleans.py:83 msgid "Allow httpd to act as a relay" msgstr "" -#: booleans.py:81 +#: booleans.py:84 msgid "Allow http daemon to send mail" msgstr "" -#: booleans.py:82 +#: booleans.py:85 msgid "Allow Apache to communicate with avahi service via dbus" msgstr "" -#: booleans.py:83 +#: booleans.py:86 msgid "Allow httpd cgi support" msgstr "" -#: booleans.py:84 +#: booleans.py:87 msgid "Allow httpd to act as a FTP server by listening on the ftp port." msgstr "" -#: booleans.py:85 +#: booleans.py:88 msgid "Allow httpd to read home directories" msgstr "" -#: booleans.py:86 +#: booleans.py:89 msgid "Allow httpd scripts and modules execmem/execstack" msgstr "" -#: booleans.py:87 +#: booleans.py:90 msgid "Allow HTTPD to connect to port 80 for graceful shutdown" msgstr "" -#: booleans.py:88 +#: booleans.py:91 msgid "Allow httpd processes to manage IPA content" msgstr "" -#: booleans.py:89 +#: booleans.py:92 msgid "Allow Apache to use mod_auth_ntlm_winbind" msgstr "" -#: booleans.py:90 +#: booleans.py:93 msgid "Allow Apache to use mod_auth_pam" msgstr "" -#: booleans.py:91 +#: booleans.py:94 msgid "Allow httpd to read user content" msgstr "" -#: booleans.py:92 +#: booleans.py:95 msgid "Allow Apache to run in stickshift mode, not transition to passenger" msgstr "" -#: booleans.py:93 +#: booleans.py:96 msgid "Allow HTTPD scripts and modules to server cobbler files." msgstr "" -#: booleans.py:94 +#: booleans.py:97 msgid "Allow httpd daemon to change its resource limits" msgstr "" -#: booleans.py:95 +#: booleans.py:98 msgid "" "Allow HTTPD to run SSI executables in the same domain as system CGI scripts." msgstr "" -#: booleans.py:96 +#: booleans.py:99 msgid "" "Allow apache scripts to write to public content, directories/files must be " "labeled public_rw_content_t." msgstr "" -#: booleans.py:97 +#: booleans.py:100 msgid "Allow Apache to execute tmp content." msgstr "" -#: booleans.py:98 +#: booleans.py:101 msgid "" "Unify HTTPD to communicate with the terminal. Needed for entering the " "passphrase for certificates at the terminal." msgstr "" -#: booleans.py:99 +#: booleans.py:102 msgid "Unify HTTPD handling of all content files." msgstr "" -#: booleans.py:100 +#: booleans.py:103 msgid "Allow httpd to access cifs file systems" msgstr "" -#: booleans.py:101 +#: booleans.py:104 msgid "Allow httpd to access FUSE file systems" msgstr "" -#: booleans.py:102 +#: booleans.py:105 msgid "Allow httpd to run gpg" msgstr "" -#: booleans.py:103 +#: booleans.py:106 msgid "Allow httpd to access nfs file systems" msgstr "" -#: booleans.py:104 +#: booleans.py:107 msgid "Allow httpd to access openstack ports" msgstr "" -#: booleans.py:105 +#: booleans.py:108 msgid "Allow httpd to connect to sasl" msgstr "" -#: booleans.py:106 +#: booleans.py:109 msgid "Allow Apache to query NS records" msgstr "" -#: booleans.py:107 +#: booleans.py:110 msgid "Determine whether icecast can listen on and connect to any TCP port." msgstr "" -#: booleans.py:108 +#: booleans.py:111 msgid "" "Determine whether irc clients can listen on and connect to any unreserved " "TCP ports." msgstr "" -#: booleans.py:109 +#: booleans.py:112 msgid "" "Allow the Irssi IRC Client to connect to any port, and to bind to any " "unreserved port." msgstr "" -#: booleans.py:110 -msgid "Allow confined applications to run with kerberos." -msgstr "" - -#: booleans.py:111 -msgid "Allow ksmtuned to use cifs/Samba file systems" -msgstr "" - -#: booleans.py:112 -msgid "Allow ksmtuned to use nfs file systems" -msgstr "" - #: booleans.py:113 -msgid "Allow syslogd daemon to send mail" +msgid "Allow s-c-kdump to run bootloader in bootloader_t." msgstr "" #: booleans.py:114 -msgid "Allow syslogd the ability to read/write terminals" +msgid "Allow confined applications to run with kerberos." msgstr "" #: booleans.py:115 -msgid "Allow logging in and using the system from /dev/console." +msgid "Allow ksmtuned to use cifs/Samba file systems" msgstr "" #: booleans.py:116 -msgid "Allow epylog to send mail" +msgid "Allow ksmtuned to use nfs file systems" msgstr "" #: booleans.py:117 -msgid "Allow mailman to access FUSE file systems" +msgid "Allow logadm to exec content" msgstr "" #: booleans.py:118 -msgid "Determine whether mcelog supports client mode." +msgid "Allow syslogd daemon to send mail" msgstr "" #: booleans.py:119 -msgid "Determine whether mcelog can execute scripts." +msgid "Allow syslogd the ability to read/write terminals" msgstr "" #: booleans.py:120 -msgid "Determine whether mcelog can use all the user ttys." +msgid "Allow logging in and using the system from /dev/console." msgstr "" #: booleans.py:121 -msgid "Determine whether mcelog supports server mode." +msgid "Determine whether logwatch can connect to mail over the network." msgstr "" #: booleans.py:122 -msgid "" -"Control the ability to mmap a low area of the address space, as configured " -"by /proc/sys/kernel/mmap_min_addr." +msgid "Allow epylog to send mail" msgstr "" #: booleans.py:123 -msgid "Allow mock to read files in home directories." +msgid "Allow mailman to access FUSE file systems" msgstr "" #: booleans.py:124 -msgid "Allow the mount commands to mount any directory or file." +msgid "Determine whether mcelog supports client mode." msgstr "" #: booleans.py:125 -msgid "Allow mozilla plugin domain to connect to the network using TCP." +msgid "Determine whether mcelog can execute scripts." msgstr "" #: booleans.py:126 -msgid "Allow mozilla plugin to support GPS." +msgid "Determine whether mcelog can use all the user ttys." msgstr "" #: booleans.py:127 -msgid "Allow mozilla plugin to support spice protocols." +msgid "Determine whether mcelog supports server mode." msgstr "" #: booleans.py:128 -msgid "Allow confined web browsers to read home directory content" +msgid "Determine whether minidlna can read generic user content." msgstr "" #: booleans.py:129 -msgid "Determine whether mpd can traverse user home directories." +msgid "" +"Control the ability to mmap a low area of the address space, as configured " +"by /proc/sys/kernel/mmap_min_addr." msgstr "" #: booleans.py:130 -msgid "Determine whether mpd can use cifs file systems." +msgid "Allow mock to read files in home directories." msgstr "" #: booleans.py:131 -msgid "Determine whether mpd can use nfs file systems." +msgid "Allow the mount commands to mount any directory or file." msgstr "" #: booleans.py:132 -msgid "Determine whether mplayer can make its stack executable." +msgid "Allow mozilla plugin domain to connect to the network using TCP." msgstr "" #: booleans.py:133 -msgid "Allow mysqld to connect to all ports" +msgid "Allow mozilla plugin to support GPS." msgstr "" #: booleans.py:134 -msgid "Determine whether Bind can bind tcp socket to http ports." +msgid "Allow mozilla plugin to support spice protocols." msgstr "" #: booleans.py:135 +msgid "Allow confined web browsers to read home directory content" +msgstr "" + +#: booleans.py:136 +msgid "Determine whether mpd can traverse user home directories." +msgstr "" + +#: booleans.py:137 +msgid "Determine whether mpd can use cifs file systems." +msgstr "" + +#: booleans.py:138 +msgid "Determine whether mpd can use nfs file systems." +msgstr "" + +#: booleans.py:139 +msgid "Determine whether mplayer can make its stack executable." +msgstr "" + +#: booleans.py:140 +msgid "Allow mysqld to connect to all ports" +msgstr "" + +#: booleans.py:141 +msgid "Determine whether Bind can bind tcp socket to http ports." +msgstr "" + +#: booleans.py:142 msgid "" "Determine whether Bind can write to master zone files. Generally this is " "used for dynamic DNS or zone transfers." msgstr "" -#: booleans.py:136 +#: booleans.py:143 msgid "Allow any files/directories to be exported read/only via NFS." msgstr "" -#: booleans.py:137 +#: booleans.py:144 msgid "Allow any files/directories to be exported read/write via NFS." msgstr "" -#: booleans.py:138 +#: booleans.py:145 msgid "" "Allow nfs servers to modify public files used for public file transfer " "services. Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:139 +#: booleans.py:146 msgid "Allow system to run with NIS" msgstr "" -#: booleans.py:140 +#: booleans.py:147 msgid "Allow confined applications to use nscd shared memory." msgstr "" -#: booleans.py:141 +#: booleans.py:148 msgid "Allow openshift to lockdown app" msgstr "" -#: booleans.py:142 +#: booleans.py:149 msgid "Determine whether openvpn can connect to the TCP network." msgstr "" -#: booleans.py:143 +#: booleans.py:150 msgid "Determine whether openvpn can read generic user home content files." msgstr "" -#: booleans.py:144 +#: booleans.py:151 msgid "Allow openvpn to run unconfined scripts" msgstr "" -#: booleans.py:145 +#: booleans.py:152 msgid "Allow piranha-lvs domain to connect to the network using TCP." msgstr "" -#: booleans.py:146 +#: booleans.py:153 msgid "Allow polipo to connect to all ports > 1023" msgstr "" -#: booleans.py:147 +#: booleans.py:154 msgid "" "Determine whether Polipo session daemon can bind tcp sockets to all " "unreserved ports." msgstr "" -#: booleans.py:148 +#: booleans.py:155 msgid "" "Determine whether calling user domains can execute Polipo daemon in the " "polipo_session_t domain." msgstr "" -#: booleans.py:149 +#: booleans.py:156 msgid "Determine whether polipo can access cifs file systems." msgstr "" -#: booleans.py:150 +#: booleans.py:157 msgid "Determine whether Polipo can access nfs file systems." msgstr "" -#: booleans.py:151 +#: booleans.py:158 msgid "Enable polyinstantiated directory support." msgstr "" -#: booleans.py:152 +#: booleans.py:159 msgid "Allow postfix_local domain full write access to mail_spool directories" msgstr "" -#: booleans.py:153 +#: booleans.py:160 msgid "Allow postgresql to use ssh and rsync for point-in-time recovery" msgstr "" -#: booleans.py:154 +#: booleans.py:161 msgid "Allow transmit client label to foreign database" msgstr "" -#: booleans.py:155 +#: booleans.py:162 msgid "Allow database admins to execute DML statement" msgstr "" -#: booleans.py:156 +#: booleans.py:163 msgid "Allow unprivileged users to execute DDL statement" msgstr "" -#: booleans.py:157 +#: booleans.py:164 msgid "Allow pppd to load kernel modules for certain modems" msgstr "" -#: booleans.py:158 +#: booleans.py:165 msgid "Allow pppd to be run for a regular user" msgstr "" -#: booleans.py:159 +#: booleans.py:166 msgid "Determine whether privoxy can connect to all tcp ports." msgstr "" -#: booleans.py:160 +#: booleans.py:167 msgid "" "Permit to prosody to bind apache port. Need to be activated to use BOSH." msgstr "" -#: booleans.py:161 +#: booleans.py:168 msgid "Allow Puppet client to manage all file types." msgstr "" -#: booleans.py:162 +#: booleans.py:169 msgid "Allow Puppet master to use connect to MySQL and PostgreSQL database" msgstr "" -#: booleans.py:163 +#: booleans.py:170 msgid "Allow racoon to read shadow" msgstr "" -#: booleans.py:164 +#: booleans.py:171 msgid "" "Allow rsync to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:165 +#: booleans.py:172 msgid "Allow rsync to run as a client" msgstr "" -#: booleans.py:166 +#: booleans.py:173 msgid "Allow rsync to export any files/directories read only." msgstr "" -#: booleans.py:167 +#: booleans.py:174 msgid "Allow rsync server to manage all files/directories on the system." msgstr "" -#: booleans.py:168 +#: booleans.py:175 msgid "Allow samba to create new home directories (e.g. via PAM)" msgstr "" -#: booleans.py:169 +#: booleans.py:176 msgid "" "Allow samba to act as the domain controller, add users, groups and change " "passwords." msgstr "" -#: booleans.py:170 +#: booleans.py:177 msgid "Allow samba to share users home directories." msgstr "" -#: booleans.py:171 +#: booleans.py:178 msgid "Allow samba to share any file/directory read only." msgstr "" -#: booleans.py:172 +#: booleans.py:179 msgid "Allow samba to share any file/directory read/write." msgstr "" -#: booleans.py:173 +#: booleans.py:180 msgid "Allow samba to act as a portmapper" msgstr "" -#: booleans.py:174 +#: booleans.py:181 msgid "Allow samba to run unconfined scripts" msgstr "" -#: booleans.py:175 +#: booleans.py:182 msgid "Allow samba to export ntfs/fusefs volumes." msgstr "" -#: booleans.py:176 +#: booleans.py:183 msgid "Allow samba to export NFS volumes." msgstr "" -#: booleans.py:177 +#: booleans.py:184 msgid "Allow sanlock to read/write fuse files" msgstr "" -#: booleans.py:178 +#: booleans.py:185 msgid "Allow sanlock to manage nfs files" msgstr "" -#: booleans.py:179 +#: booleans.py:186 msgid "Allow sanlock to manage cifs files" msgstr "" -#: booleans.py:180 +#: booleans.py:187 msgid "Allow sasl to read shadow" msgstr "" -#: booleans.py:181 +#: booleans.py:188 msgid "Allow secadm to exec content" msgstr "" -#: booleans.py:182 +#: booleans.py:189 msgid "" "disallow programs, such as newrole, from transitioning to administrative " "user domains." msgstr "" -#: booleans.py:183 +#: booleans.py:190 msgid "Disable kernel module loading." msgstr "" -#: booleans.py:184 +#: booleans.py:191 msgid "" "Boolean to determine whether the system permits loading policy, setting " "enforcing mode, and changing boolean values. Set this to true and you have " "to reboot to set it back." msgstr "" -#: booleans.py:185 +#: booleans.py:192 msgid "Allow regular users direct dri device access" msgstr "" -#: booleans.py:186 +#: booleans.py:193 msgid "" "Allow unconfined executables to make their heap memory executable. Doing " "this is a really bad idea. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:187 +#: booleans.py:194 msgid "" "Allow all unconfined executables to use libraries requiring text relocation " "that are not labeled textrel_shlib_t" msgstr "" -#: booleans.py:188 +#: booleans.py:195 msgid "" "Allow unconfined executables to make their stack executable. This should " "never, ever be necessary. Probably indicates a badly coded executable, but " "could indicate an attack. This executable should be reported in bugzilla" msgstr "" -#: booleans.py:189 +#: booleans.py:196 msgid "Allow users to connect to the local mysql server" msgstr "" -#: booleans.py:190 +#: booleans.py:197 msgid "" "Allow confined users the ability to execute the ping and traceroute commands." msgstr "" -#: booleans.py:191 +#: booleans.py:198 msgid "Allow users to connect to PostgreSQL" msgstr "" -#: booleans.py:192 +#: booleans.py:199 msgid "" "Allow user to r/w files on filesystems that do not have extended attributes " "(FAT, CDROM, FLOPPY)" msgstr "" -#: booleans.py:193 +#: booleans.py:200 msgid "Allow user music sharing" msgstr "" -#: booleans.py:194 +#: booleans.py:201 msgid "" "Allow users to run TCP servers (bind to ports and accept connection from the " "same domain and outside users) disabling this forces FTP passive mode and " "may change other protocols." msgstr "" -#: booleans.py:195 +#: booleans.py:202 msgid "Allow user to use ssh chroot environment." msgstr "" -#: booleans.py:196 +#: booleans.py:203 msgid "" "Determine whether sftpd can modify public files used for public file " "transfer services. Directories/Files must be labeled public_content_rw_t." msgstr "" -#: booleans.py:197 +#: booleans.py:204 msgid "" "Determine whether sftpd-can read and write files in user home directories." msgstr "" -#: booleans.py:198 +#: booleans.py:205 msgid "" "Determine whether sftpd-can login to local users and read and write all " "files on the system, governed by DAC." msgstr "" -#: booleans.py:199 +#: booleans.py:206 msgid "" "Determine whether sftpd can read and write files in user ssh home " "directories." msgstr "" -#: booleans.py:200 +#: booleans.py:207 msgid "Allow sge to connect to the network using any TCP port" msgstr "" -#: booleans.py:201 +#: booleans.py:208 msgid "Allow sge to access nfs file systems." msgstr "" -#: booleans.py:202 +#: booleans.py:209 msgid "Determine whether smartmon can support devices on 3ware controllers." msgstr "" -#: booleans.py:203 +#: booleans.py:210 msgid "" "Allow samba to modify public files used for public file transfer services. " "Files/Directories must be labeled public_content_rw_t." msgstr "" -#: booleans.py:204 +#: booleans.py:211 msgid "Allow user spamassassin clients to use the network." msgstr "" -#: booleans.py:205 +#: booleans.py:212 msgid "Allow spamd to read/write user home directories." msgstr "" -#: booleans.py:206 +#: booleans.py:213 msgid "Determine whether squid can connect to all TCP ports." msgstr "" -#: booleans.py:207 +#: booleans.py:214 msgid "Determine whether squid can run as a transparent proxy." msgstr "" -#: booleans.py:208 +#: booleans.py:215 msgid "" "Allow ssh with chroot env to read and write files in the user home " "directories" msgstr "" -#: booleans.py:209 +#: booleans.py:216 msgid "allow host key based authentication" msgstr "" -#: booleans.py:210 +#: booleans.py:217 msgid "Allow ssh logins as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:211 +#: booleans.py:218 msgid "Allow staff to exec content" msgstr "" -#: booleans.py:212 +#: booleans.py:219 msgid "allow staff user to create and transition to svirt domains." msgstr "" -#: booleans.py:213 +#: booleans.py:220 msgid "Allow sysadm to exec content" msgstr "" -#: booleans.py:214 +#: booleans.py:221 msgid "Allow the Telepathy connection managers to connect to any network port." msgstr "" -#: booleans.py:215 +#: booleans.py:222 msgid "" "Allow the Telepathy connection managers to connect to any generic TCP port." msgstr "" -#: booleans.py:216 -msgid "Allow testpolicy to exec content" -msgstr "" - -#: booleans.py:217 +#: booleans.py:223 msgid "" "Allow tftp to modify public files used for public file transfer services." msgstr "" -#: booleans.py:218 +#: booleans.py:224 msgid "Allow tftp to read and write files in the user home directories" msgstr "" -#: booleans.py:219 +#: booleans.py:225 msgid "Determine whether tor can bind tcp sockets to all unreserved ports." msgstr "" -#: booleans.py:220 +#: booleans.py:226 msgid "Allow tor to act as a relay" msgstr "" -#: booleans.py:221 +#: booleans.py:227 msgid "" "allow unconfined users to transition to the chrome sandbox domains when " "running chrome-sandbox" msgstr "" -#: booleans.py:222 +#: booleans.py:228 msgid "Allow a user to login as an unconfined domain" msgstr "" -#: booleans.py:223 +#: booleans.py:229 msgid "" "Allow unconfined users to transition to the Mozilla plugin domain when " "running xulrunner plugin-container." msgstr "" -#: booleans.py:224 +#: booleans.py:230 msgid "Allow unprivledged user to create and transition to svirt domains." msgstr "" -#: booleans.py:225 +#: booleans.py:231 msgid "Support ecryptfs home directories" msgstr "" -#: booleans.py:226 +#: booleans.py:232 msgid "Support fusefs home directories" msgstr "" -#: booleans.py:227 +#: booleans.py:233 msgid "Determine whether to support lpd server." msgstr "" -#: booleans.py:228 +#: booleans.py:234 msgid "Support NFS home directories" msgstr "" -#: booleans.py:229 +#: booleans.py:235 msgid "Support SAMBA home directories" msgstr "" -#: booleans.py:230 +#: booleans.py:236 msgid "Allow user to exec content" msgstr "" -#: booleans.py:231 +#: booleans.py:237 msgid "Determine whether varnishd can use the full TCP network." msgstr "" -#: booleans.py:232 +#: booleans.py:238 msgid "" "Determine whether attempts by vbetool to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:233 +#: booleans.py:239 +msgid "Allow sandbox containers to send audit messages" +msgstr "" + +#: booleans.py:240 +msgid "Allow sandbox containers to use netlink system calls" +msgstr "" + +#: booleans.py:241 msgid "Allow virtual processes to run as userdomains" msgstr "" -#: booleans.py:234 +#: booleans.py:242 msgid "" "Allow confined virtual guests to use serial/parallel communication ports" msgstr "" -#: booleans.py:235 +#: booleans.py:243 msgid "" "Allow confined virtual guests to use executable memory and executable stack" msgstr "" -#: booleans.py:236 +#: booleans.py:244 msgid "Allow confined virtual guests to read fuse files" msgstr "" -#: booleans.py:237 +#: booleans.py:245 msgid "Allow confined virtual guests to manage nfs files" msgstr "" -#: booleans.py:238 +#: booleans.py:246 msgid "Allow confined virtual guests to interact with rawip sockets" msgstr "" -#: booleans.py:239 +#: booleans.py:247 msgid "Allow confined virtual guests to manage cifs files" msgstr "" -#: booleans.py:240 +#: booleans.py:248 msgid "Allow confined virtual guests to interact with the sanlock" msgstr "" -#: booleans.py:241 +#: booleans.py:249 msgid "Allow confined virtual guests to use usb devices" msgstr "" -#: booleans.py:242 +#: booleans.py:250 msgid "Allow confined virtual guests to interact with the xserver" msgstr "" -#: booleans.py:243 +#: booleans.py:251 msgid "Determine whether webadm can manage generic user files." msgstr "" -#: booleans.py:244 +#: booleans.py:252 msgid "Determine whether webadm can read generic user files." msgstr "" -#: booleans.py:245 +#: booleans.py:253 msgid "" "Determine whether attempts by wine to mmap low regions should be silently " "blocked." msgstr "" -#: booleans.py:246 +#: booleans.py:254 msgid "Allow the graphical login program to execute bootloader" msgstr "" -#: booleans.py:247 +#: booleans.py:255 msgid "" "Allow the graphical login program to login directly as sysadm_r:sysadm_t" msgstr "" -#: booleans.py:248 +#: booleans.py:256 msgid "" "Allow the graphical login program to create files in HOME dirs as xdm_home_t." msgstr "" -#: booleans.py:249 +#: booleans.py:257 msgid "Allow xen to manage nfs files" msgstr "" -#: booleans.py:250 +#: booleans.py:258 msgid "" "Allow xend to run blktapctrl/tapdisk. Not required if using dedicated " "logical volumes for disk images." msgstr "" -#: booleans.py:251 +#: booleans.py:259 msgid "Allow xend to run qemu-dm. Not required if using paravirt and no vfb." msgstr "" -#: booleans.py:252 +#: booleans.py:260 msgid "" "Allow xguest users to configure Network Manager and connect to apache ports" msgstr "" -#: booleans.py:253 +#: booleans.py:261 msgid "Allow xguest to exec content" msgstr "" -#: booleans.py:254 +#: booleans.py:262 msgid "Allow xguest users to mount removable media" msgstr "" -#: booleans.py:255 +#: booleans.py:263 msgid "Allow xguest to use blue tooth devices" msgstr "" -#: booleans.py:256 +#: booleans.py:264 msgid "Allows clients to write to the X server shared memory segments." msgstr "" -#: booleans.py:257 +#: booleans.py:265 msgid "Allows XServer to execute writable memory" msgstr "" -#: booleans.py:258 +#: booleans.py:266 msgid "Support X userspace object manager" msgstr "" -#: booleans.py:259 +#: booleans.py:267 msgid "Determine whether zabbix can connect to all TCP ports" msgstr "" -#: booleans.py:260 +#: booleans.py:268 msgid "Allow zarafa domains to setrlimit/sys_rouserce." msgstr "" -#: booleans.py:261 +#: booleans.py:269 msgid "Allow zebra daemon to write it configuration files" msgstr "" -#: booleans.py:262 +#: booleans.py:270 msgid "" "Allow ZoneMinder to modify public files used for public file transfer " "services." msgstr "" -#: booleans.py:263 +#: booleans.py:271 msgid "Allow ZoneMinder to run su/sudo." msgstr "" -#: ../sepolicy/sepolicy.py:194 +#: ../sepolicy/sepolicy.py:195 #, python-format msgid "Interface %s does not exist." msgstr "" -#: ../sepolicy/sepolicy.py:292 +#: ../sepolicy/sepolicy.py:293 msgid "You need to install policycoreutils-gui package to use the gui option" msgstr "" -#: ../sepolicy/sepolicy.py:296 +#: ../sepolicy/sepolicy.py:297 msgid "Graphical User Interface for SELinux Policy" msgstr "" -#: ../sepolicy/sepolicy.py:299 ../sepolicy/sepolicy.py:345 +#: ../sepolicy/sepolicy.py:300 ../sepolicy/sepolicy.py:346 msgid "Domain name(s) of man pages to be created" msgstr "" -#: ../sepolicy/sepolicy.py:311 +#: ../sepolicy/sepolicy.py:312 msgid "Alternative root needs to be setup" msgstr "" -#: ../sepolicy/sepolicy.py:327 +#: ../sepolicy/sepolicy.py:328 msgid "Generate SELinux man pages" msgstr "" -#: ../sepolicy/sepolicy.py:330 +#: ../sepolicy/sepolicy.py:331 msgid "path in which the generated SELinux man pages will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:332 +#: ../sepolicy/sepolicy.py:333 msgid "name of the OS for man pages" msgstr "" -#: ../sepolicy/sepolicy.py:334 +#: ../sepolicy/sepolicy.py:335 msgid "Generate HTML man pages structure for selected SELinux man page" msgstr "" -#: ../sepolicy/sepolicy.py:336 +#: ../sepolicy/sepolicy.py:337 msgid "Alternate root directory, defaults to /" msgstr "" -#: ../sepolicy/sepolicy.py:338 +#: ../sepolicy/sepolicy.py:339 msgid "" "With this flag, alternative root path needs to include file context files " "and policy.xml file" msgstr "" -#: ../sepolicy/sepolicy.py:342 +#: ../sepolicy/sepolicy.py:343 msgid "All domains" msgstr "" -#: ../sepolicy/sepolicy.py:350 +#: ../sepolicy/sepolicy.py:351 msgid "Query SELinux policy network information" msgstr "" -#: ../sepolicy/sepolicy.py:355 +#: ../sepolicy/sepolicy.py:356 msgid "list all SELinux port types" msgstr "" -#: ../sepolicy/sepolicy.py:358 +#: ../sepolicy/sepolicy.py:359 msgid "show SELinux type related to the port" msgstr "" -#: ../sepolicy/sepolicy.py:361 +#: ../sepolicy/sepolicy.py:362 msgid "Show ports defined for this SELinux type" msgstr "" -#: ../sepolicy/sepolicy.py:364 +#: ../sepolicy/sepolicy.py:365 msgid "show ports to which this domain can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:367 +#: ../sepolicy/sepolicy.py:368 msgid "show ports to which this application can bind and/or connect" msgstr "" -#: ../sepolicy/sepolicy.py:382 +#: ../sepolicy/sepolicy.py:383 msgid "query SELinux policy to see if domains can communicate with each other" msgstr "" -#: ../sepolicy/sepolicy.py:385 +#: ../sepolicy/sepolicy.py:386 msgid "Source Domain" msgstr "" -#: ../sepolicy/sepolicy.py:388 +#: ../sepolicy/sepolicy.py:389 msgid "Target Domain" msgstr "" -#: ../sepolicy/sepolicy.py:407 +#: ../sepolicy/sepolicy.py:408 msgid "query SELinux Policy to see description of booleans" msgstr "" -#: ../sepolicy/sepolicy.py:411 +#: ../sepolicy/sepolicy.py:412 msgid "get all booleans descriptions" msgstr "" -#: ../sepolicy/sepolicy.py:414 +#: ../sepolicy/sepolicy.py:415 msgid "boolean to get description" msgstr "" -#: ../sepolicy/sepolicy.py:424 +#: ../sepolicy/sepolicy.py:425 msgid "" "query SELinux Policy to see how a source process domain can transition to " "the target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:427 +#: ../sepolicy/sepolicy.py:428 msgid "source process domain" msgstr "" -#: ../sepolicy/sepolicy.py:430 +#: ../sepolicy/sepolicy.py:431 msgid "target process domain" msgstr "" -#: ../sepolicy/sepolicy.py:472 +#: ../sepolicy/sepolicy.py:473 #, python-format msgid "sepolicy generate: error: one of the arguments %s is required" msgstr "" -#: ../sepolicy/sepolicy.py:477 +#: ../sepolicy/sepolicy.py:478 msgid "Command required for this type of policy" msgstr "" -#: ../sepolicy/sepolicy.py:488 +#: ../sepolicy/sepolicy.py:489 #, python-format msgid "" "-t option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:493 +#: ../sepolicy/sepolicy.py:494 #, python-format msgid "" "-d option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:497 +#: ../sepolicy/sepolicy.py:498 #, python-format msgid "" "-a option can not be used with '%s' domains. Read usage for more details." msgstr "" -#: ../sepolicy/sepolicy.py:501 +#: ../sepolicy/sepolicy.py:502 msgid "-w option can not be used with the --newtype option" msgstr "" -#: ../sepolicy/sepolicy.py:521 +#: ../sepolicy/sepolicy.py:522 msgid "List SELinux Policy interfaces" msgstr "" -#: ../sepolicy/sepolicy.py:541 +#: ../sepolicy/sepolicy.py:542 msgid "Enter interface names, you wish to query" msgstr "" -#: ../sepolicy/sepolicy.py:550 +#: ../sepolicy/sepolicy.py:551 msgid "Generate SELinux Policy module template" msgstr "" -#: ../sepolicy/sepolicy.py:553 +#: ../sepolicy/sepolicy.py:554 msgid "Enter domain type which you will be extending" msgstr "" -#: ../sepolicy/sepolicy.py:556 +#: ../sepolicy/sepolicy.py:557 msgid "Enter SELinux user(s) which will transition to this domain" msgstr "" -#: ../sepolicy/sepolicy.py:559 +#: ../sepolicy/sepolicy.py:560 msgid "Enter SELinux role(s) to which the administror domain will transition" msgstr "" -#: ../sepolicy/sepolicy.py:562 +#: ../sepolicy/sepolicy.py:563 msgid "Enter domain(s) which this confined admin will administrate" msgstr "" -#: ../sepolicy/sepolicy.py:565 +#: ../sepolicy/sepolicy.py:566 msgid "name of policy to generate" msgstr "" -#: ../sepolicy/sepolicy.py:572 +#: ../sepolicy/sepolicy.py:573 msgid "path in which the generated policy files will be stored" msgstr "" -#: ../sepolicy/sepolicy.py:574 +#: ../sepolicy/sepolicy.py:575 msgid "path to which the confined processes will need to write" msgstr "" -#: ../sepolicy/sepolicy.py:575 +#: ../sepolicy/sepolicy.py:576 msgid "Policy types which require a command" msgstr "" -#: ../sepolicy/sepolicy.py:579 ../sepolicy/sepolicy.py:582 -#: ../sepolicy/sepolicy.py:585 ../sepolicy/sepolicy.py:588 -#: ../sepolicy/sepolicy.py:591 ../sepolicy/sepolicy.py:597 -#: ../sepolicy/sepolicy.py:600 ../sepolicy/sepolicy.py:603 -#: ../sepolicy/sepolicy.py:609 ../sepolicy/sepolicy.py:612 -#: ../sepolicy/sepolicy.py:615 ../sepolicy/sepolicy.py:618 +#: ../sepolicy/sepolicy.py:580 ../sepolicy/sepolicy.py:583 +#: ../sepolicy/sepolicy.py:586 ../sepolicy/sepolicy.py:589 +#: ../sepolicy/sepolicy.py:592 ../sepolicy/sepolicy.py:598 +#: ../sepolicy/sepolicy.py:601 ../sepolicy/sepolicy.py:604 +#: ../sepolicy/sepolicy.py:610 ../sepolicy/sepolicy.py:613 +#: ../sepolicy/sepolicy.py:616 ../sepolicy/sepolicy.py:619 #, python-format msgid "Generate '%s' policy" msgstr "" -#: ../sepolicy/sepolicy.py:606 +#: ../sepolicy/sepolicy.py:607 #, python-format msgid "Generate '%s' policy " msgstr "" -#: ../sepolicy/sepolicy.py:620 +#: ../sepolicy/sepolicy.py:621 msgid "executable to confine" msgstr "" -#: ../sepolicy/sepolicy.py:625 +#: ../sepolicy/sepolicy.py:626 msgid "commands" msgstr "" -#: ../sepolicy/sepolicy.py:628 +#: ../sepolicy/sepolicy.py:629 msgid "Alternate SELinux policy, defaults to /sys/fs/selinux/policy" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:89 +#: ../sepolicy/sepolicy/__init__.py:96 #, python-format msgid "-- Allowed %s [ %s ]" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:95 ../sepolicy/sepolicy/gui.py:1135 +#: ../sepolicy/sepolicy/__init__.py:102 ../sepolicy/sepolicy/gui.py:1152 msgid "all files" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:96 +#: ../sepolicy/sepolicy/__init__.py:103 msgid "regular file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:97 +#: ../sepolicy/sepolicy/__init__.py:104 msgid "directory" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:98 +#: ../sepolicy/sepolicy/__init__.py:105 msgid "character device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:99 +#: ../sepolicy/sepolicy/__init__.py:106 msgid "block device" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:100 +#: ../sepolicy/sepolicy/__init__.py:107 msgid "socket file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:101 +#: ../sepolicy/sepolicy/__init__.py:108 msgid "symbolic link" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:102 +#: ../sepolicy/sepolicy/__init__.py:109 msgid "named pipe" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:398 +#: ../sepolicy/sepolicy/__init__.py:427 msgid "No SELinux Policy installed" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:478 +#: ../sepolicy/sepolicy/__init__.py:506 msgid "You must regenerate interface info by running /usr/bin/sepolgen-ifgen" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:724 +#: ../sepolicy/sepolicy/__init__.py:768 #, python-format msgid "Failed to read %s policy file" msgstr "" -#: ../sepolicy/sepolicy/__init__.py:829 +#: ../sepolicy/sepolicy/__init__.py:873 msgid "unknown" msgstr "غير معروف" -#: ../sepolicy/sepolicy/generate.py:132 +#: ../sepolicy/sepolicy/generate.py:134 msgid "Internet Services Daemon" msgstr "" -#: ../sepolicy/sepolicy/generate.py:136 +#: ../sepolicy/sepolicy/generate.py:138 msgid "Existing Domain Type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:137 +#: ../sepolicy/sepolicy/generate.py:139 msgid "Minimal Terminal Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:138 +#: ../sepolicy/sepolicy/generate.py:140 msgid "Minimal X Windows Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:139 +#: ../sepolicy/sepolicy/generate.py:141 msgid "Desktop Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:140 +#: ../sepolicy/sepolicy/generate.py:142 msgid "Administrator Login User Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:141 +#: ../sepolicy/sepolicy/generate.py:143 msgid "Confined Root Administrator Role" msgstr "" -#: ../sepolicy/sepolicy/generate.py:142 +#: ../sepolicy/sepolicy/generate.py:144 msgid "Module information for a new type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:147 +#: ../sepolicy/sepolicy/generate.py:149 msgid "Valid Types:\n" msgstr "" -#: ../sepolicy/sepolicy/generate.py:181 +#: ../sepolicy/sepolicy/generate.py:183 #, python-format msgid "Ports must be numbers or ranges of numbers from 1 to %d " msgstr "" -#: ../sepolicy/sepolicy/generate.py:192 +#: ../sepolicy/sepolicy/generate.py:194 msgid "You must enter a valid policy type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:195 +#: ../sepolicy/sepolicy/generate.py:197 #, python-format msgid "You must enter a name for your policy module for your '%s'." msgstr "" -#: ../sepolicy/sepolicy/generate.py:333 +#: ../sepolicy/sepolicy/generate.py:335 msgid "" "Name must be alpha numberic with no spaces. Consider using option \"-n " "MODULENAME\"" msgstr "" -#: ../sepolicy/sepolicy/generate.py:425 +#: ../sepolicy/sepolicy/generate.py:427 msgid "User Role types can not be assigned executables." msgstr "" -#: ../sepolicy/sepolicy/generate.py:431 +#: ../sepolicy/sepolicy/generate.py:433 msgid "Only Daemon apps can use an init script.." msgstr "" -#: ../sepolicy/sepolicy/generate.py:449 +#: ../sepolicy/sepolicy/generate.py:451 msgid "use_resolve must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:455 +#: ../sepolicy/sepolicy/generate.py:457 msgid "use_syslog must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:461 +#: ../sepolicy/sepolicy/generate.py:463 msgid "use_kerberos must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:467 +#: ../sepolicy/sepolicy/generate.py:469 msgid "manage_krb5_rcache must be a boolean value " msgstr "" -#: ../sepolicy/sepolicy/generate.py:497 +#: ../sepolicy/sepolicy/generate.py:499 msgid "USER Types automatically get a tmp type" msgstr "" -#: ../sepolicy/sepolicy/generate.py:838 +#: ../sepolicy/sepolicy/generate.py:840 #, python-format msgid "'%s' policy modules require existing domains" msgstr "" -#: ../sepolicy/sepolicy/generate.py:863 +#: ../sepolicy/sepolicy/generate.py:865 msgid "Type field required" msgstr "" -#: ../sepolicy/sepolicy/generate.py:876 +#: ../sepolicy/sepolicy/generate.py:878 #, python-format msgid "" "You need to define a new type which ends with: \n" " %s" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1104 +#: ../sepolicy/sepolicy/generate.py:1106 msgid "You must enter the executable path for your confined process" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1363 +#: ../sepolicy/sepolicy/generate.py:1369 msgid "Type Enforcement file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1364 +#: ../sepolicy/sepolicy/generate.py:1370 msgid "Interface file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1365 +#: ../sepolicy/sepolicy/generate.py:1371 msgid "File Contexts file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1367 +#: ../sepolicy/sepolicy/generate.py:1373 msgid "Spec file" msgstr "" -#: ../sepolicy/sepolicy/generate.py:1368 +#: ../sepolicy/sepolicy/generate.py:1374 msgid "Setup Script" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:25 -#: ../sepolicy/sepolicy/sepolicy.glade:4369 +#: ../sepolicy/sepolicy/sepolicy.glade:4330 msgid "Applications" msgstr "" @@ -3811,572 +3867,555 @@ msgstr "" msgid "Select domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/sepolicy.glade:80 ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:95 ../sepolicy/sepolicy/gui.py:2343 msgid "File Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2316 +#: ../sepolicy/sepolicy/sepolicy.glade:112 ../sepolicy/sepolicy/gui.py:2353 msgid "Users" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:129 -#: ../sepolicy/sepolicy/sepolicy.glade:1897 -#: ../sepolicy/sepolicy/sepolicy.glade:3802 ../sepolicy/sepolicy/gui.py:2297 +#: ../sepolicy/sepolicy/sepolicy.glade:1898 +#: ../sepolicy/sepolicy/sepolicy.glade:3803 ../sepolicy/sepolicy/gui.py:2334 msgid "System" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:189 -#: ../sepolicy/sepolicy/sepolicy.glade:4406 -#: ../sepolicy/sepolicy/sepolicy.glade:4499 -#: ../sepolicy/sepolicy/sepolicy.glade:4645 -#: ../sepolicy/sepolicy/sepolicy.glade:4793 -#: ../sepolicy/sepolicy/sepolicy.glade:4934 -#: ../sepolicy/sepolicy/sepolicy.glade:5007 +#: ../sepolicy/sepolicy/sepolicy.glade:4367 +#: ../sepolicy/sepolicy/sepolicy.glade:4460 +#: ../sepolicy/sepolicy/sepolicy.glade:4606 +#: ../sepolicy/sepolicy/sepolicy.glade:4755 +#: ../sepolicy/sepolicy/sepolicy.glade:4889 +#: ../sepolicy/sepolicy/sepolicy.glade:5030 +#: ../sepolicy/sepolicy/sepolicy.glade:5103 +#: ../sepolicy/sepolicy/sepolicy.glade:5238 msgid "Select" msgstr "" #: ../sepolicy/sepolicy/sepolicy.glade:204 -#: ../sepolicy/sepolicy/sepolicy.glade:557 -#: ../sepolicy/sepolicy/sepolicy.glade:702 -#: ../sepolicy/sepolicy/sepolicy.glade:1243 -#: ../sepolicy/sepolicy/sepolicy.glade:1539 -#: ../sepolicy/sepolicy/sepolicy.glade:4579 -#: ../sepolicy/sepolicy/sepolicy.glade:4729 -#: ../sepolicy/sepolicy/sepolicy.glade:4859 -#: ../sepolicy/sepolicy/sepolicy.glade:5077 -#: ../sepolicy/sepolicy/sepolicy.glade:5233 -#: ../sepolicy/sepolicy/sepolicy.glade:5474 +#: ../sepolicy/sepolicy/sepolicy.glade:539 +#: ../sepolicy/sepolicy/sepolicy.glade:684 +#: ../sepolicy/sepolicy/sepolicy.glade:1239 +#: ../sepolicy/sepolicy/sepolicy.glade:1535 +#: ../sepolicy/sepolicy/sepolicy.glade:4540 +#: ../sepolicy/sepolicy/sepolicy.glade:4690 +#: ../sepolicy/sepolicy/sepolicy.glade:4821 +#: ../sepolicy/sepolicy/sepolicy.glade:4955 +#: ../sepolicy/sepolicy/sepolicy.glade:5173 +#: ../sepolicy/sepolicy/sepolicy.glade:5304 +#: ../sepolicy/sepolicy/sepolicy.glade:5464 msgid "Cancel" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:350 +#: ../sepolicy/sepolicy/sepolicy.glade:332 msgid "" "The entry that was entered is incorrect. Please try again in the " "ex:/.../... format." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:376 +#: ../sepolicy/sepolicy/sepolicy.glade:358 msgid "Retry" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:460 -#: ../sepolicy/sepolicy/sepolicy.glade:1124 -#: ../sepolicy/sepolicy/sepolicy.glade:1372 -#: ../sepolicy/sepolicy/sepolicy.glade:5102 -#: ../sepolicy/sepolicy/sepolicy.glade:5343 +#: ../sepolicy/sepolicy/sepolicy.glade:442 +#: ../sepolicy/sepolicy/sepolicy.glade:1120 +#: ../sepolicy/sepolicy/sepolicy.glade:1368 +#: ../sepolicy/sepolicy/sepolicy.glade:5332 msgid "Network Port Definitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:476 +#: ../sepolicy/sepolicy/sepolicy.glade:458 msgid "" -"Add file Equivilence Mapping. Mapping will be created when Update is " +"Add file Equivalence Mapping. Mapping will be created when Update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:501 -#: ../sepolicy/sepolicy/sepolicy.glade:4045 +#: ../sepolicy/sepolicy/sepolicy.glade:483 +#: ../sepolicy/sepolicy/sepolicy.glade:4046 msgid "Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:511 -#: ../sepolicy/sepolicy/sepolicy.glade:5154 -#: ../sepolicy/sepolicy/sepolicy.glade:5395 +#: ../sepolicy/sepolicy/sepolicy.glade:493 +#: ../sepolicy/sepolicy/sepolicy.glade:5384 msgid "" "Specify a new SELinux user name. By convention SELinux User names usually " "end in an _u." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:515 +#: ../sepolicy/sepolicy/sepolicy.glade:497 msgid "Enter the path to which you want to setup an equivalence label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:528 -#: ../sepolicy/sepolicy/sepolicy.glade:4062 -#: ../sepolicy/sepolicy/sepolicy.glade:4819 +#: ../sepolicy/sepolicy/sepolicy.glade:510 +#: ../sepolicy/sepolicy/sepolicy.glade:4063 +#: ../sepolicy/sepolicy/sepolicy.glade:4781 msgid "Equivalence Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:542 -#: ../sepolicy/sepolicy/sepolicy.glade:687 -#: ../sepolicy/sepolicy/sepolicy.glade:1228 -#: ../sepolicy/sepolicy/sepolicy.glade:1524 -#: ../sepolicy/sepolicy/sepolicy.glade:5218 -#: ../sepolicy/sepolicy/sepolicy.glade:5459 +#: ../sepolicy/sepolicy/sepolicy.glade:524 +#: ../sepolicy/sepolicy/sepolicy.glade:669 +#: ../sepolicy/sepolicy/sepolicy.glade:1224 +#: ../sepolicy/sepolicy/sepolicy.glade:1520 +#: ../sepolicy/sepolicy/sepolicy.glade:5449 msgid "Save to update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:582 +#: ../sepolicy/sepolicy/sepolicy.glade:564 msgid "" "Specify the mapping between the new path and the equivalence path. " "Everything under this new path will be labeled as if they were under the " "equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:639 +#: ../sepolicy/sepolicy/sepolicy.glade:621 msgid "Add a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:656 +#: ../sepolicy/sepolicy/sepolicy.glade:638 msgid "" " File Labeling for . File labels will be created " "when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:744 -#: ../sepolicy/sepolicy/sepolicy.glade:1471 -#: ../sepolicy/sepolicy/sepolicy.glade:3510 ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/sepolicy.glade:726 +#: ../sepolicy/sepolicy/sepolicy.glade:1467 +#: ../sepolicy/sepolicy/sepolicy.glade:3511 ../sepolicy/sepolicy/gui.py:68 msgid "Advanced >>" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:765 -#: ../sepolicy/sepolicy/sepolicy.glade:2305 -#: ../sepolicy/sepolicy/sepolicy.glade:2417 -#: ../sepolicy/sepolicy/sepolicy.glade:2539 -#: ../sepolicy/sepolicy/sepolicy.glade:4539 +#: ../sepolicy/sepolicy/sepolicy.glade:747 +#: ../sepolicy/sepolicy/sepolicy.glade:2306 +#: ../sepolicy/sepolicy/sepolicy.glade:2418 +#: ../sepolicy/sepolicy/sepolicy.glade:2540 +#: ../sepolicy/sepolicy/sepolicy.glade:4500 msgid "Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:781 +#: ../sepolicy/sepolicy/sepolicy.glade:763 msgid "Type" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:795 +#: ../sepolicy/sepolicy/sepolicy.glade:777 msgid "" "Select the file class to which this label will be applied. Defaults to all " "classes." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:822 +#: ../sepolicy/sepolicy/sepolicy.glade:804 msgid "Make Path Recursive" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:826 +#: ../sepolicy/sepolicy/sepolicy.glade:808 msgid "" -"Select Make Path Recursive iff you want to apply this label to all children " +"Select Make Path Recursive if you want to apply this label to all children " "of the specified directory path. objects under the directory to have this " "label." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:839 +#: ../sepolicy/sepolicy/sepolicy.glade:821 msgid "Browse" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:843 +#: ../sepolicy/sepolicy/sepolicy.glade:825 msgid "Browse to select the file/directory for labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:887 +#: ../sepolicy/sepolicy/sepolicy.glade:869 msgid "Path " msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:898 +#: ../sepolicy/sepolicy/sepolicy.glade:880 msgid "" "Specify the path using regular expressions that you would like to modify the " "labeling." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:920 +#: ../sepolicy/sepolicy/sepolicy.glade:902 msgid "Select the SELinux file type to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:947 +#: ../sepolicy/sepolicy/sepolicy.glade:929 msgid "Enter the MLS Label to assign to this file path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:951 +#: ../sepolicy/sepolicy/sepolicy.glade:933 msgid "SELinux MLS Label you wish to assign to this path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1088 +#: ../sepolicy/sepolicy/sepolicy.glade:1070 msgid "Analyzing Policy..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1141 +#: ../sepolicy/sepolicy/sepolicy.glade:1137 msgid "" "Add Login Mapping. Login Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1176 +#: ../sepolicy/sepolicy/sepolicy.glade:1172 msgid "" "Enter the login user name of the user to which you wish to add SELinux User " "confinement." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1205 +#: ../sepolicy/sepolicy/sepolicy.glade:1201 msgid "" "Select the SELinux User to assign to this login user. Login users by " "default get assigned by the __default__ user." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1268 +#: ../sepolicy/sepolicy/sepolicy.glade:1264 msgid "" "Enter MLS/MCS Range for this login User. Defaults to the range for the " "Selected SELinux User." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1271 -#: ../sepolicy/sepolicy/sepolicy.glade:3191 -#: ../sepolicy/sepolicy/sepolicy.glade:3312 -#: ../sepolicy/sepolicy/sepolicy.glade:5184 -#: ../sepolicy/sepolicy/sepolicy.glade:5425 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:1267 +#: ../sepolicy/sepolicy/sepolicy.glade:3192 +#: ../sepolicy/sepolicy/sepolicy.glade:3313 +#: ../sepolicy/sepolicy/sepolicy.glade:5414 msgid "MLS Range" -msgstr "مدى MSC" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1283 +#: ../sepolicy/sepolicy/sepolicy.glade:1279 msgid "" "Specify the MLS Range for this user to login in with. Defaults to the " "selected SELinux Users MLS Range." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1389 +#: ../sepolicy/sepolicy/sepolicy.glade:1385 msgid "" " Network Port for . Ports will be created when " "update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1427 +#: ../sepolicy/sepolicy/sepolicy.glade:1423 msgid "Enter the port number or range to which you want to add a port type." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1457 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:1453 msgid "Port Type" -msgstr "نوع منفذ SELinux" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1502 +#: ../sepolicy/sepolicy/sepolicy.glade:1498 msgid "Select the port type you want to assign to the specified port number." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1566 +#: ../sepolicy/sepolicy/sepolicy.glade:1562 msgid "tcp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1570 +#: ../sepolicy/sepolicy/sepolicy.glade:1566 msgid "" "Select tcp if the port type should be assigned to tcp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1583 +#: ../sepolicy/sepolicy/sepolicy.glade:1579 msgid "udp" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1587 +#: ../sepolicy/sepolicy/sepolicy.glade:1583 msgid "" "Select udp if the port type should be assigned to udp port numbers." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1609 +#: ../sepolicy/sepolicy/sepolicy.glade:1605 msgid "Enter the MLS Label to assign to this port." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1706 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:1707 msgid "SELinux Configuration" -msgstr "قيمة منطقية لـSELinux" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1742 +#: ../sepolicy/sepolicy/sepolicy.glade:1743 msgid "Select..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1791 -#: ../sepolicy/sepolicy/sepolicy.glade:2211 +#: ../sepolicy/sepolicy/sepolicy.glade:1792 +#: ../sepolicy/sepolicy/sepolicy.glade:2212 msgid "Booleans" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1795 +#: ../sepolicy/sepolicy/sepolicy.glade:1796 msgid "" "Display boolean information that can be used to modify the policy for the " "'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1809 -#: ../sepolicy/sepolicy/sepolicy.glade:2596 +#: ../sepolicy/sepolicy/sepolicy.glade:1810 +#: ../sepolicy/sepolicy/sepolicy.glade:2597 msgid "Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1813 +#: ../sepolicy/sepolicy/sepolicy.glade:1814 msgid "" "Display file type information that can be used by the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1827 -#: ../sepolicy/sepolicy/sepolicy.glade:2829 +#: ../sepolicy/sepolicy/sepolicy.glade:1828 +#: ../sepolicy/sepolicy/sepolicy.glade:2830 msgid "Network" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1831 +#: ../sepolicy/sepolicy/sepolicy.glade:1832 msgid "" "Display network ports to which the 'selected domain' can connect or listen " "to." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1845 -#: ../sepolicy/sepolicy/sepolicy.glade:3120 +#: ../sepolicy/sepolicy/sepolicy.glade:1846 +#: ../sepolicy/sepolicy/sepolicy.glade:3121 msgid "Transitions" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1849 +#: ../sepolicy/sepolicy/sepolicy.glade:1850 msgid "" "Display applications that can transition into or out of the 'selected " "domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1863 -#: ../sepolicy/sepolicy/sepolicy.glade:3221 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:1864 +#: ../sepolicy/sepolicy/sepolicy.glade:3222 msgid "Login Mapping" -msgstr "اسم الدخول" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1866 -#: ../sepolicy/sepolicy/sepolicy.glade:1883 -#: ../sepolicy/sepolicy/sepolicy.glade:1900 +#: ../sepolicy/sepolicy/sepolicy.glade:1867 +#: ../sepolicy/sepolicy/sepolicy.glade:1884 +#: ../sepolicy/sepolicy/sepolicy.glade:1901 msgid "Manage the SELinux configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1880 -#: ../sepolicy/sepolicy/sepolicy.glade:3343 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:1881 +#: ../sepolicy/sepolicy/sepolicy.glade:3344 msgid "SELinux Users" -msgstr "مستخدم SELinux" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1914 -#: ../sepolicy/sepolicy/sepolicy.glade:4015 +#: ../sepolicy/sepolicy/sepolicy.glade:1915 +#: ../sepolicy/sepolicy/sepolicy.glade:4016 msgid "Lockdown" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1917 +#: ../sepolicy/sepolicy/sepolicy.glade:1918 msgid "" "Lockdown the SELinux System.\n" "This screen can be used to turn up the SELinux Protections." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:1932 +#: ../sepolicy/sepolicy/sepolicy.glade:1933 msgid "radiobutton" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2020 +#: ../sepolicy/sepolicy/sepolicy.glade:2021 msgid "Show Modified Only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2059 +#: ../sepolicy/sepolicy/sepolicy.glade:2060 msgid "Mislabeled files exist" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2079 +#: ../sepolicy/sepolicy/sepolicy.glade:2080 msgid "Show mislabeled files only" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2119 -#: ../sepolicy/sepolicy/sepolicy.glade:3243 +#: ../sepolicy/sepolicy/sepolicy.glade:2120 +#: ../sepolicy/sepolicy/sepolicy.glade:3244 msgid "" -"If-Then-Else rules written in policy that can \n" +"If-Then-Else rules written in policy that can\n" "allow alternative access control." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2131 +#: ../sepolicy/sepolicy/sepolicy.glade:2132 msgid "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2251 -#: ../sepolicy/sepolicy/sepolicy.glade:2363 -#: ../sepolicy/sepolicy/sepolicy.glade:2481 -#: ../sepolicy/sepolicy/sepolicy.glade:4512 -#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:2252 +#: ../sepolicy/sepolicy/sepolicy.glade:2364 +#: ../sepolicy/sepolicy/sepolicy.glade:2482 +#: ../sepolicy/sepolicy/sepolicy.glade:4473 +#: ../sepolicy/sepolicy/sepolicy.glade:4768 msgid "File Path" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2287 -#: ../sepolicy/sepolicy/sepolicy.glade:2398 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:2288 +#: ../sepolicy/sepolicy/sepolicy.glade:2399 msgid "SELinux File Type" -msgstr "نوع منفذ SELinux" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2331 +#: ../sepolicy/sepolicy/sepolicy.glade:2332 msgid "File path used to enter the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2332 +#: ../sepolicy/sepolicy/sepolicy.glade:2333 msgid "Executable Files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2447 +#: ../sepolicy/sepolicy/sepolicy.glade:2448 msgid "Files to which the 'selected domain' can write." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2448 +#: ../sepolicy/sepolicy/sepolicy.glade:2449 msgid "Writable files" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2570 +#: ../sepolicy/sepolicy/sepolicy.glade:2571 msgid "File Types defined for the 'selected domain'." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2571 +#: ../sepolicy/sepolicy/sepolicy.glade:2572 msgid "Application File Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2703 +#: ../sepolicy/sepolicy/sepolicy.glade:2704 msgid "Network Ports to which the 'selected domain' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2704 +#: ../sepolicy/sepolicy/sepolicy.glade:2705 msgid "Outbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2803 +#: ../sepolicy/sepolicy/sepolicy.glade:2804 msgid "Network Ports to which the 'selected domain' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2804 +#: ../sepolicy/sepolicy/sepolicy.glade:2805 msgid "Inbound" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2865 +#: ../sepolicy/sepolicy/sepolicy.glade:2866 +#: ../sepolicy/sepolicy/sepolicy.glade:2956 msgid "" -"Boolean \n" +"Boolean\n" "Enabled" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2891 +#: ../sepolicy/sepolicy/sepolicy.glade:2892 msgid "Boolean name" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2908 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:2909 msgid "SELinux Application Type" -msgstr "نوع منفذ SELinux" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2929 +#: ../sepolicy/sepolicy/sepolicy.glade:2930 msgid "" "Executables which will transition to a different domain, when the 'selected " "domain' executes them." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2932 -msgid "Applicaton Transitions From 'select domain'" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:2955 -msgid "" -"Boolean\n" -"Enabled" +#: ../sepolicy/sepolicy/sepolicy.glade:2933 +msgid "Application Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2971 +#: ../sepolicy/sepolicy/sepolicy.glade:2972 msgid "Calling Process Domain" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:2987 +#: ../sepolicy/sepolicy/sepolicy.glade:2988 msgid "Executable File" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3011 +#: ../sepolicy/sepolicy/sepolicy.glade:3012 msgid "" "Executables which will transition to the 'selected domain', when executing a " "selected domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3012 +#: ../sepolicy/sepolicy/sepolicy.glade:3013 msgid "Application Transitions Into 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3027 +#: ../sepolicy/sepolicy/sepolicy.glade:3028 msgid "" "File Transitions define what happens when the current domain creates the " "content of a particular class in a directory of the destination type. " "Optionally a file name could be specified for the transition." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3035 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:3036 msgid "SELinux Directory Type" -msgstr "نوع منفذ SELinux" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3048 +#: ../sepolicy/sepolicy/sepolicy.glade:3049 msgid "Destination Class" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3062 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:3063 msgid "SELinux Destination Type" -msgstr "نوع منفذ SELinux" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3075 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:3076 msgid "File Name" -msgstr "اسم الوحدة" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3097 +#: ../sepolicy/sepolicy/sepolicy.glade:3098 msgid "File Transitions From 'select domain'" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3296 -#: ../sepolicy/sepolicy/sepolicy.glade:5277 -#: ../sepolicy/sepolicy/sepolicy.glade:5518 +#: ../sepolicy/sepolicy/sepolicy.glade:3297 +#: ../sepolicy/sepolicy/sepolicy.glade:5508 msgid "Default Level" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3382 +#: ../sepolicy/sepolicy/sepolicy.glade:3383 msgid "Select the system mode when the system first boots up" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3455 +#: ../sepolicy/sepolicy/sepolicy.glade:3456 msgid "Select the system mode for the current session" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3532 +#: ../sepolicy/sepolicy/sepolicy.glade:3533 msgid "System Policy Type:" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3593 +#: ../sepolicy/sepolicy/sepolicy.glade:3594 msgid "System Mode" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3631 +#: ../sepolicy/sepolicy/sepolicy.glade:3632 msgid "Import system settings from another machine" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3639 +#: ../sepolicy/sepolicy/sepolicy.glade:3640 msgid "Import" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3658 +#: ../sepolicy/sepolicy/sepolicy.glade:3659 msgid "Export system settings to a file" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3668 +#: ../sepolicy/sepolicy/sepolicy.glade:3669 msgid "Export" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3687 +#: ../sepolicy/sepolicy/sepolicy.glade:3688 msgid "Relabel all files back to system defaults on reboot" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3724 -#: ../sepolicy/sepolicy/sepolicy.glade:3825 -#: ../sepolicy/sepolicy/sepolicy.glade:3889 -#: ../sepolicy/sepolicy/sepolicy.glade:3952 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3725 +#: ../sepolicy/sepolicy/sepolicy.glade:3826 +#: ../sepolicy/sepolicy/sepolicy.glade:3890 +#: ../sepolicy/sepolicy/sepolicy.glade:3953 ../sepolicy/sepolicy/gui.py:64 msgid "Yes" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3741 -#: ../sepolicy/sepolicy/sepolicy.glade:3843 -#: ../sepolicy/sepolicy/sepolicy.glade:3906 -#: ../sepolicy/sepolicy/sepolicy.glade:3969 ../sepolicy/sepolicy/gui.py:60 +#: ../sepolicy/sepolicy/sepolicy.glade:3742 +#: ../sepolicy/sepolicy/sepolicy.glade:3844 +#: ../sepolicy/sepolicy/sepolicy.glade:3907 +#: ../sepolicy/sepolicy/sepolicy.glade:3970 ../sepolicy/sepolicy/gui.py:64 msgid "No" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3782 +#: ../sepolicy/sepolicy/sepolicy.glade:3783 msgid "System Configuration" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3829 -#: ../sepolicy/sepolicy/sepolicy.glade:3847 +#: ../sepolicy/sepolicy/sepolicy.glade:3830 +#: ../sepolicy/sepolicy/sepolicy.glade:3848 msgid "" "An unconfined domain is a process label that allows the process to do what " "it wants, without SELinux interfering. Applications started at boot by the " @@ -4386,13 +4425,13 @@ msgid "" "unconfined_t from the users/login screens." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3865 +#: ../sepolicy/sepolicy/sepolicy.glade:3866 msgid "Disable ability to run unconfined system processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3893 -#: ../sepolicy/sepolicy/sepolicy.glade:3910 -#: ../sepolicy/sepolicy/sepolicy.glade:3973 +#: ../sepolicy/sepolicy/sepolicy.glade:3894 +#: ../sepolicy/sepolicy/sepolicy.glade:3911 +#: ../sepolicy/sepolicy/sepolicy.glade:3974 msgid "" "An permissive domain is a process label that allows the process to do what " "it wants, with SELinux only logging the denials, but not enforcing them. " @@ -4401,11 +4440,11 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3928 +#: ../sepolicy/sepolicy/sepolicy.glade:3929 msgid "Disable all permissive processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3956 +#: ../sepolicy/sepolicy/sepolicy.glade:3957 msgid "" "A permissive domain is a process label that allows the process to do what it " "wants, with SELinux only logging the denials, but not enforcing them. " @@ -4414,173 +4453,189 @@ msgid "" "allowed." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:3994 +#: ../sepolicy/sepolicy/sepolicy.glade:3995 msgid "Deny all processes from ptracing or debugging other processes?" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4031 +#: ../sepolicy/sepolicy/sepolicy.glade:4032 msgid "" "File equivalence cause the system to label content under the new path as if " "it were under the equivalence path." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4087 +#: ../sepolicy/sepolicy/sepolicy.glade:4088 msgid "Files Equivalence" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4100 +#: ../sepolicy/sepolicy/sepolicy.glade:4101 msgid "...SELECT TO VIEW DATA..." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4131 +#: ../sepolicy/sepolicy/sepolicy.glade:4132 msgid "Delete" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4147 +#: ../sepolicy/sepolicy/sepolicy.glade:4148 msgid "Modify" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4208 +#: ../sepolicy/sepolicy/sepolicy.glade:4209 msgid "Revert" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4213 +#: ../sepolicy/sepolicy/sepolicy.glade:4214 msgid "" "Revert button will launch a dialog window which allows you to revert changes " "within the current transaction." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4225 ../sepolicy/sepolicy/gui.py:2379 +#: ../sepolicy/sepolicy/sepolicy.glade:4226 ../sepolicy/sepolicy/gui.py:2416 msgid "Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4230 +#: ../sepolicy/sepolicy/sepolicy.glade:4231 msgid "Commit all changes in your current transaction to the server." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4278 +#: ../sepolicy/sepolicy/sepolicy.glade:4279 msgid "Applications - Advanced Search" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4331 -msgid "Installed" -msgstr "" - -#: ../sepolicy/sepolicy/sepolicy.glade:4383 +#: ../sepolicy/sepolicy/sepolicy.glade:4344 msgid "Process Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4424 +#: ../sepolicy/sepolicy/sepolicy.glade:4385 msgid "More Details" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4460 -#: ../sepolicy/sepolicy/sepolicy.glade:4754 +#: ../sepolicy/sepolicy/sepolicy.glade:4421 +#: ../sepolicy/sepolicy/sepolicy.glade:4715 msgid "Delete Modified File Labeling" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4478 +#: ../sepolicy/sepolicy/sepolicy.glade:4439 msgid "" "Select file labeling to delete. File labeling will be deleted when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4486 msgid "SELinux File Label" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4564 -#: ../sepolicy/sepolicy/sepolicy.glade:4714 -#: ../sepolicy/sepolicy/sepolicy.glade:4844 +#: ../sepolicy/sepolicy/sepolicy.glade:4525 +#: ../sepolicy/sepolicy/sepolicy.glade:4675 +#: ../sepolicy/sepolicy/sepolicy.glade:4806 +#: ../sepolicy/sepolicy/sepolicy.glade:4940 +#: ../sepolicy/sepolicy/sepolicy.glade:5289 msgid "Save to Update" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4604 +#: ../sepolicy/sepolicy/sepolicy.glade:4565 msgid "Delete Modified Ports" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4622 +#: ../sepolicy/sepolicy/sepolicy.glade:4583 msgid "Select ports to delete. Ports will be deleted when update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4771 +#: ../sepolicy/sepolicy/sepolicy.glade:4733 +msgid "" +"Select file equivalence labeling to delete. File equivalence labeling will " +"be deleted when update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4849 +#: ../sepolicy/sepolicy/sepolicy.glade:5198 +msgid "Delete Modified Users Mapping." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4867 msgid "" -"Select file equivalence labeling to delete.File equivalence labeling will be " -"deleted when update is applied." +"Select login user mapping to delete. Login user mapping will be deleted when " +"update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4887 +#: ../sepolicy/sepolicy/sepolicy.glade:4902 +msgid "Login name" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:4983 msgid "More Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4914 +#: ../sepolicy/sepolicy/sepolicy.glade:5010 msgid "Types" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:4973 +#: ../sepolicy/sepolicy/sepolicy.glade:5069 msgid "" "Review the updates you have made before committing them to the system. To " "reset an item, uncheck the checkbox. All items checked will be updated in " "the system when you select update." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5036 +#: ../sepolicy/sepolicy/sepolicy.glade:5132 msgid "Action" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5062 +#: ../sepolicy/sepolicy/sepolicy.glade:5158 msgid "Apply" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5119 -#: ../sepolicy/sepolicy/sepolicy.glade:5360 +#: ../sepolicy/sepolicy/sepolicy.glade:5216 +msgid "" +"Select users mapping to delete.Users mapping will be deleted when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5264 +msgid "SELinux Username" +msgstr "" + +#: ../sepolicy/sepolicy/sepolicy.glade:5349 msgid "" "Add User Roles. SELinux User Roles will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5144 -#: ../sepolicy/sepolicy/sepolicy.glade:5385 -#, fuzzy +#: ../sepolicy/sepolicy/sepolicy.glade:5374 msgid "SELinux User Name" -msgstr "مستخدم SELinux" +msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5258 -#: ../sepolicy/sepolicy/sepolicy.glade:5499 +#: ../sepolicy/sepolicy/sepolicy.glade:5489 msgid "" "Enter MLS/MCS Range for this SELinux User.\n" "s0-s0:c1023" msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5289 -#: ../sepolicy/sepolicy/sepolicy.glade:5530 +#: ../sepolicy/sepolicy/sepolicy.glade:5520 msgid "" "Specify the default level that you would like this SELinux user to login " "with. Defaults to s0." msgstr "" -#: ../sepolicy/sepolicy/sepolicy.glade:5293 -#: ../sepolicy/sepolicy/sepolicy.glade:5534 +#: ../sepolicy/sepolicy/sepolicy.glade:5524 msgid "Enter Default Level for SELinux User to login with. Default s0" msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:65 msgid "Disable" -msgstr "معطّل" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:61 +#: ../sepolicy/sepolicy/gui.py:65 msgid "Enable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:66 +#: ../sepolicy/sepolicy/gui.py:68 msgid "Advanced <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:67 +#: ../sepolicy/sepolicy/gui.py:69 msgid "Advanced Search <<" msgstr "" -#: ../sepolicy/sepolicy/gui.py:92 +#: ../sepolicy/sepolicy/gui.py:94 msgid "" "\n" "To change from Disabled to Enforcing mode\n" @@ -4590,520 +4645,536 @@ msgid "" " * Change the system mode to Enforcing\n" msgstr "" -#: ../sepolicy/sepolicy/gui.py:115 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:488 +#, python-format msgid "%s is not a valid domain" -msgstr "%s ليس سياقا صالحا\n" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:624 +#: ../sepolicy/sepolicy/gui.py:636 msgid "System Status: Disabled" msgstr "" -#: ../sepolicy/sepolicy/gui.py:722 +#: ../sepolicy/sepolicy/gui.py:734 msgid "Help: Start Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:726 +#: ../sepolicy/sepolicy/gui.py:738 msgid "Help: Booleans Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:732 +#: ../sepolicy/sepolicy/gui.py:744 msgid "Help: Executable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:735 +#: ../sepolicy/sepolicy/gui.py:747 msgid "Help: Writable Files Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:738 +#: ../sepolicy/sepolicy/gui.py:750 msgid "Help: Application Types Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:743 +#: ../sepolicy/sepolicy/gui.py:755 msgid "Help: Outbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:746 +#: ../sepolicy/sepolicy/gui.py:758 msgid "Help: Inbound Network Connections Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:752 +#: ../sepolicy/sepolicy/gui.py:764 msgid "Help: Transition from application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:755 +#: ../sepolicy/sepolicy/gui.py:767 msgid "Help: Transition into application Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:758 +#: ../sepolicy/sepolicy/gui.py:770 msgid "Help: Transition application file Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:762 +#: ../sepolicy/sepolicy/gui.py:774 msgid "Help: Systems Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:766 +#: ../sepolicy/sepolicy/gui.py:778 msgid "Help: Lockdown Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:770 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:782 msgid "Help: Login Page" -msgstr "اسم الدخول" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:774 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:786 msgid "Help: SELinux User Page" -msgstr "مستخدم SELinux" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:778 +#: ../sepolicy/sepolicy/gui.py:790 msgid "Help: File Equivalence Page" msgstr "" -#: ../sepolicy/sepolicy/gui.py:922 ../sepolicy/sepolicy/gui.py:1211 -#: ../sepolicy/sepolicy/gui.py:1644 ../sepolicy/sepolicy/gui.py:1885 -#: ../sepolicy/sepolicy/gui.py:2698 +#: ../sepolicy/sepolicy/gui.py:936 ../sepolicy/sepolicy/gui.py:1227 +#: ../sepolicy/sepolicy/gui.py:1667 ../sepolicy/sepolicy/gui.py:1913 +#: ../sepolicy/sepolicy/gui.py:2692 msgid "More..." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1031 +#: ../sepolicy/sepolicy/gui.py:1044 #, python-format msgid "File path used to enter the '%s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1032 +#: ../sepolicy/sepolicy/gui.py:1045 #, python-format msgid "Files to which the '%s' domain can write." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1033 +#: ../sepolicy/sepolicy/gui.py:1046 #, python-format msgid "Network Ports to which the '%s' is allowed to connect." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1034 +#: ../sepolicy/sepolicy/gui.py:1047 #, python-format msgid "Network Ports to which the '%s' is allowed to listen." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1035 +#: ../sepolicy/sepolicy/gui.py:1048 #, python-format msgid "File Types defined for the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1036 +#: ../sepolicy/sepolicy/gui.py:1049 #, python-format msgid "" "Display boolean information that can be used to modify the policy for the " "'%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1037 +#: ../sepolicy/sepolicy/gui.py:1050 #, python-format msgid "Display file type information that can be used by the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1038 +#: ../sepolicy/sepolicy/gui.py:1051 #, python-format msgid "Display network ports to which the '%s' can connect or listen to." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1039 +#: ../sepolicy/sepolicy/gui.py:1052 #, python-format msgid "Application Transitions Into '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1040 +#: ../sepolicy/sepolicy/gui.py:1053 #, python-format msgid "Application Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1041 +#: ../sepolicy/sepolicy/gui.py:1054 #, python-format msgid "File Transitions From '%s'" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1042 +#: ../sepolicy/sepolicy/gui.py:1055 #, python-format msgid "" "Executables which will transition to the '%s', when executing a selected " "domains entrypoint." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1043 +#: ../sepolicy/sepolicy/gui.py:1056 #, python-format msgid "" "Executables which will transition to a different domain, when the '%s' " "executes them." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1044 +#: ../sepolicy/sepolicy/gui.py:1057 #, python-format msgid "Files by '%s' will transitions to a different label." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1045 +#: ../sepolicy/sepolicy/gui.py:1058 #, python-format msgid "Display applications that can transition into or out of the '%s'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1149 +#: ../sepolicy/sepolicy/gui.py:1166 msgid "MISSING FILE PATH" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1281 ../sepolicy/sepolicy/gui.py:1283 msgid "Boolean section." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1265 +#: ../sepolicy/sepolicy/gui.py:1281 msgid "To disable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1267 +#: ../sepolicy/sepolicy/gui.py:1283 msgid "To enable this transition, go to the " msgstr "" -#: ../sepolicy/sepolicy/gui.py:1324 +#: ../sepolicy/sepolicy/gui.py:1340 msgid "executable" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1327 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:1343 msgid "writable" -msgstr "معطّل" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:1330 +#: ../sepolicy/sepolicy/gui.py:1346 msgid "application" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1331 +#: ../sepolicy/sepolicy/gui.py:1347 #, python-format -msgid "Add new %s file path for '%s' domains." +msgid "Add new %(TYPE)s file path for '%(DOMAIN)s' domains." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1332 +#: ../sepolicy/sepolicy/gui.py:1348 #, python-format -msgid "Delete modified %s file paths for '%s' domain." +msgid "Delete %(TYPE)s file paths for '%(DOMAIN)s' domain." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1333 +#: ../sepolicy/sepolicy/gui.py:1349 #, python-format msgid "" -"Modify selected modified %s file path for '%s' domain. Only bolded items in " -"the list can be selected, this indicates they were modified previously." +"Modify %(TYPE)s file path for '%(DOMAIN)s' domain. Only bolded items in the " +"list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1345 +#: ../sepolicy/sepolicy/gui.py:1361 msgid "connect" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1348 +#: ../sepolicy/sepolicy/gui.py:1364 msgid "listen for inbound connections" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1350 +#: ../sepolicy/sepolicy/gui.py:1366 #, python-format -msgid "Add new port definition to which the '%s' domains is allowed to %s." +msgid "" +"Add new port definition to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1351 +#: ../sepolicy/sepolicy/gui.py:1367 #, python-format msgid "" -"Delete modified port definitions to which the '%s' domain is allowed to %s." +"Delete modified port definitions to which the '%(APP)s' domain is allowed to " +"%(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1352 +#: ../sepolicy/sepolicy/gui.py:1368 #, python-format -msgid "Modify port definitions to which the '%s' domain is allowed to %s." +msgid "" +"Modify port definitions to which the '%(APP)s' domain is allowed to %(PERM)s." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1381 +#: ../sepolicy/sepolicy/gui.py:1397 msgid "Add new SELinux User/Role definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1382 +#: ../sepolicy/sepolicy/gui.py:1398 msgid "Delete modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1383 +#: ../sepolicy/sepolicy/gui.py:1399 msgid "Modify selected modified SELinux User/Role definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1390 +#: ../sepolicy/sepolicy/gui.py:1406 msgid "Add new Login Mapping definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1391 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:1407 msgid "Delete modified Login Mapping definitions." -msgstr "لا يمكن تغيير مخطط الدخول لـ %s" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:1392 +#: ../sepolicy/sepolicy/gui.py:1408 msgid "Modify selected modified Login Mapping definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1399 +#: ../sepolicy/sepolicy/gui.py:1415 msgid "Add new File Equivalence definition." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1400 +#: ../sepolicy/sepolicy/gui.py:1416 msgid "Delete modified File Equivalence definitions." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1401 +#: ../sepolicy/sepolicy/gui.py:1417 msgid "" "Modify selected modified File Equivalence definitions. Only bolded items in " "the list can be selected, this indicates they were modified previously." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1429 +#: ../sepolicy/sepolicy/gui.py:1445 #, python-format msgid "Boolean %s Allow Rules" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1442 +#: ../sepolicy/sepolicy/gui.py:1458 #, python-format msgid "Add Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1443 +#: ../sepolicy/sepolicy/gui.py:1459 #, python-format msgid "Add Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1448 +#: ../sepolicy/sepolicy/gui.py:1464 #, python-format msgid "" "Add File Labeling for %s. File labels will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1449 ../sepolicy/sepolicy/gui.py:1500 +#: ../sepolicy/sepolicy/gui.py:1465 ../sepolicy/sepolicy/gui.py:1518 #, python-format msgid "Add File Labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1459 +#: ../sepolicy/sepolicy/gui.py:1475 msgid "Add Login Mapping. User Mapping will be created when Update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1460 +#: ../sepolicy/sepolicy/gui.py:1476 msgid "Add Login Mapping" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1465 +#: ../sepolicy/sepolicy/gui.py:1481 msgid "" "Add SELinux User Role. SELinux user roles will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1466 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:1482 msgid "Add SELinux Users" -msgstr "مستخدم SELinux" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:1473 +#: ../sepolicy/sepolicy/gui.py:1489 msgid "" "Add File Equivalency Mapping. Mapping will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1474 +#: ../sepolicy/sepolicy/gui.py:1490 msgid "Add SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1499 +#: ../sepolicy/sepolicy/gui.py:1517 #, python-format msgid "" "Modify File Labeling for %s. File labels will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1566 +#: ../sepolicy/sepolicy/gui.py:1573 +msgid "" +"Modify SELinux User Role. SELinux user roles will be modified when update is " +"applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1574 +msgid "Modify SELinux Users" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1582 +msgid "" +"Modify Login Mapping. Login Mapping will be modified when Update is applied." +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1583 +msgid "Modify Login Mapping" +msgstr "" + +#: ../sepolicy/sepolicy/gui.py:1589 msgid "" "Modify File Equivalency Mapping. Mapping will be created when update is " "applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1567 +#: ../sepolicy/sepolicy/gui.py:1590 msgid "Modify SELinux File Equivalency" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1652 +#: ../sepolicy/sepolicy/gui.py:1675 #, python-format msgid "" "Modify Network Port for %s. Ports will be created when update is applied." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1653 +#: ../sepolicy/sepolicy/gui.py:1676 #, python-format msgid "Modify Network Port for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:1866 +#: ../sepolicy/sepolicy/gui.py:1894 #, python-format msgid "The entry '%s' is not a valid path. Paths must begin with a '/'." msgstr "" -#: ../sepolicy/sepolicy/gui.py:1879 +#: ../sepolicy/sepolicy/gui.py:1907 msgid "Port number must be between 1 and 65536" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2146 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2183 +#, python-format msgid "SELinux name: %s" -msgstr "أدوار SELinux" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2157 +#: ../sepolicy/sepolicy/gui.py:2194 #, python-format msgid "Add file labeling for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2159 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2196 +#, python-format msgid "Delete file labeling for %s" -msgstr "لا يمكن حذف سياق الملف لـ %s" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2161 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2198 +#, python-format msgid "Modify file labeling for %s" -msgstr "لا يمكن تعديل سياق الملف لـ %s" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2165 +#: ../sepolicy/sepolicy/gui.py:2202 #, python-format msgid "File path: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2168 +#: ../sepolicy/sepolicy/gui.py:2205 #, python-format msgid "File class: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2171 ../sepolicy/sepolicy/gui.py:2195 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2208 ../sepolicy/sepolicy/gui.py:2232 +#, python-format msgid "SELinux file type: %s" -msgstr "أدوار SELinux" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2180 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2217 +#, python-format msgid "Add ports for %s" -msgstr "بنية خاطئة %s: سجّل %s" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2182 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2219 +#, python-format msgid "Delete ports for %s" -msgstr "لا يمكن إنشاء منفذ لـ %s/%s" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2184 +#: ../sepolicy/sepolicy/gui.py:2221 #, python-format msgid "Modify ports for %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2187 +#: ../sepolicy/sepolicy/gui.py:2224 #, python-format msgid "Network ports: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2190 +#: ../sepolicy/sepolicy/gui.py:2227 #, python-format msgid "Network protocol: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2204 +#: ../sepolicy/sepolicy/gui.py:2241 msgid "Add user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2206 +#: ../sepolicy/sepolicy/gui.py:2243 msgid "Delete user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2208 +#: ../sepolicy/sepolicy/gui.py:2245 msgid "Modify user" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2211 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2248 +#, python-format msgid "SELinux User : %s" -msgstr "مستخدم SELinux" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2216 +#: ../sepolicy/sepolicy/gui.py:2253 #, python-format msgid "Roles: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2220 ../sepolicy/sepolicy/gui.py:2245 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2257 ../sepolicy/sepolicy/gui.py:2282 +#, python-format msgid "MLS/MCS Range: %s" -msgstr "مدى MLS/MCS" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2229 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:2266 msgid "Add login mapping" -msgstr "لا يمكن عرض قائمة تخطيطات الدخول" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2231 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:2268 msgid "Delete login mapping" -msgstr "لا يمكن حذف تخطيط الدخول لـ %s" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2233 -#, fuzzy +#: ../sepolicy/sepolicy/gui.py:2270 msgid "Modify login mapping" -msgstr "لا يمكن عرض قائمة تخطيطات الدخول" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2237 -#, fuzzy, python-format -msgid "Linux User : %s" -msgstr "مستخدم SELinux" +#: ../sepolicy/sepolicy/gui.py:2274 +#, python-format +msgid "Login Name : %s" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2241 -#, fuzzy, python-format +#: ../sepolicy/sepolicy/gui.py:2278 +#, python-format msgid "SELinux User: %s" -msgstr "مستخدم SELinux" +msgstr "" -#: ../sepolicy/sepolicy/gui.py:2254 +#: ../sepolicy/sepolicy/gui.py:2291 msgid "Add file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2256 +#: ../sepolicy/sepolicy/gui.py:2293 msgid "Delete file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2258 +#: ../sepolicy/sepolicy/gui.py:2295 msgid "Modify file equiv labeling." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2262 +#: ../sepolicy/sepolicy/gui.py:2299 #, python-format msgid "File path : %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2266 +#: ../sepolicy/sepolicy/gui.py:2303 #, python-format msgid "Equivalence: %s" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2369 +#: ../sepolicy/sepolicy/gui.py:2406 #, python-format -msgid "Run restorecon on %s to change its type from %s to the default %s?" +msgid "" +"Run restorecon on %(PATH)s to change its type from %(CUR_CONTEXT)s to the " +"default %(DEF_CONTEXT)s?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2381 +#: ../sepolicy/sepolicy/gui.py:2418 msgid "Update Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2383 +#: ../sepolicy/sepolicy/gui.py:2420 msgid "Revert Changes" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2556 +#: ../sepolicy/sepolicy/gui.py:2547 msgid "System Status: Enforcing" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2558 +#: ../sepolicy/sepolicy/gui.py:2549 msgid "System Status: Permissive" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2749 +#: ../sepolicy/sepolicy/gui.py:2743 msgid "" "Changing to SELinux disabled requires a reboot. It is not recommended. If " "you later decide to turn SELinux back on, the system will be required to " @@ -5113,7 +5184,7 @@ msgid "" "wish to continue?" msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "" "You are attempting to close the application without applying your changes.\n" " * To apply changes you have made during this session, click No and " @@ -5122,6 +5193,6 @@ msgid "" "All changes that you have made during this session will be lost." msgstr "" -#: ../sepolicy/sepolicy/gui.py:2783 +#: ../sepolicy/sepolicy/gui.py:2777 msgid "Loss of data Dialog" msgstr "" diff --git a/policycoreutils/po/as.po b/policycoreutils/po/as.po index 4689a67..09f3289 100644 --- a/policycoreutils/po/as.po +++ b/policycoreutils/po/as.po @@ -1,27 +1,26 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# +# # Translators: # Amitakhya Phukan , 2006 # Amitakhya Phukan , 2008-2010 # Amitakhya Phukan , 2008 # ngoswami , 2013 -# ngoswami , 2011-2013 +# ngoswami , 2011-2014 # ngoswami , 2013 msgid "" msgstr "" "Project-Id-Version: Policycoreutils\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-10-10 16:04-0400\n" -"PO-Revision-Date: 2013-07-19 09:56+0000\n" +"POT-Creation-Date: 2014-01-03 16:04-0500\n" +"PO-Revision-Date: 2014-01-10 10:24+0000\n" "Last-Translator: ngoswami \n" -"Language-Team: Assamese (http://www.transifex.com/projects/p/fedora/language/" -"as/)\n" -"Language: as\n" +"Language-Team: Assamese (http://www.transifex.com/projects/p/fedora/language/as/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Language: as\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../run_init/run_init.c:67 @@ -29,10 +28,7 @@ msgid "" "USAGE: run_init