diff options
Diffstat (limited to 'src/lib/libcrypto/asn1/p7_lib.c')
| -rw-r--r-- | src/lib/libcrypto/asn1/p7_lib.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/lib/libcrypto/asn1/p7_lib.c b/src/lib/libcrypto/asn1/p7_lib.c index b1196ef581..8a340b0119 100644 --- a/src/lib/libcrypto/asn1/p7_lib.c +++ b/src/lib/libcrypto/asn1/p7_lib.c | |||
| @@ -307,12 +307,14 @@ PKCS7 *d2i_PKCS7(PKCS7 **a, unsigned char **pp, long length) | |||
| 307 | } | 307 | } |
| 308 | if (Tinf == (1|V_ASN1_CONSTRUCTED)) | 308 | if (Tinf == (1|V_ASN1_CONSTRUCTED)) |
| 309 | { | 309 | { |
| 310 | c.q=c.p; | ||
| 310 | if (!ASN1_check_infinite_end(&c.p,c.slen)) | 311 | if (!ASN1_check_infinite_end(&c.p,c.slen)) |
| 311 | { | 312 | { |
| 312 | c.error=ERR_R_MISSING_ASN1_EOS; | 313 | c.error=ERR_R_MISSING_ASN1_EOS; |
| 313 | c.line=__LINE__; | 314 | c.line=__LINE__; |
| 314 | goto err; | 315 | goto err; |
| 315 | } | 316 | } |
| 317 | c.slen-=(c.p-c.q); | ||
| 316 | } | 318 | } |
| 317 | } | 319 | } |
| 318 | else | 320 | else |
