Le vendredi 22 décembre 2006 à 11:31 +0100, Paolo Bonzini a écrit :
> >> and it does not work, e.g., on file descriptors.  Sorry.  :-)
> > 
> > Could you please provide more information about the problem? (Note that
> > the current CVS version doesn't work on socket, which is not much
> > better). Providing your test case would help.
> 
> Just open a file, and poll it.  It should give POLLIN | POLLRDNORM, 
> while with your patch recv fails with ENOTSOCK.

I'm currently working out this issue. I'll send a patch in a while.

Note that the current CVS version of the poll() module should fail in
this exact same way on all architecture expect OSX since it use recv(),
which would then return an error, and then:

avail = (errno == ESHUTDOWN || errno == ECONNRESET ||
         errno == ECONNABORTED || errno == ENETRESET) ? 0 : -1;

[...]

else if (avail == -1)
  pfd[i].revents |= POLLERR;


Regards,

-- 
Yoann Vandoorselaere | Responsable R&D / CTO | PreludeIDS Technologies
Tel: +33 (0)8 70 70 21 58                  Fax: +33(0)4 78 42 21 58
http://www.prelude-ids.com



Reply via email to