plautrba pushed to policycoreutils (private-master-2.4). "Update to upstream release 2.4 from https://github.com/bachradsusi/selinux.git branch 2.4"

notifications at fedoraproject.org notifications at fedoraproject.org
Mon Apr 13 14:21:11 UTC 2015


>From be16d7c136c334faf5371b664d664e37ab82a061 Mon Sep 17 00:00:00 2001
From: Petr Lautrbach <plautrba at redhat.com>
Date: Mon, 13 Apr 2015 10:39:12 +0200
Subject: Update to upstream release 2.4 from
 https://github.com/bachradsusi/selinux.git branch 2.4


diff --git a/make-rhat-patches.sh b/make-rhat-patches.sh
index 080386d..2550bc1 100755
--- a/make-rhat-patches.sh
+++ b/make-rhat-patches.sh
@@ -1,13 +1,14 @@
 #!/bin/bash
 
-POLICYCOREUTILS_VERSION=2.3
-SEPOLGEN_VERSION=1.2.1
-BRANCH=master
+POLICYCOREUTILS_VERSION=2.4
+SEPOLGEN_VERSION=1.2.2
+BRANCH=2.4
 
 REBASEDIR=`mktemp -d rebase.XXXXXX`
 pushd $REBASEDIR
 
-git clone git at github.com:fedora-selinux/selinux.git
+# git clone git at github.com:fedora-selinux/selinux.git
+git clone https://github.com/bachradsusi/selinux.git
 pushd selinux; git checkout $BRANCH; COMMIT=`git rev-parse --verify HEAD`; popd
 
 # prepare policycoreutils-rhat.patch
diff --git a/policycoreutils-rhat.patch b/policycoreutils-rhat.patch
index 0ac9121..a202ae8 100644
--- a/policycoreutils-rhat.patch
+++ b/policycoreutils-rhat.patch
@@ -1,17 +1,17 @@
-diff --git a/policycoreutils-2.3/Makefile b/policycoreutils-2.3/Makefile
-index 83ebd45..bea9814 100644
---- a/policycoreutils-2.3/Makefile
-+++ b/policycoreutils-2.3/Makefile
+diff --git a/policycoreutils-2.4/Makefile b/policycoreutils-2.4/Makefile
+index 962ac12..6a9c40c 100644
+--- a/policycoreutils-2.4/Makefile
++++ b/policycoreutils-2.4/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 
+-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 hll
++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 hll semanage/default_encoding
  
  INOTIFYH = $(shell ls /usr/include/sys/inotify.h 2>/dev/null)
  
-diff --git a/policycoreutils-2.3/audit2allow/audit2allow b/policycoreutils-2.3/audit2allow/audit2allow
+diff --git a/policycoreutils-2.4/audit2allow/audit2allow b/policycoreutils-2.4/audit2allow/audit2allow
 index c9713a2..5c5bd6e 100644
---- a/policycoreutils-2.3/audit2allow/audit2allow
-+++ b/policycoreutils-2.3/audit2allow/audit2allow
+--- a/policycoreutils-2.4/audit2allow/audit2allow
++++ b/policycoreutils-2.4/audit2allow/audit2allow
 @@ -271,7 +271,7 @@ class AuditToPolicy:
                  if rc == audit2why.CONSTRAINT:
                      print #!!!! This avc is a constraint violation.  You would need to modify the attributes of either the source or target types to allow this access.\n"
@@ -21,10 +21,10 @@ index c9713a2..5c5bd6e 100644
                      for reason in data[1:]:
                          print "#\tPossible cause is the source %s and target %s are different.\n" % reason
  
-diff --git a/policycoreutils-2.3/audit2allow/sepolgen-ifgen b/policycoreutils-2.3/audit2allow/sepolgen-ifgen
+diff --git a/policycoreutils-2.4/audit2allow/sepolgen-ifgen b/policycoreutils-2.4/audit2allow/sepolgen-ifgen
 index 83c7ecf..7f8caaf 100644
---- a/policycoreutils-2.3/audit2allow/sepolgen-ifgen
-+++ b/policycoreutils-2.3/audit2allow/sepolgen-ifgen
+--- a/policycoreutils-2.4/audit2allow/sepolgen-ifgen
++++ b/policycoreutils-2.4/audit2allow/sepolgen-ifgen
 @@ -82,7 +82,7 @@ def get_attrs(policy_path):
              sys.stderr.write("No installed policy to check\n")
              return None
@@ -65,10 +65,10 @@ index 83c7ecf..7f8caaf 100644
          return 1
  
      if_set = interfaces.InterfaceSet(output=log)
-diff --git a/policycoreutils-2.3/gui/Makefile b/policycoreutils-2.3/gui/Makefile
+diff --git a/policycoreutils-2.4/gui/Makefile b/policycoreutils-2.4/gui/Makefile
 index 9d9f820..0c2b390 100644
---- a/policycoreutils-2.3/gui/Makefile
-+++ b/policycoreutils-2.3/gui/Makefile
+--- a/policycoreutils-2.4/gui/Makefile
++++ b/policycoreutils-2.4/gui/Makefile
 @@ -12,7 +12,6 @@ domainsPage.py \
  fcontextPage.py \
  html_util.py \
@@ -77,10 +77,10 @@ index 9d9f820..0c2b390 100644
  modulesPage.py \
  polgen.glade \
  portsPage.py \
-diff --git a/policycoreutils-2.3/gui/booleansPage.py b/policycoreutils-2.3/gui/booleansPage.py
+diff --git a/policycoreutils-2.4/gui/booleansPage.py b/policycoreutils-2.4/gui/booleansPage.py
 index eee954d..0c4b14b 100644
---- a/policycoreutils-2.3/gui/booleansPage.py
-+++ b/policycoreutils-2.3/gui/booleansPage.py
+--- a/policycoreutils-2.4/gui/booleansPage.py
++++ b/policycoreutils-2.4/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.
@@ -190,10 +190,10 @@ index eee954d..0c4b14b 100644
          self.ready()
  
      def on_local_clicked(self, button):
-diff --git a/policycoreutils-2.3/gui/domainsPage.py b/policycoreutils-2.3/gui/domainsPage.py
+diff --git a/policycoreutils-2.4/gui/domainsPage.py b/policycoreutils-2.4/gui/domainsPage.py
 index 6af1e9a..39a4574 100644
---- a/policycoreutils-2.3/gui/domainsPage.py
-+++ b/policycoreutils-2.3/gui/domainsPage.py
+--- a/policycoreutils-2.4/gui/domainsPage.py
++++ b/policycoreutils-2.4/gui/domainsPage.py
 @@ -20,7 +20,7 @@ import string
  import gtk
  import gtk.glade
@@ -269,10 +269,10 @@ index 6af1e9a..39a4574 100644
 +        except subprocess.CalledProcessError as e:
 +            self.error(e.output)
 +        self.ready()
-diff --git a/policycoreutils-2.3/gui/fcontextPage.py b/policycoreutils-2.3/gui/fcontextPage.py
+diff --git a/policycoreutils-2.4/gui/fcontextPage.py b/policycoreutils-2.4/gui/fcontextPage.py
 index 131f1c2..9a34143 100644
---- a/policycoreutils-2.3/gui/fcontextPage.py
-+++ b/policycoreutils-2.3/gui/fcontextPage.py
+--- a/policycoreutils-2.4/gui/fcontextPage.py
++++ b/policycoreutils-2.4/gui/fcontextPage.py
 @@ -18,10 +18,9 @@
  ## Author: Dan Walsh
  import gtk
@@ -502,10 +502,10 @@ index 131f1c2..9a34143 100644
 -        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-2.3/gui/html_util.py b/policycoreutils-2.3/gui/html_util.py
+diff --git a/policycoreutils-2.4/gui/html_util.py b/policycoreutils-2.4/gui/html_util.py
 index 68eed76..32de37a 100644
---- a/policycoreutils-2.3/gui/html_util.py
-+++ b/policycoreutils-2.3/gui/html_util.py
+--- a/policycoreutils-2.4/gui/html_util.py
++++ b/policycoreutils-2.4/gui/html_util.py
 @@ -30,7 +30,8 @@ import htmllib
  import formatter as Formatter
  import string
@@ -543,10 +543,10 @@ index 68eed76..32de37a 100644
              result = body_component()
              if type(result) in [TupleType, ListType]:
                  for item in result:
-diff --git a/policycoreutils-2.3/gui/loginsPage.py b/policycoreutils-2.3/gui/loginsPage.py
+diff --git a/policycoreutils-2.4/gui/loginsPage.py b/policycoreutils-2.4/gui/loginsPage.py
 index ec29fd9..8a1c0b7 100644
---- a/policycoreutils-2.3/gui/loginsPage.py
-+++ b/policycoreutils-2.3/gui/loginsPage.py
+--- a/policycoreutils-2.4/gui/loginsPage.py
++++ b/policycoreutils-2.4/gui/loginsPage.py
 @@ -16,13 +16,10 @@
  ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  
@@ -747,10 +747,10 @@ index ec29fd9..8a1c0b7 100644
 -        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-2.3/gui/modulesPage.py b/policycoreutils-2.3/gui/modulesPage.py
+diff --git a/policycoreutils-2.4/gui/modulesPage.py b/policycoreutils-2.4/gui/modulesPage.py
 index 9ff0766..a52863e 100644
---- a/policycoreutils-2.3/gui/modulesPage.py
-+++ b/policycoreutils-2.3/gui/modulesPage.py
+--- a/policycoreutils-2.4/gui/modulesPage.py
++++ b/policycoreutils-2.4/gui/modulesPage.py
 @@ -20,7 +20,7 @@ import string
  import gtk
  import gtk.glade
@@ -925,10 +925,10 @@ index 9ff0766..a52863e 100644
 +        except subprocess.CalledProcessError as e:
 +            self.error(e.output)
 +        self.ready()
-diff --git a/policycoreutils-2.3/gui/polgen.glade b/policycoreutils-2.3/gui/polgen.glade
+diff --git a/policycoreutils-2.4/gui/polgen.glade b/policycoreutils-2.4/gui/polgen.glade
 index 37c1472..9854fb2 100644
---- a/policycoreutils-2.3/gui/polgen.glade
-+++ b/policycoreutils-2.3/gui/polgen.glade
+--- a/policycoreutils-2.4/gui/polgen.glade
++++ b/policycoreutils-2.4/gui/polgen.glade
 @@ -758,7 +758,7 @@
                          <property name="can_focus">True</property>
                          <property name="receives_default">False</property>
@@ -1019,10 +1019,10 @@ index 37c1472..9854fb2 100644
                </widget>
                <packing>
                  <property name="expand">False</property>
-diff --git a/policycoreutils-2.3/gui/polgengui.py b/policycoreutils-2.3/gui/polgengui.py
+diff --git a/policycoreutils-2.4/gui/polgengui.py b/policycoreutils-2.4/gui/polgengui.py
 index 0f0e564..1b88c47 100644
---- a/policycoreutils-2.3/gui/polgengui.py
-+++ b/policycoreutils-2.3/gui/polgengui.py
+--- a/policycoreutils-2.4/gui/polgengui.py
++++ b/policycoreutils-2.4/gui/polgengui.py
 @@ -30,29 +30,15 @@ import gnome
  import sys
  try:
@@ -1140,10 +1140,10 @@ index 0f0e564..1b88c47 100644
                  iter = self.store.append()
                  self.store.set_value(iter, 0, f)
                  self.store.set_value(iter, 1, DIR)
-diff --git a/policycoreutils-2.3/gui/portsPage.py b/policycoreutils-2.3/gui/portsPage.py
+diff --git a/policycoreutils-2.4/gui/portsPage.py b/policycoreutils-2.4/gui/portsPage.py
 index bfb4e36..e6c87c5 100644
---- a/policycoreutils-2.3/gui/portsPage.py
-+++ b/policycoreutils-2.3/gui/portsPage.py
+--- a/policycoreutils-2.4/gui/portsPage.py
++++ b/policycoreutils-2.4/gui/portsPage.py
 @@ -16,14 +16,11 @@
  ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  
@@ -1396,10 +1396,10 @@ index bfb4e36..e6c87c5 100644
  
      def on_group_clicked(self, button):
          self.ports_add_button.set_sensitive(self.group)
-diff --git a/policycoreutils-2.3/gui/semanagePage.py b/policycoreutils-2.3/gui/semanagePage.py
+diff --git a/policycoreutils-2.4/gui/semanagePage.py b/policycoreutils-2.4/gui/semanagePage.py
 index 3a0e478..040a4f8 100644
---- a/policycoreutils-2.3/gui/semanagePage.py
-+++ b/policycoreutils-2.3/gui/semanagePage.py
+--- a/policycoreutils-2.4/gui/semanagePage.py
++++ b/policycoreutils-2.4/gui/semanagePage.py
 @@ -37,8 +37,8 @@ try:
                      unicode=False,
                      codeset = 'utf-8')
@@ -1490,10 +1490,10 @@ index 3a0e478..040a4f8 100644
                  self.error(e.args[0])
          self.dialog.hide()
  
-diff --git a/policycoreutils-2.3/gui/statusPage.py b/policycoreutils-2.3/gui/statusPage.py
+diff --git a/policycoreutils-2.4/gui/statusPage.py b/policycoreutils-2.4/gui/statusPage.py
 index 02685f2..6510d2a 100644
---- a/policycoreutils-2.3/gui/statusPage.py
-+++ b/policycoreutils-2.3/gui/statusPage.py
+--- a/policycoreutils-2.4/gui/statusPage.py
++++ b/policycoreutils-2.4/gui/statusPage.py
 @@ -16,18 +16,14 @@
  ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  
@@ -1574,10 +1574,10 @@ index 02685f2..6510d2a 100644
                  continue
              fd.write(l)
          fd.close()
-diff --git a/policycoreutils-2.3/gui/system-config-selinux.py b/policycoreutils-2.3/gui/system-config-selinux.py
+diff --git a/policycoreutils-2.4/gui/system-config-selinux.py b/policycoreutils-2.4/gui/system-config-selinux.py
 index bc3027e..9482fa5 100644
---- a/policycoreutils-2.3/gui/system-config-selinux.py
-+++ b/policycoreutils-2.3/gui/system-config-selinux.py
+--- a/policycoreutils-2.4/gui/system-config-selinux.py
++++ b/policycoreutils-2.4/gui/system-config-selinux.py
 @@ -25,9 +25,9 @@ import string
  import sys
  try:
@@ -1611,10 +1611,10 @@ index bc3027e..9482fa5 100644
                  self.error(e.message)
  
          xml.signal_connect("on_quit_activate", self.destroy)
-diff --git a/policycoreutils-2.3/gui/usersPage.py b/policycoreutils-2.3/gui/usersPage.py
+diff --git a/policycoreutils-2.4/gui/usersPage.py b/policycoreutils-2.4/gui/usersPage.py
 index 93804ac..1451903 100644
---- a/policycoreutils-2.3/gui/usersPage.py
-+++ b/policycoreutils-2.3/gui/usersPage.py
+--- a/policycoreutils-2.4/gui/usersPage.py
++++ b/policycoreutils-2.4/gui/usersPage.py
 @@ -16,13 +16,10 @@
  ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  
@@ -1778,11 +1778,20 @@ index 93804ac..1451903 100644
 -        except ValueError, e:
 +        except ValueError as e:
              self.error(e.args[0])
-diff --git a/policycoreutils-2.3/newrole/newrole.c b/policycoreutils-2.3/newrole/newrole.c
-index dfb8c7f..4e59a06 100644
---- a/policycoreutils-2.3/newrole/newrole.c
-+++ b/policycoreutils-2.3/newrole/newrole.c
-@@ -547,9 +547,7 @@ static int drop_capabilities(int full)
+diff --git a/policycoreutils-2.4/newrole/newrole.c b/policycoreutils-2.4/newrole/newrole.c
+index 94794e9..55e8d39 100644
+--- a/policycoreutils-2.4/newrole/newrole.c
++++ b/policycoreutils-2.4/newrole/newrole.c
+@@ -278,7 +278,7 @@ static int process_pam_config(FILE * cfg)
+ 			continue;
+ 
+ 		app = service = NULL;
+-		ret = sscanf(buffer, "%as %as\n", &app, &service);
++		ret = sscanf(buffer, "%ms %ms\n", &app, &service);
+ 		if (ret < 2 || !app || !service)
+ 			goto err;
+ 
+@@ -546,9 +546,7 @@ static int drop_capabilities(int full)
  	if (!uid) return 0;
  
  	capng_setpid(getpid());
@@ -1793,7 +1802,7 @@ index dfb8c7f..4e59a06 100644
  
  	/* Change uid */
  	if (setresuid(uid, uid, uid)) {
-@@ -558,7 +556,7 @@ static int drop_capabilities(int full)
+@@ -557,7 +555,7 @@ static int drop_capabilities(int full)
  	}
  	if (! full) 
  		capng_update(CAPNG_ADD, CAPNG_EFFECTIVE | CAPNG_PERMITTED, CAP_AUDIT_WRITE);
@@ -1802,7 +1811,7 @@ index dfb8c7f..4e59a06 100644
  }
  #elif defined(NAMESPACE_PRIV)
  /**
-@@ -576,20 +574,21 @@ static int drop_capabilities(int full)
+@@ -575,20 +573,21 @@ static int drop_capabilities(int full)
   */
  static int drop_capabilities(int full)
  {
@@ -1830,7 +1839,7 @@ index dfb8c7f..4e59a06 100644
  }
  
  #else
