diff options
Diffstat (limited to 'src/peer.c')
-rw-r--r-- | src/peer.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -189,7 +189,7 @@ static inline void setup_peer(fastd_context *ctx, fastd_peer *peer) { if (!peer->protocol_state) ctx->conf->protocol->init_peer_state(ctx, peer); - if (!fastd_peer_is_floating(peer)) + if (!fastd_peer_is_floating(peer) || fastd_peer_is_dynamic(peer)) fastd_task_schedule_handshake(ctx, peer, 0); } @@ -215,6 +215,7 @@ fastd_peer_config* fastd_peer_config_new(fastd_context *ctx, fastd_config *conf) peer->hostname = NULL; memset(&peer->address, 0, sizeof(fastd_peer_address)); + peer->dynamic_float = false; peer->config_source_dir = NULL; @@ -310,6 +311,9 @@ bool fastd_peer_config_equal(const fastd_peer_config *peer1, const fastd_peer_co if (!strequal(peer1->hostname, peer2->hostname)) return false; + if(peer1->dynamic_float != peer2->dynamic_float) + return false; + if (!fastd_peer_address_equal(&peer1->address, &peer2->address)) return false; |