diff --git a/policycoreutils-rhat.patch b/policycoreutils-rhat.patch index 0f11d97..9b042c3 100644 --- a/policycoreutils-rhat.patch +++ b/policycoreutils-rhat.patch @@ -182,3 +182,55 @@ diff --exclude-from=exclude --exclude=sepolgen-1.0.7 --exclude=gui --exclude=po return ddict +--- policycoreutils-2.0.7/restorecon/restorecon.c.onefs 2007-04-02 14:35:37.000000000 -0400 ++++ policycoreutils-2.0.7/restorecon/restorecon.c 2007-04-02 14:48:05.000000000 -0400 +@@ -16,6 +16,7 @@ + * -v Show changes in file labels. + * -o filename save list of files with incorrect context + * -F Force reset of context to match file_context for customizable files ++ * -l Limit directory tree walk to a single filesystem + * + * pathname... The file(s) to label + * +@@ -50,6 +51,7 @@ + static int recurse = 0; + static int file_exist = 1; + static int force = 0; ++static int onefs = 0; + #define STAT_BLOCK_SIZE 1 + static int pipe_fds[2] = { -1, -1 }; + static unsigned long long count = 0; +@@ -326,13 +328,15 @@ + rc = fork(); + if (rc == 0) { + close(pipe_fds[0]); +- nftw(buf, pre_stat, 1024, FTW_PHYS); ++ nftw(buf, pre_stat, 1024, ++ FTW_PHYS | (onefs ? FTW_MOUNT : 0)); + exit(1); + } + if (rc > 0) + close(pipe_fds[1]); + if (rc == -1 || rc > 0) { +- if (nftw(buf, apply_spec, 1024, FTW_PHYS)) { ++ if (nftw(buf, apply_spec, 1024, ++ FTW_PHYS | (onefs ? FTW_MOUNT : 0))) { + if (!file_exist && errno == ENOENT) + return; + fprintf(stderr, +@@ -367,11 +371,14 @@ + + set_matchpathcon_flags(MATCHPATHCON_NOTRANS); + +- while ((opt = getopt(argc, argv, "ipFrRnvf:o:e:")) > 0) { ++ while ((opt = getopt(argc, argv, "ipFrRnvfl:o:e:")) > 0) { + switch (opt) { + case 'n': + change = 0; + break; ++ case 'l': ++ onefs = 1; ++ break; + case 'i': + file_exist = 0; + break; diff --git a/policycoreutils.spec b/policycoreutils.spec index 3ad9728..66b3f1d 100644 --- a/policycoreutils.spec +++ b/policycoreutils.spec @@ -6,7 +6,7 @@ Summary: SELinux policy core utilities. Name: policycoreutils Version: 2.0.9 -Release: 3%{?dist} +Release: 4%{?dist} License: GPL Group: System Environment/Base Source: http://www.nsa.gov/selinux/archives/policycoreutils-%{version}.tgz @@ -192,6 +192,9 @@ if [ "$1" -ge "1" ]; then fi %changelog +* Mon Apr 16 2007 Dan Walsh 2.0.9-4 +- Add -l flag to restorecon to not traverse file systems + * Sat Apr 14 2007 Dan Walsh 2.0.9-3 - Fixes for policygengui