diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index a9b8f24..0000000 --- a/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -floppy-0.16.tar.bz2 -util-linux-ng-2.13-20071004git.tar.bz2 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6837dd2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +floppy-0.16.tar.bz2 +util-linux-ng-2.13.1.tar.bz2 diff --git a/Makefile b/Makefile deleted file mode 100644 index c0f296d..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: util-linux-ng -# $Id$ -NAME := util-linux-ng -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/sources b/sources index 9056518..6e1d8d9 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 7eeb9a6f7a258174bf0fa80f1370788d floppy-0.16.tar.bz2 -1fefa573d23d2e365592d00d1f9bd3a6 util-linux-ng-2.13-20071004git.tar.bz2 +424badc1832e4b5291a2ec04e9e244f4 util-linux-ng-2.13.1.tar.bz2 diff --git a/util-linux-ng-2.13-ionice-man-idle.patch b/util-linux-ng-2.13-ionice-man-idle.patch new file mode 100644 index 0000000..81b0537 --- /dev/null +++ b/util-linux-ng-2.13-ionice-man-idle.patch @@ -0,0 +1,33 @@ +From 776452cbfcfc2dfe81088e29ae13a681bee64e75 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Mon, 28 Apr 2008 12:23:40 +0200 +Subject: [PATCH] ionice: update man page to reflect IDLE class change in 2.6.25 + +The idle class is safe for non-root users since 2.6.25. +http://lwn.net/Articles/266256/ + +Addresses-Red-Hat-Bugzilla: #443823 +Signed-off-by: Karel Zak +--- + schedutils/ionice.1 | 5 +++-- + 1 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/schedutils/ionice.1 b/schedutils/ionice.1 +index 8203a5e..93aabe8 100644 +--- a/schedutils/ionice.1 ++++ b/schedutils/ionice.1 +@@ -13,8 +13,9 @@ this writing, Linux supports 3 scheduling classes: + A program running with idle io priority will only get disk time when no other + program has asked for disk io for a defined grace period. The impact of idle + io processes on normal system activity should be zero. This scheduling +-class does not take a priority argument. This scheduling class is not +-permitted for an ordinary (i.e., non-root) user. ++class does not take a priority argument. Presently, this scheduling class ++is permitted for an ordinary user (since kernel 2.6.25). ++ + + \fBBest effort\fR. + This is the default scheduling class for any process that hasn't asked for +-- +1.5.4.1 + diff --git a/util-linux-ng-2.13-login-audit.patch b/util-linux-ng-2.13-login-audit.patch new file mode 100644 index 0000000..d564577 --- /dev/null +++ b/util-linux-ng-2.13-login-audit.patch @@ -0,0 +1,51 @@ +From 8ccf0b253ac0f4f58d64bc9674de18bff5a88782 Mon Sep 17 00:00:00 2001 +From: Steve Grubb +Date: Sat, 19 Apr 2008 11:49:02 -0400 +Subject: [PATCH] login: audit log injection attack via login + +A while back I found a couple audit log injection attacks which became +CVE-2007-3102. I forgot to look at login to see if its vulnerable and Mirek +found that it is. To verify the problem, type: + +root addr=xyz.com + +for the account name while logging in. It will look like root logged in with +an address of xyz.com. + +Signed-off-by: Steve Grubb +--- + login-utils/login.c | 10 +++------- + 1 files changed, 3 insertions(+), 7 deletions(-) + +diff --git a/login-utils/login.c b/login-utils/login.c +index aad2779..2301213 100644 +--- a/login-utils/login.c ++++ b/login-utils/login.c +@@ -324,7 +324,6 @@ static void + logaudit(const char *tty, const char *username, const char *hostname, + struct passwd *pwd, int status) + { +- char buf[64]; + int audit_fd; + + audit_fd = audit_open(); +@@ -332,13 +331,10 @@ logaudit(const char *tty, const char *username, const char *hostname, + return; + if (!pwd && username) + pwd = getpwnam(username); +- if (pwd) +- snprintf(buf, sizeof(buf), "uid=%d", pwd->pw_uid); +- else +- snprintf(buf, sizeof(buf), "acct=%s", username ? username : "(unknown)"); + +- audit_log_user_message(audit_fd, AUDIT_USER_LOGIN, +- buf, hostname, NULL, tty, status); ++ audit_log_acct_message(audit_fd, AUDIT_USER_LOGIN, ++ NULL, "login", username ? username : "(unknown)", ++ pwd ? pwd->pw_uid : -1, hostname, NULL, tty, status); + + close(audit_fd); + } +-- +1.5.4.1 + diff --git a/util-linux-ng-2.13-script-SIGWINCH.patch b/util-linux-ng-2.13-script-SIGWINCH.patch deleted file mode 100644 index 03e0412..0000000 --- a/util-linux-ng-2.13-script-SIGWINCH.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 1b1ff2d6edd2db321926f7243004937cb26f9f15 Mon Sep 17 00:00:00 2001 -From: Karel Zak -Date: Fri, 5 Oct 2007 12:22:13 +0200 -Subject: [PATCH] script: dies on SIGWINCH - -The "doinput" process doesn't make a difference between SIGWINCH and -SIGCHILD. This process also sends unnecessary SIGWINCH to child (the -signal is ignored by child). Fixed. - -Signed-off-by: Karel Zak ---- - misc-utils/script.c | 14 ++++++++++---- - 1 files changed, 10 insertions(+), 4 deletions(-) - -diff --git a/misc-utils/script.c b/misc-utils/script.c -index d3272df..3b957d8 100644 ---- a/misc-utils/script.c -+++ b/misc-utils/script.c -@@ -99,6 +99,7 @@ int tflg = 0; - static char *progname; - - int die; -+int resized; - - static void - die_if_link(char *fn) { -@@ -235,8 +236,14 @@ doinput() { - if (die == 0 && child && kill(child, 0) == -1 && errno == ESRCH) - die = 1; - -- while (die == 0 && (cc = read(0, ibuf, BUFSIZ)) > 0) -- (void) write(master, ibuf, cc); -+ while (die == 0) { -+ if ((cc = read(0, ibuf, BUFSIZ)) > 0) -+ (void) write(master, ibuf, cc); -+ else if (cc == -1 && errno == EINTR && resized) -+ resized = 0; -+ else -+ break; -+ } - - done(); - } -@@ -255,11 +262,10 @@ finish(int dummy) { - - void - resize(int dummy) { -+ resized = 1; - /* transmit window change information to the child */ - (void) ioctl(0, TIOCGWINSZ, (char *)&win); - (void) ioctl(slave, TIOCSWINSZ, (char *)&win); -- -- kill(child, SIGWINCH); - } - - /* --- -1.5.3.1 - diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 385bd7f..637153c 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -1,7 +1,7 @@ ### Header Summary: A collection of basic system utilities Name: util-linux-ng -Version: 2.13 +Version: 2.13.1 Release: 3%{?dist} License: GPLv2 and GPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base @@ -36,8 +36,7 @@ BuildRequires: zlib-devel BuildRequires: popt-devel ### Sources -#Source0: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.13/util-linux-ng-2.13.tar.bz2 -Source0: util-linux-ng-2.13-20071004git.tar.bz2 +Source0: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.13/util-linux-ng-2.13.1.tar.bz2 Source1: util-linux-ng-login.pamd Source2: util-linux-ng-remote.pamd Source3: util-linux-ng-chsh-chfn.pamd @@ -97,7 +96,7 @@ Patch7: util-linux-ng-2.13-fdisk-b-4096.patch # 231192 - ipcs is not printing correct values on pLinux Patch8: util-linux-ng-2.13-ipcs-32bit.patch # 174111 - mount allows loopback devices to be mounted more than once to the -# same mount point (move to upstream?) +# same mount point Patch9: util-linux-ng-2.13-mount-twiceloop.patch # 165863 - swsusp swaps should be reinitialized Patch10: util-linux-ng-2.13-swapon-swsuspend.patch @@ -105,12 +104,10 @@ Patch10: util-linux-ng-2.13-swapon-swsuspend.patch Patch11: util-linux-ng-2.13-floppy-locale.patch # remove partitions Patch12: util-linux-ng-2.13-blockdev-rmpart.patch - -# mount -L | -U segfault (upstream patch) -Patch13: util-linux-ng-2.13-mount-LU.patch -# script die on SIGWINCH (upstream patch) -Patch14: util-linux-ng-2.13-script-SIGWINCH.patch - +# CVE-2007-3102 +Patch13: util-linux-ng-2.13-login-audit.patch +# 443823 - ionice.1 doesn't to reflect idle class changes in 2.6.25 +Patch14: util-linux-ng-2.13-ionice-man-idle.patch %description The util-linux-ng package contains a large variety of low-level system @@ -251,7 +248,7 @@ rm -f $RPM_BUILD_ROOT/usr/{bin,sbin}/{fdformat,tunelp,floppy} $RPM_BUILD_ROOT%{_ %endif # deprecated commands -for I in /sbin/fsck.minix /sbin/mkfs.{bfs,minix} /sbin/sln \ +for I in /sbin/fsck.minix /sbin/mkfs.{bfs,minix} /sbin/sln /usr/bin/floppygtk \ /usr/bin/chkdupexe %{_bindir}/line %{_bindir}/pg %{_bindir}/newgrp \ /sbin/shutdown %{_bindir}/scriptreplay; do rm -f $RPM_BUILD_ROOT$I @@ -321,7 +318,7 @@ find $RPM_BUILD_ROOT%{_mandir}/man8 -regextype posix-egrep \ [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT} %post -/sbin/install-info %{_infodir}/ipc.info* %{_infodir}/dir +/sbin/install-info %{_infodir}/ipc.info %{_infodir}/dir # only for minimal buildroots without /var/log [ -d /var/log ] || /bin/mkdir -p /var/log /bin/touch /var/log/lastlog @@ -341,7 +338,7 @@ fi %preun if [ "$1" = 0 ]; then - /sbin/install-info --del %{_infodir}/ipc.info* %{_infodir}/dir + /sbin/install-info --del %{_infodir}/ipc.info %{_infodir}/dir fi exit 0 @@ -533,6 +530,25 @@ exit 0 /sbin/losetup %changelog +* Mon Apr 28 2008 Karel Zak 2.13.1-3 +- fix #443823 - ionice.1 doesn't to reflect idle class changes in 2.6.25 + +* Tue Apr 22 2008 Karel Zak 2.13.1-2 +- fix audit log injection attack via login + +* Wed Jan 16 2008 Karel Zak 2.13.1-1 +- upgrade to stable util-linux-ng 2.13.1 +- fix #427874 - util-linux-ng gets "excess command line argument" on update + +* Thu Jan 3 2008 Karel Zak 2.13-3.2 +- fix #427207 - util-linux-ng-2.13-3.1.fc8.src.rpm not rebuilded + +* Wed Dec 5 2007 Karel Zak 2.13-3.1 +- fix #409551 - hwclock: check for ENODEV (upstream patch) +- fix #408391 - setarch: add missing alpha subarchs (upstream patch) +- mkswap: possible to crash with SELinux relabeling support (upstream patch) +- mount: don't call canonicalize(SPEC) for cifs, smbfs and nfs (upstream patch) + * Tue Oct 16 2007 Karel Zak 2.13-3 - fix mount -L | -U segfault - fix script die on SIGWINCH