aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/openssl/crypto/asn1/p7_lib.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/openssl/crypto/asn1/p7_lib.c')
-rw-r--r--crypto/openssl/crypto/asn1/p7_lib.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/crypto/openssl/crypto/asn1/p7_lib.c b/crypto/openssl/crypto/asn1/p7_lib.c
index b1196ef581ce..8a340b01190e 100644
--- a/crypto/openssl/crypto/asn1/p7_lib.c
+++ b/crypto/openssl/crypto/asn1/p7_lib.c
@@ -307,12 +307,14 @@ PKCS7 *d2i_PKCS7(PKCS7 **a, unsigned char **pp, long length)
}
if (Tinf == (1|V_ASN1_CONSTRUCTED))
{
+ c.q=c.p;
if (!ASN1_check_infinite_end(&c.p,c.slen))
{
c.error=ERR_R_MISSING_ASN1_EOS;
c.line=__LINE__;
goto err;
}
+ c.slen-=(c.p-c.q);
}
}
else