dns_client: avoid false re-creation of udp sockets causing retries.
This commit is contained in:
@@ -4131,7 +4131,12 @@ static void _dns_client_period_run(unsigned int msec)
|
||||
{
|
||||
/* free timed out query, and notify caller */
|
||||
list_del_init(&query->period_list);
|
||||
_dns_client_check_udp_nat(query);
|
||||
|
||||
/* check udp nat after retrying. */
|
||||
if (atomic_read(&query->retry_count) == 1) {
|
||||
_dns_client_check_udp_nat(query);
|
||||
}
|
||||
|
||||
if (atomic_dec_and_test(&query->retry_count) || (query->has_result != 0)) {
|
||||
_dns_client_query_remove(query);
|
||||
if (query->has_result == 0) {
|
||||
|
||||
@@ -460,8 +460,13 @@ static int _smartdns_init(void)
|
||||
const char *logfile = _smartdns_log_path();
|
||||
int i = 0;
|
||||
char logdir[PATH_MAX] = {0};
|
||||
int logbuffersize = 0;
|
||||
|
||||
ret = tlog_init(logfile, dns_conf_log_size, dns_conf_log_num, 0, 0);
|
||||
if (get_system_mem_size() > 1024 * 1024 * 1024) {
|
||||
logbuffersize = 1024 * 1024;
|
||||
}
|
||||
|
||||
ret = tlog_init(logfile, dns_conf_log_size, dns_conf_log_num, logbuffersize, TLOG_NONBLOCK);
|
||||
if (ret != 0) {
|
||||
tlog(TLOG_ERROR, "start tlog failed.\n");
|
||||
goto errout;
|
||||
|
||||
Reference in New Issue
Block a user