commit | 15fdb7f9ff8985f236f78dbfef3e6201cba295b7 | [log] [tgz] |
---|---|---|
author | Andres AG <andres.amayagarcia@arm.com> | Mon Sep 26 09:52:41 2016 +0100 |
committer | Simon Butcher <simon.butcher@arm.com> | Wed Oct 12 18:28:03 2016 +0100 |
tree | 92ae6681c70508d81f1c351f46c5927fcdeb8717 | |
parent | 79f2e87f0cdb0083ebd2865d0f8d166254f1b6a0 [diff] |
Fix 1 byte overread in mbedtls_asn1_get_int()
diff --git a/library/asn1parse.c b/library/asn1parse.c index e4f46eb..8c167df 100644 --- a/library/asn1parse.c +++ b/library/asn1parse.c
@@ -154,7 +154,7 @@ if( ( ret = asn1_get_tag( p, end, &len, ASN1_INTEGER ) ) != 0 ) return( ret ); - if( len > sizeof( int ) || ( **p & 0x80 ) != 0 ) + if( len == 0 || len > sizeof( int ) || ( **p & 0x80 ) != 0 ) return( POLARSSL_ERR_ASN1_INVALID_LENGTH ); *val = 0;