From 658db1c2c25681111d7efbd60e79aae88c9e319f Mon Sep 17 00:00:00 2001 From: Nicolas Williams Date: Sat, 27 May 2023 16:30:15 -0500 Subject: [PATCH] kinit: Translate context init error codes (fix #1126) --- kuser/kinit.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/kuser/kinit.c b/kuser/kinit.c index a374817a0..7f754c09f 100644 --- a/kuser/kinit.c +++ b/kuser/kinit.c @@ -1640,9 +1640,13 @@ main(int argc, char **argv) ret = krb5_init_context(&context); if (ret == KRB5_CONFIG_BADFORMAT) - errx(1, "krb5_init_context failed to parse configuration file"); + krb5_err(context, 1, ret, "Failed to parse configuration file"); + else if (ret == EISDIR) + /* We use EISDIR to mean "not a regular file" */ + krb5_errx(context, 1, + "Failed to read configuration file: not a regular file"); else if (ret) - errx(1, "krb5_init_context failed: %d", ret); + krb5_err(context, 1, ret, "Failed to read configuration file"); if (getarg(args, sizeof(args) / sizeof(args[0]), argc, argv, &optidx)) usage(1);