aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2015-03-18 21:59:33 -0500
committerPaul Kehrer <paul.l.kehrer@gmail.com>2015-03-18 21:59:33 -0500
commitd4d670204f3c1b46521a3ca7ace389c9b8b7c4b8 (patch)
tree0199cc1df73c5ed6b838a0966657983d3b0ac58c /src
parentd3a95bd399092e17e40001947a3f1b432dac22a6 (diff)
downloadcryptography-d4d670204f3c1b46521a3ca7ace389c9b8b7c4b8.tar.gz
cryptography-d4d670204f3c1b46521a3ca7ace389c9b8b7c4b8.tar.bz2
cryptography-d4d670204f3c1b46521a3ca7ace389c9b8b7c4b8.zip
new openssl bindings for parsing some x509 extensions
Diffstat (limited to 'src')
-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;
"""