mirror of
https://github.com/smaeul/u-boot.git
synced 2025-10-14 04:46:01 +01:00
lib: rsa: fix padding_pss_verify
Check the that the hash length is shorter than the message length. This avoids: ./tools/../lib/rsa/rsa-verify.c:275:11: warning: ‘*db’ may be used uninitialized [-Wmaybe-uninitialized] 275 | db[0] &= 0xff >> leftmost_bits; Fixes: 061daa0b61f0 ("rsa: add support of padding pss") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
069f0d7506
commit
0cd933bb4b
@ -215,6 +215,8 @@ out:
|
|||||||
* @msg_len: Message length
|
* @msg_len: Message length
|
||||||
* @hash: Pointer to the expected hash
|
* @hash: Pointer to the expected hash
|
||||||
* @hash_len: Length of the hash
|
* @hash_len: Length of the hash
|
||||||
|
*
|
||||||
|
* Return: 0 if padding is correct, non-zero otherwise
|
||||||
*/
|
*/
|
||||||
int padding_pss_verify(struct image_sign_info *info,
|
int padding_pss_verify(struct image_sign_info *info,
|
||||||
const uint8_t *msg, int msg_len,
|
const uint8_t *msg, int msg_len,
|
||||||
@ -234,6 +236,9 @@ int padding_pss_verify(struct image_sign_info *info,
|
|||||||
uint8_t leftmost_mask;
|
uint8_t leftmost_mask;
|
||||||
struct checksum_algo *checksum = info->checksum;
|
struct checksum_algo *checksum = info->checksum;
|
||||||
|
|
||||||
|
if (db_len <= 0)
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
/* first, allocate everything */
|
/* first, allocate everything */
|
||||||
db_mask = malloc(db_len);
|
db_mask = malloc(db_len);
|
||||||
db = malloc(db_len);
|
db = malloc(db_len);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user