diff --git a/lib/asn1_decoder.c b/lib/asn1_decoder.c index e77d34bc20441f7c6fb48c5fe6a5255a06203293..5672ac31d765566c0a8a63f3b3dea2bc8755390d 100644 --- a/lib/asn1_decoder.c +++ b/lib/asn1_decoder.c @@ -276,6 +276,9 @@ next_op: if (unlikely(len > datalen - dp)) goto data_overrun_error; } + } else { + if (unlikely(len > datalen - dp)) + goto data_overrun_error; } if (flags & FLAG_CONS) {