Commit f5cdd6ed authored by Chen Wei's avatar Chen Wei

attemp to fix crash

the problem maybe in check_servers()
parent 43b63992
...@@ -186,11 +186,13 @@ static unsigned int search_servers(time_t now, struct all_addr **addrpp, unsigne ...@@ -186,11 +186,13 @@ static unsigned int search_servers(time_t now, struct all_addr **addrpp, unsigne
memcpy (&daemon->pseudo_server->addr, &fwdserv->addr, sizeof (union mysockaddr)); memcpy (&daemon->pseudo_server->addr, &fwdserv->addr, sizeof (union mysockaddr));
daemon->pseudo_server->flags = obj->domain_flags; daemon->pseudo_server->flags = obj->domain_flags;
*domain = qdomain; *domain = qdomain;
printf(" debug: in search_servers found server for %s\n", qdomain); printf(" debug: in search_servers found server %s for %s\n", inet_ntoa(fwdserv->addr.in.sin_addr), qdomain);
} }
else else
{ {
daemon->pseudo_server->domain = NULL; daemon->pseudo_server->domain = NULL;
daemon->pseudo_server->flags = SERV_PSEUDO;
printf(" debug: in search_servers use default server for %s\n", qdomain);
} }
/* /*
......
...@@ -2442,6 +2442,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma ...@@ -2442,6 +2442,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
} }
obj->domain_flags = newlist->flags; obj->domain_flags = newlist->flags;
obj->domain_flags |= SERV_PSEUDO;
if (newlist->flags & SERV_NO_ADDR) /* no server */ if (newlist->flags & SERV_NO_ADDR) /* no server */
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment