]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
Correct return values for tls_construct_stoc_next_proto_neg
authorMatt Caswell <matt@openssl.org>
Fri, 21 Jun 2024 09:41:55 +0000 (10:41 +0100)
committerMatt Caswell <matt@openssl.org>
Thu, 27 Jun 2024 09:32:15 +0000 (10:32 +0100)
Return EXT_RETURN_NOT_SENT in the event that we don't send the extension,
rather than EXT_RETURN_SENT. This actually makes no difference at all to
the current control flow since this return value is ignored in this case
anyway. But lets make it correct anyway.

Follow on from CVE-2024-5535

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24716)

(cherry picked from commit e10a3a84bf73a3e6024c338b51f2fb4e78a3dee9)

ssl/statem/extensions_srvr.c

index afa33ce3f5508014f92c987a8532bf6cf7b13a42..15f16dc9925936eae4dec9dd1887477226b463eb 100644 (file)
@@ -1516,9 +1516,10 @@ EXT_RETURN tls_construct_stoc_next_proto_neg(SSL_CONNECTION *s, WPACKET *pkt,
             return EXT_RETURN_FAIL;
         }
         s->s3.npn_seen = 1;
+        return EXT_RETURN_SENT;
     }
 
-    return EXT_RETURN_SENT;
+    return EXT_RETURN_NOT_SENT;
 }
 #endif