X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/adns/blobdiff_plain/df1d1f3a163c7ee7b5abb17a283f1107012a37f6..eec1d9c837c2b0f0c64d74a3dbf25732c7c475f2:/src/event.c diff --git a/src/event.c b/src/event.c index db3dad6..582e95c 100644 --- a/src/event.c +++ b/src/event.c @@ -27,6 +27,8 @@ #include #include +#include +#include #include #include "internal.h" @@ -100,7 +102,7 @@ void adns__tcp_tryconnect(adns_state ads, struct timeval now) { addr.sin_family= AF_INET; addr.sin_port= htons(DNS_PORT); addr.sin_addr= ads->servers[ads->tcpserver].addr; - r= connect(fd,&addr,sizeof(addr)); + r= connect(fd,(const struct sockaddr*)&addr,sizeof(addr)); ads->tcpsocket= fd; ads->tcpstate= server_connecting; if (r==0) { tcp_connected(ads,now); continue; } @@ -305,7 +307,8 @@ static int internal_callback(adns_state ads, int maxfd, count++; for (;;) { udpaddrlen= sizeof(udpaddr); - r= recvfrom(ads->udpsocket,udpbuf,sizeof(udpbuf),0,&udpaddr,&udpaddrlen); + r= recvfrom(ads->udpsocket,udpbuf,sizeof(udpbuf),0, + (struct sockaddr*)&udpaddr,&udpaddrlen); if (r<0) { if (!(errno == EAGAIN || errno == EWOULDBLOCK || errno == EINTR || errno == ENOMEM || errno == ENOBUFS))