diff --git a/policycoreutils-po.patch b/policycoreutils-po.patch index b2df583..3a8c508 100644 --- a/policycoreutils-po.patch +++ b/policycoreutils-po.patch @@ -1,6 +1,6 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ca.po policycoreutils-1.30.28/po/ca.po --- nsapolicycoreutils/po/ca.po 2006-09-01 22:32:13.000000000 -0400 -+++ policycoreutils-1.30.28/po/ca.po 2006-09-08 09:12:12.000000000 -0400 ++++ policycoreutils-1.30.28/po/ca.po 2006-09-11 10:27:27.000000000 -0400 @@ -4,6 +4,7 @@ # package. # @@ -998,7 +998,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ca.po policycoreutils +msgstr "Error en les opcions: %s " diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/de.po policycoreutils-1.30.28/po/de.po --- nsapolicycoreutils/po/de.po 2006-09-01 22:32:13.000000000 -0400 -+++ policycoreutils-1.30.28/po/de.po 2006-09-08 09:12:12.000000000 -0400 ++++ policycoreutils-1.30.28/po/de.po 2006-09-11 10:27:27.000000000 -0400 @@ -1,19 +1,22 @@ +# translation of de.po to # German translation of policycoreutils. @@ -1478,7 +1478,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/de.po policycoreutils -#~ msgstr "%s: Erledigt.\n" diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/el.po policycoreutils-1.30.28/po/el.po --- nsapolicycoreutils/po/el.po 2006-09-01 22:32:13.000000000 -0400 -+++ policycoreutils-1.30.28/po/el.po 2006-09-08 09:12:12.000000000 -0400 ++++ policycoreutils-1.30.28/po/el.po 2006-09-11 10:27:27.000000000 -0400 @@ -299,7 +299,7 @@ #: ../scripts/chcat:70 ../scripts/chcat:140 #, fuzzy @@ -1508,13 +1508,13 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/el.po policycoreutils #, fuzzy, python-format diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils-1.30.28/po/ms.po --- nsapolicycoreutils/po/ms.po 2006-09-01 22:32:13.000000000 -0400 -+++ policycoreutils-1.30.28/po/ms.po 2006-09-08 09:12:12.000000000 -0400 ++++ policycoreutils-1.30.28/po/ms.po 2006-09-11 10:27:27.000000000 -0400 @@ -8,7 +8,7 @@ "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-06-29 15:53-0400\n" -"PO-Revision-Date: 2006-08-08 01:09+0800\n" -+"PO-Revision-Date: 2006-08-31 20:56+0800\n" ++"PO-Revision-Date: 2006-09-09 10:38+0800\n" "Last-Translator: Sharuzzaman Ahmat Raslan \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" @@ -1645,7 +1645,8 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils +#: ../semanage/seobject.py:1222 #, fuzzy, python-format msgid "Could not create a key for %s" - msgstr "Tidak dapat membuka %s untuk salinan: %s" +-msgstr "Tidak dapat membuka %s untuk salinan: %s" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" -#: ../semanage/seobject.py:242 ../semanage/seobject.py:300 -#: ../semanage/seobject.py:347 ../semanage/seobject.py:353 @@ -1656,9 +1657,12 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, python-format msgid "Could not check if login mapping for %s is defined" msgstr "" -@@ -473,44 +491,57 @@ +@@ -471,46 +489,59 @@ + #: ../semanage/seobject.py:252 + #, fuzzy, python-format msgid "Could not create login mapping for %s" - msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" +-msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" -#: ../semanage/seobject.py:256 ../semanage/seobject.py:438 +#: ../semanage/seobject.py:256 @@ -1680,7 +1684,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, fuzzy, python-format msgid "Could not set SELinux user for %s" -msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" -+msgstr "Tidak dapat menetapkan konteks fail untuk %s" ++msgstr "Tidak dapat menetapkan pengguna dalam konteks fail untuk %s" -#: ../semanage/seobject.py:269 ../semanage/seobject.py:321 -#: ../semanage/seobject.py:359 ../semanage/seobject.py:463 @@ -1764,7 +1768,13 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, fuzzy, python-format msgid "Could not check if SELinux user %s is defined" msgstr "Pengguna %s tidak dapat dipadam: %s.\n" -@@ -559,24 +594,25 @@ +@@ -554,29 +589,30 @@ + #: ../semanage/seobject.py:434 + #, fuzzy, python-format + msgid "Could not create SELinux user for %s" +-msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" + #: ../semanage/seobject.py:443 #, fuzzy, python-format msgid "Could not add role %s for %s" @@ -1829,7 +1839,24 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, fuzzy, python-format msgid "Could not delete SELinux user %s" msgstr "Pengguna %s tidak dapat dipadam: %s.\n" -@@ -644,8 +684,10 @@ +@@ -622,7 +662,7 @@ + #: ../semanage/seobject.py:591 + #, fuzzy, python-format + msgid "Could not list roles for user %s" +-msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" ++msgstr "Tidak dapat menetapkan pengguna dalam konteks fail untuk %s" + + #: ../semanage/seobject.py:625 + #, fuzzy +@@ -637,15 +677,17 @@ + #: ../semanage/seobject.py:638 + #, fuzzy, python-format + msgid "Could not create a key for %s/%s" +-msgstr "Tidak dapat membuka %s untuk salinan: %s" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" + + #: ../semanage/seobject.py:649 + #, fuzzy msgid "Type is required" msgstr "Nama Perkongsian diperlukan" @@ -1842,18 +1869,30 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, fuzzy, python-format msgid "Could not check if port %s/%s is defined" msgstr "Tidak dapat memeriksa sama ada boolean %s dinyatakan" -@@ -668,44 +710,47 @@ +@@ -658,54 +700,57 @@ + #: ../semanage/seobject.py:661 + #, fuzzy, python-format + msgid "Could not create port for %s/%s" +-msgstr "Tidak dapat membuka %s untuk salinan: %s" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" + + #: ../semanage/seobject.py:667 + #, fuzzy, python-format + msgid "Could not create context for %s/%s" +-msgstr "Tidak dapat menyoal konteks fail untuk %s" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" + #: ../semanage/seobject.py:671 #, fuzzy, python-format msgid "Could not set user in port context for %s/%s" -msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" -+msgstr "Tidak dapat menetapkan jenis dalam konteks fail untuk %s" ++msgstr "Tidak dapat menetapkan pengguna dalam konteks fail untuk %s" #: ../semanage/seobject.py:675 #, fuzzy, python-format msgid "Could not set role in port context for %s/%s" -msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" -+msgstr "Tidak dapat menetapkan jenis dalam konteks fail untuk %s" ++msgstr "Tidak dapat menetapkan tugas dalam konteks fail untuk %s" #: ../semanage/seobject.py:679 #, fuzzy, python-format @@ -1943,7 +1982,8 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils +#: ../semanage/seobject.py:1018 #, fuzzy, python-format msgid "Could not create key for %s" - msgstr "Tidak dapat membuka %s untuk salinan: %s" +-msgstr "Tidak dapat membuka %s untuk salinan: %s" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" -#: ../semanage/seobject.py:850 ../semanage/seobject.py:914 -#: ../semanage/seobject.py:951 ../semanage/seobject.py:957 @@ -1954,28 +1994,32 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, fuzzy, python-format msgid "Could not check if interface %s is defined" msgstr "Tidak dapat memeriksa sama ada boolean %s dinyatakan" -@@ -762,7 +815,8 @@ +@@ -760,49 +813,52 @@ + #: ../semanage/seobject.py:856 + #, fuzzy, python-format msgid "Could not create interface for %s" - msgstr "Tidak dapat membuka %s untuk salinan: %s" +-msgstr "Tidak dapat membuka %s untuk salinan: %s" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" -#: ../semanage/seobject.py:861 ../semanage/seobject.py:1033 +#: ../semanage/seobject.py:861 +#: ../semanage/seobject.py:1033 #, fuzzy, python-format msgid "Could not create context for %s" - msgstr "Tidak dapat menyoal konteks fail untuk %s" -@@ -770,39 +824,41 @@ +-msgstr "Tidak dapat menyoal konteks fail untuk %s" ++msgstr "Tidak dapat mencipta konteks fail untuk %s" + #: ../semanage/seobject.py:865 #, fuzzy, python-format msgid "Could not set user in interface context for %s" -msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" -+msgstr "Tidak dapat menetapkan jenis dalam konteks fail untuk %s" ++msgstr "Tidak dapat menetapkan pengguna dalam konteks fail untuk %s" #: ../semanage/seobject.py:869 #, fuzzy, python-format msgid "Could not set role in interface context for %s" -msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" -+msgstr "Tidak dapat menetapkan jenis dalam konteks fail untuk %s" ++msgstr "Tidak dapat menetapkan tugas dalam konteks fail untuk %s" #: ../semanage/seobject.py:873 #, fuzzy, python-format @@ -2025,7 +2069,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, fuzzy, python-format msgid "Could not modify interface %s" msgstr "Tidak dapat mengubah boolean %s" -@@ -822,7 +879,8 @@ +@@ -822,41 +879,43 @@ msgid "Interface %s is defined in policy, cannot be deleted" msgstr "RALAT: kotak \"%s\" adalah bukan antaramuka bolehtulis.\n" @@ -2035,21 +2079,31 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, fuzzy, python-format msgid "Could not delete interface %s" msgstr "Tidak dapat memadam boolean %s" -@@ -832,8 +890,10 @@ + + #: ../semanage/seobject.py:979 +-#, fuzzy msgid "Could not list interfaces" - msgstr "Tidak dapat menyenaraikan boolean" +-msgstr "Tidak dapat menyenaraikan boolean" ++msgstr "Tidak dapat menyenaraikan antaramuka" -#: ../semanage/seobject.py:1022 ../semanage/seobject.py:1084 -#: ../semanage/seobject.py:1123 ../semanage/seobject.py:1129 +-#, fuzzy, python-format +#: ../semanage/seobject.py:1022 +#: ../semanage/seobject.py:1084 +#: ../semanage/seobject.py:1123 +#: ../semanage/seobject.py:1129 - #, fuzzy, python-format ++#, python-format msgid "Could not check if file context for %s is defined" - msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" -@@ -844,19 +904,19 @@ - msgstr "Konteks fail %s tidak dinyatakan" +-msgstr "Tidak dapat menetapkan konteks default untuk %s untuk program %s.\n" ++msgstr "Tidak dapat memeriksa jika konteks fail untuk %s telah dinyatakan" + + #: ../semanage/seobject.py:1024 +-#, fuzzy, python-format ++#, python-format + msgid "File context for %s already defined" +-msgstr "Konteks fail %s tidak dinyatakan" ++msgstr "Konteks fail %s telah dinyatakan" #: ../semanage/seobject.py:1028 -#, fuzzy, python-format @@ -2074,7 +2128,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #: ../semanage/seobject.py:1045 #, python-format -@@ -873,7 +933,8 @@ +@@ -873,7 +932,8 @@ msgid "Could not set file context for %s" msgstr "Tidak dapat menetapkan konteks fail untuk %s" @@ -2084,7 +2138,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, python-format msgid "Could not add file context for %s" msgstr "Tidak dapat menambah konteks fail untuk %s" -@@ -882,7 +943,8 @@ +@@ -882,7 +942,8 @@ msgid "Requires setype, serange or seuser" msgstr "Memerlukan setype, serange atau seuser" @@ -2094,7 +2148,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, python-format msgid "File context for %s is not defined" msgstr "Konteks fail %s tidak dinyatakan" -@@ -892,7 +954,8 @@ +@@ -892,7 +953,8 @@ msgid "Could not query file context for %s" msgstr "Tidak dapat menyoal konteks fail untuk %s" @@ -2104,7 +2158,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, python-format msgid "Could not modify file context for %s" msgstr "Tidak dapat mengubahsuai konteks fail untuk %s" -@@ -902,7 +965,8 @@ +@@ -902,7 +964,8 @@ msgid "File context for %s is defined in policy, cannot be deleted" msgstr "" @@ -2114,7 +2168,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, python-format msgid "Could not delete file context for %s" msgstr "Tidak dapat memadam konteks fail untuk %s" -@@ -915,13 +979,15 @@ +@@ -915,13 +978,15 @@ msgid "Requires value" msgstr "Memerlukan nilai" @@ -2132,7 +2186,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, python-format msgid "Boolean %s is not defined" msgstr "Boolean %s tidak dinyatakan" -@@ -931,7 +997,8 @@ +@@ -931,7 +996,8 @@ msgid "Could not query file context %s" msgstr "Tidak dapat menyoal fail konteks %s" @@ -2142,7 +2196,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, python-format msgid "Could not modify boolean %s" msgstr "Tidak dapat mengubah boolean %s" -@@ -941,7 +1008,8 @@ +@@ -941,7 +1007,8 @@ msgid "Boolean %s is defined in policy, cannot be deleted" msgstr "" @@ -2152,14 +2206,14 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/ms.po policycoreutils #, python-format msgid "Could not delete boolean %s" msgstr "Tidak dapat memadam boolean %s" -@@ -981,3 +1049,4 @@ +@@ -981,3 +1048,4 @@ #, c-format msgid "Options Error: %s " msgstr "Ralat Pilihan: %s" + diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/sk.po policycoreutils-1.30.28/po/sk.po --- nsapolicycoreutils/po/sk.po 2006-09-01 22:32:13.000000000 -0400 -+++ policycoreutils-1.30.28/po/sk.po 2006-09-08 09:12:12.000000000 -0400 ++++ policycoreutils-1.30.28/po/sk.po 2006-09-11 10:27:27.000000000 -0400 @@ -3,246 +3,252 @@ # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. @@ -3454,7 +3508,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/sk.po policycoreutils + diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/sv.po policycoreutils-1.30.28/po/sv.po --- nsapolicycoreutils/po/sv.po 2006-09-01 22:32:13.000000000 -0400 -+++ policycoreutils-1.30.28/po/sv.po 2006-09-08 09:12:12.000000000 -0400 ++++ policycoreutils-1.30.28/po/sv.po 2006-09-11 10:27:27.000000000 -0400 @@ -2,19 +2,19 @@ # Copyright (C) 2006 Christian Rose. # Christian Rose , 2006. @@ -4278,7 +4332,7 @@ diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/sv.po policycoreutils -#~ msgstr "Flaggfel: %s" diff --exclude-from=exclude -N -u -r nsapolicycoreutils/po/zh_TW.po policycoreutils-1.30.28/po/zh_TW.po --- nsapolicycoreutils/po/zh_TW.po 2006-09-01 22:32:13.000000000 -0400 -+++ policycoreutils-1.30.28/po/zh_TW.po 2006-09-08 09:12:12.000000000 -0400 ++++ policycoreutils-1.30.28/po/zh_TW.po 2006-09-11 10:27:27.000000000 -0400 @@ -9,7 +9,7 @@ "Project-Id-Version: zh_TW\n" "Report-Msgid-Bugs-To: \n" diff --git a/policycoreutils-rhat.patch b/policycoreutils-rhat.patch index 3b9c3d9..5c5a85a 100644 --- a/policycoreutils-rhat.patch +++ b/policycoreutils-rhat.patch @@ -66,7 +66,7 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore show changes in file labels. diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restorecon/restorecon.c policycoreutils-1.30.28/restorecon/restorecon.c --- nsapolicycoreutils/restorecon/restorecon.c 2006-09-01 22:32:11.000000000 -0400 -+++ policycoreutils-1.30.28/restorecon/restorecon.c 2006-09-08 10:42:48.000000000 -0400 ++++ policycoreutils-1.30.28/restorecon/restorecon.c 2006-09-11 09:53:08.000000000 -0400 @@ -11,9 +11,10 @@ * restorecon [-Rnv] pathname... * @@ -79,8 +79,11 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore * -F Force reset of context to match file_context for customizable files * * pathname... The file(s) to label -@@ -43,10 +44,11 @@ +@@ -41,12 +42,14 @@ + #include + static int change = 1; ++static int change_ctr = 0; static int verbose = 0; static int progress = 0; -static FILE *outfile = NULL; @@ -92,7 +95,7 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore static int force = 0; #define STAT_BLOCK_SIZE 1 static int pipe_fds[2] = { -1, -1 }; -@@ -129,7 +131,7 @@ +@@ -129,7 +132,7 @@ void usage(const char *const name) { fprintf(stderr, @@ -101,7 +104,7 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore name); exit(1); } -@@ -160,6 +162,8 @@ +@@ -160,6 +163,8 @@ } if (lstat(filename, &st) != 0) { @@ -110,7 +113,7 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore fprintf(stderr, "lstat(%s) failed: %s\n", filename, strerror(errno)); return 1; -@@ -197,11 +201,8 @@ +@@ -197,11 +202,8 @@ return 1; } p += len; @@ -124,7 +127,7 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore strcpy(p, file_sep); filename = path; } else { -@@ -236,7 +237,7 @@ +@@ -236,7 +238,7 @@ is_context_customizable(prev_context) > 0))) { if (only_changed_user(scontext, prev_context) == 0) { if (outfile) @@ -133,16 +136,22 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore if (change) { if (lsetfilecon(filename, scontext) < 0) { fprintf(stderr, -@@ -251,7 +252,7 @@ +@@ -249,9 +251,12 @@ + freecon(scontext); + return 1; } - } +- } ++ } ++ else ++ change_ctr++; ++ if (verbose) - printf("%s reset %s context %s->%s\n", + fprintf(stderr, "%s reset %s context %s->%s\n", progname, filename, (retcontext >= 0 ? prev_context : ""), -@@ -259,7 +260,7 @@ +@@ -259,7 +264,7 @@ } } if (verbose > 1 && !force && customizable > 0) { @@ -151,7 +160,7 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore progname, filename, prev_context); } -@@ -322,6 +323,8 @@ +@@ -322,6 +327,8 @@ close(pipe_fds[1]); if (rc == -1 || rc > 0) { if (nftw(buf, apply_spec, 1024, FTW_PHYS)) { @@ -160,7 +169,7 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore fprintf(stderr, "%s: error while labeling files under %s\n", progname, buf); -@@ -353,11 +356,14 @@ +@@ -353,11 +360,14 @@ exit(0); set_matchpathcon_flags(MATCHPATHCON_NOTRANS); @@ -176,7 +185,7 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore case 'r': case 'R': recurse = 1; -@@ -370,13 +376,7 @@ +@@ -370,13 +380,7 @@ exit(1); break; case 'o': @@ -191,12 +200,14 @@ diff --exclude-from=exclude --exclude='*.po' -N -u -r nsapolicycoreutils/restore break; case 'v': if (progress) { -@@ -425,8 +425,6 @@ +@@ -425,8 +429,8 @@ process(argv[i]); } } - if (outfile) - fclose(outfile); ++ ++ if (change) return change_ctr; return errors; } diff --git a/policycoreutils.spec b/policycoreutils.spec index a38c502..5864e2a 100644 --- a/policycoreutils.spec +++ b/policycoreutils.spec @@ -5,7 +5,7 @@ Summary: SELinux policy core utilities. Name: policycoreutils Version: 1.30.28 -Release: 6 +Release: 7 License: GPL Group: System Environment/Base Source: http://www.nsa.gov/selinux/archives/policycoreutils-%{version}.tgz @@ -122,6 +122,9 @@ fi [ -x /sbin/service ] && /sbin/service restorecond condrestart %changelog +* Mon Sep 11 2006 Dan Walsh 1.30.28-7 +- Make restorecon return the number of changes files if you use the -n flag + * Fri Sep 8 2006 Dan Walsh 1.30.28-6 - Change setfiles and restorecon to use stderr except for -o flag - Also -o flag will now output files