tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit d9a9aed375e9afb62f5e79f6346318d1c7ba1284
parent b6bb346b9350f3ebb61d186386f45b0b82a87de1
Author: shdwcodr <shadowcoder111@proton.me>
Date:   Sun,  8 Feb 2026 16:28:32 +0530

relay: refuse to overwrite existing family ID key

Diffstat:
Msrc/feature/relay/routerkeys.c | 10++++++++++
1 file changed, 10 insertions(+), 0 deletions(-)

diff --git a/src/feature/relay/routerkeys.c b/src/feature/relay/routerkeys.c @@ -877,6 +877,16 @@ create_family_id_key(const char *fname, ed25519_public_key_t *pk_out) { int r = -1; ed25519_keypair_t *kp = tor_malloc_zero(sizeof(ed25519_keypair_t)); + + /* Refuse to overwrite an existing family key */ + if (file_status(fname) == FN_FILE) { + log_warn(LD_GENERAL, + "Family key file '%s' already exists. " + "Refusing to overwrite existing family key.", + fname); + goto done; + } + if (ed25519_keypair_generate(kp, 1) < 0) { log_warn(LD_BUG, "Can't generate ed25519 key!"); goto done;