File tree Expand file tree Collapse file tree 2 files changed +23
-8
lines changed
Expand file tree Collapse file tree 2 files changed +23
-8
lines changed Original file line number Diff line number Diff line change 1+ #include < x509.h>
12#include < cstring>
23#include < sstream>
3- # include < x509.h >
4+
45
56using namespace v8 ;
67
@@ -386,11 +387,7 @@ Local<Value> try_parse(const std::string& dataString) {
386387 BIO *ext_bio = BIO_new (BIO_s_mem ());
387388 // IFNULL_FAIL(ext_bio, "unable to allocate memory for extension value BIO");
388389 if (!X509V3_EXT_print (ext_bio, ext, 0 , 0 )) {
389- unsigned char *buf = NULL ;
390- int len = i2d_ASN1_OCTET_STRING (X509_EXTENSION_get_data (ext), &buf);
391- if (len >= 0 ) {
392- BIO_write (ext_bio, static_cast <const void *>(buf), len);
393- }
390+ M_ASN1_OCTET_STRING_print (ext_bio, ext->value );
394391 }
395392
396393 BUF_MEM *bptr;
@@ -468,7 +465,7 @@ Local<Object> parse_name(X509_NAME *subject) {
468465 Local<Object> cert = Nan::New<Object>();
469466 int i, length;
470467 ASN1_OBJECT *entry;
471- const unsigned char *value;
468+ unsigned char *value;
472469 char buf[255 ];
473470 length = X509_NAME_entry_count (subject);
474471 for (i = 0 ; i < length; i++) {
Original file line number Diff line number Diff line change @@ -53,4 +53,22 @@ x509.verify(
5353 function ( err , result ) {
5454 assert . throws ( assert . ifError . bind ( null , err ) , / F a i l e d t o l o a d c e r t / )
5555 }
56- ) ;
56+ ) ;
57+
58+ const certWithAttrs = `-----BEGIN CERTIFICATE-----
59+ MIIB6TCCAY+gAwIBAgIUHkmY6fRP0ANTvzaBwKCkMZZPUnUwCgYIKoZIzj0EAwIw
60+ GzEZMBcGA1UEAxMQZmFicmljLWNhLXNlcnZlcjAeFw0xNzA5MDgwMzQyMDBaFw0x
61+ ODA5MDgwMzQyMDBaMB4xHDAaBgNVBAMTE015VGVzdFVzZXJXaXRoQXR0cnMwWTAT
62+ BgcqhkjOPQIBBggqhkjOPQMBBwNCAATmB1r3CdWvOOP3opB3DjJnW3CnN8q1ydiR
63+ dzmuA6A2rXKzPIltHvYbbSqISZJubsy8gVL6GYgYXNdu69RzzFF5o4GtMIGqMA4G
64+ A1UdDwEB/wQEAwICBDAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBTYKLTAvJJK08OM
65+ VGwIhjMQpo2DrjAfBgNVHSMEGDAWgBTEs/52DeLePPx1+65VhgTwu3/2ATAiBgNV
66+ HREEGzAZghdBbmlscy1NYWNCb29rLVByby5sb2NhbDAmBggqAwQFBgcIAQQaeyJh
67+ dHRycyI6eyJhdHRyMSI6InZhbDEifX0wCgYIKoZIzj0EAwIDSAAwRQIhAPuEqWUp
68+ svTTvBqLR5JeQSctJuz3zaqGRqSs2iW+QB3FAiAIP0mGWKcgSGRMMBvaqaLytBYo
69+ 9v3hRt1r8j8vN0pMcg==
70+ -----END CERTIFICATE-----` ;
71+
72+
73+ var cert = x509 . parseCert ( ( certWithAttrs ) ) ;
74+ console . log ( cert )
You can’t perform that action at this time.
0 commit comments