summaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/krb5/ccache/cc_file.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/lib/krb5/ccache/cc_file.c b/src/lib/krb5/ccache/cc_file.c
index 285832331..fc9094b6e 100644
--- a/src/lib/krb5/ccache/cc_file.c
+++ b/src/lib/krb5/ccache/cc_file.c
@@ -1240,8 +1240,19 @@ krb5_fcc_open_file (krb5_context context, krb5_ccache id, int mode)
}
f = THREEPARAMOPEN (data->filename, open_flag | O_BINARY, 0600);
- if (f == NO_FILE)
- return krb5_fcc_interpret (context, errno);
+ if (f == NO_FILE) {
+ switch (errno) {
+ case ENOENT:
+ retval = KRB5_FCC_NOFILE;
+ fprintf(stderr, "stuffing error message in context %p\n", context);
+ krb5_set_error_message(context, retval,
+ "Credentials cache file '%s' not found",
+ data->filename);
+ return retval;
+ default:
+ return krb5_fcc_interpret (context, errno);
+ }
+ }
data->mode = mode;