rpms/coreutils/devel .cvsignore, 1.22, 1.23 coreutils-4.5.3-langinfo.patch, 1.2, 1.3 coreutils-4.5.3-sysinfo.patch, 1.6, 1.7 coreutils-5.2.1-runuser.patch, 1.26, 1.27 coreutils-6.10-configuration.patch, 1.22, 1.23 coreutils-6.10-manpages.patch, 1.5, 1.6 coreutils-7.4-sttytcsadrain.patch, 1.1, 1.2 coreutils-i18n.patch, 1.38, 1.39 coreutils-pam.patch, 1.16, 1.17 coreutils-selinux.patch, 1.58, 1.59 coreutils-setsid.patch, 1.3, 1.4 coreutils.spec, 1.273, 1.274 sources, 1.24, 1.25 coreutils-7.5-df-localdevice.patch, 1.1, NONE coreutils-7.5-kojiutimensatskip.patch, 1.3, NONE coreutils-7.5-ls-inode.patch, 1.3, NONE

Ondrej Vasik ovasik at fedoraproject.org
Sat Sep 12 09:28:51 UTC 2009


Author: ovasik

Update of /cvs/extras/rpms/coreutils/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv16031

Modified Files:
	.cvsignore coreutils-4.5.3-langinfo.patch 
	coreutils-4.5.3-sysinfo.patch coreutils-5.2.1-runuser.patch 
	coreutils-6.10-configuration.patch 
	coreutils-6.10-manpages.patch 
	coreutils-7.4-sttytcsadrain.patch coreutils-i18n.patch 
	coreutils-pam.patch coreutils-selinux.patch 
	coreutils-setsid.patch coreutils.spec sources 
Removed Files:
	coreutils-7.5-df-localdevice.patch 
	coreutils-7.5-kojiutimensatskip.patch 
	coreutils-7.5-ls-inode.patch 
Log Message:
new upstream bugfix release 7.6, removed applied patches,defuzzed the rest


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/.cvsignore,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -p -r1.22 -r1.23
--- .cvsignore	21 Aug 2009 07:00:58 -0000	1.22
+++ .cvsignore	12 Sep 2009 09:28:48 -0000	1.23
@@ -1 +1 @@
-coreutils-7.5.tar.xz
+coreutils-7.6.tar.xz

coreutils-4.5.3-langinfo.patch:
 date.c |    9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

Index: coreutils-4.5.3-langinfo.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-4.5.3-langinfo.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -p -r1.2 -r1.3
--- coreutils-4.5.3-langinfo.patch	27 Oct 2005 15:05:07 -0000	1.2
+++ coreutils-4.5.3-langinfo.patch	12 Sep 2009 09:28:48 -0000	1.3
@@ -3,16 +3,16 @@
 @@ -451,14 +451,7 @@
        format = DATE_FMT_LANGINFO ();
        if (! *format)
- 	{
--	  /* Do not wrap the following literal format string with _(...).
--	     For example, suppose LC_ALL is unset, LC_TIME="POSIX",
--	     and LANG="ko_KR".  In that case, POSIX says that LC_TIME
--	     determines the format and contents of date and time strings
--	     written by date, which means "date" must generate output
--	     using the POSIX locale; but adding _() would cause "date"
--	     to use a Korean translation of the format.  */
--	  format = "%a %b %e %H:%M:%S %Z %Y";
-+	  format = dcgettext(NULL, N_("%a %b %e %H:%M:%S %Z %Y"), LC_TIME);
- 	}
+         {
+-          /* Do not wrap the following literal format string with _(...).
+-             For example, suppose LC_ALL is unset, LC_TIME="POSIX",
+-             and LANG="ko_KR".  In that case, POSIX says that LC_TIME
+-             determines the format and contents of date and time strings
+-             written by date, which means "date" must generate output
+-             using the POSIX locale; but adding _() would cause "date"
+-             to use a Korean translation of the format.  */
+-          format = "%a %b %e %H:%M:%S %Z %Y";
++          format = dcgettext(NULL, N_("%a %b %e %H:%M:%S %Z %Y"), LC_TIME);
+         }
      }
  

coreutils-4.5.3-sysinfo.patch:
 uname.c |   36 +++++++++++++++++++++++++++++++++---
 1 file changed, 33 insertions(+), 3 deletions(-)

Index: coreutils-4.5.3-sysinfo.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-4.5.3-sysinfo.patch,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -p -r1.6 -r1.7
--- coreutils-4.5.3-sysinfo.patch	25 Jan 2008 17:48:11 -0000	1.6
+++ coreutils-4.5.3-sysinfo.patch	12 Sep 2009 09:28:48 -0000	1.7
@@ -17,9 +17,9 @@
 +      char *element = unknown;
  #if HAVE_SYSINFO && defined SI_ARCHITECTURE
        {
- 	static char processor[257];
- 	if (0 <= sysinfo (SI_ARCHITECTURE, processor, sizeof processor))
- 	  element = processor;
+         static char processor[257];
+         if (0 <= sysinfo (SI_ARCHITECTURE, processor, sizeof processor))
+           element = processor;
        }
 +#else
 +      {
@@ -54,10 +54,10 @@
 +      char *element = unknown;
  #if HAVE_SYSINFO && defined SI_PLATFORM
        {
- 	static char hardware_platform[257];
+         static char hardware_platform[257];
 @@ -356,6 +378,14 @@
- 			  hardware_platform, sizeof hardware_platform))
- 	  element = hardware_platform;
+                           hardware_platform, sizeof hardware_platform))
+           element = hardware_platform;
        }
 +#else
 +      {

coreutils-5.2.1-runuser.patch:
 coreutils-7.0/AUTHORS                 |    1 
 coreutils-7.0/README                  |    8 -
 coreutils-7.0/man/Makefile.am         |    1 
 coreutils-7.0/man/runuser.x           |   12 ++
 coreutils-7.0/src/Makefile.am         |    8 +
 coreutils-7.0/src/su.c                |  137 +++++++++++++++++++++++++++++++---
 coreutils-7.5/tests/misc/help-version |    1 
 7 files changed, 153 insertions(+), 15 deletions(-)

Index: coreutils-5.2.1-runuser.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-5.2.1-runuser.patch,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -p -r1.26 -r1.27
--- coreutils-5.2.1-runuser.patch	21 Aug 2009 07:00:58 -0000	1.26
+++ coreutils-5.2.1-runuser.patch	12 Sep 2009 09:28:48 -0000	1.27
@@ -121,11 +121,11 @@ diff -urNp coreutils-7.0.orig/src/su.c c
  
  static void run_shell (char const *, char const *, char **, size_t,
 -	const struct passwd *)
-+	const struct passwd *
++        const struct passwd *
 +#ifdef RUNUSER
-+		       , gid_t *groups, int num_groups
++                       , gid_t *groups, int num_groups
 +#endif
-+	)
++        )
  #ifdef USE_PAM
  	;
  #else
@@ -180,9 +180,9 @@ diff -urNp coreutils-7.0.orig/src/su.c c
 -change_identity (const struct passwd *pw)
 +change_identity (const struct passwd *pw
 +#ifdef RUNUSER
-+		 , gid_t *groups, int num_groups
++                 , gid_t *groups, int num_groups
 +#endif
-+	)
++        )
  {
  #ifdef HAVE_INITGROUPS
 +  int rc = 0;
@@ -202,12 +202,12 @@ diff -urNp coreutils-7.0.orig/src/su.c c
  
  static void
  run_shell (char const *shell, char const *command, char **additional_args,
--	   size_t n_additional_args, const struct passwd *pw)
-+	   size_t n_additional_args, const struct passwd *pw
+-           size_t n_additional_args, const struct passwd *pw)
++           size_t n_additional_args, const struct passwd *pw
 +#ifdef RUNUSER
-+	   , gid_t *groups, int num_groups
++           , gid_t *groups, int num_groups
 +#endif
-+	)
++        )
  {
    size_t n_args = 1 + fast_startup + 2 * !!command + n_additional_args + 1;
    char const **args = xnmalloc (n_args, sizeof *args);
@@ -218,9 +218,9 @@ diff -urNp coreutils-7.0.orig/src/su.c c
 -  change_identity (pw);
 +  change_identity (pw
 +#ifdef RUNUSER
-+		   , groups, num_groups
++                   , groups, num_groups
 +#endif
-+	  );
++          );
    pam_end(pamh, 0);
    if (!same_session)
      setsid ();
