summaryrefslogtreecommitdiff
path: root/community/autofs
diff options
context:
space:
mode:
authorroot <root@rshg047.dnsready.net>2011-05-16 22:43:10 +0000
committerroot <root@rshg047.dnsready.net>2011-05-16 22:43:10 +0000
commit2f0d12506e7145c0fe4c056e4fbcda1e724dda95 (patch)
tree8239b0d9ccc81417341ef1798c9bb8a99edce48d /community/autofs
parenta45aa8f19ea32f45610dafabfc06c8b7d1ed5cfe (diff)
Mon May 16 22:43:24 UTC 2011
Diffstat (limited to 'community/autofs')
-rw-r--r--community/autofs/0001-autofs-5.0.5-include-krb5-library.patch206
-rw-r--r--community/autofs/0002-autofs-5.0.5-remove-ERR_remove_state-openssl-call.patch59
-rw-r--r--community/autofs/PKGBUILD11
3 files changed, 274 insertions, 2 deletions
diff --git a/community/autofs/0001-autofs-5.0.5-include-krb5-library.patch b/community/autofs/0001-autofs-5.0.5-include-krb5-library.patch
new file mode 100644
index 000000000..572ca97fd
--- /dev/null
+++ b/community/autofs/0001-autofs-5.0.5-include-krb5-library.patch
@@ -0,0 +1,206 @@
+From e467755fac27630730be25c4b41e5d0cfcd89c67 Mon Sep 17 00:00:00 2001
+From: Ian Kent <raven@themaw.net>
+Date: Tue, 10 Aug 2010 15:48:21 +0800
+Subject: [PATCH 1/2] autofs-5.0.5 - include krb5 library
+
+Since the Cyrus SASL module calls Kerberos directly we should be
+linking against the Kerberos librarys.
+---
+ Makefile.conf.in | 2 +
+ aclocal.m4 | 19 +++++++++++++++
+ configure | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
+ configure.in | 5 +++-
+ modules/Makefile | 4 +-
+ 5 files changed, 93 insertions(+), 4 deletions(-)
+
+diff --git a/Makefile.conf.in b/Makefile.conf.in
+index f0287c3..a9bcf8c 100644
+--- a/Makefile.conf.in
++++ b/Makefile.conf.in
+@@ -31,6 +31,8 @@ XML_FLAGS = @XML_FLAGS@
+ SASL = @HAVE_SASL@
+ LIBSASL= @LIBSASL@
+ SASL_FLAGS = @SASL_FLAGS@
++KRB5_LIBS=@KRB5_LIBS@
++KRB5_FLAGS=@KRB5_FLAGS@
+
+ # NIS+ support: yes (1) no (0)
+ NISPLUS = @HAVE_NISPLUS@
+diff --git a/aclocal.m4 b/aclocal.m4
+index e7f1a30..750a159 100644
+--- a/aclocal.m4
++++ b/aclocal.m4
+@@ -215,6 +215,25 @@ else
+ fi])
+
+ dnl --------------------------------------------------------------------------
++dnl AF_CHECK_KRB5
++dnl
++dnl Check for Kerberos 5
++dnl --------------------------------------------------------------------------
++AC_DEFUN([AF_CHECK_KRB5],
++[AC_PATH_PROGS(KRB5_CONFIG, krb5-config, no)
++AC_MSG_CHECKING(for Kerberos library)
++if test "$KRB5_CONFIG" = "no"
++then
++ AC_MSG_RESULT(no)
++ HAVE_KRB5=0
++else
++ AC_MSG_RESULT(yes)
++ HAVE_KRB5=1
++ KRB5_LIBS=`$KRB5_CONFIG --libs`
++ KRB5_FLAGS=`$KRB5_CONFIG --cflags`
++fi])
++
++dnl --------------------------------------------------------------------------
+ dnl AF_CHECK_LIBHESIOD
+ dnl
+ dnl Check for lib hesiod
+diff --git a/configure b/configure
+index 159f25f..500411c 100755
+--- a/configure
++++ b/configure
+@@ -640,6 +640,8 @@ ac_subst_vars='LTLIBOBJS
+ LIBOBJS
+ DAEMON_LDFLAGS
+ DAEMON_CFLAGS
++KRB5_FLAGS
++KRB5_LIBS
+ LIBSASL
+ HAVE_SASL
+ SASL_FLAGS
+@@ -657,6 +659,7 @@ LIBHESIOD
+ HAVE_HESIOD
+ LIBRESOLV
+ LIBNSL
++KRB5_CONFIG
+ XML_CONFIG
+ PATH_RPCGEN
+ RPCGEN
+@@ -3723,7 +3726,7 @@ $as_echo "no" >&6; }
+ fi
+ fi
+
+-# LDAP SASL auth need libxml
++# LDAP SASL auth needs libxml and Kerberos
+ for ac_prog in xml2-config
+ do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+@@ -3801,6 +3804,66 @@ _ACEOF
+ fi
+ fi
+ fi
++for ac_prog in krb5-config
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
++$as_echo_n "checking for $ac_word... " >&6; }
++if test "${ac_cv_path_KRB5_CONFIG+set}" = set; then
++ $as_echo_n "(cached) " >&6
++else
++ case $KRB5_CONFIG in
++ [\\/]* | ?:[\\/]*)
++ ac_cv_path_KRB5_CONFIG="$KRB5_CONFIG" # Let the user override the test with a path.
++ ;;
++ *)
++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ ac_cv_path_KRB5_CONFIG="$as_dir/$ac_word$ac_exec_ext"
++ $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++done
++IFS=$as_save_IFS
++
++ ;;
++esac
++fi
++KRB5_CONFIG=$ac_cv_path_KRB5_CONFIG
++if test -n "$KRB5_CONFIG"; then
++ { $as_echo "$as_me:$LINENO: result: $KRB5_CONFIG" >&5
++$as_echo "$KRB5_CONFIG" >&6; }
++else
++ { $as_echo "$as_me:$LINENO: result: no" >&5
++$as_echo "no" >&6; }
++fi
++
++
++ test -n "$KRB5_CONFIG" && break
++done
++test -n "$KRB5_CONFIG" || KRB5_CONFIG="no"
++
++{ $as_echo "$as_me:$LINENO: checking for Kerberos library" >&5
++$as_echo_n "checking for Kerberos library... " >&6; }
++if test "$KRB5_CONFIG" = "no"
++then
++ { $as_echo "$as_me:$LINENO: result: no" >&5
++$as_echo "no" >&6; }
++ HAVE_KRB5=0
++else
++ { $as_echo "$as_me:$LINENO: result: yes" >&5
++$as_echo "yes" >&6; }
++ HAVE_KRB5=1
++ KRB5_LIBS=`$KRB5_CONFIG --libs`
++ KRB5_FLAGS=`$KRB5_CONFIG --cflags`
++fi
+
+ #
+ # glibc/libc 6 new libraries
+@@ -5178,6 +5241,8 @@ fi
+
+
+
++
++
+ LDFLAGS="${AF_tmp_ldflags}"
+
+ #
+diff --git a/configure.in b/configure.in
+index f649a58..70b45e8 100644
+--- a/configure.in
++++ b/configure.in
+@@ -144,8 +144,9 @@ AF_CHECK_PROG(RPCGEN, rpcgen, , $searchpath)
+ #
+ AF_SLOPPY_MOUNT()
+
+-# LDAP SASL auth need libxml
++# LDAP SASL auth needs libxml and Kerberos
+ AF_CHECK_LIBXML()
++AF_CHECK_KRB5()
+
+ #
+ # glibc/libc 6 new libraries
+@@ -274,6 +275,8 @@ AC_SUBST(XML_LIBS)
+ AC_SUBST(SASL_FLAGS)
+ AC_SUBST(HAVE_SASL)
+ AC_SUBST(LIBSASL)
++AC_SUBST(KRB5_LIBS)
++AC_SUBST(KRB5_FLAGS)
+ LDFLAGS="${AF_tmp_ldflags}"
+
+ #
+diff --git a/modules/Makefile b/modules/Makefile
+index 13b3bd8..2389196 100644
+--- a/modules/Makefile
++++ b/modules/Makefile
+@@ -42,8 +42,8 @@ ifeq ($(LDAP), 1)
+ MODS += lookup_ldap.so
+ ifeq ($(SASL), 1)
+ SASL_OBJ = cyrus-sasl.o
+- LDAP_FLAGS += $(SASL_FLAGS) $(XML_FLAGS) -DLDAP_THREAD_SAFE
+- LIBLDAP += $(LIBSASL) $(XML_LIBS)
++ LDAP_FLAGS += $(SASL_FLAGS) $(XML_FLAGS) $(KRB5_FLAGS) -DLDAP_THREAD_SAFE
++ LIBLDAP += $(LIBSASL) $(XML_LIBS) $(KRB5_LIBS)
+ endif
+ endif
+
+--
+1.7.5.1
+
diff --git a/community/autofs/0002-autofs-5.0.5-remove-ERR_remove_state-openssl-call.patch b/community/autofs/0002-autofs-5.0.5-remove-ERR_remove_state-openssl-call.patch
new file mode 100644
index 000000000..e4e480e82
--- /dev/null
+++ b/community/autofs/0002-autofs-5.0.5-remove-ERR_remove_state-openssl-call.patch
@@ -0,0 +1,59 @@
+From 205c305922cdbded91ff8fadbaad7959bdb497bc Mon Sep 17 00:00:00 2001
+From: Ian Kent <raven@themaw.net>
+Date: Wed, 11 Aug 2010 09:33:09 +0800
+Subject: [PATCH 2/2] autofs-5.0.5 - remove ERR_remove_state() openssl call
+
+autofs should never have had to use ERR_remove_state() so remove that call.
+
+Lukas: Resolve a conflict in "CHANGELOG" that occured due to cherry
+picking Kerberos related patches from the 5.0.6 development branch.
+
+Conflicts:
+
+ CHANGELOG
+
+Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
+---
+ CHANGELOG | 4 ++++
+ modules/lookup_ldap.c | 12 +-----------
+ 2 files changed, 5 insertions(+), 11 deletions(-)
+
+diff --git a/CHANGELOG b/CHANGELOG
+index e734cb3..1a20a81 100644
+--- a/CHANGELOG
++++ b/CHANGELOG
+@@ -1,3 +1,7 @@
++??/??/20?? autofs-5.0.6
++-----------------------
++- remove ERR_remove_state() openssl call.
++
+ 03/09/2009 autofs-5.0.5
+ -----------------------
+ - fix dumb libxml2 check
+diff --git a/modules/lookup_ldap.c b/modules/lookup_ldap.c
+index 2ecf5fe..1221c2c 100644
+--- a/modules/lookup_ldap.c
++++ b/modules/lookup_ldap.c
+@@ -168,18 +168,8 @@ int unbind_ldap_connection(unsigned logopt, LDAP *ldap, struct lookup_context *c
+ int rv;
+
+ #ifdef WITH_SASL
+- /*
+- * The OpenSSL library can't handle having its message and error
+- * string database loaded multiple times and segfaults if the
+- * TLS environment is not reset at the right times. As there
+- * is no ldap_stop_tls call in the openldap library we have
+- * to do the job ourselves, here and in lookup_done when the
+- * module is closed.
+- */
+- if (ctxt->use_tls == LDAP_TLS_RELEASE) {
+- ERR_remove_state(0);
++ if (ctxt->use_tls == LDAP_TLS_RELEASE)
+ ctxt->use_tls = LDAP_TLS_INIT;
+- }
+ autofs_sasl_unbind(ctxt);
+ #endif
+
+--
+1.7.5.1
+
diff --git a/community/autofs/PKGBUILD b/community/autofs/PKGBUILD
index 11ac57ec1..6516f9736 100644
--- a/community/autofs/PKGBUILD
+++ b/community/autofs/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 46345 2011-05-05 11:57:37Z spupykin $
+# $Id: PKGBUILD 47057 2011-05-15 17:16:45Z lfleischer $
# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Dale Blount <dale@archlinux.org>
@@ -6,7 +6,7 @@
pkgname=autofs
pkgver=5.0.5
-pkgrel=6
+pkgrel=7
pkgdesc='A kernel-based automounter for Linux.'
arch=('i686' 'x86_64')
url='http://freshmeat.net/projects/autofs'
@@ -18,11 +18,15 @@ backup=('etc/autofs/auto.master'
options=(!makeflags)
install='autofs.install'
source=("http://www.kernel.org/pub/linux/daemons/${pkgname}/v5/${pkgname}-${pkgver}.tar.bz2"
+ "0001-${pkgname}-5.0.5-include-krb5-library.patch"
+ "0002-${pkgname}-5.0.5-remove-ERR_remove_state-openssl-call.patch"
'autofs'
'autofs.conf.d'
'auto.master'
'auto.misc')
md5sums=('a1d262cb6ebef0c2dd0fe22232fb3d5a'
+ '478737b8e3e79365a0e183aa95aab307'
+ 'e347999e5dffe142e7e57b067d3d9e9f'
'e307bf6d2638e46eeb916cf42fe029b2'
'47f597c870410055e0fdb66103daf928'
'a6cefb591e77b31b79dbb7243646c96b'
@@ -34,6 +38,9 @@ build() {
sed -i "s:SUBDIRS = lib daemon modules man samples:SUBDIRS = lib daemon modules man:" \
Makefile.rules
+ patch -p1 -i "../0001-${pkgname}-5.0.5-include-krb5-library.patch"
+ patch -p1 -i "../0002-${pkgname}-5.0.5-remove-ERR_remove_state-openssl-call.patch"
+
./configure --prefix=/usr --sysconfdir=/etc/autofs --with-mapdir=/etc/autofs --without-hesiod \
--enable-ignore-busy
make