Browse Subversion Repository
Diff of /trunk/ttssh2/ttxssh/hostkey.c
Parent Directory
| Revision Log
| Patch
| 35 |
ssh_keyalgo algo; |
ssh_keyalgo algo; |
| 36 |
ssh_keytype type; |
ssh_keytype type; |
| 37 |
int digest_type; |
int digest_type; |
| 38 |
|
ssh_agentflag signflag; |
| 39 |
char *name; |
char *name; |
| 40 |
}; |
}; |
| 41 |
|
|
| 42 |
static const struct ssh2_host_key_t ssh2_host_key[] = { |
static const struct ssh2_host_key_t ssh2_host_key[] = { |
| 43 |
{KEY_ALGO_RSA1, KEY_RSA1, NID_sha1, "ssh-rsa1"}, // for SSH1 only |
{KEY_ALGO_RSA1, KEY_RSA1, NID_sha1, SSH_AGENT_SIGN_DEFAULT, "ssh-rsa1"}, // for SSH1 only |
| 44 |
{KEY_ALGO_RSA, KEY_RSA, NID_sha1, "ssh-rsa"}, // RFC4253 |
{KEY_ALGO_RSA, KEY_RSA, NID_sha1, SSH_AGENT_SIGN_DEFAULT, "ssh-rsa"}, // RFC4253 |
| 45 |
{KEY_ALGO_DSA, KEY_DSA, NID_sha1, "ssh-dss"}, // RFC4253 |
{KEY_ALGO_DSA, KEY_DSA, NID_sha1, SSH_AGENT_SIGN_DEFAULT, "ssh-dss"}, // RFC4253 |
| 46 |
{KEY_ALGO_ECDSA256, KEY_ECDSA256, NID_sha256, "ecdsa-sha2-nistp256"}, // RFC5656 |
{KEY_ALGO_ECDSA256, KEY_ECDSA256, NID_sha256, SSH_AGENT_SIGN_DEFAULT, "ecdsa-sha2-nistp256"}, // RFC5656 |
| 47 |
{KEY_ALGO_ECDSA384, KEY_ECDSA384, NID_sha384, "ecdsa-sha2-nistp384"}, // RFC5656 |
{KEY_ALGO_ECDSA384, KEY_ECDSA384, NID_sha384, SSH_AGENT_SIGN_DEFAULT, "ecdsa-sha2-nistp384"}, // RFC5656 |
| 48 |
{KEY_ALGO_ECDSA521, KEY_ECDSA521, NID_sha512, "ecdsa-sha2-nistp521"}, // RFC5656 |
{KEY_ALGO_ECDSA521, KEY_ECDSA521, NID_sha512, SSH_AGENT_SIGN_DEFAULT, "ecdsa-sha2-nistp521"}, // RFC5656 |
| 49 |
{KEY_ALGO_ED25519, KEY_ED25519, NID_sha512, "ssh-ed25519"}, // RDC8709 |
{KEY_ALGO_ED25519, KEY_ED25519, NID_sha512, SSH_AGENT_SIGN_DEFAULT, "ssh-ed25519"}, // RDC8709 |
| 50 |
{KEY_ALGO_RSASHA256,KEY_RSA, NID_sha256, "rsa-sha2-256"}, // RFC8332 |
{KEY_ALGO_RSASHA256,KEY_RSA, NID_sha256, SSH_AGENT_RSA_SHA2_256, "rsa-sha2-256"}, // RFC8332 |
| 51 |
{KEY_ALGO_RSASHA512,KEY_RSA, NID_sha512, "rsa-sha2-512"}, // RFC8332 |
{KEY_ALGO_RSASHA512,KEY_RSA, NID_sha512, SSH_AGENT_RSA_SHA2_512, "rsa-sha2-512"}, // RFC8332 |
| 52 |
{KEY_ALGO_UNSPEC, KEY_UNSPEC, NID_undef, "ssh-unknown"}, |
{KEY_ALGO_UNSPEC, KEY_UNSPEC, NID_undef, SSH_AGENT_SIGN_DEFAULT, "ssh-unknown"}, |
| 53 |
{KEY_ALGO_NONE, KEY_NONE, NID_undef, NULL}, |
{KEY_ALGO_NONE, KEY_NONE, NID_undef, SSH_AGENT_SIGN_DEFAULT, NULL}, |
| 54 |
}; |
}; |
| 55 |
|
|
| 56 |
struct ssh_digest_t { |
struct ssh_digest_t { |
| 159 |
return NID_sha1; |
return NID_sha1; |
| 160 |
} |
} |
| 161 |
|
|
| 162 |
|
int get_ssh2_agent_flag(ssh_keyalgo algo) |
| 163 |
|
{ |
| 164 |
|
const struct ssh2_host_key_t *ptr = ssh2_host_key; |
| 165 |
|
|
| 166 |
|
while (ptr->name != NULL) { |
| 167 |
|
if (algo == ptr->algo) { |
| 168 |
|
return ptr->signflag; |
| 169 |
|
} |
| 170 |
|
ptr++; |
| 171 |
|
} |
| 172 |
|
|
| 173 |
|
// not found. |
| 174 |
|
return SSH_AGENT_SIGN_DEFAULT; |
| 175 |
|
} |
| 176 |
|
|
| 177 |
ssh_keytype get_ssh2_hostkey_type_from_algorithm(ssh_keyalgo algo) |
ssh_keytype get_ssh2_hostkey_type_from_algorithm(ssh_keyalgo algo) |
| 178 |
{ |
{ |
| 179 |
const struct ssh2_host_key_t *ptr = ssh2_host_key; |
const struct ssh2_host_key_t *ptr = ssh2_host_key; |
|
|
Legend:
| Removed from v.10069 |
|
| changed lines |
| |
Added in v.10070 |
|
|
| |