@@ -279,43 +279,43 @@ diff -urNp coreutils-7.0.orig/src/su.c c
 -  while ((optc = getopt_long (argc, argv, "c:flmps:", longopts, NULL)) != -1)
 +  while ((optc = getopt_long (argc, argv, "c:flmps:"
 +#ifdef RUNUSER
-+			      "g:G:"
++                              "g:G:"
 +#endif
-+			      , longopts, NULL)) != -1)
++                              , longopts, NULL)) != -1)
      {
        switch (optc)
- 	{
+         {
 @@ -697,6 +773,28 @@ main (int argc, char **argv)
- 	  shell = optarg;
- 	  break;
+           shell = optarg;
+           break;
  
 +#ifdef RUNUSER
-+	case 'g':
-+	  gr = getgrnam(optarg);
-+	  if (!gr)
-+	    error (EXIT_FAILURE, 0, _("group %s does not exist"), optarg);
-+	  use_gid = 1;
-+	  groups[0] = gr->gr_gid;
-+	  break;
++        case 'g':
++          gr = getgrnam(optarg);
++          if (!gr)
++            error (EXIT_FAILURE, 0, _("group %s does not exist"), optarg);
++          use_gid = 1;
++          groups[0] = gr->gr_gid;
++          break;
 +
-+	case 'G':
-+	  num_supp_groups++;
-+	  if (num_supp_groups >= NGROUPS_MAX)
-+	    error (EXIT_FAILURE, 0,
-+		   _("Can't specify more than %d supplemental groups"),
-+		   NGROUPS_MAX - 1);
-+	  gr = getgrnam(optarg);
-+	  if (!gr)
-+	    error (EXIT_FAILURE, 0, _("group %s does not exist"), optarg);
-+	  groups[num_supp_groups] = gr->gr_gid;
-+	  break;
++        case 'G':
++          num_supp_groups++;
++          if (num_supp_groups >= NGROUPS_MAX)
++            error (EXIT_FAILURE, 0,
++                   _("Can't specify more than %d supplemental groups"),
++                   NGROUPS_MAX - 1);
++          gr = getgrnam(optarg);
++          if (!gr)
++            error (EXIT_FAILURE, 0, _("group %s does not exist"), optarg);
++          groups[num_supp_groups] = gr->gr_gid;
++          break;
 +#endif
 +
- 	case_GETOPT_HELP_CHAR;
+         case_GETOPT_HELP_CHAR;
  
- 	case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS);
+         case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS);
 @@ -735,7 +833,20 @@ main (int argc, char **argv)
- 			  : DEFAULT_SHELL);
+                           : DEFAULT_SHELL);
    endpwent ();
  
 -  if (!correct_password (pw))
@@ -343,17 +343,17 @@ diff -urNp coreutils-7.0.orig/src/su.c c
 -  change_identity (pw);
 +  change_identity (pw
 +#ifdef RUNUSER
-+		   , groups, num_supp_groups
++                   , groups, num_supp_groups
 +#endif
-+		   );
++                   );
  #endif
  
 -  run_shell (shell, command, argv + optind, MAX (0, argc - optind), pw);
 +  run_shell (shell, command, argv + optind, MAX (0, argc - optind), pw
 +#ifdef RUNUSER
-+	     , groups, num_supp_groups
++             , groups, num_supp_groups
 +#endif
-+	     );
++             );
  }
 diff -urNp coreutils-7.5.orig/tests/misc/help-version coreutils-7.5/tests/misc/help-version
 --- coreutils-7.5.orig/tests/misc/help-version

coreutils-6.10-configuration.patch:
 coreutils-6.11/tests/test-lib.sh     |    4 ++--
 coreutils-7.1/src/ls.c               |    8 ++++----
 coreutils-7.2/gnulib-tests/gnulib.mk |   12 ++++++------
 3 files changed, 12 insertions(+), 12 deletions(-)

Index: coreutils-6.10-configuration.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-6.10-configuration.patch,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -p -r1.22 -r1.23
--- coreutils-6.10-configuration.patch	21 Aug 2009 07:00:58 -0000	1.22
+++ coreutils-6.10-configuration.patch	12 Sep 2009 09:28:48 -0000	1.23
@@ -27,17 +27,6 @@ diff -urNp coreutils-7.2-orig/gnulib-tes
  
  ## end   gnulib module strverscmp-tests
  
-diff -urN coreutils-6.11-orig/tests/mkdir/selinux coreutils-6.11/tests/mkdir/selinux
---- coreutils-6.11-orig/tests/mkdir/selinux	2008-04-19 23:34:23.000000000 +0200
-+++ coreutils-6.11/tests/mkdir/selinux	2008-04-22 13:23:50.000000000 +0200
-@@ -38,6 +28,7 @@
- # successfully, in spite of the invalid context string.
- 
- . $srcdir/test-lib.sh
-+require_selinux_
- 
- c=invalid-selinux-context
- msg="failed to set default file creation context to \`$c':"
 diff -urNp coreutils-6.11-orig/tests/test-lib.sh coreutils-6.11/tests/test-lib.sh
 --- coreutils-6.11-orig/tests/test-lib.sh	2008-04-19 23:34:23.000000000 +0200
 +++ coreutils-6.11/tests/test-lib.sh	2008-04-24 14:18:59.000000000 +0200

coreutils-6.10-manpages.patch:
 md5sum.c |    3 +++
 1 file changed, 3 insertions(+)

Index: coreutils-6.10-manpages.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-6.10-manpages.patch,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -p -r1.5 -r1.6
--- coreutils-6.10-manpages.patch	24 Feb 2009 11:53:36 -0000	1.5
+++ coreutils-6.10-manpages.patch	12 Sep 2009 09:28:48 -0000	1.6
@@ -2,7 +2,7 @@ diff -urNp coreutils-6.12-orig/src/md5su
 --- coreutils-6.12-orig/src/md5sum.c	2008-05-26 08:40:33.000000000 +0200
 +++ coreutils-6.12/src/md5sum.c	2008-10-21 16:07:28.000000000 +0200
 @@ -175,6 +175,9 @@ With no FILE, or when FILE is -, read st
