diff options
author | Diego Elio Pettenò <flameeyes@gentoo.org> | 2009-06-15 13:31:56 +0000 |
---|---|---|
committer | Diego Elio Pettenò <flameeyes@gentoo.org> | 2009-06-15 13:31:56 +0000 |
commit | 83a20d36e8f8d528d20e5a5be376d4614f72d88a (patch) | |
tree | ac35ff74b145256165ca357247bb4b254cded000 | |
parent | Remove old. (diff) | |
download | gentoo-2-83a20d36e8f8d528d20e5a5be376d4614f72d88a.tar.gz gentoo-2-83a20d36e8f8d528d20e5a5be376d4614f72d88a.tar.bz2 gentoo-2-83a20d36e8f8d528d20e5a5be376d4614f72d88a.zip |
Add a patch to fix sudo segfault (bug #273785).
(Portage version: 2.2_rc33/cvs/Linux x86_64)
-rw-r--r-- | sys-auth/pam_mount/ChangeLog | 8 | ||||
-rw-r--r-- | sys-auth/pam_mount/files/pam_mount-1.25-nullsetenv.patch | 34 | ||||
-rw-r--r-- | sys-auth/pam_mount/pam_mount-1.25-r1.ebuild | 43 |
3 files changed, 84 insertions, 1 deletions
diff --git a/sys-auth/pam_mount/ChangeLog b/sys-auth/pam_mount/ChangeLog index 4dc9e43035e6..887677137aa0 100644 --- a/sys-auth/pam_mount/ChangeLog +++ b/sys-auth/pam_mount/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sys-auth/pam_mount # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-auth/pam_mount/ChangeLog,v 1.32 2009/05/24 18:58:01 hanno Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-auth/pam_mount/ChangeLog,v 1.33 2009/06/15 13:31:56 flameeyes Exp $ + +*pam_mount-1.25-r1 (15 Jun 2009) + + 15 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> + +pam_mount-1.25-r1.ebuild, +files/pam_mount-1.25-nullsetenv.patch: + Add a patch to fix sudo segfault (bug #273785). *pam_mount-1.25 (24 May 2009) diff --git a/sys-auth/pam_mount/files/pam_mount-1.25-nullsetenv.patch b/sys-auth/pam_mount/files/pam_mount-1.25-nullsetenv.patch new file mode 100644 index 000000000000..fe41263e87a6 --- /dev/null +++ b/sys-auth/pam_mount/files/pam_mount-1.25-nullsetenv.patch @@ -0,0 +1,34 @@ +Index: pam_mount-1.25/src/pam_mount.c +=================================================================== +--- pam_mount-1.25.orig/src/pam_mount.c ++++ pam_mount-1.25/src/pam_mount.c +@@ -445,7 +445,7 @@ PAM_EXTERN EXPORT_SYMBOL int pam_sm_open + { + struct vol *vol; + int ret; +- unsigned int krb5_set; ++ char *krb5; + char *system_authtok = NULL; + const void *tmp; + int getval; +@@ -461,8 +461,9 @@ PAM_EXTERN EXPORT_SYMBOL int pam_sm_open + * Get the Kerberos CCNAME so we can make it available to the + * mount command later on. + */ +- krb5_set = getenv("KRB5CCNAME") != NULL; +- if (setenv("KRB5CCNAME", pam_getenv(pamh, "KRB5CCNAME"), 1) < 0) ++ krb5 = pam_getenv(pamh, "KRB5CCNAME"); ++ if (krb5 != NULL && ++ setenv("KRB5CCNAME", krb5, 1) < 0) + l0g("KRB5CCNAME setenv failed\n"); + + /* Store initialized config as PAM data */ +@@ -539,7 +540,7 @@ PAM_EXTERN EXPORT_SYMBOL int pam_sm_open + } + } + memset(system_authtok, 0, strlen(system_authtok)); +- if (krb5_set) ++ if (krb5 != NULL) + unsetenv("KRB5CCNAME"); + modify_pm_count(&Config, Config.user, "1"); + envpath_restore(); diff --git a/sys-auth/pam_mount/pam_mount-1.25-r1.ebuild b/sys-auth/pam_mount/pam_mount-1.25-r1.ebuild new file mode 100644 index 000000000000..ade68faca21d --- /dev/null +++ b/sys-auth/pam_mount/pam_mount-1.25-r1.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-auth/pam_mount/pam_mount-1.25-r1.ebuild,v 1.1 2009/06/15 13:31:56 flameeyes Exp $ + +inherit multilib eutils + +DESCRIPTION="A PAM module that can mount volumes for a user session" +HOMEPAGE="http://pam-mount.sourceforge.net" +SRC_URI="mirror://sourceforge/pam-mount/${P}.tar.bz2" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" + +IUSE="crypt" +DEPEND=">=sys-libs/pam-0.99 + dev-libs/openssl + >=sys-libs/libhx-2.7 + dev-libs/libxml2 + dev-util/pkgconfig" +RDEPEND=">=sys-libs/pam-0.99 + dev-libs/openssl + >=sys-libs/libhx-2.7 + dev-libs/libxml2 + >=sys-fs/cryptsetup-1.0.5 + sys-process/lsof" + +src_unpack() { + unpack ${A} + cd "${S}" + + epatch "${FILESDIR}"/${P}-nullsetenv.patch +} + +src_compile() { + econf --with-slibdir="/$(get_libdir)" || die "econf failed" + emake || die "emake failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "make install failed" + dodoc doc/*.txt || die "dodoc failed" +} |