diff options
author | Miloslav Trmač <mitr@redhat.com> | 2010-08-06 01:25:17 +0200 |
---|---|---|
committer | Miloslav Trmač <mitr@redhat.com> | 2010-08-24 20:58:31 +0200 |
commit | 750e7a6282a4eaf58b5309ece1caedb238d44853 (patch) | |
tree | 11d3438634c3374cc2f211a019c81162d0837484 /userspace/ncrypto_params.c | |
parent | 086611087534593e8543c193ac12a6b07865be26 (diff) | |
download | cryptodev-linux-750e7a6282a4eaf58b5309ece1caedb238d44853.tar.gz cryptodev-linux-750e7a6282a4eaf58b5309ece1caedb238d44853.tar.xz cryptodev-linux-750e7a6282a4eaf58b5309ece1caedb238d44853.zip |
Use EOVERFLOW if input data is too large
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; |