- 	fputs (_("\
+         fputs (_("\
    -t, --text              read in text mode (default)\n\
  "), stdout);
 +  fputs (_("\

coreutils-7.4-sttytcsadrain.patch:
 stty.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: coreutils-7.4-sttytcsadrain.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-7.4-sttytcsadrain.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- coreutils-7.4-sttytcsadrain.patch	11 Jun 2009 08:26:29 -0000	1.1
+++ coreutils-7.4-sttytcsadrain.patch	12 Sep 2009 09:28:49 -0000	1.2
@@ -2,11 +2,11 @@ diff -urNp coreutils-7.4-orig/src/stty.c
 --- coreutils-7.4-orig/src/stty.c	2009-04-24 14:41:19.000000000 +0200
 +++ coreutils-7.4/src/stty.c	2009-06-11 10:15:41.000000000 +0200
 @@ -1001,7 +1001,7 @@ main (int argc, char **argv)
- 	 spurious difference in an uninitialized portion of the structure.  */
+          spurious difference in an uninitialized portion of the structure.  */
        DECLARE_ZEROED_AGGREGATE (struct termios, new_mode);
  
 -      if (tcsetattr (STDIN_FILENO, TCSADRAIN, &mode))
 +      if (tcsetattr (STDIN_FILENO, TCSANOW, &mode))
- 	error (EXIT_FAILURE, errno, "%s", device_name);
+         error (EXIT_FAILURE, errno, "%s", device_name);
  
        /* POSIX (according to Zlotnick's book) tcsetattr returns zero if

coreutils-i18n.patch:
 coreutils-6.11/src/join.c               |  105 +++-
 coreutils-6.12-orig/src/join.c          |    5 
 coreutils-6.12/tests/Makefile.am        |    5 
 coreutils-6.12/tests/misc/cut           |    6 
 coreutils-6.8+/lib/linebuffer.h         |    8 
 coreutils-6.8+/src/cut.c                |  420 ++++++++++++++++++-
 coreutils-6.8+/src/expand.c             |  160 +++++++
 coreutils-6.8+/src/fold.c               |  309 +++++++++++++-
 coreutils-6.8+/src/join.c               |  233 +++++++++--
 coreutils-6.8+/src/pr.c                 |  431 ++++++++++++++++++--
 coreutils-6.8+/src/sort.c               |  673 ++++++++++++++++++++++++++++++--
 coreutils-6.8+/src/unexpand.c           |  226 ++++++++++
 coreutils-6.8+/src/uniq.c               |  259 +++++++++++-
 coreutils-6.8+/tests/misc/mb1.I         |    4 
 coreutils-6.8+/tests/misc/mb1.X         |    4 
 coreutils-6.8+/tests/misc/mb2.I         |    4 
 coreutils-6.8+/tests/misc/mb2.X         |    4 
 coreutils-6.8+/tests/misc/sort-mb-tests |   58 ++
 18 files changed, 2736 insertions(+), 178 deletions(-)

View full diff with command:
/usr/bin/cvs -n -f diff -kk -u -p -N -r 1.38 -r 1.39 coreutils-i18n.patchIndex: coreutils-i18n.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-i18n.patch,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -p -r1.38 -r1.39
--- coreutils-i18n.patch	10 Sep 2009 10:36:58 -0000	1.38
+++ coreutils-i18n.patch	12 Sep 2009 09:28:49 -0000	1.39
@@ -187,14 +187,6 @@ diff -urN coreutils-6.12-orig/tests/Make
  /* The official name of this program (e.g., no `g' prefix).  */
  #define PROGRAM_NAME "expand"
  
-@@ -183,6 +200,7 @@
- 	      stops = num_start + len - 1;
- 	    }
- 	}
-+
-       else
- 	{
- 	  error (0, 0, _("tab size contains invalid character(s): %s"),
 @@ -365,6 +383,142 @@
      }
  }
@@ -414,7 +406,7 @@ diff -urN coreutils-6.12-orig/tests/Make
        char *sep;
 -      for (; (sep = memchr (ptr, tab, lim - ptr)) != NULL; ptr = sep + 1)
 +      for (; (sep = memchr (ptr, t, lim - ptr)) != NULL; ptr = sep + 1)
- 	extract_field (line, ptr, sep - ptr);
+         extract_field (line, ptr, sep - ptr);
      }
    else
 @@ -229,6 +248,148 @@
@@ -586,115 +578,100 @@ diff -urN coreutils-6.12-orig/tests/Make
  
    outlist = outlist_head.next;
    if (outlist)
-@@ -397,12 +628,12 @@
- 	  if (o->file == 0)
- 	    {
- 	      if (line1 == &uni_blank)
--	        {
-+		{
- 		  line = line2;
- 		  field = join_field_2;
- 		}
- 	      else
--	        {
-+		{
- 		  line = line1;
- 		  field = join_field_1;
- 		}
 @@ -416,7 +647,7 @@
- 	  o = o->next;
- 	  if (o == NULL)
- 	    break;
--	  putchar (output_separator);
-+	  PUT_TAB_CHAR;
- 	}
+           o = o->next;
+           if (o == NULL)
+             break;
+-          putchar (output_separator);
++          PUT_TAB_CHAR;
+         }
        putchar ('\n');
      }
 @@ -434,23 +665,23 @@
        prfield (join_field_1, line1);
        for (i = 0; i < join_field_1 && i < line1->nfields; ++i)
- 	{
--	  putchar (output_separator);
-+	  PUT_TAB_CHAR;
- 	  prfield (i, line1);
- 	}
+         {
+-          putchar (output_separator);
++          PUT_TAB_CHAR;
+           prfield (i, line1);
+         }
        for (i = join_field_1 + 1; i < line1->nfields; ++i)
- 	{
--	  putchar (output_separator);
-+	  PUT_TAB_CHAR;
- 	  prfield (i, line1);
- 	}
+         {
+-          putchar (output_separator);
++          PUT_TAB_CHAR;
+           prfield (i, line1);
+         }
  
        for (i = 0; i < join_field_2 && i < line2->nfields; ++i)
- 	{
--	  putchar (output_separator);
-+	  PUT_TAB_CHAR;
- 	  prfield (i, line2);
- 	}
+         {
+-          putchar (output_separator);
++          PUT_TAB_CHAR;
+           prfield (i, line2);
+         }
        for (i = join_field_2 + 1; i < line2->nfields; ++i)
- 	{
--	  putchar (output_separator);
-+	  PUT_TAB_CHAR;
- 	  prfield (i, line2);
- 	}
+         {
+-          putchar (output_separator);
++          PUT_TAB_CHAR;
+           prfield (i, line2);
+         }
        putchar ('\n');
 @@ -859,20 +1090,41 @@
  
- 	case 't':
- 	  {
--	    unsigned char newtab = optarg[0];
--	    if (! newtab)
-+	    char *newtab;
-+	    size_t newtablen;
-+	    if (! optarg[0])
- 	      error (EXIT_FAILURE, 0, _("empty tab"));
--	    if (optarg[1])
-+	    newtab = xstrdup (optarg);
-+#if HAVE_MBRTOWC
-+	    if (MB_CUR_MAX > 1)
-+	      {
-+		mbstate_t state;
-+
-+		memset (&state, 0, sizeof (mbstate_t));
-+		newtablen = mbrtowc (NULL, newtab,
-+				     strnlen (newtab, MB_LEN_MAX),
-+				     &state);
-+		if (newtablen == (size_t) 0
-+		    || newtablen == (size_t) -1
-+		    || newtablen == (size_t) -2)
-+		  newtablen = 1;
-+	      }
-+	    else
-+#endif
-+	      newtablen = 1;
-+		
-+	    if (newtablen == 1 && newtab[1])
-+	      {
-+		if (STREQ (newtab, "\\0"))
-+		  newtab[0] = '\0';
-+	      }
-+	    if (tab != NULL && strcmp (tab, newtab))
- 	      {
--		if (STREQ (optarg, "\\0"))
--		  newtab = '\0';
--		else
--		  error (EXIT_FAILURE, 0, _("multi-character tab %s"),
--			 quote (optarg));
-+		free (newtab);
-+		error (EXIT_FAILURE, 0, _("incompatible tabs"));
- 	      }
--	    if (0 <= tab && tab != newtab)
--	      error (EXIT_FAILURE, 0, _("incompatible tabs"));
- 	    tab = newtab;
-+	    tablen = newtablen;
- 	  }
- 	  break;
-
+         case 't':
+           {
+-            unsigned char newtab = optarg[0];
+-            if (! newtab)
++            char *newtab;
++            size_t newtablen;
++            if (! optarg[0])
+               error (EXIT_FAILURE, 0, _("empty tab"));
+-            if (optarg[1])
++            newtab = xstrdup (optarg);
++#if HAVE_MBRTOWC
++            if (MB_CUR_MAX > 1)
++              {
++                mbstate_t state;
++
++                memset (&state, 0, sizeof (mbstate_t));
++                newtablen = mbrtowc (NULL, newtab,
++                                     strnlen (newtab, MB_LEN_MAX),
++                                     &state);
++                if (newtablen == (size_t) 0
++                    || newtablen == (size_t) -1
++                    || newtablen == (size_t) -2)
++                  newtablen = 1;
++              }
++            else
++#endif
++              newtablen = 1;
++                
++            if (newtablen == 1 && newtab[1])
++              {
++                if (STREQ (newtab, "\\0"))
++                  newtab[0] = '\0';
++              }
++            if (tab != NULL && strcmp (tab, newtab))
[...2648 lines suppressed...]
-+	  break;
++        case character_mode:
++          cut_characters_or_cut_bytes_no_split (stream);
++          break;
 +
-+	case field_mode:
-+	  cut_fields_mb (stream);
-+	  break;
++        case field_mode:
++          cut_fields_mb (stream);
++          break;
 +
-+	default:
-+	  abort ();
-+	}
++        default:
++          abort ();
++        }
 +    }
    else
 -    cut_fields (stream);
 +#endif
 +    {
 +      if (operating_mode == field_mode)
-+	cut_fields (stream);
++        cut_fields (stream);
 +      else
-+	cut_bytes (stream);
++        cut_bytes (stream);
 +    }
  }
  
@@ -3925,75 +3902,75 @@ diff -urNp coreutils-6.11-orig/src/join.
    set_program_name (argv[0]);
 @@ -770,7 +1090,6 @@
        switch (optc)
