diff options
author | 2015-01-08 13:44:36 +0000 | |
---|---|---|
committer | 2015-01-08 13:44:36 +0000 | |
commit | e17ffc5acc71e7020078469752beb95e5dc6f265 (patch) | |
tree | 90dc3e0a561b10beb0073872c3e8b74f2ee1ceb6 | |
parent | "default" is gone. (diff) | |
download | wireguard-openbsd-e17ffc5acc71e7020078469752beb95e5dc6f265.tar.xz wireguard-openbsd-e17ffc5acc71e7020078469752beb95e5dc6f265.zip |
fix ssh_config FingerprintHash evaluation order; from Petr Lautrbach
-rw-r--r-- | usr.bin/ssh/readconf.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/usr.bin/ssh/readconf.c b/usr.bin/ssh/readconf.c index 24ff6ad4a32..51034c1782e 100644 --- a/usr.bin/ssh/readconf.c +++ b/usr.bin/ssh/readconf.c @@ -1,4 +1,4 @@ -/* $OpenBSD: readconf.c,v 1.224 2014/12/21 22:27:56 djm Exp $ */ +/* $OpenBSD: readconf.c,v 1.225 2015/01/08 13:44:36 djm Exp $ */ /* * Author: Tatu Ylonen <ylo@cs.hut.fi> * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland @@ -1452,6 +1452,7 @@ parse_int: goto parse_string; case oFingerprintHash: + intptr = &options->fingerprint_hash; arg = strdelim(&s); if (!arg || *arg == '\0') fatal("%.200s line %d: Missing argument.", @@ -1459,8 +1460,8 @@ parse_int: if ((value = ssh_digest_alg_by_name(arg)) == -1) fatal("%.200s line %d: Invalid hash algorithm \"%s\".", filename, linenum, arg); - if (*activep) - options->fingerprint_hash = value; + if (*activep && *intptr == -1) + *intptr = value; break; case oDeprecated: |