diff options
author | 2004-05-06 21:23:50 +0000 | |
---|---|---|
committer | 2004-05-06 21:23:50 +0000 | |
commit | 6ddfa38c35dbadd47a2000a10468a41e096c4215 (patch) | |
tree | 1d89ab9635aa275194bc1be4eceadd7dbfc2ffe8 /sys-apps | |
parent | New version of the ximian patchset (Manifest recommit) (diff) | |
download | gentoo-2-6ddfa38c35dbadd47a2000a10468a41e096c4215.tar.gz gentoo-2-6ddfa38c35dbadd47a2000a10468a41e096c4215.tar.bz2 gentoo-2-6ddfa38c35dbadd47a2000a10468a41e096c4215.zip |
Fix bug 35736: Use -fPIC when building on 64-bit systems so that other packages which link shadow into their shared objects will build, for example freeradius. Normally this is something to fix globally, but don't want to hurt performance for other arches.
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/shadow/ChangeLog | 11 | ||||
-rw-r--r-- | sys-apps/shadow/Manifest | 24 | ||||
-rw-r--r-- | sys-apps/shadow/files/digest-shadow-4.0.4.1-r1 | 1 | ||||
-rw-r--r-- | sys-apps/shadow/shadow-4.0.4.1-r1.ebuild | 211 | ||||
-rw-r--r-- | sys-apps/shadow/shadow-4.0.4.1.ebuild | 6 |
5 files changed, 238 insertions, 15 deletions
diff --git a/sys-apps/shadow/ChangeLog b/sys-apps/shadow/ChangeLog index 4f5de0959ff6..14dbb8ad9df7 100644 --- a/sys-apps/shadow/ChangeLog +++ b/sys-apps/shadow/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for sys-apps/shadow # Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/ChangeLog,v 1.54 2004/05/04 21:37:06 gustavoz Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/ChangeLog,v 1.55 2004/05/06 21:23:50 agriffis Exp $ + +*shadow-4.0.4.1-r1 (06 May 2004) + + 06 May 2004; Aron Griffis <agriffis@gentoo.org> +shadow-4.0.4.1-r1.ebuild, + shadow-4.0.4.1.ebuild: + Fix bug 35736: Use -fPIC when building on 64-bit systems so that other + packages which link shadow into their shared objects will build, for example + freeradius. Normally this is something to fix globally, but don't want to hurt + performance for other arches. 04 May 2004; Gustavo Zacarias <gustavoz@gentoo.org> shadow-4.0.3-r10.ebuild, shadow-4.0.4.1.ebuild: diff --git a/sys-apps/shadow/Manifest b/sys-apps/shadow/Manifest index d29329f0baed..043d25515062 100644 --- a/sys-apps/shadow/Manifest +++ b/sys-apps/shadow/Manifest @@ -1,23 +1,24 @@ MD5 0ae64a9d39893d99975838423d2f9899 ChangeLog 10681 -MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164 -MD5 079b89bf1aeffbd95a1241fa7d919335 shadow-4.0.3-r10.ebuild 5912 MD5 acd62ca53b03390252a3df9f13749c67 shadow-4.0.3-r9.ebuild 5813 -MD5 a55eafa9d93f44b4ba51fd95f227f0ed shadow-4.0.4.1.ebuild 5803 -MD5 52fc2a150fc27350a5f9990e0007d064 files/digest-shadow-4.0.3-r10 65 -MD5 52fc2a150fc27350a5f9990e0007d064 files/digest-shadow-4.0.3-r9 65 -MD5 cef6788bc7c8c5468c1b1f68df77ed9e files/digest-shadow-4.0.4.1 67 +MD5 079b89bf1aeffbd95a1241fa7d919335 shadow-4.0.3-r10.ebuild 5912 +MD5 9a09f8d531c582e78977dbfd96edc1f2 metadata.xml 164 +MD5 c6a2e6226cab58b7c5c2777e38504230 shadow-4.0.4.1.ebuild 5807 +MD5 691eeb02f65cd61bf9ca3e1c406dd965 shadow-4.0.4.1-r1.ebuild 6110 MD5 e70a5f61d37c3c67a4b860d8a6191dbc files/securetty 230 -MD5 d0d7abec0c499ad20d2fbc865215c3e6 files/shadow-4.0.3-gcc34-xmalloc.patch 260 +MD5 13c8bec4c2cffb2d73c2f5aa01229d03 files/shadow-4.0.3-su-pam_open_session.patch-v2 4882 +MD5 cef6788bc7c8c5468c1b1f68df77ed9e files/digest-shadow-4.0.4.1-r1 67 +MD5 de1e23b4a7d38545475dffc3c9dc73a0 files/shadow-4.0.3-useradd-manpage-update.patch 804 +MD5 52fc2a150fc27350a5f9990e0007d064 files/digest-shadow-4.0.3-r9 65 MD5 5be850b601aabd73a43b1a3bbb893386 files/shadow-4.0.3-nologin-run-sh.patch 972 MD5 94728414b91e556a211379f6acc9b52d files/shadow-4.0.3-selinux.diff 3940 +MD5 52fc2a150fc27350a5f9990e0007d064 files/digest-shadow-4.0.3-r10 65 MD5 6dfd34cef0901f49a1899aa59219bc8f files/shadow-4.0.3-shared-needs-pam.patch 646 -MD5 13c8bec4c2cffb2d73c2f5aa01229d03 files/shadow-4.0.3-su-pam_open_session.patch-v2 4882 -MD5 de1e23b4a7d38545475dffc3c9dc73a0 files/shadow-4.0.3-useradd-manpage-update.patch 804 -MD5 b8efca60a25e256eebe54c3d0db0760f files/shadow-4.0.4.1-gcc34-xmalloc.patch 361 +MD5 cef6788bc7c8c5468c1b1f68df77ed9e files/digest-shadow-4.0.4.1 67 MD5 ab9789d22ebb1e74be504dcd71e23132 files/shadow-4.0.4.1-selinux.diff 3926 MD5 201f1321262da41ccd1a0283216ae9a7 files/shadow-4.0.4.1-su-pam_open_session.patch 4886 MD5 bb55107c3a9354ef2d1977547fdb5a83 files/shadow-4.0.4.1-useradd-manpage-update.patch 958 -MD5 6e0bc0211949c624da0ea08d994a7038 files/default/useradd 96 +MD5 d0d7abec0c499ad20d2fbc865215c3e6 files/shadow-4.0.3-gcc34-xmalloc.patch 260 +MD5 b8efca60a25e256eebe54c3d0db0760f files/shadow-4.0.4.1-gcc34-xmalloc.patch 361 MD5 51b0337bd261f6ed5e53af5dc196431a files/pam.d/system-auth 499 MD5 a5311bbc9c1fc378a6b0bfb3ca1b2394 files/pam.d/login 431 MD5 344d17a865edc40adebe07797853c839 files/pam.d/other 198 @@ -25,3 +26,4 @@ MD5 a1c7fb84c2dc309db86ba7b8d3dfae76 files/pam.d/passwd 214 MD5 60d44a6f43aafcb9ca35858ab2534a49 files/pam.d/shadow 227 MD5 0a8b62ed0426b607b92e275d63fa7cbf files/pam.d/su 1247 MD5 1baa646400c4a596290e9d4b9e1c09b2 files/pam.d/system-auth-1.1 491 +MD5 6e0bc0211949c624da0ea08d994a7038 files/default/useradd 96 diff --git a/sys-apps/shadow/files/digest-shadow-4.0.4.1-r1 b/sys-apps/shadow/files/digest-shadow-4.0.4.1-r1 new file mode 100644 index 000000000000..86c719561f0b --- /dev/null +++ b/sys-apps/shadow/files/digest-shadow-4.0.4.1-r1 @@ -0,0 +1 @@ +MD5 3a3d17d3d7c630b602baf66ae7434c61 shadow-4.0.4.1.tar.bz2 814234 diff --git a/sys-apps/shadow/shadow-4.0.4.1-r1.ebuild b/sys-apps/shadow/shadow-4.0.4.1-r1.ebuild new file mode 100644 index 000000000000..203e1584ae01 --- /dev/null +++ b/sys-apps/shadow/shadow-4.0.4.1-r1.ebuild @@ -0,0 +1,211 @@ +# Copyright 1999-2004 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/shadow-4.0.4.1-r1.ebuild,v 1.1 2004/05/06 21:23:50 agriffis Exp $ + +inherit eutils libtool gnuconfig 64-bit flag-o-matic + +FORCE_SYSTEMAUTH_UPDATE="no" + +SELINUX_PATCH="shadow-4.0.4.1-selinux.diff" + +HOMEPAGE="http://shadow.pld.org.pl/" +DESCRIPTION="Utilities to deal with user accounts" +SRC_URI="ftp://ftp.pld.org.pl/software/shadow/${P}.tar.bz2" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~x86 ~ppc ~sparc ~mips ~alpha arm ~mips ~hppa ~amd64 ~ia64 ~ppc64 s390" +IUSE="pam selinux nls" + +DEPEND=">=sys-libs/cracklib-2.7-r3 + pam? ( >=sys-libs/pam-0.75-r4 ) + nls? ( sys-devel/gettext ) + selinux? ( sys-libs/libselinux )" +RDEPEND=">=sys-libs/cracklib-2.7-r3 + pam? ( >=sys-libs/pam-0.75-r4 ) + selinux? ( sys-libs/libselinux )" + +pkg_preinst() { + rm -f ${ROOT}/etc/pam.d/system-auth.new +} + +src_unpack() { + unpack ${A} + + cd ${S} + + use selinux && epatch ${FILESDIR}/${SELINUX_PATCH} + + # Get su to call pam_open_session(), and also set DISPLAY and XAUTHORITY, + # else the session entries in /etc/pam.d/su never get executed, and + # pam_xauth for one, is then never used. This should close bug #8831. + # + # <azarah@gentoo.org> (19 Oct 2002) + use pam && epatch ${FILESDIR}/${P}-su-pam_open_session.patch + + # If su should not simulate a login shell, use '/bin/sh' as shell to enable + # running of commands as user with /bin/false as shell, closing bug #15015. + # + # <azarah@gentoo.org> (23 Feb 2003) +# This one could be a security hole ... +# cd ${S}; epatch ${FILESDIR}/${P}-nologin-run-sh.patch + + # Patch the useradd manpage to be a bit more clear, closing bug #13203. + # Thanks to Guy <guycad@mindspring.com>. + epatch ${FILESDIR}/${P}-useradd-manpage-update.patch + + # Patch to correct the definition if malloc, so that shadow can compile + # using gcc 3.4. see bug #47455 for more information + epatch ${FILESDIR}/${P}-gcc34-xmalloc.patch +} + +src_compile() { + # Allows shadow configure detect mips systems properly + gnuconfig_update + + elibtoolize + + # Fix this library for 64-bit systems that need -fPIC to link the + # libshadow.a into freeradius shared objects. Normally we'd + # just fix it for everybody but don't want to hurt performance for + # other arches. See bug 35736 (06 May 2004 agriffis) + 64-bit && append-flags -fPIC + + local myconf + use pam \ + && myconf="${myconf} --with-libpam --with-libcrack" \ + || myconf="${myconf} --without-libpam" + + ./configure --disable-desrpc \ + --with-libcrypt \ + --with-libcrack \ + --enable-shared=no \ + --enable-static=yes \ + --host=${CHOST} \ + `use_enable nls` \ + ${myconf} || die "bad configure" + + # Parallel make fails sometimes + emake -j1 || die "compile problem" +} + +src_install() { + dodir /etc/default /etc/skel + + make prefix=${D}/usr \ + exec_prefix=${D} \ + mandir=${D}/usr/share/man \ + install || die "install problem" + + # Do not install this login, but rather the one from + # pam-login, as this one have a serious root exploit + # with pam_limits in use. + use pam && rm ${D}/bin/login + + mv ${D}/lib ${D}/usr + dosed "s:/lib':/usr/lib':g" /usr/lib/libshadow.la + dosed "s:/lib/:/usr/lib/:g" /usr/lib/libshadow.la + dosed "s:/lib':/usr/lib':g" /usr/lib/libmisc.la + dosed "s:/lib/:/usr/lib/:g" /usr/lib/libmisc.la + dosym newgrp /usr/bin/sg + dosym useradd /usr/sbin/adduser + dosym vipw /usr/sbin/vigr + # Remove dead links + rm -f ${D}/bin/{sg,vipw,vigr} + + insinto /etc + # Using a securetty with devfs device names added + # (compat names kept for non-devfs compatibility) + insopts -m0600 ; doins ${FILESDIR}/securetty + insopts -m0600 ; doins ${S}/etc/login.access + insopts -m0644 ; doins ${S}/etc/limits + + # needed for 'adduser -D' + insinto /etc/default + insopts -m0600 + doins ${FILESDIR}/default/useradd +# From sys-apps/pam-login now +# insopts -m0644 ; doins ${FILESDIR}/login.defs + + if [ `use pam` ] ; then + insinto /etc/pam.d ; insopts -m0644 + for x in ${FILESDIR}/pam.d/* + do + [ -f ${x} ] && doins ${x} + done + cd ${FILESDIR}/pam.d + # Make sure /etc/pam.d/system-auth is the new version .. + mv ${D}/etc/pam.d/system-auth-1.1 ${D}/etc/pam.d/system-auth + newins system-auth-1.1 system-auth.new || die + newins shadow chage + newins shadow chsh + newins shadow chfn + newins shadow useradd + newins shadow groupadd + fi + + cd ${S} + # The manpage install is beyond my comprehension, and + # also broken. Just do it over. + rm -rf ${D}/usr/share/man/* + + rm -f man/id.1 man/getspnam.3 man/passwd.5 + for x in man/*.[0-9] + do + [ -f ${x} ] && doman ${x} + done + + if [ ! `use pam` ] ; then + # Dont install the manpage, since we dont use + # login with shadow + rm -f ${D}/usr/share/man/man1/login.* + # We use pam, so this is not applicable. + rm -f ${D}/usr/share/man/man5/suauth.* + fi + + cd ${S}/doc + dodoc ANNOUNCE INSTALL LICENSE README WISHLIST + docinto txt + dodoc HOWTO LSM README.* *.txt + + # Fix sparc serial console + if [ "${ARCH}" = "sparc" ] + then + # ttyS0 and its devfsd counterpart (Sparc serial port "A") + dosed 's:\(vc/1\)$:tts/0\n\1:' /etc/securetty + dosed 's:\(tty1\)$:ttyS0\n\1:' /etc/securetty + fi + + # fix hppa serial console + if [ "${ARCH}" = "hppa" ] + then + # ttyB0 is the PDC software console + dosed 's:\(vc/1\)$:tts/0\n\1:' /etc/securetty + dosed 's:\(tty1\)$:ttyS0\n\1:' /etc/securetty + dosed 's:\(tty1\)$:ttyB0\n\1:' /etc/securetty + fi +} + +pkg_postinst() { + use pam || return 0; + local CHECK1="$(md5sum ${ROOT}/etc/pam.d/system-auth | cut -d ' ' -f 1)" + local CHECK2="$(md5sum ${ROOT}/etc/pam.d/system-auth.new | cut -d ' ' -f 1)" + + if [ "${CHECK1}" != "${CHECK2}" -a "${FORCE_SYSTEMAUTH_UPDATE}" = "yes" ] + then + ewarn "Due to a security issue, ${ROOT}etc/pam.d/system-auth " + ewarn "is being updated automatically. Your old " + ewarn "system-auth will be backed up as:" + ewarn + ewarn " ${ROOT}etc/pam.d/system-auth.bak" + echo + + cp -a ${ROOT}/etc/pam.d/system-auth \ + ${ROOT}/etc/pam.d/system-auth.bak; + mv -f ${ROOT}/etc/pam.d/system-auth.new \ + ${ROOT}/etc/pam.d/system-auth + rm -f ${ROOT}/etc/pam.d/._cfg????_system-auth + else + rm -f ${ROOT}/etc/pam.d/system-auth.new + fi +} diff --git a/sys-apps/shadow/shadow-4.0.4.1.ebuild b/sys-apps/shadow/shadow-4.0.4.1.ebuild index c0d5dba6309d..8426b50a5815 100644 --- a/sys-apps/shadow/shadow-4.0.4.1.ebuild +++ b/sys-apps/shadow/shadow-4.0.4.1.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/shadow-4.0.4.1.ebuild,v 1.12 2004/05/04 21:37:06 gustavoz Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/shadow-4.0.4.1.ebuild,v 1.13 2004/05/06 21:23:50 agriffis Exp $ inherit eutils libtool gnuconfig @@ -65,7 +65,7 @@ src_compile() { elibtoolize - local myconf= + local myconf use pam \ && myconf="${myconf} --with-libpam --with-libcrack" \ || myconf="${myconf} --without-libpam" @@ -80,7 +80,7 @@ src_compile() { ${myconf} || die "bad configure" # Parallel make fails sometimes - make || die "compile problem" + emake -j1 || die "compile problem" } src_install() { |