Preview Ruby 4.1 is a preview. It can change before the final release. Switch to Ruby 4.0 →
class method
OpenSSL::X509::CRL.new
(?::String der) -> ::OpenSSL::X509::CRL
new(p1 = v1)
ext/openssl/ossl_x509crl.c
View on GitHub ↗
static VALUE
ossl_x509crl_initialize(int argc, VALUE *argv, VALUE self)
{
BIO *in;
X509_CRL *crl;
VALUE arg;
rb_scan_args(argc, argv, "01", &arg);
ossl_want_uninitialized(self, &ossl_x509crl_type);
if (argc == 0) {
crl = X509_CRL_new();
if (!crl)
ossl_raise(eX509CRLError, "X509_CRL_new");
RTYPEDDATA_DATA(self) = crl;
return self;
}
arg = ossl_to_der_if_possible(arg);
in = ossl_obj2bio(&arg);
crl = d2i_X509_CRL_bio(in, NULL);
if (!crl) {
OSSL_BIO_reset(in);
crl = PEM_read_bio_X509_CRL(in, NULL, NULL, NULL);
}
BIO_free(in);
if (!crl)
ossl_raise(eX509CRLError, "PEM_read_bio_X509_CRL");
RTYPEDDATA_DATA(self) = crl;
return self;
}
No documentation available