version 1.237, 2013/12/06 13:34:54 |
version 1.238, 2013/12/06 13:39:49 |
|
|
} |
} |
if (type == KEY_DSA && *bitsp != 1024) |
if (type == KEY_DSA && *bitsp != 1024) |
fatal("DSA keys must be 1024 bits"); |
fatal("DSA keys must be 1024 bits"); |
else if (type != KEY_ECDSA && *bitsp < 768) |
else if (type != KEY_ECDSA && type != KEY_ED25519 && *bitsp < 768) |
fatal("Key must at least be 768 bits"); |
fatal("Key must at least be 768 bits"); |
else if (type == KEY_ECDSA && key_ecdsa_bits_to_nid(*bitsp) == -1) |
else if (type == KEY_ECDSA && key_ecdsa_bits_to_nid(*bitsp) == -1) |
fatal("Invalid ECDSA key length - valid lengths are " |
fatal("Invalid ECDSA key length - valid lengths are " |
|
|
case KEY_RSA: |
case KEY_RSA: |
name = _PATH_SSH_CLIENT_ID_RSA; |
name = _PATH_SSH_CLIENT_ID_RSA; |
break; |
break; |
|
case KEY_ED25519: |
|
case KEY_ED25519_CERT: |
|
name = _PATH_SSH_CLIENT_ID_ED25519; |
|
break; |
default: |
default: |
fprintf(stderr, "bad key type\n"); |
fprintf(stderr, "bad key type\n"); |
exit(1); |
exit(1); |
|
|
{ "rsa", "RSA" ,_PATH_HOST_RSA_KEY_FILE }, |
{ "rsa", "RSA" ,_PATH_HOST_RSA_KEY_FILE }, |
{ "dsa", "DSA", _PATH_HOST_DSA_KEY_FILE }, |
{ "dsa", "DSA", _PATH_HOST_DSA_KEY_FILE }, |
{ "ecdsa", "ECDSA",_PATH_HOST_ECDSA_KEY_FILE }, |
{ "ecdsa", "ECDSA",_PATH_HOST_ECDSA_KEY_FILE }, |
|
{ "ed25519", "ED25519",_PATH_HOST_ED25519_KEY_FILE }, |
{ NULL, NULL, NULL } |
{ NULL, NULL, NULL } |
}; |
}; |
|
|
|
|
if ((public = key_load_public(tmp, &comment)) == NULL) |
if ((public = key_load_public(tmp, &comment)) == NULL) |
fatal("%s: unable to open \"%s\"", __func__, tmp); |
fatal("%s: unable to open \"%s\"", __func__, tmp); |
if (public->type != KEY_RSA && public->type != KEY_DSA && |
if (public->type != KEY_RSA && public->type != KEY_DSA && |
public->type != KEY_ECDSA) |
public->type != KEY_ECDSA && public->type != KEY_ED25519) |
fatal("%s: key \"%s\" type %s cannot be certified", |
fatal("%s: key \"%s\" type %s cannot be certified", |
__func__, tmp, key_type(public)); |
__func__, tmp, key_type(public)); |
|
|