- 	{
- 	case 'b':
--	case 'c':
- 	  /* Build the byte list. */
- 	  if (operating_mode != undefined_mode)
- 	    FATAL_ERROR (_("only one type of list may be specified"));
+         {
+         case 'b':
+-        case 'c':
+           /* Build the byte list. */
+           if (operating_mode != undefined_mode)
+             FATAL_ERROR (_("only one type of list may be specified"));
 @@ -778,6 +1097,14 @@
- 	  spec_list_string = optarg;
- 	  break;
+           spec_list_string = optarg;
+           break;
  
-+	case 'c':
-+	  /* Build the character list. */
-+	  if (operating_mode != undefined_mode)
-+	    FATAL_ERROR (_("only one type of list may be specified"));
-+	  operating_mode = character_mode;
-+	  spec_list_string = optarg;
-+	  break;
++        case 'c':
++          /* Build the character list. */
++          if (operating_mode != undefined_mode)
++            FATAL_ERROR (_("only one type of list may be specified"));
++          operating_mode = character_mode;
++          spec_list_string = optarg;
++          break;
 +
- 	case 'f':
- 	  /* Build the field list. */
- 	  if (operating_mode != undefined_mode)
+         case 'f':
+           /* Build the field list. */
+           if (operating_mode != undefined_mode)
 @@ -789,10 +1116,35 @@
- 	case 'd':
- 	  /* New delimiter. */
- 	  /* Interpret -d '' to mean `use the NUL byte as the delimiter.'  */
--	  if (optarg[0] != '\0' && optarg[1] != '\0')
--	    FATAL_ERROR (_("the delimiter must be a single character"));
--	  delim = optarg[0];
--	  delim_specified = true;
-+	    {
+         case 'd':
+           /* New delimiter. */
+           /* Interpret -d '' to mean `use the NUL byte as the delimiter.'  */
+-          if (optarg[0] != '\0' && optarg[1] != '\0')
+-            FATAL_ERROR (_("the delimiter must be a single character"));
+-          delim = optarg[0];
+-          delim_specified = true;
++            {
 +#if HAVE_MBRTOWC
-+	      if(MB_CUR_MAX > 1)
-+		{
-+		  mbstate_t state;
-+
-+		  memset (&state, '\0', sizeof(mbstate_t));
-+		  delimlen = mbrtowc (&wcdelim, optarg, strnlen(optarg, MB_LEN_MAX), &state);
-+
-+		  if (delimlen == (size_t)-1 || delimlen == (size_t)-2)
-+		    ++force_singlebyte_mode;
-+		  else
-+		    {
-+		      delimlen = (delimlen < 1) ? 1 : delimlen;
-+		      if (wcdelim != L'\0' && *(optarg + delimlen) != '\0')
-+			FATAL_ERROR (_("the delimiter must be a single character"));
-+		      memcpy (mbdelim, optarg, delimlen);
-+		    }
-+		}
-+
-+	      if (MB_CUR_MAX <= 1 || force_singlebyte_mode)
-+#endif
-+		{
-+		  if (optarg[0] != '\0' && optarg[1] != '\0')
-+		    FATAL_ERROR (_("the delimiter must be a single character"));
-+		  delim = (unsigned char) optarg[0];
-+		}
-+	    delim_specified = true;
-+	  }
- 	  break;
++              if(MB_CUR_MAX > 1)
++                {
++                  mbstate_t state;
++
++                  memset (&state, '\0', sizeof(mbstate_t));
++                  delimlen = mbrtowc (&wcdelim, optarg, strnlen(optarg, MB_LEN_MAX), &state);
++
++                  if (delimlen == (size_t)-1 || delimlen == (size_t)-2)
++                    ++force_singlebyte_mode;
++                  else
++                    {
++                      delimlen = (delimlen < 1) ? 1 : delimlen;
++                      if (wcdelim != L'\0' && *(optarg + delimlen) != '\0')
++                        FATAL_ERROR (_("the delimiter must be a single character"));
++                      memcpy (mbdelim, optarg, delimlen);
++                    }
++                }
++
++              if (MB_CUR_MAX <= 1 || force_singlebyte_mode)
++#endif
++                {
++                  if (optarg[0] != '\0' && optarg[1] != '\0')
++                    FATAL_ERROR (_("the delimiter must be a single character"));
++                  delim = (unsigned char) optarg[0];
++                }
++            delim_specified = true;
++          }
+           break;
  
- 	case OUTPUT_DELIMITER_OPTION:
+         case OUTPUT_DELIMITER_OPTION:
 @@ -805,6 +1157,7 @@
- 	  break;
+           break;
  
- 	case 'n':
-+	  byte_mode_character_aware = 1;
- 	  break;
+         case 'n':
++          byte_mode_character_aware = 1;
+           break;
  
- 	case 's':
+         case 's':
 @@ -827,7 +1180,7 @@
    if (operating_mode == undefined_mode)
      FATAL_ERROR (_("you must specify a list of bytes, characters, or fields"));
@@ -4027,20 +4004,20 @@ diff -urNp coreutils-6.11-orig/src/join.
 -      output_delimiter_length = 1;
 +#ifdef HAVE_MBRTOWC
 +      if (MB_CUR_MAX > 1 && !force_singlebyte_mode)
-+	{
-+	  output_delimiter_string = xstrdup(mbdelim);
-+	  output_delimiter_length = delimlen;
-+	}
++        {
++          output_delimiter_string = xstrdup(mbdelim);
++          output_delimiter_length = delimlen;
++        }
 +
 +      if (MB_CUR_MAX <= 1 || force_singlebyte_mode)
 +#endif
-+	{
-+	  static char dummy[2]; 
-+	  dummy[0] = delim;
-+	  dummy[1] = '\0';
-+	  output_delimiter_string = dummy;
-+	  output_delimiter_length = 1;
-+	}
++        {
++          static char dummy[2]; 
++          dummy[0] = delim;
++          dummy[1] = '\0';
++          output_delimiter_string = dummy;
++          output_delimiter_length = 1;
++        }
      }
  
    if (optind == argc)

coreutils-pam.patch:
 coreutils-6.7/doc/coreutils.texi |   36 +-----
 coreutils-6.7/src/Makefile.am    |    2 
 coreutils-6.7/src/su.c           |  224 +++++++++++++++++++++++++++++++++++++--
 coreutils-7.1/configure.ac       |    7 +
 4 files changed, 233 insertions(+), 36 deletions(-)

Index: coreutils-pam.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-pam.patch,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -p -r1.16 -r1.17
--- coreutils-pam.patch	1 Apr 2009 11:14:30 -0000	1.16
+++ coreutils-pam.patch	12 Sep 2009 09:28:49 -0000	1.17
@@ -155,15 +155,15 @@
 +      char const *display = getenv ("DISPLAY");
 +      char const *xauthority = getenv ("XAUTHORITY");
        if (term)
- 	term = xstrdup (term);
+         term = xstrdup (term);
        environ = xmalloc ((6 + !!term) * sizeof (char *));
        environ[0] = NULL;
        if (term)
- 	xsetenv ("TERM", term);
+         xsetenv ("TERM", term);
 +      if (display)
-+	xsetenv ("DISPLAY", display);
++        xsetenv ("DISPLAY", display);
 +      if (xauthority)
-+	xsetenv ("XAUTHORITY", xauthority);
++        xsetenv ("XAUTHORITY", xauthority);
        xsetenv ("HOME", pw->pw_dir);
        xsetenv ("SHELL", shell);
        xsetenv ("USER", pw->pw_name);
@@ -218,8 +218,8 @@
  
  static void
  run_shell (char const *shell, char const *command, char **additional_args,
--	   size_t n_additional_args)
-+	   size_t n_additional_args, const struct passwd *pw)
+-           size_t n_additional_args)
++           size_t n_additional_args, const struct passwd *pw)
  {
    size_t n_args = 1 + fast_startup + 2 * !!command + n_additional_args + 1;
    char const **args = xnmalloc (n_args, sizeof *args);

coreutils-selinux.patch:
 configure.ac       |    7 ++
 man/chcon.x        |    2 
 man/runcon.x       |    2 
 src/chcon.c        |    2 
 src/copy.c         |    2 
 src/copy.h         |    3 
 src/cp.c           |   39 ++++++++++++
 src/id.c           |    2 
 src/install.c      |   13 +++-
 src/ls.c           |  161 +++++++++++++++++++++++++++++++++++++++++++----------
 src/mkdir.c        |    1 
 src/mknod.c        |    2 
 src/mv.c           |    1 
 src/runcon.c       |    2 
 src/stat.c         |   85 +++++++++++++++++++--------
 tests/misc/selinux |    2 
 16 files changed, 259 insertions(+), 67 deletions(-)

Index: coreutils-selinux.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-selinux.patch,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -p -r1.58 -r1.59
--- coreutils-selinux.patch	25 May 2009 12:11:34 -0000	1.58
+++ coreutils-selinux.patch	12 Sep 2009 09:28:49 -0000	1.59
@@ -38,14 +38,14 @@ diff -urNp coreutils-7.1-orig/src/copy.c
 --- coreutils-7.1-orig/src/copy.c	2009-02-18 15:32:52.000000000 +0100
 +++ coreutils-7.1/src/copy.c	2009-02-24 13:47:15.000000000 +0100
 @@ -1830,6 +1830,8 @@ copy_internal (char const *src_name, cha
- 	{
- 	  /* Here, we are crossing a file system boundary and cp's -x option
- 	     is in effect: so don't copy the contents of this directory. */
+         {
+           /* Here, we are crossing a file system boundary and cp's -x option
+              is in effect: so don't copy the contents of this directory. */
 +        if (x->preserve_security_context)
-+      	    restore_default_fscreatecon_or_die ();
- 	}
++           restore_default_fscreatecon_or_die ();
+         }
        else
- 	{
+         {
 diff -urNp coreutils-7.1-orig/src/copy.h coreutils-7.1/src/copy.h
 --- coreutils-7.1-orig/src/copy.h	2009-02-18 15:32:52.000000000 +0100
 +++ coreutils-7.1/src/copy.h	2009-02-24 13:47:15.000000000 +0100
@@ -102,60 +102,60 @@ diff -urNp coreutils-7.1-orig/src/cp.c c
  
 -  while ((c = getopt_long (argc, argv, "abdfHilLnprst:uvxPRS:T",
 +  while ((c = getopt_long (argc, argv, "abcdfHilLnprst:uvxPRS:TZ:",
- 			   long_opts, NULL))
- 	 != -1)
+                            long_opts, NULL))
+          != -1)
      {
 @@ -945,6 +951,16 @@ main (int argc, char **argv)
- 	  copy_contents = true;
- 	  break;
+           copy_contents = true;
+           break;
  
-+  case 'c':
-+	  if ( x.set_security_context ) { 
-+	      (void) fprintf(stderr, "%s: cannot force target context and preserve it\n", argv[0]);
-+	    exit( 1 );
-+	  }
-+	  else if (selinux_enabled) {
-+	    x.preserve_security_context = true;
-+      x.require_preserve_context = true;
-+    }
-+	  break;
- 	case 'd':
- 	  x.preserve_links = true;
- 	  x.dereference = DEREF_NEVER;
++        case 'c':
++          if ( x.set_security_context ) { 
++              (void) fprintf(stderr, "%s: cannot force target context and preserve it\n", argv[0]);
++             exit( 1 );
++           }
++           else if (selinux_enabled) {
++              x.preserve_security_context = true;
++              x.require_preserve_context = true;
++           }
++          break;
+         case 'd':
+           x.preserve_links = true;
+           x.dereference = DEREF_NEVER;
 @@ -1054,6 +1070,27 @@ main (int argc, char **argv)
- 	  x.one_file_system = true;
- 	  break;
+           x.one_file_system = true;
+           break;
  
 +
-+  case 'Z':
-+	  /* politely decline if we're not on a selinux-enabled kernel. */
-+	  if( !selinux_enabled ) {
-+	    fprintf( stderr, "Warning:  ignoring --context (-Z). "
-+		             "It requires a SELinux enabled kernel.\n" );
-+	    break;
-+	  }
-+	  if ( x.preserve_security_context ) {
-+	    (void) fprintf(stderr, "%s: cannot force target context to '%s' and preserve it\n", argv[0], optarg);
-+	    exit( 1 );
-+	  }
-+	  x.set_security_context = true;
-+	  /* if there's a security_context given set new path 
-+	     components to that context, too */
-+	  if ( setfscreatecon(optarg) < 0 ) {
-+	    (void) fprintf(stderr, _("cannot set default security context %s\n"), optarg);
-+	    exit( 1 );
-+	  }
-+	  break;
-+
- 	case 'S':
- 	  make_backups = true;
- 	  backup_suffix_string = optarg;
++        case 'Z':
++          /* politely decline if we're not on a selinux-enabled kernel. */
++          if( !selinux_enabled ) {
++             fprintf( stderr, "Warning:  ignoring --context (-Z). "
++                              "It requires a SELinux enabled kernel.\n" );
++             break;
++         }
++         if ( x.preserve_security_context ) {
++            (void) fprintf(stderr, "%s: cannot force target context to '%s' and preserve it\n", argv[0], optarg);
++            exit( 1 );
++         }
++         x.set_security_context = true;
++         /* if there's a security_context given set new path 
++            components to that context, too */
++         if ( setfscreatecon(optarg) < 0 ) {
++            (void) fprintf(stderr, _("cannot set default security context %s\n"), optarg);
++            exit( 1 );
++         }
++         break;
++
+         case 'S':
+           make_backups = true;
+           backup_suffix_string = optarg;
 diff -urNp coreutils-7.1-orig/src/chcon.c coreutils-7.1/src/chcon.c
 --- coreutils-7.1-orig/src/chcon.c	2008-10-12 16:12:56.000000000 +0200
 +++ coreutils-7.1/src/chcon.c	2009-02-24 13:47:15.000000000 +0100
 @@ -346,7 +346,7 @@ Usage: %s [OPTION]... CONTEXT FILE...\n\
  "),
- 	program_name, program_name, program_name);
+         program_name, program_name, program_name);
        fputs (_("\
 -Change the security context of each FILE to CONTEXT.\n\
 +Change the SELinux security context of each FILE to CONTEXT.\n\
@@ -191,36 +191,36 @@ diff -urNp coreutils-7.1-orig/src/instal
  
 -  while ((optc = getopt_long (argc, argv, "bcCsDdg:m:o:pt:TvS:Z:", long_options,
 +  while ((optc = getopt_long (argc, argv, "bcCsDdg:m:o:pPt:TvS:Z:", long_options,
- 			      NULL)) != -1)
+                               NULL)) != -1)
      {
        switch (optc)
 @@ -539,6 +540,7 @@ main (int argc, char **argv)
- 	  error (0, 0, _("WARNING: --preserve_context is deprecated; "
- 			 "use --preserve-context instead"));
- 	  /* fall through */
-+  case 'P':
- 	case PRESERVE_CONTEXT_OPTION:
- 	  if ( ! selinux_enabled)
- 	    {
+           error (0, 0, _("WARNING: --preserve_context is deprecated; "
+                          "use --preserve-context instead"));
+           /* fall through */
++        case 'P':
+         case PRESERVE_CONTEXT_OPTION:
+           if ( ! selinux_enabled)
+             {
 @@ -546,6 +548,10 @@ main (int argc, char **argv)
- 			     "this kernel is not SELinux-enabled"));
- 	      break;
- 	    }
-+    if ( x.set_security_context ) {
-+		  (void) fprintf(stderr, "%s: cannot force target context and preserve it\n", argv[0]);
-+ 	    exit( 1 );
-+ 	  }
- 	  x.preserve_security_context = true;
- 	  use_default_selinux_context = false;
- 	  break;
+                              "this kernel is not SELinux-enabled"));
+               break;
+             }
++          if ( x.set_security_context ) {
++             (void) fprintf(stderr, "%s: cannot force target context and preserve it\n", argv[0]);
++             exit( 1 );
++          }
+           x.preserve_security_context = true;
+           use_default_selinux_context = false;
+           break;
 @@ -557,6 +563,7 @@ main (int argc, char **argv)
- 	      break;
- 	    }
- 	  scontext = optarg;
-+	  x.set_security_context = true;
- 	  use_default_selinux_context = false;
- 	  break;
- 	case_GETOPT_HELP_CHAR;
+               break;
+             }
+           scontext = optarg;
++          x.set_security_context = true;
+           use_default_selinux_context = false;
+           break;
+         case_GETOPT_HELP_CHAR;
 @@ -990,8 +997,8 @@ Mandatory arguments to long options are 
    -v, --verbose       print the name of each directory as it is created\n\
  "), stdout);
