krb5/krb5-1.4.3-enospc.dif

25 lines
916 B
Plaintext

If the error message is going to be ambiguous, try to give the user some clue
by returning the last error reported by the OS.
Index: trunk/src/clients/kinit/kinit.c
===================================================================
--- trunk.orig/src/clients/kinit/kinit.c
+++ trunk/src/clients/kinit/kinit.c
@@ -658,8 +658,14 @@ k5_kinit(opts, k5)
code = krb5_cc_initialize(k5->ctx, k5->cc,
opts->canonicalize ? my_creds.client : k5->me);
if (code) {
- com_err(progname, code, "when initializing cache %s",
- opts->k5_cache_name?opts->k5_cache_name:"");
+ if ((code == KRB5_CC_IO) && (errno != 0)) {
+ com_err(progname, code, "when initializing cache %s: %s",
+ opts->k5_cache_name?opts->k5_cache_name:"",
+ strerror(errno));
+ } else {
+ com_err(progname, code, "when initializing cache %s",
+ opts->k5_cache_name?opts->k5_cache_name:"");
+ }
goto cleanup;
}