> Hm. Looking at the epoll output in the "nonblocking" case, it doesn't > look like Libevent is doing anything weird here: epoll_wait() is > honest-to-goodness saying "Okay to read on fd 15"... > > 23:08:05 epoll_wait(4, {{EPOLLIN, {u32=15, u64=15}}}, 32, 0) = 1 > > ...but the recvfrom is saying EAGAIN on the same socket right after: > > 23:08:05 recvfrom(15, 0xbfc03be4, 1844, 0, 0xbfc04318, 0xbfc03be0) = -1 > EAGAIN ( > Resource temporarily unavailable)
Could it be that epoll_wait actually returned a EPOLLHUP or EPOLLERR events ? The code in libevent's epoll.c suggests that these can show up as read events. How is my application suppose to identify these case ? > Is is possible that snort is sending out-of-band data, or ancillary > data, or something? man 7 unix says "Unix domain stream sockets do not support the notion of out-of-band data." *********************************************************************** To unsubscribe, send an e-mail to majord...@freehaven.net with unsubscribe libevent-users in the body.