mirror of https://github.com/getdnsapi/getdns.git
bugfix #286 reschedule reused listening addresses
This commit is contained in:
parent
8cef8b1f95
commit
a9464993dd
|
@ -995,15 +995,16 @@ getdns_return_t getdns_context_set_listen_addresses(
|
||||||
connection *conn;
|
connection *conn;
|
||||||
|
|
||||||
loop->vmt->clear(loop, &l->to_replace->event);
|
loop->vmt->clear(loop, &l->to_replace->event);
|
||||||
(void) memset(&l->to_replace->event, 0,
|
|
||||||
sizeof(getdns_eventloop_event));
|
|
||||||
|
|
||||||
l->fd = l->to_replace->fd;
|
l->fd = l->to_replace->fd;
|
||||||
l->event = l->to_replace->event;
|
l->event = l->to_replace->event;
|
||||||
|
l->event.userarg = l;
|
||||||
l->connections = l->to_replace->connections;
|
l->connections = l->to_replace->connections;
|
||||||
for (conn = l->connections; conn; conn = conn->next)
|
for (conn = l->connections; conn; conn = conn->next)
|
||||||
conn->l = l;
|
conn->l = l;
|
||||||
|
|
||||||
|
(void) memset(&l->to_replace->event, 0,
|
||||||
|
sizeof(getdns_eventloop_event));
|
||||||
l->to_replace->connections = NULL;
|
l->to_replace->connections = NULL;
|
||||||
l->to_replace->fd = -1;
|
l->to_replace->fd = -1;
|
||||||
|
|
||||||
|
|
|
@ -119,8 +119,8 @@ int main()
|
||||||
context, listeners, NULL, handler)))
|
context, listeners, NULL, handler)))
|
||||||
; /* pass */
|
; /* pass */
|
||||||
|
|
||||||
fprintf(stdout, "%d\n", (int)port2);
|
|
||||||
fprintf(stdout, "%d\n", (int)port1);
|
fprintf(stdout, "%d\n", (int)port1);
|
||||||
|
fprintf(stdout, "%d\n", (int)port2);
|
||||||
fflush(stdout);
|
fflush(stdout);
|
||||||
getdns_context_run(context);
|
getdns_context_run(context);
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,8 @@ make && "${BUILDDIR}/build-stub-only/libtool" exec valgrind -v --log-file=valgri
|
||||||
|
|
||||||
${GETDNS_STUB_QUERY} -s @127.0.0.1:$PORT TXT test +return_call_reporting 2>&1 > tcp_out
|
${GETDNS_STUB_QUERY} -s @127.0.0.1:$PORT TXT test +return_call_reporting 2>&1 > tcp_out
|
||||||
|
|
||||||
|
${GETDNS_STUB_QUERY} -s -U @127.0.0.1:$PORT2 TXT test +return_call_reporting 2>&1 > udp_out
|
||||||
|
|
||||||
${GETDNS_STUB_QUERY} -s -q @127.0.0.1:$PORT TXT quit.
|
${GETDNS_STUB_QUERY} -s -q @127.0.0.1:$PORT TXT quit.
|
||||||
)
|
)
|
||||||
if grep -q 'definitely lost: [^0]' valgrind.log
|
if grep -q 'definitely lost: [^0]' valgrind.log
|
||||||
|
@ -33,6 +35,12 @@ then
|
||||||
echo 'error: Query was not over TCP!'
|
echo 'error: Query was not over TCP!'
|
||||||
exit 1
|
exit 1
|
||||||
|
|
||||||
|
elif ! grep -q '"transport": GETDNS_TRANSPORT_UDP' udp_out
|
||||||
|
then
|
||||||
|
cat udp_out
|
||||||
|
echo 'error: Query was not over UDP!'
|
||||||
|
exit 1
|
||||||
|
|
||||||
elif ! grep -q '"Some answer"' tcp_out
|
elif ! grep -q '"Some answer"' tcp_out
|
||||||
then
|
then
|
||||||
cat tcp_out
|
cat tcp_out
|
||||||
|
|
Loading…
Reference in New Issue