rpms/util-linux/FC-6 util-linux-2.12a-mount-lockperm.patch, NONE, 1.1 util-linux-2.13-cal-3.patch, NONE, 1.1 util-linux-2.13-hwclock-systohc.patch, NONE, 1.1 util-linux-2.13-localedir.patch, NONE, 1.1 util-linux-2.13-mkdir_p.patch, 1.2, 1.3 util-linux-2.13-sfdisk-geo.patch, NONE, 1.1 util-linux-login.pamd, 1.1, 1.2 util-linux-remote.pamd, 1.1, 1.2 util-linux.spec, 1.153, 1.154

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Thu Aug 2 10:29:54 UTC 2007


Author: kzak

Update of /cvs/dist/rpms/util-linux/FC-6
In directory cvs.devel.redhat.com:/tmp/cvs-serv28842

Modified Files:
	util-linux-login.pamd util-linux-remote.pamd util-linux.spec 
Added Files:
	util-linux-2.12a-mount-lockperm.patch 
	util-linux-2.13-cal-3.patch 
	util-linux-2.13-hwclock-systohc.patch 
	util-linux-2.13-localedir.patch util-linux-2.13-mkdir_p.patch 
	util-linux-2.13-sfdisk-geo.patch 
Log Message:
* Thu Aug  2 2007 Karel Zak <kzak at redhat.com>  2.13-0.47
- fix #236848 - mount/fstab.c:lock_mtab() should open with proper permissions
- fix #213253 - "cal -3" generates improperly formatted output
- fix #150493 - hwclock --systohc sets clock 0.5 seconds slow
- fix #243930 - translation files exist, but are not being used
- fix #228731 - sfdisk doesn't support DM-MP device (add default heads and sectors)
- fix #217186 - /bin/sh: @MKINSTALLDIRS@: No such file or directory


util-linux-2.12a-mount-lockperm.patch:
 fstab.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

--- NEW FILE util-linux-2.12a-mount-lockperm.patch ---

From: Flávio Leitner <fleitner at redhat.com>
Subject: mount should set proper permissions on locktime

When creating the "/etc/mtab~" lockfile (specifically 'linktargetfile'  in the
lock_mtab function), the file is created with incorrect permissions ('000')
which necessitates root to leverage CAP_DAC_OVERRIDE. If proper file modes (it
would appear 0600 would be sufficient) were used in the open this would
function properly with CAP_DAC_OVERRIDE revoked.

--- util-linux-2.12a/mount/fstab.c.kzak	2007-07-31 12:13:26.000000000 +0200
+++ util-linux-2.12a/mount/fstab.c	2007-07-31 12:13:11.000000000 +0200
@@ -433,7 +433,7 @@
 	linktargetfile = xmalloc(strlen(MOUNTLOCK_LINKTARGET) + 20);
 	sprintf(linktargetfile, MOUNTLOCK_LINKTARGET, getpid ());
 
-	i = open (linktargetfile, O_WRONLY|O_CREAT, 0);
+	i = open (linktargetfile, O_WRONLY|O_CREAT, S_IRUSR|S_IWUSR);
 	if (i < 0) {
 		int errsv = errno;
 		/* linktargetfile does not exist (as a file)

util-linux-2.13-cal-3.patch:
 configure.ac     |    1 +
 misc-utils/cal.c |   47 ++++++++++++++++++++++++++++++++++++++---------
 2 files changed, 39 insertions(+), 9 deletions(-)

--- NEW FILE util-linux-2.13-cal-3.patch ---
--- util-linux-2.13-pre7/misc-utils/cal.c.kzak	2007-07-09 14:54:39.000000000 +0200
+++ util-linux-2.13-pre7/misc-utils/cal.c	2007-07-09 14:54:39.000000000 +0200
@@ -87,9 +87,13 @@
      putp(s);
 }
 
-static char *
+static const char *
 my_tgetstr(char *s, char *ss) {
-     return tigetstr(ss);
+    const char* ret = tigetstr(ss);
+    if (!ret || ret==(char*)-1)
+        return "";
+    else
+        return ret;
 }
 
 #elif defined(HAVE_LIBTERMCAP)
@@ -110,14 +114,20 @@
      tputs (s, 1, putchar);
 }
 
-static char *
+static const char *
 my_tgetstr(char *s, char *ss) {
-     return tgetstr(s, &strbuf);
+    const char* ret = tgetstr(s, &strbuf);
+    if (!ret)
+        return "";
+    else
+        return ret;
 }
 
 #endif
 const char	*term="";
 const char	*Senter="", *Sexit="";/* enter and exit standout mode */
+int		Slen;		/* strlen of Senter+Sexit */
+char		*Hrow;		/* pointer to highlighted row in month */
 
 #ifdef HAVE_LANGINFO_H
 # include <langinfo.h>
@@ -262,6 +272,7 @@
 		if (ret > 0) {
 			Senter = my_tgetstr("so","smso");
 			Sexit = my_tgetstr("se","rmso");
+			Slen = strlen(Senter) + strlen(Sexit);
 		}
 	}
 #endif
