diff options
Diffstat (limited to 'userspace/ncrypto_key.c')
-rw-r--r-- | userspace/ncrypto_key.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/userspace/ncrypto_key.c b/userspace/ncrypto_key.c index 47d4c94..758ff6f 100644 --- a/userspace/ncrypto_key.c +++ b/userspace/ncrypto_key.c @@ -218,8 +218,10 @@ ncr_key_import(ncr_key_t key, void *idata, size_t idata_size, void *id, size_t i io.key = key; io.idata = idata; io.idata_size = idata_size; - if (id_size > MAX_KEY_ID_SIZE) - id_size = MAX_KEY_ID_SIZE; + if (id_size > MAX_KEY_ID_SIZE) { + errno = EOVERFLOW; + return -1; + } memmove(&io.key_id, id, id_size); io.key_id_size = id_size; io.algorithm = algorithm; |