From 578e7425fa177416ba0e01270092b08fae8e4a9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Mon, 15 Jan 2007 23:21:32 +0000 Subject: [PATCH] Use argument as principal if passed an argument. Bug report from Douglas E. Engert git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@19920 ec53bebd-3082-4978-b11e-865c3cabbd6b --- kuser/kverify.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/kuser/kverify.c b/kuser/kverify.c index 11d6b8398..49172a1cd 100644 --- a/kuser/kverify.c +++ b/kuser/kverify.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997 - 2004 Kungliga Tekniska Högskolan + * Copyright (c) 1997 - 2005, 2007 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * @@ -62,6 +62,7 @@ main(int argc, char **argv) krb5_preauthtype pre_auth_types[] = {KRB5_PADATA_ENC_TIMESTAMP}; krb5_get_init_creds_opt *get_options; krb5_verify_init_creds_opt verify_options; + krb5_principal principal = NULL; int optidx = 0; setprogname (argv[0]); @@ -76,6 +77,9 @@ main(int argc, char **argv) print_version(NULL); exit(0); } + + argc -= optidx; + argv += optidx; ret = krb5_init_context(&context); if (ret) @@ -91,9 +95,15 @@ main(int argc, char **argv) krb5_verify_init_creds_opt_init (&verify_options); + if (argc) { + ret = krb5_parse_name(context, argv[0], &principal); + if (ret) + krb5_err(context, 1, ret, "krb5_parse_name: %s", argv[0]); + } + ret = krb5_get_init_creds_password (context, &cred, - NULL, + principal, NULL, krb5_prompter_posix, NULL,