[krbdev.mit.edu #5442] memory leak in gss_accept_sec_context()

Public Submitter via RT rt-comment at krbdev.mit.edu
Wed Feb 14 19:58:33 EST 2007


I think that the patch is more descriptive than I'll be on this one:

dowdeslx $ cvs diff -D2007/01/01 | more
cvs diff: Diffing .
Index: accept_sec_context.c
===================================================================
RCS file:
/ms/dev/kerberos/mitkrb5/cvs-dirs/mitkrb5-1.4/mitkrb5/src/lib/gssapi/k
rb5/accept_sec_context.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- accept_sec_context.c        28 Mar 2005 21:43:26 -0000      1.1
+++ accept_sec_context.c        1 Feb 2007 01:20:17 -0000       1.2
@@ -898,6 +898,10 @@
    if (ap_rep.data)
        krb5_free_data_contents(context, &ap_rep);
 
+   if (!verifier_cred_handle && cred_handle) {
+          krb5_gss_release_cred(minor_status, &cred_handle);
+   }
+
    if (!GSS_ERROR(major_status) && major_status != GSS_S_CONTINUE_NEEDED) {
        ctx->k5_context = context;
        return(major_status);
@@ -986,9 +990,6 @@
        krb5_free_data_contents(context, &scratch);
 
        *output_token = token;
-   }
-   if (!verifier_cred_handle && cred_handle) {
-          krb5_gss_release_cred(minor_status, cred_handle);
    }
    krb5_free_context(context);
    return (major_status);




More information about the krb5-bugs mailing list