diff options
Diffstat (limited to 'userspace/ncrypto_params.c')
-rw-r--r-- | userspace/ncrypto_params.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/userspace/ncrypto_params.c b/userspace/ncrypto_params.c index 0bbe0df..d365432 100644 --- a/userspace/ncrypto_params.c +++ b/userspace/ncrypto_params.c @@ -33,10 +33,14 @@ ncr_key_params_deinit(ncr_key_params_t params) int ncr_key_params_set_cipher_iv(ncr_key_params_t params, void* iv, unsigned int iv_size) { - if (!params || (iv_size > NCR_CIPHER_MAX_BLOCK_LEN)) { + if (!params) { errno = EINVAL; return -1; } + if (iv_size > NCR_CIPHER_MAX_BLOCK_LEN) { + errno = EOVERFLOW; + return -1; + } memmove(params->params.cipher.iv, iv, iv_size); params->params.cipher.iv_size = iv_size; return 0; |