@@ -312,21 +312,21 @@ diff -urNp coreutils-7.1-orig/src/ls.c c
 @@ -1194,7 +1203,8 @@ main (int argc, char **argv)
        /* Avoid following symbolic links when possible.  */
        if (is_colored (C_ORPHAN)
- 	  || (is_colored (C_EXEC) && color_symlink_as_referent)
--	  || (is_colored (C_MISSING) && format == long_format))
-+	  || (is_colored (C_MISSING) && (format == long_format
-+	      || format == security_format)))
- 	check_symlink_color = true;
+           || (is_colored (C_EXEC) && color_symlink_as_referent)
+-          || (is_colored (C_MISSING) && format == long_format))
++          || (is_colored (C_MISSING) && (format == long_format
++              || format == security_format)))
+         check_symlink_color = true;
  
        /* If the standard output is a controlling terminal, watch out
 @@ -1241,7 +1251,7 @@ main (int argc, char **argv)
    if (dereference == DEREF_UNDEFINED)
      dereference = ((immediate_dirs
- 		    || indicator_style == classify
--		    || format == long_format)
-+		    || format == long_format || format == security_format)
- 		   ? DEREF_NEVER
- 		   : DEREF_COMMAND_LINE_SYMLINK_TO_DIR);
+                     || indicator_style == classify
+-                    || format == long_format)
++                    || format == long_format || format == security_format)
+                    ? DEREF_NEVER
+                    : DEREF_COMMAND_LINE_SYMLINK_TO_DIR);
  
 @@ -1261,7 +1271,7 @@ main (int argc, char **argv)
  
@@ -336,7 +336,7 @@ diff -urNp coreutils-7.1-orig/src/ls.c c
 +    || format == security_format || print_scontext
      || print_block_size;
    format_needs_type = (! format_needs_stat
- 		       && (recursive
+                        && (recursive
 @@ -1292,7 +1302,7 @@ main (int argc, char **argv)
      }
    else
@@ -356,42 +356,42 @@ diff -urNp coreutils-7.1-orig/src/ls.c c
    /* FIXME: put this in a function.  */
    {
 @@ -1837,13 +1847,27 @@ decode_switches (int argc, char **argv)
- 	  break;
+           break;
  
- 	case 'Z':
--	  print_scontext = true;
-+	  print_scontext = 1;
+         case 'Z':
+-          print_scontext = true;
++          print_scontext = 1;
 +    format = security_format;
- 	  break;
+           break;
  
- 	case_GETOPT_HELP_CHAR;
+         case_GETOPT_HELP_CHAR;
  
- 	case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS);
+         case_GETOPT_VERSION_CHAR (PROGRAM_NAME, AUTHORS);
  
 +  case CONTEXT_OPTION: /* default security context format */
