rpms/coreutils/FC-6 coreutils-selinux.patch, 1.26, 1.27 coreutils.spec, 1.147, 1.148
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Fri Nov 24 18:31:06 UTC 2006
Author: twaugh
Update of /cvs/dist/rpms/coreutils/FC-6
In directory cvs.devel.redhat.com:/tmp/cvs-serv14730
Modified Files:
coreutils-selinux.patch coreutils.spec
Log Message:
* Fri Nov 24 2006 Tim Waugh <twaugh at redhat.com> 5.97-12.2
- Unbreak id (bug #217177).
- Resolves: rhbz#217177
coreutils-selinux.patch:
id.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
View full diff with command:
/usr/bin/cvs -f diff -kk -u -N -r 1.26 -r 1.27 coreutils-selinux.patch
Index: coreutils-selinux.patch
===================================================================
RCS file: /cvs/dist/rpms/coreutils/FC-6/coreutils-selinux.patch,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- coreutils-selinux.patch 23 Nov 2006 17:45:11 -0000 1.26
+++ coreutils-selinux.patch 24 Nov 2006 18:30:58 -0000 1.27
@@ -1,2939 +1,11 @@
---- /dev/null 2006-11-23 08:31:37.745607750 +0000
-+++ coreutils-5.97/src/chcon.c 2006-11-17 13:56:55.000000000 +0000
-@@ -0,0 +1,421 @@
-+/* chcontext -- change security context of a pathname */
-+
-+#include <config.h>
-+#include <stdio.h>
-+#include <sys/types.h>
-+#include <grp.h>
-+#include <getopt.h>
-+#include <selinux/selinux.h>
-+#include <selinux/context.h>
-+
-+#include "system.h"
-+#include "error.h"
-+#include "savedir.h"
-+#include "group-member.h"
-+
-+enum Change_status
-+{
-+ CH_SUCCEEDED,
-+ CH_FAILED,
-+ CH_NO_CHANGE_REQUESTED
-+};
-+
-+enum Verbosity
-+{
-+ /* Print a message for each file that is processed. */
-+ V_high,
-+
-+ /* Print a message for each file whose attributes we change. */
-+ V_changes_only,
-+
-+ /* Do not be verbose. This is the default. */
-+ V_off
-+};
-+
-+static int change_dir_context (const char *dir, const struct stat *statp);
-+
-+/* The name the program was run with. */
-+char *program_name;
-+
-+/* If nonzero, and the systems has support for it, change the context
-+ of symbolic links rather than any files they point to. */
-+static int change_symlinks;
-+
-+/* If nonzero, change the context of directories recursively. */
-+static int recurse;
-+
-+/* If nonzero, force silence (no error messages). */
-+static int force_silent;
-+
-+/* Level of verbosity. */
-+static enum Verbosity verbosity = V_off;
-+
-+/* The name of the context file is being given. */
-+static const char *specified_context;
-+
-+/* Specific components of the context */
-+static const char *specified_user;
-+static const char *specified_role;
-+static const char *specified_range;
-+static const char *specified_type;
-+
-+/* The argument to the --reference option. Use the context of this file.
-+ This file must exist. */
-+static char *reference_file;
-+
-+/* If nonzero, display usage information and exit. */
-+static int show_help;
-+
-+/* If nonzero, print the version on standard output and exit. */
-+static int show_version;
-+
-+static struct option const long_options[] =
-+{
-+ {"recursive", no_argument, 0, 'R'},
-+ {"changes", no_argument, 0, 'c'},
-+ {"no-dereference", no_argument, 0, 'h'},
-+ {"silent", no_argument, 0, 'f'},
-+ {"quiet", no_argument, 0, 'f'},
-+ {"reference", required_argument, 0, CHAR_MAX + 1},
-+ {"context", required_argument, 0, CHAR_MAX + 2},
-+ {"user", required_argument, 0, 'u'},
-+ {"role", required_argument, 0, 'r'},
-+ {"type", required_argument, 0, 't'},
-+ {"range", required_argument, 0, 'l'},
-+ {"verbose", no_argument, 0, 'v'},
-+ {"help", no_argument, &show_help, 1},
-+ {"version", no_argument, &show_version, 1},
-+ {0, 0, 0, 0}
-+};
-+
-+/* Tell the user how/if the context of FILE has been changed.
-+ CHANGED describes what (if anything) has happened. */
-+
-+static void
-+describe_change (const char *file, security_context_t newcontext, enum Change_status changed)
-+{
-+ const char *fmt;
-+ switch (changed)
-+ {
-+ case CH_SUCCEEDED:
-+ fmt = _("context of %s changed to %s\n");
-+ break;
-+ case CH_FAILED:
-+ fmt = _("failed to change context of %s to %s\n");
-+ break;
-+ case CH_NO_CHANGE_REQUESTED:
-+ fmt = _("context of %s retained as %s\n");
-+ break;
-+ default:
-+ abort ();
-+ }
-+ printf (fmt, file, newcontext);
-+}
-+
-+static int
-+compute_context_from_mask (security_context_t context, context_t *ret)
-+{
-+ context_t newcontext = context_new (context);
-+ if (!newcontext)
-+ return 1;
-+#define SETCOMPONENT(comp) \
-+ do { \
-+ if (specified_ ## comp) \
-+ if (context_ ## comp ## _set (newcontext, specified_ ## comp)) \
-+ goto lose; \
-+ } while (0)
-+
-+ SETCOMPONENT(user);
-+ SETCOMPONENT(range);
-+ SETCOMPONENT(role);
-+ SETCOMPONENT(type);
-+#undef SETCOMPONENT
-+
-+ *ret = newcontext;
-+ return 0;
-+ lose:
-+ context_free (newcontext);
-+ return 1;
-+}
-+
-+/* Change the context of FILE, using specified components.
-+ If it is a directory and -R is given, recurse.
-+ Return 0 if successful, 1 if errors occurred. */
-+
-+static int
-+change_file_context (const char *file)
-+{
-+ struct stat file_stats;
-+ security_context_t file_context=NULL;
-+ context_t context;
-+ security_context_t context_string;
-+ int errors = 0;
-+ int status = 0;
-+
-+ if (change_symlinks)
-+ status = lgetfilecon(file, &file_context);
-+ else
-+ status = getfilecon(file, &file_context);
-+
-+ if ((status < 0) && (errno != ENODATA))
-+ {
-+ if (force_silent == 0)
-+ error (0, errno, "%s", file);
-+ return 1;
-+ }
-+
-+ /* If the file doesn't have a context, and we're not setting all of
-+ the context components, there isn't really an obvious default.
-+ Thus, we just give up. */
-+ if (file_context == NULL && specified_context == NULL)
-+ {
-+ error (0, 0, _("can't apply partial context to unlabeled file %s"), file);
-+ return 1;
-+ }
-+
-+ if (specified_context == NULL)
-+ {
-+ if (compute_context_from_mask (file_context, &context))
-+ {
-+ error (0, 0, _("couldn't compute security context from %s"), file_context);
-+ return 1;
-+ }
-+ }
-+ else
-+ {
-+ context = context_new (specified_context);
-+ if (!context)
-+ error (1, 0,_("invalid context: %s"),specified_context);
[...2558 lines suppressed...]
- yes.1: $(common_dep) $(srcdir)/yes.x ../src/yes.c
-+chcon.1: $(common_dep) $(srcdir)/chcon.x ../src/chcon.c
-+runcon.1: $(common_dep) $(srcdir)/runcon.x ../src/runcon.c
-
- SUFFIXES = .x .1
-
---- coreutils-5.97/man/cp.1.selinux 2006-05-25 18:27:33.000000000 +0100
-+++ coreutils-5.97/man/cp.1 2006-11-17 13:56:55.000000000 +0000
-@@ -57,7 +57,7 @@
- .TP
- \fB\-\-preserve\fR[=\fIATTR_LIST\fR]
- preserve the specified attributes (default:
--mode,ownership,timestamps), if possible
-+mode,ownership,timestamps) and security contexts, if possible
- additional attributes: links, all
- .TP
- \fB\-\-no\-preserve\fR=\fIATTR_LIST\fR
-@@ -105,6 +105,9 @@
- \fB\-\-help\fR
- display this help and exit
- .TP
-+\fB\-Z\fR, \fB\-\-context\fR=\fICONTEXT\fR
-+set security context of copy to CONTEXT
-+.TP
- \fB\-\-version\fR
- output version information and exit
- .PP
---- coreutils-5.97/man/mkfifo.1.selinux 2006-05-25 18:27:36.000000000 +0100
-+++ coreutils-5.97/man/mkfifo.1 2006-11-17 13:56:55.000000000 +0000
-@@ -12,6 +12,9 @@
- .PP
- Mandatory arguments to long options are mandatory for short options too.
- .TP
-+\fB\-Z\fR, \fB\-\-context\fR=\fICONTEXT\fR
-+set security context (quoted string)
-+.TP
- \fB\-m\fR, \fB\-\-mode\fR=\fIMODE\fR
- set permission mode (as in chmod), not a=rw \- umask
- .TP
---- coreutils-5.97/man/mknod.1.selinux 2006-05-25 18:27:36.000000000 +0100
-+++ coreutils-5.97/man/mknod.1 2006-11-17 13:56:55.000000000 +0000
-@@ -12,6 +12,9 @@
- .PP
- Mandatory arguments to long options are mandatory for short options too.
- .TP
-+\fB\-Z\fR, \fB\-\-context\fR=\fICONTEXT\fR
-+set security context (quoted string)
-+.TP
- \fB\-m\fR, \fB\-\-mode\fR=\fIMODE\fR
- set permission mode (as in chmod), not a=rw \- umask
- .TP
---- coreutils-5.97/man/mkdir.1.selinux 2006-05-25 18:27:35.000000000 +0100
-+++ coreutils-5.97/man/mkdir.1 2006-11-17 13:56:55.000000000 +0000
-@@ -12,6 +12,8 @@
- .PP
- Mandatory arguments to long options are mandatory for short options too.
- .TP
-+\fB\-Z\fR, \fB\-\-context\fR=\fICONTEXT\fR (SELinux) set security context to CONTEXT
-+.TP
- \fB\-m\fR, \fB\-\-mode\fR=\fIMODE\fR
- set permission mode (as in chmod), not rwxrwxrwx \- umask
- .TP
---- coreutils-5.97/man/dir.1.selinux 2006-06-01 08:33:14.000000000 +0100
-+++ coreutils-5.97/man/dir.1 2006-11-17 13:56:55.000000000 +0000
-@@ -201,6 +201,20 @@
- .TP
- \fB\-1\fR
- list one file per line
-+.PP
-+SELINUX options:
-+.TP
-+\fB\-\-lcontext\fR
-+Display security context. Enable \fB\-l\fR. Lines
-+will probably be too wide for most displays.
-+.TP
-+\fB\-\-context\fR
-+Display security context so it fits on most
-+displays. Displays only mode, user, group,
-+security context and file name.
-+.TP
-+\fB\-\-scontext\fR
-+Display only security context and file name.
- .TP
- \fB\-\-help\fR
- display this help and exit
---- /dev/null 2006-11-23 08:31:37.745607750 +0000
-+++ coreutils-5.97/man/runcon.x 2006-11-17 13:56:55.000000000 +0000
-@@ -0,0 +1,14 @@
-+[NAME]
-+runcon \- run command with specified security context
-+[DESCRIPTION]
-+Run COMMAND with completely-specified CONTEXT, or with current or
-+transitioned security context modified by one or more of LEVEL,
-+ROLE, TYPE, and USER.
-+.PP
-+If none of \fI-c\fR, \fI-t\fR, \fI-u\fR, \fI-r\fR, or \fI-l\fR, is specified,
-+the first argument is used as the complete context. Any additional
-+arguments after \fICOMMAND\fR are interpreted as arguments to the
-+command.
-+.PP
-+Note that only carefully-chosen contexts are likely to successfully
-+run.
---- coreutils-5.97/man/vdir.1.selinux 2006-06-01 08:33:14.000000000 +0100
-+++ coreutils-5.97/man/vdir.1 2006-11-17 13:56:55.000000000 +0000
-@@ -201,6 +201,20 @@
- .TP
- \fB\-1\fR
- list one file per line
-+.PP
-+SELINUX options:
-+.TP
-+\fB\-\-lcontext\fR
-+Display security context. Enable \fB\-l\fR. Lines
-+will probably be too wide for most displays.
-+.TP
-+\fB\-\-context\fR
-+Display security context so it fits on most
-+displays. Displays only mode, user, group,
-+security context and file name.
-+.TP
-+\fB\-\-scontext\fR
-+Display only security context and file name.
- .TP
- \fB\-\-help\fR
- display this help and exit
---- /dev/null 2006-11-23 08:31:37.745607750 +0000
-+++ coreutils-5.97/man/chcon.x 2006-11-17 13:56:55.000000000 +0000
-@@ -0,0 +1,4 @@
-+[NAME]
-+chcon \- change file security context
-+[DESCRIPTION]
-+.\" Add any additional description here
---- /dev/null 2006-11-23 08:31:37.745607750 +0000
-+++ coreutils-5.97/man/chcon.1 2006-11-17 13:56:55.000000000 +0000
-@@ -0,0 +1,64 @@
-+.TH CHCON 1 "July 2003" "chcon (coreutils) 5.0" "User Commands"
-+.SH NAME
-+chcon \- change security context
-+.SH SYNOPSIS
-+.B chcon
-+[\fIOPTION\fR]...\fI CONTEXT FILE\fR...
-+.br
-+.B chcon
-+[\fIOPTION\fR]...\fI --reference=RFILE FILE\fR...
-+.SH DESCRIPTION
-+.PP
-+." Add any additional description here
-+.PP
-+Change the security context of each FILE to CONTEXT.
-+.TP
-+\fB\-c\fR, \fB\-\-changes\fR
-+like verbose but report only when a change is made
-+.TP
-+\fB\-h\fR, \fB\-\-no\-dereference\fR
-+affect symbolic links instead of any referenced file (available only on systems with lchown system call)
-+.TP
-+\fB\-f\fR, \fB\-\-silent\fR, \fB\-\-quiet\fR
-+suppress most error messages
-+.TP
-+\fB\-l\fR, \fB\-\-range\fR
-+set range RANGE in the target security context
-+.TP
-+\fB\-\-reference\fR=\fIRFILE\fR
-+use RFILE's context instead of using a CONTEXT value
-+.TP
-+\fB\-R\fR, \fB\-\-recursive\fR
-+change files and directories recursively
-+.TP
-+\fB\-r\fR, \fB\-\-role\fR
-+set role ROLE in the target security context
-+.TP
-+\fB\-t\fR, \fB\-\-type\fR
-+set type TYPE in the target security context
-+.TP
-+\fB\-u\fR, \fB\-\-user\fR
-+set user USER in the target security context
-+.TP
-+\fB\-v\fR, \fB\-\-verbose\fR
-+output a diagnostic for every file processed
-+.TP
-+\fB\-\-help\fR
-+display this help and exit
-+.TP
-+\fB\-\-version\fR
-+output version information and exit
-+.SH "REPORTING BUGS"
-+Report bugs to <https://bugzilla.redhat.com/bugzilla>.
-+.SH "SEE ALSO"
-+The full documentation for
-+.B chcon
-+is maintained as a Texinfo manual. If the
-+.B info
-+and
-+.B chcon
-+programs are properly installed at your site, the command
-+.IP
-+.B info chcon
-+.PP
-+should give you access to the complete manual.
+ if( just_context && !selinux_enabled)
Index: coreutils.spec
===================================================================
RCS file: /cvs/dist/rpms/coreutils/FC-6/coreutils.spec,v
retrieving revision 1.147
retrieving revision 1.148
diff -u -r1.147 -r1.148
--- coreutils.spec 23 Nov 2006 17:45:11 -0000 1.147
+++ coreutils.spec 24 Nov 2006 18:30:59 -0000 1.148
@@ -1,7 +1,7 @@
Summary: The GNU core utilities: a set of tools commonly used in shell scripts
Name: coreutils
Version: 5.97
-Release: 12.1%{?dist}
+Release: 12.2%{?dist}
License: GPL
Group: System Environment/Base
Url: http://www.gnu.org/software/coreutils/
@@ -284,6 +284,9 @@
/sbin/runuser
%changelog
+* Fri Nov 24 2006 Tim Waugh <twaugh at redhat.com> 5.97-12.2
+- Unbreak id (bug #217177).
+
* Thu Nov 23 2006 Tim Waugh <twaugh at redhat.com> 5.97-12.1
- Fixed stat's 'C' format specifier (bug #216676).
- Misleading 'id -Z root' error message (bug #211089).
More information about the fedora-cvs-commits
mailing list