UBSAN says
runtime error: left shift of 255 by 24 places cannot be represented in type 'int'
Credit to OSS-Fuzz.
REF: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=22889
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
/* read a non-negative enumerated value */
bool asn1_read_enumerated(struct asn1_data *data, int *v)
{
- unsigned int val_will_wrap = (0xFF << ((sizeof(int)*8)-8));
+ unsigned int val_will_wrap = (0xFFU << ((sizeof(int)*8)-8));
*v = 0;
if (!asn1_start_tag(data, ASN1_ENUMERATED)) return false;