From 1bb1eb5a334e919d0f57ffa2746c64394b47d1e9 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Fri, 25 Apr 2014 00:48:06 +0200 Subject: fastd_peer_claim_address: allow claiming addresses from other peers when they aren't configured statically --- src/peer.c | 3 --- src/protocols/ec25519_fhmqvc/handshake.c | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) (limited to 'src') diff --git a/src/peer.c b/src/peer.c index b8763b6..feacc73 100644 --- a/src/peer.c +++ b/src/peer.c @@ -466,9 +466,6 @@ bool fastd_peer_claim_address(fastd_peer_t *new_peer, fastd_socket_t *sock, cons } if (fastd_peer_address_equal(&peer->address, remote_addr)) { - if (fastd_peer_is_established(peer)) - return false; - reset_peer_address(peer); break; } diff --git a/src/protocols/ec25519_fhmqvc/handshake.c b/src/protocols/ec25519_fhmqvc/handshake.c index 845e790..444ce32 100644 --- a/src/protocols/ec25519_fhmqvc/handshake.c +++ b/src/protocols/ec25519_fhmqvc/handshake.c @@ -136,7 +136,7 @@ static bool establish(fastd_peer_t *peer, const fastd_method_info_t *method, fas pr_verbose("%I authorized as %P", remote_addr, peer); if (!fastd_peer_claim_address(peer, sock, local_addr, remote_addr)) { - pr_warn("can't set address %I which is used by a fixed peer", remote_addr); + pr_warn("can't establish session with %P[%I] as the address is used by another peer", peer, remote_addr); fastd_peer_reset(peer); return false; } -- cgit v1.2.3