[26685] in CVS-changelog-for-Kerberos-V5

home help back first fref pref prev next nref lref last post

krb5 commit: Simplify and fix pkinit_as_req_create cleanup

daemon@ATHENA.MIT.EDU (Greg Hudson)
Thu Jul 5 05:12:54 2012

Date: Thu, 5 Jul 2012 05:12:47 -0400
From: Greg Hudson <ghudson@mit.edu>
Message-Id: <201207050912.q659Clrw025078@drugstore.mit.edu>
To: cvs-krb5@mit.edu
Reply-To: krbdev@mit.edu
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cvs-krb5-bounces@mit.edu

https://github.com/krb5/krb5/commit/174a452878ef5356f5baa3865a2e219a0dad01a0
commit 174a452878ef5356f5baa3865a2e219a0dad01a0
Author: Greg Hudson <ghudson@mit.edu>
Date:   Thu Jul 5 05:02:38 2012 -0400

    Simplify and fix pkinit_as_req_create cleanup
    
    Avoid dereferencing a null auth_pack pointer if we run out of memory
    initializing info or auth_pack.  Eliminate an unnecessary switch by
    just cleaning up all of the potentially allocated variables.

 src/plugins/preauth/pkinit/pkinit_clnt.c |   16 +++++-----------
 1 files changed, 5 insertions(+), 11 deletions(-)

diff --git a/src/plugins/preauth/pkinit/pkinit_clnt.c b/src/plugins/preauth/pkinit/pkinit_clnt.c
index 4b61ab7..d70da49 100644
--- a/src/plugins/preauth/pkinit/pkinit_clnt.c
+++ b/src/plugins/preauth/pkinit/pkinit_clnt.c
@@ -451,18 +451,12 @@ pkinit_as_req_create(krb5_context context,
 #endif
 
 cleanup:
-    switch((int)reqctx->pa_type) {
-    case KRB5_PADATA_PK_AS_REQ:
+    if (auth_pack != NULL)
         auth_pack->supportedKDFs = NULL; /*alias to global constant*/
-        free_krb5_auth_pack(&auth_pack);
-        free_krb5_pa_pk_as_req(&req);
-        break;
-    case KRB5_PADATA_PK_AS_REQ_OLD:
-        free_krb5_pa_pk_as_req_draft9(&req9);
-        free(auth_pack9);
-        break;
-    }
-
+    free_krb5_auth_pack(&auth_pack);
+    free_krb5_pa_pk_as_req(&req);
+    free_krb5_pa_pk_as_req_draft9(&req9);
+    free(auth_pack9);
 
     pkiDebug("pkinit_as_req_create retval=%d\n", (int) retval);
 
_______________________________________________
cvs-krb5 mailing list
cvs-krb5@mit.edu
https://mailman.mit.edu/mailman/listinfo/cvs-krb5

home help back first fref pref prev next nref lref last post