diff options
-rw-r--r-- | cryptography/hazmat/bindings/openssl/ec.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/cryptography/hazmat/bindings/openssl/ec.py b/cryptography/hazmat/bindings/openssl/ec.py index c054a3b4..22de56d2 100644 --- a/cryptography/hazmat/bindings/openssl/ec.py +++ b/cryptography/hazmat/bindings/openssl/ec.py @@ -23,6 +23,7 @@ TYPES = """ static const int Cryptography_HAS_EC; typedef ... EC_KEY; +typedef ... EC_builtin_curve; static const int NID_X9_62_c2pnb163v1; static const int NID_X9_62_c2pnb163v2; @@ -175,16 +176,27 @@ FUNCTIONS = """ MACROS = """ EC_KEY *EC_KEY_new_by_curve_name(int); void EC_KEY_free(EC_KEY *); + +size_t EC_get_builtin_curves(EC_builtin_curve *, size_t); + +int Cryptography_EC_builtin_curve_get_nid(EC_builtin_curve *); """ CUSTOMIZATIONS = """ #ifdef OPENSSL_NO_EC static const long Cryptography_HAS_EC = 0; typedef void EC_KEY; +typedef void EC_builtin_curve; EC_KEY* (*EC_KEY_new_by_curve_name)(int) = NULL; void (*EC_KEY_free)(EC_KEY *) = NULL; +size_t (*EC_get_builtin_curves)(EC_builtin_curve *, size_t) = NULL; +int (*Cryptography_EC_builtin_curve_get_nid)(EC_builtin_curve *) = NULL; #else static const long Cryptography_HAS_EC = 1; + +int Cryptography_EC_builtin_curve_get_nid(EC_builtin_curve *c) { + return c->nid; +} #endif """ @@ -192,5 +204,8 @@ CONDITIONAL_NAMES = { "Cryptography_HAS_EC": [ "EC_KEY_new_by_curve_name", "EC_KEY_free", + "EC_get_builtin_curves", + + "Cryptography_EC_builtin_curve_get_nid", ], } |