/* Sanity check the input if the input is not raw */
if (!rawin
- && buf_inlen > EVP_MAX_MD_SIZE
- && (pkey_op == EVP_PKEY_OP_SIGN
- || pkey_op == EVP_PKEY_OP_VERIFY)) {
- BIO_printf(bio_err,
- "Error: The input data looks too long to be a hash\n");
- goto end;
+ && (pkey_op == EVP_PKEY_OP_SIGN || pkey_op == EVP_PKEY_OP_VERIFY
+ || pkey_op == EVP_PKEY_OP_VERIFYRECOVER)) {
+ if (buf_inlen > EVP_MAX_MD_SIZE) {
+ BIO_printf(bio_err,
+ "Error: The non-raw input data length %d is too long - max supported hashed size is %d\n",
+ buf_inlen, EVP_MAX_MD_SIZE);
+ goto end;
+ }
}
if (pkey_op == EVP_PKEY_OP_VERIFY) {