aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2015-03-18 23:48:32 -0400
committerAlex Gaynor <alex.gaynor@gmail.com>2015-03-18 23:48:32 -0400
commitab420c93e72b75dfbf0f7891ee606ddc42d96570 (patch)
tree0199cc1df73c5ed6b838a0966657983d3b0ac58c
parentd3a95bd399092e17e40001947a3f1b432dac22a6 (diff)
parentd4d670204f3c1b46521a3ca7ace389c9b8b7c4b8 (diff)
downloadcryptography-ab420c93e72b75dfbf0f7891ee606ddc42d96570.tar.gz
cryptography-ab420c93e72b75dfbf0f7891ee606ddc42d96570.tar.bz2
cryptography-ab420c93e72b75dfbf0f7891ee606ddc42d96570.zip
Merge pull request #1761 from reaperhulk/x509-ext-parse-bindings
new openssl bindings for parsing some x509 extensions
-rw-r--r--src/cryptography/hazmat/bindings/openssl/x509.py1
-rw-r--r--src/cryptography/hazmat/bindings/openssl/x509v3.py11
2 files changed, 12 insertions, 0 deletions
diff --git a/src/cryptography/hazmat/bindings/openssl/x509.py b/src/cryptography/hazmat/bindings/openssl/x509.py
index f5638da7..949a936e 100644
--- a/src/cryptography/hazmat/bindings/openssl/x509.py
+++ b/src/cryptography/hazmat/bindings/openssl/x509.py
@@ -139,6 +139,7 @@ int X509_get_ext_count(X509 *);
int X509_add_ext(X509 *, X509_EXTENSION *, int);
X509_EXTENSION *X509_EXTENSION_dup(X509_EXTENSION *);
X509_EXTENSION *X509_get_ext(X509 *, int);
+int X509_get_ext_by_NID(X509 *, int, int);
int X509_EXTENSION_get_critical(X509_EXTENSION *);
ASN1_OBJECT *X509_EXTENSION_get_object(X509_EXTENSION *);
void X509_EXTENSION_free(X509_EXTENSION *);
diff --git a/src/cryptography/hazmat/bindings/openssl/x509v3.py b/src/cryptography/hazmat/bindings/openssl/x509v3.py
index 3b007249..13bf9a21 100644
--- a/src/cryptography/hazmat/bindings/openssl/x509v3.py
+++ b/src/cryptography/hazmat/bindings/openssl/x509v3.py
@@ -55,6 +55,11 @@ typedef struct {
} EDIPARTYNAME;
typedef struct {
+ int ca;
+ ASN1_INTEGER *pathlen;
+} BASIC_CONSTRAINTS;
+
+typedef struct {
int type;
union {
char *ptr;
@@ -81,6 +86,12 @@ typedef struct {
typedef struct stack_st_GENERAL_NAME GENERAL_NAMES;
+typedef struct {
+ ASN1_OCTET_STRING *keyid;
+ GENERAL_NAMES *issuer;
+ ASN1_INTEGER *serial;
+} AUTHORITY_KEYID;
+
typedef ... Cryptography_LHASH_OF_CONF_VALUE;
"""