aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/util/gnunet-service-resolver.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/util/gnunet-service-resolver.c b/src/util/gnunet-service-resolver.c
index 96ed101f7..f3675edb3 100644
--- a/src/util/gnunet-service-resolver.c
+++ b/src/util/gnunet-service-resolver.c
@@ -237,15 +237,18 @@ get_ip_as_string (struct GNUNET_SERVER_Client *client,
237 } 237 }
238 if (NULL != pos) 238 if (NULL != pos)
239 { 239 {
240 if (1 == inet_pton (af, 240 if ( (1 == inet_pton (af,
241 pos->ip, 241 pos->ip,
242 &ix)) 242 &ix)) &&
243 (GNUNET_TIME_absolute_get_duration (pos->last_request).rel_value_us >
244 120 * 1000 * 1000LL) )
243 { 245 {
246 /* try again if still numeric AND 2 minutes have expired */
244 GNUNET_free_non_null (pos->addr); 247 GNUNET_free_non_null (pos->addr);
245 pos->addr = NULL; 248 pos->addr = NULL;
246 cache_resolve (pos); 249 cache_resolve (pos);
250 pos->last_request = now;
247 } 251 }
248 pos->last_request = now;
249 } 252 }
250 else 253 else
251 { 254 {