From c910a0cf102cdc7dd8475e2a196d1363691ea229 Mon Sep 17 00:00:00 2001 From: Dan Walsh Date: Tue, 15 Jan 2013 12:19:10 -0500 Subject: [PATCH] Update Translations - Fix handling of semanage generate --cgi -n MODULE PATHTO/CGI - This fixes the spec file and script file getting wrong names for modules and types. --- policycoreutils-rhat.patch | 1022 ++++++++++++++++++++---------------- policycoreutils.spec | 7 +- 2 files changed, 564 insertions(+), 465 deletions(-) diff --git a/policycoreutils-rhat.patch b/policycoreutils-rhat.patch index 0113267..0874e5b 100644 --- a/policycoreutils-rhat.patch +++ b/policycoreutils-rhat.patch @@ -140599,10 +140599,10 @@ index 9ccb8e0..75801e9 100644 +"services." msgstr "" diff --git a/policycoreutils/po/hu.po b/policycoreutils/po/hu.po -index e92b9b3..b3c942c 100644 +index e92b9b3..1179592 100644 --- a/policycoreutils/po/hu.po +++ b/policycoreutils/po/hu.po -@@ -1,7 +1,7 @@ +@@ -1,36 +1,33 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. @@ -140611,16 +140611,17 @@ index e92b9b3..b3c942c 100644 # Translators: # Arpad Biro , 2006, 2007. # Nagy István Zoltán , 2009. -@@ -10,27 +10,24 @@ msgid "" +-# Zoltan Hoppár , 2012. ++# Zoltan Hoppár , 2012-2013. + msgid "" msgstr "" "Project-Id-Version: Policycoreutils\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-05-25 07:28-0400\n" -"PO-Revision-Date: 2012-04-23 07:55+0000\n" --"Last-Translator: Zoltan Hoppár \n" +"POT-Creation-Date: 2013-01-04 12:01-0500\n" -+"PO-Revision-Date: 2013-01-04 17:02+0000\n" -+"Last-Translator: dwalsh \n" ++"PO-Revision-Date: 2013-01-09 17:08+0000\n" + "Last-Translator: Zoltan Hoppár \n" "Language-Team: Hungarian \n" -"Language: hu\n" "MIME-Version: 1.0\n" @@ -140930,7 +140931,7 @@ index e92b9b3..b3c942c 100644 -#: ../semanage/seobject.py:864 +#: ../semanage/seobject.py:672 +msgid "Service" -+msgstr "" ++msgstr "Szolgáltatás" + +#: ../semanage/seobject.py:698 ../semanage/seobject.py:729 +#: ../semanage/seobject.py:796 ../semanage/seobject.py:853 @@ -141101,7 +141102,7 @@ index e92b9b3..b3c942c 100644 +#: ../semanage/seobject.py:1814 +#, python-format +msgid "Type %s is invalid, must be a port type" -+msgstr "" ++msgstr "%s típusa helytelen, porttípusnak kell lennie." + +#: ../semanage/seobject.py:1000 ../semanage/seobject.py:1062 +#: ../semanage/seobject.py:1117 ../semanage/seobject.py:1123 @@ -141200,17 +141201,17 @@ index e92b9b3..b3c942c 100644 -msgstr "Meg kell adni SELinux-típust" +#: ../semanage/seobject.py:1256 +msgid "SELinux node type is required" -+msgstr "" -+ -+#: ../semanage/seobject.py:1259 ../semanage/seobject.py:1327 -+#, python-format -+msgid "Type %s is invalid, must be a node type" -+msgstr "" ++msgstr "SELinux node típus szükséges." -#: ../semanage/seobject.py:1255 ../semanage/seobject.py:1320 -#: ../semanage/seobject.py:1356 ../semanage/seobject.py:1454 -#: ../semanage/seobject.py:1516 ../semanage/seobject.py:1550 -#: ../semanage/seobject.py:1732 ++#: ../semanage/seobject.py:1259 ../semanage/seobject.py:1327 ++#, python-format ++msgid "Type %s is invalid, must be a node type" ++msgstr "%s típusa helytelen, node típusú kell lennie." ++ +#: ../semanage/seobject.py:1263 ../semanage/seobject.py:1331 +#: ../semanage/seobject.py:1367 ../semanage/seobject.py:1465 +#: ../semanage/seobject.py:1527 ../semanage/seobject.py:1561 @@ -141490,18 +141491,19 @@ index e92b9b3..b3c942c 100644 #, python-format msgid "" -"File spec %s conflicts with equivalency rule '%s %s'; Try adding '%s' instead" +-msgstr "" +"File spec %s conflicts with equivalency rule '%s %s'; Try adding '%s' " +"instead" +msgstr "Fájl specifikáció %s ütközik egy azonossági szabállyal '%s %s'; Próbálja meg helyette hozzáadni ezt: '%s'" -+ -+#: ../semanage/seobject.py:1755 -+#, python-format -+msgid "Type %s is invalid, must be a file or device type" - msgstr "" -#: ../semanage/seobject.py:1736 ../semanage/seobject.py:1741 -#: ../semanage/seobject.py:1794 ../semanage/seobject.py:1876 -#: ../semanage/seobject.py:1880 ++#: ../semanage/seobject.py:1755 ++#, python-format ++msgid "Type %s is invalid, must be a file or device type" ++msgstr "%s típusa helytelen, fájl vagy eszköztípusnak kell lennie." ++ +#: ../semanage/seobject.py:1763 ../semanage/seobject.py:1768 +#: ../semanage/seobject.py:1824 ../semanage/seobject.py:1906 +#: ../semanage/seobject.py:1910 @@ -142008,12 +142010,12 @@ index e92b9b3..b3c942c 100644 -"Szabványos Init Daemon-ok azok a szolgáltatások amelyeket rendszerindításkor " -"init szkriptekkel indítanak. Rendszerint egy szkriptet igényel az /etc/rc.d/" -"init.d mappában" -+msgstr "Szabványos Init Daemon-ok azok a szolgáltatások amelyeket rendszerindításkor init szkriptekkel indítanak. Rendszerint egy szkriptet igényel az /etc/rc.d/init.d mappában" - +- -#: ../gui/polgen.glade:241 ../gui/polgen.py:156 -msgid "Standard Init Daemon" -msgstr "Szabványos init daemon" -- ++msgstr "Szabványos Init Daemon-ok azok a szolgáltatások amelyeket rendszerindításkor init szkriptekkel indítanak. Rendszerint egy szkriptet igényel az /etc/rc.d/init.d mappában" + -#: ../gui/polgen.glade:261 ../gui/polgen.py:157 +#: ../gui/polgen.glade:332 ../sepolicy/sepolicy/generate.py:172 msgid "DBUS System Daemon" @@ -142224,12 +142226,12 @@ index e92b9b3..b3c942c 100644 msgid "" "Enter complete path to init script used to start the confined application." -msgstr "" -+msgstr "Adjon meg teljes elérési utat az indiításhoz felhasznált init szkripthez ami elindítja a szabályozni kívánt alkalmazást." - +- -#: ../gui/polgen.glade:982 -msgid "label105" -msgstr "" -- ++msgstr "Adjon meg teljes elérési utat az indiításhoz felhasznált init szkripthez ami elindítja a szabályozni kívánt alkalmazást." + -#: ../gui/polgen.glade:1011 +#: ../gui/polgen.glade:887 msgid "Select existing role to modify:" @@ -142298,22 +142300,22 @@ index e92b9b3..b3c942c 100644 +#: ../gui/polgen.glade:1074 ../gui/polgen.glade:1129 msgid "Select the domains that you would like this user administer." -msgstr "" -+msgstr "Válassza ki azokat a területeket amiket szeretne, ha ez a felhasználó adminisztrálna." - +- -#: ../gui/polgen.glade:1346 -msgid "label109" -msgstr "" -- ++msgstr "Válassza ki azokat a területeket amiket szeretne, ha ez a felhasználó adminisztrálna." + -#: ../gui/polgen.glade:1375 +#: ../gui/polgen.glade:1111 msgid "Select additional roles for %s:" -msgstr "" -- ++msgstr "Válasszon tövábbi szerepeket %s számára:" + -#: ../gui/polgen.glade:1437 -msgid "label111" -msgstr "" -+msgstr "Válasszon tövábbi szerepeket %s számára:" - +- -#: ../gui/polgen.glade:1466 +#: ../gui/polgen.glade:1166 msgid "Enter network ports that %s binds on:" @@ -142538,12 +142540,12 @@ index e92b9b3..b3c942c 100644 -#: ../gui/polgen.glade:3254 -msgid "Add Booleans Dialog" -msgstr "" -+msgstr "Szabályzati mappa" - +- -#: ../gui/polgen.glade:3327 -msgid "Boolean Name" -msgstr "" -- ++msgstr "Szabályzati mappa" + -#: ../gui/polgengui.py:261 +#: ../gui/polgengui.py:277 msgid "Role" @@ -142676,105 +142678,99 @@ index e92b9b3..b3c942c 100644 -"Name must be alpha numberic with no spaces. Consider using option \"-n " -"MODULENAME\"" -msgstr "" +- +-#: ../gui/polgen.py:414 +-msgid "User Role types can not be assigned executables." +-msgstr "" +"MLS/MCS\n" +"Level" +msgstr "MLS/MCS\nSzint" --#: ../gui/polgen.py:414 --msgid "User Role types can not be assigned executables." +-#: ../gui/polgen.py:420 +-msgid "Only Daemon apps can use an init script.." -msgstr "" +#: ../gui/portsPage.py:101 +msgid "Port" +msgstr "Port" --#: ../gui/polgen.py:420 --msgid "Only Daemon apps can use an init script.." +-#: ../gui/polgen.py:438 +-msgid "use_resolve must be a boolean value " -msgstr "" +#: ../gui/portsPage.py:207 +#, python-format +msgid "Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 " +msgstr "Portszám \"%s\" érvénytelen. 0 < PORT_SZÁM < 65536 " --#: ../gui/polgen.py:438 --msgid "use_resolve must be a boolean value " +-#: ../gui/polgen.py:444 +-msgid "use_syslog must be a boolean value " -msgstr "" +#: ../gui/portsPage.py:252 +msgid "List View" +msgstr "Listanézet" --#: ../gui/polgen.py:444 --msgid "use_syslog must be a boolean value " +-#: ../gui/polgen.py:450 +-msgid "use_kerberos must be a boolean value " -msgstr "" +#: ../gui/portsPage.py:255 ../gui/system-config-selinux.glade:2419 +msgid "Group View" +msgstr "Csoportnézet" --#: ../gui/polgen.py:450 --msgid "use_kerberos must be a boolean value " --msgstr "" -+#: ../gui/semanagePage.py:126 -+#, python-format -+msgid "Are you sure you want to delete %s '%s'?" -+msgstr "Biztos benne hogy törölni akarja %s '%s'?" - -#: ../gui/polgen.py:456 -msgid "manage_krb5_rcache must be a boolean value " -msgstr "" +#: ../gui/semanagePage.py:126 +#, python-format -+msgid "Delete %s" -+msgstr "%s törlése" ++msgid "Are you sure you want to delete %s '%s'?" ++msgstr "Biztos benne hogy törölni akarja %s '%s'?" -#: ../gui/polgen.py:486 -msgid "USER Types automatically get a tmp type" -msgstr "" ++#: ../gui/semanagePage.py:126 ++#, python-format ++msgid "Delete %s" ++msgstr "%s törlése" + +-#: ../gui/polgen.py:1004 +-msgid "You must enter the executable path for your confined process" +-msgstr "" +#: ../gui/semanagePage.py:134 +#, python-format +msgid "Add %s" +msgstr "%s hozzáadása" --#: ../gui/polgen.py:1004 --msgid "You must enter the executable path for your confined process" +-#: ../gui/polgen.py:1182 +-msgid "Type Enforcement file" -msgstr "" +#: ../gui/semanagePage.py:148 +#, python-format +msgid "Modify %s" +msgstr "%s módosítása" --#: ../gui/polgen.py:1182 --msgid "Type Enforcement file" +-#: ../gui/polgen.py:1183 +-msgid "Interface file" -msgstr "" +#: ../gui/statusPage.py:69 ../gui/system-config-selinux.glade:2819 +msgid "Permissive" +msgstr "Átjárható" --#: ../gui/polgen.py:1183 --msgid "Interface file" +-#: ../gui/polgen.py:1184 +-msgid "File Contexts file" -msgstr "" +#: ../gui/statusPage.py:70 ../gui/system-config-selinux.glade:2837 +msgid "Enforcing" +msgstr "Vezérelt" --#: ../gui/polgen.py:1184 --msgid "File Contexts file" +-#: ../gui/polgen.py:1185 +-msgid "Setup Script" -msgstr "" +#: ../gui/statusPage.py:94 +msgid "Status" +msgstr "Állapot" --#: ../gui/polgen.py:1185 --msgid "Setup Script" --msgstr "" -+#: ../gui/statusPage.py:133 -+msgid "" -+"Changing the policy type will cause a relabel of the entire file system on " -+"the next boot. Relabeling takes a long time depending on the size of the " -+"file system. Do you wish to continue?" -+msgstr "A szabályzattípus megváltoztatása azzal jár, hogy a teljes fájlrendszert át kell cimkézni a következő rendszerindításkor. Átcimkézés elég hosszadalmas folyamat lehet, a fájlrendszer méretétől függően. Kívánja folytatni?" - -#: ../gui/polgen.py:1306 -#, python-format -+#: ../gui/statusPage.py:147 ++#: ../gui/statusPage.py:133 msgid "" -"\n" -"%s\n" @@ -142782,6 +142778,20 @@ index e92b9b3..b3c942c 100644 -"sepolgen [ -n moduleName ] [ -m ] [ -t type ] [ executable | Name ]\n" -"valid Types:\n" -msgstr "" +- +-#: ../gui/polgen.py:1354 +-msgid "Executable or Name required" +-msgstr "" ++"Changing the policy type will cause a relabel of the entire file system on " ++"the next boot. Relabeling takes a long time depending on the size of the " ++"file system. Do you wish to continue?" ++msgstr "A szabályzattípus megváltoztatása azzal jár, hogy a teljes fájlrendszert át kell cimkézni a következő rendszerindításkor. Átcimkézés elég hosszadalmas folyamat lehet, a fájlrendszer méretétől függően. Kívánja folytatni?" + +-#: ../gui/portsPage.py:51 ../gui/system-config-selinux.glade:2528 +-msgid "Network Port" +-msgstr "" ++#: ../gui/statusPage.py:147 ++msgid "" +"Changing to SELinux disabled requires a reboot. It is not recommended. If " +"you later decide to turn SELinux back on, the system will be required to " +"relabel. If you just want to see if SELinux is causing a problem on your " @@ -142790,88 +142800,65 @@ index e92b9b3..b3c942c 100644 +" wish to continue?" +msgstr "Az SELinux kikapcsolása ugyan újraindítást igényel - de ez nem javasolt. Ha később úgy dönt hogy visszakapcsolja az SELinux alrendszert, a rendszer számára teljes újracimkézés lesz szükséges. Ha csak azt szeretné látni, hogy maga az SELinux alrendszer okozza a problémát vagy sem, váltson át átjárható módba ami csak logolja a hibákat, és nem lép közbe az SELinux szabályzattal. Az áteresztő mód természetesen nem igényel újraindítást. Kívánja folytatni?" --#: ../gui/polgen.py:1354 --msgid "Executable or Name required" --msgstr "" +-#: ../gui/portsPage.py:85 +#: ../gui/statusPage.py:152 -+msgid "" + msgid "" +-"SELinux Port\n" +-"Type" +-msgstr "" +"Changing to SELinux enabled will cause a relabel of the entire file system " +"on the next boot. Relabeling takes a long time depending on the size of the " +"file system. Do you wish to continue?" +msgstr "SELinux engedélyezése azzal jár, hogy a teljes fájlrendszert újra kell cimkézni a következő újraindításkor. Az újracimkézés folyamata a fájlrendszer méretétől függően hosszú időt vehet igénybe. Kívánja folytatni?" --#: ../gui/portsPage.py:51 ../gui/system-config-selinux.glade:2528 --msgid "Network Port" +-#: ../gui/portsPage.py:91 ../gui/system-config-selinux.glade:363 +-msgid "Protocol" -msgstr "" +#: ../gui/system-config-selinux.glade:11 +msgid "system-config-selinux" +msgstr "system-config-selinux" --#: ../gui/portsPage.py:85 +-#: ../gui/portsPage.py:96 ../gui/system-config-selinux.glade:479 +#: ../gui/system-config-selinux.glade:12 msgid "" --"SELinux Port\n" --"Type" +-"MLS/MCS\n" +-"Level" -msgstr "" +"Copyright (c)2006 Red Hat, Inc.\n" +"Copyright (c) 2006 Dan Walsh " +msgstr "Copyright (c)2006 Red Hat, Inc.\nCopyright (c) 2006 Dan Walsh " --#: ../gui/portsPage.py:91 ../gui/system-config-selinux.glade:363 --msgid "Protocol" +-#: ../gui/portsPage.py:101 +-msgid "Port" -msgstr "" +#: ../gui/system-config-selinux.glade:22 +#: ../gui/system-config-selinux.glade:544 +msgid "Add SELinux Login Mapping" +msgstr "SELinux bejelentkezési hozzárendelés hozzáadása" --#: ../gui/portsPage.py:96 ../gui/system-config-selinux.glade:479 --msgid "" --"MLS/MCS\n" --"Level" +-#: ../gui/portsPage.py:207 +-#, python-format +-msgid "Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 " -msgstr "" +#: ../gui/system-config-selinux.glade:257 +msgid "Add SELinux Network Ports" +msgstr "SELinux Hálózati Portok" --#: ../gui/portsPage.py:101 --msgid "Port" +-#: ../gui/portsPage.py:252 +-msgid "List View" -msgstr "" +#: ../gui/system-config-selinux.glade:391 +#: ../gui/system-config-selinux.glade:678 +msgid "SELinux Type" +msgstr "SELinux Típus" --#: ../gui/portsPage.py:207 --#, python-format --msgid "Port number \"%s\" is not valid. 0 < PORT_NUMBER < 65536 " +-#: ../gui/portsPage.py:255 ../gui/system-config-selinux.glade:2419 +-msgid "Group View" -msgstr "" +#: ../gui/system-config-selinux.glade:622 +msgid "File Specification" +msgstr "Fájl specifikáció" --#: ../gui/portsPage.py:252 --msgid "List View" --msgstr "" -+#: ../gui/system-config-selinux.glade:650 -+msgid "File Type" -+msgstr "Fájltípus" - --#: ../gui/portsPage.py:255 ../gui/system-config-selinux.glade:2419 --msgid "Group View" --msgstr "" -+#: ../gui/system-config-selinux.glade:727 -+msgid "" -+"all files\n" -+"regular file\n" -+"directory\n" -+"character device\n" -+"block device\n" -+"socket\n" -+"symbolic link\n" -+"named pipe\n" -+msgstr "összes fájl\nközönséges fájl\nmappa\nkarakteres eszköz\nblokk eszköz\nport\nszimbolikus link\nelnevezett pipe\n" - -#: ../gui/selinux.tbl:1 ../gui/selinux.tbl:30 ../gui/selinux.tbl:31 -#: ../gui/selinux.tbl:32 ../gui/selinux.tbl:33 ../gui/selinux.tbl:34 -#: ../gui/selinux.tbl:36 ../gui/selinux.tbl:37 ../gui/selinux.tbl:38 @@ -142919,16 +142906,24 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:226 ../gui/selinux.tbl:227 ../gui/selinux.tbl:230 -msgid "SELinux Service Protection" -msgstr "" -+#: ../gui/system-config-selinux.glade:773 -+msgid "MLS" -+msgstr "MLS" ++#: ../gui/system-config-selinux.glade:650 ++msgid "File Type" ++msgstr "Fájltípus" -#: ../gui/selinux.tbl:1 -msgid "Disable SELinux protection for acct daemon" -msgstr "" -+#: ../gui/system-config-selinux.glade:837 -+msgid "Add SELinux User" -+msgstr "SELinux felhasználó hozzáadása" ++#: ../gui/system-config-selinux.glade:727 ++msgid "" ++"all files\n" ++"regular file\n" ++"directory\n" ++"character device\n" ++"block device\n" ++"socket\n" ++"symbolic link\n" ++"named pipe\n" ++msgstr "összes fájl\nközönséges fájl\nmappa\nkarakteres eszköz\nblokk eszköz\nport\nszimbolikus link\nelnevezett pipe\n" -#: ../gui/selinux.tbl:2 ../gui/selinux.tbl:3 ../gui/selinux.tbl:70 -#: ../gui/selinux.tbl:153 ../gui/selinux.tbl:168 ../gui/selinux.tbl:169 @@ -142936,23 +142931,23 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:203 ../gui/selinux.tbl:204 ../gui/selinux.tbl:205 -msgid "Admin" -msgstr "" -+#: ../gui/system-config-selinux.glade:1079 -+msgid "SELinux Administration" -+msgstr "SELinux Adminisztráció" ++#: ../gui/system-config-selinux.glade:773 ++msgid "MLS" ++msgstr "MLS" -#: ../gui/selinux.tbl:2 -msgid "Allow all daemons to write corefiles to /" -msgstr "" -+#: ../gui/system-config-selinux.glade:1122 -+msgid "Add" -+msgstr "Hozzáadás" ++#: ../gui/system-config-selinux.glade:837 ++msgid "Add SELinux User" ++msgstr "SELinux felhasználó hozzáadása" -#: ../gui/selinux.tbl:3 -msgid "Allow all daemons the ability to use unallocated ttys" -msgstr "" -+#: ../gui/system-config-selinux.glade:1144 -+msgid "_Properties" -+msgstr "Tulajdonságok" ++#: ../gui/system-config-selinux.glade:1079 ++msgid "SELinux Administration" ++msgstr "SELinux Adminisztráció" -#: ../gui/selinux.tbl:4 ../gui/selinux.tbl:5 ../gui/selinux.tbl:11 -#: ../gui/selinux.tbl:12 ../gui/selinux.tbl:13 ../gui/selinux.tbl:15 @@ -142962,6 +142957,15 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:216 ../gui/selinux.tbl:217 -msgid "User Privs" -msgstr "" ++#: ../gui/system-config-selinux.glade:1122 ++msgid "Add" ++msgstr "Hozzáadás" + +-#: ../gui/selinux.tbl:4 ++#: ../gui/system-config-selinux.glade:1144 ++msgid "_Properties" ++msgstr "Tulajdonságok" ++ +#: ../gui/system-config-selinux.glade:1166 +msgid "_Delete" +msgstr "Törlés" @@ -142973,8 +142977,7 @@ index e92b9b3..b3c942c 100644 +#: ../gui/system-config-selinux.glade:1273 +msgid "Select:" +msgstr "Válasszon:" - --#: ../gui/selinux.tbl:4 ++ +#: ../gui/system-config-selinux.glade:1326 +msgid "System Default Enforcing Mode" +msgstr "Rendszer alapértelmezés Vezérelt mód" @@ -143160,7 +143163,8 @@ index e92b9b3..b3c942c 100644 +#: ../gui/system-config-selinux.glade:2350 +msgid "Add Network Port" +msgstr "Hálózati port hozzáadása" -+ + +-#: ../gui/selinux.tbl:20 +#: ../gui/system-config-selinux.glade:2366 +msgid "Edit Network Port" +msgstr "Hálózati port szerkesztése" @@ -143185,8 +143189,7 @@ index e92b9b3..b3c942c 100644 +#: ../gui/system-config-selinux.glade:2609 +msgid "Load policy module" +msgstr "Szabályzat modul betöltése" - --#: ../gui/selinux.tbl:20 ++ +#: ../gui/system-config-selinux.glade:2625 +msgid "Remove loadable policy module" +msgstr "Betölthető szabályzat modul eltávolítása" @@ -143198,38 +143201,21 @@ index e92b9b3..b3c942c 100644 +"Enable/Disable additional audit rules, that are normally not reported in the" +" log files." +msgstr "Engedélyezi/Tiltja további auditálási szabályzatokat, ami alapértelmezésben nem kerülnek reportálásra a log fájlokban." -+ -+#: ../gui/system-config-selinux.glade:2781 -+msgid "label44" -+msgstr "label44" -+ -+#: ../gui/system-config-selinux.glade:2818 -+msgid "Change process mode to permissive." -+msgstr "Változtassa meg feldolgozási módot átjárhatóra." -+ -+#: ../gui/system-config-selinux.glade:2836 -+msgid "Change process mode to enforcing" -+msgstr "Változtassa meg a feldolgozási módot vezéreltre" -+ -+#: ../gui/system-config-selinux.glade:2928 -+msgid "Process Domain" -+msgstr "Feldolgozási terület" -#: ../gui/selinux.tbl:21 ../gui/selinux.tbl:228 ../gui/selinux.tbl:229 -#: ../gui/selinux.tbl:231 -msgid "NIS" -msgstr "" -+#: ../gui/system-config-selinux.glade:2956 -+msgid "label59" -+msgstr "label59" ++#: ../gui/system-config-selinux.glade:2781 ++msgid "label44" ++msgstr "label44" -#: ../gui/selinux.tbl:21 -msgid "Allow daemons to run with NIS" -msgstr "" -+#: ../gui/usersPage.py:138 -+#, python-format -+msgid "SELinux user '%s' is required" -+msgstr "SELinux felhasználó '%s' szükséges" ++#: ../gui/system-config-selinux.glade:2818 ++msgid "Change process mode to permissive." ++msgstr "Változtassa meg feldolgozási módot átjárhatóra." -#: ../gui/selinux.tbl:22 ../gui/selinux.tbl:23 ../gui/selinux.tbl:24 -#: ../gui/selinux.tbl:25 ../gui/selinux.tbl:26 ../gui/selinux.tbl:27 @@ -143238,121 +143224,141 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:118 -msgid "Web Applications" -msgstr "" -+#: ../sepolicy/sepolicy.py:202 -+msgid "Generate SELinux man pages" -+msgstr "Állítsa elő az SELinux man oldalakat" ++#: ../gui/system-config-selinux.glade:2836 ++msgid "Change process mode to enforcing" ++msgstr "Változtassa meg a feldolgozási módot vezéreltre" -#: ../gui/selinux.tbl:22 -msgid "Transition staff SELinux user to Web Browser Domain" -msgstr "" -+#: ../sepolicy/sepolicy.py:205 -+msgid "path in which the generated SELinux man pages will be stored" -+msgstr "az elérési út ahol az előállított SELinux man oldalak tárolódnak" ++#: ../gui/system-config-selinux.glade:2928 ++msgid "Process Domain" ++msgstr "Feldolgozási terület" -#: ../gui/selinux.tbl:23 -msgid "Transition sysadm SELinux user to Web Browser Domain" -+#: ../sepolicy/sepolicy.py:207 -+msgid "name of the OS for man pages" - msgstr "" +-msgstr "" ++#: ../gui/system-config-selinux.glade:2956 ++msgid "label59" ++msgstr "label59" -#: ../gui/selinux.tbl:24 -msgid "Transition user SELinux user to Web Browser Domain" -+#: ../sepolicy/sepolicy.py:209 -+msgid "Generate HTML man pages structure for selected SELinux man page" - msgstr "" +-msgstr "" ++#: ../gui/usersPage.py:138 ++#, python-format ++msgid "SELinux user '%s' is required" ++msgstr "SELinux felhasználó '%s' szükséges" -#: ../gui/selinux.tbl:25 -msgid "Transition xguest SELinux user to Web Browser Domain" -msgstr "" -+#: ../sepolicy/sepolicy.py:213 -+msgid "All domains" -+msgstr "Mindet terület" ++#: ../sepolicy/sepolicy.py:202 ++msgid "Generate SELinux man pages" ++msgstr "Állítsa elő az SELinux man oldalakat" -#: ../gui/selinux.tbl:26 ../gui/selinux.tbl:27 ../gui/selinux.tbl:28 -#: ../gui/selinux.tbl:29 -msgid "Allow staff Web Browsers to write to home directories" -msgstr "" ++#: ../sepolicy/sepolicy.py:205 ++msgid "path in which the generated SELinux man pages will be stored" ++msgstr "az elérési út ahol az előállított SELinux man oldalak tárolódnak" + +-#: ../gui/selinux.tbl:30 +-msgid "Disable SELinux protection for amanda" +-msgstr "" ++#: ../sepolicy/sepolicy.py:207 ++msgid "name of the OS for man pages" ++msgstr "OS neve a man oldalakhoz" + +-#: ../gui/selinux.tbl:31 +-msgid "Disable SELinux protection for amavis" +-msgstr "" ++#: ../sepolicy/sepolicy.py:209 ++msgid "Generate HTML man pages structure for selected SELinux man page" ++msgstr "Készítsen HTML man oldalakat a kijelólt SELinux man oldalakból" + +-#: ../gui/selinux.tbl:32 +-msgid "Disable SELinux protection for apmd daemon" +-msgstr "" ++#: ../sepolicy/sepolicy.py:213 ++msgid "All domains" ++msgstr "Mindet terület" + +-#: ../gui/selinux.tbl:33 +-msgid "Disable SELinux protection for arpwatch daemon" +-msgstr "" +#: ../sepolicy/sepolicy.py:216 +msgid "Domain name(s) of man pages to be created" +msgstr "Elkészíteni kívánt man oldal tartomány(ok) nevei" --#: ../gui/selinux.tbl:30 --msgid "Disable SELinux protection for amanda" +-#: ../gui/selinux.tbl:34 +-msgid "Disable SELinux protection for auditd daemon" -msgstr "" +#: ../sepolicy/sepolicy.py:221 +msgid "Query SELinux policy network information" +msgstr "SELinux hálózati szabályzat információ lekérdezése" --#: ../gui/selinux.tbl:31 --msgid "Disable SELinux protection for amavis" +-#: ../gui/selinux.tbl:35 +-msgid "Disable SELinux protection for automount daemon" -msgstr "" +#: ../sepolicy/sepolicy.py:226 +msgid "list all SELinux port types" +msgstr "listázza az összes SELinux porttípust" --#: ../gui/selinux.tbl:32 --msgid "Disable SELinux protection for apmd daemon" +-#: ../gui/selinux.tbl:36 +-msgid "Disable SELinux protection for avahi" -msgstr "" +#: ../sepolicy/sepolicy.py:229 +msgid "show SELinux type related to the port" +msgstr "jelenítse meg a porthoz kapcsolódó SELinux típust" --#: ../gui/selinux.tbl:33 --msgid "Disable SELinux protection for arpwatch daemon" +-#: ../gui/selinux.tbl:37 +-msgid "Disable SELinux protection for bluetooth daemon" -msgstr "" +#: ../sepolicy/sepolicy.py:232 +msgid "Show ports defined for this SELinux type" +msgstr "Jelenítse meg a portokat az ehhez definiált SELinux típusokhoz" --#: ../gui/selinux.tbl:34 --msgid "Disable SELinux protection for auditd daemon" +-#: ../gui/selinux.tbl:38 +-msgid "Disable SELinux protection for canna daemon" -msgstr "" +#: ../sepolicy/sepolicy.py:235 +msgid "show ports to which this domain can bind and/or connect" +msgstr "Jelenítse meg azokat a portokat amelyeket ez a tartomány össze tud kapcsolni - bind/connect" --#: ../gui/selinux.tbl:35 --msgid "Disable SELinux protection for automount daemon" +-#: ../gui/selinux.tbl:39 +-msgid "Disable SELinux protection for cardmgr daemon" -msgstr "" +#: ../sepolicy/sepolicy.py:250 +msgid "query SELinux policy to see if domains can communicate with each other" +msgstr "Kérdezze le az SELinux szabályzatát hogy mely tartományok képesek egymással kommunikálni" --#: ../gui/selinux.tbl:36 --msgid "Disable SELinux protection for avahi" +-#: ../gui/selinux.tbl:40 +-msgid "Disable SELinux protection for Cluster Server" -msgstr "" +#: ../sepolicy/sepolicy.py:253 +msgid "Source Domain" +msgstr "Forrás tartomány" - --#: ../gui/selinux.tbl:37 --msgid "Disable SELinux protection for bluetooth daemon" --msgstr "" ++ +#: ../sepolicy/sepolicy.py:256 +msgid "Target Domain" +msgstr "Cél tartomány" - --#: ../gui/selinux.tbl:38 --msgid "Disable SELinux protection for canna daemon" --msgstr "" ++ +#: ../sepolicy/sepolicy.py:276 +msgid "query SELinux Policy to see description of booleans" +msgstr "Kérdezze le az SELinux szabályzatát hogy láthassa a boolean-ok leírását" --#: ../gui/selinux.tbl:39 --msgid "Disable SELinux protection for cardmgr daemon" +-#: ../gui/selinux.tbl:41 +#: ../sepolicy/sepolicy.py:280 +msgid "get all booleans descriptions" - msgstr "" - --#: ../gui/selinux.tbl:40 --msgid "Disable SELinux protection for Cluster Server" --msgstr "" ++msgstr "gyűjtse be az összes boolean leíróit" ++ +#: ../sepolicy/sepolicy.py:282 +msgid "boolean to get description" +msgstr "boolean hogy leírást kapjon róla" - --#: ../gui/selinux.tbl:41 ++ +#: ../sepolicy/sepolicy.py:301 msgid "" -"Allow cdrecord to read various content. nfs, samba, removable devices, user " @@ -143378,15 +143384,17 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:44 -msgid "Disable SELinux protection for clamscan" +-msgstr "" +#: ../sepolicy/sepolicy.py:327 +msgid "Command required for this type of policy" - msgstr "" ++msgstr "Parancs szükséges ilyen típusú szabályokhoz" -#: ../gui/selinux.tbl:45 -msgid "Disable SELinux protection for clvmd" +-msgstr "" +#: ../sepolicy/sepolicy.py:347 +msgid "List SELinux Policy interfaces" - msgstr "" ++msgstr "Listázza az SELinux szabályzat interfészeit" -#: ../gui/selinux.tbl:46 -msgid "Disable SELinux protection for comsat daemon" @@ -143398,21 +143406,24 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:47 ../gui/selinux.tbl:48 ../gui/selinux.tbl:49 -#: ../gui/selinux.tbl:50 ../gui/selinux.tbl:51 -msgid "Disable SELinux protection for courier daemon" +-msgstr "" +#: ../sepolicy/sepolicy.py:365 +msgid "Enter domain type which you will be extending" - msgstr "" ++msgstr "Adja meg a tartomány típusát amit kiterjeszteni szeretne" -#: ../gui/selinux.tbl:52 -msgid "Disable SELinux protection for cpucontrol daemon" +-msgstr "" +#: ../sepolicy/sepolicy.py:368 +msgid "Enter SELinux user(s) which will transition to this domain" - msgstr "" ++msgstr "Adja meg azon SELinux felhasználó(k) neveit, amelyek átmenetet képeznek erre a tartományra" -#: ../gui/selinux.tbl:53 -msgid "Disable SELinux protection for cpuspeed daemon" +-msgstr "" +#: ../sepolicy/sepolicy.py:371 +msgid "Enter domain(s) that this confined admin will administrate" - msgstr "" ++msgstr "Adja meg a tartományt, (vagy tartományokat), ahol ez a korlátozott admin adminisztrálni fog" -#: ../gui/selinux.tbl:54 -msgid "Cron" @@ -143423,9 +143434,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:54 -msgid "Disable SELinux protection for crond daemon" +-msgstr "" +#: ../sepolicy/sepolicy.py:378 +msgid "path in which the generated policy files will be stored" - msgstr "" ++msgstr "az elérési út ahol az előállított szabályzati fájlok tárolásra kerülnek" -#: ../gui/selinux.tbl:55 ../gui/selinux.tbl:56 ../gui/selinux.tbl:57 -#: ../gui/selinux.tbl:91 @@ -143437,6 +143449,7 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:55 -msgid "Disable SELinux protection for cupsd back end server" +-msgstr "" +#: ../sepolicy/sepolicy.py:384 ../sepolicy/sepolicy.py:387 +#: ../sepolicy/sepolicy.py:390 ../sepolicy/sepolicy.py:393 +#: ../sepolicy/sepolicy.py:396 ../sepolicy/sepolicy.py:399 @@ -143445,114 +143458,122 @@ index e92b9b3..b3c942c 100644 +#: ../sepolicy/sepolicy.py:414 ../sepolicy/sepolicy.py:417 +#, python-format +msgid "Generate Policy for %s" - msgstr "" - --#: ../gui/selinux.tbl:56 --msgid "Disable SELinux protection for cupsd daemon" --msgstr "" ++msgstr "Készítsen szabályzatot %s számára" ++ +#: ../sepolicy/sepolicy.py:422 +msgid "commands" +msgstr "parancsok" --#: ../gui/selinux.tbl:57 --msgid "Disable SELinux protection for cupsd_lpd" +-#: ../gui/selinux.tbl:56 +-msgid "Disable SELinux protection for cupsd daemon" +-msgstr "" +#: ../sepolicy/sepolicy.py:425 +msgid "Alternate SELinux policy, defaults to /sys/fs/selinux/policy" - msgstr "" ++msgstr "Változó SELinux szabályzat, alapértelmezés erre: /sys/fs/selinux/policy" + +-#: ../gui/selinux.tbl:57 +-msgid "Disable SELinux protection for cupsd_lpd" +-msgstr "" ++#: ../sepolicy/sepolicy/__init__.py:48 ++msgid "No SELinux Policy installed" ++msgstr "Nincs SELinux szabályzat telepítve" -#: ../gui/selinux.tbl:58 -msgid "CVS" -+#: ../sepolicy/sepolicy/__init__.py:48 -+msgid "No SELinux Policy installed" - msgstr "" - --#: ../gui/selinux.tbl:58 --msgid "Disable SELinux protection for cvs daemon" +-msgstr "" +#: ../sepolicy/sepolicy/__init__.py:54 +#, python-format +msgid "Failed to read %s policy file" - msgstr "" ++msgstr "%s szabályzatfájl olvasása sikertelen" --#: ../gui/selinux.tbl:59 --msgid "Disable SELinux protection for cyrus daemon" +-#: ../gui/selinux.tbl:58 +-msgid "Disable SELinux protection for cvs daemon" -msgstr "" +#: ../sepolicy/sepolicy/__init__.py:127 +msgid "unknown" +msgstr "ismeretlen" --#: ../gui/selinux.tbl:60 --msgid "Disable SELinux protection for dbskkd daemon" +-#: ../gui/selinux.tbl:59 +-msgid "Disable SELinux protection for cyrus daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:173 +msgid "Internet Services Daemon" +msgstr "Internet Services Daemon" --#: ../gui/selinux.tbl:61 --msgid "Disable SELinux protection for dbusd daemon" +-#: ../gui/selinux.tbl:60 +-msgid "Disable SELinux protection for dbskkd daemon" +-msgstr "" +#: ../sepolicy/sepolicy/generate.py:177 +msgid "Existing Domain Type" - msgstr "" ++msgstr "Létező Tartomány Típusok" + +-#: ../gui/selinux.tbl:61 +-msgid "Disable SELinux protection for dbusd daemon" +-msgstr "" ++#: ../sepolicy/sepolicy/generate.py:178 ++msgid "Minimal Terminal Login User Role" ++msgstr "Minimális Terminál login felhasználói szerepkör" -#: ../gui/selinux.tbl:62 -msgid "Disable SELinux protection for dccd" -+#: ../sepolicy/sepolicy/generate.py:178 -+msgid "Minimal Terminal Login User Role" - msgstr "" +-msgstr "" ++#: ../sepolicy/sepolicy/generate.py:179 ++msgid "Minimal X Windows Login User Role" ++msgstr "Minimális X felület login felhasználói szerepkör" -#: ../gui/selinux.tbl:63 -msgid "Disable SELinux protection for dccifd" -+#: ../sepolicy/sepolicy/generate.py:179 -+msgid "Minimal X Windows Login User Role" - msgstr "" +-msgstr "" ++#: ../sepolicy/sepolicy/generate.py:180 ++msgid "Desktop Login User Role" ++msgstr "Desktop Login felhasználói szerepkör" -#: ../gui/selinux.tbl:64 -msgid "Disable SELinux protection for dccm" -+#: ../sepolicy/sepolicy/generate.py:180 -+msgid "Desktop Login User Role" - msgstr "" +-msgstr "" ++#: ../sepolicy/sepolicy/generate.py:181 ++msgid "Administrator Login User Role" ++msgstr "Admin Login felhasználói szerepkör" -#: ../gui/selinux.tbl:65 -msgid "Disable SELinux protection for ddt daemon" -+#: ../sepolicy/sepolicy/generate.py:181 -+msgid "Administrator Login User Role" - msgstr "" +-msgstr "" ++#: ../sepolicy/sepolicy/generate.py:182 ++msgid "Confined Root Administrator Role" ++msgstr "Korlátozott Root Admin szerepkör" -#: ../gui/selinux.tbl:66 -msgid "Disable SELinux protection for devfsd daemon" -+#: ../sepolicy/sepolicy/generate.py:182 -+msgid "Confined Root Administrator Role" - msgstr "" - --#: ../gui/selinux.tbl:67 --msgid "Disable SELinux protection for dhcpc daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:187 +msgid "Valid Types:\n" +msgstr "Érvényes típusok:\n" --#: ../gui/selinux.tbl:68 --msgid "Disable SELinux protection for dhcpd daemon" +-#: ../gui/selinux.tbl:67 +-msgid "Disable SELinux protection for dhcpc daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:221 +#, python-format +msgid "Ports must be numbers or ranges of numbers from 1 to %d " +msgstr "A portoknak számoknak kell lennie vagy tartományoknak 1-től %d-ig" --#: ../gui/selinux.tbl:69 --msgid "Disable SELinux protection for dictd daemon" +-#: ../gui/selinux.tbl:68 +-msgid "Disable SELinux protection for dhcpd daemon" +-msgstr "" +#: ../sepolicy/sepolicy/generate.py:231 +msgid "You must enter a valid policy type" - msgstr "" ++msgstr "Adjon meg egy érvényes szabályzattípust" --#: ../gui/selinux.tbl:70 --msgid "Allow sysadm_t to directly start daemons" +-#: ../gui/selinux.tbl:69 +-msgid "Disable SELinux protection for dictd daemon" +-msgstr "" +#: ../sepolicy/sepolicy/generate.py:234 +#, python-format +msgid "You must enter a name for your policy module for your %s." - msgstr "" ++msgstr "Meg kell adnia egy nevet a szabályzat moduljának %s számára." --#: ../gui/selinux.tbl:71 --msgid "Disable SELinux protection for Evolution" +-#: ../gui/selinux.tbl:70 +-msgid "Allow sysadm_t to directly start daemons" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:355 +msgid "" @@ -143560,134 +143581,141 @@ index e92b9b3..b3c942c 100644 +"MODULENAME\"" +msgstr "A névnek alfanumerikusnak kell lennie szóközök nélkül. Vagy alkalmazza az \"-n MODULNÉV' opciót" --#: ../gui/selinux.tbl:72 --msgid "Games" +-#: ../gui/selinux.tbl:71 +-msgid "Disable SELinux protection for Evolution" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:447 +msgid "User Role types can not be assigned executables." +msgstr "Felhasználói szerepkörök nem lehetnek hozzákapcsolt végrehajtható állományok." -#: ../gui/selinux.tbl:72 --msgid "Disable SELinux protection for games" +-msgid "Games" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:453 +msgid "Only Daemon apps can use an init script.." +msgstr "Csak daemon alkalmazások használhatnak init szkriptet..." --#: ../gui/selinux.tbl:73 --msgid "Disable SELinux protection for the web browsers" +-#: ../gui/selinux.tbl:72 +-msgid "Disable SELinux protection for games" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:471 +msgid "use_resolve must be a boolean value " +msgstr "use_resolve boolean értékűnek kell lennie" --#: ../gui/selinux.tbl:74 --msgid "Disable SELinux protection for Thunderbird" +-#: ../gui/selinux.tbl:73 +-msgid "Disable SELinux protection for the web browsers" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:477 +msgid "use_syslog must be a boolean value " +msgstr "use_syslog boolean értékűnek kell lennie" --#: ../gui/selinux.tbl:75 --msgid "Disable SELinux protection for distccd daemon" +-#: ../gui/selinux.tbl:74 +-msgid "Disable SELinux protection for Thunderbird" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:483 +msgid "use_kerberos must be a boolean value " +msgstr "use_kerberos boolean értékűnek kell lennie" --#: ../gui/selinux.tbl:76 --msgid "Disable SELinux protection for dmesg daemon" +-#: ../gui/selinux.tbl:75 +-msgid "Disable SELinux protection for distccd daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:489 +msgid "manage_krb5_rcache must be a boolean value " +msgstr "manage_krb5_rcache boolean értékűnek kell lennie" --#: ../gui/selinux.tbl:77 --msgid "Disable SELinux protection for dnsmasq daemon" +-#: ../gui/selinux.tbl:76 +-msgid "Disable SELinux protection for dmesg daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:519 +msgid "USER Types automatically get a tmp type" +msgstr "FELHASZNÁLÓ típus automatikusan kap egy tmp típust" --#: ../gui/selinux.tbl:78 --msgid "Disable SELinux protection for dovecot daemon" +-#: ../gui/selinux.tbl:77 +-msgid "Disable SELinux protection for dnsmasq daemon" +-msgstr "" +#: ../sepolicy/sepolicy/generate.py:857 +#, python-format +msgid "%s policy modules require existing domains" - msgstr "" ++msgstr "%s szabályzatmodulok számára meglévő tartományokat igényelnek" --#: ../gui/selinux.tbl:79 --msgid "Disable SELinux protection for entropyd daemon" +-#: ../gui/selinux.tbl:78 +-msgid "Disable SELinux protection for dovecot daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:1059 +msgid "You must enter the executable path for your confined process" +msgstr "Adjon meg egy végrehajtható elérési utat a szabályozott folyamatához" --#: ../gui/selinux.tbl:80 --msgid "Disable SELinux protection for fetchmail" +-#: ../gui/selinux.tbl:79 +-msgid "Disable SELinux protection for entropyd daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:1321 +msgid "Type Enforcement file" +msgstr "Típus vezérlő fájl" --#: ../gui/selinux.tbl:81 --msgid "Disable SELinux protection for fingerd daemon" +-#: ../gui/selinux.tbl:80 +-msgid "Disable SELinux protection for fetchmail" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:1322 +msgid "Interface file" +msgstr "Kezelőfelületi fájl" --#: ../gui/selinux.tbl:82 --msgid "Disable SELinux protection for freshclam daemon" +-#: ../gui/selinux.tbl:81 +-msgid "Disable SELinux protection for fingerd daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:1323 +msgid "File Contexts file" +msgstr "Fájl kontextus fájl" --#: ../gui/selinux.tbl:83 --msgid "Disable SELinux protection for fsdaemon daemon" +-#: ../gui/selinux.tbl:82 +-msgid "Disable SELinux protection for freshclam daemon" +-msgstr "" +#: ../sepolicy/sepolicy/generate.py:1324 +msgid "Spec file" - msgstr "" ++msgstr "Spec fájl" --#: ../gui/selinux.tbl:84 --msgid "Disable SELinux protection for gpm daemon" +-#: ../gui/selinux.tbl:83 +-msgid "Disable SELinux protection for fsdaemon daemon" -msgstr "" +#: ../sepolicy/sepolicy/generate.py:1325 +msgid "Setup Script" +msgstr "Beállító szkript" --#: ../gui/selinux.tbl:85 ../gui/selinux.tbl:125 --msgid "NFS" +-#: ../gui/selinux.tbl:84 +-msgid "Disable SELinux protection for gpm daemon" -msgstr "" +#: booleans.py:1 +msgid "" +"Allow ABRT to modify public files used for public file transfer services." +msgstr "Engedélyezi az ABRT számára hogy módosíthassa a publikus fájlokat amik a publikus fájlátvitel szolgáltatásoknál vannak" --#: ../gui/selinux.tbl:85 --msgid "Disable SELinux protection for gss daemon" +-#: ../gui/selinux.tbl:85 ../gui/selinux.tbl:125 +-msgid "NFS" -msgstr "" +#: booleans.py:2 +msgid "" +"Allow ABRT to run in abrt_handle_event_t domain to handle ABRT event scripts" +msgstr "Engedélyezi az ABRT számára hogy a abrt_handle_event_t tartományban fusson, ezzel pedig kezelni tudja az ABRT események szkriptjeit" --#: ../gui/selinux.tbl:86 --msgid "Disable SELinux protection for Hal daemon" +-#: ../gui/selinux.tbl:85 +-msgid "Disable SELinux protection for gss daemon" +-msgstr "" +#: booleans.py:3 +msgid "Allow amavis to use JIT compiler" +msgstr "Engedélyezi az Amavis számára a JIT fordító használatát" -+ + +-#: ../gui/selinux.tbl:86 +-msgid "Disable SELinux protection for Hal daemon" +-msgstr "" +#: booleans.py:4 +msgid "Allow antivirus programs to read non security files on a system" - msgstr "" ++msgstr "Engedélyezi az antivírus programoknak, hogy olvashassanak nem biztonsági fájlokat a rendszerben" -#: ../gui/selinux.tbl:87 -msgid "Compatibility" +-msgstr "" +#: booleans.py:5 +msgid "Allow auditadm to exec content" - msgstr "" ++msgstr "Engedélyezi az auditadm futását exec tartalomra" -#: ../gui/selinux.tbl:87 +#: booleans.py:6 @@ -143708,15 +143736,17 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:89 -msgid "Disable SELinux protection for hotplug daemon" +-msgstr "" +#: booleans.py:8 +msgid "Allow users to login using a yubikey server" - msgstr "" ++msgstr "Engedélyezi a felhasználók számára, hogy bejelentkezhessenek yubikey kiszolgálóval" -#: ../gui/selinux.tbl:90 -msgid "Disable SELinux protection for howl daemon" +-msgstr "" +#: booleans.py:9 +msgid "Allow awstats to purge Apache logs" - msgstr "" ++msgstr "Engedélyezi awstats számára, hogy megsemmisítse az Apache logfájljait" -#: ../gui/selinux.tbl:91 -msgid "Disable SELinux protection for cups hplip daemon" @@ -143829,15 +143859,17 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:105 ../gui/selinux.tbl:107 -msgid "Kerberos" +-msgstr "" +#: booleans.py:25 +msgid "Allow dan to manage user files" - msgstr "" ++msgstr "Engedélyezi dan számára, hogy felhasználói fájlokat kezeljen" -#: ../gui/selinux.tbl:105 -msgid "Disable SELinux protection for kadmind daemon" +-msgstr "" +#: booleans.py:26 +msgid "Allow dan to read user files" - msgstr "" ++msgstr "Engedélyezi dan számára, hogy felhasználói fájlokat olvasson" -#: ../gui/selinux.tbl:106 -msgid "Disable SELinux protection for klogd daemon" @@ -143949,9 +143981,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:121 -msgid "Disable SELinux protection for nagios daemon" +-msgstr "" +#: booleans.py:42 +msgid "Allow all domains to execute in fips_mode" - msgstr "" ++msgstr "Engedélyezi az összes tartomány számára hogy működhessen fips_mode módban" -#: ../gui/selinux.tbl:122 ../gui/selinux.tbl:128 -msgid "Name Service" @@ -144115,9 +144148,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:141 -msgid "pppd" +-msgstr "" +#: booleans.py:64 +msgid "Allow guest to exec content" - msgstr "" ++msgstr "Engedélyezi a vendég számára, hogy tartalmat futtathasson" -#: ../gui/selinux.tbl:141 -msgid "Allow pppd to be run for a regular user" @@ -144309,12 +144343,12 @@ index e92b9b3..b3c942c 100644 +"Allow apache scripts to write to public content, directories/files must be " +"labeled public_rw_content_t." +msgstr "Engedélyezze az apache szkriptek számára hogy publikus tartalmat rögzítsenek, a mappáknak/fájloknak public_rw_content_t cimkével kell rendelkezniük." - --#: ../gui/selinux.tbl:165 ++ +#: booleans.py:91 +msgid "Allow Apache to execute tmp content." +msgstr "Engedélyezze az Apache számára hogy végrehajthasson tmp tartalmat." -+ + +-#: ../gui/selinux.tbl:165 +#: booleans.py:92 msgid "" -"Allow X-Windows server to map a memory region as both executable and writable" @@ -144374,9 +144408,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:173 -msgid "Disable SELinux protection for setroubleshoot daemon" +-msgstr "" +#: booleans.py:100 +msgid "Allow Apache to query NS records" - msgstr "" ++msgstr "Engedélyezi az Apache számára, hogy NS bejegyzéseket kérdezhessen le" -#: ../gui/selinux.tbl:174 -msgid "Disable SELinux protection for slapd daemon" @@ -144534,9 +144569,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:191 -msgid "Allow stunnel daemon to run as standalone, outside of xinetd" +-msgstr "" +#: booleans.py:122 +msgid "Allow openshift to lockdown app" - msgstr "" ++msgstr "Engedélyezi az openshift számára, hogy alkalmazásokat zárolhasson" -#: ../gui/selinux.tbl:192 -msgid "Disable SELinux protection for swat daemon" @@ -144628,12 +144664,12 @@ index e92b9b3..b3c942c 100644 +#: booleans.py:135 +msgid "Allow unprivileged users to execute DDL statement" +msgstr "Engedélyezi jogosulatlan felhasználók számára hogy végrehajthassanak DDL statement műveletet" - --#: ../gui/selinux.tbl:203 ++ +#: booleans.py:136 +msgid "Allow pppd to load kernel modules for certain modems" +msgstr "Engedélyezi a pppd számára hogy betölthessen kernelmodulokat bizonyos modemek számára" -+ + +-#: ../gui/selinux.tbl:203 +#: booleans.py:137 +msgid "Allow pppd to be run for a regular user" +msgstr "Engedélyezi a pppd futtatását egy egyszerű felhasználó számára" @@ -144810,9 +144846,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/selinux.tbl:225 -msgid "Allow xen to read/write physical disk devices" +-msgstr "" +#: booleans.py:161 +msgid "Allow secadm to exec content" - msgstr "" ++msgstr "Engedélyezi secadm számára, hogy tartalmat futtathasson" -#: ../gui/selinux.tbl:226 -msgid "Disable SELinux protection for xfs daemon" @@ -144924,9 +144961,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/statusPage.py:69 ../gui/system-config-selinux.glade:2819 -msgid "Permissive" +-msgstr "" +#: booleans.py:174 +msgid "Allow user to use ssh chroot environment." - msgstr "" ++msgstr "Engedélyezi a felhasználó számára, hogy ssh chroot környezetet használhasson." -#: ../gui/statusPage.py:70 ../gui/system-config-selinux.glade:2837 -msgid "Enforcing" @@ -145072,9 +145110,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/system-config-selinux.glade:1079 -msgid "SELinux Administration" +-msgstr "" +#: booleans.py:191 +msgid "Allow staff to exec content" - msgstr "" ++msgstr "Engedélyezi a staff számára, hogy tartalmat futtathasson" -#: ../gui/system-config-selinux.glade:1122 -msgid "Add" @@ -145085,9 +145124,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/system-config-selinux.glade:1144 -msgid "_Properties" +-msgstr "" +#: booleans.py:193 +msgid "Allow sysadm to exec content" - msgstr "" ++msgstr "Engedélyezi sysadm számára, hogy tartalmat futtathasson" -#: ../gui/system-config-selinux.glade:1166 -msgid "_Delete" @@ -145115,9 +145155,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/system-config-selinux.glade:1326 -msgid "System Default Enforcing Mode" +-msgstr "" +#: booleans.py:197 +msgid "Allow tftp to read and write files in the user home directories" - msgstr "" ++msgstr "Engedélyezi a tftp számára, hogy olvasshassa és írhasson fájlokat a felhasználó home mappáiba" -#: ../gui/system-config-selinux.glade:1354 -msgid "" @@ -145131,9 +145172,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/system-config-selinux.glade:1373 -msgid "Current Enforcing Mode" +-msgstr "" +#: booleans.py:199 +msgid "Allow tor to act as a relay" - msgstr "" ++msgstr "Engedélyezi a tor számára, hogy reléként működjön" -#: ../gui/system-config-selinux.glade:1418 -msgid "System Default Policy Type: " @@ -145217,9 +145259,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/system-config-selinux.glade:1787 -msgid "Modify File Context" +-msgstr "" +#: booleans.py:210 +msgid "Allow user to exec content" - msgstr "" ++msgstr "Engedélyezi a felhasználó számára, hogy tartalmat futtathasson" -#: ../gui/system-config-selinux.glade:1803 -msgid "Delete File Context" @@ -145267,9 +145310,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/system-config-selinux.glade:2126 -msgid "label39" +-msgstr "" +#: booleans.py:217 +msgid "Allow confined virtual guests to interact with rawip sockets" - msgstr "" ++msgstr "Engedélyezi a korlátozott virtuális vendégek számára, hogy együttműködjenek rawip socket-ekkel" -#: ../gui/system-config-selinux.glade:2163 -msgid "Add User" @@ -145374,9 +145418,10 @@ index e92b9b3..b3c942c 100644 -#: ../gui/system-config-selinux.glade:2781 -msgid "label44" +-msgstr "" +#: booleans.py:232 +msgid "Allow xguest to exec content" - msgstr "" ++msgstr "Engedélyezi xguest számára, hogy tartalmat futtathasson" -#: ../gui/system-config-selinux.glade:2818 -msgid "Change process mode to permissive." @@ -339011,10 +339056,10 @@ index 0000000..d59452a + diff --git a/policycoreutils/sepolicy/search.c b/policycoreutils/sepolicy/search.c new file mode 100644 -index 0000000..adf7141 +index 0000000..a87e215 --- /dev/null +++ b/policycoreutils/sepolicy/search.c -@@ -0,0 +1,994 @@ +@@ -0,0 +1,1030 @@ +// Author: Thomas Liu + +/** @@ -339023,7 +339068,7 @@ index 0000000..adf7141 + * + * @author Thomas Liu + * @author Dan Walsh -+ * Copyright (C) 2012 Red Hat, inc ++ * Copyright (C) 2012-2013 Red Hat, inc + * + * Sections copied from sesearch.c in setools package + * @author Frank Mayer mayerf@tresys.com @@ -339118,7 +339163,6 @@ index 0000000..adf7141 + int rt; + if (!obj) return -1; + rt = PyTuple_SetItem(tuple, pos, obj); -+ Py_DECREF(obj); + return rt; +} + @@ -339208,7 +339252,7 @@ index 0000000..adf7141 + goto err; + } + obj = PyString_FromString(tmp); -+ if (py_insert_obj(dict, "source", obj)) ++ if (py_insert_obj(dict, "source", obj)) + goto err; + + if (qpol_role_allow_get_target_role(q, rule, &role)) { @@ -339218,7 +339262,7 @@ index 0000000..adf7141 + goto err; + } + obj = PyString_FromString(tmp); -+ if (py_insert_obj(dict, "target", obj)) ++ if (py_insert_obj(dict, "target", obj)) + goto err; + + rt = py_append_obj(output, dict); @@ -339314,6 +339358,75 @@ index 0000000..adf7141 + return -1; +} + ++static PyObject* get_bool(const qpol_policy_t *q, const qpol_cond_t * cond, int enabled) ++{ ++ qpol_iterator_t *iter = NULL; ++ qpol_cond_expr_node_t *expr = NULL; ++ char *tmp = NULL; ++ const char *bool_name = NULL; ++ int error = 0; ++ uint32_t expr_type = 0; ++ qpol_bool_t *cond_bool = NULL; ++ PyObject *obj, *tuple = NULL; ++ PyObject *boollist = NULL; ++ ++ if (!q || !cond) { ++ errno = EINVAL; ++ return NULL; ++ } ++ if (qpol_cond_get_expr_node_iter(q, cond, &iter) < 0) { ++ goto err; ++ } ++ ++ boollist = PyList_New(0); ++ if (! boollist) goto err; ++ ++ for (; !qpol_iterator_end(iter); qpol_iterator_next(iter)) { ++ if (qpol_iterator_get_item(iter, (void **)&expr)) { ++ goto err; ++ } ++ if (qpol_cond_expr_node_get_expr_type(q, expr, &expr_type)) { ++ goto err; ++ } ++ if (expr_type != QPOL_COND_EXPR_BOOL) { ++ obj = PyString_FromString(apol_cond_expr_type_to_str(expr_type)); ++ if (!obj) goto err; ++ py_append_obj(boollist, obj); ++ } else { ++ tuple = PyTuple_New(2); ++ if (!tuple) goto err; ++ ++ if (qpol_cond_expr_node_get_bool(q, expr, &cond_bool)) { ++ goto err; ++ } ++ if (qpol_bool_get_name(q, cond_bool, &bool_name)) { ++ goto err; ++ } ++ obj = PyString_FromString(bool_name); ++ if (py_tuple_insert_obj(tuple, 0, obj)) ++ goto err; ++ obj = PyBool_FromLong(enabled); ++ if (py_tuple_insert_obj(tuple, 1, obj)) ++ goto err; ++ if (py_append_obj(boollist, tuple)) ++ goto err; ++ tuple=NULL; ++ } ++ } ++ ++ qpol_iterator_destroy(&iter); ++ return boollist; ++ ++ err: ++ error = errno; ++ qpol_iterator_destroy(&iter); ++ py_decref(tuple); ++ py_decref(boollist); ++ free(tmp); ++ errno = error; ++ return NULL; ++} ++ +static PyObject* get_te_results(const apol_policy_t * policy, const options_t * opt, const apol_vector_t * v, PyObject *output) +{ + int error = 0; @@ -339325,9 +339438,8 @@ index 0000000..adf7141 + size_t i, num_rules = 0; + const qpol_terule_t *rule = NULL; + char *tmp = NULL, *rule_str = NULL, *expr = NULL; -+ qpol_iterator_t *iter = NULL; + const qpol_cond_t *cond = NULL; -+ uint32_t enabled = 0, list = 0; ++ uint32_t enabled = 0; + const char *tmp_name; + const qpol_class_t *obj_class = NULL; + @@ -339346,31 +339458,16 @@ index 0000000..adf7141 + if (!dict) goto err; + if (!(rule = apol_vector_get_element(v, i))) + goto err; -+ if (opt->show_cond) { -+ if (qpol_terule_get_cond(q, rule, &cond)) -+ goto err; -+ if (qpol_terule_get_is_enabled(q, rule, &enabled)) -+ goto err; -+ if (cond) { -+ if (qpol_terule_get_which_list(q, rule, &list)) -+ goto err; -+ if (qpol_cond_get_expr_node_iter(q, cond, &iter)) -+ goto err; ++ if (qpol_terule_get_cond(q, rule, &cond)) ++ goto err; ++ if (qpol_terule_get_is_enabled(q, rule, &enabled)) ++ goto err; + -+ qpol_iterator_destroy(&iter); -+ tuple = PyTuple_New(2); -+ if (!tuple) goto err; -+ tmp_name = apol_cond_expr_render(policy, cond); -+ obj = PyString_FromString(tmp_name); -+ if (py_tuple_insert_obj(tuple, 1, obj)) -+ goto err; -+ obj = PyBool_FromLong(enabled); -+ if (py_tuple_insert_obj(tuple, 2, obj)) -+ goto err; -+ rt = py_insert_obj(dict, "boolean", tuple); -+ Py_DECREF(tuple); tuple = NULL; -+ if (rt) goto err; -+ } ++ if (cond) { ++ obj = get_bool(q, cond, enabled); ++ if (!obj) goto err; ++ rt = PyDict_SetItemString(dict, "boolean", obj); ++ Py_DECREF(obj); + } + + if (qpol_terule_get_rule_type(q, rule, &rule_type)) @@ -339632,13 +339729,14 @@ index 0000000..adf7141 + + if (opt->allow || opt->all) + rules |= QPOL_RULE_ALLOW; -+ if ((opt->nallow || opt->all) && qpol_policy_has_capability(apol_policy_get_qpol(policy), QPOL_CAP_NEVERALLOW)) ++ if (opt->nallow || opt->all) // Add this regardless of policy capabilities + rules |= QPOL_RULE_NEVERALLOW; + if (opt->auditallow || opt->all) + rules |= QPOL_RULE_AUDITALLOW; + if (opt->dontaudit || opt->all) + rules |= QPOL_RULE_DONTAUDIT; -+ apol_avrule_query_set_rules(policy, avq, rules); ++ if (rules != 0) // Setting rules = 0 means you want all the rules ++ apol_avrule_query_set_rules(policy, avq, rules); + apol_avrule_query_set_regex(policy, avq, opt->useregex); + if (opt->src_name) + apol_avrule_query_set_source(policy, avq, opt->src_name, opt->indirect); @@ -339694,7 +339792,7 @@ index 0000000..adf7141 + +err: + error = errno; -+ PyErr_SetString(PyExc_RuntimeError,strerror(error)); ++ PyErr_SetString(PyExc_RuntimeError,strerror(error)); + apol_vector_destroy(v); + apol_avrule_query_destroy(&avq); + free(tmp); @@ -339705,16 +339803,23 @@ index 0000000..adf7141 + +static PyObject* get_av_results(const apol_policy_t * policy, const apol_vector_t * v, PyObject *output) +{ -+ PyObject *dict = NULL; ++ PyObject *obj, *dict=NULL; + PyObject *permlist = NULL; ++ PyObject *boollist = NULL; ++ uint32_t rule_type = 0; + int rt; + int error = 0; + qpol_policy_t *q; + size_t i, num_rules = 0; + const qpol_avrule_t *rule = NULL; -+ char *tmp = NULL, *rule_str = NULL, *expr = NULL; ++ char *tmp = NULL, *rule_str = NULL; ++ qpol_cond_expr_node_t *expr = NULL; + qpol_iterator_t *iter = NULL; ++ const qpol_cond_t *cond = NULL; + uint32_t enabled = 0; ++ const qpol_type_t *type; ++ const char *tmp_name; ++ const qpol_class_t *obj_class = NULL; + + if (!policy || !v) { + errno = EINVAL; @@ -339730,29 +339835,19 @@ index 0000000..adf7141 + if (!(rule = apol_vector_get_element(v, i))) + goto err; + -+ if (qpol_avrule_get_is_enabled(q, rule, &enabled)) -+ goto err; -+ if (!enabled) -+ continue; -+ -+ const qpol_type_t *type; -+ const char *tmp_name; -+ uint32_t rule_type = 0; -+ -+ const qpol_class_t *obj_class = NULL; -+ + dict = PyDict_New(); + if (!dict) goto err; + + if (qpol_avrule_get_rule_type(q, rule, &rule_type)) + goto err; -+ ++ + if (!(tmp_name = apol_rule_type_to_str(rule_type))) { + PyErr_SetString(PyExc_RuntimeError, "Could not get TE rule type's string"); ++ errno = EINVAL; + goto err; + } + -+ if (py_insert_string(dict, "type", tmp_name)) ++ if (py_insert_string(dict, "type", tmp_name)) + goto err; + + if (qpol_avrule_get_source_type(q, rule, &type)) { @@ -339763,7 +339858,7 @@ index 0000000..adf7141 + goto err; + } + -+ if (py_insert_string(dict, "source", tmp_name)) ++ if (py_insert_string(dict, "source", tmp_name)) + goto err; + + if (qpol_avrule_get_target_type(q, rule, &type)) { @@ -339773,7 +339868,7 @@ index 0000000..adf7141 + goto err; + } + -+ if (py_insert_string(dict, "target", tmp_name)) ++ if (py_insert_string(dict, "target", tmp_name)) + goto err; + + if (qpol_avrule_get_object_class(q, rule, &obj_class)) { @@ -339783,7 +339878,7 @@ index 0000000..adf7141 + goto err; + } + -+ if (py_insert_string(dict, "class", tmp_name)) ++ if (py_insert_string(dict, "class", tmp_name)) + goto err; + + if (qpol_avrule_get_perm_iter(q, rule, &iter)) { @@ -339801,9 +339896,25 @@ index 0000000..adf7141 + } + + rt = PyDict_SetItemString(dict, "permlist", permlist); -+ Py_DECREF(permlist); ++ Py_DECREF(permlist); permlist=NULL; + if (rt) goto err; + ++ if (qpol_avrule_get_cond(q, rule, &cond)) ++ goto err; ++ if (qpol_avrule_get_is_enabled(q, rule, &enabled)) ++ goto err; ++ ++ obj = PyBool_FromLong(enabled); ++ rt = PyDict_SetItemString(dict, "enabled", obj); ++ Py_DECREF(obj); ++ ++ if (cond) { ++ obj = get_bool(q, cond, enabled); ++ if (!obj) goto err; ++ rt = PyDict_SetItemString(dict, "boolean", obj); ++ Py_DECREF(obj); ++ } ++ + rt = py_append_obj(output, dict); + Py_DECREF(dict); dict=NULL; + if (rt) goto err; @@ -339818,6 +339929,7 @@ index 0000000..adf7141 + PyErr_SetString(PyExc_RuntimeError,strerror(errno)); + py_decref(dict); + py_decref(permlist); ++ py_decref(boollist); + +cleanup: + free(tmp); @@ -339845,6 +339957,7 @@ index 0000000..adf7141 + + memset(&cmd_opts, 0, sizeof(cmd_opts)); + cmd_opts.indirect = true; ++ cmd_opts.show_cond = true; + cmd_opts.allow = allow; + cmd_opts.nallow = neverallow; + cmd_opts.auditallow = auditallow; @@ -339867,38 +339980,6 @@ index 0000000..adf7141 + + pol_opt |= QPOL_POLICY_OPTION_MATCH_SYSTEM; + -+ /* handle regex for class name */ -+ if (cmd_opts.useregex && cmd_opts.class_name != NULL) { -+ cmd_opts.class_vector = apol_vector_create(NULL); -+ apol_vector_t *qpol_matching_classes = NULL; -+ apol_class_query_t *regex_match_query = apol_class_query_create(); -+ apol_class_query_set_regex(policy, regex_match_query, 1); -+ apol_class_query_set_class(policy, regex_match_query, cmd_opts.class_name); -+ if (apol_class_get_by_query(policy, regex_match_query, &qpol_matching_classes)) { -+ apol_class_query_destroy(®ex_match_query); -+ PyErr_SetString(PyExc_RuntimeError,"Query failed"); -+ goto cleanup; -+ } -+ const qpol_class_t *class = NULL; -+ size_t i; -+ for (i = 0; i < apol_vector_get_size(qpol_matching_classes); ++i) { -+ const char *class_name; -+ class = apol_vector_get_element(qpol_matching_classes, i); -+ if (!class) -+ break; -+ qpol_class_get_name(apol_policy_get_qpol(policy), class, &class_name); -+ apol_vector_append(cmd_opts.class_vector, (void *)class_name); -+ } -+ if (!apol_vector_get_size(qpol_matching_classes)) { -+ apol_vector_destroy(&qpol_matching_classes); -+ apol_class_query_destroy(®ex_match_query); -+ PyErr_SetString(PyExc_RuntimeError,"No classes match expression"); -+ goto cleanup; -+ } -+ apol_vector_destroy(&qpol_matching_classes); -+ apol_class_query_destroy(®ex_match_query); -+ } -+ + if (!cmd_opts.semantic && qpol_policy_has_capability(apol_policy_get_qpol(policy), QPOL_CAP_SYN_RULES)) { + if (qpol_policy_build_syn_rule_table(apol_policy_get_qpol(policy))) { + apol_policy_destroy(&policy); @@ -339920,7 +340001,7 @@ index 0000000..adf7141 + goto cleanup; + } + output = PyList_New(0); -+ if (!output) ++ if (!output) + goto cleanup; + + if (v) { @@ -340632,10 +340713,10 @@ index 0000000..0748ca9 +selinux(8), sepolicy-booleans(8), sepolicy-communicate(8), sepolicy-generate(8), sepolicy-interface(8), sepolicy-network(8), sepolicy-manpage(8), sepolicy-transition(8) diff --git a/policycoreutils/sepolicy/sepolicy.py b/policycoreutils/sepolicy/sepolicy.py new file mode 100755 -index 0000000..3526249 +index 0000000..ca86f5f --- /dev/null +++ b/policycoreutils/sepolicy/sepolicy.py -@@ -0,0 +1,433 @@ +@@ -0,0 +1,438 @@ +#! /usr/bin/python -Es +# Copyright (C) 2012 Red Hat +# AUTHOR: Dan Walsh @@ -340823,6 +340904,11 @@ index 0000000..3526249 + from sepolicy.manpage import ManPage, HTMLManPages, manpage_domains, manpage_roles, gen_domains + + path = args.path ++ if args.policy: ++ for f in ( "policy.xml", "file_context", "file_context.homedirs"): ++ if not os.path.exists(path + f): ++ raise ValueError("manpage creation with alternate policy requires the %s file exist" % (path + f)) ++ + if args.all: + test_domains = gen_domains() + else: @@ -341338,10 +341424,10 @@ index 0000000..a179d95 + diff --git a/policycoreutils/sepolicy/sepolicy/generate.py b/policycoreutils/sepolicy/sepolicy/generate.py new file mode 100644 -index 0000000..c5ff610 +index 0000000..e0b1893 --- /dev/null +++ b/policycoreutils/sepolicy/sepolicy/generate.py -@@ -0,0 +1,1326 @@ +@@ -0,0 +1,1329 @@ +#!/usr/bin/python -Es +# +# Copyright (C) 2007-2012 Red Hat @@ -342457,6 +342543,7 @@ index 0000000..c5ff610 + + def generate_sh(self): + temp = re.sub("TEMPLATETYPE", self.file_name, script.compile) ++ temp = re.sub("DOMAINTYPE", self.name, temp) + if self.type == EUSER: + newsh = re.sub("TEMPLATEFILE", "%s" % self.file_name, temp) + else: @@ -342505,10 +342592,12 @@ index 0000000..c5ff610 + newspec += re.sub("FILENAME", i, spec.define_relabel_files_end) + + newspec += re.sub("VERSION", selinux_policyver, spec.base_section) -+ newspec = re.sub("MODULENAME", self.name, newspec) ++ newspec = re.sub("MODULENAME", self.file_name, newspec) ++ newspec = re.sub("DOMAINNAME", self.name, newspec) + if len(self.rpms) > 0: + newspec += "Requires(post): %s\n" % ", ".join(self.rpms) -+ newspec += re.sub("MODULENAME", self.name, spec.mid_section) ++ newspec += re.sub("MODULENAME", self.file_name, spec.mid_section) ++ newspec = re.sub("DOMAINNAME", self.name, newspec) + newspec = re.sub("TODAYSDATE", time.strftime("%a %b %e %Y"), newspec) + + if self.type not in APPLICATIONS: @@ -342757,12 +342846,12 @@ index 0000000..8b063ca + return trans_list diff --git a/policycoreutils/sepolicy/sepolicy/manpage.py b/policycoreutils/sepolicy/sepolicy/manpage.py new file mode 100755 -index 0000000..f3f0246 +index 0000000..e196a65 --- /dev/null +++ b/policycoreutils/sepolicy/sepolicy/manpage.py -@@ -0,0 +1,1433 @@ +@@ -0,0 +1,1432 @@ +#! /usr/bin/python -Es -+# Copyright (C) 2012 Red Hat ++# Copyright (C) 2012-2013 Red Hat +# AUTHOR: Dan Walsh +# AUTHOR: Miroslav Grepl +# see file 'COPYING' for use and warranty information @@ -342796,7 +342885,7 @@ index 0000000..f3f0246 +import commands +import sys, os, re, time + -+equiv_dict={ "smbd" : [ "samba" ], "httpd" : [ "apache" ], "virtd" : [ "virt", "libvirt" ], "named" : [ "bind" ] } ++equiv_dict={ "smbd" : [ "samba" ], "httpd" : [ "apache" ], "virtd" : [ "virt", "libvirt" ], "named" : [ "bind" ], "fsdaemon" : [ "smartmon" ], "mdadm" : [ "raid" ] } + +equiv_dirs=[ "/var" ] +modules_dict = None @@ -342862,7 +342951,7 @@ index 0000000..f3f0246 + global domains + if domains: + return domains -+ domains = [] ++ domains = [] + for d in get_all_domains(): + found = False + domain = d[:-2] @@ -343258,6 +343347,7 @@ index 0000000..f3f0246 + modules_dict = None + domains = gen_domains() + role_allows = get_all_role_allows() ++ enabled_str = ["Disabled", "Enabled"] + + def __init__(self, domainname, path = "/tmp", html = False): + self.html = html @@ -343291,6 +343381,7 @@ index 0000000..f3f0246 + self.short_name = self.domainname + + self.type = self.domainname + "_t" ++ self._gen_bools() + self.man_page_path = "%s/%s_selinux.8" % (path, self.domainname) + self.fd = open(self.man_page_path, 'w') + if domainname in self.all_roles: @@ -343308,6 +343399,23 @@ index 0000000..f3f0246 + for alias in equiv_dict[k]: + self.__gen_man_page_link(alias) + ++ def _gen_bools(self): ++ self.bools=[] ++ self.domainbools=[] ++ for i in map(lambda x: x['boolean'], filter(lambda x: 'boolean' in x, sepolicy.search([sepolicy.ALLOW],{'source' : self.type }))): ++ for b in i: ++ if not isinstance(b,tuple): ++ continue ++ if b[0].startswith(self.short_name): ++ if b not in self.domainbools and (b[0], not b[1]) not in self.domainbools: ++ self.domainbools.append(b) ++ else: ++ if b not in self.bools and (b[0], not b[1]) not in self.bools: ++ self.bools.append(b) ++ ++ self.bools.sort() ++ self.domainbools.sort() ++ + def get_man_page_path(self): + return self.man_page_path + @@ -343502,47 +343610,27 @@ index 0000000..f3f0246 + desc = desc[:-1] + return desc + -+ def _gen_bool_text(self, name): ++ def _gen_bool_text(self): + booltext = "" -+ for bdict in self.all_bools: -+ b = bdict['name'] -+ if b.find(name) >= 0: -+ if b.endswith("anon_write"): ++ for b, enabled in self.domainbools + self.bools: ++ if b.endswith("anon_write") and b not in self.anon_list: + self.anon_list.append(b) + else: + if b not in self.booleans_dict: + continue + booltext += """ +.PP -+If you want to %s, you must turn on the %s boolean. ++If you want to %s, you must turn on the %s boolean. %s by default. + +.EX +.B setsebool -P %s 1 ++ +.EE -+""" % (self._format_boolean_desc(b), b, b) ++""" % (self._format_boolean_desc(b), b, self.enabled_str[enabled], b) + return booltext ++ + def _booleans(self): -+ self.booltext = self._gen_bool_text(self.short_name) -+ if self.domainname in equiv_dict.keys(): -+ for alias in equiv_dict[self.domainname]: -+ self.booltext += self._gen_bool_text(alias) -+ -+ for bdict in self.all_bools: -+ b = bdict['name'] -+ if b.find(self.short_name) >= 0: -+ if b.endswith("anon_write"): -+ self.anon_list.append(b) -+ else: -+ if b not in self.booleans_dict: -+ continue -+ self.booltext += """ -+.PP -+If you want to %s, you must turn on the %s boolean. -+ -+.EX -+.B setsebool -P %s 1 -+.EE -+""" % (self._format_boolean_desc(b), b, b) ++ self.booltext = self._gen_bool_text() + + if self.booltext != "": + self.fd.write(""" @@ -343646,8 +343734,8 @@ index 0000000..f3f0246 +.EE""" % (prot, ",".join(self.portrecs[(p,prot)]))) + + def _file_context(self): -+ flist=[] -+ mpaths=[] ++ flist=[] ++ mpaths=[] + for f in self.all_file_types: + if f.startswith(self.domainname): + flist.append(f) @@ -343706,8 +343794,8 @@ index 0000000..f3f0246 +.PP +.B STANDARD FILE CONTEXT + -+SELinux defines the file context types for the %(domainname)s, if you wanted to -+store files with these types in a diffent paths, you need to execute the semanage command to sepecify alternate labeling and then use restorecon to put the labels on disk. ++SELinux defines the file context types for the %(domainname)s, if you wanted to ++store files with these types in a diffent paths, you need to execute the semanage command to sepecify alternate labeling and then use restorecon to put the labels on disk. + +.B semanage fcontext -a -t %(type)s '/srv/%(domainname)s/content(/.*)?' +.br @@ -343851,7 +343939,7 @@ index 0000000..f3f0246 + return True + + def _entrypoints(self): -+ try: ++ try: + entrypoints = map(lambda x: x['target'], sepolicy.search([sepolicy.ALLOW],{'source':self.type, 'permlist':['entrypoint'], 'class':'file'})) + except: + return @@ -344196,7 +344284,7 @@ index 0000000..f3f0246 +""" % (", ".join(troles), plural, self.domainname)) diff --git a/policycoreutils/sepolicy/sepolicy/network.py b/policycoreutils/sepolicy/sepolicy/network.py new file mode 100755 -index 0000000..501210d +index 0000000..66efe26 --- /dev/null +++ b/policycoreutils/sepolicy/sepolicy/network.py @@ -0,0 +1,92 @@ @@ -344252,7 +344340,7 @@ index 0000000..501210d + allows=search([sepolicy.ALLOW],{sepolicy.SOURCE:src,sepolicy.CLASS:tclass, sepolicy.PERMS:perm}) + nlist=[] + if allows: -+ for i in map(lambda y: y[sepolicy.TARGET], filter(lambda x: set(perm).issubset(x[sepolicy.PERMS]), allows)): ++ for i in map(lambda y: y[sepolicy.TARGET], filter(lambda x: set(perm).issubset(x[sepolicy.PERMS]) and x['enabled'], allows)): + if i not in nlist: + nlist.append(i) + return nlist @@ -344507,10 +344595,10 @@ index 0000000..dcf445e +""" diff --git a/policycoreutils/sepolicy/sepolicy/templates/executable.py b/policycoreutils/sepolicy/sepolicy/templates/executable.py new file mode 100644 -index 0000000..fd89671 +index 0000000..092a53e --- /dev/null +++ b/policycoreutils/sepolicy/sepolicy/templates/executable.py -@@ -0,0 +1,450 @@ +@@ -0,0 +1,454 @@ +# Copyright (C) 2007-2012 Red Hat +# see file 'COPYING' for use and warranty information +# @@ -344593,10 +344681,12 @@ index 0000000..fd89671 +# Declarations +# + ++attribute_role TEMPLATETYPE_roles; ++roleattribute system_r TEMPLATETYPE_roles; ++ +type TEMPLATETYPE_t; +type TEMPLATETYPE_exec_t; +application_domain(TEMPLATETYPE_t, TEMPLATETYPE_exec_t) -+role system_r types TEMPLATETYPE_t; + +permissive TEMPLATETYPE_t; +""" @@ -344768,10 +344858,11 @@ index 0000000..fd89671 +interface(`TEMPLATETYPE_run',` + gen_require(` + type TEMPLATETYPE_t; ++ attribute_role TEMPLATETYPE_roles; + ') + + TEMPLATETYPE_domtrans($1) -+ role $2 types TEMPLATETYPE_t; ++ roleattribute $2 TEMPLATETYPE_roles; +') + +######################################## @@ -344792,9 +344883,10 @@ index 0000000..fd89671 +interface(`TEMPLATETYPE_role',` + gen_require(` + type TEMPLATETYPE_t; ++ attribute_role TEMPLATETYPE_roles; + ') + -+ role $1 types TEMPLATETYPE_t; ++ roleattribute $1 TEMPLATETYPE_roles; + + TEMPLATETYPE_domtrans($2) + @@ -345234,7 +345326,7 @@ index 0000000..46dd367 +""" diff --git a/policycoreutils/sepolicy/sepolicy/templates/script.py b/policycoreutils/sepolicy/sepolicy/templates/script.py new file mode 100644 -index 0000000..82f90bb +index 0000000..c139070 --- /dev/null +++ b/policycoreutils/sepolicy/sepolicy/templates/script.py @@ -0,0 +1,134 @@ @@ -345307,7 +345399,7 @@ index 0000000..82f90bb +/usr/sbin/semodule -i TEMPLATEFILE.pp + +# Generate a man page off the installed module -+sepolicy manpage -p . -d TEMPLATETYPE_t ++sepolicy manpage -p . -d DOMAINTYPE_t + +# Generate a rpm package for the newly generated policy + @@ -345420,7 +345512,7 @@ index 0000000..f77e50e +""" diff --git a/policycoreutils/sepolicy/sepolicy/templates/spec.py b/policycoreutils/sepolicy/sepolicy/templates/spec.py new file mode 100644 -index 0000000..c0a8b41 +index 0000000..dbddf39 --- /dev/null +++ b/policycoreutils/sepolicy/sepolicy/templates/spec.py @@ -0,0 +1,77 @@ @@ -345443,7 +345535,7 @@ index 0000000..c0a8b41 +URL: http://HOSTNAME +Source0: MODULENAME.pp +Source1: MODULENAME.if -+Source2: MODULENAME_selinux.8 ++Source2: DOMAINNAME_selinux.8 + +Requires: policycoreutils, libselinux-utils +Requires(post): selinux-policy-base >= %{selinux_policyver}, policycoreutils @@ -345485,7 +345577,7 @@ index 0000000..c0a8b41 +%files +%attr(0600,root,root) %{_datadir}/selinux/packages/MODULENAME.pp +%{_datadir}/selinux/devel/include/contrib/MODULENAME.if -+%{_mandir}/man8/MODULENAME_selinux.8.* ++%{_mandir}/man8/DOMAINNAME_selinux.8.* + +%changelog +* TODAYSDATE YOUR NAME 1.0-1 @@ -345638,10 +345730,10 @@ index 0000000..c000a75 +""" diff --git a/policycoreutils/sepolicy/sepolicy/templates/unit_file.py b/policycoreutils/sepolicy/sepolicy/templates/unit_file.py new file mode 100644 -index 0000000..60e5844 +index 0000000..3069044 --- /dev/null +++ b/policycoreutils/sepolicy/sepolicy/templates/unit_file.py -@@ -0,0 +1,72 @@ +@@ -0,0 +1,74 @@ +# Copyright (C) 2012 Red Hat +# see file 'COPYING' for use and warranty information +# @@ -345714,6 +345806,8 @@ index 0000000..60e5844 +fc_file="""\ +FILENAME -- gen_context(system_u:object_r:TEMPLATETYPE_unit_file_t,s0) +""" ++ ++fc_dir="" diff --git a/policycoreutils/sepolicy/sepolicy/templates/user.py b/policycoreutils/sepolicy/sepolicy/templates/user.py new file mode 100644 index 0000000..79f3997 diff --git a/policycoreutils.spec b/policycoreutils.spec index fda5e61..3e020c5 100644 --- a/policycoreutils.spec +++ b/policycoreutils.spec @@ -7,7 +7,7 @@ Summary: SELinux policy core utilities Name: policycoreutils Version: 2.1.13 -Release: 54%{?dist} +Release: 55%{?dist} License: GPLv2 Group: System Environment/Base # Based on git repository with tag 20101221 @@ -338,6 +338,11 @@ The policycoreutils-restorecond package contains the restorecond service. %{_bindir}/systemctl try-restart restorecond.service >/dev/null 2>&1 || : %changelog +* Tue Jan 15 2013 Dan Walsh - 2.1.12-55 +- Update Translations +- Fix handling of semanage generate --cgi -n MODULE PATHTO/CGI +- This fixes the spec file and script file getting wrong names for modules and types. + * Wed Jan 9 2013 Dan Walsh - 2.1.12-54 - Additional patch from Miroslav to handle role attributes