-+		print_scontext = 1;
-+		format = security_format;
-+		break;
-+	case LCONTEXT_OPTION: /* long format plus security context */
-+		print_scontext = 1;
-+		format = long_format;
-+		break;
-+	case SCONTEXT_OPTION: /* short form of new security format */
-+		print_scontext = 0;
-+		format = security_format;
-+		break;
-+
- 	default:
- 	  usage (LS_FAILURE);
- 	}
++                print_scontext = 1;
++                format = security_format;
++                break;
++        case LCONTEXT_OPTION: /* long format plus security context */
++                print_scontext = 1;
++                format = long_format;
++                break;
++        case SCONTEXT_OPTION: /* short form of new security format */
++                print_scontext = 0;
++                format = security_format;
++                break;
++
+         default:
+           usage (LS_FAILURE);
+         }
 @@ -2557,8 +2581,10 @@ clear_files (void)
        struct fileinfo *f = sorted_file[i];
        free (f->name);
        free (f->linkname);
 -      if (f->scontext != UNKNOWN_SECURITY_CONTEXT)
--	freecon (f->scontext);
+-        freecon (f->scontext);
 +      if (f->scontext != UNKNOWN_SECURITY_CONTEXT) {
-+       	freecon (f->scontext);
++               freecon (f->scontext);
 +        f->scontext = NULL;
 +      }
      }
@@ -411,49 +411,49 @@ diff -urNp coreutils-7.1-orig/src/ls.c c
  
 -      if (format == long_format || print_scontext)
 +      if (format == long_format || format == security_format || print_scontext)
