return ret;
 }
 
+static int lms_signing_fail_test(void)
+{
+    int ret = 0;
+    LMS_ACVP_TEST_DATA *td = &lms_testdata[0];
+    EVP_PKEY *pub = NULL;
+    EVP_MD_CTX *vctx = NULL;
+
+    if (!TEST_ptr(pub = lms_pubkey_from_data(td->pub, td->publen)))
+        return 0;
+    if (!TEST_ptr(vctx = EVP_MD_CTX_new()))
+        goto err;
+    /* Only one shot mode is supported, streaming fails to initialise */
+    if (!TEST_int_eq(EVP_DigestSignInit_ex(vctx, NULL, NULL, libctx, NULL,
+                                           pub, NULL), 0))
+        goto err;
+    ret = 1;
+ err:
+    EVP_PKEY_free(pub);
+    EVP_MD_CTX_free(vctx);
+    return ret;
+}
+
 static int lms_verify_fail_test(void)
 {
     int ret = 0;
     ADD_ALL_TESTS(lms_verify_test, OSSL_NELEM(lms_testdata));
     ADD_TEST(lms_verify_fail_test);
     ADD_TEST(lms_digest_verify_fail_test);
+    ADD_TEST(lms_signing_fail_test);
     ADD_TEST(lms_verify_bad_sig_test);
     ADD_TEST(lms_verify_bad_sig_len_test);
     ADD_TEST(lms_verify_bad_pub_sig_test);