version 1.378, 2019/12/30 09:23:28 |
version 1.379, 2019/12/30 09:24:45 |
|
|
switch (type) { |
switch (type) { |
case KEY_ECDSA_SK: |
case KEY_ECDSA_SK: |
case KEY_ED25519_SK: |
case KEY_ED25519_SK: |
if (!quiet) { |
passphrase1 = NULL; |
printf("You may need to touch your security key " |
for (i = 0 ; i < 3; i++) { |
"to authorize key generation.\n"); |
if (!quiet) { |
|
printf("You may need to touch your security " |
|
"key to authorize key generation.\n"); |
|
} |
|
fflush(stdout); |
|
r = sshsk_enroll(type, sk_provider, |
|
cert_key_id == NULL ? "ssh:" : cert_key_id, |
|
sk_flags, passphrase1, NULL, &private, NULL); |
|
if (r == 0) |
|
break; |
|
if (r != SSH_ERR_KEY_WRONG_PASSPHRASE) |
|
exit(1); /* error message already printed */ |
|
passphrase1 = read_passphrase("Enter PIN for security " |
|
"key: ", RP_ALLOW_STDIN); |
} |
} |
fflush(stdout); |
if (i > 3) |
if (sshsk_enroll(type, sk_provider, |
fatal("Too many incorrect PINs"); |
cert_key_id == NULL ? "ssh:" : cert_key_id, |
|
sk_flags, NULL, NULL, &private, NULL) != 0) |
|
exit(1); /* error message already printed */ |
|
break; |
break; |
default: |
default: |
if ((r = sshkey_generate(type, bits, &private)) != 0) |
if ((r = sshkey_generate(type, bits, &private)) != 0) |