add retval declaration; change 'code' to 'retval'
authorJohn Kohl <jtkohl@mit.edu>
Fri, 23 Mar 1990 16:40:06 +0000 (16:40 +0000)
committerJohn Kohl <jtkohl@mit.edu>
Fri, 23 Mar 1990 16:40:06 +0000 (16:40 +0000)
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

index 942b671dc5a20ce45883c08ea00d799ea7cf523b..158e3f037f8c93f5b4ddc890417bc8ab7be06386 100644 (file)
@@ -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;
 }