Hello community, here is the log from the commit of package util-linux for openSUSE:Factory checked in at 2013-06-07 10:12:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/util-linux (Old) and /work/SRC/openSUSE:Factory/.util-linux.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "util-linux" Changes: -------- --- /work/SRC/openSUSE:Factory/util-linux/util-linux.changes 2013-06-05 19:36:13.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.util-linux.new/util-linux.changes 2013-06-07 10:12:07.000000000 +0200 @@ -1,0 +2,72 @@ +Fri Jun 7 00:13:25 UTC 2013 - mail@bernhard-voelker.de + +- util-linux.spec: work around su(1) PAM problems based on su(1) + being provided by both the coreutils and the util-linux package. + Fix macro typo in %post and %verifyscript sections related to su(1): + s/sysvinit_tools/enable_su/ + +------------------------------------------------------------------- +Thu Jun 6 08:27:43 UTC 2013 - werner@suse.de + +- Add make-sure-sbin-resp-usr-sbin-are-in-PATH.diff, that is include + the old "let `su' handle /sbin and /usr/sbin in path" +- Provide the new eject utility to avoid file conflict with old + eject package + +------------------------------------------------------------------- +Wed Jun 5 12:30:45 UTC 2013 - werner@suse.de + +- Update to util-linux-2.23.1 + + Release highlights (2.22) + su(1): + * has been merged from coreutils into util-linux + * utils-linux version uses /etc/pam.d/su-l PAM config file for --login + (e.g. "su -") session. + sulogin(8): + * has been merged from sysvinit into util-linux + utmpdump(1): + * has been merged from sysvinit into util-linux + eject(1): + * has been merged from inactive upstream from sf.net and Fedora into util-linux + * supports new options --manualeject, --force and --no-partitions-unmount + lslocks(1) + * this NEW COMMAND prints local system locks and it's replacement to very + long time unmaintained lslk(1) + wdctl(8): + * this NEW COMMAND shows hardware watchdog status + libuuid: + * does NOT EXECUTE uuidd on demand, the daemon has to be started by + init scripts / systemd + uuidd: + * supports socket activation (for systemd) + * supports new options -no-fork, --no-pid and --socket-activation + + Release highlights (2.23) + blkdiscard(8): + * this NEW COMMAND discard sectors on a device (for example on SSD disks) + sulogin(8): + * provides multi-console feature from SysVinit +- Removed following patches now upstream + * 0001-Test-for-secure_getenv-too.patch + * 0001-include-bitops.h-Use-the-operating-system-byteswappi.patch + * add-canonicalize_path_restricted.patch + * fdiskbsdlabel.patch + * libmount-add-MNT_ERR_LOOPDEV.patch + * libmount-add-special-MNT_ERR-codes.patch + * libmount-don-t-use-nosuid-noexec-nodev-for-cifs-user.patch + * login-close-tty-before-vhangup.patch + * mount-new-add-loopdev-specific-error-message.patch + * mount-new-allow-sloppy-for-non-root.patch + * mount-new-improve-error-messages.patch + * mount-new-use-MNT_ERR-for-error-messages.patch + * mount-sanitize-paths-from-non-root-users.patch + * util-linux-2.21.2-noenc.diff + * umount-sanitize-paths-from-non-root-users.patch +- Removed following patch which otherwise cause to break build + * util-linux-2.20-libmount-deps.patch +- Refreshed following patches with updating version string + * util-linux-2.23.1-fdisk_remove_bogus_warnings.patch + * util-linux-2.23.1-noenc-suse.diff +- Add util-linux-2.23.1-eject-fpie.patch to compile and link eject + with PIE + +------------------------------------------------------------------- Old: ---- 0001-Test-for-secure_getenv-too.patch 0001-include-bitops.h-Use-the-operating-system-byteswappi.patch add-canonicalize_path_restricted.patch fdiskbsdlabel.patch libmount-add-MNT_ERR_LOOPDEV.patch libmount-add-special-MNT_ERR-codes.patch libmount-don-t-use-nosuid-noexec-nodev-for-cifs-user.patch login-close-tty-before-vhangup.patch mount-new-add-loopdev-specific-error-message.patch mount-new-allow-sloppy-for-non-root.patch mount-new-improve-error-messages.patch mount-new-use-MNT_ERR-for-error-messages.patch mount-sanitize-paths-from-non-root-users.patch umount-sanitize-paths-from-non-root-users.patch util-linux-2.12r-fdisk_remove_bogus_warnings.patch util-linux-2.20-libmount-deps.patch util-linux-2.21.2-noenc-suse.diff util-linux-2.21.2-noenc.diff util-linux-2.21.2.tar.bz2 New: ---- make-sure-sbin-resp-usr-sbin-are-in-PATH.diff su.default su.pamd util-linux-2.23.1-eject-fpie.patch util-linux-2.23.1-fdisk_remove_bogus_warnings.patch util-linux-2.23.1-noenc-suse.diff util-linux-2.23.1.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ util-linux.spec ++++++ --- /var/tmp/diff_new_pack.Ch3og5/_old 2013-06-07 10:12:08.000000000 +0200 +++ /var/tmp/diff_new_pack.Ch3og5/_new 2013-06-07 10:12:08.000000000 +0200 @@ -16,6 +16,26 @@ # +# +# Following package should be fixed: +# coreutils ... do not install su and kill +# sysvinit-tools ... do not install sulogin and utmpdump +# eject ... simply drop this package +# +%bcond_without sysvinit_tools +%bcond_without enable_su +%bcond_without enable_eject + +# === MOVING SU TRICKERY (0/3) START === +# Work around su(1) PAM problems based on su(1) being provided by both the +# coreutils and the util-linux package. In the case the former is installed +# first, the latter will save the config files as ".rpmnew". When the new +# su(1)-less coreutils package is then installed, the `trickery (tm)` symlinks +# of the config files would then remain as dangling. +# This "MOVING SU TRICKERY" consists of 3 parts: 1/3, 2/3 and 3/3. +# This hack can go away when the new su-less coreutils package is out. +# === MOVING SU TRICKERY (0/3) END === + Name: util-linux BuildRequires: audit-devel BuildRequires: binutils-devel @@ -28,8 +48,10 @@ BuildRequires: pam-devel BuildRequires: pkg-config BuildRequires: readline-devel +BuildRequires: utempter-devel BuildRequires: zlib-devel -Version: 2.21.2 +BuildRequires: pkgconfig(systemd) +Version: 2.23.1 Release: 0 # util-linux is a base package and uuidd pre-requiring pwdutils pulls # that into the core build cycle. pwdutils also pulls in the whole @@ -37,7 +59,7 @@ # make the rpm install check of uuidd happy which has support to work without # these tools as well #!BuildIgnore: pwdutils -Url: http://kernel.org/~kzak/util-linux/ +Url: https://www.kernel.org/pub/linux/utils/util-linux/ Supplements: filesystem(minix) Provides: fsck-with-dev-lock = %{version} # bnc#651598: @@ -58,9 +80,11 @@ Source7: baselibs.conf Source8: login.pamd Source9: remote.pamd +Source10: su.pamd +Source11: su.default # TODO: split to separate package -Source11: klogconsole.tar.bz2 -# XXX: needed? +Source40: klogconsole.tar.bz2 +# XXX: Run a program in a new session and with controlling tty Source22: setctsid.c Source23: setctsid.8 # XXX: ppc specific, still needed? @@ -76,40 +100,18 @@ ## util-linux patches ## # 241372 - remove legacy warnings from fdisk -Patch1: util-linux-2.12r-fdisk_remove_bogus_warnings.patch -Patch2: util-linux-2.20-libmount-deps.patch +Patch1: util-linux-2.23.1-fdisk_remove_bogus_warnings.patch +Patch2: util-linux-2.23.1-eject-fpie.patch Patch3: fdisk-tinfo.patch -Patch4: mount-new-allow-sloppy-for-non-root.patch -Patch5: libmount-don-t-use-nosuid-noexec-nodev-for-cifs-user.patch - -# Patches 6-10: bcn#767208 (taken from upstream -Patch6: mount-new-improve-error-messages.patch -Patch7: libmount-add-special-MNT_ERR-codes.patch -Patch8: mount-new-use-MNT_ERR-for-error-messages.patch -Patch9: libmount-add-MNT_ERR_LOOPDEV.patch -Patch10: mount-new-add-loopdev-specific-error-message.patch +# PATCH-EXTEND-UPSTREAM: Let `su' handle /sbin and /usr/sbin in path +Patch4: make-sure-sbin-resp-usr-sbin-are-in-PATH.diff # disable encryption -Patch11: util-linux-2.21.2-noenc.diff -Patch12: util-linux-2.21.2-noenc-suse.diff - -Patch13: login-close-tty-before-vhangup.patch +Patch12: util-linux-2.23.1-noenc-suse.diff # hack for boot.localfs Patch20: util-linux-HACK-boot.localfs.diff -Patch21: 0001-include-bitops.h-Use-the-operating-system-byteswappi.patch - -#bnc#797002 -Patch22: add-canonicalize_path_restricted.patch -Patch23: mount-sanitize-paths-from-non-root-users.patch -Patch24: umount-sanitize-paths-from-non-root-users.patch -##### -# There is no __secure_getenv anymore.. -Patch25: 0001-Test-for-secure_getenv-too.patch - -# fix fdisk compilation on aarch64 -Patch26: fdiskbsdlabel.patch ## ## klogconsole ## @@ -124,12 +126,14 @@ PreReq: %insserv_prereq %fillup_prereq /bin/sed # Provides: base = %{version}-%{release} +Provides: eject = %{version}-%{release} Provides: login = 4.0-33.7 Provides: raw = %{version}-%{release} Provides: rawio = %{version}-%{release} Provides: util = %{version}-%{release} Provides: uuid-runtime = %{version}-%{release} Obsoletes: base < %{version}-%{release} +Obsoletes: eject < %{version}-%{release} Obsoletes: login < 4.0-33.7 Obsoletes: raw < %{version}-%{release} Obsoletes: rawio < %{version}-%{release} @@ -211,52 +215,47 @@ %lang_package %prep -%setup -q -n %{name}-%{version} -b 11 +%setup -q -n %{name}-%{version} -b 40 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 -%patch10 -p1 -%patch11 -p1 %patch12 -p1 -%patch13 -p1 # %patch20 -p1 -%patch21 -p1 -%patch22 -p1 -%patch23 -p1 -%patch24 -p1 -%patch25 -p1 -%patch26 -p1 # # setctsid -cp %{S:22} %{S:23} . +cp -p %{S:22} %{S:23} . # nologin -cp %{S:2} %{S:3} %{S:26} %{S:30} . +cp -p %{S:2} %{S:3} %{S:26} %{S:30} . %patch60 -p1 %patch61 -p1 -cd ../klogconsole +pushd ../klogconsole %patch55 -p1 %patch56 -p1 +popd %build -pushd ../ +pushd ../klogconsole # klogconsole build -cd klogconsole make %{?_smp_mflags} CFLAGS="%{optflags}" CC="%{__cc}" -cd .. popd # setctsid build rm -f setctsid make %{?_smp_mflags} setctsid CFLAGS="%{optflags}" CC="%{__cc}" # +# Version check for libutempter +# +uhead=$(find %_includedir -name utempter.h 2>/dev/null) +if test -n "$uhead" && grep -q utempter_add_record "$uhead" +then + uhead=--with-utempter +else + uhead=--without-utempter +fi +# # util-linux itself # autoreconf -fi @@ -264,16 +263,41 @@ export SUID_LDFLAGS="-pie" %configure \ --with-audit \ + --with-gnu-ld \ + --with-ncurses \ --with-selinux \ + $uhead \ + --with-systemdsystemunitdir=%_unitdir \ + --with-bashcompletiondir=%{_datadir}/bash-completion \ --enable-mesg \ --enable-partx \ --enable-raw \ --enable-write \ --enable-line \ --enable-new-mount \ - --enable-ddate \ --enable-login-utils \ + --enable-tunelp \ + --enable-logger \ +%if %{with enable_eject} + --enable-eject \ +%else + --disable-eject \ +%endif +%if %{with sysvinit_tools} + --enable-sulogin \ + --enable-sulogin-emergency-mount \ + --enable-mountpoint \ +%else + --disable-sulogin \ --disable-mountpoint \ +%endif +%if %{with enable_su} + --enable-kill \ + --enable-su \ +%else + --disable-su \ + --disable-kill \ +%endif --disable-use-tty-group \ --disable-static \ --disable-silent-rules \ @@ -286,17 +310,28 @@ %{__cc} -fwhole-program %{optflags} -o chrp-addnote %{SOURCE31} %install -mkdir -p %{buildroot}{/etc/init.d,/etc/pam.d,%{_mandir}/man{1,8},/bin,/sbin,/usr/bin,/usr/sbin,%{_infodir}} +mkdir -p %{buildroot}{%{_sysconfdir}/{init.d,pam.d,default},%{_mandir}/man{1,8},/bin,/sbin,%{_bindir},%{_sbindir},%{_infodir}} mkdir -p %{buildroot}%{_localstatedir}/lib/libuuid/ mkdir -p %{buildroot}%{_localstatedir}/run/uuidd/ install -m 744 %{SOURCE50} %{buildroot}%{_initddir}/uuidd install -m 644 %{SOURCE51} %{buildroot}%{_sysconfdir}/blkid.conf -install -m 644 %{SOURCE8} %{buildroot}/etc/pam.d/login -install -m 644 %{SOURCE9} %{buildroot}/etc/pam.d/remote +install -m 644 %{SOURCE8} %{buildroot}%{_sysconfdir}/pam.d/login +install -m 644 %{SOURCE9} %{buildroot}%{_sysconfdir}/pam.d/remote +%if %{with enable_su} +install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su +install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su-l +install -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/default/su +# === MOVING SU TRICKERY (1/3) START === +# Install a copy of the su(1) config files with .ul suffix. +# This hack can go away when the new su-less coreutils package is out. +install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su.ul +install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su-l.ul +install -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/default/su.ul +# === MOVING SU TRICKERY (1/3) END === +%endif mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates -pushd .. +pushd ../klogconsole # klogconsole install -cd klogconsole make install DEST=%{buildroot} popd # @@ -304,6 +339,10 @@ # %make_install #UsrMerge +%if %{with enable_su} +ln -s %{_bindir}/kill %{buildroot}/bin +ln -s %{_bindir}/su %{buildroot}/bin +%endif ln -s %{_bindir}/logger %{buildroot}/bin ln -s %{_bindir}/dmesg %{buildroot}/bin ln -s %{_bindir}/more %{buildroot}/bin @@ -360,9 +399,9 @@ echo -e "#! /bin/bash\n/sbin/blockdev --flushbufs \$1" > %{buildroot}%{_sbindir}/flushb chmod 755 %{buildroot}%{_sbindir}/flushb # Install scripts to configure raw devices at boot time -install -m 644 $RPM_SOURCE_DIR/etc.raw %{buildroot}%{_sysconfdir}/raw +install -m 644 $RPM_SOURCE_DIR%{_sysconfdir}.raw %{buildroot}%{_sysconfdir}/raw install -m 755 $RPM_SOURCE_DIR/raw.init %{buildroot}%{_initddir}/raw -ln -sf ../../etc/init.d/raw %{buildroot}%{_sbindir}/rcraw +ln -sf ../..%{_sysconfdir}/init.d/raw %{buildroot}%{_sbindir}/rcraw # Stupid hack so we don't have a tcsh dependency chmod 644 %{buildroot}%{_datadir}/getopt/getopt*.tcsh # Following files we don't want to package, so remove them @@ -435,7 +474,13 @@ %if 0%{?suse_version} <= 1130 %run_permissions %else -%set_permissions /usr/bin/wall /usr/bin/write /usr/bin/mount /usr/bin/umount +%set_permissions %{_bindir}/wall %{_bindir}/write %{_bindir}/mount %{_bindir}/umount +%if %{with enable_su} +%set_permissions %{_bindir}/su +%endif +%if %{with enable_eject} +%set_permissions %{_bindir}/eject +%endif %endif # mount option 'code=' is now called 'codepage=' so change fstab @@ -443,12 +488,35 @@ sed -i 's:code=:codepage=:' etc/fstab fi +%posttrans +%if "%{with enable_su}" +# === MOVING SU TRICKERY (2/3) START === +# If su(1)'s PAM config files are symbolic links, then they have been installed +# by the coreutils package (because su-enabled coreutils has been installed +# before util-linux). Remove the symlinks and install a copy of our .ul files +# in their correct places. +# This hack can go away when the new su-less coreutils package is out. +for f in pam.d/su pam.d/su-l default/su ; do + if [ -L %{_sysconfdir}/$f -a -e %{_sysconfdir}/$f.ul ]; then + rm -v %{_sysconfdir}/$f + cp -av %{_sysconfdir}/$f.ul %{_sysconfdir}/$f + fi +done +# === MOVING SU TRICKERY (2/3) END === +%endif + %postun %install_info_delete --info-dir=%{_infodir} %{_infodir}/ipc.info.gz %{insserv_cleanup} %verifyscript -%verify_permissions -e /usr/bin/wall -e /usr/bin/write -e /usr/bin/mount -e /usr/bin/umount +%verify_permissions -e %{_bindir}/wall -e %{_bindir}/write -e %{_bindir}/mount -e %{_bindir}/umount +%if %{with enable_su} +%verify_permissions -e %{_bindir}/su +%endif +%if %{with enable_eject} +%verify_permissions -e %{_bindir}/eject +%endif %post -n libblkid1 -p /sbin/ldconfig @@ -459,8 +527,8 @@ %postun -n libmount1 -p /sbin/ldconfig %pre -n uuidd -/usr/sbin/groupadd -r uuidd 2>/dev/null || : -/usr/sbin/useradd -r -g uuidd -c "User for uuidd" \ +%{_sbindir}/groupadd -r uuidd 2>/dev/null || : +%{_sbindir}/useradd -r -g uuidd -c "User for uuidd" \ -d /var/run/uuidd uuidd 2>/dev/null || : %preun -n uuidd @@ -471,7 +539,7 @@ %if 0%{?suse_version} <= 1130 %run_permissions %else -%set_permissions /usr/sbin/uuidd +%set_permissions %{_sbindir}/uuidd %endif %postun -n uuidd @@ -483,7 +551,7 @@ %postun -n libuuid1 -p /sbin/ldconfig %verifyscript -n uuidd -%verify_permissions -e /usr/sbin/uuidd +%verify_permissions -e %{_sbindir}/uuidd %files lang -f %{name}.lang @@ -495,7 +563,6 @@ %doc Documentation/cal.txt %doc Documentation/cfdisk.txt %doc Documentation/col.txt -%doc Documentation/ddate.txt %doc Documentation/deprecated.txt %doc Documentation/fdisk.txt %doc Documentation/getopt.txt @@ -509,9 +576,25 @@ %config(noreplace) %attr(644,root,root) %{_sysconfdir}/raw %config(noreplace) %{_sysconfdir}/filesystems %config(noreplace) %{_sysconfdir}/blkid.conf -%config(noreplace) /etc/pam.d/login -%config(noreplace) /etc/pam.d/remote +%config(noreplace) %{_sysconfdir}/pam.d/login +%config(noreplace) %{_sysconfdir}/pam.d/remote +%if %{with enable_su} +%config(noreplace) %{_sysconfdir}/pam.d/su +%config(noreplace) %{_sysconfdir}/pam.d/su-l +%config(noreplace) %{_sysconfdir}/default/su +# === MOVING SU TRICKERY (3/3) START === +# Package su(1) config files with .ul suffix needed in posttrans above. +# This hack can go away when the new su-less coreutils package is out. +%config %{_sysconfdir}/pam.d/su.ul +%config %{_sysconfdir}/pam.d/su-l.ul +%config %{_sysconfdir}/default/su.ul +# === MOVING SU TRICKERY (3/3) END === +%endif #UsrMerge +%if %{with enable_su} +/bin/kill +/bin/su +%endif /bin/dmesg /bin/more /bin/mount @@ -546,13 +629,19 @@ /sbin/fstrim /sbin/chcpu #EndUsrMerge +%if %{with enable_su} +%{_bindir}/kill +%{_bindir}/su +%endif +%if %{with enable_eject} +%verify(not mode) %attr(4750,root,audio) %{_bindir}/eject +%endif %{_bindir}/cal %{_bindir}/chrt %{_bindir}/col %{_bindir}/colcrt %{_bindir}/colrm %{_bindir}/column -%{_bindir}/ddate %{_bindir}/dmesg %{_bindir}/fallocate %{_bindir}/findmnt @@ -569,11 +658,13 @@ %{_bindir}/look %{_bindir}/lsblk %{_bindir}/lscpu +%{_bindir}/lslocks %{_bindir}/mcookie %{_bindir}/mesg %{_bindir}/more %{_bindir}/mount %{_bindir}/namei +%{_bindir}/nsenter %{_bindir}/prlimit %{_bindir}/rename %{_bindir}/renice @@ -587,14 +678,20 @@ %{_bindir}/ul %{_bindir}/umount %{_bindir}/unshare +%if %{with sysvinit_tools} +%{_bindir}/mountpoint +%{_bindir}/utmpdump +%endif %{_bindir}/uuidgen %ifnarch ppc ppc64 %{_bindir}/chrp-addnote %{_bindir}/mkzimage_cmdline %endif +%{_bindir}/wdctl %{_sbindir}/addpart %{_sbindir}/agetty %{_sbindir}/blkid +%{_sbindir}/blkdiscard %{_sbindir}/blockdev %{_sbindir}/chcpu %{_sbindir}/ctrlaltdel @@ -617,8 +714,13 @@ %{_sbindir}/pivot_root %{_sbindir}/raw %{_sbindir}/rcraw +%{_sbindir}/resizepart %{_sbindir}/rtcwake +%{_sbindir}/runuser %{_sbindir}/setctsid +%if %{with sysvinit_tools} +%{_sbindir}/sulogin +%endif %{_sbindir}/swaplabel %{_sbindir}/swapoff %{_sbindir}/swapon @@ -627,14 +729,20 @@ %verify(not mode) %attr(0755,root,tty) %{_bindir}/wall %{_bindir}/whereis %verify(not mode) %attr(0755,root,tty) %{_bindir}/write +%if %{with enable_su} +%{_mandir}/man1/kill.1.gz +%{_mandir}/man1/su.1.gz +%endif %{_mandir}/man1/cal.1.gz %{_mandir}/man1/chrt.1.gz %{_mandir}/man1/col.1.gz %{_mandir}/man1/colcrt.1.gz %{_mandir}/man1/colrm.1.gz %{_mandir}/man1/column.1.gz -%{_mandir}/man1/ddate.1.gz %{_mandir}/man1/dmesg.1.gz +%if %{with enable_eject} +%{_mandir}/man1/eject.1.gz +%endif %{_mandir}/man1/fallocate.1.gz %{_mandir}/man1/flock.1.gz %{_mandir}/man1/getopt.1.gz @@ -650,6 +758,7 @@ %{_mandir}/man1/mesg.1.gz %{_mandir}/man1/more.1.gz %{_mandir}/man1/namei.1.gz +%{_mandir}/man1/nsenter.1.gz %{_mandir}/man1/ionice.1.gz %{_mandir}/man1/prlimit.1.gz %{_mandir}/man1/rename.1.gz @@ -667,6 +776,11 @@ %{_mandir}/man1/whereis.1.gz %{_mandir}/man1/write.1.gz %{_mandir}/man1/ipcmk.1.gz +%if %{with sysvinit_tools} +%{_mandir}/man1/mountpoint.1.gz +%{_mandir}/man1/utmpdump.1.gz +%endif +%{_mandir}/man1/runuser.1.gz %{_mandir}/man1/uuidgen.1.gz %{_mandir}/man5/fstab.5.gz %{_mandir}/man8/addpart.8.gz @@ -675,16 +789,20 @@ %{_mandir}/man8/delpart.8.gz %{_mandir}/man8/ctrlaltdel.8.gz %{_mandir}/man8/blkid.8.gz +%{_mandir}/man8/blkdiscard.8.gz %{_mandir}/man8/switch_root.8.gz %{_mandir}/man8/mkfs.bfs.8.gz %{_mandir}/man8/mkfs.minix.8.gz %{_mandir}/man8/findfs.8.gz %{_mandir}/man8/fsck.8.gz +%{_mandir}/man8/fsck.cramfs.8.gz %{_mandir}/man8/fsck.minix.8.gz %{_mandir}/man8/isosize.8.gz %{_mandir}/man8/ldattach.8.gz %{_mandir}/man8/losetup.8.gz +%{_mandir}/man8/lslocks.8.gz %{_mandir}/man8/mkfs.8.gz +%{_mandir}/man8/mkfs.cramfs.8.gz %{_mandir}/man8/mkswap.8.gz %{_mandir}/man8/mount.8.gz %{_mandir}/man8/nologin.8.gz @@ -708,12 +826,17 @@ %{_mandir}/man8/wipefs.8.gz %{_mandir}/man8/fstrim.8.gz %{_mandir}/man8/lsblk.8.gz -%{_mandir}/ru +%{_mandir}/man8/resizepart.8.gz +%if %{with sysvinit_tools} +%{_mandir}/man8/sulogin.8.gz +%endif +%{_mandir}/man8/wdctl.8.gz %{_sbindir}/flushb %{_sbindir}/readprofile %dir %{_datadir}/getopt %attr (755,root,root) %{_datadir}/getopt/getopt-parse.bash %attr (755,root,root) %{_datadir}/getopt/getopt-parse.tcsh +%{_datadir}/bash-completion/* %ifnarch ia64 #XXX: post our patches upstream #XXX: call fdupes on /usr/share/man @@ -784,6 +907,8 @@ %{_initddir}/uuidd %{_mandir}/man8/uuidd.8.gz %{_sbindir}/rcuuidd +%{_unitdir}/uuidd.service +%{_unitdir}/uuidd.socket %files -n libuuid1 %defattr(-, root, root) ++++++ fdisk-tinfo.patch ++++++ --- /var/tmp/diff_new_pack.Ch3og5/_old 2013-06-07 10:12:09.000000000 +0200 +++ /var/tmp/diff_new_pack.Ch3og5/_new 2013-06-07 10:12:09.000000000 +0200 @@ -1,18 +1,12 @@ -Index: util-linux-2.21-rc2/fdisk/Makefile.am -=================================================================== ---- util-linux-2.21-rc2.orig/fdisk/Makefile.am -+++ util-linux-2.21-rc2/fdisk/Makefile.am -@@ -64,9 +64,13 @@ sbin_PROGRAMS += cfdisk - dist_man_MANS += cfdisk.8 - cfdisk_SOURCES = cfdisk.c $(fdisk_common) - cfdisk_CFLAGS = $(cflags_blkid) +--- util-linux-2.23.1/fdisks/Makemodule.am ++++ util-linux-2.23.1/fdisks/Makemodule.am 2013-06-05 09:58:30.753439465 +0000 +@@ -79,6 +79,9 @@ endif + if HAVE_SLANG + cfdisk_LDADD += -lslang + else +if HAVE_TINFO -+cfdisk_LDADD = -ltinfo @NCURSES_LIBS@ $(ldadd_blkid) -+else - cfdisk_LDADD = @NCURSES_LIBS@ $(ldadd_blkid) - endif - endif ++cfdisk_LDADD += -ltinfo +endif - - endif # !ARCH_SPARC - endif # !ARCH_M68K + if HAVE_NCURSES + cfdisk_LDADD += @NCURSES_LIBS@ + endif ++++++ make-sure-sbin-resp-usr-sbin-are-in-PATH.diff ++++++ --- util-linux-2.23.1/login-utils/su-common.c +++ util-linux-2.23.1/login-utils/su-common.c 2013-06-06 08:46:59.575872090 +0000 @@ -473,6 +473,117 @@ set_path(const struct passwd* pw) err (EXIT_FAILURE, _("failed to set PATH")); } +/* Add or clear /sbin and /usr/sbin for the su command + used without `-'. */ + +/* Set if /sbin is found in path. */ +#define SBIN_MASK 0x01 +/* Set if /usr/sbin is found in path. */ +#define USBIN_MASK 0x02 + +static char * +addsbin (const char *const path) +{ + unsigned char smask = 0; + char *ptr, *tmp, *cur, *ret = NULL; + size_t len; + + if (!path || *path == 0) + return NULL; + + tmp = xstrdup (path); + cur = tmp; + for (ptr = strsep (&cur, ":"); ptr != NULL; ptr = strsep (&cur, ":")) + { + if (!strcmp (ptr, "/sbin")) + smask |= SBIN_MASK; + if (!strcmp (ptr, "/usr/sbin")) + smask |= USBIN_MASK; + } + + if ((smask & (USBIN_MASK|SBIN_MASK)) == (USBIN_MASK|SBIN_MASK)) + { + free (tmp); + return NULL; + } + + len = strlen (path); + if (!(smask & USBIN_MASK)) + len += strlen ("/usr/sbin:"); + + if (!(smask & SBIN_MASK)) + len += strlen (":/sbin"); + + ret = xmalloc (len + 1); + strcpy (tmp, path); + + *ret = 0; + cur = tmp; + for (ptr = strsep (&cur, ":"); ptr; ptr = strsep (&cur, ":")) + { + if (!strcmp (ptr, ".")) + continue; + if (*ret) + strcat (ret, ":"); + if (!(smask & USBIN_MASK) && !strcmp (ptr, "/bin")) + { + strcat (ret, "/usr/sbin:"); + strcat (ret, ptr); + smask |= USBIN_MASK; + continue; + } + if (!(smask & SBIN_MASK) && !strcmp (ptr, "/usr/bin")) + { + strcat (ret, ptr); + strcat (ret, ":/sbin"); + smask |= SBIN_MASK; + continue; + } + strcat (ret, ptr); + } + free (tmp); + + if (!(smask & USBIN_MASK)) + strcat (ret, ":/usr/sbin"); + + if (!(smask & SBIN_MASK)) + strcat (ret, ":/sbin"); + + return ret; +} + +static char * +clearsbin (const char *const path) +{ + char *ptr, *tmp, *cur, *ret = NULL; + + if (!path || *path == 0) + return NULL; + + tmp = strdup (path); + if (!tmp) + return NULL; + + ret = xmalloc (strlen (path) + 1); + *ret = 0; + cur = tmp; + for (ptr = strsep (&cur, ":"); ptr; ptr = strsep (&cur, ":")) + { + if (!strcmp (ptr, "/sbin")) + continue; + if (!strcmp (ptr, "/usr/sbin")) + continue; + if (!strcmp (ptr, "/usr/local/sbin")) + continue; + if (*ret) + strcat (ret, ":"); + strcat (ret, ptr); + } + free (tmp); + + return ret; +} + /* Update `environ' for the new shell based on PW, with SHELL being the value for the SHELL environment variable. */ @@ -508,6 +619,22 @@ modify_environment (const struct passwd xsetenv ("SHELL", shell, 1); if (getlogindefs_bool ("ALWAYS_SET_PATH", 0)) set_path(pw); + else + { + char const *path = getenv ("PATH"); + char *new = NULL; + + if (pw->pw_uid) + new = clearsbin (path); + else + new = addsbin (path); + + if (new) + { + xsetenv ("PATH", new, 1); + free (new); + } + } if (pw->pw_uid) { ++++++ su.default ++++++ # Per default, only "su -" will set a new PATH. # If this variable is changed to "yes" (default is "no"), # every su call will overwrite the PATH variable. ALWAYS_SET_PATH=no # Default path. PATH=/usr/local/bin:/bin:/usr/bin # Default path for a user invoking su to root. SUPATH=/usr/sbin:/bin:/usr/bin:/sbin ++++++ su.pamd ++++++ #%PAM-1.0 auth sufficient pam_rootok.so auth include common-auth account sufficient pam_rootok.so account include common-account password include common-password session include common-session session optional pam_xauth.so ++++++ util-linux-2.23.1-eject-fpie.patch ++++++ --- util-linux-2.23.1/sys-utils/Makemodule.am +++ util-linux-2.23.1/sys-utils/Makemodule.am 2013-06-05 12:55:10.921439066 +0000 @@ -142,8 +142,8 @@ endif # LINUX if BUILD_EJECT usrbin_exec_PROGRAMS += eject eject_SOURCES = sys-utils/eject.c -eject_LDADD = $(LDADD) libmount.la libcommon.la -eject_CFLAGS = $(AM_CFLAGS) -I$(ul_libmount_incdir) +eject_LDADD = $(SUID_LDFLAGS) $(LDADD) libmount.la libcommon.la +eject_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS) -I$(ul_libmount_incdir) dist_man_MANS += sys-utils/eject.1 endif ++++++ util-linux-2.12r-fdisk_remove_bogus_warnings.patch -> util-linux-2.23.1-fdisk_remove_bogus_warnings.patch ++++++ --- /work/SRC/openSUSE:Factory/util-linux/util-linux-2.12r-fdisk_remove_bogus_warnings.patch 2012-02-28 14:16:25.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.util-linux.new/util-linux-2.23.1-fdisk_remove_bogus_warnings.patch 2013-06-07 10:12:06.000000000 +0200 @@ -1,20 +1,20 @@ -Index: util-linux-2.21-rc2/fdisk/fdisk.c -=================================================================== ---- util-linux-2.21-rc2.orig/fdisk/fdisk.c -+++ util-linux-2.21-rc2/fdisk/fdisk.c -@@ -1767,6 +1767,7 @@ static void check_consistency(struct par - /* compute logical ending (c, h, s) */ - long2chs(get_start_sect(p) + get_nr_sects(p) - 1, &lec, &leh, &les); +--- util-linux-2.23.1/fdisks/fdiskdoslabel.c ++++ util-linux-2.23.1/fdisks/fdiskdoslabel.c 2013-06-05 10:11:14.121939007 +0000 +@@ -817,7 +817,7 @@ static void check_consistency(struct fdi + /* compute logical ending (c, h, s) */ + long2chs(cxt, get_start_sect(p) + get_nr_sects(p) - 1, &lec, &leh, &les); +- +#if 0 /* Same physical / logical beginning? */ - if (cylinders <= 1024 && (pbc != lbc || pbh != lbh || pbs != lbs)) { - printf(_("Partition %d has different physical/logical " -@@ -1783,7 +1784,6 @@ static void check_consistency(struct par + if (cxt->geom.cylinders <= 1024 && (pbc != lbc || pbh != lbh || pbs != lbs)) { + printf(_("Partition %zd has different physical/logical " +@@ -833,7 +833,7 @@ static void check_consistency(struct fdi + printf(_(" phys=(%d, %d, %d) "), pec, peh, pes); printf(_("logical=(%d, %d, %d)\n"),lec, leh, les); } - --#if 0 - /* Beginning on cylinder boundary? */ - if (pbh != !pbc || pbs != 1) { - printf(_("Partition %i does not start on cylinder " +- ++#endif + /* Ending on cylinder boundary? */ + if (peh != (cxt->geom.heads - 1) || pes != cxt->geom.sectors) { + printf(_("Partition %zd does not end on cylinder boundary.\n"), ++++++ util-linux-2.21.2-noenc-suse.diff -> util-linux-2.23.1-noenc-suse.diff ++++++ --- /work/SRC/openSUSE:Factory/util-linux/util-linux-2.21.2-noenc-suse.diff 2012-06-25 14:59:07.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.util-linux.new/util-linux-2.23.1-noenc-suse.diff 2013-06-07 10:12:06.000000000 +0200 @@ -1,13 +1,12 @@ -Index: util-linux-2.21.2/libmount/src/context_loopdev.c -=================================================================== ---- util-linux-2.21.2.orig/libmount/src/context_loopdev.c -+++ util-linux-2.21.2/libmount/src/context_loopdev.c -@@ -199,6 +199,8 @@ int mnt_context_setup_loopdev(struct lib +--- util-linux-2.23.1/libmount/src/context_loopdev.c ++++ util-linux-2.23.1/libmount/src/context_loopdev.c 2013-06-05 09:44:37.081939564 +0000 +@@ -213,6 +213,9 @@ int mnt_context_setup_loopdev(struct lib if (rc == 0 && (cxt->user_mountflags & MNT_MS_ENCRYPTION) && mnt_optstr_get_option(optstr, "encryption", &val, &len) == 0) { DBG(CXT, mnt_debug_h(cxt, "encryption no longer supported")); + // XXX: nasty for the lib but there's on better way to give a hint atm -+ fprintf(stderr, "mount: encryption no longer supported. Please use /etc/crypttab instead (man 5 crypttab)\n"); - rc = -EINVAL; ++ fprintf(stderr, "mount: encryption no longer supported.\n" ++ " Please use /etc/crypttab instead (man 5 crypttab)\n"); + rc = -MNT_ERR_MOUNTOPT; } ++++++ util-linux-2.21.2.tar.bz2 -> util-linux-2.23.1.tar.bz2 ++++++ ++++ 964407 lines of diff (skipped) ++++++ util-linux-rpmlintrc ++++++ --- /var/tmp/diff_new_pack.Ch3og5/_old 2013-06-07 10:12:14.000000000 +0200 +++ /var/tmp/diff_new_pack.Ch3og5/_new 2013-06-07 10:12:14.000000000 +0200 @@ -4,4 +4,10 @@ addFilter("no-reload-entry /etc/init.d/raw") # There is no egrep(1) used -> False positive addFilter("deprecated-grep") - +# Both pam configs for su and su-l are marked as noreplace +addFilter(".*W:.*files-duplicate.*/pam/su.*/pam.d/su-l.*") +# Useless warning as the /usr/bin variants are known +addFilter(".*W:.*permissions-symlink.*/bin/su.*") +addFilter(".*W:.*permissions-symlink.*/bin/umount.*") +addFilter(".*W:.*permissions-symlink.*/bin/mount.*") + -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org