chiark
/
gitweb
/
~mdw
/
secnet
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
udp: Support IPv6 (mostly)
[secnet]
/
resolver.c
diff --git
a/resolver.c
b/resolver.c
index d6bc61901085d78d3492bfa411f99c32957d9b56..d104c363f775de7dcb3e40e1829de2e54c42ce46 100644
(file)
--- a/
resolver.c
+++ b/
resolver.c
@@
-43,6
+43,7
@@
static bool_t resolve_request(void *sst, cstring_t name,
trimmed[l-2]=0;
struct comm_addr ca;
ca.comm=comm;
trimmed[l-2]=0;
struct comm_addr ca;
ca.comm=comm;
+ ca.ix=-1;
ca.ia.sin.sin_family=AF_INET;
ca.ia.sin.sin_port=htons(port);
if (inet_aton(trimmed,&ca.ia.sin.sin_addr))
ca.ia.sin.sin_family=AF_INET;
ca.ia.sin.sin_port=htons(port);
if (inet_aton(trimmed,&ca.ia.sin.sin_addr))
@@
-109,6
+110,7
@@
static void resolver_afterpoll(void *sst, struct pollfd *fds, int nfds)
adns_rr_addr *ra=&ans->rrs.addr[rslot];
struct comm_addr *ca=&ca_buf[wslot];
ca->comm=q->comm;
adns_rr_addr *ra=&ans->rrs.addr[rslot];
struct comm_addr *ca=&ca_buf[wslot];
ca->comm=q->comm;
+ ca->ix=-1;
switch (ra->addr.sa.sa_family) {
case AF_INET:
assert(ra->len == sizeof(ca->ia.sin));
switch (ra->addr.sa.sa_family) {
case AF_INET:
assert(ra->len == sizeof(ca->ia.sin));