Skip to content

Commit

Permalink
dns_client: avoid false re-creation of udp sockets causing retries.
Browse files Browse the repository at this point in the history
  • Loading branch information
pymumu committed Jul 14, 2023
1 parent 2576fdb commit 89e958a
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 2 deletions.
7 changes: 6 additions & 1 deletion src/dns_client.c
Original file line number Diff line number Diff line change
Expand Up @@ -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) {
Expand Down
7 changes: 6 additions & 1 deletion src/smartdns.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down

0 comments on commit 89e958a

Please sign in to comment.