From: Sven-Haegar Koch Date: Fri, 5 Dec 2014 02:06:44 +0000 (+0100) Subject: Try handling the case when the first side knows the ecdsa key of X-Git-Tag: release-1.1pre11~27 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=148a4c9161735a76b0a4ce73ffaaec21d76ca702;p=oweals%2Ftinc.git Try handling the case when the first side knows the ecdsa key of the second, but the second not the key of the first. (And both have the experimental protocol enabled) --- diff --git a/src/protocol_auth.c b/src/protocol_auth.c index be90d92..5782a97 100644 --- a/src/protocol_auth.c +++ b/src/protocol_auth.c @@ -381,11 +381,11 @@ bool id_h(connection_t *c, const char *request) { if(experimental) read_ecdsa_public_key(c); /* Ignore failures if no key known yet */ - } else { - if(c->protocol_minor && !ecdsa_active(c->ecdsa)) - c->protocol_minor = 1; } + if(c->protocol_minor && !ecdsa_active(c->ecdsa)) + c->protocol_minor = 1; + /* Forbid version rollback for nodes whose Ed25519 key we know */ if(ecdsa_active(c->ecdsa) && c->protocol_minor < 2) {