Class: OpenSSL::PKCS7::SignerInfo
- Inherits:
-
Object
- Object
- OpenSSL::PKCS7::SignerInfo
- Defined in:
- ext/rubysl/openssl/ossl_pkcs7.c
Instance Method Summary collapse
- #initialize(cert, key, digest) ⇒ Object constructor
- #issuer ⇒ Object (also: #name)
- #serial ⇒ Object
- #signed_time ⇒ Object
Constructor Details
#initialize(cert, key, digest) ⇒ Object
926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 |
# File 'ext/rubysl/openssl/ossl_pkcs7.c', line 926
static VALUE
ossl_pkcs7si_initialize(VALUE self, VALUE cert, VALUE key, VALUE digest)
{
PKCS7_SIGNER_INFO *p7si;
EVP_PKEY *pkey;
X509 *x509;
const EVP_MD *md;
pkey = GetPrivPKeyPtr(key); /* NO NEED TO DUP */
x509 = GetX509CertPtr(cert); /* NO NEED TO DUP */
md = GetDigestPtr(digest);
GetPKCS7si(self, p7si);
if (!(PKCS7_SIGNER_INFO_set(p7si, x509, pkey, (EVP_MD*)md))) {
ossl_raise(ePKCS7Error, NULL);
}
return self;
}
|
Instance Method Details
#issuer ⇒ Object Also known as: name
945 946 947 948 949 950 951 952 953 |
# File 'ext/rubysl/openssl/ossl_pkcs7.c', line 945
static VALUE
ossl_pkcs7si_get_issuer(VALUE self)
{
PKCS7_SIGNER_INFO *p7si;
GetPKCS7si(self, p7si);
return ossl_x509name_new(p7si->issuer_and_serial->issuer);
}
|
#serial ⇒ Object
955 956 957 958 959 960 961 962 963 |
# File 'ext/rubysl/openssl/ossl_pkcs7.c', line 955
static VALUE
ossl_pkcs7si_get_serial(VALUE self)
{
PKCS7_SIGNER_INFO *p7si;
GetPKCS7si(self, p7si);
return asn1integer_to_num(p7si->issuer_and_serial->serial);
}
|
#signed_time ⇒ Object
965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 |
# File 'ext/rubysl/openssl/ossl_pkcs7.c', line 965
static VALUE
ossl_pkcs7si_get_signed_time(VALUE self)
{
PKCS7_SIGNER_INFO *p7si;
ASN1_TYPE *asn1obj;
GetPKCS7si(self, p7si);
if (!(asn1obj = PKCS7_get_signed_attribute(p7si, NID_pkcs9_signingTime))) {
ossl_raise(ePKCS7Error, NULL);
}
if (asn1obj->type == V_ASN1_UTCTIME) {
return asn1time_to_time(asn1obj->value.utctime);
}
/*
* OR
* ossl_raise(ePKCS7Error, "...");
* ?
*/
return Qnil;
}
|