diff options
author | Andrew Tridgell <tridge@samba.org> | 1997-12-04 08:10:49 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 1997-12-04 08:10:49 +0000 |
commit | 8bac91a6e7a3601b093cb64e9cb3bcc1663fb4d4 (patch) | |
tree | 26bfdadd9186a4d760cfeabda2eba418c3128e2b | |
parent | d9bb3a4eba9c630370fea0fa297b176fd2afb532 (diff) | |
download | samba-8bac91a6e7a3601b093cb64e9cb3bcc1663fb4d4.tar.gz samba-8bac91a6e7a3601b093cb64e9cb3bcc1663fb4d4.tar.xz samba-8bac91a6e7a3601b093cb64e9cb3bcc1663fb4d4.zip |
allow for zero size reads in asyncdns. These can happen after a signal
-rw-r--r-- | source/nmbd/asyncdns.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/source/nmbd/asyncdns.c b/source/nmbd/asyncdns.c index c87e0907543..f15880080f5 100644 --- a/source/nmbd/asyncdns.c +++ b/source/nmbd/asyncdns.c @@ -162,13 +162,16 @@ void run_dns_queue(void) { struct query_record r; struct packet_struct *p, *p2; + int size; if (fd_in == -1) return; - if (read_data(fd_in, (char *)&r, sizeof(r)) != sizeof(r)) { - DEBUG(0,("Incomplete DNS answer from child!\n")); - fd_in = -1; + if ((size=read_data(fd_in, (char *)&r, sizeof(r))) != sizeof(r)) { + if (size) { + DEBUG(0,("Incomplete DNS answer from child!\n")); + fd_in = -1; + } return; } |