]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
Extend `mask` of `ssl_method_st` to 64-bit
authorerbsland-dev <github@erbsland.dev>
Thu, 20 Jun 2024 18:44:00 +0000 (20:44 +0200)
committerNeil Horman <nhorman@openssl.org>
Sun, 23 Jun 2024 14:09:07 +0000 (10:09 -0400)
Fixes #23260: The bit count for `SSL_OP_*` flags has exceeded 32 bits, making it impossible to handle newer flags and protocol extensions with the existing 32-bit variables. This commit extends the `mask` field in the `ssl_method_st` structure to 64-bit, aligning them with the previously extended 64-bit `options` field.

Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24692)

ssl/ssl_local.h

index 0d979ae7237a8856a33bfafca3e865d06eb3861e..daab329133cb8bcce3eff714691705e3b8e561f9 100644 (file)
@@ -419,7 +419,7 @@ struct ssl_cipher_st {
 struct ssl_method_st {
     int version;
     unsigned flags;
-    unsigned long mask;
+    uint64_t mask;
     SSL *(*ssl_new) (SSL_CTX *ctx);
     void (*ssl_free) (SSL *s);
     int (*ssl_reset) (SSL *s);