@@ -437,11 +448,18 @@
 	sprintf(out->s[1],"%s",
 		julian ? j_day_headings : day_headings);
 	for (row = 0; row < 6; row++) {
-		for (col = 0, p = lineout; col < 7; col++)
-			p = ascii_day(p, days[row * 7 + col]);
+		int has_hl = 0;
+		for (col = 0, p = lineout; col < 7; col++) {
+			int xd = days[row * 7 + col];
+			if (xd != SPACE && (xd & TODAY_FLAG))
+				has_hl = 1;
+			p = ascii_day(p, xd);
+		}
 		*p = '\0';
 		trim_trailing_spaces(lineout);
 		sprintf(out->s[row+2], "%s", lineout);
+		if (has_hl)
+			Hrow = out->s[row+2];
 	}
 }
 
@@ -489,14 +507,25 @@
 	do_monthly(day, prev_month, prev_year, &out_prev);
 	do_monthly(day, month,      year,      &out_curm);
 	do_monthly(day, next_month, next_year, &out_next);
+
         width = (julian ? J_WEEK_LEN : WEEK_LEN) -1;
 	for (i = 0; i < 2; i++)
 		printf("%s  %s  %s\n", out_prev.s[i], out_curm.s[i], out_next.s[i]);
 	for (i = 2; i < FMT_ST_LINES; i++) {
+		int w1, w2, w3;
+		w1 = w2 = w3 = width;
+
+#if defined(HAVE_NCURSES) || defined(HAVE_LIBTERMCAP)
+                /* adjust width to allow for non printable characters */
+                w1 += (out_prev.s[i] == Hrow ? Slen : 0);
+                w2 += (out_curm.s[i] == Hrow ? Slen : 0);
+                w3 += (out_next.s[i] == Hrow ? Slen : 0);
+#endif
 		snprintf(lineout, SIZE(lineout), "%-*s  %-*s  %-*s\n",
-		       width, out_prev.s[i],
-		       width, out_curm.s[i],
-		       width, out_next.s[i]);
+		       w1, out_prev.s[i],
+		       w2, out_curm.s[i],
+		       w3, out_next.s[i]);
+
 #if defined(HAVE_NCURSES) || defined(HAVE_LIBTERMCAP)
 		my_putstring(lineout);
 #else
--- util-linux-2.13-pre7/configure.ac.kzak	2007-07-09 14:54:48.000000000 +0200
+++ util-linux-2.13-pre7/configure.ac	2007-07-09 14:55:11.000000000 +0200
@@ -71,6 +71,7 @@
 if test x$ac_cv_header_ncurses_h = xyes || test x$ac_cv_header_ncurses_ncurses_h = xyes; then
   have_ncurses=yes
   AC_MSG_NOTICE([you have ncurses])
+  AC_DEFINE(HAVE_NCURSES, 1, [Do we have -lncurses?])
 else
   AC_MSG_NOTICE([you do not have ncurses])
 fi

util-linux-2.13-hwclock-systohc.patch:
 hwclock.c |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

--- NEW FILE util-linux-2.13-hwclock-systohc.patch ---
commit 99c392d8ba163e35b9d562dd4bcf7dd476ad3573
Author: Karel Zak <kzak at redhat.com>
Date:   Tue Mar 20 00:32:37 2007 +0100

    hwclock: fix --systohc sets clock 0.5 seconds slow
    
    quote from rh150493:
    
    	The kernel code, when setting the BIOS clock notes that the clock time
    	ticks to the next second 0.5 seconds after adjusting it  (see
    	linux/arch/i386/kernel/time.c).
    
    	hwclock --systohc sets the CMOS clock at the 1 second boundry and thus
    	causes the clock to be wrong by 500ms each time it is reset.  If the
    	clock is set every shutdown then the clock will have a reboot-count
    	related drift as well as the natural drift problems of the clock. Note
    	that this also mucks up the drift calculations, of course.
    
    Signed-off-by: Karel Zak <kzak at redhat.com>

