Wrong number of pointer dereferences.
This bug may well be exploitable as a remote code execution.
Found by AFL 2.35b. CVE-2017-9105.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
}
assert(FD_ISSET(ads->tcpsocket,&writeable));
if (!adns__vbuf_ensure(&ads->tcprecv,1)) { r= ENOMEM; goto xit; }
- r= read(ads->tcpsocket,&ads->tcprecv.buf,1);
+ r= read(ads->tcpsocket,ads->tcprecv.buf,1);
if (r==0 || (r<0 && (errno==EAGAIN || errno==EWOULDBLOCK))) {
tcp_connected(ads,*now);
r= 0; goto xit;