aboutsummaryrefslogtreecommitdiff
path: root/src/lib/krb5/krb/gc_frm_kdc.c
diff options
context:
space:
mode:
authorJohn Kohl <jtkohl@mit.edu>1991-03-22 10:13:18 +0000
committerJohn Kohl <jtkohl@mit.edu>1991-03-22 10:13:18 +0000
commit87cae66ad32889cedfdd8ff4e6c56126b6c5b1dc (patch)
tree4204269adbebab193d567b1201c5034e36a04013 /src/lib/krb5/krb/gc_frm_kdc.c
parentd03574e581d35a23b8a34d054c445a70699d705d (diff)
downloadkrb5-87cae66ad32889cedfdd8ff4e6c56126b6c5b1dc.zip
krb5-87cae66ad32889cedfdd8ff4e6c56126b6c5b1dc.tar.gz
krb5-87cae66ad32889cedfdd8ff4e6c56126b6c5b1dc.tar.bz2
don't free/clean up a ticket we're returning
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@1946 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/krb5/krb/gc_frm_kdc.c')
-rw-r--r--src/lib/krb5/krb/gc_frm_kdc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/krb5/krb/gc_frm_kdc.c b/src/lib/krb5/krb/gc_frm_kdc.c
index 321922e..f98f1aa 100644
--- a/src/lib/krb5/krb/gc_frm_kdc.c
+++ b/src/lib/krb5/krb/gc_frm_kdc.c
@@ -63,6 +63,7 @@ krb5_get_cred_from_kdc (ccache, cred, tgts)
krb5_principal final_server;
krb5_error_code retval;
int nservers;
+ int returning_tgt = 0;
krb5_enctype etype;
/* in case we never get a TGT, zero the return */
@@ -202,6 +203,7 @@ krb5_get_cred_from_kdc (ccache, cred, tgts)
goto out;
}
tgt = *ret_tgts[nservers];
+ returning_tgt = 1; /* don't free it below... */
tgtq.client = 0;
tgtq.server = 0;
krb5_free_cred_contents(&tgtq);
@@ -220,7 +222,8 @@ krb5_get_cred_from_kdc (ccache, cred, tgts)
etype,
krb5_kdc_req_sumtype,
cred);
- krb5_free_cred_contents(&tgt);
+ if (!returning_tgt)
+ krb5_free_cred_contents(&tgt);
out:
krb5_free_principal(final_server);
return retval;