commit | 410d3dd3c72d7c0909619af078785bac24097f96 | [log] [tgz] |
---|---|---|
author | Andres AG <andres.amayagarcia@arm.com> | Mon Sep 26 09:52:41 2016 +0100 |
committer | Simon Butcher <simon.butcher@arm.com> | Thu Oct 13 13:54:14 2016 +0100 |
tree | bddeb86e98e0d659930535342e79b05b452e45d4 | |
parent | 2280e9cc483000f45ddfa915a3b53845fef68ab4 [diff] [blame] |
Fix 1 byte overread in mbedtls_asn1_get_int()
diff --git a/library/asn1parse.c b/library/asn1parse.c index ffa2f52..4dd65c0 100644 --- a/library/asn1parse.c +++ b/library/asn1parse.c
@@ -153,7 +153,7 @@ if( ( ret = mbedtls_asn1_get_tag( p, end, &len, MBEDTLS_ASN1_INTEGER ) ) != 0 ) return( ret ); - if( len > sizeof( int ) || ( **p & 0x80 ) != 0 ) + if( len == 0 || len > sizeof( int ) || ( **p & 0x80 ) != 0 ) return( MBEDTLS_ERR_ASN1_INVALID_LENGTH ); *val = 0;