Check validity of Ed25519 key during an upgrade.

This commit is contained in:
Guus Sliepen 2014-12-07 17:20:18 +01:00
parent 5716c8877f
commit 660a2c7d1b

View file

@ -730,6 +730,12 @@ static bool upgrade_h(connection_t *c, const char *request) {
return false;
}
c->ecdsa = ecdsa_set_base64_public_key(pubkey);
if(!c->ecdsa) {
logger(DEBUG_ALWAYS, LOG_INFO, "Got bad Ed25519 public key from %s (%s), not upgrading.", c->name, c->hostname);
return false;
}
logger(DEBUG_ALWAYS, LOG_INFO, "Got Ed25519 public key from %s (%s), upgrading!", c->name, c->hostname);
append_config_file(c->name, "Ed25519PublicKey", pubkey);
c->allow_request = TERMREQ;