aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2013-11-05 15:30:44 -0800
committerAlex Gaynor <alex.gaynor@gmail.com>2013-11-05 15:30:57 -0800
commit9d1c2ea124dd258df616279f860e74821871033a (patch)
treee1bbc312f9305053e29da629b5f4d853c7354e65
parent1e636c3052a452792ec01349b99c7591ea29e9ed (diff)
downloadcryptography-9d1c2ea124dd258df616279f860e74821871033a.tar.gz
cryptography-9d1c2ea124dd258df616279f860e74821871033a.tar.bz2
cryptography-9d1c2ea124dd258df616279f860e74821871033a.zip
Initial stab at fixing the first broken function
-rw-r--r--cryptography/hazmat/bindings/openssl/asn1.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/backend.py4
-rw-r--r--cryptography/hazmat/bindings/openssl/bignum.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/bio.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/conf.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/crypto.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/dh.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/dsa.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/engine.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/err.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/evp.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/hmac.py15
-rw-r--r--cryptography/hazmat/bindings/openssl/nid.py9
-rw-r--r--cryptography/hazmat/bindings/openssl/opensslv.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/pem.py6
-rw-r--r--cryptography/hazmat/bindings/openssl/pkcs12.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/pkcs7.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/rand.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/rsa.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/ssl.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/x509.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/x509name.py3
-rw-r--r--cryptography/hazmat/bindings/openssl/x509v3.py3
23 files changed, 86 insertions, 5 deletions
diff --git a/cryptography/hazmat/bindings/openssl/asn1.py b/cryptography/hazmat/bindings/openssl/asn1.py
index 5bd72e9a..719a523c 100644
--- a/cryptography/hazmat/bindings/openssl/asn1.py
+++ b/cryptography/hazmat/bindings/openssl/asn1.py
@@ -119,3 +119,6 @@ long ASN1_INTEGER_get(ASN1_INTEGER *);
BIGNUM *ASN1_INTEGER_to_BN(ASN1_INTEGER *, BIGNUM *);
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/backend.py b/cryptography/hazmat/bindings/openssl/backend.py
index ea1073b9..0f3268ac 100644
--- a/cryptography/hazmat/bindings/openssl/backend.py
+++ b/cryptography/hazmat/bindings/openssl/backend.py
@@ -74,6 +74,7 @@ class Backend(object):
includes = []
functions = []
macros = []
+ customizations = []
for name in cls._modules:
module_name = "cryptography.hazmat.bindings.openssl." + name
__import__(module_name)
@@ -84,6 +85,7 @@ class Backend(object):
macros.append(module.MACROS)
functions.append(module.FUNCTIONS)
includes.append(module.INCLUDES)
+ customizations.append(module.CUSTOMIZATIONS)
# loop over the functions & macros after declaring all the types
# so we can set interdependent types in different files and still
@@ -102,7 +104,7 @@ class Backend(object):
# int foo(int);
# int foo(short);
lib = ffi.verify(
- source="\n".join(includes + functions),
+ source="\n".join(includes + functions + customizations),
libraries=["crypto", "ssl"],
)
diff --git a/cryptography/hazmat/bindings/openssl/bignum.py b/cryptography/hazmat/bindings/openssl/bignum.py
index 72d467c3..fcfadff1 100644
--- a/cryptography/hazmat/bindings/openssl/bignum.py
+++ b/cryptography/hazmat/bindings/openssl/bignum.py
@@ -32,3 +32,6 @@ int BN_hex2bn(BIGNUM **, const char *);
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/bio.py b/cryptography/hazmat/bindings/openssl/bio.py
index 88be788f..c23dd0d8 100644
--- a/cryptography/hazmat/bindings/openssl/bio.py
+++ b/cryptography/hazmat/bindings/openssl/bio.py
@@ -168,3 +168,6 @@ long BIO_set_buffer_read_data(BIO *, void *, long);
#define BIO_TYPE_BASE64 ...
#define BIO_TYPE_FILTER ...
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/conf.py b/cryptography/hazmat/bindings/openssl/conf.py
index 85c7a210..4846252c 100644
--- a/cryptography/hazmat/bindings/openssl/conf.py
+++ b/cryptography/hazmat/bindings/openssl/conf.py
@@ -24,3 +24,6 @@ FUNCTIONS = """
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/crypto.py b/cryptography/hazmat/bindings/openssl/crypto.py
index 501fb5a1..773d9b14 100644
--- a/cryptography/hazmat/bindings/openssl/crypto.py
+++ b/cryptography/hazmat/bindings/openssl/crypto.py
@@ -35,3 +35,6 @@ void CRYPTO_malloc_debug_init();
#define CRYPTO_MEM_CHECK_ENABLE ...
#define CRYPTO_MEM_CHECK_DISABLE ...
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/dh.py b/cryptography/hazmat/bindings/openssl/dh.py
index ac130054..b8fbf368 100644
--- a/cryptography/hazmat/bindings/openssl/dh.py
+++ b/cryptography/hazmat/bindings/openssl/dh.py
@@ -26,3 +26,6 @@ void DH_free(DH *);
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/dsa.py b/cryptography/hazmat/bindings/openssl/dsa.py
index 2fa67b87..e6c369a6 100644
--- a/cryptography/hazmat/bindings/openssl/dsa.py
+++ b/cryptography/hazmat/bindings/openssl/dsa.py
@@ -28,3 +28,6 @@ void DSA_free(DSA *);
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/engine.py b/cryptography/hazmat/bindings/openssl/engine.py
index b3ec3125..b76befce 100644
--- a/cryptography/hazmat/bindings/openssl/engine.py
+++ b/cryptography/hazmat/bindings/openssl/engine.py
@@ -50,3 +50,6 @@ MACROS = """
#define ENGINE_METHOD_ALL ...
#define ENGINE_METHOD_NONE ...
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/err.py b/cryptography/hazmat/bindings/openssl/err.py
index 39ae315c..6a36dee0 100644
--- a/cryptography/hazmat/bindings/openssl/err.py
+++ b/cryptography/hazmat/bindings/openssl/err.py
@@ -57,3 +57,6 @@ int ERR_GET_FUNC(unsigned long);
int ERR_GET_REASON(unsigned long);
int ERR_FATAL_ERROR(unsigned long);
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/evp.py b/cryptography/hazmat/bindings/openssl/evp.py
index 4d0fb7fc..1a912496 100644
--- a/cryptography/hazmat/bindings/openssl/evp.py
+++ b/cryptography/hazmat/bindings/openssl/evp.py
@@ -95,3 +95,6 @@ int EVP_PKEY_assign_DSA(EVP_PKEY *, DSA *);
int EVP_CIPHER_CTX_block_size(const EVP_CIPHER_CTX *);
int EVP_CIPHER_CTX_ctrl(EVP_CIPHER_CTX *, int, int, void *);
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/hmac.py b/cryptography/hazmat/bindings/openssl/hmac.py
index e97ac35e..3aeb1733 100644
--- a/cryptography/hazmat/bindings/openssl/hmac.py
+++ b/cryptography/hazmat/bindings/openssl/hmac.py
@@ -22,7 +22,8 @@ typedef struct { ...; } HMAC_CTX;
FUNCTIONS = """
void HMAC_CTX_init(HMAC_CTX *);
void HMAC_CTX_cleanup(HMAC_CTX *);
-int HMAC_Init_ex(HMAC_CTX *, const void *, int, const EVP_MD *, ENGINE *);
+
+int Cryptography_HMAC_Init_ex(HMAC_CTX *, const void *, int, const EVP_MD *, ENGINE *);
int HMAC_Update(HMAC_CTX *, const unsigned char *, size_t);
int HMAC_Final(HMAC_CTX *, unsigned char *, unsigned int *);
int HMAC_CTX_copy(HMAC_CTX *, HMAC_CTX *);
@@ -30,3 +31,15 @@ int HMAC_CTX_copy(HMAC_CTX *, HMAC_CTX *);
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+int Cryptography_HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int key_len,
+ const EVP_MD *md, ENGINE *impl) {
+#if OPENSSL_VERSION_NUMBER >= 0x010000000
+ return HMAC_Init_ex(ctx, key, key_len, md, impl);
+#else
+ HMAC_Init_ex(ctx, key, key_len, md, impl);
+ return 1;
+#endif
+}
+"""
diff --git a/cryptography/hazmat/bindings/openssl/nid.py b/cryptography/hazmat/bindings/openssl/nid.py
index 0f5b0003..9816dde4 100644
--- a/cryptography/hazmat/bindings/openssl/nid.py
+++ b/cryptography/hazmat/bindings/openssl/nid.py
@@ -39,6 +39,11 @@ static const int NID_crl_reason;
static const int NID_pbe_WithSHA1And3_Key_TripleDES_CBC;
"""
-FUNCTIONS = ""
+FUNCTIONS = """
+"""
+
+MACROS = """
+"""
-MACROS = ""
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/opensslv.py b/cryptography/hazmat/bindings/openssl/opensslv.py
index d1a1b3e6..d463776c 100644
--- a/cryptography/hazmat/bindings/openssl/opensslv.py
+++ b/cryptography/hazmat/bindings/openssl/opensslv.py
@@ -24,3 +24,6 @@ FUNCTIONS = """
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/pem.py b/cryptography/hazmat/bindings/openssl/pem.py
index 8c8f736d..00f0dc36 100644
--- a/cryptography/hazmat/bindings/openssl/pem.py
+++ b/cryptography/hazmat/bindings/openssl/pem.py
@@ -41,4 +41,8 @@ PKCS7 *PEM_read_bio_PKCS7(BIO *, PKCS7 **, pem_password_cb *, void *);
DH *PEM_read_bio_DHparams(BIO *, DH **, pem_password_cb *, void *);
"""
-MACROS = ""
+MACROS = """
+"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/pkcs12.py b/cryptography/hazmat/bindings/openssl/pkcs12.py
index 5c002b93..d91d100f 100644
--- a/cryptography/hazmat/bindings/openssl/pkcs12.py
+++ b/cryptography/hazmat/bindings/openssl/pkcs12.py
@@ -32,3 +32,6 @@ int PKCS12_parse(PKCS12 *, const char *, EVP_PKEY **, X509 **,
PKCS12 *PKCS12_create(char *, char *, EVP_PKEY *, X509 *,
struct stack_st_X509 *, int, int, int, int, int);
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/pkcs7.py b/cryptography/hazmat/bindings/openssl/pkcs7.py
index 752bfa00..60ea3c52 100644
--- a/cryptography/hazmat/bindings/openssl/pkcs7.py
+++ b/cryptography/hazmat/bindings/openssl/pkcs7.py
@@ -32,3 +32,6 @@ int PKCS7_type_is_enveloped(PKCS7 *);
int PKCS7_type_is_signedAndEnveloped(PKCS7 *);
int PKCS7_type_is_data(PKCS7 *);
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/rand.py b/cryptography/hazmat/bindings/openssl/rand.py
index e4f6be23..848ee05a 100644
--- a/cryptography/hazmat/bindings/openssl/rand.py
+++ b/cryptography/hazmat/bindings/openssl/rand.py
@@ -35,3 +35,6 @@ int RAND_pseudo_bytes(unsigned char *, int);
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/rsa.py b/cryptography/hazmat/bindings/openssl/rsa.py
index c8bf1cc0..21ed5d67 100644
--- a/cryptography/hazmat/bindings/openssl/rsa.py
+++ b/cryptography/hazmat/bindings/openssl/rsa.py
@@ -29,3 +29,6 @@ int RSA_check_key(const RSA *);
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/ssl.py b/cryptography/hazmat/bindings/openssl/ssl.py
index 8aca86e4..58a64f0b 100644
--- a/cryptography/hazmat/bindings/openssl/ssl.py
+++ b/cryptography/hazmat/bindings/openssl/ssl.py
@@ -24,3 +24,6 @@ void SSL_load_error_strings();
MACROS = """
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/x509.py b/cryptography/hazmat/bindings/openssl/x509.py
index 9a51a6d0..b2ee672e 100644
--- a/cryptography/hazmat/bindings/openssl/x509.py
+++ b/cryptography/hazmat/bindings/openssl/x509.py
@@ -185,3 +185,6 @@ X509_REVOKED *sk_X509_REVOKED_value(struct x509_revoked_st *, int);
int X509_CRL_set_lastUpdate(X509_CRL *, const ASN1_TIME *);
int X509_CRL_set_nextUpdate(X509_CRL *, const ASN1_TIME *);
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/x509name.py b/cryptography/hazmat/bindings/openssl/x509name.py
index bd7abe2d..896f0ae4 100644
--- a/cryptography/hazmat/bindings/openssl/x509name.py
+++ b/cryptography/hazmat/bindings/openssl/x509name.py
@@ -46,3 +46,6 @@ int sk_X509_NAME_push(struct stack_st_X509_NAME *, X509_NAME *);
X509_NAME *sk_X509_NAME_value(struct stack_st_X509_NAME *, int);
void sk_X509_NAME_free(struct stack_st_X509_NAME *);
"""
+
+CUSTOMIZATIONS = """
+"""
diff --git a/cryptography/hazmat/bindings/openssl/x509v3.py b/cryptography/hazmat/bindings/openssl/x509v3.py
index 413bde5f..bc26236c 100644
--- a/cryptography/hazmat/bindings/openssl/x509v3.py
+++ b/cryptography/hazmat/bindings/openssl/x509v3.py
@@ -92,3 +92,6 @@ GENERAL_NAME *sk_GENERAL_NAME_value(struct stack_st_GENERAL_NAME *, int);
const X509V3_EXT_METHOD *X509V3_EXT_get(X509_EXTENSION *);
const X509V3_EXT_METHOD *X509V3_EXT_get_nid(int);
"""
+
+CUSTOMIZATIONS = """
+"""