-@@ -680,7 +679,7 @@ static int relabel_tty(const char *ttyn, security_context_t new_context,
+@@ -679,7 +678,7 @@ static int relabel_tty(const char *ttyn, security_context_t new_context,
  		       security_context_t * tty_context,
  		       security_context_t * new_tty_context)
  {
@@ -1839,7 +1848,7 @@ index dfb8c7f..4e59a06 100644
  	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,
+@@ -698,7 +697,13 @@ static int relabel_tty(const char *ttyn, security_context_t new_context,
  		fprintf(stderr, _("Error!  Could not open %s.\n"), ttyn);
  		return fd;
  	}
@@ -1854,7 +1863,7 @@ index dfb8c7f..4e59a06 100644
  
  	if (fgetfilecon(fd, &tty_con) < 0) {
  		fprintf(stderr, _("%s!  Could not get current context "
-@@ -1010,9 +1015,9 @@ int main(int argc, char *argv[])
+@@ -1009,9 +1014,9 @@ int main(int argc, char *argv[])
  	int fd;
  	pid_t childPid = 0;
  	char *shell_argv0 = NULL;
@@ -1865,7 +1874,16 @@ index dfb8c7f..4e59a06 100644
  	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[])
+@@ -1104,7 +1109,7 @@ int main(int argc, char *argv[])
+ 			 * command when invoked by newrole.
+ 			 */
+ 			char *cmd = NULL;
+-			rc = sscanf(argv[optind + 1], "%as", &cmd);
++			rc = sscanf(argv[optind + 1], "%ms", &cmd);
+ 			if (rc != EOF && cmd) {
+ 				char *app_service_name =
+ 				    (char *)hashtab_search(app_service_names,
+@@ -1222,18 +1227,26 @@ int main(int argc, char *argv[])
  			fprintf(stderr, _("Could not close descriptors.\n"));
  			goto err_close_pam;
  		}
@@ -1896,7 +1914,7 @@ index dfb8c7f..4e59a06 100644
  
  	}
  	/*
-@@ -1268,19 +1281,24 @@ int main(int argc, char *argv[])
+@@ -1267,19 +1280,24 @@ int main(int argc, char *argv[])
  	}
  #endif
  
@@ -1925,10 +1943,10 @@ index dfb8c7f..4e59a06 100644
  	/* Handle environment changes */
  	if (restore_environment(preserve_environment, old_environ, &pw)) {
  		fprintf(stderr, _("Unable to restore the environment, "
-diff --git a/policycoreutils-2.3/po/Makefile b/policycoreutils-2.3/po/Makefile
+diff --git a/policycoreutils-2.4/po/Makefile b/policycoreutils-2.4/po/Makefile
 index a693823..555f381 100644
---- a/policycoreutils-2.3/po/Makefile
-+++ b/policycoreutils-2.3/po/Makefile
+--- a/policycoreutils-2.4/po/Makefile
++++ b/policycoreutils-2.4/po/Makefile
 @@ -28,7 +28,7 @@ POTFILES = \
  	../run_init/run_init.c \
  	../semodule_link/semodule_link.c \
@@ -1983,10 +2001,10 @@ index a693823..555f381 100644
  	../sepolicy/info.c \
  	../sepolicy/search.c \
  	../sepolicy/sepolicy.py \
-diff --git a/policycoreutils-2.3/po/POTFILES b/policycoreutils-2.3/po/POTFILES
+diff --git a/policycoreutils-2.4/po/POTFILES b/policycoreutils-2.4/po/POTFILES
 index bcb9e99..ae25133 100644
---- a/policycoreutils-2.3/po/POTFILES
-+++ b/policycoreutils-2.3/po/POTFILES
+--- a/policycoreutils-2.4/po/POTFILES
++++ b/policycoreutils-2.4/po/POTFILES
 @@ -2,7 +2,7 @@
  	../run_init/run_init.c
  	../semodule_link/semodule_link.c
@@ -2041,10 +2059,10 @@ index bcb9e99..ae25133 100644
  	../sepolicy/info.c
  	../sepolicy/search.c
  	../sepolicy/sepolicy.py
-diff --git a/policycoreutils-2.3/po/POTFILES.in b/policycoreutils-2.3/po/POTFILES.in
+diff --git a/policycoreutils-2.4/po/POTFILES.in b/policycoreutils-2.4/po/POTFILES.in
 index aca0474..0ccb542 100644
---- a/policycoreutils-2.3/po/POTFILES.in
-+++ b/policycoreutils-2.3/po/POTFILES.in
+--- a/policycoreutils-2.4/po/POTFILES.in
++++ b/policycoreutils-2.4/po/POTFILES.in
 @@ -2,7 +2,7 @@ run_init/open_init_pty.c
  run_init/run_init.c
  semodule_link/semodule_link.c
@@ -2099,11 +2117,11 @@ index aca0474..0ccb542 100644
  sepolicy/sepolicy/transition.py
  sepolicy/sepolicy/templates/executable.py
  sepolicy/sepolicy/templates/__init__.py
-diff --git a/policycoreutils-2.3/po/ach.po b/policycoreutils-2.3/po/ach.po
+diff --git a/policycoreutils-2.4/po/ach.po b/policycoreutils-2.4/po/ach.po
 new file mode 100644
 index 0000000..0d84e13
 --- /dev/null
-+++ b/policycoreutils-2.3/po/ach.po
++++ b/policycoreutils-2.4/po/ach.po
 @@ -0,0 +1,5198 @@
 +# SOME DESCRIPTIVE TITLE.
 +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -7303,10 +7321,10 @@ index 0000000..0d84e13
 +#: ../sepolicy/sepolicy/gui.py:2777
 +msgid "Loss of data Dialog"
 +msgstr ""
-diff --git a/policycoreutils-2.3/po/af.po b/policycoreutils-2.3/po/af.po
+diff --git a/policycoreutils-2.4/po/af.po b/policycoreutils-2.4/po/af.po
 index e4a6e09..e3cd32f 100644
---- a/policycoreutils-2.3/po/af.po
-+++ b/policycoreutils-2.3/po/af.po
+--- a/policycoreutils-2.4/po/af.po
++++ b/policycoreutils-2.4/po/af.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -12566,10 +12584,10 @@ index e4a6e09..e3cd32f 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/af_ZA.po b/policycoreutils-2.3/po/af_ZA.po
+diff --git a/policycoreutils-2.4/po/af_ZA.po b/policycoreutils-2.4/po/af_ZA.po
 index fb0b1d9..6409e2a 100644
---- a/policycoreutils-2.3/po/af_ZA.po
-+++ b/policycoreutils-2.3/po/af_ZA.po
+--- a/policycoreutils-2.4/po/af_ZA.po
++++ b/policycoreutils-2.4/po/af_ZA.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -17829,10 +17847,10 @@ index fb0b1d9..6409e2a 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/aln.po b/policycoreutils-2.3/po/aln.po
+diff --git a/policycoreutils-2.4/po/aln.po b/policycoreutils-2.4/po/aln.po
 index 507644c..b7d66d0 100644
---- a/policycoreutils-2.3/po/aln.po
-+++ b/policycoreutils-2.3/po/aln.po
+--- a/policycoreutils-2.4/po/aln.po
++++ b/policycoreutils-2.4/po/aln.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -23092,10 +23110,10 @@ index 507644c..b7d66d0 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/am.po b/policycoreutils-2.3/po/am.po
+diff --git a/policycoreutils-2.4/po/am.po b/policycoreutils-2.4/po/am.po
 index db49486..7e68aa6 100644
---- a/policycoreutils-2.3/po/am.po
-+++ b/policycoreutils-2.3/po/am.po
+--- a/policycoreutils-2.4/po/am.po
++++ b/policycoreutils-2.4/po/am.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -28355,10 +28373,10 @@ index db49486..7e68aa6 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ar.po b/policycoreutils-2.3/po/ar.po
+diff --git a/policycoreutils-2.4/po/ar.po b/policycoreutils-2.4/po/ar.po
 index b03fb78..6eaa817 100644
---- a/policycoreutils-2.3/po/ar.po
-+++ b/policycoreutils-2.3/po/ar.po
+--- a/policycoreutils-2.4/po/ar.po
++++ b/policycoreutils-2.4/po/ar.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -33723,10 +33741,10 @@ index b03fb78..6eaa817 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/as.po b/policycoreutils-2.3/po/as.po
+diff --git a/policycoreutils-2.4/po/as.po b/policycoreutils-2.4/po/as.po
 index 4689a67..09f3289 100644
---- a/policycoreutils-2.3/po/as.po
-+++ b/policycoreutils-2.3/po/as.po
+--- a/policycoreutils-2.4/po/as.po
++++ b/policycoreutils-2.4/po/as.po
 @@ -1,27 +1,26 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -40096,10 +40114,10 @@ index 4689a67..09f3289 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK উপলব্ধ নহয়"
 +msgstr "তথ্যৰ ক্ষতি ডাইলগ"
-diff --git a/policycoreutils-2.3/po/ast.po b/policycoreutils-2.3/po/ast.po
+diff --git a/policycoreutils-2.4/po/ast.po b/policycoreutils-2.4/po/ast.po
 index 1a5bc23..4595f6e 100644
---- a/policycoreutils-2.3/po/ast.po
-+++ b/policycoreutils-2.3/po/ast.po
+--- a/policycoreutils-2.4/po/ast.po
++++ b/policycoreutils-2.4/po/ast.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -45358,10 +45376,10 @@ index 1a5bc23..4595f6e 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/az.po b/policycoreutils-2.3/po/az.po
+diff --git a/policycoreutils-2.4/po/az.po b/policycoreutils-2.4/po/az.po
 index 1936f49..c5a9b1f 100644
---- a/policycoreutils-2.3/po/az.po
-+++ b/policycoreutils-2.3/po/az.po
+--- a/policycoreutils-2.4/po/az.po
++++ b/policycoreutils-2.4/po/az.po
 @@ -1,22 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -50623,10 +50641,10 @@ index 1936f49..c5a9b1f 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/bal.po b/policycoreutils-2.3/po/bal.po
+diff --git a/policycoreutils-2.4/po/bal.po b/policycoreutils-2.4/po/bal.po
 index 31b8576..84c7667 100644
---- a/policycoreutils-2.3/po/bal.po
-+++ b/policycoreutils-2.3/po/bal.po
+--- a/policycoreutils-2.4/po/bal.po
++++ b/policycoreutils-2.4/po/bal.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -55885,10 +55903,10 @@ index 31b8576..84c7667 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/be.po b/policycoreutils-2.3/po/be.po
+diff --git a/policycoreutils-2.4/po/be.po b/policycoreutils-2.4/po/be.po
 index e9c7007..15635db 100644
---- a/policycoreutils-2.3/po/be.po
-+++ b/policycoreutils-2.3/po/be.po
+--- a/policycoreutils-2.4/po/be.po
++++ b/policycoreutils-2.4/po/be.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -61151,10 +61169,10 @@ index e9c7007..15635db 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/bg.po b/policycoreutils-2.3/po/bg.po
+diff --git a/policycoreutils-2.4/po/bg.po b/policycoreutils-2.4/po/bg.po
 index 1e71e74..b79a88b 100644
---- a/policycoreutils-2.3/po/bg.po
-+++ b/policycoreutils-2.3/po/bg.po
+--- a/policycoreutils-2.4/po/bg.po
++++ b/policycoreutils-2.4/po/bg.po
 @@ -1,23 +1,23 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -66897,10 +66915,10 @@ index 1e71e74..b79a88b 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/bn.po b/policycoreutils-2.3/po/bn.po
+diff --git a/policycoreutils-2.4/po/bn.po b/policycoreutils-2.4/po/bn.po
 index 1db7396..2a78eb7 100644
---- a/policycoreutils-2.3/po/bn.po
-+++ b/policycoreutils-2.3/po/bn.po
+--- a/policycoreutils-2.4/po/bn.po
++++ b/policycoreutils-2.4/po/bn.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -72158,10 +72176,10 @@ index 1db7396..2a78eb7 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/bn_IN.po b/policycoreutils-2.3/po/bn_IN.po
+diff --git a/policycoreutils-2.4/po/bn_IN.po b/policycoreutils-2.4/po/bn_IN.po
 index 3d3cd0b..708dbda 100644
---- a/policycoreutils-2.3/po/bn_IN.po
-+++ b/policycoreutils-2.3/po/bn_IN.po
+--- a/policycoreutils-2.4/po/bn_IN.po
++++ b/policycoreutils-2.4/po/bn_IN.po
 @@ -1,24 +1,27 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -78563,10 +78581,10 @@ index 3d3cd0b..708dbda 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "ডেটা ডায়লগ হারানো"
-diff --git a/policycoreutils-2.3/po/bo.po b/policycoreutils-2.3/po/bo.po
+diff --git a/policycoreutils-2.4/po/bo.po b/policycoreutils-2.4/po/bo.po
 index 8664488..ea90fc0 100644
---- a/policycoreutils-2.3/po/bo.po
-+++ b/policycoreutils-2.3/po/bo.po
+--- a/policycoreutils-2.4/po/bo.po
++++ b/policycoreutils-2.4/po/bo.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -83824,10 +83842,10 @@ index 8664488..ea90fc0 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/br.po b/policycoreutils-2.3/po/br.po
+diff --git a/policycoreutils-2.4/po/br.po b/policycoreutils-2.4/po/br.po
 index 5c08944..6b329b7 100644
---- a/policycoreutils-2.3/po/br.po
-+++ b/policycoreutils-2.3/po/br.po
+--- a/policycoreutils-2.4/po/br.po
++++ b/policycoreutils-2.4/po/br.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -89086,10 +89104,10 @@ index 5c08944..6b329b7 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/brx.po b/policycoreutils-2.3/po/brx.po
+diff --git a/policycoreutils-2.4/po/brx.po b/policycoreutils-2.4/po/brx.po
 index 3d6ccd2..a2b42b9 100644
---- a/policycoreutils-2.3/po/brx.po
-+++ b/policycoreutils-2.3/po/brx.po
+--- a/policycoreutils-2.4/po/brx.po
++++ b/policycoreutils-2.4/po/brx.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -94349,10 +94367,10 @@ index 3d6ccd2..a2b42b9 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/bs.po b/policycoreutils-2.3/po/bs.po
+diff --git a/policycoreutils-2.4/po/bs.po b/policycoreutils-2.4/po/bs.po
 index ec4c1d3..a2d31ae 100644
---- a/policycoreutils-2.3/po/bs.po
-+++ b/policycoreutils-2.3/po/bs.po
+--- a/policycoreutils-2.4/po/bs.po
++++ b/policycoreutils-2.4/po/bs.po
 @@ -1,34 +1,29 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -99687,10 +99705,10 @@ index ec4c1d3..a2d31ae 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ca.po b/policycoreutils-2.3/po/ca.po
+diff --git a/policycoreutils-2.4/po/ca.po b/policycoreutils-2.4/po/ca.po
 index 401e16f..5853b77 100644
---- a/policycoreutils-2.3/po/ca.po
-+++ b/policycoreutils-2.3/po/ca.po
+--- a/policycoreutils-2.4/po/ca.po
++++ b/policycoreutils-2.4/po/ca.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -105150,10 +105168,10 @@ index 401e16f..5853b77 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/cs.po b/policycoreutils-2.3/po/cs.po
+diff --git a/policycoreutils-2.4/po/cs.po b/policycoreutils-2.4/po/cs.po
 index 91d764b..fb59bca 100644
---- a/policycoreutils-2.3/po/cs.po
-+++ b/policycoreutils-2.3/po/cs.po
+--- a/policycoreutils-2.4/po/cs.po
++++ b/policycoreutils-2.4/po/cs.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -110420,10 +110438,10 @@ index 91d764b..fb59bca 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/cs_CZ.po b/policycoreutils-2.3/po/cs_CZ.po
+diff --git a/policycoreutils-2.4/po/cs_CZ.po b/policycoreutils-2.4/po/cs_CZ.po
 index 7f45f48..b27a708 100644
---- a/policycoreutils-2.3/po/cs_CZ.po
-+++ b/policycoreutils-2.3/po/cs_CZ.po
+--- a/policycoreutils-2.4/po/cs_CZ.po
++++ b/policycoreutils-2.4/po/cs_CZ.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -115683,10 +115701,10 @@ index 7f45f48..b27a708 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/cy.po b/policycoreutils-2.3/po/cy.po
+diff --git a/policycoreutils-2.4/po/cy.po b/policycoreutils-2.4/po/cy.po
 index c7ff335..1a27e75 100644
---- a/policycoreutils-2.3/po/cy.po
-+++ b/policycoreutils-2.3/po/cy.po
+--- a/policycoreutils-2.4/po/cy.po
++++ b/policycoreutils-2.4/po/cy.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -120949,10 +120967,10 @@ index c7ff335..1a27e75 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/da.po b/policycoreutils-2.3/po/da.po
+diff --git a/policycoreutils-2.4/po/da.po b/policycoreutils-2.4/po/da.po
 index 402c612..313bee6 100644
---- a/policycoreutils-2.3/po/da.po
-+++ b/policycoreutils-2.3/po/da.po
+--- a/policycoreutils-2.4/po/da.po
++++ b/policycoreutils-2.4/po/da.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -126319,10 +126337,10 @@ index 402c612..313bee6 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/de.po b/policycoreutils-2.3/po/de.po
+diff --git a/policycoreutils-2.4/po/de.po b/policycoreutils-2.4/po/de.po
 index f7ac23c..0d2f9cb 100644
---- a/policycoreutils-2.3/po/de.po
-+++ b/policycoreutils-2.3/po/de.po
+--- a/policycoreutils-2.4/po/de.po
++++ b/policycoreutils-2.4/po/de.po
 @@ -1,15 +1,17 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -132850,10 +132868,10 @@ index f7ac23c..0d2f9cb 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "Dialog zum Datenverlust"
-diff --git a/policycoreutils-2.3/po/de_CH.po b/policycoreutils-2.3/po/de_CH.po
+diff --git a/policycoreutils-2.4/po/de_CH.po b/policycoreutils-2.4/po/de_CH.po
 index 0016016..f45025d 100644
---- a/policycoreutils-2.3/po/de_CH.po
-+++ b/policycoreutils-2.3/po/de_CH.po
+--- a/policycoreutils-2.4/po/de_CH.po
++++ b/policycoreutils-2.4/po/de_CH.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -138113,10 +138131,10 @@ index 0016016..f45025d 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/dz.po b/policycoreutils-2.3/po/dz.po
+diff --git a/policycoreutils-2.4/po/dz.po b/policycoreutils-2.4/po/dz.po
 index 9a6ca3d..312184d 100644
---- a/policycoreutils-2.3/po/dz.po
-+++ b/policycoreutils-2.3/po/dz.po
+--- a/policycoreutils-2.4/po/dz.po
++++ b/policycoreutils-2.4/po/dz.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -143376,10 +143394,10 @@ index 9a6ca3d..312184d 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/el.po b/policycoreutils-2.3/po/el.po
+diff --git a/policycoreutils-2.4/po/el.po b/policycoreutils-2.4/po/el.po
 index d9844d0..3a5bc72 100644
---- a/policycoreutils-2.3/po/el.po
-+++ b/policycoreutils-2.3/po/el.po
+--- a/policycoreutils-2.4/po/el.po
++++ b/policycoreutils-2.4/po/el.po
 @@ -1,24 +1,24 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -148668,10 +148686,10 @@ index d9844d0..3a5bc72 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/en_GB.po b/policycoreutils-2.3/po/en_GB.po
+diff --git a/policycoreutils-2.4/po/en_GB.po b/policycoreutils-2.4/po/en_GB.po
 index b7312f5..fcdaa99 100644
---- a/policycoreutils-2.3/po/en_GB.po
-+++ b/policycoreutils-2.3/po/en_GB.po
+--- a/policycoreutils-2.4/po/en_GB.po
++++ b/policycoreutils-2.4/po/en_GB.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -154035,10 +154053,10 @@ index b7312f5..fcdaa99 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/en_US.po b/policycoreutils-2.3/po/en_US.po
+diff --git a/policycoreutils-2.4/po/en_US.po b/policycoreutils-2.4/po/en_US.po
 index f800b0c..f51e977 100644
---- a/policycoreutils-2.3/po/en_US.po
-+++ b/policycoreutils-2.3/po/en_US.po
+--- a/policycoreutils-2.4/po/en_US.po
++++ b/policycoreutils-2.4/po/en_US.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -159298,10 +159316,10 @@ index f800b0c..f51e977 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/eo.po b/policycoreutils-2.3/po/eo.po
+diff --git a/policycoreutils-2.4/po/eo.po b/policycoreutils-2.4/po/eo.po
 index 5370565..aa93858 100644
---- a/policycoreutils-2.3/po/eo.po
-+++ b/policycoreutils-2.3/po/eo.po
+--- a/policycoreutils-2.4/po/eo.po
++++ b/policycoreutils-2.4/po/eo.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -164561,10 +164579,10 @@ index 5370565..aa93858 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/es.po b/policycoreutils-2.3/po/es.po
+diff --git a/policycoreutils-2.4/po/es.po b/policycoreutils-2.4/po/es.po
 index 1bf427a..238ecdd 100644
---- a/policycoreutils-2.3/po/es.po
-+++ b/policycoreutils-2.3/po/es.po
+--- a/policycoreutils-2.4/po/es.po
++++ b/policycoreutils-2.4/po/es.po
 @@ -1,29 +1,33 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -171131,10 +171149,10 @@ index 1bf427a..238ecdd 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK no disponible"
 +msgstr "Pérdida de diálogo de datos."
-diff --git a/policycoreutils-2.3/po/es_ES.po b/policycoreutils-2.3/po/es_ES.po
+diff --git a/policycoreutils-2.4/po/es_ES.po b/policycoreutils-2.4/po/es_ES.po
 index da1777f..5b12202 100644
---- a/policycoreutils-2.3/po/es_ES.po
-+++ b/policycoreutils-2.3/po/es_ES.po
+--- a/policycoreutils-2.4/po/es_ES.po
++++ b/policycoreutils-2.4/po/es_ES.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -176394,10 +176412,10 @@ index da1777f..5b12202 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/et.po b/policycoreutils-2.3/po/et.po
+diff --git a/policycoreutils-2.4/po/et.po b/policycoreutils-2.4/po/et.po
 index a89b95f..85a5aa6 100644
---- a/policycoreutils-2.3/po/et.po
-+++ b/policycoreutils-2.3/po/et.po
+--- a/policycoreutils-2.4/po/et.po
++++ b/policycoreutils-2.4/po/et.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -181657,10 +181675,10 @@ index a89b95f..85a5aa6 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/eu.po b/policycoreutils-2.3/po/eu.po
+diff --git a/policycoreutils-2.4/po/eu.po b/policycoreutils-2.4/po/eu.po
 index bde9697..423f96d 100644
---- a/policycoreutils-2.3/po/eu.po
-+++ b/policycoreutils-2.3/po/eu.po
+--- a/policycoreutils-2.4/po/eu.po
++++ b/policycoreutils-2.4/po/eu.po
 @@ -1,22 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -186979,10 +186997,10 @@ index bde9697..423f96d 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/eu_ES.po b/policycoreutils-2.3/po/eu_ES.po
+diff --git a/policycoreutils-2.4/po/eu_ES.po b/policycoreutils-2.4/po/eu_ES.po
 index 6bac2a5..5dab84c 100644
---- a/policycoreutils-2.3/po/eu_ES.po
-+++ b/policycoreutils-2.3/po/eu_ES.po
+--- a/policycoreutils-2.4/po/eu_ES.po
++++ b/policycoreutils-2.4/po/eu_ES.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -192242,10 +192260,10 @@ index 6bac2a5..5dab84c 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/fa.po b/policycoreutils-2.3/po/fa.po
+diff --git a/policycoreutils-2.4/po/fa.po b/policycoreutils-2.4/po/fa.po
 index 7d33e83..3de9ef4 100644
---- a/policycoreutils-2.3/po/fa.po
-+++ b/policycoreutils-2.3/po/fa.po
+--- a/policycoreutils-2.4/po/fa.po
++++ b/policycoreutils-2.4/po/fa.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -197504,10 +197522,10 @@ index 7d33e83..3de9ef4 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/fa_IR.po b/policycoreutils-2.3/po/fa_IR.po
+diff --git a/policycoreutils-2.4/po/fa_IR.po b/policycoreutils-2.4/po/fa_IR.po
 index 96018ad..5227463 100644
---- a/policycoreutils-2.3/po/fa_IR.po
-+++ b/policycoreutils-2.3/po/fa_IR.po
+--- a/policycoreutils-2.4/po/fa_IR.po
++++ b/policycoreutils-2.4/po/fa_IR.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -202767,10 +202785,10 @@ index 96018ad..5227463 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/fi.po b/policycoreutils-2.3/po/fi.po
+diff --git a/policycoreutils-2.4/po/fi.po b/policycoreutils-2.4/po/fi.po
 index 93a94e9..2e5d70b 100644
---- a/policycoreutils-2.3/po/fi.po
-+++ b/policycoreutils-2.3/po/fi.po
+--- a/policycoreutils-2.4/po/fi.po
++++ b/policycoreutils-2.4/po/fi.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -208173,10 +208191,10 @@ index 93a94e9..2e5d70b 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/fr.po b/policycoreutils-2.3/po/fr.po
+diff --git a/policycoreutils-2.4/po/fr.po b/policycoreutils-2.4/po/fr.po
 index be33d59..322affd 100644
---- a/policycoreutils-2.3/po/fr.po
-+++ b/policycoreutils-2.3/po/fr.po
+--- a/policycoreutils-2.4/po/fr.po
++++ b/policycoreutils-2.4/po/fr.po
 @@ -1,27 +1,30 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -214852,10 +214870,10 @@ index be33d59..322affd 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "Boîte de dialogue des pertes de données"
-diff --git a/policycoreutils-2.3/po/ga.po b/policycoreutils-2.3/po/ga.po
+diff --git a/policycoreutils-2.4/po/ga.po b/policycoreutils-2.4/po/ga.po
 index 683287b..3a242c1 100644
---- a/policycoreutils-2.3/po/ga.po
-+++ b/policycoreutils-2.3/po/ga.po
+--- a/policycoreutils-2.4/po/ga.po
++++ b/policycoreutils-2.4/po/ga.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -220117,10 +220135,10 @@ index 683287b..3a242c1 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/gl.po b/policycoreutils-2.3/po/gl.po
+diff --git a/policycoreutils-2.4/po/gl.po b/policycoreutils-2.4/po/gl.po
 index 15fbe4a..f42d615 100644
---- a/policycoreutils-2.3/po/gl.po
-+++ b/policycoreutils-2.3/po/gl.po
+--- a/policycoreutils-2.4/po/gl.po
++++ b/policycoreutils-2.4/po/gl.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -225379,10 +225397,10 @@ index 15fbe4a..f42d615 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/gu.po b/policycoreutils-2.3/po/gu.po
+diff --git a/policycoreutils-2.4/po/gu.po b/policycoreutils-2.4/po/gu.po
 index bf08113..949df1c 100644
---- a/policycoreutils-2.3/po/gu.po
-+++ b/policycoreutils-2.3/po/gu.po
+--- a/policycoreutils-2.4/po/gu.po
++++ b/policycoreutils-2.4/po/gu.po
 @@ -1,9 +1,11 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -231618,10 +231636,10 @@ index bf08113..949df1c 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK ઉપલબ્ધ નથી"
 +msgstr "સંવાદની ગુમ થયેલ માહિતી"
-diff --git a/policycoreutils-2.3/po/he.po b/policycoreutils-2.3/po/he.po
+diff --git a/policycoreutils-2.4/po/he.po b/policycoreutils-2.4/po/he.po
 index 9e3af00..fe46548 100644
---- a/policycoreutils-2.3/po/he.po
-+++ b/policycoreutils-2.3/po/he.po
+--- a/policycoreutils-2.4/po/he.po
++++ b/policycoreutils-2.4/po/he.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -236880,10 +236898,10 @@ index 9e3af00..fe46548 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/hi.po b/policycoreutils-2.3/po/hi.po
+diff --git a/policycoreutils-2.4/po/hi.po b/policycoreutils-2.4/po/hi.po
 index 34a5224..e626924 100644
---- a/policycoreutils-2.3/po/hi.po
-+++ b/policycoreutils-2.3/po/hi.po
+--- a/policycoreutils-2.4/po/hi.po
++++ b/policycoreutils-2.4/po/hi.po
 @@ -1,23 +1,23 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -243057,10 +243075,10 @@ index 34a5224..e626924 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "आँकड़ा संवाद का नुकसान"
-diff --git a/policycoreutils-2.3/po/hr.po b/policycoreutils-2.3/po/hr.po
+diff --git a/policycoreutils-2.4/po/hr.po b/policycoreutils-2.4/po/hr.po
 index 9e7db25..14d9fae 100644
---- a/policycoreutils-2.3/po/hr.po
-+++ b/policycoreutils-2.3/po/hr.po
+--- a/policycoreutils-2.4/po/hr.po
++++ b/policycoreutils-2.4/po/hr.po
 @@ -1,33 +1,28 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -248426,10 +248444,10 @@ index 9e7db25..14d9fae 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/hr_HR.po b/policycoreutils-2.3/po/hr_HR.po
+diff --git a/policycoreutils-2.4/po/hr_HR.po b/policycoreutils-2.4/po/hr_HR.po
 index 7a5c997..b274684 100644
---- a/policycoreutils-2.3/po/hr_HR.po
-+++ b/policycoreutils-2.3/po/hr_HR.po
+--- a/policycoreutils-2.4/po/hr_HR.po
++++ b/policycoreutils-2.4/po/hr_HR.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -253692,10 +253710,10 @@ index 7a5c997..b274684 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/hu.po b/policycoreutils-2.3/po/hu.po
+diff --git a/policycoreutils-2.4/po/hu.po b/policycoreutils-2.4/po/hu.po
 index e358401..9a10317 100644
---- a/policycoreutils-2.3/po/hu.po
-+++ b/policycoreutils-2.3/po/hu.po
+--- a/policycoreutils-2.4/po/hu.po
++++ b/policycoreutils-2.4/po/hu.po
 @@ -1,24 +1,25 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -260310,10 +260328,10 @@ index e358401..9a10317 100644
 -
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK nem elérhető"
-diff --git a/policycoreutils-2.3/po/hy.po b/policycoreutils-2.3/po/hy.po
+diff --git a/policycoreutils-2.4/po/hy.po b/policycoreutils-2.4/po/hy.po
 index 0bc535d..6ee4807 100644
---- a/policycoreutils-2.3/po/hy.po
-+++ b/policycoreutils-2.3/po/hy.po
+--- a/policycoreutils-2.4/po/hy.po
++++ b/policycoreutils-2.4/po/hy.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -265573,10 +265591,10 @@ index 0bc535d..6ee4807 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ia.po b/policycoreutils-2.3/po/ia.po
+diff --git a/policycoreutils-2.4/po/ia.po b/policycoreutils-2.4/po/ia.po
 index ca47314..a69d915 100644
---- a/policycoreutils-2.3/po/ia.po
-+++ b/policycoreutils-2.3/po/ia.po
+--- a/policycoreutils-2.4/po/ia.po
++++ b/policycoreutils-2.4/po/ia.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -270834,10 +270852,10 @@ index ca47314..a69d915 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/id.po b/policycoreutils-2.3/po/id.po
+diff --git a/policycoreutils-2.4/po/id.po b/policycoreutils-2.4/po/id.po
 index 8bd451c..9fc0114 100644
---- a/policycoreutils-2.3/po/id.po
-+++ b/policycoreutils-2.3/po/id.po
+--- a/policycoreutils-2.4/po/id.po
++++ b/policycoreutils-2.4/po/id.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -276095,10 +276113,10 @@ index 8bd451c..9fc0114 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ilo.po b/policycoreutils-2.3/po/ilo.po
+diff --git a/policycoreutils-2.4/po/ilo.po b/policycoreutils-2.4/po/ilo.po
 index 07c416a..ae3ef6e 100644
---- a/policycoreutils-2.3/po/ilo.po
-+++ b/policycoreutils-2.3/po/ilo.po
+--- a/policycoreutils-2.4/po/ilo.po
++++ b/policycoreutils-2.4/po/ilo.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -281358,10 +281376,10 @@ index 07c416a..ae3ef6e 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/is.po b/policycoreutils-2.3/po/is.po
+diff --git a/policycoreutils-2.4/po/is.po b/policycoreutils-2.4/po/is.po
 index 0ded88a..583b0e7 100644
---- a/policycoreutils-2.3/po/is.po
-+++ b/policycoreutils-2.3/po/is.po
+--- a/policycoreutils-2.4/po/is.po
++++ b/policycoreutils-2.4/po/is.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -286620,10 +286638,10 @@ index 0ded88a..583b0e7 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/it.po b/policycoreutils-2.3/po/it.po
+diff --git a/policycoreutils-2.4/po/it.po b/policycoreutils-2.4/po/it.po
 index 0ec9bff..14dc845 100644
---- a/policycoreutils-2.3/po/it.po
-+++ b/policycoreutils-2.3/po/it.po
+--- a/policycoreutils-2.4/po/it.po
++++ b/policycoreutils-2.4/po/it.po
 @@ -1,24 +1,31 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -293142,10 +293160,10 @@ index 0ec9bff..14dc845 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK Non Disponibile"
 +msgstr "Dialogo Perdita di dati"
-diff --git a/policycoreutils-2.3/po/it_IT.po b/policycoreutils-2.3/po/it_IT.po
+diff --git a/policycoreutils-2.4/po/it_IT.po b/policycoreutils-2.4/po/it_IT.po
 index dee73ea..8e362af 100644
---- a/policycoreutils-2.3/po/it_IT.po
-+++ b/policycoreutils-2.3/po/it_IT.po
+--- a/policycoreutils-2.4/po/it_IT.po
++++ b/policycoreutils-2.4/po/it_IT.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -298405,10 +298423,10 @@ index dee73ea..8e362af 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ja.po b/policycoreutils-2.3/po/ja.po
+diff --git a/policycoreutils-2.4/po/ja.po b/policycoreutils-2.4/po/ja.po
 index b9487c1..585d116 100644
---- a/policycoreutils-2.3/po/ja.po
-+++ b/policycoreutils-2.3/po/ja.po
+--- a/policycoreutils-2.4/po/ja.po
++++ b/policycoreutils-2.4/po/ja.po
 @@ -1,31 +1,32 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -304888,10 +304906,10 @@ index b9487c1..585d116 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK が利用できません"
 +msgstr "データ損失ダイアログ"
-diff --git a/policycoreutils-2.3/po/ja_JP.po b/policycoreutils-2.3/po/ja_JP.po
+diff --git a/policycoreutils-2.4/po/ja_JP.po b/policycoreutils-2.4/po/ja_JP.po
 index 8f6fc19..9ff06ec 100644
---- a/policycoreutils-2.3/po/ja_JP.po
-+++ b/policycoreutils-2.3/po/ja_JP.po
+--- a/policycoreutils-2.4/po/ja_JP.po
++++ b/policycoreutils-2.4/po/ja_JP.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -310151,10 +310169,10 @@ index 8f6fc19..9ff06ec 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ka.po b/policycoreutils-2.3/po/ka.po
+diff --git a/policycoreutils-2.4/po/ka.po b/policycoreutils-2.4/po/ka.po
 index b6e3ffd..2145846 100644
---- a/policycoreutils-2.3/po/ka.po
-+++ b/policycoreutils-2.3/po/ka.po
+--- a/policycoreutils-2.4/po/ka.po
++++ b/policycoreutils-2.4/po/ka.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -315413,10 +315431,10 @@ index b6e3ffd..2145846 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/kk.po b/policycoreutils-2.3/po/kk.po
+diff --git a/policycoreutils-2.4/po/kk.po b/policycoreutils-2.4/po/kk.po
 index 1eabf04..a72124b 100644
---- a/policycoreutils-2.3/po/kk.po
-+++ b/policycoreutils-2.3/po/kk.po
+--- a/policycoreutils-2.4/po/kk.po
++++ b/policycoreutils-2.4/po/kk.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -320675,10 +320693,10 @@ index 1eabf04..a72124b 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/km.po b/policycoreutils-2.3/po/km.po
+diff --git a/policycoreutils-2.4/po/km.po b/policycoreutils-2.4/po/km.po
 index e91ea5c..cbc50b6 100644
---- a/policycoreutils-2.3/po/km.po
-+++ b/policycoreutils-2.3/po/km.po
+--- a/policycoreutils-2.4/po/km.po
++++ b/policycoreutils-2.4/po/km.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -325938,10 +325956,10 @@ index e91ea5c..cbc50b6 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/kn.po b/policycoreutils-2.3/po/kn.po
+diff --git a/policycoreutils-2.4/po/kn.po b/policycoreutils-2.4/po/kn.po
 index a528c7e..638f842 100644
---- a/policycoreutils-2.3/po/kn.po
-+++ b/policycoreutils-2.3/po/kn.po
+--- a/policycoreutils-2.4/po/kn.po
++++ b/policycoreutils-2.4/po/kn.po
 @@ -1,26 +1,26 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -332427,10 +332445,10 @@ index a528c7e..638f842 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK ಲಭ್ಯವಿಲ್ಲ"
 +msgstr "ದತ್ತಾಂಶ ಸಂವಾದಚೌಕವು ಇಲ್ಲ"
-diff --git a/policycoreutils-2.3/po/ko.po b/policycoreutils-2.3/po/ko.po
+diff --git a/policycoreutils-2.4/po/ko.po b/policycoreutils-2.4/po/ko.po
 index 49c34e5..ef8a1c7 100644
---- a/policycoreutils-2.3/po/ko.po
-+++ b/policycoreutils-2.3/po/ko.po
+--- a/policycoreutils-2.4/po/ko.po
++++ b/policycoreutils-2.4/po/ko.po
 @@ -1,23 +1,23 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -338776,10 +338794,10 @@ index 49c34e5..ef8a1c7 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "데이터 대화 손실 "
-diff --git a/policycoreutils-2.3/po/ks.po b/policycoreutils-2.3/po/ks.po
+diff --git a/policycoreutils-2.4/po/ks.po b/policycoreutils-2.4/po/ks.po
 index 59c9404..37e2acd 100644
---- a/policycoreutils-2.3/po/ks.po
-+++ b/policycoreutils-2.3/po/ks.po
+--- a/policycoreutils-2.4/po/ks.po
++++ b/policycoreutils-2.4/po/ks.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -344038,10 +344056,10 @@ index 59c9404..37e2acd 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ku.po b/policycoreutils-2.3/po/ku.po
+diff --git a/policycoreutils-2.4/po/ku.po b/policycoreutils-2.4/po/ku.po
 index 9d9f1df..aac3b8e 100644
---- a/policycoreutils-2.3/po/ku.po
-+++ b/policycoreutils-2.3/po/ku.po
+--- a/policycoreutils-2.4/po/ku.po
++++ b/policycoreutils-2.4/po/ku.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -349301,10 +349319,10 @@ index 9d9f1df..aac3b8e 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ky.po b/policycoreutils-2.3/po/ky.po
+diff --git a/policycoreutils-2.4/po/ky.po b/policycoreutils-2.4/po/ky.po
 index c5fdd2f..045d5fe 100644
---- a/policycoreutils-2.3/po/ky.po
-+++ b/policycoreutils-2.3/po/ky.po
+--- a/policycoreutils-2.4/po/ky.po
++++ b/policycoreutils-2.4/po/ky.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -354564,10 +354582,10 @@ index c5fdd2f..045d5fe 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/la.po b/policycoreutils-2.3/po/la.po
+diff --git a/policycoreutils-2.4/po/la.po b/policycoreutils-2.4/po/la.po
 index dc61a42..76166f2 100644
---- a/policycoreutils-2.3/po/la.po
-+++ b/policycoreutils-2.3/po/la.po
+--- a/policycoreutils-2.4/po/la.po
++++ b/policycoreutils-2.4/po/la.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -359827,10 +359845,10 @@ index dc61a42..76166f2 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/lo.po b/policycoreutils-2.3/po/lo.po
+diff --git a/policycoreutils-2.4/po/lo.po b/policycoreutils-2.4/po/lo.po
 index 91003c8..44462c1 100644
---- a/policycoreutils-2.3/po/lo.po
-+++ b/policycoreutils-2.3/po/lo.po
+--- a/policycoreutils-2.4/po/lo.po
++++ b/policycoreutils-2.4/po/lo.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -365090,10 +365108,10 @@ index 91003c8..44462c1 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/lt.po b/policycoreutils-2.3/po/lt.po
+diff --git a/policycoreutils-2.4/po/lt.po b/policycoreutils-2.4/po/lt.po
 index c811075..b313ffa 100644
---- a/policycoreutils-2.3/po/lt.po
-+++ b/policycoreutils-2.3/po/lt.po
+--- a/policycoreutils-2.4/po/lt.po
++++ b/policycoreutils-2.4/po/lt.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -370356,10 +370374,10 @@ index c811075..b313ffa 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/lv.po b/policycoreutils-2.3/po/lv.po
+diff --git a/policycoreutils-2.4/po/lv.po b/policycoreutils-2.4/po/lv.po
 index 6bb48a3..47c8573 100644
---- a/policycoreutils-2.3/po/lv.po
-+++ b/policycoreutils-2.3/po/lv.po
+--- a/policycoreutils-2.4/po/lv.po
++++ b/policycoreutils-2.4/po/lv.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -375621,10 +375639,10 @@ index 6bb48a3..47c8573 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/mai.po b/policycoreutils-2.3/po/mai.po
+diff --git a/policycoreutils-2.4/po/mai.po b/policycoreutils-2.4/po/mai.po
 index 63e9b9a..92e8285 100644
---- a/policycoreutils-2.3/po/mai.po
-+++ b/policycoreutils-2.3/po/mai.po
+--- a/policycoreutils-2.4/po/mai.po
++++ b/policycoreutils-2.4/po/mai.po
 @@ -1,22 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -380984,10 +381002,10 @@ index 63e9b9a..92e8285 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/mg.po b/policycoreutils-2.3/po/mg.po
+diff --git a/policycoreutils-2.4/po/mg.po b/policycoreutils-2.4/po/mg.po
 index 4192aec..53a1e04 100644
---- a/policycoreutils-2.3/po/mg.po
-+++ b/policycoreutils-2.3/po/mg.po
+--- a/policycoreutils-2.4/po/mg.po
++++ b/policycoreutils-2.4/po/mg.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -386247,10 +386265,10 @@ index 4192aec..53a1e04 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/mk.po b/policycoreutils-2.3/po/mk.po
+diff --git a/policycoreutils-2.4/po/mk.po b/policycoreutils-2.4/po/mk.po
 index 9e58dcd..5ef07d7 100644
---- a/policycoreutils-2.3/po/mk.po
-+++ b/policycoreutils-2.3/po/mk.po
+--- a/policycoreutils-2.4/po/mk.po
++++ b/policycoreutils-2.4/po/mk.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -391595,10 +391613,10 @@ index 9e58dcd..5ef07d7 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ml.po b/policycoreutils-2.3/po/ml.po
+diff --git a/policycoreutils-2.4/po/ml.po b/policycoreutils-2.4/po/ml.po
 index dc07ee8..5a3820a 100644
---- a/policycoreutils-2.3/po/ml.po
-+++ b/policycoreutils-2.3/po/ml.po
+--- a/policycoreutils-2.4/po/ml.po
++++ b/policycoreutils-2.4/po/ml.po
 @@ -1,22 +1,22 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -397936,10 +397954,10 @@ index dc07ee8..5a3820a 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "ജിറ്റികെ ലഭ്യമല്ല"
 +msgstr "ഡേറ്റാ ഡയലോഗിന്റെ നഷ്ടം"
-diff --git a/policycoreutils-2.3/po/mn.po b/policycoreutils-2.3/po/mn.po
+diff --git a/policycoreutils-2.4/po/mn.po b/policycoreutils-2.4/po/mn.po
 index 9d1342b..78a0053 100644
---- a/policycoreutils-2.3/po/mn.po
-+++ b/policycoreutils-2.3/po/mn.po
+--- a/policycoreutils-2.4/po/mn.po
++++ b/policycoreutils-2.4/po/mn.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -403199,10 +403217,10 @@ index 9d1342b..78a0053 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/mr.po b/policycoreutils-2.3/po/mr.po
+diff --git a/policycoreutils-2.4/po/mr.po b/policycoreutils-2.4/po/mr.po
 index cfc3b88..5c0a6fc 100644
---- a/policycoreutils-2.3/po/mr.po
-+++ b/policycoreutils-2.3/po/mr.po
+--- a/policycoreutils-2.4/po/mr.po
++++ b/policycoreutils-2.4/po/mr.po
 @@ -1,28 +1,27 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -409416,10 +409434,10 @@ index cfc3b88..5c0a6fc 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK उपलब्ध नाही"
 +msgstr "डाटा संवाद गमवणे"
-diff --git a/policycoreutils-2.3/po/ms.po b/policycoreutils-2.3/po/ms.po
+diff --git a/policycoreutils-2.4/po/ms.po b/policycoreutils-2.4/po/ms.po
 index 4b2f210..19ec43a 100644
---- a/policycoreutils-2.3/po/ms.po
-+++ b/policycoreutils-2.3/po/ms.po
+--- a/policycoreutils-2.4/po/ms.po
++++ b/policycoreutils-2.4/po/ms.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -414712,10 +414730,10 @@ index 4b2f210..19ec43a 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ms_MY.po b/policycoreutils-2.3/po/ms_MY.po
+diff --git a/policycoreutils-2.4/po/ms_MY.po b/policycoreutils-2.4/po/ms_MY.po
 index e423569..8477661 100644
---- a/policycoreutils-2.3/po/ms_MY.po
-+++ b/policycoreutils-2.3/po/ms_MY.po
+--- a/policycoreutils-2.4/po/ms_MY.po
++++ b/policycoreutils-2.4/po/ms_MY.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -419975,10 +419993,10 @@ index e423569..8477661 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/my.po b/policycoreutils-2.3/po/my.po
+diff --git a/policycoreutils-2.4/po/my.po b/policycoreutils-2.4/po/my.po
 index 37eb16a..c191432 100644
---- a/policycoreutils-2.3/po/my.po
-+++ b/policycoreutils-2.3/po/my.po
+--- a/policycoreutils-2.4/po/my.po
++++ b/policycoreutils-2.4/po/my.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -425238,10 +425256,10 @@ index 37eb16a..c191432 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/nb.po b/policycoreutils-2.3/po/nb.po
+diff --git a/policycoreutils-2.4/po/nb.po b/policycoreutils-2.4/po/nb.po
 index 410a43e..9feb269 100644
---- a/policycoreutils-2.3/po/nb.po
-+++ b/policycoreutils-2.3/po/nb.po
+--- a/policycoreutils-2.4/po/nb.po
++++ b/policycoreutils-2.4/po/nb.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -430505,10 +430523,10 @@ index 410a43e..9feb269 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/nds.po b/policycoreutils-2.3/po/nds.po
+diff --git a/policycoreutils-2.4/po/nds.po b/policycoreutils-2.4/po/nds.po
 index 1a1547c..cd7923d 100644
---- a/policycoreutils-2.3/po/nds.po
-+++ b/policycoreutils-2.3/po/nds.po
+--- a/policycoreutils-2.4/po/nds.po
++++ b/policycoreutils-2.4/po/nds.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -435767,10 +435785,10 @@ index 1a1547c..cd7923d 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ne.po b/policycoreutils-2.3/po/ne.po
+diff --git a/policycoreutils-2.4/po/ne.po b/policycoreutils-2.4/po/ne.po
 index c74d665..eeb264a 100644
---- a/policycoreutils-2.3/po/ne.po
-+++ b/policycoreutils-2.3/po/ne.po
+--- a/policycoreutils-2.4/po/ne.po
++++ b/policycoreutils-2.4/po/ne.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -441030,10 +441048,10 @@ index c74d665..eeb264a 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/nl.po b/policycoreutils-2.3/po/nl.po
+diff --git a/policycoreutils-2.4/po/nl.po b/policycoreutils-2.4/po/nl.po
 index 3d3b111..af63eb8 100644
---- a/policycoreutils-2.3/po/nl.po
-+++ b/policycoreutils-2.3/po/nl.po
+--- a/policycoreutils-2.4/po/nl.po
++++ b/policycoreutils-2.4/po/nl.po
 @@ -1,24 +1,24 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -448022,10 +448040,10 @@ index 3d3b111..af63eb8 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "Dataverliesdialoog"
-diff --git a/policycoreutils-2.3/po/nn.po b/policycoreutils-2.3/po/nn.po
+diff --git a/policycoreutils-2.4/po/nn.po b/policycoreutils-2.4/po/nn.po
 index e89e353..9b1fe2a 100644
---- a/policycoreutils-2.3/po/nn.po
-+++ b/policycoreutils-2.3/po/nn.po
+--- a/policycoreutils-2.4/po/nn.po
++++ b/policycoreutils-2.4/po/nn.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -453283,10 +453301,10 @@ index e89e353..9b1fe2a 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/no.po b/policycoreutils-2.3/po/no.po
+diff --git a/policycoreutils-2.4/po/no.po b/policycoreutils-2.4/po/no.po
 index f147697..96bf2e4 100644
---- a/policycoreutils-2.3/po/no.po
-+++ b/policycoreutils-2.3/po/no.po
+--- a/policycoreutils-2.4/po/no.po
++++ b/policycoreutils-2.4/po/no.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -458546,10 +458564,10 @@ index f147697..96bf2e4 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/nso.po b/policycoreutils-2.3/po/nso.po
+diff --git a/policycoreutils-2.4/po/nso.po b/policycoreutils-2.4/po/nso.po
 index 5684f24..c55ab76 100644
---- a/policycoreutils-2.3/po/nso.po
-+++ b/policycoreutils-2.3/po/nso.po
+--- a/policycoreutils-2.4/po/nso.po
++++ b/policycoreutils-2.4/po/nso.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -463809,10 +463827,10 @@ index 5684f24..c55ab76 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/or.po b/policycoreutils-2.3/po/or.po
+diff --git a/policycoreutils-2.4/po/or.po b/policycoreutils-2.4/po/or.po
 index 3f3e921..9097a84 100644
---- a/policycoreutils-2.3/po/or.po
-+++ b/policycoreutils-2.3/po/or.po
+--- a/policycoreutils-2.4/po/or.po
++++ b/policycoreutils-2.4/po/or.po
 @@ -1,25 +1,24 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -470068,10 +470086,10 @@ index 3f3e921..9097a84 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK ଉପଲବ୍ଧ ନାହିଁ"
 +msgstr "ତଥ୍ୟ ନଷ୍ଟ ସଂଳାପ"
-diff --git a/policycoreutils-2.3/po/pa.po b/policycoreutils-2.3/po/pa.po
+diff --git a/policycoreutils-2.4/po/pa.po b/policycoreutils-2.4/po/pa.po
 index 845642e..6659c23 100644
---- a/policycoreutils-2.3/po/pa.po
-+++ b/policycoreutils-2.3/po/pa.po
+--- a/policycoreutils-2.4/po/pa.po
++++ b/policycoreutils-2.4/po/pa.po
 @@ -1,8 +1,10 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -476983,10 +477001,10 @@ index 845642e..6659c23 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK ਉਪਲੱਬਧ ਨਹੀਂ"
 +msgstr "ਡਾਟਾ ਸੰਵਾਦ ਦਾ ਘਾਟਾ"
-diff --git a/policycoreutils-2.3/po/pl.po b/policycoreutils-2.3/po/pl.po
+diff --git a/policycoreutils-2.4/po/pl.po b/policycoreutils-2.4/po/pl.po
 index 6764d70..065fac3 100644
---- a/policycoreutils-2.3/po/pl.po
-+++ b/policycoreutils-2.3/po/pl.po
+--- a/policycoreutils-2.4/po/pl.po
++++ b/policycoreutils-2.4/po/pl.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -483016,10 +483034,10 @@ index 6764d70..065fac3 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/policycoreutils.pot b/policycoreutils-2.3/po/policycoreutils.pot
+diff --git a/policycoreutils-2.4/po/policycoreutils.pot b/policycoreutils-2.4/po/policycoreutils.pot
 index be2f1eb..e737599 100644
---- a/policycoreutils-2.3/po/policycoreutils.pot
-+++ b/policycoreutils-2.3/po/policycoreutils.pot
+--- a/policycoreutils-2.4/po/policycoreutils.pot
++++ b/policycoreutils-2.4/po/policycoreutils.pot
 @@ -8,7 +8,7 @@ msgid ""
  msgstr ""
  "Project-Id-Version: PACKAGE VERSION\n"
@@ -488170,10 +488188,10 @@ index be2f1eb..e737599 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/pt.po b/policycoreutils-2.3/po/pt.po
+diff --git a/policycoreutils-2.4/po/pt.po b/policycoreutils-2.4/po/pt.po
 index b969142..fe3165a 100644
---- a/policycoreutils-2.3/po/pt.po
-+++ b/policycoreutils-2.3/po/pt.po
+--- a/policycoreutils-2.4/po/pt.po
++++ b/policycoreutils-2.4/po/pt.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -493620,10 +493638,10 @@ index b969142..fe3165a 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/pt_BR.po b/policycoreutils-2.3/po/pt_BR.po
+diff --git a/policycoreutils-2.4/po/pt_BR.po b/policycoreutils-2.4/po/pt_BR.po
 index bea6ff5..8ea9fde 100644
---- a/policycoreutils-2.3/po/pt_BR.po
-+++ b/policycoreutils-2.3/po/pt_BR.po
+--- a/policycoreutils-2.4/po/pt_BR.po
++++ b/policycoreutils-2.4/po/pt_BR.po
 @@ -1,13 +1,14 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -500011,10 +500029,10 @@ index bea6ff5..8ea9fde 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "Perda de Diálogo de dados"
-diff --git a/policycoreutils-2.3/po/ro.po b/policycoreutils-2.3/po/ro.po
+diff --git a/policycoreutils-2.4/po/ro.po b/policycoreutils-2.4/po/ro.po
 index ffee45d..ab57569 100644
---- a/policycoreutils-2.3/po/ro.po
-+++ b/policycoreutils-2.3/po/ro.po
+--- a/policycoreutils-2.4/po/ro.po
++++ b/policycoreutils-2.4/po/ro.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -505276,10 +505294,10 @@ index ffee45d..ab57569 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ru.po b/policycoreutils-2.3/po/ru.po
+diff --git a/policycoreutils-2.4/po/ru.po b/policycoreutils-2.4/po/ru.po
 index 96987b6..ae78654 100644
---- a/policycoreutils-2.3/po/ru.po
-+++ b/policycoreutils-2.3/po/ru.po
+--- a/policycoreutils-2.4/po/ru.po
++++ b/policycoreutils-2.4/po/ru.po
 @@ -1,39 +1,35 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -511682,10 +511700,10 @@ index 96987b6..ae78654 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK отсутствует"
 +msgstr "Диалог потери данных"
-diff --git a/policycoreutils-2.3/po/ru_RU.po b/policycoreutils-2.3/po/ru_RU.po
+diff --git a/policycoreutils-2.4/po/ru_RU.po b/policycoreutils-2.4/po/ru_RU.po
 index bb2790e..baa74c7 100644
---- a/policycoreutils-2.3/po/ru_RU.po
-+++ b/policycoreutils-2.3/po/ru_RU.po
+--- a/policycoreutils-2.4/po/ru_RU.po
++++ b/policycoreutils-2.4/po/ru_RU.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -516948,10 +516966,10 @@ index bb2790e..baa74c7 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/si.po b/policycoreutils-2.3/po/si.po
+diff --git a/policycoreutils-2.4/po/si.po b/policycoreutils-2.4/po/si.po
 index 34a766f..8cb8d33 100644
---- a/policycoreutils-2.3/po/si.po
-+++ b/policycoreutils-2.3/po/si.po
+--- a/policycoreutils-2.4/po/si.po
++++ b/policycoreutils-2.4/po/si.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -522211,10 +522229,10 @@ index 34a766f..8cb8d33 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/sk.po b/policycoreutils-2.3/po/sk.po
+diff --git a/policycoreutils-2.4/po/sk.po b/policycoreutils-2.4/po/sk.po
 index 9888086..300adb6 100644
---- a/policycoreutils-2.3/po/sk.po
-+++ b/policycoreutils-2.3/po/sk.po
+--- a/policycoreutils-2.4/po/sk.po
++++ b/policycoreutils-2.4/po/sk.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -527539,10 +527557,10 @@ index 9888086..300adb6 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/sl.po b/policycoreutils-2.3/po/sl.po
+diff --git a/policycoreutils-2.4/po/sl.po b/policycoreutils-2.4/po/sl.po
 index 31807dd..a412f83 100644
---- a/policycoreutils-2.3/po/sl.po
-+++ b/policycoreutils-2.3/po/sl.po
+--- a/policycoreutils-2.4/po/sl.po
++++ b/policycoreutils-2.4/po/sl.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -532804,10 +532822,10 @@ index 31807dd..a412f83 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/sq.po b/policycoreutils-2.3/po/sq.po
+diff --git a/policycoreutils-2.4/po/sq.po b/policycoreutils-2.4/po/sq.po
 index 21c15f0..8068f8a 100644
---- a/policycoreutils-2.3/po/sq.po
-+++ b/policycoreutils-2.3/po/sq.po
+--- a/policycoreutils-2.4/po/sq.po
++++ b/policycoreutils-2.4/po/sq.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -538066,10 +538084,10 @@ index 21c15f0..8068f8a 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/sr.po b/policycoreutils-2.3/po/sr.po
+diff --git a/policycoreutils-2.4/po/sr.po b/policycoreutils-2.4/po/sr.po
 index b7d900e..495ec6e 100644
---- a/policycoreutils-2.3/po/sr.po
-+++ b/policycoreutils-2.3/po/sr.po
+--- a/policycoreutils-2.4/po/sr.po
++++ b/policycoreutils-2.4/po/sr.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -543453,10 +543471,10 @@ index b7d900e..495ec6e 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/sr at latin.po b/policycoreutils-2.3/po/sr at latin.po
+diff --git a/policycoreutils-2.4/po/sr at latin.po b/policycoreutils-2.4/po/sr at latin.po
 index 93b28d4..279c927 100644
---- a/policycoreutils-2.3/po/sr at latin.po
-+++ b/policycoreutils-2.3/po/sr at latin.po
+--- a/policycoreutils-2.4/po/sr at latin.po
++++ b/policycoreutils-2.4/po/sr at latin.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -548841,10 +548859,10 @@ index 93b28d4..279c927 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/sv.po b/policycoreutils-2.3/po/sv.po
+diff --git a/policycoreutils-2.4/po/sv.po b/policycoreutils-2.4/po/sv.po
 index fddabf4..af7cbd0 100644
---- a/policycoreutils-2.3/po/sv.po
-+++ b/policycoreutils-2.3/po/sv.po
+--- a/policycoreutils-2.4/po/sv.po
++++ b/policycoreutils-2.4/po/sv.po
 @@ -1,7 +1,7 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -554962,10 +554980,10 @@ index fddabf4..af7cbd0 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ta.po b/policycoreutils-2.3/po/ta.po
+diff --git a/policycoreutils-2.4/po/ta.po b/policycoreutils-2.4/po/ta.po
 index 9f91a5c..d8a1120 100644
---- a/policycoreutils-2.3/po/ta.po
-+++ b/policycoreutils-2.3/po/ta.po
+--- a/policycoreutils-2.4/po/ta.po
++++ b/policycoreutils-2.4/po/ta.po
 @@ -1,25 +1,26 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -561425,10 +561443,10 @@ index 9f91a5c..d8a1120 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "GTK கிடைக்கவில்லை"
 +msgstr "தரவு இழப்பு உரையாடல்"
-diff --git a/policycoreutils-2.3/po/ta_IN.po b/policycoreutils-2.3/po/ta_IN.po
+diff --git a/policycoreutils-2.4/po/ta_IN.po b/policycoreutils-2.4/po/ta_IN.po
 index 0a1c5a4..7a62b7c 100644
---- a/policycoreutils-2.3/po/ta_IN.po
-+++ b/policycoreutils-2.3/po/ta_IN.po
+--- a/policycoreutils-2.4/po/ta_IN.po
++++ b/policycoreutils-2.4/po/ta_IN.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -566688,10 +566706,10 @@ index 0a1c5a4..7a62b7c 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/te.po b/policycoreutils-2.3/po/te.po
+diff --git a/policycoreutils-2.4/po/te.po b/policycoreutils-2.4/po/te.po
 index 91321c3..b33cbbe 100644
---- a/policycoreutils-2.3/po/te.po
-+++ b/policycoreutils-2.3/po/te.po
+--- a/policycoreutils-2.4/po/te.po
++++ b/policycoreutils-2.4/po/te.po
 @@ -1,24 +1,24 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -572791,10 +572809,10 @@ index 91321c3..b33cbbe 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "కోల్పోయిన దత్తాంశం డైలాగ్"
-diff --git a/policycoreutils-2.3/po/tg.po b/policycoreutils-2.3/po/tg.po
+diff --git a/policycoreutils-2.4/po/tg.po b/policycoreutils-2.4/po/tg.po
 index c67e7eb..7581529 100644
---- a/policycoreutils-2.3/po/tg.po
-+++ b/policycoreutils-2.3/po/tg.po
+--- a/policycoreutils-2.4/po/tg.po
++++ b/policycoreutils-2.4/po/tg.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -578054,10 +578072,10 @@ index c67e7eb..7581529 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/th.po b/policycoreutils-2.3/po/th.po
+diff --git a/policycoreutils-2.4/po/th.po b/policycoreutils-2.4/po/th.po
 index faa7475..046e370 100644
---- a/policycoreutils-2.3/po/th.po
-+++ b/policycoreutils-2.3/po/th.po
+--- a/policycoreutils-2.4/po/th.po
++++ b/policycoreutils-2.4/po/th.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -583317,10 +583335,10 @@ index faa7475..046e370 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/tl.po b/policycoreutils-2.3/po/tl.po
+diff --git a/policycoreutils-2.4/po/tl.po b/policycoreutils-2.4/po/tl.po
 index 3332653..ab0a8a6 100644
---- a/policycoreutils-2.3/po/tl.po
-+++ b/policycoreutils-2.3/po/tl.po
+--- a/policycoreutils-2.4/po/tl.po
++++ b/policycoreutils-2.4/po/tl.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -588580,10 +588598,10 @@ index 3332653..ab0a8a6 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/tr.po b/policycoreutils-2.3/po/tr.po
+diff --git a/policycoreutils-2.4/po/tr.po b/policycoreutils-2.4/po/tr.po
 index 269e42c..491fb66 100644
---- a/policycoreutils-2.3/po/tr.po
-+++ b/policycoreutils-2.3/po/tr.po
+--- a/policycoreutils-2.4/po/tr.po
++++ b/policycoreutils-2.4/po/tr.po
 @@ -1,22 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -593849,10 +593867,10 @@ index 269e42c..491fb66 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/uk.po b/policycoreutils-2.3/po/uk.po
+diff --git a/policycoreutils-2.4/po/uk.po b/policycoreutils-2.4/po/uk.po
 index 2938d05..70623e6 100644
---- a/policycoreutils-2.3/po/uk.po
-+++ b/policycoreutils-2.3/po/uk.po
+--- a/policycoreutils-2.4/po/uk.po
++++ b/policycoreutils-2.4/po/uk.po
 @@ -1,33 +1,29 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -600417,10 +600435,10 @@ index 2938d05..70623e6 100644
 -#~ msgid "GTK Not Available"
 -#~ msgstr "Бібліотеки GTK недоступні"
 +msgstr "Діалогове вікно втрати даних"
-diff --git a/policycoreutils-2.3/po/uk_UA.po b/policycoreutils-2.3/po/uk_UA.po
+diff --git a/policycoreutils-2.4/po/uk_UA.po b/policycoreutils-2.4/po/uk_UA.po
 index 2204420..60e9c81 100644
---- a/policycoreutils-2.3/po/uk_UA.po
-+++ b/policycoreutils-2.3/po/uk_UA.po
+--- a/policycoreutils-2.4/po/uk_UA.po
++++ b/policycoreutils-2.4/po/uk_UA.po
 @@ -1,23 +1,21 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -605683,10 +605701,10 @@ index 2204420..60e9c81 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/ur.po b/policycoreutils-2.3/po/ur.po
+diff --git a/policycoreutils-2.4/po/ur.po b/policycoreutils-2.4/po/ur.po
 index 0ede3e6..5c5a5b0 100644
---- a/policycoreutils-2.3/po/ur.po
-+++ b/policycoreutils-2.3/po/ur.po
+--- a/policycoreutils-2.4/po/ur.po
++++ b/policycoreutils-2.4/po/ur.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -610945,11 +610963,11 @@ index 0ede3e6..5c5a5b0 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/uz.po b/policycoreutils-2.3/po/uz.po
+diff --git a/policycoreutils-2.4/po/uz.po b/policycoreutils-2.4/po/uz.po
 new file mode 100644
 index 0000000..4b0e16e
 --- /dev/null
-+++ b/policycoreutils-2.3/po/uz.po
++++ b/policycoreutils-2.4/po/uz.po
 @@ -0,0 +1,5198 @@
 +# SOME DESCRIPTIVE TITLE.
 +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -616149,10 +616167,10 @@ index 0000000..4b0e16e
 +#: ../sepolicy/sepolicy/gui.py:2777
 +msgid "Loss of data Dialog"
 +msgstr ""
-diff --git a/policycoreutils-2.3/po/vi.po b/policycoreutils-2.3/po/vi.po
+diff --git a/policycoreutils-2.4/po/vi.po b/policycoreutils-2.4/po/vi.po
 index fa87a1d..c742212 100644
---- a/policycoreutils-2.3/po/vi.po
-+++ b/policycoreutils-2.3/po/vi.po
+--- a/policycoreutils-2.4/po/vi.po
++++ b/policycoreutils-2.4/po/vi.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -621411,10 +621429,10 @@ index fa87a1d..c742212 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/wo.po b/policycoreutils-2.3/po/wo.po
+diff --git a/policycoreutils-2.4/po/wo.po b/policycoreutils-2.4/po/wo.po
 index 8713a24..027cdb7 100644
---- a/policycoreutils-2.3/po/wo.po
-+++ b/policycoreutils-2.3/po/wo.po
+--- a/policycoreutils-2.4/po/wo.po
++++ b/policycoreutils-2.4/po/wo.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -626674,10 +626692,10 @@ index 8713a24..027cdb7 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/xh.po b/policycoreutils-2.3/po/xh.po
+diff --git a/policycoreutils-2.4/po/xh.po b/policycoreutils-2.4/po/xh.po
 index e199788..1be6b53 100644
---- a/policycoreutils-2.3/po/xh.po
-+++ b/policycoreutils-2.3/po/xh.po
+--- a/policycoreutils-2.4/po/xh.po
++++ b/policycoreutils-2.4/po/xh.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -631937,10 +631955,10 @@ index e199788..1be6b53 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/zh_CN.po b/policycoreutils-2.3/po/zh_CN.po
+diff --git a/policycoreutils-2.4/po/zh_CN.po b/policycoreutils-2.4/po/zh_CN.po
 index 03946d3..6b3b476 100644
---- a/policycoreutils-2.3/po/zh_CN.po
-+++ b/policycoreutils-2.3/po/zh_CN.po
+--- a/policycoreutils-2.4/po/zh_CN.po
++++ b/policycoreutils-2.4/po/zh_CN.po
 @@ -1,25 +1,25 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -637858,10 +637876,10 @@ index 03946d3..6b3b476 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "丢失数据对话"
-diff --git a/policycoreutils-2.3/po/zh_HK.po b/policycoreutils-2.3/po/zh_HK.po
+diff --git a/policycoreutils-2.4/po/zh_HK.po b/policycoreutils-2.4/po/zh_HK.po
 index dc7dae8..63b7e5c 100644
---- a/policycoreutils-2.3/po/zh_HK.po
-+++ b/policycoreutils-2.3/po/zh_HK.po
+--- a/policycoreutils-2.4/po/zh_HK.po
++++ b/policycoreutils-2.4/po/zh_HK.po
 @@ -1,20 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -643119,10 +643137,10 @@ index dc7dae8..63b7e5c 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/po/zh_TW.po b/policycoreutils-2.3/po/zh_TW.po
+diff --git a/policycoreutils-2.4/po/zh_TW.po b/policycoreutils-2.4/po/zh_TW.po
 index 9f84d79..9cc8fce 100644
---- a/policycoreutils-2.3/po/zh_TW.po
-+++ b/policycoreutils-2.3/po/zh_TW.po
+--- a/policycoreutils-2.4/po/zh_TW.po
++++ b/policycoreutils-2.4/po/zh_TW.po
 @@ -1,24 +1,24 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -649134,10 +649152,10 @@ index 9f84d79..9cc8fce 100644
  msgid "Loss of data Dialog"
 -msgstr ""
 +msgstr "資料遺失對話方塊"
-diff --git a/policycoreutils-2.3/po/zu.po b/policycoreutils-2.3/po/zu.po
+diff --git a/policycoreutils-2.4/po/zu.po b/policycoreutils-2.4/po/zu.po
 index b306041..16eb50b 100644
---- a/policycoreutils-2.3/po/zu.po
-+++ b/policycoreutils-2.3/po/zu.po
+--- a/policycoreutils-2.4/po/zu.po
++++ b/policycoreutils-2.4/po/zu.po
 @@ -1,21 +1,20 @@
  # SOME DESCRIPTIVE TITLE.
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
@@ -654397,423 +654415,10 @@ index b306041..16eb50b 100644
 +#: ../sepolicy/sepolicy/gui.py:2777
  msgid "Loss of data Dialog"
  msgstr ""
-diff --git a/policycoreutils-2.3/sandbox/Makefile b/policycoreutils-2.3/sandbox/Makefile
-index 981c56c..5671170 100644
---- a/policycoreutils-2.3/sandbox/Makefile
-+++ b/policycoreutils-2.3/sandbox/Makefile
-@@ -8,7 +8,7 @@ MANDIR ?= $(PREFIX)/share/man
- LOCALEDIR ?= /usr/share/locale
- SHAREDIR ?= $(PREFIX)/share/sandbox
- override CFLAGS += $(LDFLAGS) -I$(PREFIX)/include -DPACKAGE="\"policycoreutils\"" -Wall -Werror -Wextra -W
--LDLIBS += -lcgroup -lselinux -lcap-ng -L$(LIBDIR)
-+LDLIBS += -lselinux -lcap-ng -L$(LIBDIR)
- SEUNSHARE_OBJS = seunshare.o
- 
- all: sandbox seunshare sandboxX.sh start
-diff --git a/policycoreutils-2.3/sandbox/sandbox b/policycoreutils-2.3/sandbox/sandbox
-index 3668abe..3678c5d 100644
---- a/policycoreutils-2.3/sandbox/sandbox
-+++ b/policycoreutils-2.3/sandbox/sandbox
-@@ -280,9 +280,9 @@ Policy defines the following types for use with the -t:
-                pass
- 
-         usage = _("""
--sandbox [-h] [-c] [-l level ] [-[X|M] [-H homedir] [-T tempdir]] [-I includefile ] [-W windowmanager ] [ -w windowsize ] [[-i file ] ...] [ -t type ] command
-+sandbox [-h] [-l level ] [-[X|M] [-H homedir] [-T tempdir]] [-I includefile ] [-W windowmanager ] [ -w windowsize ] [[-i file ] ...] [ -t type ] command
- 
--sandbox [-h] [-c] [-l level ] [-[X|M] [-H homedir] [-T tempdir]] [-I includefile ] [-W windowmanager ] [ -w windowsize ] [[-i file ] ...] [ -t type ] -S
-+sandbox [-h] [-l level ] [-[X|M] [-H homedir] [-T tempdir]] [-I includefile ] [-W windowmanager ] [ -w windowsize ] [[-i file ] ...] [ -t type ] -S
- %s
- """) % types
- 
-@@ -338,10 +338,6 @@ sandbox [-h] [-c] [-l level ] [-[X|M] [-H homedir] [-T tempdir]] [-I includefile
-         parser.add_option("-l", "--level", dest="level", 
-                           help=_("MCS/MLS level for the sandbox"))
- 
--        parser.add_option("-c", "--cgroups",
--                          action="store_true", dest="usecgroup", default=False,
--                          help=_("Use cgroups to limit this sandbox."))
--
-         parser.add_option("-C", "--capabilities",
-                          action="store_true", dest="usecaps", default=False,
-                          help="Allow apps requiring capabilities to run within the sandbox.")
-@@ -426,8 +422,6 @@ sandbox [-h] [-c] [-l level ] [-[X|M] [-H homedir] [-T tempdir]] [-I includefile
-     def __execute(self):
-            try:
-                   cmds = [ SEUNSHARE,  "-Z", self.__execcon ]
--                  if self.__options.usecgroup:
--                         cmds.append('-c')
-                   if self.__options.usecaps:
-                          cmds.append('-C')
-                   if self.__mount:
-diff --git a/policycoreutils-2.3/sandbox/seunshare.8 b/policycoreutils-2.3/sandbox/seunshare.8
-index 06610c0..76b75c8 100644
---- a/policycoreutils-2.3/sandbox/seunshare.8
-+++ b/policycoreutils-2.3/sandbox/seunshare.8
-@@ -3,7 +3,7 @@
- seunshare \- Run cmd with alternate homedir, tmpdir and/or SELinux context
- .SH SYNOPSIS
- .B seunshare
--[ -v ] [ -c ] [ -C ] [ -k ] [ -t tmpdir ] [ -h homedir ] [ -Z context ] -- executable [args]
-+[ -v ] [ -C ] [ -k ] [ -t tmpdir ] [ -h homedir ] [ -Z context ] -- executable [args]
- .br
- .SH DESCRIPTION
- .PP
-@@ -18,9 +18,6 @@ Alternate homedir to be used by the application.  Homedir must be owned by the u
- \fB\-t\ tmpdir
- Use alternate tempory directory to mount on /tmp.  tmpdir must be owned by the user.
- .TP
--\fB\-c --cgroups\fR
--Use cgroups to control this copy of seunshare.  Specify parameters in /etc/sysconfig/sandbox.  Max memory usage and cpu usage are to be specified in percent.  You can specify which CPUs to use by numbering them 0,1,2... etc.
--.TP
- \fB\-C --capabilities\fR
- Allow apps executed within the namespace to use capabilities.  Default is no capabilities.
- .TP
-diff --git a/policycoreutils-2.3/sandbox/seunshare.c b/policycoreutils-2.3/sandbox/seunshare.c
-index 97f3920..c92e394 100644
---- a/policycoreutils-2.3/sandbox/seunshare.c
-+++ b/policycoreutils-2.3/sandbox/seunshare.c
-@@ -14,7 +14,6 @@
- #include <glob.h>
- #include <pwd.h>
- #include <sched.h>
--#include <libcgroup.h>
- #include <string.h>
- #include <stdio.h>
- #include <regex.h>
-@@ -53,7 +52,7 @@
- 
- #define BUF_SIZE 1024
- #define DEFAULT_PATH "/usr/bin:/bin"
--#define USAGE_STRING _("USAGE: seunshare [ -v ] [ -C ] [ -c ] [ -k ] [ -t tmpdir ] [ -h homedir ] [ -Z CONTEXT ] -- executable [args] ")
-+#define USAGE_STRING _("USAGE: seunshare [ -v ] [ -C ] [ -k ] [ -t tmpdir ] [ -h homedir ] [ -Z CONTEXT ] -- executable [args] ")
- 
- static int verbose = 0;
- static int child = 0;
-@@ -290,213 +289,6 @@ static int seunshare_mount(const char *src, const char *dst, struct stat *src_st
- 
- }
- 
--/**
-- * Error logging used by cgroups code.
-- */
--static int sandbox_error(const char *string)
--{
--	fprintf(stderr, "%s", string);
--	syslog(LOG_AUTHPRIV | LOG_ALERT, "%s", string);
--	exit(-1);
--}
--
--/**
-- * Regular expression match.
-- */
--static int match(const char *string, char *pattern)
--{
--	int status;
--	regex_t re;
--	if (regcomp(&re, pattern, REG_EXTENDED|REG_NOSUB) != 0) {
--		return 0;
--	}
--	status = regexec(&re, string, (size_t)0, NULL, 0);
--	regfree(&re);
--	if (status != 0) {
--		return 0;
--	}
--	return 1;
--}
--
--/**
-- * Apply cgroups settings from the /etc/sysconfig/sandbox config file.
-- */
--static int setup_cgroups()
--{
--	char *cpus = NULL;	/* which CPUs to use */
--	char *cgroupname = NULL;/* name for the cgroup */
--	char *mem = NULL;	/* string for memory amount to pass to cgroup */
--	int64_t memusage = 0;	/* amount of memory to use max (percent) */
--	int cpupercentage = 0;  /* what percentage of cpu to allow usage */
--	FILE* fp;
--	char buf[BUF_SIZE];
--	char *tok = NULL;
--	int rc = -1;
--	char *str = NULL;
--	const char* fname = "/etc/sysconfig/sandbox";
--
--	if ((fp = fopen(fname, "rt")) == NULL) {
--		fprintf(stderr, "Error opening sandbox config file.");
--		return rc;
--	}
--	while(fgets(buf, BUF_SIZE, fp) != NULL) {
--		/* Skip comments */
--		if (buf[0] == '#') continue;
--
--		/* Copy the string, ignoring whitespace */
--		int len = strlen(buf);
--		free(str);
--		str = malloc((len + 1) * sizeof(char));
--		if (!str)
--			goto err;
--
--		int ind = 0;
--		int i;
--		for (i = 0; i < len; i++) {
--			char cur = buf[i];
--			if (cur != ' ' && cur != '\t') {
--				str[ind] = cur;
--				ind++;
--			}
--		}
--		str[ind] = '\0';
--
--		tok = strtok(str, "=\n");
--		if (tok != NULL) {
--			if (!strcmp(tok, "CPUAFFINITY")) {
--				tok = strtok(NULL, "=\n");
--				cpus = strdup(tok);
--				if (!strcmp(cpus, "ALL")) {
--					free(cpus);
--					cpus = NULL;
--				}
--			} else if (!strcmp(tok, "MEMUSAGE")) {
--				tok = strtok(NULL, "=\n");
--				if (match(tok, "^[0-9]+[kKmMgG%]")) {
--					char *ind = strchr(tok, '%');
--					if (ind != NULL) {
--						*ind = '\0';;
--						memusage = atoi(tok);
--					} else {
--						mem = strdup(tok);
--					}
--				} else {
--					fprintf(stderr, "Error parsing config file.");
--					goto err;
--				}
--
--			} else if (!strcmp(tok, "CPUUSAGE")) {
--				tok = strtok(NULL, "=\n");
--				if (match(tok, "^[0-9]+\%")) {
--					char* ind = strchr(tok, '%');
--					*ind = '\0';
--					cpupercentage = atoi(tok);
--				} else {
--					fprintf(stderr, "Error parsing config file.");
--					goto err;
--				}
--			} else if (!strcmp(tok, "NAME")) {
--				tok = strtok(NULL, "=\n");
--				cgroupname = strdup(tok);
--			} else {
--				continue;
--			}
--		}
--
--	}
--	if (mem == NULL) {
--		long phypz = sysconf(_SC_PHYS_PAGES);
--		long psize = sysconf(_SC_PAGE_SIZE);
--		memusage = phypz * psize * (float) memusage / 100.0;
--	}
--
--	cgroup_init();
--
--	int64_t current_runtime = 0;
--	int64_t current_period = 0 ;
--	int64_t current_mem = 0;
--	char *curr_cpu_path = NULL;
--	char *curr_mem_path = NULL;
--	int ret  = cgroup_get_current_controller_path(getpid(), "cpu", &curr_cpu_path);
--	if (ret) {
--		sandbox_error("Error while trying to get current controller path.\n");
--	} else {
--		struct cgroup *curr = cgroup_new_cgroup(curr_cpu_path);
--		cgroup_get_cgroup(curr);
--		cgroup_get_value_int64(cgroup_get_controller(curr, "cpu"), "cpu.rt_runtime_us", &current_runtime);
--		cgroup_get_value_int64(cgroup_get_controller(curr, "cpu"), "cpu.rt_period_us", &current_period);
--	}
--
--	ret  = cgroup_get_current_controller_path(getpid(), "memory", &curr_mem_path);
--	if (ret) {
--		sandbox_error("Error while trying to get current controller path.\n");
--	} else {
--		struct cgroup *curr = cgroup_new_cgroup(curr_mem_path);
--		cgroup_get_cgroup(curr);
--		cgroup_get_value_int64(cgroup_get_controller(curr, "memory"), "memory.limit_in_bytes", &current_mem);
--	}
--
--	if (((float) cpupercentage)  / 100.0> (float)current_runtime / (float) current_period) {
--		sandbox_error("CPU usage restricted!\n");
--		goto err;
--	}
--
--	if (mem == NULL) {
--		if (memusage > current_mem) {
--			sandbox_error("Attempting to use more memory than allowed!");
--			goto err;
--		}
--	}
--
--	long nprocs = sysconf(_SC_NPROCESSORS_ONLN);
--
--	struct sched_param sp;
--	sp.sched_priority = sched_get_priority_min(SCHED_FIFO);
--	sched_setscheduler(getpid(), SCHED_FIFO, &sp);
--	struct cgroup *sandbox_group = cgroup_new_cgroup(cgroupname);
--	cgroup_add_controller(sandbox_group, "memory");
--	cgroup_add_controller(sandbox_group, "cpu");
--
--	if (mem == NULL) {
--		if (memusage > 0) {
--			cgroup_set_value_uint64(cgroup_get_controller(sandbox_group, "memory"), "memory.limit_in_bytes", memusage);
--		}
--	} else {
--		cgroup_set_value_string(cgroup_get_controller(sandbox_group, "memory"), "memory.limit_in_bytes", mem);
--	}
--	if (cpupercentage > 0) {
--		cgroup_set_value_uint64(cgroup_get_controller(sandbox_group, "cpu"), "cpu.rt_runtime_us",
--					(float) cpupercentage / 100.0 * 60000);
--		cgroup_set_value_uint64(cgroup_get_controller(sandbox_group, "cpu"), "cpu.rt_period_us",60000 * nprocs);
--	}
--	if (cpus != NULL) {
--		cgroup_set_value_string(cgroup_get_controller(sandbox_group, "cpu"), "cgroup.procs",cpus);
--	}
--
--	uint64_t allocated_mem;
--	if (cgroup_get_value_uint64(cgroup_get_controller(sandbox_group, "memory"), "memory.limit_in_bytes", &allocated_mem) > current_mem) {
--		sandbox_error("Attempting to use more memory than allowed!\n");
--		goto err;
--	}
--
--	rc = cgroup_create_cgroup(sandbox_group, 1);
--	if (rc != 0) {
--		sandbox_error("Failed to create group.  Ensure that cgconfig service is running. \n");
--		goto err;
--	}
--
--	cgroup_attach_task(sandbox_group);
--
--	rc = 0;
--err:
--	fclose(fp);
--	free(str);
--	free(mem);
--	free(cgroupname);
--	free(cpus);
--	return rc;
--}
--
- /*
-    If path is empy or ends with  "/." or "/.. return -1 else return 0;
-  */
-@@ -826,7 +618,6 @@ int main(int argc, char **argv) {
- 	security_context_t execcon = NULL;
- 
- 	int clflag;		/* holds codes for command line flags */
--	int usecgroups = 0;
- 	int kill_all = 0;
- 
- 	char *homedir_s = NULL;	/* homedir spec'd by user in argv[] */
-@@ -843,7 +634,6 @@ int main(int argc, char **argv) {
- 		{"tmpdir", 1, 0, 't'},
- 		{"kill", 1, 0, 'k'},
- 		{"verbose", 1, 0, 'v'},
--		{"cgroups", 1, 0, 'c'},
- 		{"context", 1, 0, 'Z'},
- 		{"capabilities", 1, 0, 'C'},
- 		{NULL, 0, 0, 0}
-@@ -892,9 +682,6 @@ int main(int argc, char **argv) {
- 		case 'v':
- 			verbose++;
- 			break;
--		case 'c':
--			usecgroups = 1;
--			break;
- 		case 'C':
- 			cap_set = CAPNG_SELECT_CAPS;
- 			break;
-@@ -925,9 +712,6 @@ int main(int argc, char **argv) {
- 	if (set_signal_handles())
- 		return -1;
- 
--	if (usecgroups && setup_cgroups() < 0)
--		return  -1;
--
- 	/* set fsuid to ruid */
- 	/* Changing fsuid is usually required when user-specified directory is
- 	 * on an NFS mount.  It's also desired to avoid leaking info about
-@@ -964,6 +748,7 @@ int main(int argc, char **argv) {
- 	if (child == 0) {
- 		char *display = NULL;
- 		char *LANG = NULL;
-+		char *RUNTIME_DIR = NULL;
- 		int rc = -1;
- 		char *resolved_path = NULL;
- 
-@@ -1014,6 +799,13 @@ int main(int argc, char **argv) {
- 			}
- 		}
- 
-+		if ((RUNTIME_DIR = getenv("XDG_RUNTIME_DIR")) != NULL) {
-+			if ((RUNTIME_DIR = strdup(RUNTIME_DIR)) == NULL) {
-+				perror(_("Out of memory"));
-+				goto childerr;
-+			}
-+		}
-+
- 		if ((rc = clearenv()) != 0) {
- 			perror(_("Failed to clear environment"));
- 			goto childerr;
-@@ -1022,6 +814,8 @@ int main(int argc, char **argv) {
- 			rc |= setenv("DISPLAY", display, 1);
- 		if (LANG)
- 			rc |= setenv("LANG", LANG, 1);
-+		if (RUNTIME_DIR)
-+			rc |= setenv("XDG_RUNTIME_DIR", RUNTIME_DIR, 1);
- 		rc |= setenv("HOME", pwd->pw_dir, 1);
- 		rc |= setenv("SHELL", pwd->pw_shell, 1);
- 		rc |= setenv("USER", pwd->pw_name, 1);
-@@ -1032,23 +826,32 @@ int main(int argc, char **argv) {
- 			goto childerr;
- 		}
- 
--		/* selinux context */
--		if (execcon && setexeccon(execcon) != 0) {
--			fprintf(stderr, _("Could not set exec context to %s. %s\n"), execcon, strerror(errno));
--			goto childerr;
--		}
--
- 		if (chdir(pwd->pw_dir)) {
- 			perror(_("Failed to change dir to homedir"));
- 			goto childerr;
- 		}
- 		setsid();
-+
-+		/* selinux context */
-+		if (execcon) {
-+			/* try dyntransition, since no_new_privs can interfere
-+			 * with setexeccon */
-+			if (setcon(execcon) != 0) {
-+				/* failed; fall back to setexeccon */
-+				if (setexeccon(execcon) != 0) {
-+					fprintf(stderr, _("Could not set exec context to %s. %s\n"), execcon, strerror(errno));
-+					goto childerr;
-+				}
-+			}
-+		}
-+
- 		execv(argv[optind], argv + optind);
- 		fprintf(stderr, _("Failed to execute command %s: %s\n"), argv[optind], strerror(errno));
- childerr:
- 		free(resolved_path);
- 		free(display);
- 		free(LANG);
-+		free(RUNTIME_DIR);
- 		exit(-1);
- 	}
- 
-diff --git a/policycoreutils-2.3/scripts/fixfiles b/policycoreutils-2.3/scripts/fixfiles
+diff --git a/policycoreutils-2.4/scripts/fixfiles b/policycoreutils-2.4/scripts/fixfiles
 index 5c29eb9..db53c0b 100755
---- a/policycoreutils-2.3/scripts/fixfiles
-+++ b/policycoreutils-2.3/scripts/fixfiles
+--- a/policycoreutils-2.4/scripts/fixfiles
++++ b/policycoreutils-2.4/scripts/fixfiles
 @@ -116,6 +116,7 @@ exclude_dirs() {
  fullFlag=0
  BOOTTIME=""
@@ -654852,21 +654457,11 @@ index 5c29eb9..db53c0b 100755
  
  UNDEFINED=`get_undefined_type` || exit $?
  UNLABELED=`get_unlabeled_type` || exit $?
-diff --git a/policycoreutils-2.3/semanage/Makefile b/policycoreutils-2.3/semanage/Makefile
-index 8fc8e0b..9bb4f24 100644
---- a/policycoreutils-2.3/semanage/Makefile
-+++ b/policycoreutils-2.3/semanage/Makefile
-@@ -3,8 +3,7 @@ PREFIX ?= $(DESTDIR)/usr
- LIBDIR ?= $(PREFIX)/lib
- SBINDIR ?= $(PREFIX)/sbin
- MANDIR = $(PREFIX)/share/man
--PYLIBVER ?= $(shell python -c 'import sys;print "python%d.%d" % sys.version_info[0:2]')
--PYTHONLIBDIR ?= $(LIBDIR)/$(PYLIBVER)
-+PYTHON ?= /usr/bin/python
- BASHCOMPLETIONDIR ?= $(DESTDIR)/usr/share/bash-completion/completions
- 
- TARGETS=semanage
-@@ -18,8 +17,7 @@ install: all
+diff --git a/policycoreutils-2.4/semanage/Makefile b/policycoreutils-2.4/semanage/Makefile
+index 60c36a3..84b01a1 100644
+--- a/policycoreutils-2.4/semanage/Makefile
++++ b/policycoreutils-2.4/semanage/Makefile
+@@ -20,8 +20,7 @@ install: all
  	-mkdir -p $(SBINDIR)
  	install -m 755 semanage $(SBINDIR)
  	install -m 644 *.8 $(MANDIR)/man8
@@ -654876,11 +654471,11 @@ index 8fc8e0b..9bb4f24 100644
  	-mkdir -p $(BASHCOMPLETIONDIR)
  	install -m 644 $(BASHCOMPLETIONS) $(BASHCOMPLETIONDIR)/semanage
  
-diff --git a/policycoreutils-2.3/semanage/default_encoding/Makefile b/policycoreutils-2.3/semanage/default_encoding/Makefile
+diff --git a/policycoreutils-2.4/semanage/default_encoding/Makefile b/policycoreutils-2.4/semanage/default_encoding/Makefile
 new file mode 100644
 index 0000000..e15a877
 --- /dev/null
-+++ b/policycoreutils-2.3/semanage/default_encoding/Makefile
++++ b/policycoreutils-2.4/semanage/default_encoding/Makefile
 @@ -0,0 +1,8 @@
 +all:
 +	LDFLAGS="" python setup.py build
@@ -654890,11 +654485,11 @@ index 0000000..e15a877
 +
 +clean:
 +	rm -rf build *~
-diff --git a/policycoreutils-2.3/semanage/default_encoding/default_encoding.c b/policycoreutils-2.3/semanage/default_encoding/default_encoding.c
+diff --git a/policycoreutils-2.4/semanage/default_encoding/default_encoding.c b/policycoreutils-2.4/semanage/default_encoding/default_encoding.c
 new file mode 100644
 index 0000000..023b8f4
 --- /dev/null
-+++ b/policycoreutils-2.3/semanage/default_encoding/default_encoding.c
++++ b/policycoreutils-2.4/semanage/default_encoding/default_encoding.c
 @@ -0,0 +1,57 @@
 +/*
 + * Authors:
@@ -654953,11 +654548,11 @@ index 0000000..023b8f4
 +    PyUnicode_SetDefaultEncoding("utf-8");
 +    Py_InitModule3("default_encoding_utf8", methods, "Forces the default encoding to utf-8");
 +}
-diff --git a/policycoreutils-2.3/semanage/default_encoding/policycoreutils/__init__.py b/policycoreutils-2.3/semanage/default_encoding/policycoreutils/__init__.py
+diff --git a/policycoreutils-2.4/semanage/default_encoding/policycoreutils/__init__.py b/policycoreutils-2.4/semanage/default_encoding/policycoreutils/__init__.py
 new file mode 100644
 index 0000000..ccb6b8b
 --- /dev/null
-+++ b/policycoreutils-2.3/semanage/default_encoding/policycoreutils/__init__.py
++++ b/policycoreutils-2.4/semanage/default_encoding/policycoreutils/__init__.py
 @@ -0,0 +1,17 @@
 +#
 +# Copyright (C) 2006,2007,2008, 2009 Red Hat, Inc.
@@ -654976,11 +654571,11 @@ index 0000000..ccb6b8b
 +# along with this program; if not, write to the Free Software
 +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 +#
-diff --git a/policycoreutils-2.3/semanage/default_encoding/setup.py b/policycoreutils-2.3/semanage/default_encoding/setup.py
+diff --git a/policycoreutils-2.4/semanage/default_encoding/setup.py b/policycoreutils-2.4/semanage/default_encoding/setup.py
 new file mode 100644
 index 0000000..e2befdb
 --- /dev/null
-+++ b/policycoreutils-2.3/semanage/default_encoding/setup.py
++++ b/policycoreutils-2.4/semanage/default_encoding/setup.py
 @@ -0,0 +1,38 @@
 +# Authors:
 +#   John Dennis <jdennis at redhat.com>
@@ -655020,10 +654615,10 @@ index 0000000..e2befdb
 +      ext_modules      = [default_encoding_utf8],
 +      packages=["policycoreutils"],
 +)
-diff --git a/policycoreutils-2.3/semanage/semanage b/policycoreutils-2.3/semanage/semanage
-index 36b41cd..209c308 100644
---- a/policycoreutils-2.3/semanage/semanage
-+++ b/policycoreutils-2.3/semanage/semanage
+diff --git a/policycoreutils-2.4/semanage/semanage b/policycoreutils-2.4/semanage/semanage
+index dd63010..9a33702 100644
+--- a/policycoreutils-2.4/semanage/semanage
++++ b/policycoreutils-2.4/semanage/semanage
 @@ -18,24 +18,34 @@
  #
  #    You should have received a copy of the GNU General Public License
@@ -655143,7 +654738,7 @@ index 36b41cd..209c308 100644
  
  def parser_add_store(parser, name):
      parser.add_argument('-S', '--store', action=SetStore, help=_("Select an alternate SELinux Policy Store to manage"))
-@@ -289,7 +299,7 @@ def handleFcontext(args):
+@@ -292,7 +302,7 @@ def handleFcontext(args):
      fcontext_equal_args = {'equal':[('list','locallist','type','ftype','seuser','deleteall','extract'),()]}
  
      if args.action is None:
@@ -655152,7 +654747,7 @@ index 36b41cd..209c308 100644
          sys.exit(2)
      elif args.action and args.equal:
          handle_opts(args, fcontext_equal_args, "equal")
-@@ -320,7 +330,7 @@ def handleFcontext(args):
+@@ -323,7 +333,7 @@ def handleFcontext(args):
          OBJECT.deleteall()
      if args.action is "extract":
          for i in OBJECT.customized():
@@ -655161,7 +654756,7 @@ index 36b41cd..209c308 100644
  
  def setupFcontextParser(subparsers):
      ftype_help = '''
-@@ -378,7 +388,7 @@ def handleUser(args):
+@@ -381,7 +391,7 @@ def handleUser(args):
          OBJECT.deleteall()
      if args.action is "extract":
          for i in OBJECT.customized():
@@ -655170,7 +654765,7 @@ index 36b41cd..209c308 100644
  
  def setupUserParser(subparsers):
      generated_usage = generate_custom_usage(usage_user, usage_user_dict)
-@@ -427,7 +437,7 @@ def handlePort(args):
+@@ -430,7 +440,7 @@ def handlePort(args):
          OBJECT.deleteall()
      if args.action is "extract":
          for i in OBJECT.customized():
@@ -655179,7 +654774,7 @@ index 36b41cd..209c308 100644
  
  def setupPortParser(subparsers):
      generated_usage = generate_custom_usage(usage_port, usage_port_dict)
-@@ -470,7 +480,7 @@ def handleInterface(args):
+@@ -473,7 +483,7 @@ def handleInterface(args):
          OBJECT.deleteall()
      if args.action is "extract":
          for i in OBJECT.customized():
@@ -655188,7 +654783,7 @@ index 36b41cd..209c308 100644
  
  def setupInterfaceParser(subparsers):
      generated_usage = generate_custom_usage(usage_interface, usage_interface_dict)
-@@ -509,7 +519,7 @@ def handleModule(args):
+@@ -512,7 +522,7 @@ def handleModule(args):
          OBJECT.list(args.noheading, args.locallist)
      if args.action is "extract":
          for i in OBJECT.customized():
@@ -655197,7 +654792,7 @@ index 36b41cd..209c308 100644
  
  def setupModuleParser(subparsers):
      moduleParser = subparsers.add_parser('module', help=_('Manage SELinux policy modules'))
-@@ -548,7 +558,7 @@ def handleNode(args):
+@@ -552,7 +562,7 @@ def handleNode(args):
          OBJECT.deleteall()
      if args.action is "extract":
          for i in OBJECT.customized():
@@ -655206,7 +654801,7 @@ index 36b41cd..209c308 100644
  
  def setupNodeParser(subparsers):
      generated_usage = generate_custom_usage(usage_node, usage_node_dict)
-@@ -576,14 +586,14 @@ def setupNodeParser(subparsers):
+@@ -580,14 +590,14 @@ def setupNodeParser(subparsers):
  def handleBoolean(args):
      boolean_args = {'list':[('state','boolean'),('')],'modify':[('localist'),('')], 'extract':[('locallist','state','boolean'),('')],'deleteall':[('locallist'),('')],'state':[('locallist','list','extract','deleteall'),('modify')]}
      if args.action is None:
@@ -655224,7 +654819,7 @@ index 36b41cd..209c308 100644
          sys.exit(1)
      else:
          handle_opts(args,boolean_args,args.action)
-@@ -600,7 +610,7 @@ def handleBoolean(args):
+@@ -604,7 +614,7 @@ def handleBoolean(args):
          OBJECT.deleteall()
      if args.action is "extract":
          for i in OBJECT.customized():
@@ -655233,7 +654828,7 @@ index 36b41cd..209c308 100644
  
  def setupBooleanParser(subparsers):
      generated_usage = generate_custom_usage(usage_boolean, usage_boolean_dict)
-@@ -666,11 +676,11 @@ def setupDontauditParser(subparsers):
+@@ -670,11 +680,11 @@ def setupDontauditParser(subparsers):
  def handleExport(args):
      manageditems=[ "boolean", "login", "interface", "user", "port", "node", "fcontext", "module"]
      for i in manageditems:
@@ -655247,7 +654842,7 @@ index 36b41cd..209c308 100644
  
      sys.exit(0)
  
-@@ -739,10 +749,10 @@ def handleImport(args):
+@@ -743,10 +753,10 @@ def handleImport(args):
              commandParser = createCommandParser()
              args = commandParser.parse_args(mkargv(l))
              args.func(args)
@@ -655260,7 +654855,7 @@ index 36b41cd..209c308 100644
              sys.stderr.write("%s: %s\n" % (e.__class__.__name__, str(e)))
              sys.exit(1)
          except KeyboardInterrupt:
-@@ -760,11 +770,11 @@ def setupImportParser(subparsers):
+@@ -764,11 +774,11 @@ def setupImportParser(subparsers):
  
  def createCommandParser():
      commandParser = seParser(prog='semanage',
@@ -655277,7 +654872,7 @@ index 36b41cd..209c308 100644
      #To add a new subcommand define the parser for it in a function above and call it here.
      subparsers = commandParser.add_subparsers(dest='subcommand')
      setupImportParser(subparsers)
-@@ -804,6 +814,8 @@ def make_io_args(args):
+@@ -808,6 +818,8 @@ def make_io_args(args):
      return args_subcommand+args_ie+args_file
  
  def make_args(sys_args):
@@ -655286,7 +654881,7 @@ index 36b41cd..209c308 100644
      args = []
      if "-o" in sys_args[1:] or "-i" in sys_args[1:]:
          args=make_io_args(sys_args[1:])
-@@ -818,21 +830,21 @@ def do_parser():
+@@ -822,21 +834,21 @@ def do_parser():
          args = commandParser.parse_args(make_args(sys.argv))
          args.func(args)
          sys.exit(0)
@@ -655313,10 +654908,10 @@ index 36b41cd..209c308 100644
          sys.stderr.write("%s: %s\n" % (e.__class__.__name__, e.args[0]))
          sys.exit(1)
  
-diff --git a/policycoreutils-2.3/semanage/semanage.8 b/policycoreutils-2.3/semanage/semanage.8
+diff --git a/policycoreutils-2.4/semanage/semanage.8 b/policycoreutils-2.4/semanage/semanage.8
 index 0fad36c..75b782f 100644
---- a/policycoreutils-2.3/semanage/semanage.8
-+++ b/policycoreutils-2.3/semanage/semanage.8
+--- a/policycoreutils-2.4/semanage/semanage.8
++++ b/policycoreutils-2.4/semanage/semanage.8
 @@ -8,7 +8,7 @@ semanage \- SELinux Policy Management tool
  .B positional arguments:
  
@@ -655336,11 +654931,11 @@ index 0fad36c..75b782f 100644
  mapping from Linux usernames (logins) to SELinux user identities,
  while the semanage user command deals with the mapping from SELinux
  user identities to authorized role sets.  In most cases, only the
-diff --git a/policycoreutils-2.3/semanage/seobject/__init__.py b/policycoreutils-2.3/semanage/seobject/__init__.py
+diff --git a/policycoreutils-2.4/semanage/seobject/__init__.py b/policycoreutils-2.4/semanage/seobject/__init__.py
 new file mode 100644
 index 0000000..05d931c
 --- /dev/null
-+++ b/policycoreutils-2.3/semanage/seobject/__init__.py
++++ b/policycoreutils-2.4/semanage/seobject/__init__.py
 @@ -0,0 +1,2250 @@
 +#! /usr/bin/python -Es
 +# Copyright (C) 2005-2013 Red Hat
@@ -657592,11 +657187,11 @@ index 0000000..05d931c
 +                for k in keys:
 +                        if ddict[k]:
 +                                print("%-30s (%-5s,%5s)  %s" %  (k, on_off[selinux.security_get_boolean_active(k)], on_off[ddict[k][2]], self.get_desc(k)))
-diff --git a/policycoreutils-2.3/semanage/setup.py b/policycoreutils-2.3/semanage/setup.py
+diff --git a/policycoreutils-2.4/semanage/setup.py b/policycoreutils-2.4/semanage/setup.py
 new file mode 100644
 index 0000000..7735c59
 --- /dev/null
-+++ b/policycoreutils-2.3/semanage/setup.py
++++ b/policycoreutils-2.4/semanage/setup.py
 @@ -0,0 +1,35 @@
 +# Authors:
 +#   Dan Walsh <dwalsh at redhat.com>
@@ -657633,10 +657228,10 @@ index 0000000..7735c59
 +      download_url     = '',
 +      packages=["seobject"],
 +)
-diff --git a/policycoreutils-2.3/semanage/test-semanage.py b/policycoreutils-2.3/semanage/test-semanage.py
+diff --git a/policycoreutils-2.4/semanage/test-semanage.py b/policycoreutils-2.4/semanage/test-semanage.py
 index d39013e..e847ca7 100644
---- a/policycoreutils-2.3/semanage/test-semanage.py
-+++ b/policycoreutils-2.3/semanage/test-semanage.py
+--- a/policycoreutils-2.4/semanage/test-semanage.py
++++ b/policycoreutils-2.4/semanage/test-semanage.py
 @@ -9,18 +9,18 @@ object_list = [ 'login', 'user', 'port', 'module', 'interface', 'node', 'fcontex
  class SemanageTests(unittest.TestCase):
      def assertDenied(self, err):
@@ -657660,23 +657255,10 @@ index d39013e..e847ca7 100644
  
      def test_extract(self):
          for object in object_list:
-diff --git a/policycoreutils-2.3/sepolicy/Makefile b/policycoreutils-2.3/sepolicy/Makefile
-index 90f88a5..d08f34c 100644
---- a/policycoreutils-2.3/sepolicy/Makefile
-+++ b/policycoreutils-2.3/sepolicy/Makefile
-@@ -27,7 +27,7 @@ sepolgen:
- 	ln -sf sepolicy sepolgen
- 
- test:
--	@python test_sepolicy.py -v
-+	@$(PYTHON) test_sepolicy.py -v
- 
- install:
- 	$(PYTHON) setup.py install `test -n "$(DESTDIR)" && echo --root $(DESTDIR)`
-diff --git a/policycoreutils-2.3/sepolicy/common.h b/policycoreutils-2.3/sepolicy/common.h
+diff --git a/policycoreutils-2.4/sepolicy/common.h b/policycoreutils-2.4/sepolicy/common.h
 index dc3ce6a..3b93845 100644
---- a/policycoreutils-2.3/sepolicy/common.h
-+++ b/policycoreutils-2.3/sepolicy/common.h
+--- a/policycoreutils-2.4/sepolicy/common.h
++++ b/policycoreutils-2.4/sepolicy/common.h
 @@ -9,12 +9,18 @@
  # define UNUSED(x) x
  #endif
@@ -657711,10 +657293,10 @@ index dc3ce6a..3b93845 100644
  }
 -
 -
-diff --git a/policycoreutils-2.3/sepolicy/info.c b/policycoreutils-2.3/sepolicy/info.c
+diff --git a/policycoreutils-2.4/sepolicy/info.c b/policycoreutils-2.4/sepolicy/info.c
 index 17f5732..52fd680 100644
---- a/policycoreutils-2.3/sepolicy/info.c
-+++ b/policycoreutils-2.3/sepolicy/info.c
+--- a/policycoreutils-2.4/sepolicy/info.c
++++ b/policycoreutils-2.4/sepolicy/info.c
 @@ -1,12 +1,14 @@
  /**
   *  @file
@@ -657936,10 +657518,10 @@ index 17f5732..52fd680 100644
  
      return info(type, name);
  }
-diff --git a/policycoreutils-2.3/sepolicy/org.selinux.conf b/policycoreutils-2.3/sepolicy/org.selinux.conf
+diff --git a/policycoreutils-2.4/sepolicy/org.selinux.conf b/policycoreutils-2.4/sepolicy/org.selinux.conf
 index a350978..1ae079d 100644
---- a/policycoreutils-2.3/sepolicy/org.selinux.conf
-+++ b/policycoreutils-2.3/sepolicy/org.selinux.conf
+--- a/policycoreutils-2.4/sepolicy/org.selinux.conf
++++ b/policycoreutils-2.4/sepolicy/org.selinux.conf
 @@ -12,12 +12,8 @@
  
    <!-- Allow anyone to invoke methods on the interfaces,
@@ -657954,10 +657536,10 @@ index a350978..1ae079d 100644
    </policy>
  
  </busconfig>
-diff --git a/policycoreutils-2.3/sepolicy/org.selinux.policy b/policycoreutils-2.3/sepolicy/org.selinux.policy
+diff --git a/policycoreutils-2.4/sepolicy/org.selinux.policy b/policycoreutils-2.4/sepolicy/org.selinux.policy
 index 44ae625..4023bca 100644
---- a/policycoreutils-2.3/sepolicy/org.selinux.policy
-+++ b/policycoreutils-2.3/sepolicy/org.selinux.policy
+--- a/policycoreutils-2.4/sepolicy/org.selinux.policy
++++ b/policycoreutils-2.4/sepolicy/org.selinux.policy
 @@ -70,9 +70,9 @@
  	  <allow_active>auth_admin_keep</allow_active>
          </defaults>
@@ -657971,10 +657553,10 @@ index 44ae625..4023bca 100644
          <defaults>
            <allow_any>no</allow_any>
            <allow_inactive>no</allow_inactive>
-diff --git a/policycoreutils-2.3/sepolicy/policy.c b/policycoreutils-2.3/sepolicy/policy.c
+diff --git a/policycoreutils-2.4/sepolicy/policy.c b/policycoreutils-2.4/sepolicy/policy.c
 index 2a9e1c7..365e622 100644
---- a/policycoreutils-2.3/sepolicy/policy.c
-+++ b/policycoreutils-2.3/sepolicy/policy.c
+--- a/policycoreutils-2.4/sepolicy/policy.c
++++ b/policycoreutils-2.4/sepolicy/policy.c
 @@ -3,8 +3,13 @@
   *  Python bindings to search SELinux Policy rules.
   *
@@ -658126,10 +657708,10 @@ index 2a9e1c7..365e622 100644
 +    return module;
 +#endif
  }
-diff --git a/policycoreutils-2.3/sepolicy/search.c b/policycoreutils-2.3/sepolicy/search.c
+diff --git a/policycoreutils-2.4/sepolicy/search.c b/policycoreutils-2.4/sepolicy/search.c
 index d9a5aec..513eba8 100644
---- a/policycoreutils-2.3/sepolicy/search.c
-+++ b/policycoreutils-2.3/sepolicy/search.c
+--- a/policycoreutils-2.4/sepolicy/search.c
++++ b/policycoreutils-2.4/sepolicy/search.c
 @@ -189,7 +189,7 @@ static PyObject* get_ra_results(const apol_policy_t * policy, const apol_vector_
  		if (qpol_role_get_name(q, role, &tmp)) {
  			goto err;
@@ -658183,10 +657765,10 @@ index d9a5aec..513eba8 100644
      return NULL;
  }
  
-diff --git a/policycoreutils-2.3/sepolicy/selinux_client.py b/policycoreutils-2.3/sepolicy/selinux_client.py
+diff --git a/policycoreutils-2.4/sepolicy/selinux_client.py b/policycoreutils-2.4/sepolicy/selinux_client.py
 index 458a4d2..b6088af 100644
---- a/policycoreutils-2.3/sepolicy/selinux_client.py
-+++ b/policycoreutils-2.3/sepolicy/selinux_client.py
+--- a/policycoreutils-2.4/sepolicy/selinux_client.py
++++ b/policycoreutils-2.4/sepolicy/selinux_client.py
 @@ -32,12 +32,12 @@ def convert_customization(buf):
                  cust_dict["fcontext"][(rec[-1],rec[3])] = { "type": rec[5] }
          if rec[0] == "module":
@@ -658205,10 +657787,10 @@ index 458a4d2..b6088af 100644
 +        print(convert_customization(resp))
 +    except dbus.DBusException as e:
 +        print(e)
-diff --git a/policycoreutils-2.3/sepolicy/selinux_server.py b/policycoreutils-2.3/sepolicy/selinux_server.py
+diff --git a/policycoreutils-2.4/sepolicy/selinux_server.py b/policycoreutils-2.4/sepolicy/selinux_server.py
 index e94c38f..3cfdc94 100644
---- a/policycoreutils-2.3/sepolicy/selinux_server.py
-+++ b/policycoreutils-2.3/sepolicy/selinux_server.py
+--- a/policycoreutils-2.4/sepolicy/selinux_server.py
++++ b/policycoreutils-2.4/sepolicy/selinux_server.py
 @@ -18,7 +18,7 @@ class selinux_server(slip.dbus.service.Object):
      #
      # The semanage method runs a transaction on a series of semanage commands,
@@ -658285,10 +657867,10 @@ index e94c38f..3cfdc94 100644
  if __name__ == "__main__":
          mainloop = gobject.MainLoop()
          dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy-bash-completion.sh b/policycoreutils-2.3/sepolicy/sepolicy-bash-completion.sh
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy-bash-completion.sh b/policycoreutils-2.4/sepolicy/sepolicy-bash-completion.sh
 index 779fd75..29ccbdf 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy-bash-completion.sh
-+++ b/policycoreutils-2.3/sepolicy/sepolicy-bash-completion.sh
+--- a/policycoreutils-2.4/sepolicy/sepolicy-bash-completion.sh
++++ b/policycoreutils-2.4/sepolicy/sepolicy-bash-completion.sh
 @@ -16,9 +16,9 @@
  # along with systemd; If not, see <http://www.gnu.org/licenses/>.
  
@@ -658354,10 +657936,10 @@ index 779fd75..29ccbdf 100644
  }
  _sepolicy () {
          local command=${COMP_WORDS[1]}
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy-generate.8 b/policycoreutils-2.3/sepolicy/sepolicy-generate.8
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy-generate.8 b/policycoreutils-2.4/sepolicy/sepolicy-generate.8
 index 2e67456..0c5f998 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy-generate.8
-+++ b/policycoreutils-2.3/sepolicy/sepolicy-generate.8
+--- a/policycoreutils-2.4/sepolicy/sepolicy-generate.8
++++ b/policycoreutils-2.4/sepolicy/sepolicy-generate.8
 @@ -13,7 +13,7 @@ Common options
  Confined Applications
  
@@ -658367,10 +657949,10 @@ index 2e67456..0c5f998 100644
  .br
  .B sepolicy generate \-\-cgi [\-n NAME] command [\-w WRITE_PATH ]
  .br
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy.py b/policycoreutils-2.3/sepolicy/sepolicy.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy.py b/policycoreutils-2.4/sepolicy/sepolicy.py
 index 74fb347..adb6ca5 100755
---- a/policycoreutils-2.3/sepolicy/sepolicy.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy.py
 @@ -32,12 +32,15 @@ gettext.bindtextdomain(PROGNAME, "/usr/share/locale")
  gettext.textdomain(PROGNAME)
  try:
@@ -658645,10 +658227,10 @@ index 74fb347..adb6ca5 100755
 -        print "Out"
 +        print("Out")
          sys.exit(0)
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/__init__.py b/policycoreutils-2.3/sepolicy/sepolicy/__init__.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/__init__.py b/policycoreutils-2.4/sepolicy/sepolicy/__init__.py
 index 679725d..d3dc4be 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/__init__.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/__init__.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/__init__.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/__init__.py
 @@ -3,23 +3,27 @@
  # Author: Dan Walsh <dwalsh at redhat.com>
  # Author: Ryan Hallisey <rhallise at redhat.com>
@@ -659068,10 +658650,10 @@ index 679725d..d3dc4be 100644
      global portrecs
      global portrecsbynum
      global port_types
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/booleans.py b/policycoreutils-2.3/sepolicy/sepolicy/booleans.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/booleans.py b/policycoreutils-2.4/sepolicy/sepolicy/booleans.py
 index 9003652..75b14de 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/booleans.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/booleans.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/booleans.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/booleans.py
 @@ -36,6 +36,6 @@ def get_types(src, tclass, perm):
          raise TypeError("The %s type is not allowed to %s any types" % (src, ",".join(perm)))
  
@@ -659080,10 +658662,10 @@ index 9003652..75b14de 100644
 +    for l in [y[sepolicy.TARGET] for y in [x for x in allows if set(perm).issubset(x[sepolicy.PERMS])]]:
          tlist = tlist + expand_attribute(l)
      return tlist
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/communicate.py b/policycoreutils-2.3/sepolicy/sepolicy/communicate.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/communicate.py b/policycoreutils-2.4/sepolicy/sepolicy/communicate.py
 index 9b9a09a..ec3e67e 100755
---- a/policycoreutils-2.3/sepolicy/sepolicy/communicate.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/communicate.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/communicate.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/communicate.py
 @@ -43,7 +43,7 @@ def get_types(src, tclass, perm):
          raise ValueError("The %s type is not allowed to %s any types" % (src, ",".join(perm)))
  
@@ -659093,10 +658675,10 @@ index 9b9a09a..ec3e67e 100755
          tlist = tlist + expand_attribute(l)
      return tlist
  
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/generate.py b/policycoreutils-2.3/sepolicy/sepolicy/generate.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/generate.py b/policycoreutils-2.4/sepolicy/sepolicy/generate.py
 index 6b53035..a27b17b 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/generate.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/generate.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/generate.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/generate.py
 @@ -27,21 +27,21 @@ import sepolicy
  from sepolicy import get_all_types, get_all_attributes, get_all_roles
  import time
@@ -660335,10 +659917,10 @@ index 6b53035..a27b17b 100644
              out = "Created the following files:\n"
              out += "%s # %s\n" % (self.write_te(out_dir), _("Type Enforcement file"))
              out += "%s # %s\n" % (self.write_if(out_dir), _("Interface file"))
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/gui.py b/policycoreutils-2.3/sepolicy/sepolicy/gui.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/gui.py b/policycoreutils-2.4/sepolicy/sepolicy/gui.py
 index 5ca87b9..ac2fe31 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/gui.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/gui.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/gui.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/gui.py
 @@ -47,12 +47,15 @@ gettext.bindtextdomain(PROGNAME, "/usr/share/locale")
  gettext.textdomain(PROGNAME)
  try:
@@ -660924,10 +660506,10 @@ index 5ca87b9..ac2fe31 100644
          self.ready_mouse()
  
      def confirmation_close(self, button, *args):
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/interface.py b/policycoreutils-2.3/sepolicy/sepolicy/interface.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/interface.py b/policycoreutils-2.4/sepolicy/sepolicy/interface.py
 index bbabb3b..b17f6af 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/interface.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/interface.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/interface.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/interface.py
 @@ -38,18 +38,22 @@ gettext.bindtextdomain(PROGNAME, "/usr/share/locale")
  gettext.textdomain(PROGNAME)
  try:
@@ -661112,10 +660694,10 @@ index bbabb3b..b17f6af 100644
              if os.path.exists(v):
                  os.remove(v)
  
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/manpage.py b/policycoreutils-2.3/sepolicy/sepolicy/manpage.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/manpage.py b/policycoreutils-2.4/sepolicy/sepolicy/manpage.py
 index ba15b2c..2316f50 100755
---- a/policycoreutils-2.3/sepolicy/sepolicy/manpage.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/manpage.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/manpage.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/manpage.py
 @@ -30,103 +30,111 @@ import selinux
  import sepolicy
  from sepolicy import *
@@ -662748,10 +662330,10 @@ index ba15b2c..2316f50 100755
  
  SELinux policy allows the %s role%s can transition to the %s_r role.
  
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/network.py b/policycoreutils-2.3/sepolicy/sepolicy/network.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/network.py b/policycoreutils-2.4/sepolicy/sepolicy/network.py
 index 3a75d7c..dca1b79 100755
---- a/policycoreutils-2.3/sepolicy/sepolicy/network.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/network.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/network.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/network.py
 @@ -24,20 +24,22 @@ import sepolicy
  search=sepolicy.search
  info=sepolicy.info
@@ -662779,10 +662361,10 @@ index 3a75d7c..dca1b79 100755
      if len(tlist) > 0:
          d[(src,protocol,perm)] = []
          for i in tlist:
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/sedbus.py b/policycoreutils-2.3/sepolicy/sepolicy/sedbus.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/sedbus.py b/policycoreutils-2.4/sepolicy/sepolicy/sedbus.py
 index c6645ef..8965795 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/sedbus.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/sedbus.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/sedbus.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/sedbus.py
 @@ -54,5 +54,5 @@ if __name__ == "__main__":
          dbus_proxy = SELinuxDBus()
          resp = dbus_proxy.setenforce(int(sys.argv[1]))
@@ -662791,10 +662373,10 @@ index c6645ef..8965795 100644
 -        print e
 +    except dbus.DBusException as e:
 +        print (e)
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/sepolicy.glade b/policycoreutils-2.3/sepolicy/sepolicy/sepolicy.glade
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/sepolicy.glade b/policycoreutils-2.4/sepolicy/sepolicy/sepolicy.glade
 index 1275c7f..b848baa 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/sepolicy.glade
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/sepolicy.glade
+--- a/policycoreutils-2.4/sepolicy/sepolicy/sepolicy.glade
++++ b/policycoreutils-2.4/sepolicy/sepolicy/sepolicy.glade
 @@ -2,7 +2,7 @@
  <!-- Generated with glade 3.16.0 on Fri Oct 11 08:24:19 2013 -->
  <interface>
@@ -662938,10 +662520,10 @@ index 1275c7f..b848baa 100644
              <property name="justify">fill</property>
              <property name="wrap">True</property>
            </object>
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/templates/executable.py b/policycoreutils-2.3/sepolicy/sepolicy/templates/executable.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/templates/executable.py b/policycoreutils-2.4/sepolicy/sepolicy/templates/executable.py
 index 4b9534d..f267993 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/templates/executable.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/templates/executable.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/templates/executable.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/templates/executable.py
 @@ -86,6 +86,7 @@ roleattribute system_r TEMPLATETYPE_roles;
  type TEMPLATETYPE_t;
  type TEMPLATETYPE_exec_t;
@@ -662999,10 +662581,10 @@ index 4b9534d..f267993 100644
  """
  
  if_initscript_admin_types="""
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/templates/spec.py b/policycoreutils-2.3/sepolicy/sepolicy/templates/spec.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/templates/spec.py b/policycoreutils-2.4/sepolicy/sepolicy/templates/spec.py
 index 16a2208..d8ee42f 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/templates/spec.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/templates/spec.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/templates/spec.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/templates/spec.py
 @@ -39,7 +39,7 @@ install -m 644 %{SOURCE1} %{buildroot}%{_datadir}/selinux/devel/include/contrib/
  install -d %{buildroot}%{_mandir}/man8/
  install -m 644 %{SOURCE2} %{buildroot}%{_mandir}/man8/DOMAINNAME_selinux.8
@@ -663021,10 +662603,10 @@ index 16a2208..d8ee42f 100644
  
  %changelog
  * TODAYSDATE YOUR NAME <YOUR at EMAILADDRESS> 1.0-1
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/templates/test_module.py b/policycoreutils-2.3/sepolicy/sepolicy/templates/test_module.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/templates/test_module.py b/policycoreutils-2.4/sepolicy/sepolicy/templates/test_module.py
 index 893a204..3a3faa6 100644
---- a/policycoreutils-2.3/sepolicy/sepolicy/templates/test_module.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/templates/test_module.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/templates/test_module.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/templates/test_module.py
 @@ -111,7 +111,7 @@ role sepolicy_r;
  role sepolicy_source_r;
  role sepolicy_target_r;
@@ -663034,20 +662616,20 @@ index 893a204..3a3faa6 100644
  #
  # Local policy
  #
-diff --git a/policycoreutils-2.3/sepolicy/sepolicy/transition.py b/policycoreutils-2.3/sepolicy/sepolicy/transition.py
+diff --git a/policycoreutils-2.4/sepolicy/sepolicy/transition.py b/policycoreutils-2.4/sepolicy/sepolicy/transition.py
 index 11834c7..96bf96c 100755
---- a/policycoreutils-2.3/sepolicy/sepolicy/transition.py
-+++ b/policycoreutils-2.3/sepolicy/sepolicy/transition.py
+--- a/policycoreutils-2.4/sepolicy/sepolicy/transition.py
++++ b/policycoreutils-2.4/sepolicy/sepolicy/transition.py
 @@ -78,4 +78,4 @@ class setrans:
  
      def output(self):
          self.seen = []
 -        print self.out(self.source)
 +        print(self.out(self.source))
-diff --git a/policycoreutils-2.3/sepolicy/setup.py b/policycoreutils-2.3/sepolicy/setup.py
+diff --git a/policycoreutils-2.4/sepolicy/setup.py b/policycoreutils-2.4/sepolicy/setup.py
 index d8e2d64..cac667c 100644
---- a/policycoreutils-2.3/sepolicy/setup.py
-+++ b/policycoreutils-2.3/sepolicy/setup.py
+--- a/policycoreutils-2.4/sepolicy/setup.py
++++ b/policycoreutils-2.4/sepolicy/setup.py
 @@ -4,7 +4,7 @@
  # Author: Dan Walsh <dwalsh at redhat.com>
  import os
@@ -663057,10 +662639,10 @@ index d8e2d64..cac667c 100644
                     libraries=["apol", "qpol"],
                     sources=[ "policy.c", "info.c", "search.c"]
  )
-diff --git a/policycoreutils-2.3/sepolicy/test_sepolicy.py b/policycoreutils-2.3/sepolicy/test_sepolicy.py
+diff --git a/policycoreutils-2.4/sepolicy/test_sepolicy.py b/policycoreutils-2.4/sepolicy/test_sepolicy.py
 index aef799f..5ded03d 100644
---- a/policycoreutils-2.3/sepolicy/test_sepolicy.py
-+++ b/policycoreutils-2.3/sepolicy/test_sepolicy.py
+--- a/policycoreutils-2.4/sepolicy/test_sepolicy.py
++++ b/policycoreutils-2.4/sepolicy/test_sepolicy.py
 @@ -1,28 +1,28 @@
 -import unittest, os, shutil
 +import unittest, os, shutil 
@@ -663106,10 +662688,10 @@ index aef799f..5ded03d 100644
      else:
 -        print "SELinux must be in enforcing mode for this test"
 +        print("SELinux must be in enforcing mode for this test")
-diff --git a/policycoreutils-2.3/setfiles/restore.c b/policycoreutils-2.3/setfiles/restore.c
+diff --git a/policycoreutils-2.4/setfiles/restore.c b/policycoreutils-2.4/setfiles/restore.c
 index 2a7cfa3..95fba09 100644
---- a/policycoreutils-2.3/setfiles/restore.c
-+++ b/policycoreutils-2.3/setfiles/restore.c
+--- a/policycoreutils-2.4/setfiles/restore.c
++++ b/policycoreutils-2.4/setfiles/restore.c
 @@ -160,6 +160,9 @@ static int restore(FTSENT *ftsent, int recurse)
  	/* Get the current context of the file. */
  	ret = lgetfilecon_raw(ftsent->fts_accpath, &curcon);
@@ -663148,13 +662730,13 @@ index 2a7cfa3..95fba09 100644
  		if (S_ISLNK(sb.st_mode)) {
  			char path[PATH_MAX + 1];
  
-diff --git a/policycoreutils-2.3/setfiles/setfiles.c b/policycoreutils-2.3/setfiles/setfiles.c
-index ac1c39a..184ef52 100644
---- a/policycoreutils-2.3/setfiles/setfiles.c
-+++ b/policycoreutils-2.3/setfiles/setfiles.c
+diff --git a/policycoreutils-2.4/setfiles/setfiles.c b/policycoreutils-2.4/setfiles/setfiles.c
+index 86d3f28..a9c182c 100644
+--- a/policycoreutils-2.4/setfiles/setfiles.c
++++ b/policycoreutils-2.4/setfiles/setfiles.c
 @@ -153,6 +153,9 @@ int main(int argc, char **argv)
  	int recurse; /* Recursive descent. */
- 	char *base;
+ 	const char *base;
  	int mass_relabel = 0, errors = 0;
 +	const char *ropts = "e:f:hilno:pqrsvFRW0";
 +	const char *sopts = "c:de:f:hilno:pqr:svFR:W0";
diff --git a/policycoreutils.spec b/policycoreutils.spec
index d78b5a4..d8db18d 100644
--- a/policycoreutils.spec
+++ b/policycoreutils.spec
@@ -1,18 +1,18 @@
 %global	libauditver	2.1.3-4
-%global libsepolver	2.1.9-1
-%global	libsemanagever	2.1.10-1
-%global	libselinuxver	2.2.1-1
-%global	sepolgenver	1.2.1
+%global libsepolver	2.4-0
+%global	libsemanagever	2.4-0
+%global	libselinuxver	2.4-0
+%global	sepolgenver	1.2.2
 
 Summary: SELinux policy core utilities
 Name:	 policycoreutils
-Version: 2.3
-Release: 16%{?dist}
+Version: 2.4
+Release: 0%{?dist}.4
 License: GPLv2
 Group:	 System Environment/Base
 # https://github.com/SELinuxProject/selinux/wiki/Releases
-Source:	https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20140506/policycoreutils-%{version}.tar.gz
-Source1:https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20140506/sepolgen-%{sepolgenver}.tar.gz
+Source: https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20150202/policycoreutils-2.4.tar.gz
+Source1:https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20150202/sepolgen-1.2.2.tar.gz
 URL:	 http://www.selinuxproject.org
 Source2: policycoreutils_man_ru2.tar.bz2
 Source3: system-config-selinux.png
@@ -63,7 +63,6 @@ make -C policycoreutils-%{version} LSPP_PRIV=y SBINDIR="%{_sbindir}" LIBDIR="%{_
 make -C sepolgen-%{sepolgenver} SBINDIR="%{_sbindir}" LSPP_PRIV=y LIBDIR="%{_libdir}" CFLAGS="%{optflags} -fPIE" LDFLAGS="-pie -Wl,-z,relro" all
 
 %install
-mkdir -p %{buildroot}/var/lib/selinux
 mkdir -p %{buildroot}%{_bindir}
 mkdir -p %{buildroot}%{_sbindir}
 mkdir -p %{buildroot}%{_mandir}/man1
@@ -187,7 +186,6 @@ an SELinux environment.
 %{python_sitearch}/%{name}*.egg-info
 %{python_sitearch}/sepolicy*.egg-info
 %{python_sitearch}/%{name}
-%dir  /var/lib/selinux
 %{_mandir}/man8/chcat.8*
 %{_mandir}/ru/man8/chcat.8*
 %{_mandir}/man8/sandbox.8*
@@ -306,7 +304,6 @@ system-config-selinux is a utility for managing the SELinux environment
 %{_mandir}/man8/system-config-selinux.8*
 %{_mandir}/man8/selinux-polgengui.8*
 %{_mandir}/man8/sepolicy-gui.8*
-%{_datadir}/system-config-selinux/selinux_server.py
 %{_datadir}/dbus-1/system-services/org.selinux.service
 %{_datadir}/polkit-1/actions/org.selinux.policy
 %{_datadir}/polkit-1/actions/org.selinux.config.policy
@@ -333,6 +330,7 @@ fi
 %{_sbindir}/semodule
 %{_sbindir}/sestatus
 %{_bindir}/secon
+%{_libexecdir}/selinux/hll
 %config(noreplace) %{_sysconfdir}/sestatus.conf
 # selinux-policy Requires: policycoreutils, so we own this set of directories and our files within them
 %{_mandir}/man5/selinux_config.5.gz
@@ -388,6 +386,9 @@ The policycoreutils-restorecond package contains the restorecond service.
 %systemd_postun_with_restart restorecond.service
 
 %changelog
+* Mon Apr 13 2015 Petr Lautrbach <plautrba at redhat.com> 2.4-0.4
+- Update to upstream 2.4
+
 * Tue Feb 24 2015 Petr Lautrbach <plautrba at redhat.com> 2.3-16
 - Temporary removed Requires:audit-libs-python from policycoreutils-python3 subpackage (#1195139)
 - Simplication of sepolicy-manpage web functionality (#1193552)
diff --git a/sepolgen-rhat.patch b/sepolgen-rhat.patch
index 60c15d7..46012ee 100644
--- a/sepolgen-rhat.patch
+++ b/sepolgen-rhat.patch
@@ -1,7 +1,7 @@
-diff --git a/sepolgen-1.2.1/src/sepolgen/access.py b/sepolgen-1.2.1/src/sepolgen/access.py
+diff --git a/sepolgen-1.2.2/src/sepolgen/access.py b/sepolgen-1.2.2/src/sepolgen/access.py
 index cf13210..9154887 100644
---- a/sepolgen-1.2.1/src/sepolgen/access.py
-+++ b/sepolgen-1.2.1/src/sepolgen/access.py
+--- a/sepolgen-1.2.2/src/sepolgen/access.py
++++ b/sepolgen-1.2.2/src/sepolgen/access.py
 @@ -88,6 +88,8 @@ class AccessVector:
              self.audit_msgs = []
              self.type = audit2why.TERULE
@@ -43,10 +43,10 @@ index cf13210..9154887 100644
              access.type = avc_type
              cls[obj_class, avc_type] = access
  
-diff --git a/sepolgen-1.2.1/src/sepolgen/audit.py b/sepolgen-1.2.1/src/sepolgen/audit.py
+diff --git a/sepolgen-1.2.2/src/sepolgen/audit.py b/sepolgen-1.2.2/src/sepolgen/audit.py
 index 56919be..57263d0 100644
---- a/sepolgen-1.2.1/src/sepolgen/audit.py
-+++ b/sepolgen-1.2.1/src/sepolgen/audit.py
+--- a/sepolgen-1.2.2/src/sepolgen/audit.py
++++ b/sepolgen-1.2.2/src/sepolgen/audit.py
 @@ -169,6 +169,7 @@ class AVCMessage(AuditMessage):
          self.exe = ""
          self.path = ""
@@ -164,10 +164,10 @@ index 56919be..57263d0 100644
          return av_set
  
  class AVCTypeFilter:
-diff --git a/sepolgen-1.2.1/src/sepolgen/policygen.py b/sepolgen-1.2.1/src/sepolgen/policygen.py
+diff --git a/sepolgen-1.2.2/src/sepolgen/policygen.py b/sepolgen-1.2.2/src/sepolgen/policygen.py
 index 5f38577..3b9e9f4 100644
---- a/sepolgen-1.2.1/src/sepolgen/policygen.py
-+++ b/sepolgen-1.2.1/src/sepolgen/policygen.py
+--- a/sepolgen-1.2.2/src/sepolgen/policygen.py
++++ b/sepolgen-1.2.2/src/sepolgen/policygen.py
 @@ -81,8 +81,9 @@ class PolicyGenerator:
              self.module = refpolicy.Module()
  
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/policycoreutils.git/commit/?h=private-master-2.4&id=be16d7c136c334faf5371b664d664e37ab82a061


More information about the scm-commits mailing list