diff --git a/lib/krb5/get_cred.c b/lib/krb5/get_cred.c index 76b86c122..a8ba7badf 100644 --- a/lib/krb5/get_cred.c +++ b/lib/krb5/get_cred.c @@ -265,9 +265,10 @@ init_tgs_req (krb5_context context, krb5_auth_con_free(context, ac); } fail: - if (ret) - /* XXX - don't free addresses? */ + if (ret) { + t->req_body.addresses = NULL; free_TGS_REQ (t); + } return ret; } @@ -563,6 +564,8 @@ find_cred(krb5_context context, { krb5_error_code ret; krb5_creds mcreds; + + krb5_cc_clear_mcred(&mcreds); mcreds.server = server; ret = krb5_cc_retrieve_cred(context, id, KRB5_TC_DONT_MATCH_REALM, &mcreds, out_creds);