]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
Fix possible null deref in previous
authorTom Yu <tlyu@mit.edu>
Wed, 1 Jan 2014 00:41:12 +0000 (19:41 -0500)
committerTom Yu <tlyu@mit.edu>
Wed, 1 Jan 2014 01:27:00 +0000 (20:27 -0500)
My rework of the do_tgs_req.c patch introduced a null deref if
decode_krb5_tgs_req() failed.

ticket: 7802

src/kdc/do_tgs_req.c

index 5cfe0b64b191df14087cd37094c36588014eaefe..6bc4f15c0e4668dd03cff7b26d02785ca6a11521 100644 (file)
@@ -145,11 +145,12 @@ process_tgs_req(struct server_handle *handle, krb5_data *pkt,
     session_key.contents = NULL;
 
     retval = decode_krb5_tgs_req(pkt, &request);
-    /* Save pointer to client-requested service principal, in case of errors
-     * before a successful call to search_sprinc(). */
-    sprinc = request->server;
     if (retval)
         return retval;
+    /* Save pointer to client-requested service principal, in case of
+     * errors before a successful call to search_sprinc(). */
+    sprinc = request->server;
+
     if (request->msg_type != KRB5_TGS_REQ) {
         krb5_free_kdc_req(handle->kdc_err_context, request);
         return KRB5_BADMSGTYPE;