tree b9b85633372c339e784fc011cbe34a54573a4a5b
parent f0486052b712ddbdcd88248a32bad55629a12ee2
author Gilles Peskine <Gilles.Peskine@arm.com> 1574930732 +0100
committer Gilles Peskine <Gilles.Peskine@arm.com> 1574931464 +0100

Catch AES failure in mbedtls_ctr_drbg_random

The functions mbedtls_ctr_drbg_random() and
mbedtls_ctr_drbg_random_with_add() could return 0 if an AES function
failed. This could only happen with alternative AES
implementations (the built-in implementation of the AES functions
involved never fail), typically due to a failure in a hardware
accelerator.

Bug reported and fix proposed by Johan Uppman Bruce and Christoffer
Lauri, Sectra.