diff --git a/hwclock/hwclock.c b/hwclock/hwclock.c
index 9731dad..820c388 100644
--- a/hwclock/hwclock.c
+++ b/hwclock/hwclock.c
@@ -517,14 +517,19 @@ set_hardware_clock_exact(const time_t sethwtime,
            "Delaying further to reach the next full second.\n"),
            time_diff(beginsystime, refsystime));
   
-  /* Now delay some more until Hardware Clock time newhwtime arrives */
+  /*
+   * Now delay some more until Hardware Clock time newhwtime arrives.  The -500
+   * ms is because the Hardware Clock always sets to your set time plus 500 ms
+   * (because it is designed to update to the next second precisely 500 ms
+   * after you finish the setting).
+   */
   do {
 	  float tdiff;
 	  gettimeofday(&nowsystime, NULL);
 	  tdiff = time_diff(nowsystime, beginsystime);
 	  if (tdiff < 0)
 		  goto time_resync;	/* probably time was reset */
-  } while (time_diff(nowsystime, refsystime) < newhwtime - sethwtime);
+  } while (time_diff(nowsystime, refsystime) - 0.5 < newhwtime - sethwtime);
   
   set_hardware_clock(newhwtime, universal, testing);
 }

util-linux-2.13-localedir.patch:
 include-Makefile.am |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

--- NEW FILE util-linux-2.13-localedir.patch ---
--- util-linux-2.13-pre7/config/include-Makefile.am.kzak	2007-06-25 11:15:40.000000000 +0200
+++ util-linux-2.13-pre7/config/include-Makefile.am	2007-06-25 11:16:39.000000000 +0200
@@ -3,10 +3,10 @@
 datadir = $(prefix)/usr/share
 infodir = $(datadir)/info
 mandir = $(datadir)/man
+localedir = $(datadir)/locale
 
-AM_CPPFLAGS = -include $(top_builddir)/config.h -I$(top_srcdir)/include
+AM_CPPFLAGS = -include $(top_builddir)/config.h -I$(top_srcdir)/include \
+       -DLOCALEDIR=\"$(localedir)\"
 
 DEFAULT_INCLUDES =
 
-DEFS = -DLOCALEDIR=\"$(localedir)\" @DEFS@
-

util-linux-2.13-mkdir_p.patch:
 Makefile.in.in |   33 +++++++++++++++++++++------------
 1 files changed, 21 insertions(+), 12 deletions(-)

