From 73ae67bc81f6a970a3da4b1f29e76405fd134d0e Mon Sep 17 00:00:00 2001 From: John Kohl Date: Fri, 23 Mar 1990 16:40:06 +0000 Subject: add retval declaration; change 'code' to 'retval' add some cleanup code, some XXX comments, use new style krb5_tgtname (incomplete work) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@403 dc483132-0cff-0310-8789-dd5450dbe970 --- src/lib/krb5/krb/gc_frm_kdc.c | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) (limited to 'src/lib') diff --git a/src/lib/krb5/krb/gc_frm_kdc.c b/src/lib/krb5/krb/gc_frm_kdc.c index 942b671dc..158e3f037 100644 --- a/src/lib/krb5/krb/gc_frm_kdc.c +++ b/src/lib/krb5/krb/gc_frm_kdc.c @@ -50,6 +50,7 @@ krb5_get_cred_from_kdc (ccache, cred, tgts) krb5_creds ***tgts; { krb5_creds tgt, tgtq; + krb5_error_code retval; /* * we know that the desired credentials aren't in the cache yet. @@ -70,20 +71,24 @@ krb5_get_cred_from_kdc (ccache, cred, tgts) * probably not safe... */ tgtq.client = cred->client; - /* XXX who frees this memory? */ - tgtq.server = krb5_tgtname(cred->server, cred->client); + + if (retval = krb5_tgtname(cred->server, cred->client, &tgtq.server)) + return retval; /* go find it.. */ - code = krb5_cc_retrieve_cred (ccache, - KRB5_CF_CLIENT|KRB5_CF_SERVER, - &tgtq, - &tgt); - if (code != 0) { - if (code != KRB5_CC_NOTFOUND) + retval = krb5_cc_retrieve_cred (ccache, + KRB5_CF_CLIENT|KRB5_CF_SERVER, + &tgtq, + &tgt); + krb5_free_principal(tgtq.server); + + if (retval != 0) { + if (retval != KRB5_CC_NOTFOUND) goto out; /* nope; attempt to get tgt */ } /* got tgt! */ - code = krb5_get_cred_via_tgt(&tgt, cred); + retval = krb5_get_cred_via_tgt(&tgt, cred); out: - return code; + /* XXX what about tgts? */ + return retval; } -- cgit