"Benninghoff, John" <[EMAIL PROTECTED]> writes:
> I should add that this problem exists in nessus 1.2.4.
Try to update nessus-libraries/libnessus/network.c from CVS or apply
this patch. I'm not sure it is enough but I do not want to commit all
my modifications...
RCS file: /usr/local/cvs/nessus-libraries/libnessus/network.c,v
retrieving revision 1.84
retrieving revision 1.85
diff -r1.84 -r1.85
1064d1063
< {
1066,1073d1064
< struct timeval tv;
< fd_set wr;
< again:
< FD_ZERO(&wr);
< FD_SET(fd, &wr);
< tv.tv_sec = 1;
< tv.tv_usec = 0;
< if(select(fd+1, NULL, &wr, NULL, &tv) > 0)
1075,1085c1066,1069
< return send(fd, data, length, i_opt);
< /* Here, we do not try "IDS evasion", as this is not
< a "Nessus registered connection - we handle this case before */
< }
< else {
< if(errno == EINTR)goto again;
< fprintf(stderr, "[%d] nsend() : select() failed (%s)\n",
< getpid(),
< strerror(errno));
< return -1;
< }
---
> int n = send(fd, data, length, i_opt);
> if (n < 0)
> perror("send");
> return n;