diff options
| author | Theodore Tso <tytso@mit.edu> | 1999-02-09 02:50:11 +0000 |
|---|---|---|
| committer | Theodore Tso <tytso@mit.edu> | 1999-02-09 02:50:11 +0000 |
| commit | 33e2fb87ee8cdc1dcaed4db9e072e79d28cb12ae (patch) | |
| tree | ea6900f852d2fbb869a01805f54e3e9be97aa614 | |
| parent | 3ec9b6359a184e69d7e291d8a4d43a371bafd5d3 (diff) | |
| download | krb5-33e2fb87ee8cdc1dcaed4db9e072e79d28cb12ae.tar.gz krb5-33e2fb87ee8cdc1dcaed4db9e072e79d28cb12ae.tar.xz krb5-33e2fb87ee8cdc1dcaed4db9e072e79d28cb12ae.zip | |
ccdefname.c (get_from_os): On the Windows platform, automatically
generate the correct default cache name based on what krb5_cc_dfl_ops
is set to.
realm_dom.c (krb5_get_realm_domain): Add modifiers so that this
function can get exported in a Windows DLL.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@11154 dc483132-0cff-0310-8789-dd5450dbe970
| -rw-r--r-- | src/lib/krb5/os/ChangeLog | 9 | ||||
| -rw-r--r-- | src/lib/krb5/os/ccdefname.c | 14 | ||||
| -rw-r--r-- | src/lib/krb5/os/realm_dom.c | 2 |
3 files changed, 21 insertions, 4 deletions
diff --git a/src/lib/krb5/os/ChangeLog b/src/lib/krb5/os/ChangeLog index 76f2679303..2f04902673 100644 --- a/src/lib/krb5/os/ChangeLog +++ b/src/lib/krb5/os/ChangeLog @@ -1,3 +1,12 @@ +Fri Feb 5 01:05:43 1999 Theodore Y. Ts'o <tytso@mit.edu> + + * ccdefname.c (get_from_os): On the Windows platform, + automatically generate the correct default cache name + based on what krb5_cc_dfl_ops is set to. + + * realm_dom.c (krb5_get_realm_domain): Add modifiers so that this + function can get exported in a Windows DLL. + Tue Feb 2 16:01:58 1999 Tom Yu <tlyu@mit.edu> * read_pwd.c: Remove reference to CPP symbol "unix". diff --git a/src/lib/krb5/os/ccdefname.c b/src/lib/krb5/os/ccdefname.c index ca82c9c589..be88f695d8 100644 --- a/src/lib/krb5/os/ccdefname.c +++ b/src/lib/krb5/os/ccdefname.c @@ -89,11 +89,19 @@ static krb5_error_code get_from_os(char *name_buf, int name_size) static krb5_error_code get_from_os(char *name_buf, int name_size) { char defname[160]; /* Default value */ + char *prefix = krb5_cc_dfl_ops->prefix; + int len; - strcpy (defname, "default_cache_name"); - strcpy (name_buf, "API:"); + if (!strcmp(prefix, "FILE") || !strcmp(prefix, "STDIO")) { + GetWindowsDirectory (defname, sizeof(defname)-7); + strcat (defname, "\\krb5cc"); + } else { + strcpy (defname, "default_cache_name"); + } + sprintf(name_buf, "%s:", prefix); + len = strlen(name_buf); GetPrivateProfileString(INI_FILES, INI_KRB_CCACHE, defname, - name_buf+4, name_size-4, KERBEROS_INI); + name_buf+len, name_size-len, KERBEROS_INI); return 0; } #endif diff --git a/src/lib/krb5/os/realm_dom.c b/src/lib/krb5/os/realm_dom.c index e6afa31886..8880c589d5 100644 --- a/src/lib/krb5/os/realm_dom.c +++ b/src/lib/krb5/os/realm_dom.c @@ -42,7 +42,7 @@ #include <ctype.h> #include <stdio.h> -krb5_error_code +KRB5_DLLIMP krb5_error_code KRB5_CALLCONV krb5_get_realm_domain(context, realm, domain) krb5_context context; const char *realm; |
