From 8c66f74a94d96b5eae23413118ee0ab05d1a52bc Mon Sep 17 00:00:00 2001 From: Paul Kehrer Date: Thu, 7 Jan 2016 14:40:25 -0800 Subject: opaque EVP_PKEY since EVP_PKEY_id exists --- src/_cffi_src/openssl/evp.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'src/_cffi_src') diff --git a/src/_cffi_src/openssl/evp.py b/src/_cffi_src/openssl/evp.py index 6d17cb7c..3bd675f7 100644 --- a/src/_cffi_src/openssl/evp.py +++ b/src/_cffi_src/openssl/evp.py @@ -21,10 +21,7 @@ typedef struct env_md_ctx_st { ...; } EVP_MD_CTX; -typedef struct evp_pkey_st { - int type; - ...; -} EVP_PKEY; +typedef ... EVP_PKEY; typedef ... EVP_PKEY_CTX; static const int EVP_PKEY_RSA; static const int EVP_PKEY_DSA; -- cgit v1.2.3 From ff90806ea1c62212f77a4d040fe491d05fdf3462 Mon Sep 17 00:00:00 2001 From: Paul Kehrer Date: Thu, 7 Jan 2016 16:06:22 -0800 Subject: add Cryptography_EVP_PKEY_id --- src/_cffi_src/openssl/evp.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/_cffi_src') diff --git a/src/_cffi_src/openssl/evp.py b/src/_cffi_src/openssl/evp.py index 3bd675f7..5d631a69 100644 --- a/src/_cffi_src/openssl/evp.py +++ b/src/_cffi_src/openssl/evp.py @@ -119,6 +119,8 @@ int EVP_PKEY_add1_attr_by_txt(EVP_PKEY *, const char *, int, int EVP_PKEY_cmp(const EVP_PKEY *, const EVP_PKEY *); EVP_PKEY *EVP_PKCS82PKEY(PKCS8_PRIV_KEY_INFO *); + +int Cryptography_EVP_PKEY_id(const EVP_PKEY *); """ MACROS = """ @@ -227,4 +229,8 @@ int (*EVP_PKEY_assign_EC_KEY)(EVP_PKEY *, EC_KEY *) = NULL; EC_KEY *(*EVP_PKEY_get1_EC_KEY)(EVP_PKEY *) = NULL; int (*EVP_PKEY_set1_EC_KEY)(EVP_PKEY *, EC_KEY *) = NULL; #endif +/* EVP_PKEY_id is not available on RHEL5 0.9.8e so we'll define our own */ +int Cryptography_EVP_PKEY_id(const EVP_PKEY *key) { + return key->type; +} """ -- cgit v1.2.3 From 3a2ae678710e7f61c7fe374e1ebc76e0b4705ecb Mon Sep 17 00:00:00 2001 From: Paul Kehrer Date: Thu, 7 Jan 2016 17:11:29 -0800 Subject: use EVP_PKEY_id where we can --- src/_cffi_src/openssl/evp.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/_cffi_src') diff --git a/src/_cffi_src/openssl/evp.py b/src/_cffi_src/openssl/evp.py index 5d631a69..1d37b814 100644 --- a/src/_cffi_src/openssl/evp.py +++ b/src/_cffi_src/openssl/evp.py @@ -229,8 +229,13 @@ int (*EVP_PKEY_assign_EC_KEY)(EVP_PKEY *, EC_KEY *) = NULL; EC_KEY *(*EVP_PKEY_get1_EC_KEY)(EVP_PKEY *) = NULL; int (*EVP_PKEY_set1_EC_KEY)(EVP_PKEY *, EC_KEY *) = NULL; #endif -/* EVP_PKEY_id is not available on RHEL5 0.9.8e so we'll define our own */ +/* EVP_PKEY_id is not available on 0.9.8 so we'll define our own. This can + be removed when we remove 0.9.8 support. */ int Cryptography_EVP_PKEY_id(const EVP_PKEY *key) { - return key->type; + #if OPENSSL_VERSION_NUMBER >= 0x10000000L + return EVP_PKEY_id(key); + #else + return key->type; + #endif } """ -- cgit v1.2.3