|
Lines 158-164
typedef enum {
Link Here
|
| 158 |
oCanonicalizeFallbackLocal, oCanonicalizePermittedCNAMEs, |
158 |
oCanonicalizeFallbackLocal, oCanonicalizePermittedCNAMEs, |
| 159 |
oStreamLocalBindMask, oStreamLocalBindUnlink, oRevokedHostKeys, |
159 |
oStreamLocalBindMask, oStreamLocalBindUnlink, oRevokedHostKeys, |
| 160 |
oFingerprintHash, oUpdateHostkeys, oHostbasedKeyTypes, |
160 |
oFingerprintHash, oUpdateHostkeys, oHostbasedKeyTypes, |
| 161 |
oPubkeyAcceptedKeyTypes, |
161 |
oPubkeyAcceptedKeyTypes, oFingerprintHashEncoding, |
| 162 |
oIgnoredUnknownOption, oDeprecated, oUnsupported |
162 |
oIgnoredUnknownOption, oDeprecated, oUnsupported |
| 163 |
} OpCodes; |
163 |
} OpCodes; |
| 164 |
|
164 |
|
|
Lines 277-282
static struct {
Link Here
|
| 277 |
{ "streamlocalbindunlink", oStreamLocalBindUnlink }, |
277 |
{ "streamlocalbindunlink", oStreamLocalBindUnlink }, |
| 278 |
{ "revokedhostkeys", oRevokedHostKeys }, |
278 |
{ "revokedhostkeys", oRevokedHostKeys }, |
| 279 |
{ "fingerprinthash", oFingerprintHash }, |
279 |
{ "fingerprinthash", oFingerprintHash }, |
|
|
280 |
{ "fingerprinthashencoding", oFingerprintHashEncoding }, |
| 280 |
{ "updatehostkeys", oUpdateHostkeys }, |
281 |
{ "updatehostkeys", oUpdateHostkeys }, |
| 281 |
{ "hostbasedkeytypes", oHostbasedKeyTypes }, |
282 |
{ "hostbasedkeytypes", oHostbasedKeyTypes }, |
| 282 |
{ "pubkeyacceptedkeytypes", oPubkeyAcceptedKeyTypes }, |
283 |
{ "pubkeyacceptedkeytypes", oPubkeyAcceptedKeyTypes }, |
|
Lines 1525-1530
parse_keytypes:
Link Here
|
| 1525 |
*intptr = value; |
1526 |
*intptr = value; |
| 1526 |
break; |
1527 |
break; |
| 1527 |
|
1528 |
|
|
|
1529 |
case oFingerprintHashEncoding: |
| 1530 |
intptr = &options->fingerprint_hash_encoding; |
| 1531 |
arg = strdelim(&s); |
| 1532 |
if (!arg || *arg == '\0') |
| 1533 |
fatal("%.200s line %d: Missing argument.", |
| 1534 |
filename, linenum); |
| 1535 |
if ((value = sshkey_digest_encoding_alg_by_name(arg)) == -1) |
| 1536 |
fatal("%.200s line %d: Invalid hash encoding algorithm \"%s\".", |
| 1537 |
filename, linenum, arg); |
| 1538 |
if (*activep && *intptr == -1) |
| 1539 |
*intptr = value; |
| 1540 |
break; |
| 1541 |
|
| 1528 |
case oUpdateHostkeys: |
1542 |
case oUpdateHostkeys: |
| 1529 |
intptr = &options->update_hostkeys; |
1543 |
intptr = &options->update_hostkeys; |
| 1530 |
multistate_ptr = multistate_yesnoask; |
1544 |
multistate_ptr = multistate_yesnoask; |
|
Lines 1722-1727
initialize_options(Options * options)
Link Here
|
| 1722 |
options->canonicalize_hostname = -1; |
1736 |
options->canonicalize_hostname = -1; |
| 1723 |
options->revoked_host_keys = NULL; |
1737 |
options->revoked_host_keys = NULL; |
| 1724 |
options->fingerprint_hash = -1; |
1738 |
options->fingerprint_hash = -1; |
|
|
1739 |
options->fingerprint_hash_encoding = -1; |
| 1725 |
options->update_hostkeys = -1; |
1740 |
options->update_hostkeys = -1; |
| 1726 |
options->hostbased_key_types = NULL; |
1741 |
options->hostbased_key_types = NULL; |
| 1727 |
options->pubkey_key_types = NULL; |
1742 |
options->pubkey_key_types = NULL; |
|
Lines 1901-1906
fill_default_options(Options * options)
Link Here
|
| 1901 |
options->canonicalize_hostname = SSH_CANONICALISE_NO; |
1916 |
options->canonicalize_hostname = SSH_CANONICALISE_NO; |
| 1902 |
if (options->fingerprint_hash == -1) |
1917 |
if (options->fingerprint_hash == -1) |
| 1903 |
options->fingerprint_hash = SSH_FP_HASH_DEFAULT; |
1918 |
options->fingerprint_hash = SSH_FP_HASH_DEFAULT; |
|
|
1919 |
if (options->fingerprint_hash_encoding == -1) |
| 1920 |
options->fingerprint_hash_encoding = SSH_FP_DEFAULT; |
| 1904 |
if (options->update_hostkeys == -1) |
1921 |
if (options->update_hostkeys == -1) |
| 1905 |
options->update_hostkeys = 0; |
1922 |
options->update_hostkeys = 0; |
| 1906 |
if (kex_assemble_names(KEX_CLIENT_ENCRYPT, &options->ciphers) != 0 || |
1923 |
if (kex_assemble_names(KEX_CLIENT_ENCRYPT, &options->ciphers) != 0 || |
|
Lines 2173-2178
fmt_intarg(OpCodes code, int val)
Link Here
|
| 2173 |
return fmt_multistate_int(val, multistate_canonicalizehostname); |
2190 |
return fmt_multistate_int(val, multistate_canonicalizehostname); |
| 2174 |
case oFingerprintHash: |
2191 |
case oFingerprintHash: |
| 2175 |
return ssh_digest_alg_name(val); |
2192 |
return ssh_digest_alg_name(val); |
|
|
2193 |
case oFingerprintHashEncoding: |
| 2194 |
return sshkey_digest_encoding_alg_name(val); |
| 2176 |
case oProtocol: |
2195 |
case oProtocol: |
| 2177 |
switch (val) { |
2196 |
switch (val) { |
| 2178 |
case SSH_PROTO_1: |
2197 |
case SSH_PROTO_1: |
|
Lines 2312-2317
dump_client_config(Options *o, const char *host)
Link Here
|
| 2312 |
dump_cfg_fmtint(oEnableSSHKeysign, o->enable_ssh_keysign); |
2331 |
dump_cfg_fmtint(oEnableSSHKeysign, o->enable_ssh_keysign); |
| 2313 |
dump_cfg_fmtint(oExitOnForwardFailure, o->exit_on_forward_failure); |
2332 |
dump_cfg_fmtint(oExitOnForwardFailure, o->exit_on_forward_failure); |
| 2314 |
dump_cfg_fmtint(oFingerprintHash, o->fingerprint_hash); |
2333 |
dump_cfg_fmtint(oFingerprintHash, o->fingerprint_hash); |
|
|
2334 |
dump_cfg_fmtint(oFingerprintHashEncoding, o->fingerprint_hash_encoding); |
| 2315 |
dump_cfg_fmtint(oForwardAgent, o->forward_agent); |
2335 |
dump_cfg_fmtint(oForwardAgent, o->forward_agent); |
| 2316 |
dump_cfg_fmtint(oForwardX11, o->forward_x11); |
2336 |
dump_cfg_fmtint(oForwardX11, o->forward_x11); |
| 2317 |
dump_cfg_fmtint(oForwardX11Trusted, o->forward_x11_trusted); |
2337 |
dump_cfg_fmtint(oForwardX11Trusted, o->forward_x11_trusted); |