method
new
v2_6_3 -
Show latest stable
- Class:
OpenSSL::PKCS7
new(p1 = v1)public
Many methods in this class aren’t documented.
static VALUE
ossl_pkcs7_initialize(int argc, VALUE *argv, VALUE self)
{
PKCS7 *p7, *pkcs = DATA_PTR(self);
BIO *in;
VALUE arg;
if(rb_scan_args(argc, argv, "01", &arg) == 0)
return self;
arg = ossl_to_der_if_possible(arg);
in = ossl_obj2bio(&arg);
p7 = PEM_read_bio_PKCS7(in, &pkcs, NULL, NULL);
if (!p7) {
OSSL_BIO_reset(in);
p7 = d2i_PKCS7_bio(in, &pkcs);
if (!p7) {
BIO_free(in);
PKCS7_free(pkcs);
DATA_PTR(self) = NULL;
ossl_raise(rb_eArgError, "Could not parse the PKCS7");
}
}
DATA_PTR(self) = pkcs;
BIO_free(in);
ossl_pkcs7_set_data(self, Qnil);
ossl_pkcs7_set_err_string(self, Qnil);
return self;
} Related methods
- Instance methods
- add_certificate
- add_crl
- add_data
- add_recipient
- add_signer
- certificates
- certificates=
- cipher=
- crls
- crls=
- data=
- decrypt
- detached
- detached=
- detached?
- initialize_copy
- recipients
- signers
- to_der
- to_pem
- to_s
- type
- type=
- verify
- Class methods
- encrypt
- new
- read_smime
- sign
- write_smime