From 83a7109b703fb01f806214f9d232d2474a9a0fbd Mon Sep 17 00:00:00 2001 From: kzak Date: Tue, 20 Jul 2010 08:38:50 +0000 Subject: [PATCH 01/15] - fix #615719 - tmpfs mount fails with 'user' option. - fix #598631 - shutdown, reboot, halt and C-A-D don't work --- mount.tmpfs | 18 ++++++++++++++++ util-linux-ng-2.17-agetty-clocal.patch | 30 ++++++++++++++++++++++++++ util-linux-ng.spec | 12 ++++++++++- 3 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 util-linux-ng-2.17-agetty-clocal.patch diff --git a/mount.tmpfs b/mount.tmpfs index c0862eb..4fc7e60 100644 --- a/mount.tmpfs +++ b/mount.tmpfs @@ -18,6 +18,24 @@ case $1 in ;; esac +restricted=1 +ruid=$(id --user --real) +euid=$(id --user) + +if [ $ruid -eq 0 ] && [ $ruid -eq $euid ]; then + restricted=0 +fi + +# mount(8) in restricted mode (for non-root users) does not allow to use any +# mount options, types or so on command line. We have to call mount(8) with +# mountpoint only. All necessary options have to be defined in /etc/fstab. +# +# https://bugzilla.redhat.com/show_bug.cgi?id=615719 +# +if [ $restricted -eq 1 ]; then + exec /bin/mount -i "$2" +fi + # Remount with context mount options is unsupported # http://bugzilla.redhat.com/show_bug.cgi?id=563267 # diff --git a/util-linux-ng-2.17-agetty-clocal.patch b/util-linux-ng-2.17-agetty-clocal.patch new file mode 100644 index 0000000..9429a23 --- /dev/null +++ b/util-linux-ng-2.17-agetty-clocal.patch @@ -0,0 +1,30 @@ +From 9fcaa8826c180273829cf03e5fe34e08daef721f Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Mon, 12 Jul 2010 11:57:55 +0200 +Subject: [PATCH] aggety: don't wipe CLOCAL flag + +gettey should not clear the flag. It seems that the flag is +automatically enabled for serial consoles tht don't use CD signal. + +Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=598631 +Signed-off-by: Karel Zak +--- + login-utils/agetty.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/login-utils/agetty.c b/login-utils/agetty.c +index 39a1fd3..0cb00db 100644 +--- a/login-utils/agetty.c ++++ b/login-utils/agetty.c +@@ -706,7 +706,7 @@ termio_init(tp, speed, op) + /* flush input and output queues, important for modems! */ + (void) tcflush(0, TCIOFLUSH); + +- tp->c_cflag = CS8 | HUPCL | CREAD; ++ tp->c_cflag = CS8 | HUPCL | CREAD | (tp->c_cflag & CLOCAL); + cfsetispeed(tp, speed); + cfsetospeed(tp, speed); + if (op->flags & F_LOCAL) { +-- +1.6.6.1 + diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 186d248..ed242b1 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -107,6 +107,11 @@ Patch7: util-linux-ng-2.13-login-lastlog.patch # 231192 - ipcs is not printing correct values on pLinux Patch8: util-linux-ng-2.15-ipcs-32bit.patch +### Upstream Patches +### +# 598631 - shutdown, reboot, halt and C-A-D don't work +Patch9: util-linux-ng-2.17-agetty-clocal.patch + %description The util-linux-ng package contains a large variety of low-level system utilities that are necessary for a Linux system to function. Among @@ -220,6 +225,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch5 -p1 %patch7 -p1 %patch8 -p1 +%patch9 -p1 %build unset LINGUAS || : @@ -756,6 +762,10 @@ fi %changelog +* Mon Aug 2 2010 Karel Zak 2.18-2 +- fix #615719 - tmpfs mount fails with 'user' option. +- fix #598631 - shutdown, reboot, halt and C-A-D don't work + * Wed Jun 30 2010 Karel Zak 2.18-1 - upgrade to the final 2.18 ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-ReleaseNotes From 49e94c6245e06cba32e463012536d76d33fcb859 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 2 Aug 2010 10:52:05 +0200 Subject: [PATCH 02/15] - fix #618957 - ISO images listed in fstab are mounted twice at boot Signed-off-by: Karel Zak --- util-linux-ng-2.17-mount-loopdev.patch | 83 ++++++++++++++++++++++++++ util-linux-ng.spec | 4 ++ 2 files changed, 87 insertions(+) create mode 100644 util-linux-ng-2.17-mount-loopdev.patch diff --git a/util-linux-ng-2.17-mount-loopdev.patch b/util-linux-ng-2.17-mount-loopdev.patch new file mode 100644 index 0000000..e898b3e --- /dev/null +++ b/util-linux-ng-2.17-mount-loopdev.patch @@ -0,0 +1,83 @@ +diff -up util-linux-ng-2.17.2/mount/mount.c.kzak util-linux-ng-2.17.2/mount/mount.c +--- util-linux-ng-2.17.2/mount/mount.c.kzak 2010-03-22 09:10:56.000000000 +0100 ++++ util-linux-ng-2.17.2/mount/mount.c 2010-07-29 16:15:28.000000000 +0200 +@@ -1090,7 +1090,8 @@ loop_check(const char **spec, const char + if (verbose) + printf(_("mount: skipping the setup of a loop device\n")); + } else { +- int loop_opts = SETLOOP_AUTOCLEAR; /* always attempt autoclear */ ++ /* use autoclear loopdev on system without regular mtab only */ ++ int loop_opts = mtab_is_writable() ? 0 : SETLOOP_AUTOCLEAR; + int res; + + if (*flags & MS_RDONLY) +@@ -1759,6 +1760,50 @@ mounted (const char *spec0, const char * + return ret; + } + ++/* returns 0 if not mounted, 1 if mounted and -1 in case of error */ ++static int ++is_fstab_entry_mounted(struct mntentchn *mc, int verbose) ++{ ++ struct stat st; ++ ++ if (mounted(mc->m.mnt_fsname, mc->m.mnt_dir)) ++ goto yes; ++ ++ /* extra care for loop devices */ ++ if ((strstr(mc->m.mnt_opts, "loop=") || ++ (stat(mc->m.mnt_fsname, &st) == 0 && S_ISREG(st.st_mode)))) { ++ ++ char *p = strstr(mc->m.mnt_opts, "offset="); ++ uintmax_t offset = 0; ++ ++ if (p && *(p + 7)) { ++ char *end = NULL; ++ ++ p += 7; ++ errno = 0; ++ offset = strtoumax(p, &end, 0); ++ ++ if (end == p || (errno != 0 && ++ (offset == UINTMAX_MAX || offset == 0))) { ++ if (verbose) ++ printf(_("mount: ignore %s " ++ "(unparsable offset= option)\n"), ++ mc->m.mnt_fsname); ++ return -1; ++ } ++ } ++ if (is_mounted_same_loopfile(mc->m.mnt_dir, mc->m.mnt_fsname, offset)) ++ goto yes; ++ } ++ ++ return 0; ++yes: ++ if (verbose) ++ printf(_("mount: %s already mounted on %s\n"), ++ mc->m.mnt_fsname, mc->m.mnt_dir); ++ return 1; ++} ++ + /* avoid using stat() on things we are not going to mount anyway.. */ + static int + has_noauto (const char *opts) { +@@ -1804,16 +1849,8 @@ do_mount_all (char *types, char *options + if (matching_type (mc->m.mnt_type, types) + && matching_opts (mc->m.mnt_opts, test_opts) + && !streq (mc->m.mnt_dir, "/") +- && !streq (mc->m.mnt_dir, "root")) { +- +- if (mounted (mc->m.mnt_fsname, mc->m.mnt_dir)) { +- if (verbose) +- printf(_("mount: %s already mounted " +- "on %s\n"), +- mc->m.mnt_fsname, +- mc->m.mnt_dir); +- continue; +- } ++ && !streq (mc->m.mnt_dir, "root") ++ && !is_fstab_entry_mounted(mc, verbose)) { + + mtmp = (struct mntentchn *) xmalloc(sizeof(*mtmp)); + *mtmp = *mc; diff --git a/util-linux-ng.spec b/util-linux-ng.spec index ed242b1..eb112ea 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -111,6 +111,8 @@ Patch8: util-linux-ng-2.15-ipcs-32bit.patch ### # 598631 - shutdown, reboot, halt and C-A-D don't work Patch9: util-linux-ng-2.17-agetty-clocal.patch +# 618957 - ISO images listed in fstab are mounted twice at boot +Patch10: util-linux-ng-2.17-mount-loopdev.patch %description The util-linux-ng package contains a large variety of low-level system @@ -226,6 +228,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch7 -p1 %patch8 -p1 %patch9 -p1 +%patch10 -p1 %build unset LINGUAS || : @@ -765,6 +768,7 @@ fi * Mon Aug 2 2010 Karel Zak 2.18-2 - fix #615719 - tmpfs mount fails with 'user' option. - fix #598631 - shutdown, reboot, halt and C-A-D don't work +- fix #618957 - ISO images listed in fstab are mounted twice at boot * Wed Jun 30 2010 Karel Zak 2.18-1 - upgrade to the final 2.18 From e05fd6b2806bb14adb72b1a9b66d94bdb2ead5b1 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Wed, 18 Aug 2010 10:16:07 +0200 Subject: [PATCH 03/15] 2.18-4: fix #623685 Signed-off-by: Karel Zak --- .gitignore | 3 + util-linux-ng-2.18-agetty-baudrate.patch | 147 ++++++++++++++++++ ... => util-linux-ng-2.18-agetty-clocal.patch | 14 +- util-linux-ng.spec | 12 +- 4 files changed, 166 insertions(+), 10 deletions(-) create mode 100644 util-linux-ng-2.18-agetty-baudrate.patch rename util-linux-ng-2.17-agetty-clocal.patch => util-linux-ng-2.18-agetty-clocal.patch (76%) diff --git a/.gitignore b/.gitignore index e3f316a..d0444d2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,5 @@ floppy-0.16.tar.bz2 util-linux-ng-2.18.tar.bz2 +*~ +*.rpm +*.log diff --git a/util-linux-ng-2.18-agetty-baudrate.patch b/util-linux-ng-2.18-agetty-baudrate.patch new file mode 100644 index 0000000..68397dd --- /dev/null +++ b/util-linux-ng-2.18-agetty-baudrate.patch @@ -0,0 +1,147 @@ +From 848e5e6ce3978d921366b799d907a78a12299924 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Wed, 18 Aug 2010 09:02:03 +0200 +Subject: [PATCH] agetty: add -s to reuse existing baud rate + +For example: + + /sbin/agetty -s /dev/ttyS0 9600 + +will reuse the speed the kernel configured on the port. If the setting +from kernel is useless (tty returns BREAK character) then the baud +rate from command line (9600) is used. + +Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=623685 +Signed-off-by: Karel Zak +--- + login-utils/agetty.8 | 16 +++++----------- + login-utils/agetty.c | 22 ++++++++++++++-------- + 2 files changed, 19 insertions(+), 19 deletions(-) + +diff --git a/login-utils/agetty.8 b/login-utils/agetty.8 +index 8761374..53037dd 100644 +--- a/login-utils/agetty.8 ++++ b/login-utils/agetty.8 +@@ -3,7 +3,7 @@ + agetty \- alternative Linux getty + + .SH SYNOPSIS +-.BR "agetty " [\-8ihLmnUw] ++.BR "agetty " [\-8ihLmnsUw] + .RI "[-f " issue_file ] + .RI "[-l " login_program ] + .RI "[-I " init ] +@@ -12,16 +12,6 @@ agetty \- alternative Linux getty + .I port + .I baud_rate,... + .RI [ term ] +-.br +-.BR "agetty " [\-8ihLmnw] +-.RI "[-f " issue_file ] +-.RI "[-l " login_program ] +-.RI "[-I " init ] +-.RI "[-t " timeout ] +-.RI "[-H " login_host ] +-.I baud_rate,... +-.I port +-.RI [ term ] + + .SH DESCRIPTION + .ad +@@ -163,6 +153,10 @@ Force the line to be a local line with no need for carrier detect. This can + be useful when you have a locally attached terminal where the serial line + does not set the carrier detect signal. + .TP ++\-s ++Try to keep the existing baud rate. The baud rates from ++the command line are used when agetty receives a BREAK character. ++.TP + \-U + Turn on support for detecting an uppercase only terminal. This setting will + detect a login name containing only capitals as indicating an uppercase +diff --git a/login-utils/agetty.c b/login-utils/agetty.c +index 39a1fd3..9fc389b 100644 +--- a/login-utils/agetty.c ++++ b/login-utils/agetty.c +@@ -133,6 +133,7 @@ struct options { + #define F_CUSTISSUE (1<<6) /* give alternative issue file */ + #define F_NOPROMPT (1<<7) /* don't ask for login name! */ + #define F_LCUC (1<<8) /* Support for *LCUC stty modes */ ++#define F_KEEPSPEED (1<<9) /* Follow baud rate from kernel */ + + /* Storage for things detected while the login name was read. */ + +@@ -203,7 +204,7 @@ void parse_args P_((int argc, char **argv, struct options *op)); + void parse_speeds P_((struct options *op, char *arg)); + void update_utmp P_((char *line)); + void open_tty P_((char *tty, struct termios *tp, int local)); +-void termio_init P_((struct termios *tp, int speed, struct options *op)); ++void termio_init P_((struct termios *tp, struct options *op)); + void auto_baud P_((struct termios *tp)); + void do_prompt P_((struct options *op, struct termios *tp)); + void next_speed P_((struct termios *tp, struct options *op)); +@@ -297,7 +298,7 @@ main(argc, argv) + tcsetpgrp(0, getpid()); + /* Initialize the termios settings (raw mode, eight-bit, blocking i/o). */ + debug("calling termio_init\n"); +- termio_init(&termios, options.speeds[FIRST_SPEED], &options); ++ termio_init(&termios, &options); + + /* write the modem init string and DON'T flush the buffers */ + if (options.flags & F_INITSTRING) { +@@ -373,7 +374,7 @@ parse_args(argc, argv, op) + extern int optind; /* getopt */ + int c; + +- while (isascii(c = getopt(argc, argv, "8I:LH:f:hil:mt:wUn"))) { ++ while (isascii(c = getopt(argc, argv, "8I:LH:f:hil:mst:wUn"))) { + switch (c) { + case '8': + op->eightbits = 1; +@@ -443,6 +444,9 @@ parse_args(argc, argv, op) + case 'n': + op->flags |= F_NOPROMPT; + break; ++ case 's': ++ op->flags |= F_KEEPSPEED; /* keep kernel defined speed */ ++ break; + case 't': /* time out */ + if ((op->timeout = atoi(optarg)) <= 0) + error(_("bad timeout value: %s"), optarg); +@@ -691,9 +695,8 @@ char gbuf[1024]; + char area[1024]; + + void +-termio_init(tp, speed, op) ++termio_init(tp, op) + struct termios *tp; +- int speed; + struct options *op; + { + +@@ -707,8 +710,11 @@ termio_init(tp, speed, op) + (void) tcflush(0, TCIOFLUSH); + + tp->c_cflag = CS8 | HUPCL | CREAD; +- cfsetispeed(tp, speed); +- cfsetospeed(tp, speed); ++ ++ if (!(op->flags & F_KEEPSPEED)) { ++ cfsetispeed(tp, op->speeds[FIRST_SPEED]); ++ cfsetospeed(tp, op->speeds[FIRST_SPEED]); ++ } + if (op->flags & F_LOCAL) { + tp->c_cflag |= CLOCAL; + } +@@ -1203,7 +1209,7 @@ bcode(s) + void + usage() + { +- fprintf(stderr, _("Usage: %s [-8hiLmUw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] baud_rate,... line [termtype]\nor\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] line baud_rate,... [termtype]\n"), progname); ++ fprintf(stderr, _("Usage: %s [-8hiLmsUw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] baud_rate,... line [termtype]\nor\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] line baud_rate,... [termtype]\n"), progname); + exit(1); + } + +-- +1.7.2 + diff --git a/util-linux-ng-2.17-agetty-clocal.patch b/util-linux-ng-2.18-agetty-clocal.patch similarity index 76% rename from util-linux-ng-2.17-agetty-clocal.patch rename to util-linux-ng-2.18-agetty-clocal.patch index 9429a23..1708e4d 100644 --- a/util-linux-ng-2.17-agetty-clocal.patch +++ b/util-linux-ng-2.18-agetty-clocal.patch @@ -1,4 +1,4 @@ -From 9fcaa8826c180273829cf03e5fe34e08daef721f Mon Sep 17 00:00:00 2001 +From e143d1f00497f0178a1febec8fb4aa7c842fa35a Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 12 Jul 2010 11:57:55 +0200 Subject: [PATCH] aggety: don't wipe CLOCAL flag @@ -13,18 +13,18 @@ Signed-off-by: Karel Zak 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/login-utils/agetty.c b/login-utils/agetty.c -index 39a1fd3..0cb00db 100644 +index 9fc389b..2541948 100644 --- a/login-utils/agetty.c +++ b/login-utils/agetty.c -@@ -706,7 +706,7 @@ termio_init(tp, speed, op) +@@ -709,7 +709,7 @@ termio_init(tp, op) /* flush input and output queues, important for modems! */ (void) tcflush(0, TCIOFLUSH); - tp->c_cflag = CS8 | HUPCL | CREAD; + tp->c_cflag = CS8 | HUPCL | CREAD | (tp->c_cflag & CLOCAL); - cfsetispeed(tp, speed); - cfsetospeed(tp, speed); - if (op->flags & F_LOCAL) { + + if (!(op->flags & F_KEEPSPEED)) { + cfsetispeed(tp, op->speeds[FIRST_SPEED]); -- -1.6.6.1 +1.7.2 diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 846dbe9..af7f369 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -109,10 +109,12 @@ Patch8: util-linux-ng-2.15-ipcs-32bit.patch ### Upstream Patches ### +# 623685 - please extend agetty to not require a baud rate to be specified +Patch9: util-linux-ng-2.18-agetty-baudrate.patch # 598631 - shutdown, reboot, halt and C-A-D don't work -Patch9: util-linux-ng-2.17-agetty-clocal.patch +Patch10: util-linux-ng-2.18-agetty-clocal.patch # 618957 - ISO images listed in fstab are mounted twice at boot -Patch10: util-linux-ng-2.17-mount-loopdev.patch +Patch11: util-linux-ng-2.17-mount-loopdev.patch %description The util-linux-ng package contains a large variety of low-level system @@ -229,6 +231,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch8 -p1 %patch9 -p1 %patch10 -p1 +%patch11 -p1 %build unset LINGUAS || : @@ -765,6 +768,9 @@ fi %changelog +* Wed Aug 18 2010 Karel Zak 2.18-4 +- fix #623685 - please extend agetty to not require a baud rate to be specified + * Thu Aug 5 2010 Karel Zak 2.18-3 - fix #620924 - /sbin/mount.tmpfs uses not available /usr/bin/id From 39ece656f36c1c4e06930d776e20ac63a9ac5ef1 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Wed, 18 Aug 2010 10:16:07 +0200 Subject: [PATCH 04/15] 2.18-4: fix #623685 Signed-off-by: Karel Zak --- .gitignore | 3 + util-linux-ng-2.18-agetty-baudrate.patch | 147 ++++++++++++++++++ ... => util-linux-ng-2.18-agetty-clocal.patch | 14 +- util-linux-ng.spec | 12 +- 4 files changed, 166 insertions(+), 10 deletions(-) create mode 100644 util-linux-ng-2.18-agetty-baudrate.patch rename util-linux-ng-2.17-agetty-clocal.patch => util-linux-ng-2.18-agetty-clocal.patch (76%) diff --git a/.gitignore b/.gitignore index e3f316a..d0444d2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,5 @@ floppy-0.16.tar.bz2 util-linux-ng-2.18.tar.bz2 +*~ +*.rpm +*.log diff --git a/util-linux-ng-2.18-agetty-baudrate.patch b/util-linux-ng-2.18-agetty-baudrate.patch new file mode 100644 index 0000000..68397dd --- /dev/null +++ b/util-linux-ng-2.18-agetty-baudrate.patch @@ -0,0 +1,147 @@ +From 848e5e6ce3978d921366b799d907a78a12299924 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Wed, 18 Aug 2010 09:02:03 +0200 +Subject: [PATCH] agetty: add -s to reuse existing baud rate + +For example: + + /sbin/agetty -s /dev/ttyS0 9600 + +will reuse the speed the kernel configured on the port. If the setting +from kernel is useless (tty returns BREAK character) then the baud +rate from command line (9600) is used. + +Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=623685 +Signed-off-by: Karel Zak +--- + login-utils/agetty.8 | 16 +++++----------- + login-utils/agetty.c | 22 ++++++++++++++-------- + 2 files changed, 19 insertions(+), 19 deletions(-) + +diff --git a/login-utils/agetty.8 b/login-utils/agetty.8 +index 8761374..53037dd 100644 +--- a/login-utils/agetty.8 ++++ b/login-utils/agetty.8 +@@ -3,7 +3,7 @@ + agetty \- alternative Linux getty + + .SH SYNOPSIS +-.BR "agetty " [\-8ihLmnUw] ++.BR "agetty " [\-8ihLmnsUw] + .RI "[-f " issue_file ] + .RI "[-l " login_program ] + .RI "[-I " init ] +@@ -12,16 +12,6 @@ agetty \- alternative Linux getty + .I port + .I baud_rate,... + .RI [ term ] +-.br +-.BR "agetty " [\-8ihLmnw] +-.RI "[-f " issue_file ] +-.RI "[-l " login_program ] +-.RI "[-I " init ] +-.RI "[-t " timeout ] +-.RI "[-H " login_host ] +-.I baud_rate,... +-.I port +-.RI [ term ] + + .SH DESCRIPTION + .ad +@@ -163,6 +153,10 @@ Force the line to be a local line with no need for carrier detect. This can + be useful when you have a locally attached terminal where the serial line + does not set the carrier detect signal. + .TP ++\-s ++Try to keep the existing baud rate. The baud rates from ++the command line are used when agetty receives a BREAK character. ++.TP + \-U + Turn on support for detecting an uppercase only terminal. This setting will + detect a login name containing only capitals as indicating an uppercase +diff --git a/login-utils/agetty.c b/login-utils/agetty.c +index 39a1fd3..9fc389b 100644 +--- a/login-utils/agetty.c ++++ b/login-utils/agetty.c +@@ -133,6 +133,7 @@ struct options { + #define F_CUSTISSUE (1<<6) /* give alternative issue file */ + #define F_NOPROMPT (1<<7) /* don't ask for login name! */ + #define F_LCUC (1<<8) /* Support for *LCUC stty modes */ ++#define F_KEEPSPEED (1<<9) /* Follow baud rate from kernel */ + + /* Storage for things detected while the login name was read. */ + +@@ -203,7 +204,7 @@ void parse_args P_((int argc, char **argv, struct options *op)); + void parse_speeds P_((struct options *op, char *arg)); + void update_utmp P_((char *line)); + void open_tty P_((char *tty, struct termios *tp, int local)); +-void termio_init P_((struct termios *tp, int speed, struct options *op)); ++void termio_init P_((struct termios *tp, struct options *op)); + void auto_baud P_((struct termios *tp)); + void do_prompt P_((struct options *op, struct termios *tp)); + void next_speed P_((struct termios *tp, struct options *op)); +@@ -297,7 +298,7 @@ main(argc, argv) + tcsetpgrp(0, getpid()); + /* Initialize the termios settings (raw mode, eight-bit, blocking i/o). */ + debug("calling termio_init\n"); +- termio_init(&termios, options.speeds[FIRST_SPEED], &options); ++ termio_init(&termios, &options); + + /* write the modem init string and DON'T flush the buffers */ + if (options.flags & F_INITSTRING) { +@@ -373,7 +374,7 @@ parse_args(argc, argv, op) + extern int optind; /* getopt */ + int c; + +- while (isascii(c = getopt(argc, argv, "8I:LH:f:hil:mt:wUn"))) { ++ while (isascii(c = getopt(argc, argv, "8I:LH:f:hil:mst:wUn"))) { + switch (c) { + case '8': + op->eightbits = 1; +@@ -443,6 +444,9 @@ parse_args(argc, argv, op) + case 'n': + op->flags |= F_NOPROMPT; + break; ++ case 's': ++ op->flags |= F_KEEPSPEED; /* keep kernel defined speed */ ++ break; + case 't': /* time out */ + if ((op->timeout = atoi(optarg)) <= 0) + error(_("bad timeout value: %s"), optarg); +@@ -691,9 +695,8 @@ char gbuf[1024]; + char area[1024]; + + void +-termio_init(tp, speed, op) ++termio_init(tp, op) + struct termios *tp; +- int speed; + struct options *op; + { + +@@ -707,8 +710,11 @@ termio_init(tp, speed, op) + (void) tcflush(0, TCIOFLUSH); + + tp->c_cflag = CS8 | HUPCL | CREAD; +- cfsetispeed(tp, speed); +- cfsetospeed(tp, speed); ++ ++ if (!(op->flags & F_KEEPSPEED)) { ++ cfsetispeed(tp, op->speeds[FIRST_SPEED]); ++ cfsetospeed(tp, op->speeds[FIRST_SPEED]); ++ } + if (op->flags & F_LOCAL) { + tp->c_cflag |= CLOCAL; + } +@@ -1203,7 +1209,7 @@ bcode(s) + void + usage() + { +- fprintf(stderr, _("Usage: %s [-8hiLmUw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] baud_rate,... line [termtype]\nor\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] line baud_rate,... [termtype]\n"), progname); ++ fprintf(stderr, _("Usage: %s [-8hiLmsUw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] baud_rate,... line [termtype]\nor\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] line baud_rate,... [termtype]\n"), progname); + exit(1); + } + +-- +1.7.2 + diff --git a/util-linux-ng-2.17-agetty-clocal.patch b/util-linux-ng-2.18-agetty-clocal.patch similarity index 76% rename from util-linux-ng-2.17-agetty-clocal.patch rename to util-linux-ng-2.18-agetty-clocal.patch index 9429a23..1708e4d 100644 --- a/util-linux-ng-2.17-agetty-clocal.patch +++ b/util-linux-ng-2.18-agetty-clocal.patch @@ -1,4 +1,4 @@ -From 9fcaa8826c180273829cf03e5fe34e08daef721f Mon Sep 17 00:00:00 2001 +From e143d1f00497f0178a1febec8fb4aa7c842fa35a Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 12 Jul 2010 11:57:55 +0200 Subject: [PATCH] aggety: don't wipe CLOCAL flag @@ -13,18 +13,18 @@ Signed-off-by: Karel Zak 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/login-utils/agetty.c b/login-utils/agetty.c -index 39a1fd3..0cb00db 100644 +index 9fc389b..2541948 100644 --- a/login-utils/agetty.c +++ b/login-utils/agetty.c -@@ -706,7 +706,7 @@ termio_init(tp, speed, op) +@@ -709,7 +709,7 @@ termio_init(tp, op) /* flush input and output queues, important for modems! */ (void) tcflush(0, TCIOFLUSH); - tp->c_cflag = CS8 | HUPCL | CREAD; + tp->c_cflag = CS8 | HUPCL | CREAD | (tp->c_cflag & CLOCAL); - cfsetispeed(tp, speed); - cfsetospeed(tp, speed); - if (op->flags & F_LOCAL) { + + if (!(op->flags & F_KEEPSPEED)) { + cfsetispeed(tp, op->speeds[FIRST_SPEED]); -- -1.6.6.1 +1.7.2 diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 846dbe9..af7f369 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -109,10 +109,12 @@ Patch8: util-linux-ng-2.15-ipcs-32bit.patch ### Upstream Patches ### +# 623685 - please extend agetty to not require a baud rate to be specified +Patch9: util-linux-ng-2.18-agetty-baudrate.patch # 598631 - shutdown, reboot, halt and C-A-D don't work -Patch9: util-linux-ng-2.17-agetty-clocal.patch +Patch10: util-linux-ng-2.18-agetty-clocal.patch # 618957 - ISO images listed in fstab are mounted twice at boot -Patch10: util-linux-ng-2.17-mount-loopdev.patch +Patch11: util-linux-ng-2.17-mount-loopdev.patch %description The util-linux-ng package contains a large variety of low-level system @@ -229,6 +231,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch8 -p1 %patch9 -p1 %patch10 -p1 +%patch11 -p1 %build unset LINGUAS || : @@ -765,6 +768,9 @@ fi %changelog +* Wed Aug 18 2010 Karel Zak 2.18-4 +- fix #623685 - please extend agetty to not require a baud rate to be specified + * Thu Aug 5 2010 Karel Zak 2.18-3 - fix #620924 - /sbin/mount.tmpfs uses not available /usr/bin/id From 285494e8ebea74ffc2795ec700368a7764098f5d Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Thu, 7 Oct 2010 12:09:23 +0200 Subject: [PATCH 05/15] 2.18-4.1: fix cfdisk(8) and findmnt(1) - fix 630340 - cfdisk cannot read default installer partitioning - don't truncate findmnt(1) output (usptream v2.18-6-ga93e569) Signed-off-by: Karel Zak --- util-linux-ng-2.18-cfdisk-cyl.patch | 88 +++++++++++++++++++++ util-linux-ng-2.18-libmount-optsmerge.patch | 29 +++++++ util-linux-ng.spec | 13 ++- 3 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 util-linux-ng-2.18-cfdisk-cyl.patch create mode 100644 util-linux-ng-2.18-libmount-optsmerge.patch diff --git a/util-linux-ng-2.18-cfdisk-cyl.patch b/util-linux-ng-2.18-cfdisk-cyl.patch new file mode 100644 index 0000000..9a5c42e --- /dev/null +++ b/util-linux-ng-2.18-cfdisk-cyl.patch @@ -0,0 +1,88 @@ +From 73356e0553bd9ac00f556891a4798064c0ee6849 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Mon, 6 Sep 2010 13:30:48 +0200 +Subject: [PATCH] cfdisk: don't use size of device based on cylinders + +This patch is enough to make cfdisk usable on non-DOS disks where +partitioning is not based on CHS. cfdisk should not print error +messages for such disks. + +Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=630340 +Signed-off-by: Karel Zak +--- + fdisk/cfdisk.c | 17 +++++------------ + 1 files changed, 5 insertions(+), 12 deletions(-) + +diff --git a/fdisk/cfdisk.c b/fdisk/cfdisk.c +index 8801a85..149a616 100644 +--- a/fdisk/cfdisk.c ++++ b/fdisk/cfdisk.c +@@ -197,7 +197,6 @@ int heads = 0; + int sectors = 0; + long long cylinders = 0; + int cylinder_size = 0; /* heads * sectors */ +-long long total_size = 0; /* actual_size rounded down */ + long long actual_size = 0; /* (in 512-byte sectors) - set using ioctl */ + /* explicitly given user values */ + int user_heads = 0, user_sectors = 0; +@@ -779,7 +778,7 @@ del_part(int i) { + if (i < num_parts - 1) + p_info[i].last_sector = p_info[i+1].first_sector - 1; + else +- p_info[i].last_sector = total_size - 1; ++ p_info[i].last_sector = actual_size - 1; + + p_info[i].offset = 0; + p_info[i].flags = 0; +@@ -828,7 +827,7 @@ add_part(int num, int id, int flags, long long first, long long last, + return -1; + } + +- if (first >= total_size) { ++ if (first >= actual_size) { + *errmsg = _("Partition begins after end-of-disk"); + return -1; + } +@@ -838,11 +837,6 @@ add_part(int num, int id, int flags, long long first, long long last, + return -1; + } + +- if (last >= total_size) { +- *errmsg = _("Partition ends in the final partial cylinder"); +- return -1; +- } +- + for (i = 0; i < num_parts; i++) { + if (p_info[i].id > 0 && IS_PRIMARY(p_info[i].num)) + pri++; +@@ -1535,8 +1529,7 @@ decide_on_geometry(void) { + if (user_cylinders > 0) + cylinders = user_cylinders; + +- total_size = cylinder_size*cylinders; +- if (total_size > actual_size) ++ if (cylinder_size * cylinders > actual_size) + print_warning(_("You specified more cylinders than fit on disk")); + } + +@@ -1544,7 +1537,7 @@ static void + clear_p_info(void) { + num_parts = 1; + p_info[0].first_sector = 0; +- p_info[0].last_sector = total_size - 1; ++ p_info[0].last_sector = actual_size - 1; + p_info[0].offset = 0; + p_info[0].flags = 0; + p_info[0].id = FREE_SPACE; +@@ -2327,7 +2320,7 @@ change_geometry(void) { + if (ret_val) { + long long disk_end; + +- disk_end = total_size-1; ++ disk_end = actual_size-1; + + if (p_info[num_parts-1].last_sector > disk_end) { + while (p_info[num_parts-1].first_sector > disk_end) { +-- +1.7.2.3 + diff --git a/util-linux-ng-2.18-libmount-optsmerge.patch b/util-linux-ng-2.18-libmount-optsmerge.patch new file mode 100644 index 0000000..4223536 --- /dev/null +++ b/util-linux-ng-2.18-libmount-optsmerge.patch @@ -0,0 +1,29 @@ +From a93e5691369b0d0878f4434f980c79e94216775d Mon Sep 17 00:00:00 2001 +From: Petr Uzel +Date: Sun, 4 Jul 2010 20:02:57 +0200 +Subject: [PATCH] libmount: fix merge_optstr (do not truncate 3 trailing characters) + +I believe this is the correct fix. + +Signed-off-by: Petr Uzel +--- + shlibs/mount/src/tab_parse.c | 3 ++- + 1 files changed, 2 insertions(+), 1 deletions(-) + +diff --git a/shlibs/mount/src/tab_parse.c b/shlibs/mount/src/tab_parse.c +index 5dbcfa6..680e1fc 100644 +--- a/shlibs/mount/src/tab_parse.c ++++ b/shlibs/mount/src/tab_parse.c +@@ -254,7 +254,8 @@ static char *merge_optstr(const char *vfs, const char *fs) + if (!strcmp(vfs, fs)) + return strdup(vfs); /* e.g. "aaa" and "aaa" */ + +- sz = strlen(vfs) + strlen(fs) + 2; ++ /* leave space for leading "r[ow],", "," and trailing zero */ ++ sz = strlen(vfs) + strlen(fs) + 5; + res = malloc(sz); + if (!res) + return NULL; +-- +1.7.2.3 + diff --git a/util-linux-ng.spec b/util-linux-ng.spec index af7f369..0f0810b 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4%{?dist} +Release: 4.1%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -115,6 +115,11 @@ Patch9: util-linux-ng-2.18-agetty-baudrate.patch Patch10: util-linux-ng-2.18-agetty-clocal.patch # 618957 - ISO images listed in fstab are mounted twice at boot Patch11: util-linux-ng-2.17-mount-loopdev.patch +# 630340 - cfdisk cannot read default installer partitioning +Patch12: util-linux-ng-2.18-cfdisk-cyl.patch +# don't truncate findmnt(1) output +Patch13: util-linux-ng-2.18-libmount-optsmerge.patch + %description The util-linux-ng package contains a large variety of low-level system @@ -232,6 +237,8 @@ cp %{SOURCE8} %{SOURCE9} . %patch9 -p1 %patch10 -p1 %patch11 -p1 +%patch12 -p1 +%patch13 -p1 %build unset LINGUAS || : @@ -768,6 +775,10 @@ fi %changelog +* Thu Oct 7 2010 Karel Zak 2.18-4.1 +- fix 630340 - cfdisk cannot read default installer partitioning +- don't truncate findmnt(1) output (usptream v2.18-6-ga93e569) + * Wed Aug 18 2010 Karel Zak 2.18-4 - fix #623685 - please extend agetty to not require a baud rate to be specified From cb5474ca02f3ded58390055b8d486cc449280237 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Thu, 7 Oct 2010 13:29:41 +0200 Subject: [PATCH 06/15] 2.18-4.2: fix #538551, #625064 - fix #538551 - Dual-filesystem (ISO9660/HFS) CD-ROMs not mounted automatically - fix #625064 - fuse-sshfs mounts are not displayed in Nautilus Signed-off-by: Karel Zak --- util-linux-ng-2.18-mount-subtype.patch | 115 +++++++++++++++++++++++++ util-linux-ng-blkid-HFS.patch | 28 ++++++ util-linux-ng.spec | 13 ++- 3 files changed, 154 insertions(+), 2 deletions(-) create mode 100644 util-linux-ng-2.18-mount-subtype.patch create mode 100644 util-linux-ng-blkid-HFS.patch diff --git a/util-linux-ng-2.18-mount-subtype.patch b/util-linux-ng-2.18-mount-subtype.patch new file mode 100644 index 0000000..4b95f12 --- /dev/null +++ b/util-linux-ng-2.18-mount-subtype.patch @@ -0,0 +1,115 @@ +From dc0a335554eafa643c7fd123d99e14df72c515c3 Mon Sep 17 00:00:00 2001 +From: Miklos Szeredi +Date: Fri, 27 Aug 2010 16:58:44 +0200 +Subject: [PATCH] mount: handle filesystems with subtype + +Linux can handle filesystem types with "MAINTYPE.SUBTYPE" format, +where the main type determines the actual filesystem driver while the +subtype can be interpreted by the filesystem itself. + +When searching for mount helpers mount(8) and umount(8) should also +interpret such types, falling back to (u)mount.MAINTYPE if +(u)mount.MAINTYPE.SUBTYPE doesn't exist. + +This patch implements this, passing the type with "-t TYPE" +to the mount program in this case. + +Reported-by: Josef Bacik +Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=625064 +Signed-off-by: Miklos Szeredi +--- + mount/mount.c | 19 ++++++++++++++++--- + mount/umount.c | 17 +++++++++++++++-- + 2 files changed, 31 insertions(+), 5 deletions(-) + +diff --git a/mount/mount.c b/mount/mount.c +index f2b6ee2..84986e3 100644 +--- a/mount/mount.c ++++ b/mount/mount.c +@@ -664,13 +664,22 @@ check_special_mountprog(const char *spec, const char *node, const char *type, in + + path = strtok(search_path, ":"); + while (path) { ++ int type_opt = 0; ++ + res = snprintf(mountprog, sizeof(mountprog), "%s/mount.%s", + path, type); + path = strtok(NULL, ":"); + if (res >= sizeof(mountprog) || res < 0) + continue; + +- if (stat(mountprog, &statbuf)) ++ res = stat(mountprog, &statbuf); ++ if (res == -1 && errno == ENOENT && strchr(type, '.')) { ++ /* If type ends with ".subtype" try without it */ ++ *strrchr(mountprog, '.') = '\0'; ++ type_opt = 1; ++ res = stat(mountprog, &statbuf); ++ } ++ if (res) + continue; + + if (verbose) +@@ -678,7 +687,7 @@ check_special_mountprog(const char *spec, const char *node, const char *type, in + + switch (fork()) { + case 0: { /* child */ +- char *oo, *mountargs[10]; ++ char *oo, *mountargs[12]; + int i = 0; + + if (setgid(getgid()) < 0) +@@ -703,7 +712,11 @@ check_special_mountprog(const char *spec, const char *node, const char *type, in + mountargs[i++] = "-o"; /* 8 */ + mountargs[i++] = oo; /* 9 */ + } +- mountargs[i] = NULL; /* 10 */ ++ if (type_opt) { ++ mountargs[i++] = "-t"; /* 10 */ ++ mountargs[i++] = (char *) type; /* 11 */ ++ } ++ mountargs[i] = NULL; /* 12 */ + + if (verbose > 2) { + i = 0; +diff --git a/mount/umount.c b/mount/umount.c +index 5bd5360..0ad7c5f 100644 +--- a/mount/umount.c ++++ b/mount/umount.c +@@ -103,11 +103,20 @@ check_special_umountprog(const char *spec, const char *node, + return 0; + + if (strlen(type) < 100) { ++ int type_opt = 0; ++ + sprintf(umountprog, "/sbin/umount.%s", type); +- if (stat(umountprog, &statbuf) == 0) { ++ res = stat(umountprog, &statbuf); ++ if (res == -1 && errno == ENOENT && strchr(type, '.')) { ++ /* If type ends with ".subtype" try without it */ ++ *strrchr(umountprog, '.') = '\0'; ++ type_opt = 1; ++ res = stat(umountprog, &statbuf); ++ } ++ if (res == 0) { + res = fork(); + if (res == 0) { +- char *umountargs[8]; ++ char *umountargs[10]; + int i = 0; + + if(setgid(getgid()) < 0) +@@ -128,6 +137,10 @@ check_special_umountprog(const char *spec, const char *node, + umountargs[i++] = "-v"; + if (remount) + umountargs[i++] = "-r"; ++ if (type_opt) { ++ umountargs[i++] = "-t"; ++ umountargs[i++] = (char *) type; ++ } + umountargs[i] = NULL; + execv(umountprog, umountargs); + exit(1); /* exec failed */ +-- +1.7.2.3 + diff --git a/util-linux-ng-blkid-HFS.patch b/util-linux-ng-blkid-HFS.patch new file mode 100644 index 0000000..be16e5d --- /dev/null +++ b/util-linux-ng-blkid-HFS.patch @@ -0,0 +1,28 @@ +From 791a2fd67c118c3f07141e4cc95532fe908015a9 Mon Sep 17 00:00:00 2001 +From: Alexandre Peixoto Ferreira +Date: Mon, 19 Jul 2010 18:04:33 -0500 +Subject: [PATCH] libblkid: set tolerant flag for HFS + +An CDROM can contain both HFS and ISO9660 views on the same filesystem. +This confuses mount/KDE/Gnome. + +Signed-off-by: Karel Zak +--- + shlibs/blkid/src/superblocks/hfs.c | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/shlibs/blkid/src/superblocks/hfs.c b/shlibs/blkid/src/superblocks/hfs.c +index 8ebff68..033a65d 100644 +--- a/shlibs/blkid/src/superblocks/hfs.c ++++ b/shlibs/blkid/src/superblocks/hfs.c +@@ -291,6 +291,7 @@ const struct blkid_idinfo hfs_idinfo = + .name = "hfs", + .usage = BLKID_USAGE_FILESYSTEM, + .probefunc = probe_hfs, ++ .flags = BLKID_IDINFO_TOLERANT, + .magics = + { + { .magic = "BD", .len = 2, .kboff = 1 }, +-- +1.7.2.3 + diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 0f0810b..5e436f2 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4.1%{?dist} +Release: 4.2%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -119,7 +119,10 @@ Patch11: util-linux-ng-2.17-mount-loopdev.patch Patch12: util-linux-ng-2.18-cfdisk-cyl.patch # don't truncate findmnt(1) output Patch13: util-linux-ng-2.18-libmount-optsmerge.patch - +# 538551 - Dual-filesystem (ISO9660/HFS) CD-ROMs not mounted automatically +Patch14: util-linux-ng-blkid-HFS.patch +# 625064 - fuse-sshfs mounts are not displayed in Nautilus +Patch15: util-linux-ng-2.18-mount-subtype.patch %description The util-linux-ng package contains a large variety of low-level system @@ -239,6 +242,8 @@ cp %{SOURCE8} %{SOURCE9} . %patch11 -p1 %patch12 -p1 %patch13 -p1 +%patch14 -p1 +%patch15 -p1 %build unset LINGUAS || : @@ -775,6 +780,10 @@ fi %changelog +* Thu Oct 7 2010 Karel Zak 2.18-4.2 +- fix #538551 - Dual-filesystem (ISO9660/HFS) CD-ROMs not mounted automatically +- fix #625064 - fuse-sshfs mounts are not displayed in Nautilus + * Thu Oct 7 2010 Karel Zak 2.18-4.1 - fix 630340 - cfdisk cannot read default installer partitioning - don't truncate findmnt(1) output (usptream v2.18-6-ga93e569) From ba161998dce8a4c9be9452e72a2714c8906e1350 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 11 Oct 2010 09:06:22 +0200 Subject: [PATCH 07/15] 2.18-4.3: #641169 - cfdisk does not accept partition type Signed-off-by: Karel Zak --- util-linux-ng-2.18-cfdisk-parttype.patch | 57 ++++++++++++++++++++++++ util-linux-ng.spec | 8 +++- 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 util-linux-ng-2.18-cfdisk-parttype.patch diff --git a/util-linux-ng-2.18-cfdisk-parttype.patch b/util-linux-ng-2.18-cfdisk-parttype.patch new file mode 100644 index 0000000..65a6b90 --- /dev/null +++ b/util-linux-ng-2.18-cfdisk-parttype.patch @@ -0,0 +1,57 @@ +From 54a0fe298b4d6d948cffbd6fbbbe7dbabc9a6bb1 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Mon, 19 Jul 2010 22:52:58 +0200 +Subject: [PATCH] cfdisk: get_string not calculating correct limits + +Reported-by: James L. Hammons +Signed-off-by: Karel Zak +--- + fdisk/cfdisk.c | 11 ++++++++--- + 1 files changed, 8 insertions(+), 3 deletions(-) + +diff --git a/fdisk/cfdisk.c b/fdisk/cfdisk.c +index 7fa0b19..e7955fe 100644 +--- a/fdisk/cfdisk.c ++++ b/fdisk/cfdisk.c +@@ -421,6 +421,11 @@ fdexit(int ret) { + exit(ret); + } + ++/* ++ * Note that @len is size of @str buffer. ++ * ++ * Returns number of read bytes (without \0). ++ */ + static int + get_string(char *str, int len, char *def) { + size_t cells = 0, i = 0; +@@ -472,7 +477,7 @@ get_string(char *str, int len, char *def) { + break; + default: + #if defined(HAVE_LIBNCURSESW) && defined(HAVE_WIDECHAR) +- if (i < len && iswprint(c)) { ++ if (i + 1 < len && iswprint(c)) { + wchar_t wc = (wchar_t) c; + char s[MB_CUR_MAX + 1]; + int sz = wctomb(s, wc); +@@ -492,7 +497,7 @@ get_string(char *str, int len, char *def) { + putchar(BELL); + } + #else +- if (i < len && isprint(c)) { ++ if (i + 1 < len && isprint(c)) { + mvaddch(y, x + cells, c); + if (use_def) { + clrtoeol(); +@@ -2405,7 +2410,7 @@ change_id(int i) { + + sprintf(def, "%02X", new_id); + mvaddstr(COMMAND_LINE_Y, COMMAND_LINE_X, _("Enter filesystem type: ")); +- if ((len = get_string(id, 2, def)) <= 0 && len != GS_DEFAULT) ++ if ((len = get_string(id, 3, def)) <= 0 && len != GS_DEFAULT) + return; + + if (len != GS_DEFAULT) { +-- +1.7.3.1 + diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 5e436f2..34631b9 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4.2%{?dist} +Release: 4.3%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -123,6 +123,8 @@ Patch13: util-linux-ng-2.18-libmount-optsmerge.patch Patch14: util-linux-ng-blkid-HFS.patch # 625064 - fuse-sshfs mounts are not displayed in Nautilus Patch15: util-linux-ng-2.18-mount-subtype.patch +# 641169 - cfdisk does not accept two-character partition type +Patch16: util-linux-ng-2.18-cfdisk-parttype.patch %description The util-linux-ng package contains a large variety of low-level system @@ -244,6 +246,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch13 -p1 %patch14 -p1 %patch15 -p1 +%patch16 -p1 %build unset LINGUAS || : @@ -780,6 +783,9 @@ fi %changelog +* Mon Oct 11 2010 Karel Zak 2.18-4.3 +- fix #641169 - cfdisk does not accept two-character partition type + * Thu Oct 7 2010 Karel Zak 2.18-4.2 - fix #538551 - Dual-filesystem (ISO9660/HFS) CD-ROMs not mounted automatically - fix #625064 - fuse-sshfs mounts are not displayed in Nautilus From 334e0e7abe683e5df22777c8f0f5f8b2631b51b5 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Tue, 26 Oct 2010 23:39:38 +0200 Subject: [PATCH 08/15] 2.18-5: fix agetty -s (#645640) Signed-off-by: Karel Zak --- util-linux-ng-2.18-agetty-baudrate.patch | 127 +++++++++++++++++------ util-linux-ng-2.18-agetty-clocal.patch | 42 ++++---- util-linux-ng.spec | 6 +- 3 files changed, 117 insertions(+), 58 deletions(-) diff --git a/util-linux-ng-2.18-agetty-baudrate.patch b/util-linux-ng-2.18-agetty-baudrate.patch index 68397dd..72dc257 100644 --- a/util-linux-ng-2.18-agetty-baudrate.patch +++ b/util-linux-ng-2.18-agetty-baudrate.patch @@ -1,27 +1,50 @@ -From 848e5e6ce3978d921366b799d907a78a12299924 Mon Sep 17 00:00:00 2001 -From: Karel Zak -Date: Wed, 18 Aug 2010 09:02:03 +0200 -Subject: [PATCH] agetty: add -s to reuse existing baud rate -For example: + based on upstream patch: + + commit 848e5e6ce3978d921366b799d907a78a12299924 + Author: Karel Zak + Date: Wed Aug 18 09:02:03 2010 +0200 + + agetty: add -s to reuse existing baud rate + + For example: /sbin/agetty -s /dev/ttyS0 9600 -will reuse the speed the kernel configured on the port. If the setting -from kernel is useless (tty returns BREAK character) then the baud -rate from command line (9600) is used. + will reuse the speed the kernel configured on the port. If the setting + from kernel is useless (tty returns BREAK character) then the baud + rate from command line (9600) is used. -Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=623685 -Signed-off-by: Karel Zak ---- - login-utils/agetty.8 | 16 +++++----------- - login-utils/agetty.c | 22 ++++++++++++++-------- - 2 files changed, 19 insertions(+), 19 deletions(-) + Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=623685 + Signed-off-by: Karel Zak -diff --git a/login-utils/agetty.8 b/login-utils/agetty.8 -index 8761374..53037dd 100644 ---- a/login-utils/agetty.8 -+++ b/login-utils/agetty.8 + and + + commit e98f4af950a64db188e0a9f3eed20fefaa463a99 + Author: Karel Zak + Date: Fri Oct 22 21:24:50 2010 +0200 + + agetty: fix -s option (baud rate setup) + + The problem is pretty visible in strace output: + + broken version: + ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 + [...] + ioctl(0, SNDCTL_TMR_START or TCSETS, {B0 -opost -isig -icanon -echo ...}) = 0 + ^^^ + fixed version: + ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 + [...] + ioctl(0, SNDCTL_TMR_START or TCSETS, {B115200 -opost -isig -icanon -echo ...}) = 0 + + Reported-by: Jon Masters + Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=645640 + Signed-off-by: Karel Zak + +diff -up util-linux-ng-2.18/login-utils/agetty.8.kzak util-linux-ng-2.18/login-utils/agetty.8 +--- util-linux-ng-2.18/login-utils/agetty.8.kzak 2010-02-04 12:53:56.000000000 +0100 ++++ util-linux-ng-2.18/login-utils/agetty.8 2010-10-22 22:07:43.000000000 +0200 @@ -3,7 +3,7 @@ agetty \- alternative Linux getty @@ -48,7 +71,7 @@ index 8761374..53037dd 100644 .SH DESCRIPTION .ad -@@ -163,6 +153,10 @@ Force the line to be a local line with no need for carrier detect. This can +@@ -163,6 +153,10 @@ Force the line to be a local line with n be useful when you have a locally attached terminal where the serial line does not set the carrier detect signal. .TP @@ -59,10 +82,9 @@ index 8761374..53037dd 100644 \-U Turn on support for detecting an uppercase only terminal. This setting will detect a login name containing only capitals as indicating an uppercase -diff --git a/login-utils/agetty.c b/login-utils/agetty.c -index 39a1fd3..9fc389b 100644 ---- a/login-utils/agetty.c -+++ b/login-utils/agetty.c +diff -up util-linux-ng-2.18/login-utils/agetty.c.kzak util-linux-ng-2.18/login-utils/agetty.c +--- util-linux-ng-2.18/login-utils/agetty.c.kzak 2010-04-01 16:11:56.000000000 +0200 ++++ util-linux-ng-2.18/login-utils/agetty.c 2010-10-22 22:15:40.000000000 +0200 @@ -133,6 +133,7 @@ struct options { #define F_CUSTISSUE (1<<6) /* give alternative issue file */ #define F_NOPROMPT (1<<7) /* don't ask for login name! */ @@ -71,7 +93,7 @@ index 39a1fd3..9fc389b 100644 /* Storage for things detected while the login name was read. */ -@@ -203,7 +204,7 @@ void parse_args P_((int argc, char **argv, struct options *op)); +@@ -203,7 +204,7 @@ void parse_args P_((int argc, char **arg void parse_speeds P_((struct options *op, char *arg)); void update_utmp P_((char *line)); void open_tty P_((char *tty, struct termios *tp, int local)); @@ -108,7 +130,7 @@ index 39a1fd3..9fc389b 100644 case 't': /* time out */ if ((op->timeout = atoi(optarg)) <= 0) error(_("bad timeout value: %s"), optarg); -@@ -691,9 +695,8 @@ char gbuf[1024]; +@@ -691,11 +695,17 @@ char gbuf[1024]; char area[1024]; void @@ -118,22 +140,62 @@ index 39a1fd3..9fc389b 100644 - int speed; struct options *op; { ++ speed_t ispeed, ospeed; ++ ++ if (op->flags & F_KEEPSPEED) { ++ ispeed = cfgetispeed(tp); /* save the original setting */ ++ ospeed = cfgetospeed(tp); ++ } else ++ ospeed = ispeed = op->speeds[FIRST_SPEED]; -@@ -707,8 +710,11 @@ termio_init(tp, speed, op) + /* + * Initial termios settings: 8-bit characters, raw-mode, blocking i/o. +@@ -706,14 +716,20 @@ termio_init(tp, speed, op) + /* flush input and output queues, important for modems! */ (void) tcflush(0, TCIOFLUSH); ++ tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; ++ tp->c_cflag = CS8 | HUPCL | CREAD; - cfsetispeed(tp, speed); - cfsetospeed(tp, speed); + -+ if (!(op->flags & F_KEEPSPEED)) { -+ cfsetispeed(tp, op->speeds[FIRST_SPEED]); -+ cfsetospeed(tp, op->speeds[FIRST_SPEED]); -+ } ++ /* Note that the speed is stored in the c_cflag termios field, so we have ++ * set the speed always when the cflag se reseted. ++ */ ++ cfsetispeed(tp, ispeed); ++ cfsetospeed(tp, ospeed); ++ if (op->flags & F_LOCAL) { tp->c_cflag |= CLOCAL; } -@@ -1203,7 +1209,7 @@ bcode(s) + +- tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; + #ifdef HAVE_STRUCT_TERMIOS_C_LINE + tp->c_line = 0; + #endif +@@ -973,9 +989,18 @@ next_speed(tp, op) + struct termios *tp; + struct options *op; + { +- static int baud_index = FIRST_SPEED;/* current speed index */ ++ static int baud_index = -1; ++ ++ if (baud_index == -1) ++ /* ++ * if the F_KEEPSPEED flags is set then the FIRST_SPEED is not ++ * tested yet (see termio_init()). ++ */ ++ baud_index = (op->flags & F_KEEPSPEED) ? FIRST_SPEED : ++ 1 % op->numspeed; ++ else ++ baud_index = (baud_index + 1) % op->numspeed; + +- baud_index = (baud_index + 1) % op->numspeed; + cfsetispeed(tp, op->speeds[baud_index]); + cfsetospeed(tp, op->speeds[baud_index]); + (void) tcsetattr(0, TCSANOW, tp); +@@ -1203,7 +1228,7 @@ bcode(s) void usage() { @@ -142,6 +204,3 @@ index 39a1fd3..9fc389b 100644 exit(1); } --- -1.7.2 - diff --git a/util-linux-ng-2.18-agetty-clocal.patch b/util-linux-ng-2.18-agetty-clocal.patch index 1708e4d..5d0b677 100644 --- a/util-linux-ng-2.18-agetty-clocal.patch +++ b/util-linux-ng-2.18-agetty-clocal.patch @@ -1,30 +1,26 @@ -From e143d1f00497f0178a1febec8fb4aa7c842fa35a Mon Sep 17 00:00:00 2001 -From: Karel Zak -Date: Mon, 12 Jul 2010 11:57:55 +0200 -Subject: [PATCH] aggety: don't wipe CLOCAL flag -gettey should not clear the flag. It seems that the flag is -automatically enabled for serial consoles tht don't use CD signal. + backport of upstream patch: -Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=598631 -Signed-off-by: Karel Zak ---- - login-utils/agetty.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) + Commit: e143d1f00497f0178a1febec8fb4aa7c842fa35a + From: Karel Zak + Date: Mon, 12 Jul 2010 11:57:55 +0200 + Subject: [PATCH] aggety: don't wipe CLOCAL flag -diff --git a/login-utils/agetty.c b/login-utils/agetty.c -index 9fc389b..2541948 100644 ---- a/login-utils/agetty.c -+++ b/login-utils/agetty.c -@@ -709,7 +709,7 @@ termio_init(tp, op) - /* flush input and output queues, important for modems! */ - (void) tcflush(0, TCIOFLUSH); + gettey should not clear the flag. It seems that the flag is + automatically enabled for serial consoles tht don't use CD signal. + + Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=598631 + Signed-off-by: Karel Zak + +diff -up util-linux-ng-2.18/login-utils/agetty.c.kzak util-linux-ng-2.18/login-utils/agetty.c +--- util-linux-ng-2.18/login-utils/agetty.c.kzak 2010-10-22 21:51:31.000000000 +0200 ++++ util-linux-ng-2.18/login-utils/agetty.c 2010-10-22 21:51:31.000000000 +0200 +@@ -715,7 +715,7 @@ termio_init(tp, speed, op) + + tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; - tp->c_cflag = CS8 | HUPCL | CREAD; + tp->c_cflag = CS8 | HUPCL | CREAD | (tp->c_cflag & CLOCAL); - if (!(op->flags & F_KEEPSPEED)) { - cfsetispeed(tp, op->speeds[FIRST_SPEED]); --- -1.7.2 - + /* Note that the speed is stored in the c_cflag termios field, so we have + * set the speed always when the cflag se reseted. diff --git a/util-linux-ng.spec b/util-linux-ng.spec index af7f369..f30a19e 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -110,6 +110,7 @@ Patch8: util-linux-ng-2.15-ipcs-32bit.patch ### Upstream Patches ### # 623685 - please extend agetty to not require a baud rate to be specified +# 645640 - new "-s" parameter parsing in agetty does not work Patch9: util-linux-ng-2.18-agetty-baudrate.patch # 598631 - shutdown, reboot, halt and C-A-D don't work Patch10: util-linux-ng-2.18-agetty-clocal.patch @@ -768,6 +769,9 @@ fi %changelog +* Tue Oct 26 2010 Karel Zak 2.18-5 +- fix #645640 - new "-s" parameter parsing in agetty does not work + * Wed Aug 18 2010 Karel Zak 2.18-4 - fix #623685 - please extend agetty to not require a baud rate to be specified From 6c69926dbfca8b07bd2f93b56bc8e7c54c7b227d Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Wed, 27 Oct 2010 00:18:01 +0200 Subject: [PATCH 09/15] 2.18-5: add -l (lock) support to fsck Signed-off-by: Karel Zak --- util-linux-ng-2.18-fsck-wholedisk.patch | 510 ++++++++++++++++++++++++ util-linux-ng.spec | 4 + 2 files changed, 514 insertions(+) create mode 100644 util-linux-ng-2.18-fsck-wholedisk.patch diff --git a/util-linux-ng-2.18-fsck-wholedisk.patch b/util-linux-ng-2.18-fsck-wholedisk.patch new file mode 100644 index 0000000..3718255 --- /dev/null +++ b/util-linux-ng-2.18-fsck-wholedisk.patch @@ -0,0 +1,510 @@ +diff -up util-linux-ng-2.18/fsck/fsck.8.kzak util-linux-ng-2.18/fsck/fsck.8 +--- util-linux-ng-2.18/fsck/fsck.8.kzak 2010-06-30 12:51:35.000000000 +0200 ++++ util-linux-ng-2.18/fsck/fsck.8 2010-10-26 23:55:30.000000000 +0200 +@@ -7,7 +7,7 @@ + fsck \- check and repair a Linux file system + .SH SYNOPSIS + .B fsck +-.RB [ \-sAVRTMNP ] ++.RB [ \-lsAVRTMNP ] + .RB [ \-C + .RI [ fd ]] + .RB [ \-t +@@ -80,6 +80,17 @@ variable. Please see the file system-sp + further details. + .SH OPTIONS + .TP ++.B \-l ++Lock whole-disk device by exclusive ++.BR flock (2). ++This option can be used with one device only (e.g. -A and -l are mutually ++exclusive). This option is recommended when more ++.B fsck (8) ++instances are executed in the same time. The option is ignored when used for ++multiple devices or for non-rotating disk. The fsck does not lock underlying ++devices if executed to check stacked devices (e.g. MD or DM) -- this feature is ++not implemented yet. ++.TP + .B \-s + Serialize + .B fsck +@@ -200,6 +211,11 @@ If there are multiple filesystems with t + fsck will attempt to check them in parallel, although it will avoid running + multiple filesystem checks on the same physical disk. + .sp ++.B fsck ++does not check stacked devices (RAIDs, dm-crypt, ...) in parallel with any other ++device. See below for FSCK_FORCE_ALL_PARALLEL setting. The /sys filesystem is ++used to detemine dependencies between devices. ++.sp + Hence, a very common configuration in + .I /etc/fstab + files is to set the root filesystem to have a +@@ -366,10 +382,10 @@ program's behavior is affected by the fo + .B FSCK_FORCE_ALL_PARALLEL + If this environment variable is set, + .B fsck +-will attempt to run all of the specified filesystems in parallel, +-regardless of whether the filesystems appear to be on the same +-device. (This is useful for RAID systems or high-end storage systems +-such as those sold by companies such as IBM or EMC.) ++will attempt to run all of the specified filesystems in parallel, regardless of ++whether the filesystems appear to be on the same device. (This is useful for ++RAID systems or high-end storage systems such as those sold by companies such ++as IBM or EMC.) Note that the fs_passno value is still used. + .TP + .B FSCK_MAX_INST + This environment variable will limit the maximum number of file system +diff -up util-linux-ng-2.18/fsck/fsck.c.kzak util-linux-ng-2.18/fsck/fsck.c +--- util-linux-ng-2.18/fsck/fsck.c.kzak 2010-05-19 23:36:23.000000000 +0200 ++++ util-linux-ng-2.18/fsck/fsck.c 2010-10-26 23:55:30.000000000 +0200 +@@ -31,6 +31,8 @@ + #include + #include + #include ++#include ++#include + #include + #include + #include +@@ -42,6 +44,8 @@ + #include + #include + #include ++#include ++#include + + #include "fsprobe.h" + +@@ -85,6 +89,7 @@ char *devices[MAX_DEVICES]; + char *args[MAX_ARGS]; + int num_devices, num_args; + ++int lockdisk = 0; + int verbose = 0; + int doall = 0; + int noexecute = 0; +@@ -214,11 +219,97 @@ static void parse_escape(char *word) + *q = 0; + } + ++static dev_t get_disk(const char *device) ++{ ++ struct stat st; ++ dev_t disk; ++ ++ if (!stat(device, &st) && ++ !blkid_devno_to_wholedisk(st.st_rdev, NULL, 0, &disk)) ++ return disk; ++ ++ return 0; ++} ++ ++static int is_irrotational_disk(dev_t disk) ++{ ++ char path[PATH_MAX]; ++ FILE *f; ++ int rc, x; ++ ++ rc = snprintf(path, sizeof(path), ++ "/sys/dev/block/%d:%d/queue/rotational", ++ major(disk), minor(disk)); ++ ++ if (rc < 0 || rc + 1 > sizeof(path)) ++ return 0; ++ ++ f = fopen(path, "r"); ++ if (!f) ++ return 0; ++ ++ rc = fscanf(f, "%u", &x); ++ fclose(f); ++ ++ return rc == 1 ? !x : 0; ++} ++ ++static void lock_disk(struct fsck_instance *inst) ++{ ++ dev_t disk = inst->fs->disk ? : get_disk(inst->fs->device); ++ char *diskname; ++ ++ if (!disk || is_irrotational_disk(disk)) ++ return; ++ ++ diskname = blkid_devno_to_devname(disk); ++ if (!diskname) ++ return; ++ ++ if (verbose) ++ printf(_("Locking disk %s ... "), diskname); ++ ++ inst->lock = open(diskname, O_CLOEXEC | O_RDONLY); ++ if (inst->lock >= 0) { ++ int rc = -1; ++ ++ /* inform users that we're waiting on the lock */ ++ if (verbose && ++ (rc = flock(inst->lock, LOCK_EX | LOCK_NB)) != 0 && ++ errno == EWOULDBLOCK) ++ printf(_("(waiting) ")); ++ ++ if (rc != 0 && flock(inst->lock, LOCK_EX) != 0) { ++ close(inst->lock); /* failed */ ++ inst->lock = -1; ++ } ++ } ++ ++ if (verbose) ++ printf("%s.\n", inst->lock >= 0 ? _("success") : _("failed")); ++ ++ free(diskname); ++ return; ++} ++ ++static void unlock_disk(struct fsck_instance *inst) ++{ ++ if (inst->lock >= 0) { ++ /* explicitly unlock, don't rely on close(), maybe some library ++ * (e.g. liblkid) has still open the device. ++ */ ++ flock(inst->lock, LOCK_UN); ++ close(inst->lock); ++ } ++} ++ ++ ++ + static void free_instance(struct fsck_instance *i) + { ++ if (lockdisk) ++ unlock_disk(i); + free(i->prog); +- free(i->device); +- free(i->base_device); + free(i); + return; + } +@@ -240,6 +331,8 @@ static struct fs_info *create_fs_device( + fs->passno = passno; + fs->flags = 0; + fs->next = NULL; ++ fs->disk = 0; ++ fs->stacked = 0; + + if (!filesys_info) + filesys_info = fs; +@@ -414,8 +507,7 @@ static int progress_active(NOARGS) + * Execute a particular fsck program, and link it into the list of + * child processes we are waiting for. + */ +-static int execute(const char *type, const char *device, const char *mntpt, +- int interactive) ++static int execute(const char *type, struct fs_info *fs, int interactive) + { + char *s, *argv[80], prog[80]; + int argc, i; +@@ -452,7 +544,7 @@ static int execute(const char *type, con + } + } + +- argv[argc++] = string_copy(device); ++ argv[argc++] = string_copy(fs->device); + argv[argc] = 0; + + s = find_fsck(prog); +@@ -464,12 +556,19 @@ static int execute(const char *type, con + + if (verbose || noexecute) { + printf("[%s (%d) -- %s] ", s, num_running, +- mntpt ? mntpt : device); ++ fs->mountpt ? fs->mountpt : fs->device); + for (i=0; i < argc; i++) + printf("%s ", argv[i]); + printf("\n"); + } + ++ ++ inst->fs = fs; ++ inst->lock = -1; ++ ++ if (lockdisk) ++ lock_disk(inst); ++ + /* Fork and execute the correct program. */ + if (noexecute) + pid = -1; +@@ -492,8 +591,6 @@ static int execute(const char *type, con + inst->pid = pid; + inst->prog = string_copy(prog); + inst->type = string_copy(type); +- inst->device = string_copy(device); +- inst->base_device = base_device(device); + inst->start_time = time(0); + inst->next = NULL; + +@@ -597,12 +694,12 @@ static struct fsck_instance *wait_one(in + } else { + printf(_("Warning... %s for device %s exited " + "with signal %d.\n"), +- inst->prog, inst->device, sig); ++ inst->prog, inst->fs->device, sig); + status = EXIT_ERROR; + } + } else { + printf(_("%s %s: status is %x, should never happen.\n"), +- inst->prog, inst->device, status); ++ inst->prog, inst->fs->device, status); + status = EXIT_ERROR; + } + inst->exit_status = status; +@@ -641,7 +738,7 @@ ret_inst: + instance_list = inst->next; + if (verbose > 1) + printf(_("Finished with %s (exit status %d)\n"), +- inst->device, inst->exit_status); ++ inst->fs->device, inst->exit_status); + num_running--; + return inst; + } +@@ -698,7 +795,7 @@ static void fsck_device(struct fs_info * + type = DEFAULT_FSTYPE; + + num_running++; +- retval = execute(type, fs->device, fs->mountpt, interactive); ++ retval = execute(type, fs, interactive); + if (retval) { + fprintf(stderr, _("%s: Error %d while executing fsck.%s " + "for %s\n"), progname, retval, type, fs->device); +@@ -924,40 +1021,70 @@ static int ignore(struct fs_info *fs) + return 0; + } + ++static int count_slaves(dev_t disk) ++{ ++ DIR *dir; ++ struct dirent *dp; ++ char dirname[PATH_MAX]; ++ int count = 0; ++ ++ snprintf(dirname, sizeof(dirname), ++ "/sys/dev/block/%u:%u/slaves/", ++ major(disk), minor(disk)); ++ ++ if (!(dir = opendir(dirname))) ++ return -1; ++ ++ while ((dp = readdir(dir)) != 0) { ++#ifdef _DIRENT_HAVE_D_TYPE ++ if (dp->d_type != DT_UNKNOWN && dp->d_type != DT_LNK) ++ continue; ++#endif ++ if (dp->d_name[0] == '.' && ++ ((dp->d_name[1] == 0) || ++ ((dp->d_name[1] == '.') && (dp->d_name[2] == 0)))) ++ continue; ++ ++ count++; ++ } ++ closedir(dir); ++ return count; ++} ++ + /* + * Returns TRUE if a partition on the same disk is already being + * checked. + */ +-static int device_already_active(char *device) ++static int disk_already_active(struct fs_info *fs) + { + struct fsck_instance *inst; +- char *base; + + if (force_all_parallel) + return 0; + +-#ifdef BASE_MD +- /* Don't check a soft raid disk with any other disk */ +- if (instance_list && +- (!strncmp(instance_list->device, BASE_MD, sizeof(BASE_MD)-1) || +- !strncmp(device, BASE_MD, sizeof(BASE_MD)-1))) ++ if (instance_list && instance_list->fs->stacked) ++ /* any instance for a stacked device is already running */ + return 1; +-#endif + +- base = base_device(device); ++ if (!fs->disk) { ++ fs->disk = get_disk(fs->device); ++ if (fs->disk) ++ fs->stacked = count_slaves(fs->disk); ++ } ++ + /* + * If we don't know the base device, assume that the device is + * already active if there are any fsck instances running. ++ * ++ * Don't check a stacked device with any other disk too. + */ +- if (!base) ++ if (!fs->disk || fs->stacked) + return (instance_list != 0); ++ + for (inst = instance_list; inst; inst = inst->next) { +- if (!inst->base_device || !strcmp(base, inst->base_device)) { +- free(base); ++ if (!inst->fs->disk || fs->disk == inst->fs->disk) + return 1; +- } + } +- free(base); + return 0; + } + +@@ -1038,7 +1165,7 @@ static int check_all(NOARGS) + * already been spawned, then we need to defer + * this to another pass. + */ +- if (device_already_active(fs->device)) { ++ if (disk_already_active(fs)) { + pass_done = 0; + continue; + } +@@ -1188,6 +1315,9 @@ static void PRS(int argc, char *argv[]) + } + } + break; ++ case 'l': ++ lockdisk++; ++ break; + case 'V': + verbose++; + break; +@@ -1298,6 +1428,12 @@ int main(int argc, char *argv[]) + if ((num_devices == 1) || (serialize)) + interactive = 1; + ++ if (lockdisk && (doall || num_devices > 1)) { ++ fprintf(stderr, _("%s: the -l option can be used with one " ++ "device only -- ignore\n"), progname); ++ lockdisk = 0; ++ } ++ + /* If -A was specified ("check all"), do that! */ + if (doall) + return check_all(); +diff -up util-linux-ng-2.18/fsck/fsck.h.kzak util-linux-ng-2.18/fsck/fsck.h +--- util-linux-ng-2.18/fsck/fsck.h.kzak 2010-03-18 23:11:23.000000000 +0100 ++++ util-linux-ng-2.18/fsck/fsck.h 2010-10-26 23:55:30.000000000 +0200 +@@ -44,6 +44,8 @@ struct fs_info { + int freq; + int passno; + int flags; ++ dev_t disk; ++ int stacked; + struct fs_info *next; + }; + +@@ -56,12 +58,12 @@ struct fs_info { + struct fsck_instance { + int pid; + int flags; ++ int lock; /* flock()ed whole disk file descriptor or -1 */ + int exit_status; + time_t start_time; + char * prog; + char * type; +- char * device; +- char * base_device; ++ struct fs_info *fs; + struct fsck_instance *next; + }; + +diff -up util-linux-ng-2.18/fsck/Makefile.am.kzak util-linux-ng-2.18/fsck/Makefile.am +--- util-linux-ng-2.18/fsck/Makefile.am.kzak 2010-05-24 12:33:46.000000000 +0200 ++++ util-linux-ng-2.18/fsck/Makefile.am 2010-10-26 23:55:30.000000000 +0200 +@@ -3,7 +3,7 @@ include $(top_srcdir)/config/include-Mak + sbin_PROGRAMS = fsck + dist_man_MANS = fsck.8 + +-fsck_SOURCES = base_device.c fsck.c fsck.h $(top_srcdir)/lib/ismounted.c \ ++fsck_SOURCES = fsck.c fsck.h $(top_srcdir)/lib/ismounted.c \ + $(top_srcdir)/lib/fsprobe.c $(top_srcdir)/lib/canonicalize.c + fsck_LDADD = + fsck_CFLAGS = $(AM_CFLAGS) +diff -up util-linux-ng-2.18/fsck/Makefile.in.kzak util-linux-ng-2.18/fsck/Makefile.in +--- util-linux-ng-2.18/fsck/Makefile.in.kzak 2010-10-26 23:56:04.000000000 +0200 ++++ util-linux-ng-2.18/fsck/Makefile.in 2010-10-26 23:56:15.000000000 +0200 +@@ -62,9 +62,8 @@ CONFIG_CLEAN_FILES = + CONFIG_CLEAN_VPATH_FILES = + am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man8dir)" + PROGRAMS = $(sbin_PROGRAMS) +-am_fsck_OBJECTS = fsck-base_device.$(OBJEXT) fsck-fsck.$(OBJEXT) \ +- fsck-ismounted.$(OBJEXT) fsck-fsprobe.$(OBJEXT) \ +- fsck-canonicalize.$(OBJEXT) ++am_fsck_OBJECTS = fsck-fsck.$(OBJEXT) fsck-ismounted.$(OBJEXT) \ ++ fsck-fsprobe.$(OBJEXT) fsck-canonicalize.$(OBJEXT) + fsck_OBJECTS = $(am_fsck_OBJECTS) + am__DEPENDENCIES_1 = + @BUILD_LIBBLKID_FALSE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) +@@ -204,6 +203,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ + PACKAGE_NAME = @PACKAGE_NAME@ + PACKAGE_STRING = @PACKAGE_STRING@ + PACKAGE_TARNAME = @PACKAGE_TARNAME@ ++PACKAGE_URL = @PACKAGE_URL@ + PACKAGE_VERSION = @PACKAGE_VERSION@ + PATH_SEPARATOR = @PATH_SEPARATOR@ + PERL = @PERL@ +@@ -315,7 +315,7 @@ ul_libmount_la = $(top_builddir)/shlibs/ + # mount.h is generated by ./configure script and stored in build directory + ul_libmount_incdir = $(ul_libmount_builddir) + dist_man_MANS = fsck.8 +-fsck_SOURCES = base_device.c fsck.c fsck.h $(top_srcdir)/lib/ismounted.c \ ++fsck_SOURCES = fsck.c fsck.h $(top_srcdir)/lib/ismounted.c \ + $(top_srcdir)/lib/fsprobe.c $(top_srcdir)/lib/canonicalize.c + + fsck_LDADD = $(am__append_1) $(am__append_3) +@@ -407,7 +407,6 @@ mostlyclean-compile: + distclean-compile: + -rm -f *.tab.c + +-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsck-base_device.Po@am__quote@ + @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsck-canonicalize.Po@am__quote@ + @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsck-fsck.Po@am__quote@ + @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsck-fsprobe.Po@am__quote@ +@@ -437,22 +436,6 @@ distclean-compile: + @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +-fsck-base_device.o: base_device.c +-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -MT fsck-base_device.o -MD -MP -MF $(DEPDIR)/fsck-base_device.Tpo -c -o fsck-base_device.o `test -f 'base_device.c' || echo '$(srcdir)/'`base_device.c +-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsck-base_device.Tpo $(DEPDIR)/fsck-base_device.Po +-@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='base_device.c' object='fsck-base_device.o' libtool=no @AMDEPBACKSLASH@ +-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +-@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -c -o fsck-base_device.o `test -f 'base_device.c' || echo '$(srcdir)/'`base_device.c +- +-fsck-base_device.obj: base_device.c +-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -MT fsck-base_device.obj -MD -MP -MF $(DEPDIR)/fsck-base_device.Tpo -c -o fsck-base_device.obj `if test -f 'base_device.c'; then $(CYGPATH_W) 'base_device.c'; else $(CYGPATH_W) '$(srcdir)/base_device.c'; fi` +-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsck-base_device.Tpo $(DEPDIR)/fsck-base_device.Po +-@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ +-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='base_device.c' object='fsck-base_device.obj' libtool=no @AMDEPBACKSLASH@ +-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +-@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -c -o fsck-base_device.obj `if test -f 'base_device.c'; then $(CYGPATH_W) 'base_device.c'; else $(CYGPATH_W) '$(srcdir)/base_device.c'; fi` +- + fsck-fsck.o: fsck.c + @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -MT fsck-fsck.o -MD -MP -MF $(DEPDIR)/fsck-fsck.Tpo -c -o fsck-fsck.o `test -f 'fsck.c' || echo '$(srcdir)/'`fsck.c + @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsck-fsck.Tpo $(DEPDIR)/fsck-fsck.Po +diff -up util-linux-ng-2.18/Makefile.am.kzak util-linux-ng-2.18/Makefile.am +--- util-linux-ng-2.18/Makefile.am.kzak 2010-03-18 23:11:23.000000000 +0100 ++++ util-linux-ng-2.18/Makefile.am 2010-10-26 23:55:30.000000000 +0200 +@@ -30,8 +30,10 @@ SUBDIRS += mount + endif + + if BUILD_FSCK ++if BUILD_LIBBLKID + SUBDIRS += fsck + endif ++endif + + ACLOCAL_AMFLAGS = -I m4 + diff --git a/util-linux-ng.spec b/util-linux-ng.spec index f30a19e..b71bacf 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -116,6 +116,8 @@ Patch9: util-linux-ng-2.18-agetty-baudrate.patch Patch10: util-linux-ng-2.18-agetty-clocal.patch # 618957 - ISO images listed in fstab are mounted twice at boot Patch11: util-linux-ng-2.17-mount-loopdev.patch +# backport from upstream, add -l (lock) support to fsck, requested by systemd +Patch12: util-linux-ng-2.18-fsck-wholedisk.patch %description The util-linux-ng package contains a large variety of low-level system @@ -233,6 +235,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch9 -p1 %patch10 -p1 %patch11 -p1 +%patch12 -p1 %build unset LINGUAS || : @@ -771,6 +774,7 @@ fi %changelog * Tue Oct 26 2010 Karel Zak 2.18-5 - fix #645640 - new "-s" parameter parsing in agetty does not work +- add -l (lock) support to fsck * Wed Aug 18 2010 Karel Zak 2.18-4 - fix #623685 - please extend agetty to not require a baud rate to be specified From 2dd9a9de2064c3cbb694d2f538f864dfade3b040 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Wed, 27 Oct 2010 00:36:28 +0200 Subject: [PATCH 10/15] 2.18-4.4: fix #645640 Signed-off-by: Karel Zak --- util-linux-ng-2.18-agetty-baudrate.patch | 127 +++++++++++++++++------ util-linux-ng-2.18-agetty-clocal.patch | 42 ++++---- util-linux-ng.spec | 6 +- 3 files changed, 117 insertions(+), 58 deletions(-) diff --git a/util-linux-ng-2.18-agetty-baudrate.patch b/util-linux-ng-2.18-agetty-baudrate.patch index 68397dd..72dc257 100644 --- a/util-linux-ng-2.18-agetty-baudrate.patch +++ b/util-linux-ng-2.18-agetty-baudrate.patch @@ -1,27 +1,50 @@ -From 848e5e6ce3978d921366b799d907a78a12299924 Mon Sep 17 00:00:00 2001 -From: Karel Zak -Date: Wed, 18 Aug 2010 09:02:03 +0200 -Subject: [PATCH] agetty: add -s to reuse existing baud rate -For example: + based on upstream patch: + + commit 848e5e6ce3978d921366b799d907a78a12299924 + Author: Karel Zak + Date: Wed Aug 18 09:02:03 2010 +0200 + + agetty: add -s to reuse existing baud rate + + For example: /sbin/agetty -s /dev/ttyS0 9600 -will reuse the speed the kernel configured on the port. If the setting -from kernel is useless (tty returns BREAK character) then the baud -rate from command line (9600) is used. + will reuse the speed the kernel configured on the port. If the setting + from kernel is useless (tty returns BREAK character) then the baud + rate from command line (9600) is used. -Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=623685 -Signed-off-by: Karel Zak ---- - login-utils/agetty.8 | 16 +++++----------- - login-utils/agetty.c | 22 ++++++++++++++-------- - 2 files changed, 19 insertions(+), 19 deletions(-) + Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=623685 + Signed-off-by: Karel Zak -diff --git a/login-utils/agetty.8 b/login-utils/agetty.8 -index 8761374..53037dd 100644 ---- a/login-utils/agetty.8 -+++ b/login-utils/agetty.8 + and + + commit e98f4af950a64db188e0a9f3eed20fefaa463a99 + Author: Karel Zak + Date: Fri Oct 22 21:24:50 2010 +0200 + + agetty: fix -s option (baud rate setup) + + The problem is pretty visible in strace output: + + broken version: + ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 + [...] + ioctl(0, SNDCTL_TMR_START or TCSETS, {B0 -opost -isig -icanon -echo ...}) = 0 + ^^^ + fixed version: + ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 + [...] + ioctl(0, SNDCTL_TMR_START or TCSETS, {B115200 -opost -isig -icanon -echo ...}) = 0 + + Reported-by: Jon Masters + Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=645640 + Signed-off-by: Karel Zak + +diff -up util-linux-ng-2.18/login-utils/agetty.8.kzak util-linux-ng-2.18/login-utils/agetty.8 +--- util-linux-ng-2.18/login-utils/agetty.8.kzak 2010-02-04 12:53:56.000000000 +0100 ++++ util-linux-ng-2.18/login-utils/agetty.8 2010-10-22 22:07:43.000000000 +0200 @@ -3,7 +3,7 @@ agetty \- alternative Linux getty @@ -48,7 +71,7 @@ index 8761374..53037dd 100644 .SH DESCRIPTION .ad -@@ -163,6 +153,10 @@ Force the line to be a local line with no need for carrier detect. This can +@@ -163,6 +153,10 @@ Force the line to be a local line with n be useful when you have a locally attached terminal where the serial line does not set the carrier detect signal. .TP @@ -59,10 +82,9 @@ index 8761374..53037dd 100644 \-U Turn on support for detecting an uppercase only terminal. This setting will detect a login name containing only capitals as indicating an uppercase -diff --git a/login-utils/agetty.c b/login-utils/agetty.c -index 39a1fd3..9fc389b 100644 ---- a/login-utils/agetty.c -+++ b/login-utils/agetty.c +diff -up util-linux-ng-2.18/login-utils/agetty.c.kzak util-linux-ng-2.18/login-utils/agetty.c +--- util-linux-ng-2.18/login-utils/agetty.c.kzak 2010-04-01 16:11:56.000000000 +0200 ++++ util-linux-ng-2.18/login-utils/agetty.c 2010-10-22 22:15:40.000000000 +0200 @@ -133,6 +133,7 @@ struct options { #define F_CUSTISSUE (1<<6) /* give alternative issue file */ #define F_NOPROMPT (1<<7) /* don't ask for login name! */ @@ -71,7 +93,7 @@ index 39a1fd3..9fc389b 100644 /* Storage for things detected while the login name was read. */ -@@ -203,7 +204,7 @@ void parse_args P_((int argc, char **argv, struct options *op)); +@@ -203,7 +204,7 @@ void parse_args P_((int argc, char **arg void parse_speeds P_((struct options *op, char *arg)); void update_utmp P_((char *line)); void open_tty P_((char *tty, struct termios *tp, int local)); @@ -108,7 +130,7 @@ index 39a1fd3..9fc389b 100644 case 't': /* time out */ if ((op->timeout = atoi(optarg)) <= 0) error(_("bad timeout value: %s"), optarg); -@@ -691,9 +695,8 @@ char gbuf[1024]; +@@ -691,11 +695,17 @@ char gbuf[1024]; char area[1024]; void @@ -118,22 +140,62 @@ index 39a1fd3..9fc389b 100644 - int speed; struct options *op; { ++ speed_t ispeed, ospeed; ++ ++ if (op->flags & F_KEEPSPEED) { ++ ispeed = cfgetispeed(tp); /* save the original setting */ ++ ospeed = cfgetospeed(tp); ++ } else ++ ospeed = ispeed = op->speeds[FIRST_SPEED]; -@@ -707,8 +710,11 @@ termio_init(tp, speed, op) + /* + * Initial termios settings: 8-bit characters, raw-mode, blocking i/o. +@@ -706,14 +716,20 @@ termio_init(tp, speed, op) + /* flush input and output queues, important for modems! */ (void) tcflush(0, TCIOFLUSH); ++ tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; ++ tp->c_cflag = CS8 | HUPCL | CREAD; - cfsetispeed(tp, speed); - cfsetospeed(tp, speed); + -+ if (!(op->flags & F_KEEPSPEED)) { -+ cfsetispeed(tp, op->speeds[FIRST_SPEED]); -+ cfsetospeed(tp, op->speeds[FIRST_SPEED]); -+ } ++ /* Note that the speed is stored in the c_cflag termios field, so we have ++ * set the speed always when the cflag se reseted. ++ */ ++ cfsetispeed(tp, ispeed); ++ cfsetospeed(tp, ospeed); ++ if (op->flags & F_LOCAL) { tp->c_cflag |= CLOCAL; } -@@ -1203,7 +1209,7 @@ bcode(s) + +- tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; + #ifdef HAVE_STRUCT_TERMIOS_C_LINE + tp->c_line = 0; + #endif +@@ -973,9 +989,18 @@ next_speed(tp, op) + struct termios *tp; + struct options *op; + { +- static int baud_index = FIRST_SPEED;/* current speed index */ ++ static int baud_index = -1; ++ ++ if (baud_index == -1) ++ /* ++ * if the F_KEEPSPEED flags is set then the FIRST_SPEED is not ++ * tested yet (see termio_init()). ++ */ ++ baud_index = (op->flags & F_KEEPSPEED) ? FIRST_SPEED : ++ 1 % op->numspeed; ++ else ++ baud_index = (baud_index + 1) % op->numspeed; + +- baud_index = (baud_index + 1) % op->numspeed; + cfsetispeed(tp, op->speeds[baud_index]); + cfsetospeed(tp, op->speeds[baud_index]); + (void) tcsetattr(0, TCSANOW, tp); +@@ -1203,7 +1228,7 @@ bcode(s) void usage() { @@ -142,6 +204,3 @@ index 39a1fd3..9fc389b 100644 exit(1); } --- -1.7.2 - diff --git a/util-linux-ng-2.18-agetty-clocal.patch b/util-linux-ng-2.18-agetty-clocal.patch index 1708e4d..5d0b677 100644 --- a/util-linux-ng-2.18-agetty-clocal.patch +++ b/util-linux-ng-2.18-agetty-clocal.patch @@ -1,30 +1,26 @@ -From e143d1f00497f0178a1febec8fb4aa7c842fa35a Mon Sep 17 00:00:00 2001 -From: Karel Zak -Date: Mon, 12 Jul 2010 11:57:55 +0200 -Subject: [PATCH] aggety: don't wipe CLOCAL flag -gettey should not clear the flag. It seems that the flag is -automatically enabled for serial consoles tht don't use CD signal. + backport of upstream patch: -Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=598631 -Signed-off-by: Karel Zak ---- - login-utils/agetty.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) + Commit: e143d1f00497f0178a1febec8fb4aa7c842fa35a + From: Karel Zak + Date: Mon, 12 Jul 2010 11:57:55 +0200 + Subject: [PATCH] aggety: don't wipe CLOCAL flag -diff --git a/login-utils/agetty.c b/login-utils/agetty.c -index 9fc389b..2541948 100644 ---- a/login-utils/agetty.c -+++ b/login-utils/agetty.c -@@ -709,7 +709,7 @@ termio_init(tp, op) - /* flush input and output queues, important for modems! */ - (void) tcflush(0, TCIOFLUSH); + gettey should not clear the flag. It seems that the flag is + automatically enabled for serial consoles tht don't use CD signal. + + Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=598631 + Signed-off-by: Karel Zak + +diff -up util-linux-ng-2.18/login-utils/agetty.c.kzak util-linux-ng-2.18/login-utils/agetty.c +--- util-linux-ng-2.18/login-utils/agetty.c.kzak 2010-10-22 21:51:31.000000000 +0200 ++++ util-linux-ng-2.18/login-utils/agetty.c 2010-10-22 21:51:31.000000000 +0200 +@@ -715,7 +715,7 @@ termio_init(tp, speed, op) + + tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; - tp->c_cflag = CS8 | HUPCL | CREAD; + tp->c_cflag = CS8 | HUPCL | CREAD | (tp->c_cflag & CLOCAL); - if (!(op->flags & F_KEEPSPEED)) { - cfsetispeed(tp, op->speeds[FIRST_SPEED]); --- -1.7.2 - + /* Note that the speed is stored in the c_cflag termios field, so we have + * set the speed always when the cflag se reseted. diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 34631b9..c587478 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4.3%{?dist} +Release: 4.4%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -110,6 +110,7 @@ Patch8: util-linux-ng-2.15-ipcs-32bit.patch ### Upstream Patches ### # 623685 - please extend agetty to not require a baud rate to be specified +# 645640 - new "-s" parameter parsing in agetty does not work Patch9: util-linux-ng-2.18-agetty-baudrate.patch # 598631 - shutdown, reboot, halt and C-A-D don't work Patch10: util-linux-ng-2.18-agetty-clocal.patch @@ -783,6 +784,9 @@ fi %changelog +* Wed Oct 27 2010 Karel Zak 2.18-4.4 +- fix #645640 - new "-s" parameter parsing in agetty does not work + * Mon Oct 11 2010 Karel Zak 2.18-4.3 - fix #641169 - cfdisk does not accept two-character partition type From 1a6ca1d9ab4fc90584b88afca06c3ca9d46fe57f Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Fri, 19 Nov 2010 13:46:39 +0100 Subject: [PATCH 11/15] 2.18-4.5: fix #563267 Signed-off-by: Karel Zak --- util-linux-ng-2.18-mount-context.patch | 120 +++++++++++++++++++++++++ util-linux-ng.spec | 8 +- 2 files changed, 127 insertions(+), 1 deletion(-) create mode 100644 util-linux-ng-2.18-mount-context.patch diff --git a/util-linux-ng-2.18-mount-context.patch b/util-linux-ng-2.18-mount-context.patch new file mode 100644 index 0000000..547a045 --- /dev/null +++ b/util-linux-ng-2.18-mount-context.patch @@ -0,0 +1,120 @@ +From 81a12d11efc8d0db248f3bbdb21acd58a0651262 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Fri, 19 Nov 2010 13:37:25 +0100 +Subject: [PATCH] mount: ignore *context= options on remount + +Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=563267 +Signed-off-by: Karel Zak +--- + mount/mount.c | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- + 1 files changed, 59 insertions(+), 3 deletions(-) + +diff --git a/mount/mount.c b/mount/mount.c +index 1c8a55f..c0023f3 100644 +--- a/mount/mount.c ++++ b/mount/mount.c +@@ -378,6 +378,56 @@ append_context(const char *optname, char *optdata, char **extra_opts) + freecon(raw); + return 0; + } ++ ++/* returns newly allocated string without *context= options */ ++static char *remove_context_options(char *opts) ++{ ++ char *begin = NULL, *end = NULL, *p; ++ int open_quote = 0, changed = 0; ++ ++ if (!opts) ++ return NULL; ++ ++ opts = xstrdup(opts); ++ ++ for (p = opts; p && *p; p++) { ++ if (!begin) ++ begin = p; /* begin of the option item */ ++ if (*p == '"') ++ open_quote ^= 1; /* reverse the status */ ++ if (open_quote) ++ continue; /* still in quoted block */ ++ if (*p == ',') ++ end = p; /* terminate the option item */ ++ else if (*(p + 1) == '\0') ++ end = p + 1; /* end of optstr */ ++ if (!begin || !end) ++ continue; ++ ++ if (strncmp(begin, "context=", 8) == 0 || ++ strncmp(begin, "fscontext=", 10) == 0 || ++ strncmp(begin, "defcontext=", 11) == 0 || ++ strncmp(begin, "rootcontext=", 12) == 0) { ++ size_t sz; ++ ++ if ((begin == opts || *(begin - 1) == ',') && *end == ',') ++ end++; ++ sz = strlen(end); ++ ++ memmove(begin, end, sz + 1); ++ if (!*begin && *(begin - 1) == ',') ++ *(begin - 1) = '\0'; ++ ++ p = begin; ++ changed = 1; ++ } ++ } ++ ++ if (changed && verbose) ++ printf (_("mount: SELinux *context= options are ignore on remount.\n")); ++ ++ return opts; ++} + #endif + + /* +@@ -1382,6 +1432,7 @@ try_mount_one (const char *spec0, const char *node0, const char *types0, + + parse_opts (opts, &flags, &extra_opts); + extra_opts1 = extra_opts; ++ mount_opts = extra_opts; + + /* quietly succeed for fstab entries that don't get mounted automatically */ + if (mount_all && (flags & MS_NOAUTO)) +@@ -1397,8 +1448,6 @@ try_mount_one (const char *spec0, const char *node0, const char *types0, + "%s is already mounted on %s\n"), + spec, node); + +- mount_opts = extra_opts; +- + if (opt_speed) + cdrom_setspeed(spec); + +@@ -1419,12 +1468,17 @@ try_mount_one (const char *spec0, const char *node0, const char *types0, + if (flags & (MS_BIND | MS_MOVE | MS_PROPAGATION)) + types = "none"; + ++#ifdef HAVE_LIBSELINUX ++ if ((flags & MS_REMOUNT) && mount_opts) ++ mount_opts = remove_context_options(mount_opts); ++#endif ++ + /* + * Call mount.TYPE for types that require a separate mount program. + * For the moment these types are ncpfs and smbfs. Maybe also vxfs. + * All such special things must occur isolated in the types string. + */ +- if (check_special_mountprog(spec, node, types, flags, extra_opts, &status)) { ++ if (check_special_mountprog(spec, node, types, flags, mount_opts, &status)) { + res = status; + goto out; + } +@@ -1718,6 +1772,8 @@ try_mount_one (const char *spec0, const char *node0, const char *types0, + } + #endif + ++ if (extra_opts1 != mount_opts) ++ my_free(mount_opts); + my_free(extra_opts1); + my_free(spec1); + my_free(node1); +-- +1.7.3.1 + diff --git a/util-linux-ng.spec b/util-linux-ng.spec index c587478..f8553a9 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4.4%{?dist} +Release: 4.5%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -126,6 +126,8 @@ Patch14: util-linux-ng-blkid-HFS.patch Patch15: util-linux-ng-2.18-mount-subtype.patch # 641169 - cfdisk does not accept two-character partition type Patch16: util-linux-ng-2.18-cfdisk-parttype.patch +# 563267 - Remount fails if current mount used the "context" option +Patch17: util-linux-ng-2.18-mount-context.patch %description The util-linux-ng package contains a large variety of low-level system @@ -248,6 +250,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch14 -p1 %patch15 -p1 %patch16 -p1 +%patch17 -p1 %build unset LINGUAS || : @@ -784,6 +787,9 @@ fi %changelog +* Fri Nov 19 2010 Karel Zak 2.18-4.5 +- fix #563267 - Remount fails if current mount used the "context" option + * Wed Oct 27 2010 Karel Zak 2.18-4.4 - fix #645640 - new "-s" parameter parsing in agetty does not work From a39df2aac5480acb3f40eee9e7ddaba943a83348 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Thu, 25 Nov 2010 13:09:35 +0100 Subject: [PATCH 12/15] 2.18-4.6: libblkid upstream fixes - backport upstream patch to fix wipefs(8) for LUKS - backport upstream patch to fix blkid cache usage Signed-off-by: Karel Zak --- util-linux-ng-2.18-blkid-offset.patch | 33 ++++++++++++ util-linux-ng-2.18-blkid-revalidate.patch | 63 +++++++++++++++++++++++ util-linux-ng.spec | 13 ++++- 3 files changed, 108 insertions(+), 1 deletion(-) create mode 100644 util-linux-ng-2.18-blkid-offset.patch create mode 100644 util-linux-ng-2.18-blkid-revalidate.patch diff --git a/util-linux-ng-2.18-blkid-offset.patch b/util-linux-ng-2.18-blkid-offset.patch new file mode 100644 index 0000000..900f2ab --- /dev/null +++ b/util-linux-ng-2.18-blkid-offset.patch @@ -0,0 +1,33 @@ +From 23489c26252f1c40407804e0cd4964835db18e8c Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Tue, 7 Sep 2010 11:30:50 +0200 +Subject: [PATCH] libblkid: don't ignore zero for SBMAGIC_OFFSET + +The side effect of this bug is that wipefs(8) does not report LUKS... + +Signed-off-by: Karel Zak +--- + shlibs/blkid/src/superblocks/superblocks.c | 7 +++---- + 1 files changed, 3 insertions(+), 4 deletions(-) + +diff --git a/shlibs/blkid/src/superblocks/superblocks.c b/shlibs/blkid/src/superblocks/superblocks.c +index 3d66d98..95c10d6 100644 +--- a/shlibs/blkid/src/superblocks/superblocks.c ++++ b/shlibs/blkid/src/superblocks/superblocks.c +@@ -487,10 +487,9 @@ int blkid_probe_set_magic(blkid_probe pr, blkid_loff_t offset, + int rc = 0; + struct blkid_chain *chn = blkid_probe_get_chain(pr); + +- if (chn->flags & BLKID_SUBLKS_MAGIC) { +- if (magic && len) +- rc = blkid_probe_set_value(pr, "SBMAGIC", magic, len); +- if (!rc && offset) ++ if (magic && len && (chn->flags & BLKID_SUBLKS_MAGIC)) { ++ rc = blkid_probe_set_value(pr, "SBMAGIC", magic, len); ++ if (!rc) + rc = blkid_probe_sprintf_value(pr, "SBMAGIC_OFFSET", + "%llu", offset); + } +-- +1.7.3.1 + diff --git a/util-linux-ng-2.18-blkid-revalidate.patch b/util-linux-ng-2.18-blkid-revalidate.patch new file mode 100644 index 0000000..22c7001 --- /dev/null +++ b/util-linux-ng-2.18-blkid-revalidate.patch @@ -0,0 +1,63 @@ +From e8fc977aba09ddbd89b25276fd777c3f0eef9299 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Tue, 23 Nov 2010 19:49:58 +0100 +Subject: [PATCH] libblkid: cache is incorrectly revalidated + +for example: + + # echo "password" | cryptsetup luksFormat /dev/loop7 + # blkid /dev/loop7 + /dev/loop7: UUID="09240a80-1cf1-456d-9a6e-a35b39dc1f2b" TYPE="crypto_LUKS" + + # pvcreate -ff /dev/loop7 + # blkid /dev/loop7 + # + +the second blkid call has to return info about LVM. + +Reported-by: Milan Broz +Signed-off-by: Karel Zak +--- + shlibs/blkid/src/blkidP.h | 2 +- + shlibs/blkid/src/probe.c | 9 ++++----- + 2 files changed, 5 insertions(+), 6 deletions(-) + +diff --git a/shlibs/blkid/src/blkidP.h b/shlibs/blkid/src/blkidP.h +index 6ac8910..956a84e 100644 +--- a/shlibs/blkid/src/blkidP.h ++++ b/shlibs/blkid/src/blkidP.h +@@ -437,7 +437,7 @@ extern size_t blkid_rtrim_whitespace(unsigned char *str); + ((bmp)[ blkid_bmp_idx_byte(item) ] |= blkid_bmp_idx_bit(item)) + + #define blkid_bmp_unset_item(bmp, item) \ +- ((bmp)[ bmp_idx_byte(item) ] &= ~bmp_idx_bit(item)) ++ ((bmp)[ blkid_bmp_idx_byte(item) ] &= ~blkid_bmp_idx_bit(item)) + + #define blkid_bmp_get_item(bmp, item) \ + ((bmp)[ blkid_bmp_idx_byte(item) ] & blkid_bmp_idx_bit(item)) +diff --git a/shlibs/blkid/src/probe.c b/shlibs/blkid/src/probe.c +index 3698b99..33e2fe1 100644 +--- a/shlibs/blkid/src/probe.c ++++ b/shlibs/blkid/src/probe.c +@@ -431,14 +431,13 @@ int __blkid_probe_invert_filter(blkid_probe pr, int chain) + struct blkid_chain *chn; + unsigned long *fltr; + +- fltr = blkid_probe_get_filter(pr, chain, FALSE); +- if (!fltr) +- return -1; +- + chn = &pr->chains[chain]; + ++ if (!chn->driver->has_fltr || !chn->fltr) ++ return -1; ++ + for (i = 0; i < blkid_bmp_nwords(chn->driver->nidinfos); i++) +- fltr[i] = ~fltr[i]; ++ chn->fltr[i] = ~chn->fltr[i]; + + DBG(DEBUG_LOWPROBE, printf("probing filter inverted\n")); + /* blkid_probe_dump_filter(pr, chain); */ +-- +1.7.3.1 + diff --git a/util-linux-ng.spec b/util-linux-ng.spec index f8553a9..16bf778 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4.5%{?dist} +Release: 4.6%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -128,6 +128,11 @@ Patch15: util-linux-ng-2.18-mount-subtype.patch Patch16: util-linux-ng-2.18-cfdisk-parttype.patch # 563267 - Remount fails if current mount used the "context" option Patch17: util-linux-ng-2.18-mount-context.patch +# fix wipefs(8) for LUKS +Patch18: util-linux-ng-2.18-blkid-offset.patch +# fix blkid cache usage +Patch19: util-linux-ng-2.18-blkid-revalidate.patch + %description The util-linux-ng package contains a large variety of low-level system @@ -251,6 +256,8 @@ cp %{SOURCE8} %{SOURCE9} . %patch15 -p1 %patch16 -p1 %patch17 -p1 +%patch18 -p1 +%patch19 -p1 %build unset LINGUAS || : @@ -787,6 +794,10 @@ fi %changelog +* Thu Nov 25 2010 Karel Zak 2.18-4.6 +- backport upstream patch to fix wipefs(8) for LUKS +- backport upstream patch to fix blkid cache usage + * Fri Nov 19 2010 Karel Zak 2.18-4.5 - fix #563267 - Remount fails if current mount used the "context" option From 610a3d4de5be5a184ad61c0c6a09220713d00d9e Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Wed, 12 Jan 2011 14:35:04 +0100 Subject: [PATCH 13/15] 2.18-4.7: improve RAIDs detection Signed-off-by: Karel Zak --- util-linux-ng-2.18-blkid-raid.patch | 12 ++++++++++++ util-linux-ng.spec | 9 +++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 util-linux-ng-2.18-blkid-raid.patch diff --git a/util-linux-ng-2.18-blkid-raid.patch b/util-linux-ng-2.18-blkid-raid.patch new file mode 100644 index 0000000..e66b2a6 --- /dev/null +++ b/util-linux-ng-2.18-blkid-raid.patch @@ -0,0 +1,12 @@ +diff -up util-linux-ng-2.18/shlibs/blkid/src/partitions/partitions.c.kzak util-linux-ng-2.18/shlibs/blkid/src/partitions/partitions.c +--- util-linux-ng-2.18/shlibs/blkid/src/partitions/partitions.c.kzak 2011-01-12 14:21:10.000000000 +0100 ++++ util-linux-ng-2.18/shlibs/blkid/src/partitions/partitions.c 2011-01-12 14:20:54.000000000 +0100 +@@ -833,7 +833,7 @@ int blkid_probe_is_covered_by_pt(blkid_p + for (i = 0; i < nparts; i++) { + blkid_partition par = &ls->parts[i]; + +- if (par->start + par->size > pr->size) { ++ if (par->start + par->size > (pr->size >> 9)) { + DBG(DEBUG_LOWPROBE, printf("partition #%d overflows " + "device (off=%lu size=%lu)\n", + par->partno, par->start, par->size)); diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 16bf778..8da638f 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4.6%{?dist} +Release: 4.7%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -132,7 +132,8 @@ Patch17: util-linux-ng-2.18-mount-context.patch Patch18: util-linux-ng-2.18-blkid-offset.patch # fix blkid cache usage Patch19: util-linux-ng-2.18-blkid-revalidate.patch - +# 543749 [+592958] - mdraid assembles incorrectly +Patch20: util-linux-ng-2.18-blkid-raid.patch %description The util-linux-ng package contains a large variety of low-level system @@ -258,6 +259,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch17 -p1 %patch18 -p1 %patch19 -p1 +%patch20 -p1 %build unset LINGUAS || : @@ -794,6 +796,9 @@ fi %changelog +* Wed Jan 12 2011 Karel Zak 2.18-4.7 +- improve raid member detection on patitioned raid devices (#543749) + * Thu Nov 25 2010 Karel Zak 2.18-4.6 - backport upstream patch to fix wipefs(8) for LUKS - backport upstream patch to fix blkid cache usage From d59979fa05e2402ffa389c4362d1cbcce0e55582 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Wed, 19 Jan 2011 10:13:23 +0100 Subject: [PATCH 14/15] retired Signed-off-by: Karel Zak --- dead.package | 2 + mount.tmpfs | 51 - nologin.8 | 63 - nologin.c | 58 - sources | 2 - util-linux-ng-2.13-ctrlaltdel-man.patch | 10 - util-linux-ng-2.13-fdformat-man-ide.patch | 23 - util-linux-ng-2.13-floppy-generic.patch | 102 - util-linux-ng-2.13-floppy-locale.patch | 10 - util-linux-ng-2.13-login-lastlog.patch | 13 - util-linux-ng-2.15-ipcs-32bit.patch | 48 - util-linux-ng-2.16-blkid-cachefile.patch | 78 - util-linux-ng-2.17-mount-loopdev.patch | 83 - util-linux-ng-2.18-agetty-baudrate.patch | 206 -- util-linux-ng-2.18-agetty-clocal.patch | 26 - util-linux-ng-2.18-fsck-wholedisk.patch | 510 ----- util-linux-ng-60-raw.rules | 11 - util-linux-ng-chsh-chfn.pamd | 6 - util-linux-ng-login.pamd | 16 - util-linux-ng-remote.pamd | 14 - util-linux-ng.spec | 2314 --------------------- uuidd.init | 117 -- 22 files changed, 2 insertions(+), 3761 deletions(-) create mode 100644 dead.package delete mode 100644 mount.tmpfs delete mode 100644 nologin.8 delete mode 100644 nologin.c delete mode 100644 sources delete mode 100644 util-linux-ng-2.13-ctrlaltdel-man.patch delete mode 100644 util-linux-ng-2.13-fdformat-man-ide.patch delete mode 100644 util-linux-ng-2.13-floppy-generic.patch delete mode 100644 util-linux-ng-2.13-floppy-locale.patch delete mode 100644 util-linux-ng-2.13-login-lastlog.patch delete mode 100644 util-linux-ng-2.15-ipcs-32bit.patch delete mode 100644 util-linux-ng-2.16-blkid-cachefile.patch delete mode 100644 util-linux-ng-2.17-mount-loopdev.patch delete mode 100644 util-linux-ng-2.18-agetty-baudrate.patch delete mode 100644 util-linux-ng-2.18-agetty-clocal.patch delete mode 100644 util-linux-ng-2.18-fsck-wholedisk.patch delete mode 100644 util-linux-ng-60-raw.rules delete mode 100644 util-linux-ng-chsh-chfn.pamd delete mode 100644 util-linux-ng-login.pamd delete mode 100644 util-linux-ng-remote.pamd delete mode 100644 util-linux-ng.spec delete mode 100755 uuidd.init diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..aca69ac --- /dev/null +++ b/dead.package @@ -0,0 +1,2 @@ + + util-linux-ng has been renamed to util-linux diff --git a/mount.tmpfs b/mount.tmpfs deleted file mode 100644 index 5495c9d..0000000 --- a/mount.tmpfs +++ /dev/null @@ -1,51 +0,0 @@ -#! /bin/bash -# -# Copyright (C) 2009 Eric Paris -# Daniel Walsh -# Karel Zak -# -# http://bugzilla.redhat.com/show_bug.cgi?id=476964 -# -# Usage: -# /sbin/mount.tmpfs spec dir [-sfnv] [-o options] -# - -case $1 in - -h|--help|-?) - echo "mount.tmpfs is a private mount(8) wrapper for tmpfs." - echo "Don't use it directly!" - exit 1 - ;; -esac - -restricted=1 - -if [ $UID -eq 0 ] && [ $UID -eq $EUID ]; then - restricted=0 -fi - -# mount(8) in restricted mode (for non-root users) does not allow to use any -# mount options, types or so on command line. We have to call mount(8) with -# mountpoint only. All necessary options have to be defined in /etc/fstab. -# -# https://bugzilla.redhat.com/show_bug.cgi?id=615719 -# -if [ $restricted -eq 1 ]; then - exec /bin/mount -i "$2" -fi - -# Remount with context mount options is unsupported -# http://bugzilla.redhat.com/show_bug.cgi?id=563267 -# -if ! echo "$@" | grep -q -E '\-o.*remount'; then - - if ! echo "$@" | grep -q -E '(fs|def|root)?context='; then - con=$(ls --scontext -d "$2" | cut -f 1 -d ' ') - if [ -n "$con" ] && [ "$con" != "?" ] && [ "$con" != "unlabeled" ]; then - exec /bin/mount "$@" -o "rootcontext=\"$con\"" -i -t tmpfs - fi - fi - -fi - -exec /bin/mount "$@" -i -t tmpfs diff --git a/nologin.8 b/nologin.8 deleted file mode 100644 index 5cb1601..0000000 --- a/nologin.8 +++ /dev/null @@ -1,63 +0,0 @@ -.\" $OpenBSD: nologin.8,v 1.8 1999/06/04 02:45:19 aaron Exp $ -.\" $NetBSD: nologin.8,v 1.3 1995/03/18 14:59:09 cgd Exp $ -.\" -.\" Copyright (c) 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)nologin.8 8.1 (Berkeley) 6/19/93 -.\" -.Dd February 15, 1997 -.Dt NOLOGIN 8 -.Os -.Sh NAME -.Nm nologin -.Nd politely refuse a login -.Sh SYNOPSIS -.Nm nologin -.Sh DESCRIPTION -.Nm -displays a message that an account is not available and -exits non-zero. -It is intended as a replacement shell field for accounts that -have been disabled. -.Pp -If the file -.Pa /etc/nologin.txt -exists, -.Nm -displays its contents to the user instead of the default message. -.Sh SEE ALSO -.Xr login 1 -.Sh HISTORY -The -.Nm -command appeared in -.Bx 4.4 . diff --git a/nologin.c b/nologin.c deleted file mode 100644 index 8a51ba9..0000000 --- a/nologin.c +++ /dev/null @@ -1,58 +0,0 @@ -/* $OpenBSD: nologin.c,v 1.2 1997/04/04 16:51:37 millert Exp $ */ - -/* - * Copyright (c) 1997, Jason Downs. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS - * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, - * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include -#include -#include -#include -#include - -/* Distinctly different from _PATH_NOLOGIN. */ -#define _PATH_NOLOGIN_TXT "/etc/nologin.txt" - -#define DEFAULT_MESG "This account is currently not available.\n" - -/*ARGSUSED*/ -int main(argc, argv) - int argc; - char *argv[]; -{ - int nfd, nrd; - char nbuf[128]; - - nfd = open(_PATH_NOLOGIN_TXT, O_RDONLY); - if (nfd < 0) { - write(STDOUT_FILENO, DEFAULT_MESG, strlen(DEFAULT_MESG)); - exit (1); - } - - while ((nrd = read(nfd, nbuf, sizeof(nbuf))) > 0) - write(STDOUT_FILENO, nbuf, nrd); - close (nfd); - - exit (1); -} diff --git a/sources b/sources deleted file mode 100644 index 0384138..0000000 --- a/sources +++ /dev/null @@ -1,2 +0,0 @@ -7eeb9a6f7a258174bf0fa80f1370788d floppy-0.16.tar.bz2 -2f5f71e6af969d041d73ab778c141a77 util-linux-ng-2.18.tar.bz2 diff --git a/util-linux-ng-2.13-ctrlaltdel-man.patch b/util-linux-ng-2.13-ctrlaltdel-man.patch deleted file mode 100644 index ab7c6bd..0000000 --- a/util-linux-ng-2.13-ctrlaltdel-man.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- util-linux-2.13-pre6/sys-utils/ctrlaltdel.8.kzak 2006-08-10 12:23:53.000000000 +0200 -+++ util-linux-2.13-pre6/sys-utils/ctrlaltdel.8 2006-08-10 12:24:08.000000000 +0200 -@@ -32,7 +32,6 @@ - .SH FILES - .I /etc/rc.local - .SH "SEE ALSO" --.BR simpleinit (8), - .BR init (8) - .SH AUTHOR - Peter Orbaek (poe@daimi.aau.dk) diff --git a/util-linux-ng-2.13-fdformat-man-ide.patch b/util-linux-ng-2.13-fdformat-man-ide.patch deleted file mode 100644 index 1116641..0000000 --- a/util-linux-ng-2.13-fdformat-man-ide.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- util-linux-ng-2.13-rc3/disk-utils/fdformat.8.xxx 2007-07-03 01:56:04.000000000 +0200 -+++ util-linux-ng-2.13-rc3/disk-utils/fdformat.8 2007-08-13 12:07:58.000000000 +0200 -@@ -45,6 +45,10 @@ - .BR setfdprm (8) - to load the disk parameters. - -+For ATAPI IDE floppy driver (also known as LS-120 drives or "Superdisk" -+drives) you have to use the -+.BR floppy (8). -+ - .SH OPTIONS - .TP - .B \-n -@@ -54,7 +58,8 @@ - .BR fd (4), - .BR setfdprm (8), - .BR mkfs (8), --.BR emkfs (8) -+.BR emkfs (8), -+.BR floppy (8) - .SH AUTHOR - Werner Almesberger (almesber@nessie.cs.id.ethz.ch) - .SH AVAILABILITY diff --git a/util-linux-ng-2.13-floppy-generic.patch b/util-linux-ng-2.13-floppy-generic.patch deleted file mode 100644 index ffc4750..0000000 --- a/util-linux-ng-2.13-floppy-generic.patch +++ /dev/null @@ -1,102 +0,0 @@ ---- util-linux-2.12p/floppy-0.16/floppyfloppy.c.generic 2001-02-13 01:15:38.000000000 +0100 -+++ util-linux-2.12p/floppy-0.16/floppyfloppy.c 2005-09-30 15:38:08.000000000 +0200 -@@ -264,6 +264,33 @@ - #endif - } - -+/* -1=error, 1=true, 0=false */ -+static int check_generic(const char *dev, int n) -+{ -+ struct floppy_struct param; -+ int fd; -+ -+ if ((fd=open(dev, O_RDONLY)) < 0) -+ { -+ perror(dev); -+ return -1; -+ } -+ if (ioctl(fd,FDGETPRM,(long) ¶m) < 0) -+ { -+ perror(dev); -+ close(fd); -+ return -1; -+ } -+ close(fd); -+ -+ if (param.sect==floppy_type[n].sectors && -+ param.head==floppy_type[n].heads && -+ param.track==floppy_type[n].tracks) -+ /* generic device uses expected format */ -+ return 1; -+ -+ return 0; -+} - - static int do_format(const char *dev, int fmtnum, - int (*fmt_func)(const char *, int), int flags) -@@ -275,6 +302,7 @@ - struct format_descr curtrack; - int pct; - struct stat stat_buf; -+ int gen = 0; - - int i, j; - char *devname; -@@ -297,23 +325,52 @@ - - strcat(strcpy(devname, dev), floppy_type[fmtnum].dev); - -+ if (stat(devname, &stat_buf)==-1 && errno==ENOENT) -+ { -+ /* /dev/fd0xxxxx doesn't exist ...try to use generic device -+ * -+ * Note: we needn't size specific device if the generic device uses -+ * right floppy format (FDGETPRM). -- Karel Zak [30/09/2005] -+ */ -+ if ((gen = check_generic(dev, fmtnum))==1) /* true */ -+ { -+ fprintf(stderr, _("WARNING: size specific device %s doesn't exist, using generic device: %s\n"), -+ devname, dev); -+ strcpy(devname, dev); -+ } -+ else if (gen==0) /* false */ -+ { -+ fprintf(stderr, _("ERROR: size specific device %1$s doesn't exist. Use \"MAKEDEV %1$s\" and try it again.\n"), devname); -+ return (1); -+ } -+ else /* error -- no floppy medium or device? */ -+ return(1); -+ } - fd=open(devname, O_WRONLY); - if (fd < 0) - { - perror(devname); - return (1); - } -- -- if (fstat(fd, &stat_buf) || -- !S_ISBLK(stat_buf.st_mode) || -- MINOR_DEV(stat_buf.st_rdev) != fmtnum) -+ if (fstat(fd, &stat_buf) < 0) -+ { -+ perror(devname); -+ close(fd); -+ return (1); -+ } -+ if (!S_ISBLK(stat_buf.st_mode)) -+ { -+ fprintf(stderr,_("%s: not a block device\n"), devname); -+ close(fd); -+ return (1); -+ } -+ if (gen==0 && MINOR_DEV(stat_buf.st_rdev) != fmtnum) - { - errno=EINVAL; - perror(devname); - close(fd); - return (1); - } -- - if (ioctl(fd, FDGETPRM, &geo) < 0) - { - perror(devname); diff --git a/util-linux-ng-2.13-floppy-locale.patch b/util-linux-ng-2.13-floppy-locale.patch deleted file mode 100644 index 9b8142f..0000000 --- a/util-linux-ng-2.13-floppy-locale.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- util-linux-ng-2.13-rc3/floppy-0.16/superfloppy.c.kzak 2001-07-14 05:26:16.000000000 +0200 -+++ util-linux-ng-2.13-rc3/floppy-0.16/superfloppy.c 2007-08-13 13:14:53.000000000 +0200 -@@ -12,6 +12,7 @@ - #include - #include - #include -+#include - #include - #include - #include diff --git a/util-linux-ng-2.13-login-lastlog.patch b/util-linux-ng-2.13-login-lastlog.patch deleted file mode 100644 index 548b99d..0000000 --- a/util-linux-ng-2.13-login-lastlog.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: util-linux-ng-2.14.2-rc1/login-utils/login.c -=================================================================== ---- util-linux-ng-2.14.2-rc1.orig/login-utils/login.c -+++ util-linux-ng-2.14.2-rc1/login-utils/login.c -@@ -1415,7 +1415,7 @@ dolastlog(int quiet) { - struct lastlog ll; - int fd; - -- if ((fd = open(_PATH_LASTLOG, O_RDWR, 0)) >= 0) { -+ if ((fd = open(_PATH_LASTLOG, O_RDWR|O_CREAT, 0)) >= 0) { - lseek(fd, (off_t)pwd->pw_uid * sizeof(ll), SEEK_SET); - if (!quiet) { - if (read(fd, (char *)&ll, sizeof(ll)) == sizeof(ll) && diff --git a/util-linux-ng-2.15-ipcs-32bit.patch b/util-linux-ng-2.15-ipcs-32bit.patch deleted file mode 100644 index c3860f1..0000000 --- a/util-linux-ng-2.15-ipcs-32bit.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up util-linux-ng-2.15.1-rc1/sys-utils/ipcs.c.kzak util-linux-ng-2.15.1-rc1/sys-utils/ipcs.c ---- util-linux-ng-2.15.1-rc1/sys-utils/ipcs.c.kzak 2009-03-25 13:19:08.000000000 +0100 -+++ util-linux-ng-2.15.1-rc1/sys-utils/ipcs.c 2009-06-04 15:22:48.000000000 +0200 -@@ -243,6 +243,26 @@ print_perms (int id, struct ipc_perm *ip - printf(" %-10d\n", ipcp->gid); - } - -+static unsigned long long -+shminfo_from_proc(const char *name, unsigned long def) -+{ -+ char path[256]; -+ char buf[64]; -+ FILE *f; -+ unsigned long long res = def; -+ -+ if (!name) -+ return res; -+ -+ snprintf(path, sizeof(path), "/proc/sys/kernel/%s", name); -+ -+ if (!(f = fopen(path, "r"))) -+ return res; -+ if (fgets(buf, sizeof(buf), f)) -+ res = atoll(buf); -+ fclose(f); -+ return res; -+} - - void do_shm (char format) - { -@@ -266,12 +286,12 @@ void do_shm (char format) - return; - /* glibc 2.1.3 and all earlier libc's have ints as fields - of struct shminfo; glibc 2.1.91 has unsigned long; ach */ -- printf (_("max number of segments = %lu\n"), -- (unsigned long) shminfo.shmmni); -- printf (_("max seg size (kbytes) = %lu\n"), -- (unsigned long) (shminfo.shmmax >> 10)); -+ printf (_("max number of segments = %llu\n"), -+ shminfo_from_proc("shmmni", shminfo.shmmni)); -+ printf (_("max seg size (kbytes) = %llu\n"), -+ (shminfo_from_proc("shmmax", shminfo.shmmax) >> 10)); - printf (_("max total shared memory (kbytes) = %llu\n"), -- getpagesize() / 1024 * (unsigned long long) shminfo.shmall); -+ getpagesize() / 1024 * shminfo_from_proc("shmall", shminfo.shmall)); - printf (_("min seg size (bytes) = %lu\n"), - (unsigned long) shminfo.shmmin); - return; diff --git a/util-linux-ng-2.16-blkid-cachefile.patch b/util-linux-ng-2.16-blkid-cachefile.patch deleted file mode 100644 index 7edd4e9..0000000 --- a/util-linux-ng-2.16-blkid-cachefile.patch +++ /dev/null @@ -1,78 +0,0 @@ ---- - misc-utils/blkid.8 | 4 ++-- - misc-utils/blkid.c | 2 +- - shlibs/blkid/libblkid.3 | 6 +++--- - shlibs/blkid/src/blkidP.h | 2 +- - 4 files changed, 7 insertions(+), 7 deletions(-) - ---- util-linux-ng-2.18-rc1.orig/misc-utils/blkid.8 -+++ util-linux-ng-2.18-rc1/misc-utils/blkid.8 -@@ -81,7 +81,7 @@ same meaning as "KiB") or decimal (10^N) - Read from - .I cachefile - instead of reading from the default cache file --.IR /etc/blkid.tab . -+.IR /etc/blkid/blkid.tab . - If you want to start with a clean cache (i.e. don't report devices previously - scanned but not necessarily available at this time), specify - .IR /dev/null . -@@ -228,7 +228,7 @@ Display version number and exit. - Write the device cache to - .I writecachefile - instead of writing it to the default cache file --.IR /etc/blkid.tab . -+.IR /etc/blkid/blkid.tab . - If you don't want to save the cache to the default file, specify - .IR /dev/null. - If not specified it will be the same file as that given by the ---- util-linux-ng-2.18-rc1.orig/misc-utils/blkid.c -+++ util-linux-ng-2.18-rc1/misc-utils/blkid.c -@@ -65,7 +65,7 @@ static void usage(int error) - " [-o format] [dev ...]\n\n" - " %1$s -i [-s ] [-o format] [dev ...]\n\n" - "Options:\n" -- " -c cache file (default: /etc/blkid.tab, /dev/null = none)\n" -+ " -c cache file (default: /etc/blkid/blkid.tab, /dev/null = none)\n" - " -h print this usage message and exit\n" - " -g garbage collect the blkid cache\n" - " -o output format; can be one of:\n" ---- util-linux-ng-2.18-rc1.orig/shlibs/blkid/libblkid.3 -+++ util-linux-ng-2.18-rc1/shlibs/blkid/libblkid.3 -@@ -24,7 +24,7 @@ A common use is to allow use of LABEL= a - specific block device names into configuration files. - .P - Block device information is normally kept in a cache file --.I /etc/blkid.tab -+.I /etc/blkid/blkid.tab - and is verified to still be valid before being returned to the user - (if the user has read permission on the raw block device, otherwise not). - The cache file also allows unprivileged users (normally anyone other -@@ -59,7 +59,7 @@ symlink does not match with LABEL or UUI - .I CACHE_FILE= - Overrides the standard location of the cache file. This setting can be - overridden by the environment variable BLKID_FILE. Default is --.I /etc/blkid.tab. -+.I /etc/blkid/blkid.tab. - .TP - .I EVALUATE= - Defines LABEL and UUID evaluation method(s). Currently, the libblkid library -@@ -77,7 +77,7 @@ from Ted Ts'o. The library was subseque - The low-level probing code was rewritten by Karel Zak. - .SH FILES - .TP 18 --.I /etc/blkid.tab -+.I /etc/blkid/blkid.tab - caches data extracted from each recognized block device - .TP - .I /etc/blkid.conf ---- util-linux-ng-2.18-rc1.orig/shlibs/blkid/src/blkidP.h -+++ util-linux-ng-2.18-rc1/shlibs/blkid/src/blkidP.h -@@ -279,7 +279,7 @@ extern int blkid_fstatat(DIR *dir, const - extern int blkid_openat(DIR *dir, const char *dirname, const char *filename, - int flags); - --#define BLKID_CACHE_FILE "/etc/blkid.tab" -+#define BLKID_CACHE_FILE "/etc/blkid/blkid.tab" - #define BLKID_CONFIG_FILE "/etc/blkid.conf" - - #define BLKID_ERR_IO 5 diff --git a/util-linux-ng-2.17-mount-loopdev.patch b/util-linux-ng-2.17-mount-loopdev.patch deleted file mode 100644 index e898b3e..0000000 --- a/util-linux-ng-2.17-mount-loopdev.patch +++ /dev/null @@ -1,83 +0,0 @@ -diff -up util-linux-ng-2.17.2/mount/mount.c.kzak util-linux-ng-2.17.2/mount/mount.c ---- util-linux-ng-2.17.2/mount/mount.c.kzak 2010-03-22 09:10:56.000000000 +0100 -+++ util-linux-ng-2.17.2/mount/mount.c 2010-07-29 16:15:28.000000000 +0200 -@@ -1090,7 +1090,8 @@ loop_check(const char **spec, const char - if (verbose) - printf(_("mount: skipping the setup of a loop device\n")); - } else { -- int loop_opts = SETLOOP_AUTOCLEAR; /* always attempt autoclear */ -+ /* use autoclear loopdev on system without regular mtab only */ -+ int loop_opts = mtab_is_writable() ? 0 : SETLOOP_AUTOCLEAR; - int res; - - if (*flags & MS_RDONLY) -@@ -1759,6 +1760,50 @@ mounted (const char *spec0, const char * - return ret; - } - -+/* returns 0 if not mounted, 1 if mounted and -1 in case of error */ -+static int -+is_fstab_entry_mounted(struct mntentchn *mc, int verbose) -+{ -+ struct stat st; -+ -+ if (mounted(mc->m.mnt_fsname, mc->m.mnt_dir)) -+ goto yes; -+ -+ /* extra care for loop devices */ -+ if ((strstr(mc->m.mnt_opts, "loop=") || -+ (stat(mc->m.mnt_fsname, &st) == 0 && S_ISREG(st.st_mode)))) { -+ -+ char *p = strstr(mc->m.mnt_opts, "offset="); -+ uintmax_t offset = 0; -+ -+ if (p && *(p + 7)) { -+ char *end = NULL; -+ -+ p += 7; -+ errno = 0; -+ offset = strtoumax(p, &end, 0); -+ -+ if (end == p || (errno != 0 && -+ (offset == UINTMAX_MAX || offset == 0))) { -+ if (verbose) -+ printf(_("mount: ignore %s " -+ "(unparsable offset= option)\n"), -+ mc->m.mnt_fsname); -+ return -1; -+ } -+ } -+ if (is_mounted_same_loopfile(mc->m.mnt_dir, mc->m.mnt_fsname, offset)) -+ goto yes; -+ } -+ -+ return 0; -+yes: -+ if (verbose) -+ printf(_("mount: %s already mounted on %s\n"), -+ mc->m.mnt_fsname, mc->m.mnt_dir); -+ return 1; -+} -+ - /* avoid using stat() on things we are not going to mount anyway.. */ - static int - has_noauto (const char *opts) { -@@ -1804,16 +1849,8 @@ do_mount_all (char *types, char *options - if (matching_type (mc->m.mnt_type, types) - && matching_opts (mc->m.mnt_opts, test_opts) - && !streq (mc->m.mnt_dir, "/") -- && !streq (mc->m.mnt_dir, "root")) { -- -- if (mounted (mc->m.mnt_fsname, mc->m.mnt_dir)) { -- if (verbose) -- printf(_("mount: %s already mounted " -- "on %s\n"), -- mc->m.mnt_fsname, -- mc->m.mnt_dir); -- continue; -- } -+ && !streq (mc->m.mnt_dir, "root") -+ && !is_fstab_entry_mounted(mc, verbose)) { - - mtmp = (struct mntentchn *) xmalloc(sizeof(*mtmp)); - *mtmp = *mc; diff --git a/util-linux-ng-2.18-agetty-baudrate.patch b/util-linux-ng-2.18-agetty-baudrate.patch deleted file mode 100644 index 72dc257..0000000 --- a/util-linux-ng-2.18-agetty-baudrate.patch +++ /dev/null @@ -1,206 +0,0 @@ - - based on upstream patch: - - commit 848e5e6ce3978d921366b799d907a78a12299924 - Author: Karel Zak - Date: Wed Aug 18 09:02:03 2010 +0200 - - agetty: add -s to reuse existing baud rate - - For example: - - /sbin/agetty -s /dev/ttyS0 9600 - - will reuse the speed the kernel configured on the port. If the setting - from kernel is useless (tty returns BREAK character) then the baud - rate from command line (9600) is used. - - Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=623685 - Signed-off-by: Karel Zak - - and - - commit e98f4af950a64db188e0a9f3eed20fefaa463a99 - Author: Karel Zak - Date: Fri Oct 22 21:24:50 2010 +0200 - - agetty: fix -s option (baud rate setup) - - The problem is pretty visible in strace output: - - broken version: - ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 - [...] - ioctl(0, SNDCTL_TMR_START or TCSETS, {B0 -opost -isig -icanon -echo ...}) = 0 - ^^^ - fixed version: - ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B115200 opost isig icanon echo ...}) = 0 - [...] - ioctl(0, SNDCTL_TMR_START or TCSETS, {B115200 -opost -isig -icanon -echo ...}) = 0 - - Reported-by: Jon Masters - Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=645640 - Signed-off-by: Karel Zak - -diff -up util-linux-ng-2.18/login-utils/agetty.8.kzak util-linux-ng-2.18/login-utils/agetty.8 ---- util-linux-ng-2.18/login-utils/agetty.8.kzak 2010-02-04 12:53:56.000000000 +0100 -+++ util-linux-ng-2.18/login-utils/agetty.8 2010-10-22 22:07:43.000000000 +0200 -@@ -3,7 +3,7 @@ - agetty \- alternative Linux getty - - .SH SYNOPSIS --.BR "agetty " [\-8ihLmnUw] -+.BR "agetty " [\-8ihLmnsUw] - .RI "[-f " issue_file ] - .RI "[-l " login_program ] - .RI "[-I " init ] -@@ -12,16 +12,6 @@ agetty \- alternative Linux getty - .I port - .I baud_rate,... - .RI [ term ] --.br --.BR "agetty " [\-8ihLmnw] --.RI "[-f " issue_file ] --.RI "[-l " login_program ] --.RI "[-I " init ] --.RI "[-t " timeout ] --.RI "[-H " login_host ] --.I baud_rate,... --.I port --.RI [ term ] - - .SH DESCRIPTION - .ad -@@ -163,6 +153,10 @@ Force the line to be a local line with n - be useful when you have a locally attached terminal where the serial line - does not set the carrier detect signal. - .TP -+\-s -+Try to keep the existing baud rate. The baud rates from -+the command line are used when agetty receives a BREAK character. -+.TP - \-U - Turn on support for detecting an uppercase only terminal. This setting will - detect a login name containing only capitals as indicating an uppercase -diff -up util-linux-ng-2.18/login-utils/agetty.c.kzak util-linux-ng-2.18/login-utils/agetty.c ---- util-linux-ng-2.18/login-utils/agetty.c.kzak 2010-04-01 16:11:56.000000000 +0200 -+++ util-linux-ng-2.18/login-utils/agetty.c 2010-10-22 22:15:40.000000000 +0200 -@@ -133,6 +133,7 @@ struct options { - #define F_CUSTISSUE (1<<6) /* give alternative issue file */ - #define F_NOPROMPT (1<<7) /* don't ask for login name! */ - #define F_LCUC (1<<8) /* Support for *LCUC stty modes */ -+#define F_KEEPSPEED (1<<9) /* Follow baud rate from kernel */ - - /* Storage for things detected while the login name was read. */ - -@@ -203,7 +204,7 @@ void parse_args P_((int argc, char **arg - void parse_speeds P_((struct options *op, char *arg)); - void update_utmp P_((char *line)); - void open_tty P_((char *tty, struct termios *tp, int local)); --void termio_init P_((struct termios *tp, int speed, struct options *op)); -+void termio_init P_((struct termios *tp, struct options *op)); - void auto_baud P_((struct termios *tp)); - void do_prompt P_((struct options *op, struct termios *tp)); - void next_speed P_((struct termios *tp, struct options *op)); -@@ -297,7 +298,7 @@ main(argc, argv) - tcsetpgrp(0, getpid()); - /* Initialize the termios settings (raw mode, eight-bit, blocking i/o). */ - debug("calling termio_init\n"); -- termio_init(&termios, options.speeds[FIRST_SPEED], &options); -+ termio_init(&termios, &options); - - /* write the modem init string and DON'T flush the buffers */ - if (options.flags & F_INITSTRING) { -@@ -373,7 +374,7 @@ parse_args(argc, argv, op) - extern int optind; /* getopt */ - int c; - -- while (isascii(c = getopt(argc, argv, "8I:LH:f:hil:mt:wUn"))) { -+ while (isascii(c = getopt(argc, argv, "8I:LH:f:hil:mst:wUn"))) { - switch (c) { - case '8': - op->eightbits = 1; -@@ -443,6 +444,9 @@ parse_args(argc, argv, op) - case 'n': - op->flags |= F_NOPROMPT; - break; -+ case 's': -+ op->flags |= F_KEEPSPEED; /* keep kernel defined speed */ -+ break; - case 't': /* time out */ - if ((op->timeout = atoi(optarg)) <= 0) - error(_("bad timeout value: %s"), optarg); -@@ -691,11 +695,17 @@ char gbuf[1024]; - char area[1024]; - - void --termio_init(tp, speed, op) -+termio_init(tp, op) - struct termios *tp; -- int speed; - struct options *op; - { -+ speed_t ispeed, ospeed; -+ -+ if (op->flags & F_KEEPSPEED) { -+ ispeed = cfgetispeed(tp); /* save the original setting */ -+ ospeed = cfgetospeed(tp); -+ } else -+ ospeed = ispeed = op->speeds[FIRST_SPEED]; - - /* - * Initial termios settings: 8-bit characters, raw-mode, blocking i/o. -@@ -706,14 +716,20 @@ termio_init(tp, speed, op) - /* flush input and output queues, important for modems! */ - (void) tcflush(0, TCIOFLUSH); - -+ tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; -+ - tp->c_cflag = CS8 | HUPCL | CREAD; -- cfsetispeed(tp, speed); -- cfsetospeed(tp, speed); -+ -+ /* Note that the speed is stored in the c_cflag termios field, so we have -+ * set the speed always when the cflag se reseted. -+ */ -+ cfsetispeed(tp, ispeed); -+ cfsetospeed(tp, ospeed); -+ - if (op->flags & F_LOCAL) { - tp->c_cflag |= CLOCAL; - } - -- tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; - #ifdef HAVE_STRUCT_TERMIOS_C_LINE - tp->c_line = 0; - #endif -@@ -973,9 +989,18 @@ next_speed(tp, op) - struct termios *tp; - struct options *op; - { -- static int baud_index = FIRST_SPEED;/* current speed index */ -+ static int baud_index = -1; -+ -+ if (baud_index == -1) -+ /* -+ * if the F_KEEPSPEED flags is set then the FIRST_SPEED is not -+ * tested yet (see termio_init()). -+ */ -+ baud_index = (op->flags & F_KEEPSPEED) ? FIRST_SPEED : -+ 1 % op->numspeed; -+ else -+ baud_index = (baud_index + 1) % op->numspeed; - -- baud_index = (baud_index + 1) % op->numspeed; - cfsetispeed(tp, op->speeds[baud_index]); - cfsetospeed(tp, op->speeds[baud_index]); - (void) tcsetattr(0, TCSANOW, tp); -@@ -1203,7 +1228,7 @@ bcode(s) - void - usage() - { -- fprintf(stderr, _("Usage: %s [-8hiLmUw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] baud_rate,... line [termtype]\nor\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] line baud_rate,... [termtype]\n"), progname); -+ fprintf(stderr, _("Usage: %s [-8hiLmsUw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] baud_rate,... line [termtype]\nor\t[-hiLmw] [-l login_program] [-t timeout] [-I initstring] [-H login_host] line baud_rate,... [termtype]\n"), progname); - exit(1); - } - diff --git a/util-linux-ng-2.18-agetty-clocal.patch b/util-linux-ng-2.18-agetty-clocal.patch deleted file mode 100644 index 5d0b677..0000000 --- a/util-linux-ng-2.18-agetty-clocal.patch +++ /dev/null @@ -1,26 +0,0 @@ - - backport of upstream patch: - - Commit: e143d1f00497f0178a1febec8fb4aa7c842fa35a - From: Karel Zak - Date: Mon, 12 Jul 2010 11:57:55 +0200 - Subject: [PATCH] aggety: don't wipe CLOCAL flag - - gettey should not clear the flag. It seems that the flag is - automatically enabled for serial consoles tht don't use CD signal. - - Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=598631 - Signed-off-by: Karel Zak - -diff -up util-linux-ng-2.18/login-utils/agetty.c.kzak util-linux-ng-2.18/login-utils/agetty.c ---- util-linux-ng-2.18/login-utils/agetty.c.kzak 2010-10-22 21:51:31.000000000 +0200 -+++ util-linux-ng-2.18/login-utils/agetty.c 2010-10-22 21:51:31.000000000 +0200 -@@ -715,7 +715,7 @@ termio_init(tp, speed, op) - - tp->c_iflag = tp->c_lflag = tp->c_oflag = 0; - -- tp->c_cflag = CS8 | HUPCL | CREAD; -+ tp->c_cflag = CS8 | HUPCL | CREAD | (tp->c_cflag & CLOCAL); - - /* Note that the speed is stored in the c_cflag termios field, so we have - * set the speed always when the cflag se reseted. diff --git a/util-linux-ng-2.18-fsck-wholedisk.patch b/util-linux-ng-2.18-fsck-wholedisk.patch deleted file mode 100644 index 3718255..0000000 --- a/util-linux-ng-2.18-fsck-wholedisk.patch +++ /dev/null @@ -1,510 +0,0 @@ -diff -up util-linux-ng-2.18/fsck/fsck.8.kzak util-linux-ng-2.18/fsck/fsck.8 ---- util-linux-ng-2.18/fsck/fsck.8.kzak 2010-06-30 12:51:35.000000000 +0200 -+++ util-linux-ng-2.18/fsck/fsck.8 2010-10-26 23:55:30.000000000 +0200 -@@ -7,7 +7,7 @@ - fsck \- check and repair a Linux file system - .SH SYNOPSIS - .B fsck --.RB [ \-sAVRTMNP ] -+.RB [ \-lsAVRTMNP ] - .RB [ \-C - .RI [ fd ]] - .RB [ \-t -@@ -80,6 +80,17 @@ variable. Please see the file system-sp - further details. - .SH OPTIONS - .TP -+.B \-l -+Lock whole-disk device by exclusive -+.BR flock (2). -+This option can be used with one device only (e.g. -A and -l are mutually -+exclusive). This option is recommended when more -+.B fsck (8) -+instances are executed in the same time. The option is ignored when used for -+multiple devices or for non-rotating disk. The fsck does not lock underlying -+devices if executed to check stacked devices (e.g. MD or DM) -- this feature is -+not implemented yet. -+.TP - .B \-s - Serialize - .B fsck -@@ -200,6 +211,11 @@ If there are multiple filesystems with t - fsck will attempt to check them in parallel, although it will avoid running - multiple filesystem checks on the same physical disk. - .sp -+.B fsck -+does not check stacked devices (RAIDs, dm-crypt, ...) in parallel with any other -+device. See below for FSCK_FORCE_ALL_PARALLEL setting. The /sys filesystem is -+used to detemine dependencies between devices. -+.sp - Hence, a very common configuration in - .I /etc/fstab - files is to set the root filesystem to have a -@@ -366,10 +382,10 @@ program's behavior is affected by the fo - .B FSCK_FORCE_ALL_PARALLEL - If this environment variable is set, - .B fsck --will attempt to run all of the specified filesystems in parallel, --regardless of whether the filesystems appear to be on the same --device. (This is useful for RAID systems or high-end storage systems --such as those sold by companies such as IBM or EMC.) -+will attempt to run all of the specified filesystems in parallel, regardless of -+whether the filesystems appear to be on the same device. (This is useful for -+RAID systems or high-end storage systems such as those sold by companies such -+as IBM or EMC.) Note that the fs_passno value is still used. - .TP - .B FSCK_MAX_INST - This environment variable will limit the maximum number of file system -diff -up util-linux-ng-2.18/fsck/fsck.c.kzak util-linux-ng-2.18/fsck/fsck.c ---- util-linux-ng-2.18/fsck/fsck.c.kzak 2010-05-19 23:36:23.000000000 +0200 -+++ util-linux-ng-2.18/fsck/fsck.c 2010-10-26 23:55:30.000000000 +0200 -@@ -31,6 +31,8 @@ - #include - #include - #include -+#include -+#include - #include - #include - #include -@@ -42,6 +44,8 @@ - #include - #include - #include -+#include -+#include - - #include "fsprobe.h" - -@@ -85,6 +89,7 @@ char *devices[MAX_DEVICES]; - char *args[MAX_ARGS]; - int num_devices, num_args; - -+int lockdisk = 0; - int verbose = 0; - int doall = 0; - int noexecute = 0; -@@ -214,11 +219,97 @@ static void parse_escape(char *word) - *q = 0; - } - -+static dev_t get_disk(const char *device) -+{ -+ struct stat st; -+ dev_t disk; -+ -+ if (!stat(device, &st) && -+ !blkid_devno_to_wholedisk(st.st_rdev, NULL, 0, &disk)) -+ return disk; -+ -+ return 0; -+} -+ -+static int is_irrotational_disk(dev_t disk) -+{ -+ char path[PATH_MAX]; -+ FILE *f; -+ int rc, x; -+ -+ rc = snprintf(path, sizeof(path), -+ "/sys/dev/block/%d:%d/queue/rotational", -+ major(disk), minor(disk)); -+ -+ if (rc < 0 || rc + 1 > sizeof(path)) -+ return 0; -+ -+ f = fopen(path, "r"); -+ if (!f) -+ return 0; -+ -+ rc = fscanf(f, "%u", &x); -+ fclose(f); -+ -+ return rc == 1 ? !x : 0; -+} -+ -+static void lock_disk(struct fsck_instance *inst) -+{ -+ dev_t disk = inst->fs->disk ? : get_disk(inst->fs->device); -+ char *diskname; -+ -+ if (!disk || is_irrotational_disk(disk)) -+ return; -+ -+ diskname = blkid_devno_to_devname(disk); -+ if (!diskname) -+ return; -+ -+ if (verbose) -+ printf(_("Locking disk %s ... "), diskname); -+ -+ inst->lock = open(diskname, O_CLOEXEC | O_RDONLY); -+ if (inst->lock >= 0) { -+ int rc = -1; -+ -+ /* inform users that we're waiting on the lock */ -+ if (verbose && -+ (rc = flock(inst->lock, LOCK_EX | LOCK_NB)) != 0 && -+ errno == EWOULDBLOCK) -+ printf(_("(waiting) ")); -+ -+ if (rc != 0 && flock(inst->lock, LOCK_EX) != 0) { -+ close(inst->lock); /* failed */ -+ inst->lock = -1; -+ } -+ } -+ -+ if (verbose) -+ printf("%s.\n", inst->lock >= 0 ? _("success") : _("failed")); -+ -+ free(diskname); -+ return; -+} -+ -+static void unlock_disk(struct fsck_instance *inst) -+{ -+ if (inst->lock >= 0) { -+ /* explicitly unlock, don't rely on close(), maybe some library -+ * (e.g. liblkid) has still open the device. -+ */ -+ flock(inst->lock, LOCK_UN); -+ close(inst->lock); -+ } -+} -+ -+ -+ - static void free_instance(struct fsck_instance *i) - { -+ if (lockdisk) -+ unlock_disk(i); - free(i->prog); -- free(i->device); -- free(i->base_device); - free(i); - return; - } -@@ -240,6 +331,8 @@ static struct fs_info *create_fs_device( - fs->passno = passno; - fs->flags = 0; - fs->next = NULL; -+ fs->disk = 0; -+ fs->stacked = 0; - - if (!filesys_info) - filesys_info = fs; -@@ -414,8 +507,7 @@ static int progress_active(NOARGS) - * Execute a particular fsck program, and link it into the list of - * child processes we are waiting for. - */ --static int execute(const char *type, const char *device, const char *mntpt, -- int interactive) -+static int execute(const char *type, struct fs_info *fs, int interactive) - { - char *s, *argv[80], prog[80]; - int argc, i; -@@ -452,7 +544,7 @@ static int execute(const char *type, con - } - } - -- argv[argc++] = string_copy(device); -+ argv[argc++] = string_copy(fs->device); - argv[argc] = 0; - - s = find_fsck(prog); -@@ -464,12 +556,19 @@ static int execute(const char *type, con - - if (verbose || noexecute) { - printf("[%s (%d) -- %s] ", s, num_running, -- mntpt ? mntpt : device); -+ fs->mountpt ? fs->mountpt : fs->device); - for (i=0; i < argc; i++) - printf("%s ", argv[i]); - printf("\n"); - } - -+ -+ inst->fs = fs; -+ inst->lock = -1; -+ -+ if (lockdisk) -+ lock_disk(inst); -+ - /* Fork and execute the correct program. */ - if (noexecute) - pid = -1; -@@ -492,8 +591,6 @@ static int execute(const char *type, con - inst->pid = pid; - inst->prog = string_copy(prog); - inst->type = string_copy(type); -- inst->device = string_copy(device); -- inst->base_device = base_device(device); - inst->start_time = time(0); - inst->next = NULL; - -@@ -597,12 +694,12 @@ static struct fsck_instance *wait_one(in - } else { - printf(_("Warning... %s for device %s exited " - "with signal %d.\n"), -- inst->prog, inst->device, sig); -+ inst->prog, inst->fs->device, sig); - status = EXIT_ERROR; - } - } else { - printf(_("%s %s: status is %x, should never happen.\n"), -- inst->prog, inst->device, status); -+ inst->prog, inst->fs->device, status); - status = EXIT_ERROR; - } - inst->exit_status = status; -@@ -641,7 +738,7 @@ ret_inst: - instance_list = inst->next; - if (verbose > 1) - printf(_("Finished with %s (exit status %d)\n"), -- inst->device, inst->exit_status); -+ inst->fs->device, inst->exit_status); - num_running--; - return inst; - } -@@ -698,7 +795,7 @@ static void fsck_device(struct fs_info * - type = DEFAULT_FSTYPE; - - num_running++; -- retval = execute(type, fs->device, fs->mountpt, interactive); -+ retval = execute(type, fs, interactive); - if (retval) { - fprintf(stderr, _("%s: Error %d while executing fsck.%s " - "for %s\n"), progname, retval, type, fs->device); -@@ -924,40 +1021,70 @@ static int ignore(struct fs_info *fs) - return 0; - } - -+static int count_slaves(dev_t disk) -+{ -+ DIR *dir; -+ struct dirent *dp; -+ char dirname[PATH_MAX]; -+ int count = 0; -+ -+ snprintf(dirname, sizeof(dirname), -+ "/sys/dev/block/%u:%u/slaves/", -+ major(disk), minor(disk)); -+ -+ if (!(dir = opendir(dirname))) -+ return -1; -+ -+ while ((dp = readdir(dir)) != 0) { -+#ifdef _DIRENT_HAVE_D_TYPE -+ if (dp->d_type != DT_UNKNOWN && dp->d_type != DT_LNK) -+ continue; -+#endif -+ if (dp->d_name[0] == '.' && -+ ((dp->d_name[1] == 0) || -+ ((dp->d_name[1] == '.') && (dp->d_name[2] == 0)))) -+ continue; -+ -+ count++; -+ } -+ closedir(dir); -+ return count; -+} -+ - /* - * Returns TRUE if a partition on the same disk is already being - * checked. - */ --static int device_already_active(char *device) -+static int disk_already_active(struct fs_info *fs) - { - struct fsck_instance *inst; -- char *base; - - if (force_all_parallel) - return 0; - --#ifdef BASE_MD -- /* Don't check a soft raid disk with any other disk */ -- if (instance_list && -- (!strncmp(instance_list->device, BASE_MD, sizeof(BASE_MD)-1) || -- !strncmp(device, BASE_MD, sizeof(BASE_MD)-1))) -+ if (instance_list && instance_list->fs->stacked) -+ /* any instance for a stacked device is already running */ - return 1; --#endif - -- base = base_device(device); -+ if (!fs->disk) { -+ fs->disk = get_disk(fs->device); -+ if (fs->disk) -+ fs->stacked = count_slaves(fs->disk); -+ } -+ - /* - * If we don't know the base device, assume that the device is - * already active if there are any fsck instances running. -+ * -+ * Don't check a stacked device with any other disk too. - */ -- if (!base) -+ if (!fs->disk || fs->stacked) - return (instance_list != 0); -+ - for (inst = instance_list; inst; inst = inst->next) { -- if (!inst->base_device || !strcmp(base, inst->base_device)) { -- free(base); -+ if (!inst->fs->disk || fs->disk == inst->fs->disk) - return 1; -- } - } -- free(base); - return 0; - } - -@@ -1038,7 +1165,7 @@ static int check_all(NOARGS) - * already been spawned, then we need to defer - * this to another pass. - */ -- if (device_already_active(fs->device)) { -+ if (disk_already_active(fs)) { - pass_done = 0; - continue; - } -@@ -1188,6 +1315,9 @@ static void PRS(int argc, char *argv[]) - } - } - break; -+ case 'l': -+ lockdisk++; -+ break; - case 'V': - verbose++; - break; -@@ -1298,6 +1428,12 @@ int main(int argc, char *argv[]) - if ((num_devices == 1) || (serialize)) - interactive = 1; - -+ if (lockdisk && (doall || num_devices > 1)) { -+ fprintf(stderr, _("%s: the -l option can be used with one " -+ "device only -- ignore\n"), progname); -+ lockdisk = 0; -+ } -+ - /* If -A was specified ("check all"), do that! */ - if (doall) - return check_all(); -diff -up util-linux-ng-2.18/fsck/fsck.h.kzak util-linux-ng-2.18/fsck/fsck.h ---- util-linux-ng-2.18/fsck/fsck.h.kzak 2010-03-18 23:11:23.000000000 +0100 -+++ util-linux-ng-2.18/fsck/fsck.h 2010-10-26 23:55:30.000000000 +0200 -@@ -44,6 +44,8 @@ struct fs_info { - int freq; - int passno; - int flags; -+ dev_t disk; -+ int stacked; - struct fs_info *next; - }; - -@@ -56,12 +58,12 @@ struct fs_info { - struct fsck_instance { - int pid; - int flags; -+ int lock; /* flock()ed whole disk file descriptor or -1 */ - int exit_status; - time_t start_time; - char * prog; - char * type; -- char * device; -- char * base_device; -+ struct fs_info *fs; - struct fsck_instance *next; - }; - -diff -up util-linux-ng-2.18/fsck/Makefile.am.kzak util-linux-ng-2.18/fsck/Makefile.am ---- util-linux-ng-2.18/fsck/Makefile.am.kzak 2010-05-24 12:33:46.000000000 +0200 -+++ util-linux-ng-2.18/fsck/Makefile.am 2010-10-26 23:55:30.000000000 +0200 -@@ -3,7 +3,7 @@ include $(top_srcdir)/config/include-Mak - sbin_PROGRAMS = fsck - dist_man_MANS = fsck.8 - --fsck_SOURCES = base_device.c fsck.c fsck.h $(top_srcdir)/lib/ismounted.c \ -+fsck_SOURCES = fsck.c fsck.h $(top_srcdir)/lib/ismounted.c \ - $(top_srcdir)/lib/fsprobe.c $(top_srcdir)/lib/canonicalize.c - fsck_LDADD = - fsck_CFLAGS = $(AM_CFLAGS) -diff -up util-linux-ng-2.18/fsck/Makefile.in.kzak util-linux-ng-2.18/fsck/Makefile.in ---- util-linux-ng-2.18/fsck/Makefile.in.kzak 2010-10-26 23:56:04.000000000 +0200 -+++ util-linux-ng-2.18/fsck/Makefile.in 2010-10-26 23:56:15.000000000 +0200 -@@ -62,9 +62,8 @@ CONFIG_CLEAN_FILES = - CONFIG_CLEAN_VPATH_FILES = - am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man8dir)" - PROGRAMS = $(sbin_PROGRAMS) --am_fsck_OBJECTS = fsck-base_device.$(OBJEXT) fsck-fsck.$(OBJEXT) \ -- fsck-ismounted.$(OBJEXT) fsck-fsprobe.$(OBJEXT) \ -- fsck-canonicalize.$(OBJEXT) -+am_fsck_OBJECTS = fsck-fsck.$(OBJEXT) fsck-ismounted.$(OBJEXT) \ -+ fsck-fsprobe.$(OBJEXT) fsck-canonicalize.$(OBJEXT) - fsck_OBJECTS = $(am_fsck_OBJECTS) - am__DEPENDENCIES_1 = - @BUILD_LIBBLKID_FALSE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) -@@ -204,6 +203,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ - PACKAGE_NAME = @PACKAGE_NAME@ - PACKAGE_STRING = @PACKAGE_STRING@ - PACKAGE_TARNAME = @PACKAGE_TARNAME@ -+PACKAGE_URL = @PACKAGE_URL@ - PACKAGE_VERSION = @PACKAGE_VERSION@ - PATH_SEPARATOR = @PATH_SEPARATOR@ - PERL = @PERL@ -@@ -315,7 +315,7 @@ ul_libmount_la = $(top_builddir)/shlibs/ - # mount.h is generated by ./configure script and stored in build directory - ul_libmount_incdir = $(ul_libmount_builddir) - dist_man_MANS = fsck.8 --fsck_SOURCES = base_device.c fsck.c fsck.h $(top_srcdir)/lib/ismounted.c \ -+fsck_SOURCES = fsck.c fsck.h $(top_srcdir)/lib/ismounted.c \ - $(top_srcdir)/lib/fsprobe.c $(top_srcdir)/lib/canonicalize.c - - fsck_LDADD = $(am__append_1) $(am__append_3) -@@ -407,7 +407,6 @@ mostlyclean-compile: - distclean-compile: - -rm -f *.tab.c - --@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsck-base_device.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsck-canonicalize.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsck-fsck.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fsck-fsprobe.Po@am__quote@ -@@ -437,22 +436,6 @@ distclean-compile: - @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ - @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< - --fsck-base_device.o: base_device.c --@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -MT fsck-base_device.o -MD -MP -MF $(DEPDIR)/fsck-base_device.Tpo -c -o fsck-base_device.o `test -f 'base_device.c' || echo '$(srcdir)/'`base_device.c --@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsck-base_device.Tpo $(DEPDIR)/fsck-base_device.Po --@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ --@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='base_device.c' object='fsck-base_device.o' libtool=no @AMDEPBACKSLASH@ --@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ --@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -c -o fsck-base_device.o `test -f 'base_device.c' || echo '$(srcdir)/'`base_device.c -- --fsck-base_device.obj: base_device.c --@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -MT fsck-base_device.obj -MD -MP -MF $(DEPDIR)/fsck-base_device.Tpo -c -o fsck-base_device.obj `if test -f 'base_device.c'; then $(CYGPATH_W) 'base_device.c'; else $(CYGPATH_W) '$(srcdir)/base_device.c'; fi` --@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsck-base_device.Tpo $(DEPDIR)/fsck-base_device.Po --@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ --@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='base_device.c' object='fsck-base_device.obj' libtool=no @AMDEPBACKSLASH@ --@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ --@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -c -o fsck-base_device.obj `if test -f 'base_device.c'; then $(CYGPATH_W) 'base_device.c'; else $(CYGPATH_W) '$(srcdir)/base_device.c'; fi` -- - fsck-fsck.o: fsck.c - @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fsck_CFLAGS) $(CFLAGS) -MT fsck-fsck.o -MD -MP -MF $(DEPDIR)/fsck-fsck.Tpo -c -o fsck-fsck.o `test -f 'fsck.c' || echo '$(srcdir)/'`fsck.c - @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/fsck-fsck.Tpo $(DEPDIR)/fsck-fsck.Po -diff -up util-linux-ng-2.18/Makefile.am.kzak util-linux-ng-2.18/Makefile.am ---- util-linux-ng-2.18/Makefile.am.kzak 2010-03-18 23:11:23.000000000 +0100 -+++ util-linux-ng-2.18/Makefile.am 2010-10-26 23:55:30.000000000 +0200 -@@ -30,8 +30,10 @@ SUBDIRS += mount - endif - - if BUILD_FSCK -+if BUILD_LIBBLKID - SUBDIRS += fsck - endif -+endif - - ACLOCAL_AMFLAGS = -I m4 - diff --git a/util-linux-ng-60-raw.rules b/util-linux-ng-60-raw.rules deleted file mode 100644 index 2279c91..0000000 --- a/util-linux-ng-60-raw.rules +++ /dev/null @@ -1,11 +0,0 @@ -# This file and interface are deprecated. -# Applications needing raw device access should open regular -# block devices with O_DIRECT. -# -# Enter raw device bindings here. -# -# An example would be: -# ACTION=="add", KERNEL=="sda", RUN+="/bin/raw /dev/raw/raw1 %N" -# to bind /dev/raw/raw1 to /dev/sda, or -# ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/bin/raw /dev/raw/raw2 %M %m" -# to bind /dev/raw/raw2 to the device with major 8, minor 1. diff --git a/util-linux-ng-chsh-chfn.pamd b/util-linux-ng-chsh-chfn.pamd deleted file mode 100644 index 2dbc0aa..0000000 --- a/util-linux-ng-chsh-chfn.pamd +++ /dev/null @@ -1,6 +0,0 @@ -#%PAM-1.0 -auth sufficient pam_rootok.so -auth include system-auth -account include system-auth -password include system-auth -session include system-auth diff --git a/util-linux-ng-login.pamd b/util-linux-ng-login.pamd deleted file mode 100644 index 2c9a3a2..0000000 --- a/util-linux-ng-login.pamd +++ /dev/null @@ -1,16 +0,0 @@ -#%PAM-1.0 -auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so -auth include system-auth -account required pam_nologin.so -account include system-auth -password include system-auth -# pam_selinux.so close should be the first session rule -session required pam_selinux.so close -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 required pam_namespace.so -session optional pam_keyinit.so force revoke -session include system-auth --session optional pam_ck_connector.so diff --git a/util-linux-ng-remote.pamd b/util-linux-ng-remote.pamd deleted file mode 100644 index d8f83f3..0000000 --- a/util-linux-ng-remote.pamd +++ /dev/null @@ -1,14 +0,0 @@ -#%PAM-1.0 -auth required pam_securetty.so -auth include password-auth -account required pam_nologin.so -account include password-auth -password include password-auth -# pam_selinux.so close should be the first session rule -session required pam_selinux.so close -session required pam_loginuid.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 required pam_namespace.so -session optional pam_keyinit.so force revoke -session include password-auth diff --git a/util-linux-ng.spec b/util-linux-ng.spec deleted file mode 100644 index b71bacf..0000000 --- a/util-linux-ng.spec +++ /dev/null @@ -1,2314 +0,0 @@ -### Header -Summary: A collection of basic system utilities -Name: util-linux-ng -Version: 2.18 -Release: 5%{?dist} -License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain -Group: System Environment/Base -URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng - -%define upstream_version %{version} - -### Features -%if 0%{?rhel} -%define include_raw 1 -%else -%define include_raw 0 -%endif - -### Macros -%define floppyver 0.16 -%define cytune_archs %{ix86} alpha armv4l - -### Paths -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root - -### Dependences -BuildRequires: audit-libs-devel >= 1.0.6 -BuildRequires: gettext-devel -BuildRequires: libselinux-devel -BuildRequires: ncurses-devel -BuildRequires: pam-devel -BuildRequires: texinfo -BuildRequires: zlib-devel -BuildRequires: popt-devel -BuildRequires: libutempter-devel - -### Sources -Source0: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/util-linux-ng-%{upstream_version}.tar.bz2 -Source1: util-linux-ng-login.pamd -Source2: util-linux-ng-remote.pamd -Source3: util-linux-ng-chsh-chfn.pamd -Source4: util-linux-ng-60-raw.rules -Source5: mount.tmpfs -Source8: nologin.c -Source9: nologin.8 -Source10: uuidd.init -Source11: http://dl.sourceforge.net/floppyutil/floppy-%{floppyver}.tar.bz2 - -### Obsoletes & Conflicts & Provides -%ifarch alpha -Conflicts: initscripts <= 4.58 -%endif -Conflicts: kernel < 2.2.12-7 -# old versions of e2fsprogs contain fsck, uuidgen -Conflicts: e2fsprogs < 1.41.8-5 - -# old versions of util-linux have been splited to more sub-packages -Obsoletes: mount < 2.11, losetup < 2.11 -Provides: mount = %{version}-%{release}, losetup = %{version}-%{release} -# Robert Love's schedutils have been merged to util-linux-2.13-pre1 -Obsoletes: schedutils < 1.5 -Provides: schedutils = %{version}-%{release} -# fork and rename from util-linux to util-linux-ng -Obsoletes: util-linux < 2.13.1 -Provides: util-linux = %{version}-%{release} - -# setarch merge in util-linux-ng-2.13 -%ifarch sparc sparcv9 sparc64 -Obsoletes: sparc32 -%endif -Obsoletes: setarch < 2.1 -Provides: setarch = %{version}-%{release} - -Requires(preun): /sbin/install-info -Requires(post): /sbin/install-info -Requires(post): coreutils -Requires: pam >= 1.0.90, /etc/pam.d/system-auth -Requires: audit-libs >= 1.0.6 -Requires: libuuid = %{version}-%{release} -Requires: libblkid = %{version}-%{release} -Requires: libmount = %{version}-%{release} - -%if %{include_raw} -Requires: udev -%endif - -### Floppy patches (Fedora/RHEL specific) -### -# add a missing header -Patch0: util-linux-ng-2.13-floppy-locale.patch -# add note about ATAPI IDE floppy to fdformat.8 -Patch1: util-linux-ng-2.13-fdformat-man-ide.patch -# 169628 - /usr/bin/floppy doesn't work with /dev/fd0 -Patch2: util-linux-ng-2.13-floppy-generic.patch - -### Fedora/RHEL specific patches -- need to die! -### -# 199745 - Non-existant simpleinit(8) mentioned in ctrlaltdel(8) -Patch4: util-linux-ng-2.13-ctrlaltdel-man.patch -# /etc/blkid.tab --> /etc/blkid/blkid.tab -Patch5: util-linux-ng-2.16-blkid-cachefile.patch - -### Ready for upstream? -### -# 151635 - makeing /var/log/lastlog -Patch7: util-linux-ng-2.13-login-lastlog.patch -# 231192 - ipcs is not printing correct values on pLinux -Patch8: util-linux-ng-2.15-ipcs-32bit.patch - -### Upstream Patches -### -# 623685 - please extend agetty to not require a baud rate to be specified -# 645640 - new "-s" parameter parsing in agetty does not work -Patch9: util-linux-ng-2.18-agetty-baudrate.patch -# 598631 - shutdown, reboot, halt and C-A-D don't work -Patch10: util-linux-ng-2.18-agetty-clocal.patch -# 618957 - ISO images listed in fstab are mounted twice at boot -Patch11: util-linux-ng-2.17-mount-loopdev.patch -# backport from upstream, add -l (lock) support to fsck, requested by systemd -Patch12: util-linux-ng-2.18-fsck-wholedisk.patch - -%description -The util-linux-ng package contains a large variety of low-level system -utilities that are necessary for a Linux system to function. Among -others, Util-linux contains the fdisk configuration tool and the login -program. - - -%package -n libmount -Summary: Device mounting library -Group: Development/Libraries -License: LGPLv2+ -Requires: libblkid = %{version}-%{release} - -%description -n libmount -This is the device mounting library, part of util-linux-ng. - - -%package -n libmount-devel -Summary: Device mounting library -Group: Development/Libraries -License: LGPLv2+ -Requires: libmount = %{version}-%{release} -Requires: pkgconfig - -%description -n libmount-devel -This is the device mounting development library and headers, -part of util-linux-ng. - - -%package -n libblkid -Summary: Block device ID library -Group: Development/Libraries -License: LGPLv2+ -Requires: libuuid = %{version}-%{release} - -%description -n libblkid -This is block device identification library, part of util-linux-ng. - - -%package -n libblkid-devel -Summary: Block device ID library -Group: Development/Libraries -License: LGPLv2+ -Requires: libblkid = %{version}-%{release} -Requires: pkgconfig - -%description -n libblkid-devel -This is the block device identification development library and headers, -part of util-linux-ng. - - -%package -n libuuid -Summary: Universally unique ID library -Group: Development/Libraries -License: BSD - -%description -n libuuid -This is the universally unique ID library, part of e2fsprogs. - -The libuuid library generates and parses 128-bit universally unique -id's (UUID's). A UUID is an identifier that is unique across both -space and time, with respect to the space of all UUIDs. A UUID can -be used for multiple purposes, from tagging objects with an extremely -short lifetime, to reliably identifying very persistent objects -across a network. - -See also the "uuid" package, which is a separate implementation. - -%package -n libuuid-devel -Summary: Universally unique ID library -Group: Development/Libraries -License: BSD -Requires: libuuid = %{version}-%{release} -Requires: pkgconfig - -%description -n libuuid-devel -This is the universally unique ID development library and headers, -part of e2fsprogs. - -The libuuid library generates and parses 128-bit universally unique -id's (UUID's). A UUID is an identifier that is unique across both -space and time, with respect to the space of all UUIDs. A UUID can -be used for multiple purposes, from tagging objects with an extremely -short lifetime, to reliably identifying very persistent objects -across a network. - -See also the "uuid-devel" package, which is a separate implementation. - - -%package -n uuidd -Summary: Helper daemon to guarantee uniqueness of time-based UUIDs -Group: System Environment/Daemons -Requires: libuuid = %{version}-%{release} -License: GPLv2 -Requires(pre): shadow-utils - -%description -n uuidd -The uuidd package contains a userspace daemon (uuidd) which guarantees -uniqueness of time-based UUID generation even at very high rates on -SMP systems. - - -%prep -%setup -q -a 11 -n %{name}-%{upstream_version} -cp %{SOURCE8} %{SOURCE9} . - -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch4 -p1 -%patch5 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 -%patch10 -p1 -%patch11 -p1 -%patch12 -p1 - -%build -unset LINGUAS || : - -export CFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 $RPM_OPT_FLAGS" -export SUID_CFLAGS="-fpie" -export SUID_LDFLAGS="-pie" -%configure \ - --bindir=/bin \ - --sbindir=/sbin \ - --libdir=/%{_lib} \ - --disable-silent-rules \ - --disable-wall \ - --enable-partx \ - --enable-login-utils \ - --enable-kill \ - --enable-write \ -%if %{include_raw} - --enable-raw \ -%endif - --with-selinux \ - --with-audit \ - --with-utempter \ - --disable-makeinstall-chown - -# build util-linux-ng -make %{?_smp_mflags} - -# build floppy stuff -pushd floppy-%{floppyver} -%configure --disable-gtk2 -make %{?_smp_mflags} -popd - -# build nologin -gcc $CFLAGS -o nologin nologin.c - -%install -rm -rf ${RPM_BUILD_ROOT} -mkdir -p ${RPM_BUILD_ROOT}/{bin,sbin} -mkdir -p ${RPM_BUILD_ROOT}%{_bindir} -mkdir -p ${RPM_BUILD_ROOT}%{_infodir} -mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man{1,6,8,5} -mkdir -p ${RPM_BUILD_ROOT}%{_sbindir} -mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/{pam.d,security/console.apps,blkid} -mkdir -p ${RPM_BUILD_ROOT}/var/log -touch ${RPM_BUILD_ROOT}/var/log/lastlog -chmod 0644 ${RPM_BUILD_ROOT}/var/log/lastlog - -# install util-linux-ng -make install DESTDIR=${RPM_BUILD_ROOT} - -# inslall floppy stuff -pushd floppy-%{floppyver} -make install DESTDIR=${RPM_BUILD_ROOT} -popd - -# install nologin -install -m 755 nologin ${RPM_BUILD_ROOT}/sbin -install -m 644 nologin.8 ${RPM_BUILD_ROOT}%{_mandir}/man8 - -%if %{include_raw} -echo '.so man8/raw.8' > $RPM_BUILD_ROOT%{_mandir}/man8/rawdevices.8 -{ - # see RH bugzilla #216664 - mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/udev/rules.d - pushd ${RPM_BUILD_ROOT}%{_sysconfdir}/udev/rules.d - install -m 644 %{SOURCE4} ./60-raw.rules - popd -} -%endif - -# Our own initscript for uuidd -install -D -m 755 %{SOURCE10} ${RPM_BUILD_ROOT}/etc/rc.d/init.d/uuidd -# And a dirs uuidd needs that the makefiles don't create -install -d ${RPM_BUILD_ROOT}/var/run/uuidd -install -d ${RPM_BUILD_ROOT}/var/lib/libuuid - -# libtool junk -rm -rf ${RPM_BUILD_ROOT}%{_libdir}/*.la - -%ifarch sparc sparc64 sparcv9 -rm -rf ${RPM_BUILD_ROOT}%{_bindir}/sunhostid -cat << E-O-F > ${RPM_BUILD_ROOT}%{_bindir}/sunhostid -#!/bin/sh -# this should be %{_bindir}/sunhostid or somesuch. -# Copyright 1999 Peter Jones, . -# GPL and all that good stuff apply. -( -idprom=\`cat /proc/openprom/idprom\` -echo \$idprom|dd bs=1 skip=2 count=2 -echo \$idprom|dd bs=1 skip=27 count=6 -echo -) 2>/dev/null -E-O-F -chmod 755 ${RPM_BUILD_ROOT}%{_bindir}/sunhostid -%endif - -# PAM settings -{ - pushd ${RPM_BUILD_ROOT}%{_sysconfdir}/pam.d - install -m 644 %{SOURCE1} ./login - install -m 644 %{SOURCE2} ./remote - install -m 644 %{SOURCE3} ./chsh - install -m 644 %{SOURCE3} ./chfn - popd -} - -ln -sf ../../sbin/hwclock ${RPM_BUILD_ROOT}/usr/sbin/hwclock -ln -sf hwclock ${RPM_BUILD_ROOT}/sbin/clock -echo ".so man8/hwclock.8" > ${RPM_BUILD_ROOT}%{_mandir}/man8/clock.8 - -# install tmpfs mount helper -pushd ${RPM_BUILD_ROOT}/sbin -install -m 755 %{SOURCE5} ./mount.tmpfs -popd - -# unsupported on %{ix86} alpha armv4l -%ifnarch %cytune_archs -rm -f $RPM_BUILD_ROOT%{_bindir}/cytune $RPM_BUILD_ROOT%{_mandir}/man8/cytune.8* -%endif - -# unsupported on s390 -%ifarch s390 s390x -for I in /usr/{bin,sbin}/{fdformat,tunelp,floppy} \ - %{_mandir}/man8/{fdformat,tunelp,floppy}.8* \ - /sbin/{hwclock,clock} \ - /usr/sbin/hwclock \ - %{_mandir}/man8/{hwclock,clock}.8*; do - - rm -f $RPM_BUILD_ROOT$I -done -%endif - -# unsupported on SPARCs -%ifarch sparc sparcv9 sparc64 -for I in /sbin/sfdisk \ - %{_mandir}/man8/sfdisk.8* \ - %doc fdisk/sfdisk.examples \ - /sbin/cfdisk \ - %{_mandir}/man8/cfdisk.8*; do - - rm -f $RPM_BUILD_ROOT$I -done -%endif - -# deprecated commands -for I in /sbin/fsck.minix /sbin/mkfs.{bfs,minix} /sbin/sln \ - /usr/bin/chkdupexe %{_bindir}/line %{_bindir}/pg %{_bindir}/newgrp \ - /sbin/shutdown /usr/sbin/vipw /usr/sbin/vigr; do - rm -f $RPM_BUILD_ROOT$I -done - -# deprecated man pages -for I in man1/chkdupexe.1 man1/line.1 man1/pg.1 man1/newgrp.1 \ - man8/fsck.minix.8 man8/mkfs.minix.8 man8/mkfs.bfs.8 \ - man8/vipw.8 man8/vigr; do - rm -rf $RPM_BUILD_ROOT%{_mandir}/${I}* -done - -# deprecated docs -for I in text-utils/README.pg misc-utils/README.reset floppy-%{floppyver}/README.html; do - rm -rf $I -done - -# rename docs -mv floppy-%{floppyver}/README floppy-%{floppyver}/README.floppy - -# we install getopt/getopt-*.{bash,tcsh} as doc files -chmod 644 getopt/getopt-*.{bash,tcsh} -rm -f ${RPM_BUILD_ROOT}%{_datadir}/getopt/* -rmdir ${RPM_BUILD_ROOT}%{_datadir}/getopt - -ln -sf ../../bin/kill $RPM_BUILD_ROOT%{_bindir}/kill - -# /usr/sbin -> /sbin -for I in addpart delpart partx; do - if [ -e $RPM_BUILD_ROOT/usr/sbin/$I ]; then - mv $RPM_BUILD_ROOT/usr/sbin/$I $RPM_BUILD_ROOT/sbin/$I - fi -done - -# /usr/bin -> /bin -for I in taskset; do - if [ -e $RPM_BUILD_ROOT/usr/bin/$I ]; then - mv $RPM_BUILD_ROOT/usr/bin/$I $RPM_BUILD_ROOT/bin/$I - fi -done - -# /sbin -> /bin -for I in raw; do - if [ -e $RPM_BUILD_ROOT/sbin/$I ]; then - mv $RPM_BUILD_ROOT/sbin/$I $RPM_BUILD_ROOT/bin/$I - fi -done - -# omit info/dir file -rm -f ${RPM_BUILD_ROOT}%{_infodir}/dir - -# remove static libs -rm -f $RPM_BUILD_ROOT%{_libdir}/lib{uuid,blkid,mount}.a - -# find MO files -%find_lang %name - -# the files section supports only one -f option... -mv %{name}.lang %{name}.files - -# create list of setarch(8) symlinks -find $RPM_BUILD_ROOT%{_bindir}/ -regextype posix-egrep -type l \ - -regex ".*(linux32|linux64|s390|s390x|i386|ppc|ppc64|ppc32|sparc|sparc64|sparc32|sparc32bash|mips|mips64|mips32|ia64|x86_64)$" \ - -printf "%{_bindir}/%f\n" >> %{name}.files - -find $RPM_BUILD_ROOT%{_mandir}/man8 -regextype posix-egrep \ - -regex ".*(linux32|linux64|s390|s390x|i386|ppc|ppc64|ppc32|sparc|sparc64|sparc32|sparc32bash|mips|mips64|mips32|ia64|x86_64)\.8.*" \ - -printf "%{_mandir}/man8/%f*\n" >> %{name}.files - -%clean -[ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT} - -%post -/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 -/bin/chown root:root /var/log/lastlog -/bin/chmod 0644 /var/log/lastlog -# Fix the file context, do not use restorecon -if [ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled; then - SECXT=$( /usr/sbin/matchpathcon -n /var/log/lastlog 2> /dev/null ) - if [ -n "$SECXT" ]; then - # Selinux enabled, but without policy? It's true for buildroots - # without selinux stuff on host machine with enabled selinux. - # We don't want to use any RPM dependence on selinux policy for - # matchpathcon(2). SELinux policy should be optional. - /usr/bin/chcon "$SECXT" /var/log/lastlog >/dev/null 2>&1 || : - fi -fi - -%preun -if [ "$1" = 0 ]; then - /sbin/install-info --del %{_infodir}/ipc.info %{_infodir}/dir || : -fi -exit 0 - - -%post -n libblkid -/sbin/ldconfig -[ -e /etc/blkid.tab ] && mv /etc/blkid.tab /etc/blkid/blkid.tab || : -[ -e /etc/blkid.tab.old ] && mv /etc/blkid.tab.old /etc/blkid/blkid.tab.old || : - -%postun -n libblkid -p /sbin/ldconfig - -%post -n libuuid -p /sbin/ldconfig -%postun -n libuuid -p /sbin/ldconfig - -%post -n libmount -p /sbin/ldconfig -%postun -n libmount -p /sbin/ldconfig - -%pre -n uuidd -getent group uuidd >/dev/null || groupadd -r uuidd -getent passwd uuidd >/dev/null || \ -useradd -r -g uuidd -d /var/lib/libuuid -s /sbin/nologin \ - -c "UUID generator helper daemon" uuidd -exit 0 - -%post -n uuidd -/sbin/chkconfig --add uuidd - -%preun -n uuidd -if [ "$1" = 0 ]; then - /sbin/service uuidd stop > /dev/null 2>&1 || : - /sbin/chkconfig --del uuidd -fi - -%files -f %{name}.files -%defattr(-,root,root) -%doc */README.* NEWS AUTHORS licenses/* README* -%doc getopt/getopt-*.{bash,tcsh} - -%config(noreplace) %{_sysconfdir}/pam.d/chfn -%config(noreplace) %{_sysconfdir}/pam.d/chsh -%config(noreplace) %{_sysconfdir}/pam.d/login -%config(noreplace) %{_sysconfdir}/pam.d/remote - -%attr(4755,root,root) /bin/mount -%attr(4755,root,root) /bin/umount -%attr(755,root,root) /sbin/mount.tmpfs -%attr(755,root,root) /bin/login -%attr(4711,root,root) %{_bindir}/chfn -%attr(4711,root,root) %{_bindir}/chsh -%attr(2755,root,tty) %{_bindir}/write - -%ghost %attr(0644,root,root) %verify(not md5 size mtime) /var/log/lastlog - -/bin/dmesg -/bin/findmnt -/bin/kill -/bin/more -/bin/taskset -/sbin/addpart -/sbin/agetty -/sbin/blkid -/sbin/blockdev -/sbin/ctrlaltdel -/sbin/delpart -/sbin/fdisk -/sbin/findfs -/sbin/fsck -/sbin/fsck.cramfs -/sbin/fsfreeze -/sbin/losetup -/sbin/mkfs -/sbin/mkfs.cramfs -/sbin/mkswap -/sbin/nologin -/sbin/partx -/sbin/pivot_root -/sbin/swaplabel -/sbin/swapoff -/sbin/swapon -/sbin/switch_root -/sbin/wipefs - -%{_bindir}/cal -%{_bindir}/chrt -%{_bindir}/col -%{_bindir}/colcrt -%{_bindir}/colrm -%{_bindir}/column -%{_bindir}/ddate -%{_bindir}/fallocate -%{_bindir}/flock -%{_bindir}/getopt -%{_bindir}/hexdump -%{_bindir}/ionice -%{_bindir}/ipcmk -%{_bindir}/ipcrm -%{_bindir}/ipcs -%{_bindir}/isosize -%{_bindir}/kill -%{_bindir}/logger -%{_bindir}/look -%{_bindir}/lscpu -%{_bindir}/mcookie -%{_bindir}/namei -%{_bindir}/rename -%{_bindir}/renice -%{_bindir}/rev -%{_bindir}/script -%{_bindir}/scriptreplay -%{_bindir}/setarch -%{_bindir}/setsid -%{_bindir}/setterm -%{_bindir}/tailf -%{_bindir}/ul -%{_bindir}/unshare -%{_bindir}/uuidgen -%{_bindir}/whereis - -%{_sbindir}/ldattach -%{_sbindir}/readprofile -%{_sbindir}/rtcwake - -%{_infodir}/ipc.info* - -%{_mandir}/man1/cal.1* -%{_mandir}/man1/chfn.1* -%{_mandir}/man1/chrt.1* -%{_mandir}/man1/chsh.1* -%{_mandir}/man1/col.1* -%{_mandir}/man1/colcrt.1* -%{_mandir}/man1/colrm.1* -%{_mandir}/man1/column.1* -%{_mandir}/man1/ddate.1* -%{_mandir}/man1/dmesg.1* -%{_mandir}/man1/fallocate.1* -%{_mandir}/man1/flock.1* -%{_mandir}/man1/getopt.1* -%{_mandir}/man1/hexdump.1* -%{_mandir}/man1/ionice.1* -%{_mandir}/man1/ipcmk.1* -%{_mandir}/man1/ipcrm.1* -%{_mandir}/man1/ipcs.1* -%{_mandir}/man1/kill.1* -%{_mandir}/man1/logger.1* -%{_mandir}/man1/login.1* -%{_mandir}/man1/look.1* -%{_mandir}/man1/lscpu.1* -%{_mandir}/man1/mcookie.1* -%{_mandir}/man1/more.1* -%{_mandir}/man1/namei.1* -%{_mandir}/man1/readprofile.1* -%{_mandir}/man1/rename.1* -%{_mandir}/man1/renice.1* -%{_mandir}/man1/rev.1* -%{_mandir}/man1/script.1* -%{_mandir}/man1/scriptreplay.1* -%{_mandir}/man1/setsid.1* -%{_mandir}/man1/setterm.1* -%{_mandir}/man1/tailf.1* -%{_mandir}/man1/taskset.1* -%{_mandir}/man1/ul.1* -%{_mandir}/man1/unshare.1* -%{_mandir}/man1/uuidgen.1* -%{_mandir}/man1/whereis.1* -%{_mandir}/man1/write.1* - -%{_mandir}/man5/fstab.5* - -%{_mandir}/man8/addpart.8* -%{_mandir}/man8/agetty.8* -%{_mandir}/man8/blkid.8* -%{_mandir}/man8/blockdev.8* -%{_mandir}/man8/ctrlaltdel.8* -%{_mandir}/man8/delpart.8* -%{_mandir}/man8/fdisk.8* -%{_mandir}/man8/findfs.8* -%{_mandir}/man8/findmnt.8* -%{_mandir}/man8/fsck.8* -%{_mandir}/man8/fsfreeze.8* -%{_mandir}/man8/isosize.8* -%{_mandir}/man8/ldattach.8* -%{_mandir}/man8/losetup.8* -%{_mandir}/man8/mkfs.8* -%{_mandir}/man8/mkswap.8* -%{_mandir}/man8/mount.8* -%{_mandir}/man8/nologin.8* -%{_mandir}/man8/partx.8* -%{_mandir}/man8/pivot_root.8* -%{_mandir}/man8/rtcwake.8* -%{_mandir}/man8/setarch.8* -%{_mandir}/man8/swaplabel.8* -%{_mandir}/man8/swapoff.8* -%{_mandir}/man8/swapon.8* -%{_mandir}/man8/switch_root.8* -%{_mandir}/man8/umount.8* -%{_mandir}/man8/wipefs.8* - -%if %{include_raw} -/bin/raw -%config(noreplace) %{_sysconfdir}/udev/rules.d/60-raw.rules -%{_mandir}/man8/raw.8* -%{_mandir}/man8/rawdevices.8* -%endif - -%ifnarch s390 s390x -/sbin/clock -/sbin/hwclock -%{_bindir}/floppy -%{_sbindir}/fdformat -%{_sbindir}/hwclock -%{_sbindir}/tunelp -%{_mandir}/man8/fdformat.8* -%{_mandir}/man8/floppy.8* -%{_mandir}/man8/hwclock.8* -%{_mandir}/man8/clock.8* -%{_mandir}/man8/tunelp.8* -%endif - -%ifnarch sparc sparcv9 sparc64 -%doc fdisk/sfdisk.examples -/sbin/cfdisk -/sbin/sfdisk -%{_mandir}/man8/cfdisk.8* -%{_mandir}/man8/sfdisk.8* -%endif - -%ifarch sparc sparc64 sparcv9 -%{_bindir}/sunhostid -%endif - -%ifarch %cytune_archs -%{_bindir}/cytune -%{_mandir}/man8/cytune.8* -%endif - - -%files -n uuidd -%defattr(-,root,root) -/etc/rc.d/init.d/uuidd -%{_mandir}/man8/uuidd.8* -%attr(-, uuidd, uuidd) %{_sbindir}/uuidd -%dir %attr(2775, uuidd, uuidd) /var/lib/libuuid -%dir %attr(2775, uuidd, uuidd) /var/run/uuidd - - -%files -n libmount -%defattr(-,root,root) -/%{_lib}/libmount.so.* - -%files -n libmount-devel -%defattr(-,root,root) -%{_libdir}/libmount.so -%{_includedir}/mount -%{_libdir}/pkgconfig/mount.pc - - -%files -n libblkid -%defattr(-,root,root) -%dir /etc/blkid -/%{_lib}/libblkid.so.* - -%files -n libblkid-devel -%defattr(-,root,root) -#%{_libdir}/libblkid.a -%{_libdir}/libblkid.so -%{_includedir}/blkid -%{_mandir}/man3/libblkid.3* -%{_libdir}/pkgconfig/blkid.pc - - -%files -n libuuid -%defattr(-,root,root) -/%{_lib}/libuuid.so.* - -%files -n libuuid-devel -%defattr(-,root,root) -#%{_libdir}/libuuid.a -%{_libdir}/libuuid.so -%{_includedir}/uuid -%{_mandir}/man3/uuid.3* -%{_mandir}/man3/uuid_clear.3* -%{_mandir}/man3/uuid_compare.3* -%{_mandir}/man3/uuid_copy.3* -%{_mandir}/man3/uuid_generate.3* -%{_mandir}/man3/uuid_generate_random.3* -%{_mandir}/man3/uuid_generate_time.3* -%{_mandir}/man3/uuid_is_null.3* -%{_mandir}/man3/uuid_parse.3* -%{_mandir}/man3/uuid_time.3* -%{_mandir}/man3/uuid_unparse.3* -%{_libdir}/pkgconfig/uuid.pc - - -%changelog -* Tue Oct 26 2010 Karel Zak 2.18-5 -- fix #645640 - new "-s" parameter parsing in agetty does not work -- add -l (lock) support to fsck - -* Wed Aug 18 2010 Karel Zak 2.18-4 -- fix #623685 - please extend agetty to not require a baud rate to be specified - -* Thu Aug 5 2010 Karel Zak 2.18-3 -- fix #620924 - /sbin/mount.tmpfs uses not available /usr/bin/id - -* Mon Aug 2 2010 Karel Zak 2.18-2 -- fix #615719 - tmpfs mount fails with 'user' option. -- fix #598631 - shutdown, reboot, halt and C-A-D don't work -- fix #618957 - ISO images listed in fstab are mounted twice at boot - -* Wed Jun 30 2010 Karel Zak 2.18-1 -- upgrade to the final 2.18 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-ReleaseNotes - -* Fri Jun 18 2010 Karel Zak 2.18-0.2 -- upgrade to 2.18-rc2 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-rc2-ChangeLog - -* Tue Jun 8 2010 Karel Zak 2.18-0.1 -- upgrade to the release 2.18-rc1 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-ReleaseNotes - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-rc1-ChangeLog - -* Mon Apr 12 2010 Karel Zak 2.17.2-1 -- fix #581252 - remounting tmpfs fails because of hidden rootcontext= -- fix #580296 - "rtcwake" does miss the "off" option -- fix #575734 - use microsecond resolution for blkid cache entries -- upgrade to the bugfix release 2.17.2 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.2-ReleaseNotes - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.2-ChangeLog -- minor fixed in spec file - -* Thu Mar 11 2010 Karel Zak 2.17.1-2 -- fix #533874 - libblkid should allow scanning of slow devices (eg. cdroms) - -* Mon Feb 22 2010 Karel Zak 2.17.1-1 -- upgrade to the final 2.17.1 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.1-ReleaseNotes - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.1-ChangeLog - -* Tue Feb 16 2010 Karel Zak 2.17.1-0.1 -- upgrade to 2.17.1-rc1 - -* Tue Feb 16 2010 Karel Zak 2.17-4 -- fix uuidd init script - -* Fri Feb 12 2010 Karel Zak 2.17-3 -- fix #541402 - uuidd initscript lsb compliance - -* Fri Jan 8 2010 Karel Zak 2.17-2 -- remove Provides: lib{uuid,blkid}-static (thanks to Michael Schwendt) -- remove useless URL to sf.net - -* Thu Jan 8 2010 Karel Zak 2.17-1 -- upgrade to the final 2.17 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17-ReleaseNotes - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17-ChangeLog -- fix #545147 - util-linux-ng : Violation of the Packaging Guidelines - (remove uuid and blkid static libs) - -* Mon Dec 14 2009 Karel Zak 2.17-0.6 -- minor fixes in spec file (fix URL, add Requires, add LGPLv2+) - -* Wed Dec 9 2009 Karel Zak 2.17-0.5 -- upgrade to 2.17-rc2 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17-rc2-ChangeLog - -* Mon Dec 7 2009 Karel Zak 2.17-0.4 -- add clock.8 man page (manlink to hwclock) -- add --help to mount.tmpfs - -* Mon Nov 23 2009 Karel Zak 2.17-0.3 -- upgrade to 2.17-rc1 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17-rc1-ChangeLog - -* Tue Nov 10 2009 Karel Zak 2.17-0.2.git10dfc39 -- upgrade to pre-release snapshot (official changelog not available yet, see - http://git.kernel.org/?p=utils/util-linux-ng/util-linux-ng.git for now) - -* Mon Oct 19 2009 Karel Zak 2.17-0.1.git5e51568 -- upgrade to pre-release snapshot (official changelog not available yet, see - http://git.kernel.org/?p=utils/util-linux-ng/util-linux-ng.git for now) -- new commands: fallocate, unshare, wipefs -- libblkid supports topology and partitions probing -- remove support for --rmpart[s] from blockdev(8) (util-linux-ng-2.14-blockdev-rmpart.patch) -- merged upstream: - util-linux-ng-2.14-sfdisk-dump.patch - util-linux-ng-2.16-blkid-swsuspend.patch - util-linux-ng-2.16-libblkid-compression.patch - util-linux-ng-2.16-libblkid-ext2.patch - util-linux-ng-2.16-switchroot-tty.patch - -* Mon Oct 5 2009 Karel Zak 2.16-13 -- fix spec file - -* Fri Oct 2 2009 Karel Zak 2.16-12 -- release++ - -* Thu Oct 1 2009 Karel Zak 2.16-11 -- fix #519237 - bash: cannot set terminal process group (-1): Inappropriate ioctl for device - -* Wed Sep 16 2009 Tomas Mraz - 2.16-10 -- use password-auth common PAM configuration instead of system-auth and - drop pam_console.so call from the remote PAM config file - -* Mon Sep 14 2009 Karel Zak 2.16-9 -- fix #522718 - sfdisk -d /dev/xxx | sfdisk --force /dev/yyy fails when LANG is set -- fix typo in swsuspend detection - -* Wed Aug 26 2009 Tomas Mraz - 2.16-8 -- rebuilt with new audit - -* Sun Aug 23 2009 Karel Zak 2.16-7 -- fix #518572 - blkid requires ext2.ko to be decompressed on installation media - -* Thu Aug 13 2009 Karel Zak 2.16-5 -- fix #513104 - blkid returns no fstype for ext2 device when ext2 module not loaded - -* Wed Aug 5 2009 Stepan Kasal 2.16-4 -- set conflict with versions of e2fsprogs containing fsck - -* Thu Jul 30 2009 Karel Zak 2.16-3 -- remove the mount.conf support (see #214891) - -* Mon Jul 27 2009 Karel Zak 2.16-2 -- fix #214891 - add mount.conf and MTAB_LOCK_DIR= option - -* Sat Jul 25 2009 Karel Zak 2.16-1 -- upgrade to 2.16 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.16/v2.16-ReleaseNotes -- enable built-in libuuid (replacement for the old uuid stuff from e2fsprogs) -- new commands switch_root, uuidgen and uuidd (subpackage) - -* Wed Jun 10 2009 Karel Zak 2.15.1-1 -- upgrade to 2.15.1 - -* Mon Jun 8 2009 Karel Zak 2.15.1-0.2 -- set BuildRequires: e2fsprogs-devel -- add Requires: e2fsprogs-devel to libblkid-devel - -* Thu Jun 4 2009 Karel Zak 2.15.1-0.1 -- upgrade to 2.15.1-rc1 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.15/v2.15-ReleaseNotes - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.15/v2.15.1-rc1-ChangeLog -- merged patches: - util-linux-ng-2.14-login-remote.patch - util-linux-ng-2.14-fdisk-4k-I.patch - util-linux-ng-2.14-fdisk-4k-II.patch - util-linux-ng-2.14-fdisk-4k-III.patch - util-linux-ng-2.14-dmesg-r.patch - util-linux-ng-2.14-flock-segfaults.patch - util-linux-ng-2.14-renice-n.patch -- new commands: lscpu, ipcmk -- remove support for "managed" and "kudzu" mount options -- cleanup spec file -- enable built-in libblkid (replacement for the old blkid from e2fsprogs) - -* Thu Apr 2 2009 Karel Zak 2.14.2-8 -- fix #490769 - %post scriptlet failed (thanks to Dan Horak) - -* Fri Mar 20 2009 Karel Zak 2.14.2-7 -- fix some nits in mount.tmpfs - -* Fri Mar 20 2009 Karel Zak 2.14.2-6 -- fix #491175 - mount of tmpfs FSs fail at boot - -* Thu Mar 19 2009 Karel Zak 2.14.2-5 -- fix #489672 - flock segfaults when file name is not given (upstream) -- fix #476964 - Mount /var/tmp with tmpfs creates denials -- fix #487227 - fdisk 4KiB hw sectors support (upstream) -- fix #477303 - renice doesn't support -n option (upstream) - -* Wed Feb 25 2009 Fedora Release Engineering - 2.14.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild - -* Fri Feb 20 2009 Karel Zak 2.14.2-3 -- add -r option to dmesg(1) - -* Mon Feb 9 2009 Karel Zak 2.14.2-2 -- fix typo in spec file - -* Mon Feb 9 2009 Karel Zak 2.14.2-1 -- upgrade to stable 2.14.2 - ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.14/v2.14.2-ReleaseNotes - -* Thu Jan 22 2009 Karel Zak 2.14.2-0.2 -- fix #480413 - util-linux-ng doesn't include scriptreplay -- fix #479002 - remove dependency on ConsoleKit-libs -- upgrade to 2.14.2-rc2 - -* Mon Dec 22 2008 Karel Zak 2.14.2-0.1 -- upgrade to 2.14.2-rc1 -- refresh old patches - -* Fri Nov 21 2008 Karel Zak 2.14.1-5 -- fix #472502 - problem with fdisk and use +sectors for the end of partition - -* Mon Oct 6 2008 Karel Zak 2.14.1-3 -- fix #465761 - mount manpage is missing uid/gid mount options for tmpfs -- refresh util-linux-ng-2.14-mount-file_t.patch (fuzz=0) - -* Wed Sep 10 2008 Karel Zak 2.14.1-2 -- remove obsolete pam-console support - -* Wed Sep 10 2008 Karel Zak 2.14.1-1 -- upgrade to stable 2.14.1 - -* Thu Aug 14 2008 Karel Zak 2.14.1-0.1 -- upgrade to 2.14.1-rc1 -- refresh old patches - -* Thu Jul 24 2008 Karel Zak 2.14-3 -- update util-linux-ng-2.14-mount-file_t.patch to make - the SELinux warning optional (verbose mode is required) - -* Tue Jul 1 2008 Karel Zak 2.14-2 -- fix #390691 - mount should check selinux context on mount, and warn on file_t - -* Mon Jun 9 2008 Karel Zak 2.14-1 -- upgrade to stable util-linux-ng release - -* Mon May 19 2008 Karel Zak 2.14-0.1 -- upgrade to 2.14-rc3 -- remove arch(8) (deprecated in favor of uname(1) or arch(1) from coreutils) -- add a new command ldattach(8) -- cfdisk(8) linked with libncursesw - -* Tue Apr 22 2008 Karel Zak 2.13.1-9 -- fix audit log injection attack via login - -* Thu Apr 17 2008 Karel Zak 2.13.1-8 -- fix location of the command raw(8) - -* Tue Apr 15 2008 Karel Zak 2.13.1-7 -- fix 244383 - libblkid uses TYPE="swsuspend" for S1SUSPEND/S2SUSPEND - -* Wed Apr 2 2008 Karel Zak 2.13.1-6 -- fix 439984 - backport mkswap -U - -* Wed Mar 26 2008 Tom "spot" Callaway - 2.13.1-5 -- clean up sparc conditionals - -* Tue Feb 19 2008 Fedora Release Engineering - 2.13.1-4 -- Autorebuild for GCC 4.3 - -* Mon Jan 28 2008 Karel Zak 2.13.1-3 -- upgrade to new upstream release -- fix #427874 - util-linux-ng gets "excess command line argument" on update - -* Wed Jan 2 2008 Karel Zak 2.13.1-2 -- update to upstream 2.13.1-rc2 - -* Wed Dec 12 2007 Dan Walsh 2.13.1-1 -- Fix pam files so that pam_keyinit happens after pam_selinux.so - -* Wed Dec 12 2007 Karel Zak 2.13.1-0.2 -- remove viwp and vigr (in favour of shadow-utils) - -* Sun Dec 9 2007 Karel Zak 2.13.1-0.1 -- update to the latest upstream stable branch - (commit: fda9d11739ee88c3b2f22a73f12ec019bd3b8335) - -* Wed Oct 31 2007 Karel Zak 2.13-4 -- fix #354791 - blockdev command calls the blkpg ioctl with a wrong data structure - -* Tue Oct 16 2007 Karel Zak 2.13-3 -- fix mount -L | -U segfault -- fix script die on SIGWINCH - -* Thu Oct 4 2007 Karel Zak 2.13-2 -- update to the latest upstream stable branch - -* Tue Aug 28 2007 Karel Zak 2.13-1 -- upgrade to stable util-linux-ng release - -* Fri Aug 24 2007 Karel Zak 2.13-0.59 -- add release number to util-linux Provides and increment setarch Obsoletes -- fix #254114 - spec typo -- upgrade to floppy-0.16 -- add BuildRequires: popt-devel - -* Wed Aug 22 2007 Jesse Keating 2.13-0.58 -- Obsolete a sufficiently high enough version of setarch - -* Mon Aug 20 2007 Karel Zak 2.13-0.57 -- fix #253664 - util-linux-ng fails to build on sparc (patch by Dennis Gilmore) -- rebase to new GIT snapshot - -* Mon Aug 20 2007 Karel Zak 2.13-0.56 -- fix obsoletes field - -* Mon Aug 20 2007 Karel Zak 2.13-0.55 -- util-linux-ng includes setarch(1), define relevat Obsoletes+Provides - -* Mon Aug 20 2007 Karel Zak 2.13-0.54 -- port "blockdev --rmpart" patch from util-linux -- use same Provides/Obsoletes setting like in util-linux - -* Wed Aug 15 2007 Karel Zak 2.13-0.53 -- fix #252046 - review Request: util-linux-ng (util-linux replacement) - -* Mon Aug 13 2007 Karel Zak 2.13-0.52 -- rebase to util-linux-ng (new util-linux upstream fork, - based on util-linux 2.13-pre7) -- more than 70 Fedora/RHEL patches have been merged to upstream code - -* Fri Apr 6 2007 Karel Zak 2.13-0.51 -- fix #150493 - hwclock --systohc sets clock 0.5 seconds slow -- fix #220873 - starting RPC idmapd: Error: RPC MTAB does not exist. - (added rpc_pipefs to util-linux-2.13-umount-sysfs.patch) -- fix #227903 - mount -f does not work with NFS-mounted - -* Sat Mar 3 2007 David Zeuthen 2.13-0.50 -- include ConsoleKit session module by default (#229172) - -* Thu Jan 11 2007 Karel Zak 2.13-0.49 -- fix #222293 - undocumented partx,addpart, delpart - -* Sun Dec 17 2006 Karel Zak 2.13-0.48 -- fix paths in po/Makefile.in.in - -* Fri Dec 15 2006 Karel Zak 2.13-0.47 -- fix #217240 - namei ignores non-directory components instead of saying "Not a directory" -- fix #217241 - namei enforces symlink limits inconsistently - -* Wed Dec 14 2006 Karel Zak 2.13-0.46 -- fix leaking file descriptor in the more command (patch by Steve Grubb) - -* Wed Dec 13 2006 Karel Zak 2.13-0.45 -- use ncurses only -- fix #218915 - fdisk -b 4K -- upgrade to -pre7 release -- fix building problem with raw0 patch -- fix #217186 - /bin/sh: @MKINSTALLDIRS@: No such file or directory - (port po/Makefile.in.in from gettext-0.16) -- sync with FC6 and RHEL5: -- fix #216489 - SCHED_BATCH option missing in chrt -- fix #216712 - issues with raw device support ("raw0" is wrong device name) -- fix #216760 - mount with context or fscontext option fails - (temporarily disabled the support for additional contexts -- not supported by kernel yet) -- fix #211827 - Can't mount with additional contexts -- fix #213127 - mount --make-unbindable does not work -- fix #211749 - add -r option to losetup to create a read-only loop - -* Thu Oct 12 2006 Karel Zak 2.13-0.44 -- fix #209911 - losetup.8 updated (use dm-crypt rather than deprecated cryptoloop) -- fix #210338 - spurious error from '/bin/login -h $PHONENUMBER' (bug in IPv6 patch) -- fix #208634 - mkswap "works" without warning on a mounted device - -* Sun Oct 01 2006 Jesse Keating - 2.13-0.43 -- rebuilt for unwind info generation, broken in gcc-4.1.1-21 - -* Wed Sep 20 2006 Karel Zak 2.13-0.42 -- remove obsolete NFS code and patches (we use /sbin/mount.nfs - and /sbin/umount.nfs from nfs-utils now) -- move nfs.5 to nfs-utils - -* Fri Sep 15 2006 Karel Zak 2.13-0.41 -- fix #205038 - mount not allowing sloppy option (exports "-s" - to external /sbin/mount.nfs(4) calls) -- fix minor bug in util-linux-2.13-mount-twiceloop.patch -- fix #188193- util-linux should provide plugin infrastructure for HAL - -* Mon Aug 21 2006 Karel Zak 2.13-0.40 -- fix Makefile.am in util-linux-2.13-mount-context.patch -- fix #201343 - pam_securetty requires known user to work - (split PAM login configuration to two files) -- fix #203358 - change location of taskset binary to allow for early affinity work - -* Fri Aug 11 2006 Karel Zak 2.13-0.39 -- fix #199745 - non-existant simpleinit(8) mentioned in ctrlaltdel(8) - -* Thu Aug 10 2006 Dan Walsh 2.13-0.38 -- Change keycreate line to happen after pam_selinux open call so it gets correct context - -* Thu Aug 10 2006 Karel Zak 2.13-0.37 -- fix #176494 - last -i returns strange IP addresses (patch by Bill Nottingham) - -* Thu Jul 27 2006 Karel Zak 2.13-0.36 -- fix #198300, #199557 - util-linux "post" scriptlet failure - -* Thu Jul 27 2006 Steve Dickson 2.13-0.35 -- Added the -o fsc flag to nfsmount. - -* Wed Jul 26 2006 Karel Zak 2.13-0.34 -- rebuild - -* Tue Jul 18 2006 Karel Zak 2.13-0.33 -- add Requires(post): libselinux - -* Mon Jul 17 2006 Karel Zak 2.13-0.32 -- add IPv6 support to the login command (patch by Milan Zazrivec) -- fix #198626 - add keyinit instructions to the login PAM script - (patch by David Howells) - -* Wed Jul 12 2006 Jesse Keating - 2.13-0.31.1 -- rebuild - -* Tue Jul 11 2006 Karel Zak 2.13-0.31 -- cleanup dependences for post and preun scriptlets - -* Mon Jul 10 2006 Karsten Hopp 2.13-0.30 -- silence install in minimal buildroot without /var/log - -* Fri Jul 7 2006 Karel Zak 2.13-0.29 -- include the raw command for RHELs - -* Mon Jun 26 2006 Florian La Roche 2.13-0.28 -- move install-info parts from postun to preun - -* Wed Jun 21 2006 Dan Walsh 2.13-0.27 -- Only execute chcon on machines with selinux enabled - -* Wed Jun 14 2006 Steve Dickson 2.13-0.26 -- Remove unneeded header files from nfsmount.c - -* Mon Jun 12 2006 Karel Zak 2.13-0.25 -- fix #187014 - umount segfaults for normal user -- fix #183446 - cal not UTF-8-aware -- fix #186915 - mount does not translate SELIinux context options though libselinux -- fix #185500 - Need man page entry for -o context= mount option -- fix #152579 - missing info about /etc/mtab and /proc/mounts mismatch -- fix #183890 - missing info about possible ioctl() and fcntl() problems on NFS filesystem -- fix #191230 - using mount --move results in wrong data in /etc/mtab -- added mount subtrees support -- fdisk: wrong number of sectors for large disks (suse#160822) -- merge fdisk-xvd (#182553) with new fdisk-isfull (#188981) patch -- fix #181549 - raw(8) manpage has old information about dd -- remove asm/page.h usage - -* Wed May 24 2006 Dan Walsh 2.13-0.24 -- Remove requirement on restorecon, since we can do the same thing -- with chcon/matchpathcon, and not add requirement on policycoreutils - -* Wed May 24 2006 Steve Dickson 2.13-0.23 -- Fixed bug in patch for bz183713 which cause nfs4 mounts to fail. - -* Tue May 2 2006 Steve Dickson 2.13-0.22 -- Added syslog logging to background mounts as suggested - by a customer. - -* Mon May 1 2006 Steve Dickson 2.13-0.21 -- fix #183713 - foreground mounts are not retrying as advertised -- fix #151549 - Added 'noacl' mount flag -- fix #169042 - Changed nfsmount to try udp before using tcp when rpc-ing - the remote rpc.mountd (iff -o tcp is not specified). - This drastically increases the total number of tcp mounts - that can happen at once (ala autofs). - -* Wed Mar 9 2006 Jesse Keating 2.13-0.20 -- Better calling of restorecon as suggested by Bill Nottingham -- prereq restorecon to avoid ordering issues - -* Wed Mar 9 2006 Jesse Keating 2.13-0.19 -- restorecon /var/log/lastlog - -* Wed Mar 8 2006 Karel Zak 2.13-0.17 -- fix #181782 - mkswap selinux relabeling (fix util-linux-2.13-mkswap-selinux.patch) - -* Wed Feb 22 2006 Karel Zak 2.13-0.16 -- fix #181782 - mkswap should automatically add selinux label to swapfile -- fix #180730 - col is exiting with 1 (fix util-linux-2.12p-col-EILSEQ.patch) -- fix #181896 - broken example in schedutils man pages -- fix #177331 - login omits pam_acct_mgmt & pam_chauthtok when authentication is skipped. -- fix #177523 - umount -a should not unmount sysfs -- fix #182553 - fdisk -l inside xen guest shows no disks - -* Fri Feb 10 2006 Jesse Keating - 2.13-0.15.1 -- bump again for double-long bug on ppc(64) - -* Wed Feb 8 2006 Peter Jones 2.13-0.15 -- add "blockdev --rmpart N " and "blockdev --rmparts " - -* Tue Feb 07 2006 Jesse Keating - 2.13-0.14.1 -- rebuilt for new gcc4.1 snapshot and glibc changes - -* Thu Jan 19 2006 Steve Dickson 2.13-0.14 -- Updated the gssd_check() and idmapd_check(), used with - nfsv4 mounts, to looked for the correct file in /var/lock/subsys - which stops bogus warnings. - -* Tue Jan 3 2006 Karel Zak 2.13-0.13 -- fix #174676 - hwclock audit return code mismatch -- fix #176441: col truncates data -- fix #174111 - mount allows loopback devices to be mounted more than once to the same mount point -- better wide chars usage in the cal command (based on the old 'moremisc' patch) - -* Mon Dec 12 2005 Karel Zak 2.13-0.12 -- rebuilt - -* Fri Dec 09 2005 Jesse Keating -- rebuilt - -* Fri Nov 25 2005 Karel Zak 2.13-0.11.pre6 -- update to upstream version 2.13-pre6 -- fix #172203 - mount man page in RHEL4 lacks any info on cifs mount options - -* Mon Nov 7 2005 Karel Zak 2.13-0.10.pre5 -- fix #171337 - mkfs.cramfs doesn't work correctly with empty files - -* Fri Oct 28 2005 Karel Zak 2.13-0.9.pre5 -- rebuild - -* Wed Oct 26 2005 Karel Zak 2.13-0.8.pre5 -- updated version of the patch for hwclock audit - -* Thu Oct 20 2005 Karel Zak 2.13-0.7.pre5 -- fix #171337 - mkfs.cramfs dies creating installer image - -* Thu Oct 20 2005 Karel Zak 2.13-0.6.pre5 -- update to upstream 2.13pre5 -- remove separated cramfs1.1 (already in upstream package) -- remove odd symlink /usr/bin/mkcramfs -> ../../sbin/mkfs.cramfs -- fix #170171 - ipcs -lm always report "max total shared memory (kbytes) = 0" - -* Mon Oct 17 2005 Karel Zak 2.13-0.5.pre4 -* fix #170564 - add audit message to login - -* Fri Oct 7 2005 Karel Zak 2.13-0.4.pre4 -- fix #169628 - /usr/bin/floppy doesn't work with /dev/fd0 -- fix #168436 - login will attempt to run if it has no read/write access to its terminal -- fix #168434 - login's timeout can fail - needs to call siginterrupt(SIGALRM,1) -- fix #165253 - losetup missing option -a [new feature] -- update PAM files (replace pam_stack with new "include" PAM directive) -- remove kbdrate from src.rpm -- update to 2.13pre4 - -* Fri Oct 7 2005 Steve Dickson 2.13-0.3.pre3 -- fix #170110 - Documentation for 'rsize' and 'wsize' NFS mount options - is misleading - -* Fri Sep 2 2005 Karel Zak 2.13-0.3.pre2 -- fix #166923 - hwclock will not run on a non audit-enabled kernel -- fix #159410 - mkswap(8) claims max swap area size is 2 GB -- fix #165863 - swsusp swaps should be reinitialized -- change /var/log/lastlog perms to 0644 - -* Tue Aug 16 2005 Karel Zak 2.13-0.2.pre2 -- /usr/share/misc/getopt/* -move-> /usr/share/doc/util-linux-2.13/getopt-* -- the arch command marked as deprecated -- removed: elvtune, rescuept and setfdprm -- removed: man8/sln.8 (moved to man-pages, see #10601) -- removed REDAME.pg and README.reset -- .spec file cleanup -- added schedutils (commands: chrt, ionice and taskset) - -* Tue Jul 12 2005 Karel Zak 2.12p-9.7 -- fix #159339 - util-linux updates for new audit system -- fix #158737 - sfdisk warning for large partitions, gpt -- fix #150912 - Add ocfs2 support -- NULL is better than zero at end of execl() - -* Thu Jun 16 2005 Karel Zak 2.12p-9.5 -- fix #157656 - CRM 546998: Possible bug in vipw, changes permissions of /etc/shadow and /etc/gshadow -- fix #159339 - util-linux updates for new audit system (pam_loginuid.so added to util-linux-selinux.pamd) -- fix #159418 - sfdisk unusable - crashes immediately on invocation -- fix #157674 - sync option on VFAT mount destroys flash drives -- fix .spec file /usr/sbin/{hwclock,clock} symlinks - -* Wed May 4 2005 Jeremy Katz - 2.12p-9.3 -- rebuild against new libe2fsprogs (and libblkid) to fix cramfs auto-detection - -* Mon May 2 2005 Karel Zak 2.12p-9.2 -- rebuild - -* Mon May 2 2005 Karel Zak 2.12p-9 -- fix #156597 - look - doesn't work with separators - -* Mon Apr 25 2005 Karel Zak 2.12p-8 -- fix #154498 - util-linux login & pam session -- fix #155293 - man 5 nfs should include vers as a mount option -- fix #76467 - At boot time, fsck chokes on LVs listed by label in fstab -- new Source URL -- added note about ATAPI IDE floppy to fdformat.8 -- fix #145355 - Man pages for fstab and fstab-sync in conflict - -* Tue Apr 5 2005 Karel Zak 2.12p-7 -- enable build with libblkid from e2fsprogs-devel -- remove workaround for duplicated labels - -* Thu Mar 31 2005 Steve Dickson 2.12p-5 -- Fixed nfs mount to rollback correctly. - -* Fri Mar 25 2005 Karel Zak 2.12p-4 -- added /var/log/lastlog to util-linux (#151635) -- disabled 'newgrp' in util-linux (enabled in shadow-utils) (#149997, #151613) -- improved mtab lock (#143118) -- fixed ipcs typo (#151156) -- implemented mount workaround for duplicated labels (#116300) - -* Wed Mar 16 2005 Elliot Lee 2.12p-3 -- rebuilt - -* Fri Feb 25 2005 Steve Dickson 2.12p-2 -- Changed nfsmount to only use reserve ports when necessary - (bz# 141773) - -* Thu Dec 23 2004 Elliot Lee 2.12p-1 -- Update to util-linux-2.12p. This changes swap header format - from - you may need to rerun mkswap if you did a clean install of - FC3. - -* Fri Dec 10 2004 Elliot Lee 2.12j-1 -- Update to util-linux-2.12j - -* Tue Dec 7 2004 Steve Dickson 2.12a-20 -- Corrected a buffer overflow problem with nfs mounts. - (bz# 141733) - -* Wed Dec 01 2004 Elliot Lee 2.12a-19 -- Patches for various bugs. - -* Mon Nov 29 2004 Steve Dickson 2.12a-18 -- Made NFS mounts adhere to the IP protocol if specified on - command line as well as made NFS umounts adhere to the - current IP protocol. Fix #140016 - -* Thu Oct 14 2004 Elliot Lee 2.12a-16 -- Add include_raw macro, build with it off for Fedora - -* Wed Oct 13 2004 Stephen C. Tweedie - 2.12a-15 -- Add raw patch to allow binding of devices not yet in /dev - -* Wed Oct 13 2004 John (J5) Palmieri 2.12a-14 -- Add David Zeuthen's patch to enable the pamconsole flag #133941 - -* Wed Oct 13 2004 Stephen C. Tweedie 2.12a-13 -- Restore raw utils (bugzilla #130016) - -* Mon Oct 11 2004 Phil Knirsch 2.12a-12 -- Add the missing remote entry in pam.d - -* Wed Oct 6 2004 Steve Dickson -- Rechecked in some missing NFS mounting code. - -* Wed Sep 29 2004 Elliot Lee 2.12a-10 -- Make swaplabel support work with swapon -a -e - -* Tue Sep 28 2004 Steve Dickson -- Updated the NFS and NFS4 code to the latest CITI patch set - (in which they incorporate a number of our local patches). - -* Wed Sep 15 2004 Nalin Dahybhai 2.12a-8 -- Fix #132196 - turn on SELinux support at build-time. - -* Wed Sep 15 2004 Phil Knirsch 2.12a-7 -- Fix #91174 with pamstart.patch - -* Tue Aug 31 2004 Elliot Lee 2.12a-6 -- Fix #16415, #70616 with rdevman.patch -- Fix #102566 with loginman.patch -- Fix #104321 with rescuept.patch (just use plain lseek - we're in _FILE_OFFSET_BITS=64 land now) -- Fix #130016 - remove raw. -- Re-add agetty (replacing it with mgetty is too much pain, and mgetty is much larger) - -* Thu Aug 26 2004 Steve Dickson -- Made the NFS security checks more explicit to avoid confusion - (an upstream fix) -- Also removed a compilation warning - -* Wed Aug 11 2004 Alasdair Kergon -- Remove unused mount libdevmapper inclusion. - -* Wed Aug 11 2004 Alasdair Kergon -- Add device-mapper mount-by-label support -- Fix segfault in mount-by-label when a device without a label is present. - -* Wed Aug 11 2004 Steve Dickson -- Updated nfs man page to show that intr are on by - default for nfs4 - -* Thu Aug 05 2004 Jindrich Novy -- modified warning causing heart attack for >16 partitions, #107824 - -* Fri Jul 09 2004 Elliot Lee 2.12a-3 -- Fix #126623, #126572 -- Patch cleanup -- Remove agetty (use mgetty, agetty is broken) - -* Tue Jun 15 2004 Elliot Lee -- rebuilt - -* Thu Jun 03 2004 Elliot Lee 2.12a-1 -- Update to 2.12a -- Fix #122448 - -* Thu May 13 2004 Dan Walsh 2.12-19 -- Change pam_selinux to run last - -* Tue May 04 2004 Elliot Lee 2.12-18 -- Fix #122448 (autofs issues) - -* Fri Apr 23 2004 Elliot Lee 2.12-17 -- Fix #119157 by editing the patch -- Add patch145 to fix #119986 - -* Fri Apr 16 2004 Elliot Lee 2.12-16 -- Fix #118803 - -* Tue Mar 23 2004 Jeremy Katz 2.12-15 -- mkcramfs: use PAGE_SIZE for default blocksize (#118681) - -* Sat Mar 20 2004 -- Updated the nfs-mount.patch to correctly - handle the mounthost option and to ignore - servers that do not set auth flavors - -* Tue Mar 16 2004 Dan Walsh 2.12-13 -- Fix selinux ordering or pam for login - -* Tue Mar 16 2004 -- Make RPC error messages displayed with -v argument -- Added two checks to the nfs4 path what will print warnings - when rpc.idmapd and rpc.gssd are not running -- Ping NFS v4 servers before diving into kernel -- Make v4 mount interruptible which also make the intr option on by default - -* Sun Mar 13 2004 -- Reworked how the rpc.idmapd and rpc.gssd checks were - done due to review comments from upstream. -- Added rpc_strerror() so the '-v' flag will show RPC errors. - -* Sat Mar 13 2004 -- Added two checks to the nfs4 path what will print warnings - when rpc.idmapd and rpc.gssd are not running. - -* Thu Mar 11 2004 -- Reworked and updated the nfsv4 patches. - -* Wed Mar 10 2004 Dan Walsh -- Bump version - -* Wed Mar 10 2004 Steve Dickson -- Tried to make nfs error message a bit more meaninful -- Cleaned up some warnings - -* Sun Mar 7 2004 Steve Dickson -- Added pesudo flavors for nfsv4 mounts. -- Added BuildRequires: libselinux-devel and Requires: libselinux - when WITH_SELINUX is set. - -* Fri Feb 27 2004 Dan Walsh 2.12-5 -- check for 2.6.3 kernel in mount options - -* Mon Feb 23 2004 Elliot Lee 2.12-4 -- Remove /bin/kill for #116100 - -* Fri Feb 20 2004 Dan Walsh 2.12-3 -- rebuilt - -* Fri Feb 13 2004 Elliot Lee -- rebuilt - -* Thu Feb 12 2004 Elliot Lee 2.12-1 -- Final 2.12 has been out for ages - might as well use it. - -* Wed Jan 28 2004 Steve Dickson 2.12pre-4 -- Added mount patches that have NFS version 4 support - -* Mon Jan 26 2004 Elliot Lee 2.12pre-3 -- Provides: mount losetup - -* Mon Jan 26 2004 Dan Walsh 2.12pre-2 -- Add multiple to /etc/pam.d/login for SELinux - -* Thu Jan 15 2004 Elliot Lee 2.12pre-1 -- 2.12pre-1 -- Merge mount/losetup packages into the main package (#112324) -- Lose separate - -* Mon Nov 3 2003 Dan Walsh 2.11y-35.sel -- remove selinux code from login and use pam_selinux - -* Thu Oct 30 2003 Dan Walsh 2.11y-34.sel -- turn on selinux - -* Fri Oct 24 2003 Elliot Lee 2.11y-34 -- Add BuildRequires: texinfo (from a bug# I don't remember) -- Fix #90588 with mountman patch142. - -* Mon Oct 6 2003 Dan Walsh 2.11y-33 -- turn off selinux - -* Thu Sep 25 2003 Dan Walsh 2.11y-32.sel -- turn on selinux -- remove context selection - -* Fri Sep 19 2003 Elliot Lee 2.11y-31 -- Add patch140 (alldevs) to fix #101772. Printing the total size of - all devices was deemed a lower priority than having all devices - (e.g. /dev/ida/c0d9) displayed. - -* Fri Sep 12 2003 Dan Walsh 2.11y-31 -- turn off selinux - -* Fri Sep 12 2003 Dan Walsh 2.11y-30.sel -- turn on selinux - -* Fri Sep 5 2003 Elliot Lee 2.11y-28 -- Fix #103004, #103954 - -* Fri Sep 5 2003 Dan Walsh 2.11y-27 -- turn off selinux - -* Thu Sep 4 2003 Dan Walsh 2.11y-26.sel -- build with selinux - -* Mon Aug 11 2003 Elliot Lee 2.11y-25 -- Use urandom instead for mkcramfs - -* Tue Jul 29 2003 Dan Walsh 2.11y-24 -- add SELINUX 2.5 support - -* Wed Jul 23 2003 Elliot Lee 2.11y-22 -- #100433 patch - -* Mon Jun 14 2003 Elliot Lee 2.11y-20 -- #97381 patch - -* Wed Jun 04 2003 Elliot Lee -- rebuilt - -* Mon Apr 21 2003 Elliot Lee 2.11y-17 -- Change patch128 to improve ipcs -l - -* Fri Apr 11 2003 Elliot Lee 2.11y-16 -- Fix #85407 - -* Fri Apr 11 2003 Elliot Lee 2.11y-15 -- Change patch128 to util-linux-2.11f-ipcs-84243-86285.patch to get all -ipcs fixes - -* Thu Apr 10 2003 Matt Wilson 2.11y-14 -- fix last login date display on AMD64 (#88574) - -* Mon Apr 7 2003 Jeremy Katz 2.11y-13 -- include sfdisk on ppc - -* Fri Mar 28 2003 Jeremy Katz 2.11y-12 -- add patch from msw to change mkcramfs blocksize with a command line option - -* Tue Mar 25 2003 Phil Knirsch 2.11y-11 -- Fix segfault on s390x due to wrong usage of BLKGETSIZE. - -* Thu Mar 13 2003 Elliot Lee 2.11y-10 -- Really apply the ipcs patch. Doh. - -* Mon Feb 24 2003 Elliot Lee -- rebuilt - -* Wed Feb 19 2003 Elliot Lee 2.11y-8 -- ipcs-84243.patch to fix #84243 - -* Thu Feb 13 2003 Yukihiro Nakai 2.11y-7 -- Update moremisc patch to fix swprintf()'s minimum field (bug #83361). - -* Mon Feb 03 2003 Elliot Lee 2.11y-6 -- Fix mcookie segfault on many 64-bit architectures (bug #83345). - -* Mon Feb 03 2003 Tim Waugh 2.11y-5 -- Fix underlined multibyte characters (bug #83376). - -* Sun Feb 02 2003 Florian La Roche -- rebuild to have again a s390 rpm -- disable some more apps for mainframe - -* Wed Jan 29 2003 Elliot Lee 2.11y-4 -- util-linux-2.11y-umask-82552.patch - -* Wed Jan 22 2003 Tim Powers -- rebuilt - -* Mon Jan 13 2003 Elliot Lee 2.11y-2 -- Fix #81069, #75421 - -* Mon Jan 13 2003 Elliot Lee 2.11y-1 -- Update to 2.11y -- Fix #80953 -- Update patch0, patch107, patch117, patch120 for 2.11y -- Remove patch60, patch61, patch207, patch211, patch212, patch119, patch121 -- Remove patch122, patch200 - -* Wed Oct 30 2002 Elliot Lee 2.11w-2 -- Remove some crack/unnecessary patches while submitting stuff upstream. -- Build with -D_FILE_OFFSET_BITS=64 - -* Tue Oct 29 2002 Elliot Lee 2.11w-1 -- Update to 2.11w, resolve patch conflicts - -* Tue Oct 08 2002 Phil Knirsch 2.11r-10hammer.3 -- Extended util-linux-2.11b-s390x patch to work again. - -* Thu Oct 03 2002 Elliot Lee 2.11r-10hammer.2 -- Add patch122 for hwclock on x86_64 - -* Thu Sep 12 2002 Than Ngo 2.11r-10hammer.1 -- Fixed pam config files - -* Wed Sep 11 2002 Bernhard Rosenkraenzer 2.11r-10hammer -- Port to hammer - -* Fri Aug 30 2002 Elliot Lee 2.11r-10 -- Patch120 (hwclock) to fix #72140 -- Include isosize util - -* Wed Aug 7 2002 Elliot Lee 2.11r-9 -- Patch120 (skipraid2) to fix #70353, because the original patch was -totally useless. - -* Fri Aug 2 2002 Elliot Lee 2.11r-8 -- Patch119 (fdisk-add-primary) from #67898 - -* Wed Jul 24 2002 Elliot Lee 2.11r-7 -- Really add the gptsize patch, instead of what I think the patch says. -(+1) - -* Tue Jul 23 2002 Elliot Lee 2.11r-6 -- Add the sp[n].size part of the patch from #69603 - -* Mon Jul 22 2002 Florian La Roche -- adjust mainframe patches - -* Tue Jul 2 2002 Bill Nottingham 2.11r-4 -- only require usermode if we're shipping kbdrate here - -* Fri Jun 28 2002 Trond Eivind Glomsrod 2.11r-3 -- Port the large swap patch to new util-linux... the off_t changes - now in main aren't sufficient - -* Thu Jun 27 2002 Elliot Lee 2.11r-2 -- Remove swapondetect (patch301) until it avoids possible false positives. - -* Thu Jun 27 2002 Elliot Lee 2.11r-1 -- Update to 2.11r, wheeee -- Remove unused patches - -* Thu Jun 27 2002 Elliot Lee 2.11n-19 -- Make a note here that this package was the source of the single change -contained in util-linux-2.11f-18 (in 7.2/Alpha), and also contains the -rawman patch from util-linux-2.11f-17.1 (in 2.1AS). -- Package has no runtime deps on slang, so remove the BuildRequires: -slang-devel. - -* Fri Jun 21 2002 Tim Powers -- automated rebuild - -* Thu Jun 20 2002 Elliot Lee 2.11n-17 -- Fix teg's swapondetect patch to not print out the usage message when -'swapon -a -e' is run. (#66690) (edit existing patch) -- Apply hjl's utmp handling patch (#66950) (patch116) -- Fix fdisk man page notes on IDE disk partition limit (#64013) (patch117) -- Fix mount.8 man page notes on vfat shortname option (#65628) (patch117) -- Fix possible cal overflow with widechars (#67090) (patch117) - -* Tue Jun 11 2002 Trond Eivind Glomsrod 2.11n-16 -- support large swap partitions -- add '-d' option to autodetect available swap partitions - -* Thu May 23 2002 Tim Powers -- automated rebuild - -* Wed May 15 2002 Elliot Lee 2.11n-14 -- Remove kbdrate (again). - -* Mon Apr 29 2002 Florian La Roche -- adjust mainframe patches to apply to current rpm -- do not include fdisk until it is fixed to work on mainframe - -* Mon Apr 01 2002 Elliot Lee 2.11n-12 -- Don't strip binaries - rpm does it for us. - -* Sun Mar 31 2002 Elliot Lee 2.11n-11 -- Apply patch115 from ejb@ql.org for bug #61868 - -* Wed Mar 27 2002 Elliot Lee 2.11n-10 -- Finish fixing #60675 (ipcrm man page), updated the patch. -- Fix #61203 (patch114 - dumboctal.patch). - -* Tue Mar 12 2002 Elliot Lee 2.11n-9 -- Update ctty3 patch to ignore SIGHUP while dropping controlling terminal - -* Fri Mar 08 2002 Elliot Lee 2.11n-8 -- Update ctty3 patch to drop controlling terminal before forking. - -* Fri Mar 08 2002 Elliot Lee 2.11n-7 - Fix various bugs: -- Add patch110 (skipraid) to properly skip devices that are part of a RAID array. -- Add patch111 (mkfsman) to update the mkfs man page's "SEE ALSO" section. -- remove README.cfdisk -- Include partx -- Fix 54741 and related bugs for good(hah!) with patch113 (ctty3) - -* Wed Mar 06 2002 Elliot Lee 2.11n-6 -- Put kbdrate in, add usermode dep. - -* Tue Feb 26 2002 Elliot Lee 2.11n-5 -- Fix #60363 (tweak raw.8 man page, make rawdevices.8 symlink). - -* Tue Jan 28 2002 Bill Nottingham 2.11n-4 -- remove kbdrate (fixes kbd conflict) - -* Fri Dec 28 2001 Elliot Lee 2.11n-3 -- Add util-linux-2.11n-ownerumount.patch (#56593) -- Add patch102 (util-linux-2.11n-colrm.patch) to fix #51887 -- Fix #53452 nits. -- Fix #56953 (remove tunelp on s390) -- Fix #56459, and in addition switch to using sed instead of perl. -- Fix #58471 -- Fix #57300 -- Fix #37436 -- Fix #32132 - -* Wed Dec 26 2001 Elliot Lee 2.11n-1 -- Update to 2.11n -- Merge mount/losetup back in. - -* Tue Dec 04 2001 Elliot Lee 2.11f-17 -- Add patch38 (util-linux-2.11f-ctty2.patch) to ignore SIGINT/SIGTERM/SIGQUIT in the parent, so that ^\ won't break things. - -* Fri Nov 09 2001 Elliot Lee 2.11f-16 -- Merge patches 36, 75, 76, and 77 into patch #37, to attempt resolve all the remaining issues with #54741. - -* Wed Oct 24 2001 Florian La Roche -- add nologin man-page for s390/s390x - -* Wed Oct 24 2001 Bernhard Rosenkraenzer 2.11f-14 -- Don't build kbdrate on s390/s390x -- Don't make the pivot_root.8 man page executable(!) - -* Tue Oct 23 2001 Elliot Lee 2.11f-13 -- Patch/idea #76 from HJL, fixes bug #54741 (race condition in login -acquisition of controlling terminal). - -* Thu Oct 11 2001 Bill Nottingham -- fix permissions problem with vipw & shadow files, again (doh!) - -* Tue Oct 09 2001 Erik Troan -- added patch from Olaf Kirch to fix possible pwent structure overwriting - -* Fri Sep 28 2001 Elliot Lee 2.11f-10 -- fdisk patch from arjan - -* Sun Aug 26 2001 Elliot Lee 2.11f-9 -- Don't include cfdisk, since it appears to be an even bigger pile of junk than fdisk? :) - -* Wed Aug 1 2001 Tim Powers -- don't require usermode - -* Mon Jul 30 2001 Elliot Lee 2.11f-7 -- Incorporate kbdrate back in. - -* Mon Jul 30 2001 Bill Nottingham -- revert the patch that calls setsid() in login that we had reverted - locally but got integrated upstream (#46223) - -* Tue Jul 24 2001 Florian La Roche -- correct s390x patch - -* Mon Jul 23 2001 Elliot Lee -- Add my megapatch (various bugs) -- Include pivot_root (#44828) - -* Thu Jul 12 2001 Bill Nottingham -- make shadow files 0400, not 0600 - -* Wed Jul 11 2001 Bill Nottingham -- fix permissions problem with vipw & shadow files - -* Mon Jun 18 2001 Florian La Roche -- update to 2.11f, remove any merged patches -- add s390x patches for somewhat larger swap - -* Thu Jun 14 2001 Erik Troan -- added --verbose patch to mkcramfs; it's much quieter by default now - -* Tue May 22 2001 Erik Troan -- removed warning about starting partitions on cylinder 0 -- swap version2 - makes it unnecessary - -* Wed May 9 2001 Bernhard Rosenkraenzer 2.11b-2 -- Fix up s390x support - -* Mon May 7 2001 Bernhard Rosenkraenzer 2.11b-1 -- Fix up login for real (a console session should be the controlling tty) - by reverting to 2.10s code (#36839, #36840, #39237) -- Add man page for agetty (#39287) -- 2.11b, while at it - -* Fri Apr 27 2001 Preston Brown 2.11a-4 -- /sbin/nologin from OpenBSD added. - -* Fri Apr 20 2001 Bernhard Rosenkraenzer 2.11a-3 -- Fix up login - exiting immediately even if the password is correct - is not exactly a nice feature. -- Make definite plans to kill people who update login without checking - if the new version works ;) - -* Tue Apr 17 2001 Erik Troan -- upgraded to 2.11a (kbdrate moved to kbd, among other things) -- turned off ALLOW_VCS_USE -- modified mkcramfs to not use a large number of file descriptors -- include mkfs.bfs - -* Sun Apr 8 2001 Matt Wilson -- changed Requires: kernel >= 2.2.12-7 to Conflicts: kernel < 2.2.12-7 - (fixes a initscripts -> util-linux -> kernel -> initscripts prereq loop) - -* Tue Mar 20 2001 Matt Wilson -- patched mkcramfs to use the PAGE_SIZE from asm/page.h instead of hard - coding 4096 (fixes mkcramfs on alpha...) - -* Mon Mar 19 2001 Matt Wilson -- added mkcramfs (from linux/scripts/mkcramfs) - -* Mon Feb 26 2001 Tim Powers -- fixed bug #29131, where ipc.info didn't have an info dir entry, - added the dir entry to ipc.texi (Patch58) - -* Fri Feb 23 2001 Preston Brown -- use lang finder script -- install info files - -* Thu Feb 08 2001 Erik Troan -- reverted login patch; seems to cause problems -- added agetty - -* Wed Feb 07 2001 Erik Troan -- updated kill man page -- added patch to fix vipw race -- updated vipw to edit /etc/shadow and /etc/gshadow, if appropriate -- added patch to disassociate login from tty, session, and pgrp - -* Tue Feb 06 2001 Erik Troan -- fixed problem w/ empty extended partitions -- added patch to fix the date in the more man page -- set OPT to pass optimization flags to make rather then RPM_OPT_FLAG -- fixed fdisk -l /Proc/partitions parsing -- updated to 2.10s - -* Tue Jan 23 2001 Preston Brown -- danish translations added - -* Mon Jan 15 2001 Nalin Dahyabhai -- fix segfault in login in btmp patch (#24025) - -* Mon Dec 11 2000 Oliver Paukstadt -- ported to s390 - -* Wed Nov 01 2000 Florian La Roche -- update to 2.10p -- update patch37 to newer fdisk version - -* Mon Oct 9 2000 Jeff Johnson -- update to 2.10o -- fdformat: fixed to work with kernel 2.4.0test6 (Marek Wojtowicz) -- login: not installed suid -- getopt: by default install aux files in /usr/share/misc -- update to 2.10n: -- added blockdev.8 -- change to elvtune (andrea) -- fixed overrun in agetty (vii@penguinpowered.com) -- shutdown: prefer umounting by mount point (rgooch) -- fdisk: added plan9 -- fdisk: remove empty links in chain of extended partitions -- hwclock: handle both /dev/rtc and /dev/efirtc (Bill Nottingham) -- script: added -f (flush) option (Ivan Schreter) -- script: added -q (quiet) option (Per Andreas Buer) -- getopt: updated to version 1.1.0 (Frodo Looijaard) -- Czech messages (Jiri Pavlovsky) -- login.1 man page had not /var/spool/mail path (#16998). -- sln.8 man page (but not executable) included (#10601). -- teach fdisk 0xde(Dell), 0xee(EFI GPT), 0xef(EFI FAT) partitions (#17610). - -* Wed Aug 30 2000 Matt Wilson -- rebuild to cope with glibc locale binary incompatibility, again - -* Mon Aug 14 2000 Jeff Johnson -- setfdprm should open with O_WRONLY, not 3. - -* Fri Aug 11 2000 Jeff Johnson -- fdformat should open with O_WRONLY, not 3. - -* Fri Jul 21 2000 Nalin Dahyabhai -- make 'look' look in /usr/share/dict - -* Fri Jul 21 2000 Bill Nottingham -- put /usr/local/sbin:/usr/local/bin in root's path - -* Wed Jul 19 2000 Jakub Jelinek -- rebuild to cope with glibc locale binary incompatibility - -* Thu Jul 13 2000 Prospector -- automatic rebuild - -* Mon Jul 10 2000 Bill Nottingham -- enable hwclock to use /dev/efirtc on ia64 (gettext is fun. :( ) - -* Mon Jul 3 2000 Bill Nottingham -- move cfdisk to /usr/sbin, it depends on /usr stuff -- add rescuept - -* Fri Jun 23 2000 Bernhard Rosenkraenzer -- point more at the correct path to vi (for "v"), Bug #10882 - -* Sun Jun 4 2000 Jeff Johnson -- FHS packaging changes. - -* Thu Jun 1 2000 Nalin Dahyabhai -- modify PAM setup to use system-auth - -* Mon May 1 2000 Bill Nottingham -- eek, where did login go? (specfile tweaks) - -* Mon Apr 17 2000 Bernhard Rosenkraenzer -- 2.10k -- fix compilation with current glibc - -* Tue Mar 21 2000 Bernhard Rosenkraenzer -- 2.10h - -* Tue Mar 7 2000 Jeff Johnson -- rebuild for sparc baud rates > 38400. - -* Sat Mar 4 2000 Matt Wilson -- use snprintf - not sprintf - when doing - sprintf ("%%s\n", _("Some string")) to avoid overflows and - segfaults. - -* Mon Feb 21 2000 Jeff Johnson -- raw control file was /dev/raw, now /dev/rawctl. -- raw access files were /dev/raw*, now /dev/raw/raw*. - -* Thu Feb 17 2000 Erik Troan -- -v argument to mkswap wasn't working - -* Thu Feb 10 2000 Jakub Jelinek -- Recognize 0xfd on Sun disklabels as RAID - -* Tue Feb 8 2000 Bill Nottingham -- more lives in /bin, and was linked against /usr/lib/libnurses. Bad. - -* Thu Feb 03 2000 Jakub Jelinek -- update to 2.10f -- fix issues in the new realpath code, avoid leaking memory - -* Tue Feb 01 2000 Cristian Gafton -- rebuild to fix dependencies -- add NFSv3 patches - -* Fri Jan 28 2000 Bill Nottingham -- don't require csh - -* Mon Jan 24 2000 Nalin Dahyabhai -- update to 2.10e -- add rename - -* Thu Jan 20 2000 Jeff Johnson -- strip newlines in logger input. - -* Mon Jan 10 2000 Jeff Johnson -- rebuild with correct ncurses libs. - -* Tue Dec 7 1999 Matt Wilson -- updated to util-linux 2.10c -- deprecated IMAP login mail notification patch17 -- deprecated raw patch22 -- depricated readprofile patch24 - -* Tue Dec 7 1999 Bill Nottingham -- add patch for readprofile - -* Thu Nov 18 1999 Michael K. Johnson -- tunelp should come from util-linux - -* Tue Nov 9 1999 Jakub Jelinek -- kbdrate cannot use /dev/port on sparc. - -* Wed Nov 3 1999 Jakub Jelinek -- fix kbdrate on sparc. - -* Wed Oct 27 1999 Bill Nottingham -- ship hwclock on alpha. - -* Tue Oct 5 1999 Bill Nottingham -- don't ship symlinks to rdev if we don't ship rdev. - -* Tue Sep 07 1999 Cristian Gafton -- add rawIO support from sct - -* Mon Aug 30 1999 Preston Brown -- don't display "new mail" message when the only piece of mail is from IMAP - -* Fri Aug 27 1999 Michael K. Johnson -- kbdrate is now a console program - -* Thu Aug 26 1999 Jeff Johnson -- hostid is now in sh-utils. On sparc, install hostid as sunhostid (#4581). -- update to 2.9w: -- Updated mount.8 (Yann Droneaud) -- Improved makefiles -- Fixed flaw in fdisk - -* Tue Aug 10 1999 Jeff Johnson -- tsort is now in textutils. - -* Wed Aug 4 1999 Bill Nottingham -- turn off setuid bit on login. Again. :( - -* Tue Aug 3 1999 Peter Jones, -- hostid script for sparc (#3803). - -* Tue Aug 03 1999 Christian 'Dr. Disk' Hechelmann -- added locale message catalogs to %%file -- added patch for non-root build -- vigr.8 and /usr/lib/getopt man-page was missing from file list -- /etc/fdprm really is a config file - -* Fri Jul 23 1999 Jeff Johnson -- update to 2.9v: -- cfdisk no longer believes the kernel's HDGETGEO - (and may be able to partition a 2 TB disk) - -* Fri Jul 16 1999 Jeff Johnson -- update to 2.9u: -- Czech more.help and messages (Jiri Pavlovsky) -- Japanese messages (Daisuke Yamashita) -- fdisk fix (Klaus G. Wagner) -- mount fix (Hirokazu Takahashi) -- agetty: enable hardware flow control (Thorsten Kranzkowski) -- minor cfdisk improvements -- fdisk no longer accepts a default device -- Makefile fix - -* Tue Jul 6 1999 Jeff Johnson -- update to 2.9t: -- national language support for hwclock -- Japanese messages (both by Daisuke Yamashita) -- German messages and some misc i18n fixes (Elrond) -- Czech messages (Jiri Pavlovsky) -- wall fixed for /dev/pts/xx ttys -- make last and wall use getutent() (Sascha Schumann) - [Maybe this is bad: last reading all of wtmp may be too slow. - Revert in case people complain.] -- documented UUID= and LABEL= in fstab.5 -- added some partition types -- swapon: warn only if verbose - -* Fri Jun 25 1999 Jeff Johnson -- update to 2.9s. - -* Sat May 29 1999 Jeff Johnson -- fix mkswap sets incorrect bits on sparc64 (#3140). - -* Thu Apr 15 1999 Jeff Johnson -- on sparc64 random ioctls on clock interface cause kernel messages. - -* Thu Apr 15 1999 Jeff Johnson -- improved raid patch (H.J. Lu). - -* Wed Apr 14 1999 Michael K. Johnson -- added patch for smartraid controllers - -* Sat Apr 10 1999 Cristian Gafton -- fix logging problems caused by setproctitle and PAM interaction - (#2045) - -* Wed Mar 31 1999 Jeff Johnson -- include docs and examples for sfdisk (#1164) - -* Mon Mar 29 1999 Matt Wilson -- rtc is not working properly on alpha, we can't use hwclock yet. - -* Fri Mar 26 1999 Cristian Gafton -- add patch to make mkswap more 64 bit friendly... Patch from - eranian@hpl.hp.com (ahem!) - -* Thu Mar 25 1999 Jeff Johnson -- include sfdisk (#1164) -- fix write (#1784) -- use positive logic in spec file (%%ifarch rather than %ifnarch). -- (re)-use 1st matching utmp slot if search by mypid not found. -- update to 2.9o -- lastb wants bad logins in wtmp clone /var/run/btmp (#884) - -* Thu Mar 25 1999 Jakub Jelinek -- if hwclock is to be compiled on sparc, - it must actually work. Also, it should obsolete - clock, otherwise it clashes. -- limit the swap size in mkswap for 2.2.1+ kernels - by the actual maximum size kernel can handle. -- fix kbdrate on sparc, patch by J. S. Connell - - -* Wed Mar 24 1999 Matt Wilson -- added pam_console back into pam.d/login - -* Tue Mar 23 1999 Matt Wilson -- updated to 2.9i -- added hwclock for sparcs and alpha - -* Mon Mar 22 1999 Erik Troan -- added vigr to file list - -* Sun Mar 21 1999 Cristian Gafton -- auto rebuild in the new build environment (release 12) - -* Thu Mar 18 1999 Cristian Gafton -- remove most of the ifnarch arm stuff - -* Mon Mar 15 1999 Michael Johnson -- added pam_console.so to /etc/pam.d/login - -* Thu Feb 4 1999 Michael K. Johnson -- .perms patch to login to make it retain root in parent process - for pam_close_session to work correctly - -* Tue Jan 12 1999 Jeff Johnson -- strip fdisk in buildroot correctly (#718) - -* Mon Jan 11 1999 Cristian Gafton -- have fdisk compiled on sparc and arm - -* Mon Jan 11 1999 Erik Troan -- added beos partition type to fdisk - -* Wed Dec 30 1998 Cristian Gafton -- incorporate fdisk on all arches - -* Sat Dec 5 1998 Jeff Johnson -- restore PAM functionality at end of login (Bug #201) - -* Thu Dec 03 1998 Cristian Gafton -- patch top build on the arm without PAM and related utilities, for now. -- build hwclock only on intel - -* Wed Nov 18 1998 Cristian Gafton -- upgraded to version 2.9 - -* Thu Oct 29 1998 Bill Nottingham -- build for Raw Hide (slang-1.2.2) -- patch kbdrate wackiness so it builds with egcs - -* Tue Oct 13 1998 Erik Troan -- patched more to use termcap - -* Mon Oct 12 1998 Erik Troan -- added warning about alpha/bsd label starting cylinder - -* Mon Sep 21 1998 Erik Troan -- use sigsetjmp/siglongjmp in more rather then sig'less versions - -* Fri Sep 11 1998 Jeff Johnson -- explicit attrs for setuid/setgid programs - -* Thu Aug 27 1998 Cristian Gafton -- sln is now included in glibc - -* Sun Aug 23 1998 Jeff Johnson -- add cbm1581 floppy definitions (problem #787) - -* Mon Jun 29 1998 Jeff Johnson -- remove /etc/nologin at end of shutdown/halt. - -* Fri Jun 19 1998 Jeff Johnson -- add mount/losetup. - -* Thu Jun 18 1998 Jeff Johnson -- update to 2.8 with 2.8b clean up. hostid now defunct? - -* Mon Jun 01 1998 David S. Miller -- "more" now works properly on sparc - -* Sat May 02 1998 Jeff Johnson -- Fix "fdisk -l" fault on mounted cdrom. (prob #513) - -* Fri Apr 24 1998 Prospector System -- translations modified for de, fr, tr - -* Sat Apr 11 1998 Cristian Gafton -- manhattan rebuild - -* Mon Dec 29 1997 Erik Troan -- more didn't suspend properly on glibc -- use proper tc*() calls rather then ioctl's - -* Sun Dec 21 1997 Cristian Gafton -- fixed a security problem in chfn and chsh accepting too - long gecos fields - -* Fri Dec 19 1997 Mike Wangsmo -- removed "." from default path - -* Tue Dec 02 1997 Cristian Gafton -- added (again) the vipw patch - -* Wed Oct 22 1997 Michael Fulbright -- minor cleanups for glibc 2.1 - -* Fri Oct 17 1997 Michael Fulbright -- added vfat32 filesystem type to list recognized by fdisk - -* Fri Oct 10 1997 Erik Troan -- don't build clock on the alpha -- don't install chkdupexe - -* Thu Oct 02 1997 Michael K. Johnson -- Update to new pam standard. -- BuildRoot. - -* Thu Sep 25 1997 Cristian Gafton -- added rootok and setproctitle patches -- updated pam config files for chfn and chsh - -* Tue Sep 02 1997 Erik Troan -- updated MCONFIG to automatically determine the architecture -- added glibc header hacks to fdisk code -- rdev is only available on the intel - -* Fri Jul 18 1997 Erik Troan -- update to util-linux 2.7, fixed login problems - -* Wed Jun 25 1997 Erik Troan -- Merged Red Hat changes into main util-linux source, updated package to - development util-linux (nearly 2.7). - -* Tue Apr 22 1997 Michael K. Johnson -- LOG_AUTH --> LOG_AUTHPRIV in login and shutdown - -* Mon Mar 03 1997 Michael K. Johnson -- Moved to new pam and from pam.conf to pam.d - -* Tue Feb 25 1997 Michael K. Johnson -- pam.patch differentiated between different kinds of bad logins. - In particular, "user does not exist" and "bad password" were treated - differently. This was a minor security hole. diff --git a/uuidd.init b/uuidd.init deleted file mode 100755 index 9fba666..0000000 --- a/uuidd.init +++ /dev/null @@ -1,117 +0,0 @@ -#!/bin/bash -# -# uuidd uuidd daemon for unique time-based UUID generation -# -# Author: Eric Sandeen -# -# chkconfig: - 60 99 -# -# description: uuidd is a helper daemon to guarantee uniqueness of \ -# time-based UUIDs when using libuuid. -# processname: uuidd -# pidfile: /var/lib/libuuid/uuidd.pid -# - -### BEGIN INIT INFO -# Provides: uuidd -# Required-Start: $time $local_fs -# Required-Stop: $time $local_fs -# Default-Stop: 0 1 6 -# Short-Description: UUID daemon -# Description: Daemon which guarantees uniqueness of time-based UUIDS -# when using libuuid. -### END INIT INFO - -# source function library -. /etc/rc.d/init.d/functions - -[ -e /etc/sysconfig/uuidd ] && . /etc/sysconfig/uuidd - -DAEMON=uuidd -exec=/usr/sbin/uuidd -prog=uuidd -user=uuidd -lockfile=/var/lock/subsys/$DAEMON -pidfile=/var/run/uuidd/uuidd.pid - -check() { - # Check that we're a privileged user - [ $(id -u) -eq 0 ] || exit 4 - - # Check if daemon binary is executable - [ -x $exec ] || exit 5 -} - -start () { - check - echo -n $"Starting $prog: " - daemon --user $user --pidfile $pidfile $DAEMON - retval=$? - echo - [ $retval -eq 0 ] && touch $lockfile - return $retval -} - -stop () { - check - echo -n $"Stopping $prog: " - killproc $DAEMON - retval=$? - echo - [ $retval -eq 0 ] && rm -f $lockfile - return $retval -} - -restart() { - stop - start -} - -reload() { - restart -} - -force_reload() { - restart -} - -rh_status() { - status -p $pidfile $DAEMON -} - -rh_status_q() { - rh_status >/dev/null 2>&1 -} - - -case "$1" in - start) - rh_status_q && exit 0 - $1 - ;; - stop) - rh_status_q || exit 0 - $1 - ;; - restart) - $1 - ;; - reload) - rh_status_q || exit 7 - $1 - ;; - force-reload) - force_reload - ;; - status) - rh_status - ;; - condrestart|try-restart) - rh_status_q || exit 0 - restart - ;; - *) - echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" - exit 2 -esac -exit $? From bac1509084d0b0911d465b84973e4b3e861b5e07 Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Thu, 27 Jan 2011 20:41:10 +0100 Subject: [PATCH 15/15] 2.18-4.8: CVE-2010-3879 Signed-off-by: Karel Zak --- util-linux-ng-2.18-mount-noncanon.patch | 29 +++++++++++++++++++++++++ util-linux-ng.spec | 8 ++++++- 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 util-linux-ng-2.18-mount-noncanon.patch diff --git a/util-linux-ng-2.18-mount-noncanon.patch b/util-linux-ng-2.18-mount-noncanon.patch new file mode 100644 index 0000000..e9629e9 --- /dev/null +++ b/util-linux-ng-2.18-mount-noncanon.patch @@ -0,0 +1,29 @@ +From 1cf4c20b198c0c6566198fd00b983d9aaf8321bc Mon Sep 17 00:00:00 2001 +From: Miklos Szeredi +Date: Thu, 7 Oct 2010 16:05:12 +0200 +Subject: [PATCH] mount: don't canonicalize "spec" with --no-canonicalize option + +"Spec" was still canonicalized despite --no-canonicalize. This +resulted in a hang during login with pam_encfs (Debian Bug#593336). + +Signed-off-by: Miklos Szeredi +--- + mount/devname.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/mount/devname.c b/mount/devname.c +index 585d259..05da092 100644 +--- a/mount/devname.c ++++ b/mount/devname.c +@@ -8,7 +8,7 @@ spec_to_devname(const char *spec) + { + if (!spec) + return NULL; +- if (is_pseudo_fs(spec)) ++ if (nocanonicalize || is_pseudo_fs(spec)) + return xstrdup(spec); + return fsprobe_get_devname_by_spec(spec); + } +-- +1.7.3.4 + diff --git a/util-linux-ng.spec b/util-linux-ng.spec index 8da638f..e17f12b 100644 --- a/util-linux-ng.spec +++ b/util-linux-ng.spec @@ -2,7 +2,7 @@ Summary: A collection of basic system utilities Name: util-linux-ng Version: 2.18 -Release: 4.7%{?dist} +Release: 4.8%{?dist} License: GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ and BSD with advertising and Public Domain Group: System Environment/Base URL: ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng @@ -134,6 +134,8 @@ Patch18: util-linux-ng-2.18-blkid-offset.patch Patch19: util-linux-ng-2.18-blkid-revalidate.patch # 543749 [+592958] - mdraid assembles incorrectly Patch20: util-linux-ng-2.18-blkid-raid.patch +# 651183, CVE-2010-3879, fix --no-canonicalize, necessary for fuse +Patch21: util-linux-ng-2.18-mount-noncanon.patch %description The util-linux-ng package contains a large variety of low-level system @@ -260,6 +262,7 @@ cp %{SOURCE8} %{SOURCE9} . %patch18 -p1 %patch19 -p1 %patch20 -p1 +%patch21 -p1 %build unset LINGUAS || : @@ -796,6 +799,9 @@ fi %changelog +* Thu Jan 27 2011 Karel Zak 2.18-4.8 +- fix #651183, CVE-2010-3879, fix --no-canonicalize, necessary for fuse + * Wed Jan 12 2011 Karel Zak 2.18-4.7 - improve raid member detection on patitioned raid devices (#543749)