[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
RE: [Libevent-users] Read failures on Unix socket
> 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 majordomo@xxxxxxxxxxxxx with
unsubscribe libevent-users in the body.