diff options
| author | Greg Hudson <ghudson@mit.edu> | 2012-07-24 16:26:28 -0400 |
|---|---|---|
| committer | Greg Hudson <ghudson@mit.edu> | 2012-07-24 16:26:28 -0400 |
| commit | 4a788fb072b06ab25fb39c7720e2fe7bb79fd7f4 (patch) | |
| tree | 6518c12735e9b4eb1d96b9af7b58ab2b50aa6b21 /src/lib/krb5 | |
| parent | 18884ca01e1a64fcefafc0fdad0d360651c81f13 (diff) | |
| download | krb5-4a788fb072b06ab25fb39c7720e2fe7bb79fd7f4.tar.gz krb5-4a788fb072b06ab25fb39c7720e2fe7bb79fd7f4.tar.xz krb5-4a788fb072b06ab25fb39c7720e2fe7bb79fd7f4.zip | |
Add default_ccache_name profile variable
Like default_keytab_name and default_client_keytab_name,
default_ccache_name is subject to parameter expansion.
ticket: 7220 (new)
Diffstat (limited to 'src/lib/krb5')
| -rw-r--r-- | src/lib/krb5/os/ccdefname.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/lib/krb5/os/ccdefname.c b/src/lib/krb5/os/ccdefname.c index 56e7af8639..cb9bb7c938 100644 --- a/src/lib/krb5/os/ccdefname.c +++ b/src/lib/krb5/os/ccdefname.c @@ -26,6 +26,7 @@ #define NEED_WINDOWS #include "k5-int.h" +#include "os-proto.h" #include <stdio.h> #if defined(_WIN32) @@ -290,7 +291,7 @@ const char * KRB5_CALLCONV krb5_cc_default_name(krb5_context context) { krb5_os_context os_ctx; - char *envstr; + char *profstr, *envstr; if (!context || context->magic != KV5M_CONTEXT) return NULL; @@ -306,6 +307,14 @@ krb5_cc_default_name(krb5_context context) return os_ctx->default_ccname; } + if (profile_get_string(context->profile, KRB5_CONF_LIBDEFAULTS, + KRB5_CONF_DEFAULT_CCACHE_NAME, NULL, NULL, + &profstr) == 0 && profstr != NULL) { + (void)k5_expand_path_tokens(context, profstr, &os_ctx->default_ccname); + profile_release_string(profstr); + return os_ctx->default_ccname; + } + /* Fall back on the default ccache name for the OS. */ get_from_os(context); return os_ctx->default_ccname; |
