X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=nfs-utils-heimdal.patch;h=d2f288e49ace987775775715c3ebd2eaf67f28a6;hb=HEAD;hp=c871fb651f5677b217525bdd33e580be397745e0;hpb=d1c5b6d6174c305bc9b7a01fd39f0caade9e382b;p=packages%2Fnfs-utils.git diff --git a/nfs-utils-heimdal.patch b/nfs-utils-heimdal.patch index c871fb6..d2f288e 100644 --- a/nfs-utils-heimdal.patch +++ b/nfs-utils-heimdal.patch @@ -1,61 +1,5 @@ ---- nfs-utils-1.2.3.dist/configure.ac.orig 2010-09-28 14:24:16.000000000 +0200 -+++ nfs-utils-1.2.3.dist/configure.ac 2010-10-03 14:47:50.699424847 +0200 -@@ -246,12 +246,6 @@ - - dnl check for the keyutils libraries and headers - AC_KEYUTILS -- -- dnl librpcsecgss already has a dependency on libgssapi, -- dnl but we need to make sure we get the right version -- if test "$enable_gss" = yes; then -- AC_RPCSEC_VERSION -- fi - fi - - if test "$knfsd_cv_glibc2" = no; then -@@ -295,6 +289,11 @@ - dnl Invoked after AC_KERBEROS_V5; AC_LIBRPCSECGSS needs to have KRBLIBS set - AC_LIBRPCSECGSS - -+ dnl Invoked after AC_KERBEROS_V5 -+ dnl AC_RPCSEC_VERSION needs to now which Kerberos implementation we're using -+ dnl librpcsecgss already has a dependency on libgssapi, -+ dnl but we need to make sure we get the right version -+ AC_RPCSEC_VERSION - fi - - dnl Check for IPv6 support ---- nfs-utils-1.2.3.dist/aclocal/rpcsec_vers.m4.orig 2010-09-28 14:24:16.000000000 +0200 -+++ nfs-utils-1.2.3.dist/aclocal/rpcsec_vers.m4 2010-10-03 14:53:06.379424854 +0200 -@@ -1,7 +1,10 @@ - dnl Checks librpcsec version - AC_DEFUN([AC_RPCSEC_VERSION], [ - -- PKG_CHECK_MODULES([GSSGLUE], [libgssglue >= 0.3]) -+ dnl libgssglue is needed only for MIT Kerberos -+ if test "$gssapi_lib" = gssapi_krb5; then -+ PKG_CHECK_MODULES([GSSGLUE], [libgssglue >= 0.3]) -+ fi - - dnl TI-RPC replaces librpcsecgss - if test "$enable_tirpc" = no; then --- nfs-utils-1.2.3.dist/aclocal/kerberos5.m4~ 2010-09-28 14:24:16.000000000 +0200 +++ nfs-utils-1.2.3.dist/aclocal/kerberos5.m4 2010-10-03 14:13:17.274424855 +0200 -@@ -32,13 +32,13 @@ - 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 -+ 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(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 @@ -56,7 +56,11 @@ dnl of Heimdal Kerberos on SuSe elif test \( -f $dir/include/heim_err.h -o\ @@ -69,46 +13,21 @@ AC_DEFINE(HAVE_HEIMDAL, 1, [Define this if you have Heimdal Kerberos libraries]) KRBDIR="$dir" gssapi_lib=gssapi ---- nfs-utils-1.2.3.dist/utils/gssd/context_lucid.c.orig 2010-09-28 14:24:16.000000000 +0200 -+++ nfs-utils-1.2.3.dist/utils/gssd/context_lucid.c 2010-10-03 14:31:31.150424854 +0200 -@@ -267,8 +267,13 @@ - int retcode = 0; - - printerr(2, "DEBUG: %s: lucid version!\n", __FUNCTION__); +--- nfs-utils-2.5.3/utils/gssd/krb5_util.c.orig 2021-02-20 18:16:52.000000000 +0100 ++++ nfs-utils-2.5.3/utils/gssd/krb5_util.c 2021-02-24 21:11:01.392926374 +0100 +@@ -891,7 +891,11 @@ + myhostad[i+1] = 0; + } + if (adhostoverride) +#ifdef HAVE_HEIMDAL -+ maj_stat = gss_krb5_export_lucid_sec_context(&min_stat, &ctx, -+ 1, &return_ctx); ++ free(adhostoverride); +#else - maj_stat = gss_export_lucid_sec_context(&min_stat, &ctx, - 1, &return_ctx); + krb5_free_string(context, adhostoverride); +#endif - if (maj_stat != GSS_S_COMPLETE) { - pgsserr("gss_export_lucid_sec_context", - maj_stat, min_stat, &krb5oid); -@@ -303,7 +308,11 @@ - else - retcode = prepare_krb5_rfc4121_buffer(lctx, buf, endtime); -+#ifdef HAVE_HEIMDAL -+ maj_stat = gss_krb5_free_lucid_sec_context(&min_stat, return_ctx); -+#else - maj_stat = gss_free_lucid_sec_context(&min_stat, ctx, return_ctx); -+#endif - if (maj_stat != GSS_S_COMPLETE) { - pgsserr("gss_export_lucid_sec_context", - maj_stat, min_stat, &krb5oid); ---- nfs-utils-1.2.3.dist/utils/gssd/krb5_util.c.orig 2010-09-28 14:24:16.000000000 +0200 -+++ nfs-utils-1.2.3.dist/utils/gssd/krb5_util.c 2010-10-03 14:33:07.992424854 +0200 -@@ -115,7 +115,7 @@ - #include - #include - #include --#ifdef USE_PRIVATE_KRB5_FUNCTIONS -+#ifdef HAVE_HEIMDAL - #include - #endif - #include -@@ -927,9 +927,37 @@ + code = krb5_get_default_realm(context, &default_realm); + if (code) { +@@ -1050,9 +1054,37 @@ { krb5_error_code ret; krb5_creds creds; @@ -147,7 +66,7 @@ ret = krb5_cc_start_seq_get(context, ccache, &cur); if (ret) return 0; -@@ -949,6 +977,7 @@ +@@ -1072,6 +1104,7 @@ krb5_free_cred_contents(context, &creds); } krb5_cc_end_seq_get(context, ccache, &cur); @@ -155,7 +74,7 @@ return found; } -@@ -995,6 +1024,9 @@ +@@ -1118,6 +1151,9 @@ } krb5_free_principal(context, principal); err_princ: @@ -165,41 +84,12 @@ krb5_cc_set_flags(context, ccache, KRB5_TC_OPENCLOSE); krb5_cc_close(context, ccache); err_cache: -@@ -1316,12 +1316,21 @@ - * If we failed for any reason to produce global - * list of supported enctypes, use local default here. - */ -+#ifdef HAVE_HEIMDAL -+ if (krb5_enctypes == NULL) -+ maj_stat = gss_krb5_set_allowable_enctypes(&min_stat, credh, -+ num_enctypes, enctypes); -+ else -+ maj_stat = gss_krb5_set_allowable_enctypes(&min_stat, credh, -+ num_krb5_enctypes, krb5_enctypes); -+#else - if (krb5_enctypes == NULL) - maj_stat = gss_set_allowable_enctypes(&min_stat, credh, - &krb5oid, num_enctypes, enctypes); - else - maj_stat = gss_set_allowable_enctypes(&min_stat, credh, - &krb5oid, num_krb5_enctypes, krb5_enctypes); -+#endif - - if (maj_stat != GSS_S_COMPLETE) { - pgsserr("gss_set_allowable_enctypes", ---- nfs-utils-1.2.4/utils/gssd/svcgssd_krb5.c~ 2011-06-30 15:00:42.000000000 +0200 -+++ nfs-utils-1.2.4/utils/gssd/svcgssd_krb5.c 2011-08-03 12:40:53.865782009 +0200 -@@ -186,8 +186,13 @@ - num_enctypes = default_num_enctypes; - } - -+#ifdef HAVE_HEIMDAL -+ maj_stat = gss_krb5_set_allowable_enctypes(&min_stat, gssd_creds, -+ num_enctypes, enctypes); -+#else - maj_stat = gss_set_allowable_enctypes(&min_stat, gssd_creds, - &krb5oid, num_enctypes, enctypes); -+#endif - if (maj_stat != GSS_S_COMPLETE) { - printerr(1, "WARNING: gss_set_allowable_enctypes failed\n"); - pgsserr("svcgssd_limit_krb5_enctypes: gss_set_allowable_enctypes", +@@ -1455,7 +1491,7 @@ + #endif + if (msg != NULL) + return msg; +-#if HAVE_KRB5 ++#ifdef HAVE_KRB5 + return strdup(error_message(code)); + #else + if (context != NULL)