Index: util-linux-2.13-mkdir_p.patch
===================================================================
RCS file: util-linux-2.13-mkdir_p.patch
diff -N util-linux-2.13-mkdir_p.patch
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ util-linux-2.13-mkdir_p.patch	2 Aug 2007 10:29:52 -0000	1.3
@@ -0,0 +1,97 @@
+--- util-linux-2.13-pre7/po/Makefile.in.in.mkdir_p	2005-10-14 22:22:14.000000000 +0200
++++ util-linux-2.13-pre7/po/Makefile.in.in	2006-12-17 00:06:29.000000000 +0100
+@@ -1,5 +1,5 @@
+ # Makefile for PO directory in any package using GNU gettext.
+-# Copyright (C) 1995-1997, 2000-2005 by Ulrich Drepper <drepper at gnu.ai.mit.edu>
++# Copyright (C) 1995-1997, 2000-2006 by Ulrich Drepper <drepper at gnu.ai.mit.edu>
+ #
+ # This file can be copied and used freely without restrictions.  It can
+ # be used in projects which are not available under the GNU General Public
+@@ -8,7 +8,7 @@
+ # Please note that the actual code of GNU gettext is covered by the GNU
+ # General Public License and is *not* in the public domain.
+ #
+-# Origin: gettext-0.14.4
++# Origin: gettext-0.16
+ 
+ PACKAGE = @PACKAGE@
+ VERSION = @VERSION@
+@@ -29,8 +29,18 @@
+ 
+ INSTALL = @INSTALL@
+ INSTALL_DATA = @INSTALL_DATA@
+-MKINSTALLDIRS = @MKINSTALLDIRS@
+-mkinstalldirs = $(SHELL) $(MKINSTALLDIRS)
++
++# We use $(mkdir_p).
++# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as
++# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions,
++# @install_sh@ does not start with $(SHELL), so we add it.
++# In automake >= 1.10, @mkdir_p@ is derived from ${MKDIR_P}, which is defined
++# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake
++# versions, $(mkinstalldirs) and $(install_sh) are unused.
++mkinstalldirs = $(SHELL) @install_sh@ -d
++install_sh = $(SHELL) @install_sh@
++MKDIR_P = @MKDIR_P@
++mkdir_p = @mkdir_p@
+ 
+ GMSGFMT = @GMSGFMT@
+ MSGFMT = @MSGFMT@
+@@ -158,7 +168,7 @@
+ install-exec:
+ install-data: install-data- at USE_NLS@
+ 	if test "$(PACKAGE)" = "gettext-tools"; then \
+-	  $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
++	  $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \
+ 	  for file in $(DISTFILES.common) Makevars.template; do \
+ 	    $(INSTALL_DATA) $(srcdir)/$$file \
+ 			    $(DESTDIR)$(gettextsrcdir)/$$file; \
+@@ -171,13 +181,13 @@
+ 	fi
+ install-data-no: all
+ install-data-yes: all
+-	$(mkinstalldirs) $(DESTDIR)$(datadir)
++	$(mkdir_p) $(DESTDIR)$(datadir)
+ 	@catalogs='$(CATALOGS)'; \
+ 	for cat in $$catalogs; do \
+ 	  cat=`basename $$cat`; \
+ 	  lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
+ 	  dir=$(localedir)/$$lang/LC_MESSAGES; \
+-	  $(mkinstalldirs) $(DESTDIR)$$dir; \
++	  $(mkdir_p) $(DESTDIR)$$dir; \
+ 	  if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \
+ 	  $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \
+ 	  echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \
+@@ -217,19 +227,19 @@
+ installdirs-exec:
+ installdirs-data: installdirs-data- at USE_NLS@
+ 	if test "$(PACKAGE)" = "gettext-tools"; then \
+-	  $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
++	  $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \
+ 	else \
+ 	  : ; \
+ 	fi
+ installdirs-data-no:
+ installdirs-data-yes:
+-	$(mkinstalldirs) $(DESTDIR)$(datadir)
++	$(mkdir_p) $(DESTDIR)$(datadir)
+ 	@catalogs='$(CATALOGS)'; \
+ 	for cat in $$catalogs; do \
+ 	  cat=`basename $$cat`; \
+ 	  lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
+ 	  dir=$(localedir)/$$lang/LC_MESSAGES; \
+-	  $(mkinstalldirs) $(DESTDIR)$$dir; \
++	  $(mkdir_p) $(DESTDIR)$$dir; \
+ 	  for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \
+ 	    if test -n "$$lc"; then \
+ 	      if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \
+@@ -374,8 +384,7 @@
+ 
+ Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEPS@
+ 	cd $(top_builddir) \
+-	  && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
+-	       $(SHELL) ./config.status
++	  && $(SHELL) ./config.status $(subdir)/$@.in po-directories
+ 
+ force:
+ 

util-linux-2.13-sfdisk-geo.patch:
 sfdisk.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

--- NEW FILE util-linux-2.13-sfdisk-geo.patch ---
--- util-linux-2.13-pre7/fdisk/sfdisk.c.kzak	2007-06-25 09:13:31.000000000 +0200
+++ util-linux-2.13-pre7/fdisk/sfdisk.c	2007-06-25 09:12:42.000000000 +0200
@@ -469,8 +469,8 @@
 
     R = get_geometry(dev, fd, silent);
 
-    B.heads = (U.heads ? U.heads : R.heads);
-    B.sectors = (U.sectors ? U.sectors : R.sectors);
+    B.heads = (U.heads ? U.heads : (R.heads ? R.heads : 255));
+    B.sectors = (U.sectors ? U.sectors : (R.sectors ? R.sectors : 63));
     B.cylinders = (U.cylinders ? U.cylinders : R.cylinders);
 
     B.cylindersize = B.heads * B.sectors;


Index: util-linux-login.pamd
===================================================================
RCS file: /cvs/dist/rpms/util-linux/FC-6/util-linux-login.pamd,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- util-linux-login.pamd	21 Aug 2006 16:24:02 -0000	1.1
+++ util-linux-login.pamd	2 Aug 2007 10:29:52 -0000	1.2
@@ -6,9 +6,9 @@
 password   include      system-auth
 # pam_selinux.so close should be the first session rule
 session    required     pam_selinux.so close
