diff --git a/providers/common/ciphers/cipher_common.c b/providers/common/ciphers/cipher_common.c index fe4560192d74db5578bec43c54299addb1014d76..8f39a168c8536c91f4c383fd7530186b2b98d222 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;