- 	{
- 	  bool have_selinux = false;
- 	  bool have_acl = false;
+         {
+           bool have_selinux = false;
+           bool have_acl = false;
 @@ -2732,7 +2760,7 @@ gobble_file (char const *name, enum file
- 		err = 0;
- 	    }
+                 err = 0;
+             }
  
--	  if (err == 0 && format == long_format)
-+	  if (err == 0 && (format == long_format || format == security_format))
- 	    {
- 	      int n = file_has_acl (absolute_name, &f->stat);
- 	      err = (n < 0);
+-          if (err == 0 && format == long_format)
++          if (err == 0 && (format == long_format || format == security_format))
+             {
+               int n = file_has_acl (absolute_name, &f->stat);
+               err = (n < 0);
 @@ -2751,7 +2779,8 @@ gobble_file (char const *name, enum file
- 	}
+         }
  
        if (S_ISLNK (f->stat.st_mode)
--	  && (format == long_format || check_symlink_color))
-+	  && (format == long_format || format == security_format
-+	      || check_symlink_color))
- 	{
- 	  char *linkname;
- 	  struct stat linkstats;
+-          && (format == long_format || check_symlink_color))
++          && (format == long_format || format == security_format
++              || check_symlink_color))
+         {
+           char *linkname;
+           struct stat linkstats;
 @@ -2771,6 +2800,7 @@ gobble_file (char const *name, enum file
- 		 command line are automatically traced if not being
- 		 listed as files.  */
- 	      if (!command_line_arg || format == long_format
-+		  || format == security_format
- 		  || !S_ISDIR (linkstats.st_mode))
- 		{
- 		  /* Get the linked-to file's mode for the filetype indicator
+                  command line are automatically traced if not being
+                  listed as files.  */
+               if (!command_line_arg || format == long_format
++                  || format == security_format
+                   || !S_ISDIR (linkstats.st_mode))
+                 {
+                   /* Get the linked-to file's mode for the filetype indicator
 @@ -2810,7 +2840,7 @@ gobble_file (char const *name, enum file
- 	    block_size_width = len;
- 	}
+             block_size_width = len;
+         }
  
 -      if (format == long_format)
 +      if (format == long_format || format == security_format)
- 	{
- 	  if (print_owner)
- 	    {
+         {
+           if (print_owner)
+             {
 @@ -3312,6 +3341,13 @@ print_current_files (void)
- 	  print_long_format (sorted_file[i]);
- 	  DIRED_PUTCHAR ('\n');
- 	}
+           print_long_format (sorted_file[i]);
+           DIRED_PUTCHAR ('\n');
+         }
 +     break;
 +    case security_format:
 +      for (i = 0; i < cwd_n_used; i++)
@@ -514,15 +514,15 @@ diff -urNp coreutils-7.1-orig/src/ls.c c
 +  DIRED_INDENT ();
 +  DIRED_FPUTS (buf, stdout, p - buf);
 +  size_t w = print_name_with_quoting (f->name, FILE_OR_LINK_MODE(f), f->linkok,
-+			   f->stat_ok, f->filetype, &dired_obstack, f->stat.st_nlink, p - buf);
++                           f->stat_ok, f->filetype, &dired_obstack, f->stat.st_nlink, p - buf);
 +
 +  if (f->filetype == symbolic_link) {
 +      if (f->linkname) {
-+	  DIRED_FPUTS_LITERAL (" -> ", stdout);
-+	  print_name_with_quoting (f->linkname, f->linkmode, f->linkok - 1,
-+				   f->stat_ok, f->filetype, NULL, f->stat.st_nlink, (p-buf) + w + 4 );
-+	  if (indicator_style != none)
-+	    print_type_indicator (f->stat_ok, f->linkmode, f->filetype);
++          DIRED_FPUTS_LITERAL (" -> ", stdout);
++          print_name_with_quoting (f->linkname, f->linkmode, f->linkok - 1,
++                                   f->stat_ok, f->filetype, NULL, f->stat.st_nlink, (p-buf) + w + 4 );
++          if (indicator_style != none)
++            print_type_indicator (f->stat_ok, f->linkmode, f->filetype);
 +      }
 +  }
 +  else {
@@ -553,27 +553,27 @@ diff -urNp coreutils-7.1-orig/src/ls.c c
  
 @@ -3543,9 +3648,6 @@ print_long_format (const struct fileinfo
        if (print_author)
- 	format_user (f->stat.st_author, author_width, f->stat_ok);
+         format_user (f->stat.st_author, author_width, f->stat_ok);
  
 -      if (print_scontext)
--	format_user_or_group (f->scontext, 0, scontext_width);
+-        format_user_or_group (f->scontext, 0, scontext_width);
 -
        p = buf;
      }
  
 @@ -3888,9 +3990,6 @@ print_file_name_and_frills (const struct
- 	    human_readable (ST_NBLOCKS (f->stat), buf, human_output_opts,
- 			    ST_NBLOCKSIZE, output_block_size));
+             human_readable (ST_NBLOCKS (f->stat), buf, human_output_opts,
+                             ST_NBLOCKSIZE, output_block_size));
  
 -  if (print_scontext)
 -    printf ("%*s ", format == with_commas ? 0 : scontext_width, f->scontext);
 -
    size_t width = print_name_with_quoting (f->name, FILE_OR_LINK_MODE (f),
- 					  f->linkok, f->stat_ok, f->filetype,
- 					  NULL, f->stat.st_nlink, start_col);
+                                           f->linkok, f->stat_ok, f->filetype,
+                                           NULL, f->stat.st_nlink, start_col);
 @@ -4105,9 +4204,6 @@ length_of_file_name_and_frills (const st
- 					  output_block_size))
- 		: block_size_width);
+                                           output_block_size))
+                 : block_size_width);
  
 -  if (print_scontext)
 -    len += 1 + (format == with_commas ? strlen (f->scontext) : scontext_width);
@@ -598,7 +598,7 @@ diff -urNp coreutils-7.1-orig/src/ls.c c
 +"), stdout);
        fputs (HELP_OPTION_DESCRIPTION, stdout);
        fputs (VERSION_OPTION_DESCRIPTION, stdout);
-       fputs (_("\n\
+       emit_size_note ();
 diff -urNp coreutils-7.1-orig/src/mkdir.c coreutils-7.1/src/mkdir.c
 --- coreutils-7.1-orig/src/mkdir.c	2008-10-19 21:47:57.000000000 +0200
 +++ coreutils-7.1/src/mkdir.c	2009-02-24 13:47:15.000000000 +0100
@@ -665,32 +665,32 @@ diff -urNp coreutils-7.1-orig/src/stat.c
 +    if (terse)
      {
 -      format = (terse
--		? "%n %i %l %t %s %S %b %f %a %c %d\n"
--		: "  File: \"%n\"\n"
--		"    ID: %-8i Namelen: %-7l Type: %T\n"
--		"Block size: %-10s Fundamental block size: %S\n"
--		"Blocks: Total: %-10b Free: %-10f Available: %a\n"
--		"Inodes: Total: %-10c Free: %d\n");
+-                ? "%n %i %l %t %s %S %b %f %a %c %d\n"
+-                : "  File: \"%n\"\n"
+-                "    ID: %-8i Namelen: %-7l Type: %T\n"
+-                "Block size: %-10s Fundamental block size: %S\n"
+-                "Blocks: Total: %-10b Free: %-10f Available: %a\n"
+-                "Inodes: Total: %-10c Free: %d\n");
 +      if (secure)
 +        format = "%n %i %l %t %s %S %b %f %a %c %d %C\n";
-+   	  else
-+	      format = "%n %i %l %t %s %S %b %f %a %c %d\n";
++             else
++              format = "%n %i %l %t %s %S %b %f %a %c %d\n";
      }
 +    else
-+  	{
-+	    if (secure)
-+	      format = "  File: \"%n\"\n"
-+	        "    ID: %-8i Namelen: %-7l Type: %T\n"
-+  	      "Block size: %-10s Fundamental block size: %S\n"
-+	        "Blocks: Total: %-10b Free: %-10f Available: %a\n"
-+	        "Inodes: Total: %-10c Free: %d\n"
-+	        "   S_Context: %C\n";
-+  	  else
-+	      format = "  File: \"%n\"\n"
-+	        "    ID: %-8i Namelen: %-7l Type: %T\n"
-+	        "Block size: %-10s Fundamental block size: %S\n"
-+	        "Blocks: Total: %-10b Free: %-10f Available: %a\n"
-+  	      "Inodes: Total: %-10c Free: %d\n";
++          {
++            if (secure)
++              format = "  File: \"%n\"\n"
++                "    ID: %-8i Namelen: %-7l Type: %T\n"
++                "Block size: %-10s Fundamental block size: %S\n"
++                "Blocks: Total: %-10b Free: %-10f Available: %a\n"
++                "Inodes: Total: %-10c Free: %d\n"
++                "   S_Context: %C\n";
++            else
++              format = "  File: \"%n\"\n"
++                "    ID: %-8i Namelen: %-7l Type: %T\n"
++                "Block size: %-10s Fundamental block size: %S\n"
++                "Blocks: Total: %-10b Free: %-10f Available: %a\n"
++                "Inodes: Total: %-10c Free: %d\n";
 +     }
 +  }
  
@@ -709,46 +709,46 @@ diff -urNp coreutils-7.1-orig/src/stat.c
    if (format == NULL)
      {
        if (terse)
--	{
--	  format = "%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o\n";
--	}
+-        {
+-          format = "%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o\n";
+-        }
 +      {
 +        if (secure)
-+  	     format = "%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o %C\n";
-+  	   else
-+	       format = "%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o\n";
++               format = "%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o %C\n";
++             else
++               format = "%n %s %b %f %u %g %D %i %h %t %T %X %Y %Z %o\n";
 +      }
        else
- 	{
- 	  /* Temporary hack to match original output until conditional
+         {
+           /* Temporary hack to match original output until conditional
 @@ -885,12 +904,22 @@ do_stat (char const *filename, bool ters
- 	    }
- 	  else
- 	    {
--	      format =
--		"  File: %N\n"
--		"  Size: %-10s\tBlocks: %-10b IO Block: %-6o %F\n"
--		"Device: %Dh/%dd\tInode: %-10i  Links: %h\n"
--		"Access: (%04a/%10.10A)  Uid: (%5u/%8U)   Gid: (%5g/%8G)\n"
--		"Access: %x\n" "Modify: %y\n" "Change: %z\n";
+             }
+           else
+             {
+-              format =
+-                "  File: %N\n"
+-                "  Size: %-10s\tBlocks: %-10b IO Block: %-6o %F\n"
+-                "Device: %Dh/%dd\tInode: %-10i  Links: %h\n"
+-                "Access: (%04a/%10.10A)  Uid: (%5u/%8U)   Gid: (%5g/%8G)\n"
+-                "Access: %x\n" "Modify: %y\n" "Change: %z\n";
 +        if (secure)
 +           format =
-+  		  "  File: %N\n"
-+	  	  "  Size: %-10s\tBlocks: %-10b IO Block: %-6o %F\n"
-+  		  "Device: %Dh/%dd\tInode: %-10i  Links: %-5h"
-+	  	  " Device type: %t,%T\n"
-+ 		    "Access: (%04a/%10.10A)  Uid: (%5u/%8U)   Gid: (%5g/%8G)\n"
-+  		  "   S_Context: %C\n"
-+	  	  "Access: %x\n" "Modify: %y\n" "Change: %z\n";
++                    "  File: %N\n"
++                    "  Size: %-10s\tBlocks: %-10b IO Block: %-6o %F\n"
++                    "Device: %Dh/%dd\tInode: %-10i  Links: %-5h"
++                    " Device type: %t,%T\n"
++                     "Access: (%04a/%10.10A)  Uid: (%5u/%8U)   Gid: (%5g/%8G)\n"
++                    "   S_Context: %C\n"
++                    "Access: %x\n" "Modify: %y\n" "Change: %z\n";
 +        else 
-+	        format =
-+    		"  File: %N\n"
-+	    	"  Size: %-10s\tBlocks: %-10b IO Block: %-6o %F\n"
-+  	  	"Device: %Dh/%dd\tInode: %-10i  Links: %h\n"
-+  	  	"Access: (%04a/%10.10A)  Uid: (%5u/%8U)   Gid: (%5g/%8G)\n"
-+    		"Access: %x\n" "Modify: %y\n" "Change: %z\n";
- 	    }
- 	}
++                format =
++                    "  File: %N\n"
++                    "  Size: %-10s\tBlocks: %-10b IO Block: %-6o %F\n"
++                    "Device: %Dh/%dd\tInode: %-10i  Links: %h\n"
++                    "Access: (%04a/%10.10A)  Uid: (%5u/%8U)   Gid: (%5g/%8G)\n"
++                    "Access: %x\n" "Modify: %y\n" "Change: %z\n";
+             }
+         }
      }
 @@ -911,6 +940,7 @@ usage (int status)
  Display file or file system status.\n\
@@ -767,34 +767,34 @@ diff -urNp coreutils-7.1-orig/src/stat.c
    bool ok = true;
  
 @@ -1034,13 +1065,13 @@ main (int argc, char *argv[])
- 	  terse = true;
- 	  break;
+           terse = true;
+           break;
  
--	case 'Z':  /* FIXME: remove in 2010 */
--	  /* Ignore, for compatibility with distributions
--	     that implemented this before upstream.
--	     But warn of impending removal.  */
--	  error (0, 0,
--		 _("the --context (-Z) option is obsolete and will be removed\n"
--		   "in a future release"));
-+	case 'Z':
+-        case 'Z':  /* FIXME: remove in 2010 */
+-          /* Ignore, for compatibility with distributions
+-             that implemented this before upstream.
+-             But warn of impending removal.  */
+-          error (0, 0,
+-                 _("the --context (-Z) option is obsolete and will be removed\n"
+-                   "in a future release"));
++        case 'Z':
 +    if((is_selinux_enabled()>0))
-+	    secure = 1;
-+	  else {
-+	    error (0, 0, _("Kernel is not SELinux enabled"));
-+	    usage (EXIT_FAILURE);
-+	  }
- 	  break;
++            secure = 1;
++          else {
++            error (0, 0, _("Kernel is not SELinux enabled"));
++            usage (EXIT_FAILURE);
++          }
+           break;
  
- 	case_GETOPT_HELP_CHAR;
+         case_GETOPT_HELP_CHAR;
 @@ -1060,8 +1091,8 @@ main (int argc, char *argv[])
  
    for (i = optind; i < argc; i++)
      ok &= (fs
--	   ? do_statfs (argv[i], terse, format)
--	   : do_stat (argv[i], terse, format));
-+	   ? do_statfs (argv[i], terse, secure, format)
-+	   : do_stat (argv[i], terse, secure, format));
+-           ? do_statfs (argv[i], terse, format)
+-           : do_stat (argv[i], terse, format));
++           ? do_statfs (argv[i], terse, secure, format)
++           : do_stat (argv[i], terse, secure, format));
  
    exit (ok ? EXIT_SUCCESS : EXIT_FAILURE);
  }

