summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2014-05-12 19:27:41 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2014-05-12 19:31:19 +0200
commit32c400792341b8135ec115643abacf5288e566df (patch)
tree8da8bedd87a15055ddf0612ab0fe729937a0c1ef
parent2c7d170690de22ce897e1f04dad03dcce2886cf7 (diff)
downloadm2crypto_ext-32c400792341b8135ec115643abacf5288e566df.tar.gz
m2crypto_ext-32c400792341b8135ec115643abacf5288e566df.tar.bz2
m2crypto_ext-32c400792341b8135ec115643abacf5288e566df.zip
x509_extension_get_data now returns a python string
-rw-r--r--M2Crypto_ext.i12
1 files changed, 10 insertions, 2 deletions
diff --git a/M2Crypto_ext.i b/M2Crypto_ext.i
index 0856215..50bdd4a 100644
--- a/M2Crypto_ext.i
+++ b/M2Crypto_ext.i
@@ -16,7 +16,15 @@ STACK_OF(X509_EXTENSION) *x509_req_get_extensions(X509_REQ *req) {
%}
%inline %{
-ASN1_OCTET_STRING *x509_extension_get_data(X509_EXTENSION *ext) {
- return X509_EXTENSION_get_data(ext);
+PyObject *x509_extension_get_data(X509_EXTENSION *ext) {
+ ASN1_OCTET_STRING *octet_str = X509_EXTENSION_get_data(ext);
+ const unsigned char* octet_str_data = octet_str->data;
+ long xlen;
+ int tag, xclass;
+ ASN1_get_object(&octet_str_data, &xlen, &tag, &xclass, octet_str->length);
+
+ PyObject * encodedString;
+ encodedString = PyString_FromStringAndSize((const char *)octet_str_data, octet_str->length);
+ return encodedString;
}
%}