doc: It is not possible to use SSL_OP_* value in preprocessor conditions
authorTomas Mraz <tomas@openssl.org>
Thu, 15 Jul 2021 11:37:26 +0000 (13:37 +0200)
committerTomas Mraz <tomas@openssl.org>
Fri, 16 Jul 2021 12:37:18 +0000 (14:37 +0200)
Fixes #16082

Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/16084)

doc/man3/SSL_CTX_set_options.pod
doc/man7/migration_guide.pod

index 7b179099e12d21333d610110a2f7ac8424f1a9d5..df47e4dd0361c28b2d6cc41be836e4651665e94a 100644 (file)
@@ -427,6 +427,12 @@ were added in OpenSSL 1.1.1.
 The B<SSL_OP_NO_EXTENDED_MASTER_SECRET> and B<SSL_OP_IGNORE_UNEXPECTED_EOF>
 options were added in OpenSSL 3.0.
 
+The B<SSL_OP_> constants and the corresponding parameter and return values
+of the affected functions were changed to C<uint64_t> type in OpenSSL 3.0.
+For that reason it is no longer possible use the B<SSL_OP_> macro values
+in preprocessor C<#if> conditions. However it is still possible to test
+whether these macros are defined or not.
+
 =head1 COPYRIGHT
 
 Copyright 2001-2021 The OpenSSL Project Authors. All Rights Reserved.
index aac158795cba199c4ba8571bf615ac7409ef4402..8cc9bd5fc866cd9cc8da78931195e6b2e0da1a45 100644 (file)
@@ -2235,7 +2235,9 @@ SSL and SSL_CTX options are now 64 bit instead of 32 bit.
 The signatures of the functions to get and set options on SSL and
 SSL_CTX objects changed from "unsigned long" to "uint64_t" type.
 
-This may require source code changes.
+This may require source code changes. For example it is no longer possible
+to use the B<SSL_OP_> macro values in preprocessor C<#if> conditions.
+However it is still possible to test whether these macros are defined or not.
 
 See L<SSL_CTX_get_options(3)>, L<SSL_CTX_set_options(3)>,
 L<SSL_get_options(3)> and L<SSL_set_options(3)>.