switch (type) {
case KEY_ECDSA_SK:
case KEY_ED25519_SK:
-#ifndef ENABLE_SK
- fatal("Security key support was disabled at compile time");
-#else /* ENABLE_SK */
if (!quiet) {
printf("You may need to touch your security key "
"to authorize key generation.\n");
sk_flags, NULL, &private, NULL) != 0)
exit(1); /* error message already printed */
break;
-#endif /* ENABLE_SK */
default:
if ((r = sshkey_generate(type, bits, &private)) != 0)
fatal("sshkey_generate failed");
*sigp = NULL;
*lenp = 0;
+#ifndef ENABLE_SK
+ return SSH_ERR_KEY_TYPE_UNKNOWN;
+#endif
+
if ((kbuf = sshbuf_new()) == NULL ||
(req = sshbuf_new()) == NULL) {
r = SSH_ERR_ALLOC_FAIL;
if (attest != NULL)
sshbuf_reset(attest);
+#ifndef ENABLE_SK
+ return SSH_ERR_KEY_TYPE_UNKNOWN;
+#endif
+
if (type < 0)
return SSH_ERR_INVALID_ARGUMENT;
case KEY_ED25519_CERT:
r = ssh_ed25519_sign(key, sigp, lenp, data, datalen, compat);
break;
-#ifdef ENABLE_SK
case KEY_ED25519_SK:
case KEY_ED25519_SK_CERT:
case KEY_ECDSA_SK_CERT:
r = sshsk_sign(sk_provider, key, sigp, lenp, data,
datalen, compat);
break;
-#endif /* ENABLE_SK */
#ifdef WITH_XMSS
case KEY_XMSS:
case KEY_XMSS_CERT:
case KEY_ECDSA_CERT:
case KEY_ECDSA:
return ssh_ecdsa_verify(key, sig, siglen, data, dlen, compat);
-# ifdef ENABLE_SK
case KEY_ECDSA_SK_CERT:
case KEY_ECDSA_SK:
return ssh_ecdsa_sk_verify(key, sig, siglen, data, dlen,
compat, detailsp);
-# endif /* ENABLE_SK */
# endif /* OPENSSL_HAS_ECC */
case KEY_RSA_CERT:
case KEY_RSA: