Make X509_SIG opaque.
[openssl.git] / crypto / pkcs12 / p12_p8d.c
index 9bdfd3f77f9523da30d25705e3f6b0c7ac3537ac..8980abe9b919c93c1856f27047de781c7edf5903 100644 (file)
 PKCS8_PRIV_KEY_INFO *PKCS8_decrypt(X509_SIG *p8, const char *pass,
                                    int passlen)
 {
-    return PKCS12_item_decrypt_d2i(p8->algor,
+    X509_ALGOR *dalg;
+    ASN1_OCTET_STRING *doct;
+    X509_SIG_get0(&dalg, &doct, p8);
+    return PKCS12_item_decrypt_d2i(dalg,
                                    ASN1_ITEM_rptr(PKCS8_PRIV_KEY_INFO), pass,
-                                   passlen, p8->digest, 1);
+                                   passlen, doct, 1);
 }