nem: Prevent underflow in NEM_DECRYPTED_SIZE

pull/25/head
Saleem Rashid 7 years ago committed by Pavol Rusnak
parent 44480ca15d
commit 74e74f5eed

@ -55,7 +55,10 @@
#define NEM_ENCRYPTED_SIZE(size) (((size) + AES_BLOCK_SIZE) / AES_BLOCK_SIZE * AES_BLOCK_SIZE)
#define NEM_ENCRYPTED_PAYLOAD_SIZE(size) (AES_BLOCK_SIZE + NEM_SALT_SIZE + NEM_ENCRYPTED_SIZE(size))
#define NEM_DECRYPTED_SIZE(buffer, size) ((size) - ((buffer)[(size) - 1]))
#define _NEM_PADDING_SIZE(buffer, size) ((buffer)[(size) - 1])
#define NEM_PADDING_SIZE(buffer, size) (_NEM_PADDING_SIZE(buffer, size) > (size) ? (size) : _NEM_PADDING_SIZE(buffer, size))
#define NEM_DECRYPTED_SIZE(buffer, size) ((size) - NEM_PADDING_SIZE(buffer, size))
typedef struct {
ed25519_public_key public_key;

Loading…
Cancel
Save