diff options
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/krb5/ccache/ChangeLog | 4 | ||||
| -rw-r--r-- | src/lib/krb5/ccache/cc_file.c | 10 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/lib/krb5/ccache/ChangeLog b/src/lib/krb5/ccache/ChangeLog index 631313b29..282ba0dca 100644 --- a/src/lib/krb5/ccache/ChangeLog +++ b/src/lib/krb5/ccache/ChangeLog @@ -1,3 +1,7 @@ +2004-03-25 Sam Hartman <hartmans@mit.edu> + + * cc_file.c (krb5_fcc_generate_new): Use mkstemp not mktemp when possible + 2004-03-18 Jeffrey Altman <jaltman@mit.edu> * cc_mslsa.c: diff --git a/src/lib/krb5/ccache/cc_file.c b/src/lib/krb5/ccache/cc_file.c index 4fe6221b8..365e1a6fb 100644 --- a/src/lib/krb5/ccache/cc_file.c +++ b/src/lib/krb5/ccache/cc_file.c @@ -1991,9 +1991,8 @@ static krb5_error_code KRB5_CALLCONV krb5_fcc_generate_new (krb5_context context, krb5_ccache *id) { krb5_ccache lid; -#ifndef USE_STDIO int ret; -#else +#ifdef USE_STDIO FILE *f; #endif krb5_error_code retcode = 0; @@ -2009,7 +2008,14 @@ krb5_fcc_generate_new (krb5_context context, krb5_ccache *id) (void) strcpy(scratch, TKT_ROOT); (void) strcat(scratch, "XXXXXX"); +#ifdef HAVE_MKSTEMP + ret = mkstemp(scratch); + if (ret == -1) { + return krb5_fcc_interpret(context, errno); + } else close(ret); +#else /*HAVE_MKSTEMP*/ mktemp(scratch); +#endif lid->data = (krb5_pointer) malloc(sizeof(krb5_fcc_data)); if (lid->data == NULL) { |
