diff options
Diffstat (limited to 'src/lib/krb5/os/init_os_ctx.c')
-rw-r--r-- | src/lib/krb5/os/init_os_ctx.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/lib/krb5/os/init_os_ctx.c b/src/lib/krb5/os/init_os_ctx.c index eb2321d..c43771d 100644 --- a/src/lib/krb5/os/init_os_ctx.c +++ b/src/lib/krb5/os/init_os_ctx.c @@ -31,6 +31,10 @@ #include "k5-int.h" #include "os-proto.h" +#ifdef USE_LOGIN_LIBRARY +#include "KerberosLoginPrivate.h" +#endif + #if defined(_WIN32) static krb5_error_code @@ -234,8 +238,14 @@ os_get_default_config_files(profile_filespec_t **pfiles, krb5_boolean secure) unsigned int ent_len; const char *s, *t; +#ifdef USE_LOGIN_LIBRARY + /* If __KLAllowHomeDirectoryAccess() == FALSE, we are probably + trying to authenticate to a fileserver for the user's homedir. */ + if (secure || !__KLAllowHomeDirectoryAccess ()) { +#else if (secure) { - filepath = DEFAULT_SECURE_PROFILE_PATH; +#endif + filepath = DEFAULT_SECURE_PROFILE_PATH; } else { filepath = getenv("KRB5_CONFIG"); if (!filepath) filepath = DEFAULT_PROFILE_PATH; |