summaryrefslogtreecommitdiffstats
path: root/providers/common
diff options
context:
space:
mode:
authorPatrick Steuer <patrick.steuer@de.ibm.com>2019-11-01 14:58:36 +0100
committerPatrick Steuer <patrick.steuer@de.ibm.com>2019-11-20 10:24:53 +0100
commit51356a066e936354c817097cf873f4974bbea291 (patch)
treed0b40973a67423353c8bd72f79097955665037e1 /providers/common
parent92de469fbd62a77a36dad5fde3a0ac7034071a59 (diff)
Dont pass zero length input to asm modules for ciphers
The asm modules may assume an input length > 0. Fixes: #9262 Signed-off-by: Patrick Steuer <patrick.steuer@de.ibm.com> Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/10323)
Diffstat (limited to 'providers/common')
-rw-r--r--providers/common/ciphers/cipher_common.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/providers/common/ciphers/cipher_common.c b/providers/common/ciphers/cipher_common.c
index fe4560192d..8f39a168c8 100644
--- a/providers/common/ciphers/cipher_common.c
+++ b/providers/common/ciphers/cipher_common.c
@@ -207,6 +207,8 @@ int cipher_generic_block_update(void *vctx, unsigned char *out, size_t *outl,
ERR_raise(ERR_LIB_PROV, PROV_R_OUTPUT_BUFFER_TOO_SMALL);
return 0;
}
+ }
+ if (nextblocks > 0) {
if (!ctx->hw->cipher(ctx, out, in, nextblocks)) {
ERR_raise(ERR_LIB_PROV, PROV_R_CIPHER_OPERATION_FAILED);
return 0;