+session    optional     pam_keyinit.so force revoke
 session    include      system-auth
 session    required     pam_loginuid.so
 session    optional     pam_console.so
 # pam_selinux.so open should only be followed by sessions to be executed in the user context
 session    required     pam_selinux.so open
-session    optional     pam_keyinit.so force revoke


Index: util-linux-remote.pamd
===================================================================
RCS file: /cvs/dist/rpms/util-linux/FC-6/util-linux-remote.pamd,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- util-linux-remote.pamd	21 Aug 2006 16:24:02 -0000	1.1
+++ util-linux-remote.pamd	2 Aug 2007 10:29:52 -0000	1.2
@@ -6,9 +6,9 @@
 password   include      system-auth
 # pam_selinux.so close should be the first session rule
 session    required     pam_selinux.so close
+session    optional     pam_keyinit.so force revoke
 session    include      system-auth
 session    required     pam_loginuid.so
 session    optional     pam_console.so
 # pam_selinux.so open should only be followed by sessions to be executed in the user context
 session    required     pam_selinux.so open
-session    optional     pam_keyinit.so force revoke


Index: util-linux.spec
===================================================================
RCS file: /cvs/dist/rpms/util-linux/FC-6/util-linux.spec,v
retrieving revision 1.153
retrieving revision 1.154
diff -u -r1.153 -r1.154
--- util-linux.spec	9 Feb 2007 12:39:35 -0000	1.153
+++ util-linux.spec	2 Aug 2007 10:29:52 -0000	1.154
@@ -9,7 +9,7 @@
 Summary: A collection of basic system utilities.
 Name: util-linux
 Version: 2.13
-Release: 0.46%{?dist}
+Release: 0.47%{?dist}
 License: distributable
 Group: System Environment/Base
 
@@ -222,10 +222,18 @@
 Patch260: util-linux-2.13-partx-man.patch
 # 227903 - mount -f does not work with NFS-mounted file system
 Patch261: util-linux-2.13-mount-fake.patch
-
-# When adding patches, please make sure that it is easy to find out what bug # the 
-# patch fixes.
-########### END upstreamable
+# 236848 - mount/fstab.c:lock_mtab() should open with proper permissions
+Patch262: util-linux-2.12a-mount-lockperm.patch
+# 213253 - "cal -3" generates improperly formatted output
+Patch263: util-linux-2.13-cal-3.patch
+# 150493 - hwclock --systohc sets clock 0.5 seconds slow
+Patch264: util-linux-2.13-hwclock-systohc.patch
+# 243930 - translation files exist, but are not being used
+Patch265: util-linux-2.13-localedir.patch
+# 228731 - sfdisk doesn't support DM-MP device (add default heads and sectors)
+Patch266: util-linux-2.13-sfdisk-geo.patch
+# 217186 - /bin/sh: @MKINSTALLDIRS@: No such file or directory
+Patch267: util-linux-2.13-mkdir_p.patch
 
 %description
 The util-linux package contains a large variety of low-level system
@@ -316,6 +324,12 @@
 %patch259 -p1
 %patch260 -p1
 %patch261 -p1
+%patch262 -p1
+%patch263 -p1
+%patch264 -p1
+%patch265 -p1
+%patch266 -p1
+%patch267 -p1
 
 %build
 unset LINGUAS || :
@@ -707,6 +721,14 @@
 /sbin/losetup
 
 %changelog
+* Thu Aug  2 2007 Karel Zak <kzak at redhat.com>  2.13-0.47
+- fix #236848 - mount/fstab.c:lock_mtab() should open with proper permissions
+- fix #213253 - "cal -3" generates improperly formatted output
+- fix #150493 - hwclock --systohc sets clock 0.5 seconds slow
+- fix #243930 - translation files exist, but are not being used
+- fix #228731 - sfdisk doesn't support DM-MP device (add default heads and sectors)
+- fix #217186 - /bin/sh: @MKINSTALLDIRS@: No such file or directory
+
 * Fri Feb  9 2007 Karel Zak <kzak at redhat.com>  2.13-0.46
 - fix #227903 - mount -f does not work with NFS-mounted file system
 




More information about the fedora-cvs-commits mailing list