aboutsummaryrefslogtreecommitdiff
path: root/eperd/tcputil.c
diff options
context:
space:
mode:
Diffstat (limited to 'eperd/tcputil.c')
-rw-r--r--eperd/tcputil.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/eperd/tcputil.c b/eperd/tcputil.c
index e1d4505..22885b0 100644
--- a/eperd/tcputil.c
+++ b/eperd/tcputil.c
@@ -63,6 +63,14 @@ void tu_restart_connect(struct tu_env *env)
{
evtimer_add(&env->timer, &env->interval);
+ r= atlas_check_addr(env->dns_curr->ai_addr,
+ env->dns_curr->ai_addrlen);
+ if (r == -1)
+ {
+ env->reporterr(env, TU_BAD_ADDR, "");
+ return;
+ }
+
env->beforeconnect(env,
env->dns_curr->ai_addr, env->dns_curr->ai_addrlen);
@@ -166,6 +174,14 @@ static void dns_cb(int result, struct evutil_addrinfo *res, void *ctx)
{
evtimer_add(&env->timer, &env->interval);
+ r= atlas_check_addr(env->dns_curr->ai_addr,
+ env->dns_curr->ai_addrlen);
+ if (r == -1)
+ {
+ env->reporterr(env, TU_BAD_ADDR, "");
+ return;
+ }
+
env->beforeconnect(env,
env->dns_curr->ai_addr, env->dns_curr->ai_addrlen);