From 33ec56398316af14eec762406f21e649fcc3cbf2 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Wed, 6 Jun 2012 22:38:36 +0200 Subject: Limit resolve frequency --- src/fastd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/fastd.c') diff --git a/src/fastd.c b/src/fastd.c index afa36eb..1f5c2bf 100644 --- a/src/fastd.c +++ b/src/fastd.c @@ -416,7 +416,7 @@ static void handle_tasks(fastd_context *ctx) { switch (task->type) { case TASK_HANDSHAKE: if (fastd_peer_is_dynamic(task->peer)) - fastd_resolve_peer(ctx, task->peer->config); + fastd_resolve_peer(ctx, task->peer); else send_handshake(ctx, task->peer); break; @@ -576,6 +576,8 @@ static void handle_resolv_returns(fastd_context *ctx) { if (!fastd_peer_config_matches_dynamic(peer->config, &resolve_return.constraints)) continue; + peer->last_resolve_return = ctx->now; + if (fastd_peer_claim_address(ctx, peer, &resolve_return.addr)) { send_handshake(ctx, peer); } -- cgit v1.2.3