mirror of
https://github.com/python/cpython.git
synced 2025-08-03 08:34:29 +00:00
[3.9] bpo-43799: OpenSSL 3.0.0: declare OPENSSL_API_COMPAT 1.1.1 (GH-25329) (GH-25382)
Signed-off-by: Christian Heimes <christian@python.org>
(cherry picked from commit a4833883c9
)
Co-authored-by: Christian Heimes <christian@python.org>
Automerge-Triggered-By: GH:tiran
This commit is contained in:
parent
6379924ecd
commit
7d9d5bf863
3 changed files with 26 additions and 24 deletions
|
@ -14,6 +14,13 @@
|
|||
http://bugs.python.org/issue8108#msg102867 ?
|
||||
*/
|
||||
|
||||
/* Don't warn about deprecated functions, */
|
||||
#ifndef OPENSSL_API_COMPAT
|
||||
// 0x10101000L == 1.1.1, 30000 == 3.0.0
|
||||
#define OPENSSL_API_COMPAT 0x10101000L
|
||||
#endif
|
||||
#define OPENSSL_NO_DEPRECATED 1
|
||||
|
||||
#define PY_SSIZE_T_CLEAN
|
||||
|
||||
#include "Python.h"
|
||||
|
@ -43,14 +50,6 @@ static PySocketModule_APIObject PySocketModule;
|
|||
#include <sys/poll.h>
|
||||
#endif
|
||||
|
||||
/* Don't warn about deprecated functions */
|
||||
#ifdef __GNUC__
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
#endif
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
||||
#endif
|
||||
|
||||
/* Include OpenSSL header files */
|
||||
#include "openssl/rsa.h"
|
||||
#include "openssl/crypto.h"
|
||||
|
@ -148,24 +147,20 @@ static void _PySSLFixErrno(void) {
|
|||
# define PY_OPENSSL_1_1_API 1
|
||||
#endif
|
||||
|
||||
/* OpenSSL API compat */
|
||||
#ifdef OPENSSL_API_COMPAT
|
||||
#if OPENSSL_API_COMPAT >= 0x10100000L
|
||||
|
||||
/* OpenSSL API 1.1.0+ does not include version methods */
|
||||
/* OpenSSL API 1.1.0+ does not include version methods. Define the methods
|
||||
* unless OpenSSL is compiled without the methods. It's the easiest way to
|
||||
* make 1.0.2, 1.1.0, 1.1.1, and 3.0.0 happy without deprecation warnings.
|
||||
*/
|
||||
#ifndef OPENSSL_NO_TLS1_METHOD
|
||||
#define OPENSSL_NO_TLS1_METHOD 1
|
||||
extern const SSL_METHOD *TLSv1_method(void);
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_TLS1_1_METHOD
|
||||
#define OPENSSL_NO_TLS1_1_METHOD 1
|
||||
extern const SSL_METHOD *TLSv1_1_method(void);
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_TLS1_2_METHOD
|
||||
#define OPENSSL_NO_TLS1_2_METHOD 1
|
||||
extern const SSL_METHOD *TLSv1_2_method(void);
|
||||
#endif
|
||||
|
||||
#endif /* >= 1.1.0 compcat */
|
||||
#endif /* OPENSSL_API_COMPAT */
|
||||
|
||||
/* LibreSSL 2.7.0 provides necessary OpenSSL 1.1.0 APIs */
|
||||
#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x2070000fL
|
||||
# define PY_OPENSSL_1_1_API 1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue