Ensure zero size asn1 values are considered invalid in
gnutls_x509_crq_get_version, this ensures crq version is not used
uninitialized. Spotted by oss-fuzz at:
https://issues.oss-fuzz.com/issues/
42536706
Signed-off-by: Andrew Hamilton <adhamilt@gmail.com>
Signed-off-by: Daiki Ueno <ueno@gnu.org>
return _gnutls_asn2err(result);
}
+ /* Note that asn1_read_value can return success with */
+ /* len set to zero (without setting the data) in some */
+ /* conditions. */
+ if (unlikely(len <= 0)) {
+ return gnutls_assert_val(GNUTLS_E_ASN1_VALUE_NOT_VALID);
+ }
+
return (int)version[0] + 1;
}