From: Amos Jeffries Date: Tue, 10 Nov 2015 02:13:13 +0000 (-0800) Subject: ext_kerberos_ldap_group_acl: Add missing workarounds for Heimdal Kerberos X-Git-Tag: SQUID_4_0_3~30 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4b0f0c62fa36576280de3746fe926a24c4b5adbe;p=thirdparty%2Fsquid.git ext_kerberos_ldap_group_acl: Add missing workarounds for Heimdal Kerberos error_message() function is not always provided. --- diff --git a/helpers/external_acl/kerberos_ldap_group/kerberos_ldap_group.cc b/helpers/external_acl/kerberos_ldap_group/kerberos_ldap_group.cc index 21ccb47a41..cb0a4fbfb8 100644 --- a/helpers/external_acl/kerberos_ldap_group/kerberos_ldap_group.cc +++ b/helpers/external_acl/kerberos_ldap_group/kerberos_ldap_group.cc @@ -47,7 +47,20 @@ #if HAVE_KRB5 struct kstruct kparam; + +#if !HAVE_ERROR_MESSAGE && HAVE_KRB5_GET_ERROR_MESSAGE +#define error_message(code) krb5_get_error_message(kparam.context,code) +#elif !HAVE_ERROR_MESSAGE && HAVE_KRB5_GET_ERR_TEXT +#define error_message(code) krb5_get_err_text(kparam.context,code) +#elif !HAVE_ERROR_MESSAGE +static char err_code[17]; +const char *KRB5_CALLCONV +error_message(long code) { + snprintf(err_code,16,"%ld",code); + return err_code; +} #endif +#endif /* HAVE_KRB5 */ void init_args(struct main_args *margs)