lookup->result.msecs);
}
lookup->callback(&lookup->result, lookup->context);
- event_unref(&lookup->event);
}
static void dns_client_disconnect(struct dns_client *client, const char *error)
client = dns_client_init(set);
client->deinit_client_at_free = TRUE;
- if (dns_client_lookup(client, host, callback, context, lookup_r) < 0) {
- dns_client_deinit(&client);
- return -1;
- }
- return 0;
+ return dns_client_lookup(client, host, callback, context, lookup_r);
}
int dns_lookup_ptr(const struct ip_addr *ip,
client = dns_client_init(set);
client->deinit_client_at_free = TRUE;
- if (dns_client_lookup_ptr(client, ip, callback, context, lookup_r) < 0) {
- dns_client_deinit(&client);
- return -1;
- }
- return 0;
+ return dns_client_lookup_ptr(client, ip, callback, context, lookup_r);
}
static void dns_client_idle_timeout(struct dns_client *client)
}
if (ret <= 0) {
dns_lookup_callback(lookup);
- pool_unref(&lookup->pool);
+ dns_lookup_free(&lookup);
return -1;
}
}