X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fpkcs7%2Fpk7_asn1.c;h=b7ec2883cb327508fe4d1fc2dfa47450dd403cac;hp=a08e879cebf2b0961d39c95e19168f51a4bce9c6;hb=b5dd1787401256f6a4d70686debf13b096f2bc22;hpb=2e5975285e2b65261ce780fa3f5744277b66db34 diff --git a/crypto/pkcs7/pk7_asn1.c b/crypto/pkcs7/pk7_asn1.c index a08e879ceb..b7ec2883cb 100644 --- a/crypto/pkcs7/pk7_asn1.c +++ b/crypto/pkcs7/pk7_asn1.c @@ -82,26 +82,23 @@ static int pk7_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, void *exarg) { ASN1_STREAM_ARG *sarg = exarg; - PKCS7 *p7; - if (pval) - p7 = (PKCS7 *)*pval; - else - p7 = NULL; + PKCS7 **pp7 = (PKCS7 **)pval; + switch(operation) { case ASN1_OP_STREAM_PRE: - if (PKCS7_stream(&sarg->boundary, p7) <= 0) + if (PKCS7_stream(&sarg->boundary, *pp7) <= 0) return 0; case ASN1_OP_DETACHED_PRE: - sarg->ndef_bio = PKCS7_dataInit(p7, sarg->out); + sarg->ndef_bio = PKCS7_dataInit(*pp7, sarg->out); if (!sarg->ndef_bio) return 0; break; case ASN1_OP_STREAM_POST: case ASN1_OP_DETACHED_POST: - if (PKCS7_dataFinal(p7, sarg->ndef_bio) <= 0) + if (PKCS7_dataFinal(*pp7, sarg->ndef_bio) <= 0) return 0; break;