Skip to content

Commit 4bfcd70

Browse files
brianmayapenwarr
authored andcommitted
Send DNS request back on same sock we received it on.
1 parent bd489b3 commit 4bfcd70

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

client.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -291,22 +291,22 @@ def onaccept(listener_sock):
291291

292292
dnsreqs = {}
293293
def dns_done(chan, data):
294-
peer,timeout = dnsreqs.get(chan) or (None,None)
294+
peer,sock,timeout = dnsreqs.get(chan) or (None,None,None)
295295
debug3('dns_done: channel=%r peer=%r\n' % (chan, peer))
296296
if peer:
297297
del dnsreqs[chan]
298298
debug3('doing sendto %r\n' % (peer,))
299-
dnslistener.sendto(data, peer)
299+
sock.sendto(data, peer)
300300
def ondns(listener_sock):
301301
pkt,peer = listener_sock.recvfrom(4096)
302302
now = time.time()
303303
if pkt:
304304
debug1('DNS request from %r: %d bytes\n' % (peer, len(pkt)))
305305
chan = mux.next_channel()
306-
dnsreqs[chan] = peer,now+30
306+
dnsreqs[chan] = peer,listener_sock,now+30
307307
mux.send(chan, ssnet.CMD_DNS_REQ, pkt)
308308
mux.channels[chan] = lambda cmd,data: dns_done(chan,data)
309-
for chan,(peer,timeout) in dnsreqs.items():
309+
for chan,(peer,sock,timeout) in dnsreqs.items():
310310
if timeout < now:
311311
del dnsreqs[chan]
312312
debug3('Remaining DNS requests: %d\n' % len(dnsreqs))

0 commit comments

Comments
 (0)