From: Ben Kaduk Date: Thu, 27 Sep 2012 16:46:26 +0000 (-0400) Subject: Make kinit smarter about using keytabs X-Git-Tag: krb5-1.12-alpha1~474 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cfd85f4130e015bf823a745438e87641f9ead49e;p=thirdparty%2Fkrb5.git Make kinit smarter about using keytabs Previously, we would happily accept -i or -t name and do nothing with it, if -k was not given. If the user is passing -i or -t, they clearly want to use a keytab, so do so (but print a warning). While here, enforce that only one of -t and -i is given. ticket: 7218 tags: pullup target_version: 1.11 --- diff --git a/src/clients/kinit/kinit.c b/src/clients/kinit/kinit.c index ac204c1d07..71a2fec586 100644 --- a/src/clients/kinit/kinit.c +++ b/src/clients/kinit/kinit.c @@ -434,6 +434,17 @@ parse_options(argc, argv, opts) fprintf(stderr, _("Only one of -a and -A allowed\n")); errflg++; } + if (opts->keytab_name != NULL && opts->use_client_keytab == 1) + { + fprintf(stderr, _("Only one of -t and -i allowed\n")); + errflg++; + } + if ((opts->keytab_name != NULL || opts->use_client_keytab == 1) && + opts->action != INIT_KT) + { + opts->action = INIT_KT; + fprintf(stderr, _("keytab specified, forcing -k\n")); + } if (argc - optind > 1) { fprintf(stderr, _("Extra arguments (starting with \"%s\").\n"),