coreutils-setsid.patch:
 su.c |   39 +++++++++++++++++++++++++++++++++++----
 1 file changed, 35 insertions(+), 4 deletions(-)

Index: coreutils-setsid.patch
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils-setsid.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -p -r1.3 -r1.4
--- coreutils-setsid.patch	9 Jan 2007 19:29:30 -0000	1.3
+++ coreutils-setsid.patch	12 Sep 2009 09:28:49 -0000	1.4
@@ -33,24 +33,24 @@
 -        || sigprocmask(SIG_UNBLOCK, &ourset, NULL)) {
 +    if (!same_session)
 +      {
-+	if (sigaddset(&ourset, SIGINT) || sigaddset(&ourset, SIGQUIT))
-+	  {
-+	    fprintf(stderr, "%s: signal masking malfunction\n", PROGRAM_NAME);
-+	    caught = 1;
-+	  }
++        if (sigaddset(&ourset, SIGINT) || sigaddset(&ourset, SIGQUIT))
++          {
++            fprintf(stderr, "%s: signal masking malfunction\n", PROGRAM_NAME);
++            caught = 1;
++          }
 +      }
 +    if (!caught && (sigaddset(&ourset, SIGTERM)
-+		    || sigaddset(&ourset, SIGALRM)
-+		    || sigaction(SIGTERM, &action, NULL)
-+		    || sigprocmask(SIG_UNBLOCK, &ourset, NULL))) {
++                    || sigaddset(&ourset, SIGALRM)
++                    || sigaction(SIGTERM, &action, NULL)
++                    || sigprocmask(SIG_UNBLOCK, &ourset, NULL))) {
        fprintf(stderr, "%s: signal masking malfunction\n", PROGRAM_NAME);
        caught = 1;
      }
 +    if (!caught && !same_session && (sigaction(SIGINT, &action, NULL)
-+				     || sigaction(SIGQUIT, &action, NULL)))
++                                     || sigaction(SIGQUIT, &action, NULL)))
 +      {
-+	fprintf(stderr, "%s: signal masking malfunction\n", PROGRAM_NAME);
-+	caught = 1;
++        fprintf(stderr, "%s: signal masking malfunction\n", PROGRAM_NAME);
++        caught = 1;
 +      }
    }
    if (!caught) {
@@ -73,17 +73,17 @@
    struct passwd *pw;
    struct passwd pw_copy;
 @@ -656,6 +679,11 @@
- 	  command = optarg;
- 	  break;
+           command = optarg;
+           break;
  
-+	case 'C':
-+	  command = optarg;
-+	  request_same_session = 1;
-+	  break;
++        case 'C':
++          command = optarg;
++          request_same_session = 1;
++          break;
 +
- 	case 'f':
- 	  fast_startup = true;
- 	  break;
+         case 'f':
+           fast_startup = true;
+           break;
 @@ -725,6 +753,9 @@
      }
  #endif


Index: coreutils.spec
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/coreutils.spec,v
retrieving revision 1.273
retrieving revision 1.274
diff -u -p -r1.273 -r1.274
--- coreutils.spec	10 Sep 2009 10:36:58 -0000	1.273
+++ coreutils.spec	12 Sep 2009 09:28:49 -0000	1.274
@@ -1,7 +1,7 @@
 Summary: A set of basic GNU tools commonly used in shell scripts
 Name:    coreutils
-Version: 7.5
-Release: 6%{?dist}
+Version: 7.6
+Release: 1%{?dist}
 License: GPLv3+
 Group:   System Environment/Base
 Url:     http://www.gnu.org/software/coreutils/
@@ -18,14 +18,11 @@ Source202:  coreutils-su-l.pamd
 Source203:  coreutils-runuser-l.pamd
 
 # From upstream
-Patch1: coreutils-7.5-kojiutimensatskip.patch
-Patch2: coreutils-7.5-ls-inode.patch
 
 # Our patches
 Patch100: coreutils-6.10-configuration.patch
 Patch101: coreutils-6.10-manpages.patch
 Patch102: coreutils-7.4-sttytcsadrain.patch
-Patch103: coreutils-7.5-df-localdevice.patch
 
 # sh-utils
 Patch703: sh-utils-2.0.11-dateman.patch
@@ -110,14 +107,11 @@ Libraries for coreutils package.
 %setup -q
 
 # From upstream
-%patch1 -p1 -b .kojiutimensat
-%patch2 -p1 -b .inode
 
 # Our patches
 %patch100 -p1 -b .configure
 %patch101 -p1 -b .manpages
 %patch102 -p1 -b .tcsadrain
-%patch103 -p1 -b .localdevice
 
 # sh-utils
 %patch703 -p1 -b .dateman
@@ -333,6 +327,10 @@ fi
 %{_libdir}/coreutils
 
 %changelog
+* Sat Sep 12 2009 Ondrej Vasik <ovasik at redhat.com> - 7.6-1
+- new upstream bugfix release 7.6, removed applied patches,
+  defuzzed the rest
+
 * Thu Sep 10 2009 Ondrej Vasik <ovasik at redhat.com> - 7.5-6
 - fix double free error in fold for singlebyte locales
   (caused by multibyte patch)


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/coreutils/devel/sources,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -p -r1.24 -r1.25
--- sources	21 Aug 2009 07:00:59 -0000	1.24
+++ sources	12 Sep 2009 09:28:49 -0000	1.25
@@ -1 +1 @@
-ca9219c5b7efa533d552f61a3880f458  coreutils-7.5.tar.xz
+a9fb9368e40205d70fc37b9fe441e8ec  coreutils-7.6.tar.xz


--- coreutils-7.5-df-localdevice.patch DELETED ---


--- coreutils-7.5-kojiutimensatskip.patch DELETED ---


--- coreutils-7.5-ls-inode.patch DELETED ---




More information about the fedora-extras-commits mailing list