mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-01-27 23:44:04 +00:00
core/nfs-utils to 1.2.5-2
This commit is contained in:
parent
1e5610e5fc
commit
e61e259c90
5 changed files with 3 additions and 267 deletions
|
@ -12,7 +12,7 @@ plugrel=1
|
|||
|
||||
pkgname=nfs-utils
|
||||
pkgver=1.2.5
|
||||
pkgrel=1
|
||||
pkgrel=2
|
||||
pkgdesc="Support programs for Network File Systems"
|
||||
arch=('i686' 'x86_64')
|
||||
url='http://nfs.sourceforge.net'
|
||||
|
@ -36,7 +36,7 @@ md5sums=('8395ac770720b83c5c469f88306d7765'
|
|||
'dd0d65fc6e8f422fa12520813098264b'
|
||||
'f73f197a16b02c3e248488ec35c4cf43'
|
||||
'e619f18354ff958ed624d05d08853d8f'
|
||||
'2bf71def3263325643a09458635520f0'
|
||||
'9cef69bc686cc5dcac23fbb51450747d'
|
||||
'ff585faf410a62c4333a027c50b56bae'
|
||||
'eb4f4027fab6fc1201f1ca04f5954c76'
|
||||
'e9144277a89a620d9bc80413158a7d27'
|
||||
|
|
|
@ -18,7 +18,7 @@ PROCNFSD_MOUNTOPTS=""
|
|||
# If you have a port-based firewall, you might want to set up
|
||||
# a fixed port here using the --port option.
|
||||
# See rpc.mountd(8) for more details.
|
||||
MOUNTD_OPTS="--no-nfs-version 2"
|
||||
MOUNTD_OPTS=""
|
||||
|
||||
# Do you want to start the svcgssd daemon? It is only required for Kerberos
|
||||
# exports. Valid alternatives are "yes" and "no"; the default is "no".
|
||||
|
|
|
@ -1,138 +0,0 @@
|
|||
diff -NaurwB nfs-utils-1.1.2.orig/aclocal/kerberos5.m4 nfs-utils-1.1.2/aclocal/kerberos5.m4
|
||||
--- nfs-utils-1.1.2.orig/aclocal/kerberos5.m4 2008-03-14 16:46:29.000000000 +0100
|
||||
+++ nfs-utils-1.1.2/aclocal/kerberos5.m4 2008-06-12 17:13:51.000000000 +0200
|
||||
@@ -1,112 +1,48 @@
|
||||
-dnl Checks for Kerberos
|
||||
-dnl NOTE: while we intend to do generic gss-api, currently we
|
||||
-dnl have a requirement to get an initial Kerberos machine
|
||||
-dnl credential. Thus, the requirement for Kerberos.
|
||||
-dnl The Kerberos gssapi library will be dynamically loaded?
|
||||
AC_DEFUN([AC_KERBEROS_V5],[
|
||||
+ K5CONFIG="krb5-config"
|
||||
AC_MSG_CHECKING(for Kerberos v5)
|
||||
- AC_ARG_WITH(krb5,
|
||||
- [AC_HELP_STRING([--with-krb5=DIR], [use Kerberos v5 installation in DIR])],
|
||||
+ AC_ARG_WITH(krb5-config,
|
||||
+ [AC_HELP_STRING([--with-krb5-config=PATH], [Full Path to krb5-config.])],
|
||||
[ case "$withval" in
|
||||
yes|no)
|
||||
- krb5_with=""
|
||||
+ K5CONFIG="krb5-config"
|
||||
;;
|
||||
*)
|
||||
- krb5_with="$withval"
|
||||
+ K5CONFIG="$withval"
|
||||
;;
|
||||
esac ]
|
||||
)
|
||||
|
||||
- for dir in $krb5_with /usr /usr/kerberos /usr/local /usr/local/krb5 \
|
||||
- /usr/krb5 /usr/heimdal /usr/local/heimdal /usr/athena ; do
|
||||
- dnl This ugly hack brought on by the split installation of
|
||||
- dnl MIT Kerberos on Fedora Core 1
|
||||
- K5CONFIG=""
|
||||
- if test -f $dir/bin/krb5-config; then
|
||||
- K5CONFIG=$dir/bin/krb5-config
|
||||
- elif test -f "/usr/kerberos/bin/krb5-config"; then
|
||||
- K5CONFIG="/usr/kerberos/bin/krb5-config"
|
||||
- elif test -f "/usr/lib/mit/bin/krb5-config"; then
|
||||
- K5CONFIG="/usr/lib/mit/bin/krb5-config"
|
||||
- fi
|
||||
if test "$K5CONFIG" != ""; then
|
||||
KRBCFLAGS=`$K5CONFIG --cflags`
|
||||
KRBLIBS=`$K5CONFIG --libs gssapi`
|
||||
- K5VERS=`$K5CONFIG --version | head -n 1 | awk '{split($(4),v,"."); if (v@<:@"3"@:>@ == "") v@<:@"3"@:>@ = "0"; print v@<:@"1"@:>@v@<:@"2"@:>@v@<:@"3"@:>@ }'`
|
||||
- AC_DEFINE_UNQUOTED(KRB5_VERSION, $K5VERS, [Define this as the Kerberos version number])
|
||||
- if test -f $dir/include/gssapi/gssapi_krb5.h -a \
|
||||
- \( -f $dir/lib/libgssapi_krb5.a -o \
|
||||
- -f $dir/lib64/libgssapi_krb5.a -o \
|
||||
- -f $dir/lib64/libgssapi_krb5.so -o \
|
||||
- -f $dir/lib/libgssapi_krb5.so \) ; then
|
||||
+ if $K5CONFIG --version | grep -q -e heimdal; then
|
||||
+ K5VERS=`$K5CONFIG --version | head -n 1 | cut -f2 -d ' ' | tr -d '.'`
|
||||
+ AC_DEFINE(HAVE_HEIMDAL, 1, [Define this if you have Heimdal Kerberos libraries])
|
||||
+ gssapi_lib=gssapi
|
||||
+ KRBIMPL="heimdal"
|
||||
+ elif $K5CONFIG --version | grep -q -e mit; then
|
||||
+ K5VERS=`$K5CONFIG --version | head -n 1 | cut -f4 -d ' ' | tr -d '.'`
|
||||
AC_DEFINE(HAVE_KRB5, 1, [Define this if you have MIT Kerberos libraries])
|
||||
- KRBDIR="$dir"
|
||||
- dnl If we are using MIT K5 1.3.1 and before, we *MUST* use the
|
||||
- dnl private function (gss_krb5_ccache_name) to get correct
|
||||
- dnl behavior of changing the ccache used by gssapi.
|
||||
- dnl Starting in 1.3.2, we *DO NOT* want to use
|
||||
- dnl gss_krb5_ccache_name, instead we want to set KRB5CCNAME
|
||||
- dnl to get gssapi to use a different ccache
|
||||
if test $K5VERS -le 131; then
|
||||
AC_DEFINE(USE_GSS_KRB5_CCACHE_NAME, 1, [Define this if the private function, gss_krb5_cache_name, must be used to tell the Kerberos library which credentials cache to use. Otherwise, this is done by setting the KRB5CCNAME environment variable])
|
||||
fi
|
||||
gssapi_lib=gssapi_krb5
|
||||
- break
|
||||
- dnl The following ugly hack brought on by the split installation
|
||||
- dnl of Heimdal Kerberos on SuSe
|
||||
- elif test \( -f $dir/include/heim_err.h -o\
|
||||
- -f $dir/include/heimdal/heim_err.h \) -a \
|
||||
- -f $dir/lib/libroken.a; then
|
||||
- AC_DEFINE(HAVE_HEIMDAL, 1, [Define this if you have Heimdal Kerberos libraries])
|
||||
- KRBDIR="$dir"
|
||||
- gssapi_lib=gssapi
|
||||
- break
|
||||
- fi
|
||||
- fi
|
||||
- done
|
||||
- dnl We didn't find a usable Kerberos environment
|
||||
- if test "x$KRBDIR" = "x"; then
|
||||
- if test "x$krb5_with" = "x"; then
|
||||
- AC_MSG_ERROR(Kerberos v5 with GSS support not found: consider --disable-gss or --with-krb5=)
|
||||
+ KRBIMPL="mit-krb5"
|
||||
else
|
||||
- AC_MSG_ERROR(Kerberos v5 with GSS support not found at $krb5_with)
|
||||
- fi
|
||||
+ AC_MSG_ERROR(Unknown Kerberos 5 Implementation. Is neither heimdal or mit-krb5.)
|
||||
+ KRBIMPL="unknown"
|
||||
fi
|
||||
- AC_MSG_RESULT($KRBDIR)
|
||||
-
|
||||
- dnl Check if -rpath=$(KRBDIR)/lib is needed
|
||||
- echo "The current KRBDIR is $KRBDIR"
|
||||
- if test "$KRBDIR/lib" = "/lib" -o "$KRBDIR/lib" = "/usr/lib" \
|
||||
- -o "$KRBDIR/lib" = "//lib" -o "$KRBDIR/lib" = "/usr//lib" ; then
|
||||
- KRBLDFLAGS="";
|
||||
- elif /sbin/ldconfig -p | grep > /dev/null "=> $KRBDIR/lib/"; then
|
||||
- KRBLDFLAGS="";
|
||||
- else
|
||||
- KRBLDFLAGS="-Wl,-rpath=$KRBDIR/lib"
|
||||
+ AC_DEFINE_UNQUOTED(KRB5_VERSION, $K5VERS, [Define this as the Kerberos version number])
|
||||
fi
|
||||
+ AC_MSG_RESULT($KRBIMPL)
|
||||
|
||||
- dnl Now check for functions within gssapi library
|
||||
- AC_CHECK_LIB($gssapi_lib, gss_krb5_export_lucid_sec_context,
|
||||
- AC_DEFINE(HAVE_LUCID_CONTEXT_SUPPORT, 1, [Define this if the Kerberos GSS library supports gss_krb5_export_lucid_sec_context]), ,$KRBLIBS)
|
||||
- AC_CHECK_LIB($gssapi_lib, gss_krb5_set_allowable_enctypes,
|
||||
- AC_DEFINE(HAVE_SET_ALLOWABLE_ENCTYPES, 1, [Define this if the Kerberos GSS library supports gss_krb5_set_allowable_enctypes]), ,$KRBLIBS)
|
||||
- AC_CHECK_LIB($gssapi_lib, gss_krb5_ccache_name,
|
||||
- AC_DEFINE(HAVE_GSS_KRB5_CCACHE_NAME, 1, [Define this if the Kerberos GSS library supports gss_krb5_ccache_name]), ,$KRBLIBS)
|
||||
-
|
||||
- dnl Check for newer error message facility
|
||||
- AC_CHECK_LIB($gssapi_lib, krb5_get_error_message,
|
||||
- AC_DEFINE(HAVE_KRB5_GET_ERROR_MESSAGE, 1, [Define this if the function krb5_get_error_message is available]), ,$KRBLIBS)
|
||||
+ AC_CHECK_LIB($gssapi_lib, gss_krb5_export_lucid_sec_context, AC_DEFINE(HAVE_LUCID_CONTEXT_SUPPORT, 1, [Define this if the Kerberos GSS library supports gss_krb5_export_lucid_sec_context]), ,$KRBLIBS)
|
||||
+ AC_CHECK_LIB($gssapi_lib, gss_krb5_set_allowable_enctypes, AC_DEFINE(HAVE_SET_ALLOWABLE_ENCTYPES, 1, [Define this if the Kerberos GSS library supports gss_krb5_set_allowable_enctypes]), ,$KRBLIBS)
|
||||
+ AC_CHECK_LIB($gssapi_lib, gss_krb5_ccache_name, AC_DEFINE(HAVE_GSS_KRB5_CCACHE_NAME, 1, [Define this if the Kerberos GSS library supports gss_krb5_ccache_name]), ,$KRBLIBS)
|
||||
+ AC_CHECK_LIB($gssapi_lib, krb5_get_error_message, AC_DEFINE(HAVE_KRB5_GET_ERROR_MESSAGE, 1, [Define this if the function krb5_get_error_message is available]), ,$KRBLIBS)
|
||||
+ AC_CHECK_LIB($gssapi_lib, krb5_get_init_creds_opt_set_addressless, AC_DEFINE(HAVE_KRB5_GET_INIT_CREDS_OPT_SET_ADDRESSLESS, 1, [Define this if the function krb5_get_init_creds_opt_set_addressless is available]), ,$KRBLIBS)
|
||||
|
||||
- dnl Check for function to specify addressless tickets
|
||||
- AC_CHECK_LIB($gssapi_lib, krb5_get_init_creds_opt_set_addressless,
|
||||
- AC_DEFINE(HAVE_KRB5_GET_INIT_CREDS_OPT_SET_ADDRESSLESS, 1, [Define this if the function krb5_get_init_creds_opt_set_addressless is available]), ,$KRBLIBS)
|
||||
-
|
||||
- dnl If they specified a directory and it didn't work, give them a warning
|
||||
- if test "x$krb5_with" != "x" -a "$krb5_with" != "$KRBDIR"; then
|
||||
- AC_MSG_WARN(Using $KRBDIR instead of requested value of $krb5_with for Kerberos!)
|
||||
- fi
|
||||
-
|
||||
- AC_SUBST([KRBDIR])
|
||||
AC_SUBST([KRBLIBS])
|
||||
AC_SUBST([KRBCFLAGS])
|
||||
AC_SUBST([KRBLDFLAGS])
|
|
@ -1,69 +0,0 @@
|
|||
diff -Naur nfs-utils-1.1.6.orig/utils/gssd/krb5_util.c nfs-utils-1.1.6/utils/gssd/krb5_util.c
|
||||
--- utils/gssd/krb5_util.c 2009-04-20 19:32:50.000000000 +0200
|
||||
+++ utils/gssd/krb5_util.c 2009-04-20 20:57:31.000000000 +0200
|
||||
@@ -940,9 +940,37 @@
|
||||
{
|
||||
krb5_error_code ret;
|
||||
krb5_creds creds;
|
||||
- krb5_cc_cursor cur;
|
||||
int found = 0;
|
||||
|
||||
+#ifdef HAVE_HEIMDAL
|
||||
+ krb5_creds pattern;
|
||||
+ krb5_realm *client_realm;
|
||||
+
|
||||
+ krb5_cc_clear_mcred(&pattern);
|
||||
+
|
||||
+ client_realm = krb5_princ_realm (context, principal);
|
||||
+
|
||||
+ ret = krb5_make_principal (context, &pattern.server,
|
||||
+ *client_realm, KRB5_TGS_NAME, *client_realm,
|
||||
+ NULL);
|
||||
+ if (ret)
|
||||
+ krb5_err (context, 1, ret, "krb5_make_principal");
|
||||
+ pattern.client = principal;
|
||||
+
|
||||
+ ret = krb5_cc_retrieve_cred (context, ccache, 0, &pattern, &creds);
|
||||
+ krb5_free_principal (context, pattern.server);
|
||||
+ if (ret) {
|
||||
+ if (ret == KRB5_CC_END)
|
||||
+ return 1;
|
||||
+ krb5_err (context, 1, ret, "krb5_cc_retrieve_cred");
|
||||
+ }
|
||||
+
|
||||
+ found = creds.times.endtime > time(NULL);
|
||||
+
|
||||
+ krb5_free_cred_contents (context, &creds);
|
||||
+#else
|
||||
+ krb5_cc_cursor cur;
|
||||
+
|
||||
ret = krb5_cc_start_seq_get(context, ccache, &cur);
|
||||
if (ret)
|
||||
return 0;
|
||||
@@ -962,6 +990,7 @@
|
||||
krb5_free_cred_contents(context, &creds);
|
||||
}
|
||||
krb5_cc_end_seq_get(context, ccache, &cur);
|
||||
+#endif
|
||||
|
||||
return found;
|
||||
}
|
||||
@@ -1008,6 +1037,9 @@
|
||||
}
|
||||
krb5_free_principal(context, principal);
|
||||
err_princ:
|
||||
+#ifdef HAVE_HEIMDAL
|
||||
+#define KRB5_TC_OPENCLOSE 0x00000001
|
||||
+#endif
|
||||
krb5_cc_set_flags(context, ccache, KRB5_TC_OPENCLOSE);
|
||||
krb5_cc_close(context, ccache);
|
||||
err_cache:
|
||||
@@ -1262,7 +1294,7 @@
|
||||
if (context != NULL) {
|
||||
origmsg = krb5_get_error_message(context, code);
|
||||
msg = strdup(origmsg);
|
||||
- krb5_free_error_message(context, origmsg);
|
||||
+ krb5_free_error_string(context, origmsg);
|
||||
}
|
||||
#endif
|
||||
if (msg != NULL)
|
|
@ -1,57 +0,0 @@
|
|||
Index: nfs-utils-1.1.6/utils/gssd/context_lucid.c
|
||||
===================================================================
|
||||
--- nfs-utils-1.1.6.orig/utils/gssd/context_lucid.c
|
||||
+++ nfs-utils-1.1.6/utils/gssd/context_lucid.c
|
||||
@@ -51,8 +51,10 @@
|
||||
#include "context.h"
|
||||
|
||||
#ifndef OM_uint64
|
||||
+#ifndef GSSAPI_GSSAPI_H_
|
||||
typedef uint64_t OM_uint64;
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
static int
|
||||
write_lucid_keyblock(char **p, char *end, gss_krb5_lucid_key_t *key)
|
||||
@@ -177,10 +179,10 @@
|
||||
int retcode = 0;
|
||||
|
||||
printerr(2, "DEBUG: serialize_krb5_ctx: lucid version!\n");
|
||||
- maj_stat = gss_export_lucid_sec_context(&min_stat, &ctx,
|
||||
+ maj_stat = gss_krb5_export_lucid_sec_context(&min_stat, &ctx,
|
||||
1, &return_ctx);
|
||||
if (maj_stat != GSS_S_COMPLETE) {
|
||||
- pgsserr("gss_export_lucid_sec_context",
|
||||
+ pgsserr("gss_krb5_export_lucid_sec_context",
|
||||
maj_stat, min_stat, &krb5oid);
|
||||
goto out_err;
|
||||
}
|
||||
@@ -204,9 +206,9 @@
|
||||
else
|
||||
retcode = prepare_krb5_rfc_cfx_buffer(lctx, buf, endtime);
|
||||
|
||||
- maj_stat = gss_free_lucid_sec_context(&min_stat, ctx, return_ctx);
|
||||
+ maj_stat = gss_krb5_free_lucid_sec_context(&min_stat, ctx);
|
||||
if (maj_stat != GSS_S_COMPLETE) {
|
||||
- pgsserr("gss_export_lucid_sec_context",
|
||||
+ pgsserr("gss_krb5_export_lucid_sec_context",
|
||||
maj_stat, min_stat, &krb5oid);
|
||||
printerr(0, "WARN: failed to free lucid sec context\n");
|
||||
}
|
||||
Index: nfs-utils-1.1.6/utils/gssd/krb5_util.c
|
||||
===================================================================
|
||||
--- nfs-utils-1.1.6.orig/utils/gssd/krb5_util.c
|
||||
+++ nfs-utils-1.1.6/utils/gssd/krb5_util.c
|
||||
@@ -332,10 +332,10 @@
|
||||
return -1;
|
||||
}
|
||||
|
||||
- maj_stat = gss_set_allowable_enctypes(&min_stat, credh, &krb5oid,
|
||||
+ maj_stat = gss_krb5_set_allowable_enctypes(&min_stat, credh,
|
||||
num_enctypes, &enctypes);
|
||||
if (maj_stat != GSS_S_COMPLETE) {
|
||||
- pgsserr("gss_set_allowable_enctypes",
|
||||
+ pgsserr("gss_krb5_set_allowable_enctypes",
|
||||
maj_stat, min_stat, &krb5oid);
|
||||
gss_release_cred(&min_stat, &credh);
|
||||
return -1;
|
Loading…
Reference in a new issue