From 6ef24092b52b717242f52b18a2f1ee9d44ed2f4e Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Sat, 10 Nov 2012 15:20:39 +0100 Subject: Keep track of configured peer count correctly on dynamic reloads --- src/fastd.c | 4 +--- src/peer.c | 2 ++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/fastd.c b/src/fastd.c index eece815..392b6c4 100644 --- a/src/fastd.c +++ b/src/fastd.c @@ -598,10 +598,8 @@ static void init_peers(fastd_context *ctx) { for (peer_conf = ctx->conf->peers; peer_conf; peer_conf = peer_conf->next) { ctx->conf->protocol->peer_configure(ctx, peer_conf); - if (peer_conf->enabled) { + if (peer_conf->enabled) fastd_peer_add(ctx, peer_conf); - ctx->n_peers++; - } } } diff --git a/src/peer.c b/src/peer.c index 9624fd5..e2ddf22 100644 --- a/src/peer.c +++ b/src/peer.c @@ -288,6 +288,7 @@ static void delete_peer(fastd_context *ctx, fastd_peer *peer) { ctx->conf->protocol->free_peer_state(ctx, peer); free(peer); + ctx->n_peers--; } @@ -474,6 +475,7 @@ fastd_peer* fastd_peer_add(fastd_context *ctx, fastd_peer_config *peer_conf) { setup_peer(ctx, peer); pr_verbose(ctx, "adding peer %P (group `%s')", peer, peer->group->conf->name); + ctx->n_peers++; return peer; } -- cgit v1.2.3