diff options
Diffstat (limited to 'OpenSSL/X509/CRL.html')
-rw-r--r-- | OpenSSL/X509/CRL.html | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/OpenSSL/X509/CRL.html b/OpenSSL/X509/CRL.html index 238ac89a..1e49e0e3 100644 --- a/OpenSSL/X509/CRL.html +++ b/OpenSSL/X509/CRL.html @@ -146,23 +146,26 @@ ossl_x509crl_initialize(int argc, VALUE *argv, VALUE self) { BIO *in; - X509_CRL *crl, *x = DATA_PTR(self); + X509_CRL *crl, *crl_orig = RTYPEDDATA_DATA(self); VALUE arg; + rb_check_frozen(self); if (rb_scan_args(argc, argv, "01", &arg) == 0) { return self; } arg = ossl_to_der_if_possible(arg); in = ossl_obj2bio(&arg); - crl = PEM_read_bio_X509_CRL(in, &x, NULL, NULL); - DATA_PTR(self) = x; + crl = d2i_X509_CRL_bio(in, NULL); if (!crl) { OSSL_BIO_reset(in); - crl = d2i_X509_CRL_bio(in, &x); - DATA_PTR(self) = x; + crl = PEM_read_bio_X509_CRL(in, NULL, NULL, NULL); } BIO_free(in); - if (!crl) ossl_raise(eX509CRLError, NULL); + if (!crl) + ossl_raise(eX509CRLError, "PEM_read_bio_X509_CRL"); + + RTYPEDDATA_DATA(self) = crl; + X509_CRL_free(crl_orig); return self; }</pre> @@ -190,7 +193,7 @@ ossl_x509crl_initialize(int argc, VALUE *argv, VALUE self) <div class="method-source-code" id="3D-3D-source"> - <pre><span class="ruby-comment"># File lib/openssl/x509.rb, line 347</span> + <pre><span class="ruby-comment"># File lib/openssl/x509.rb, line 369</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">==</span>(<span class="ruby-identifier">other</span>) <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">CRL</span> <span class="ruby-operator">===</span> <span class="ruby-identifier">other</span> <span class="ruby-identifier">to_der</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other</span>.<span class="ruby-identifier">to_der</span> |