POLLHUP on never connected socket

Andriy Gapon avg at FreeBSD.org
Fri Sep 2 12:59:58 UTC 2011

on 02/09/2011 14:21 Andrey Chernov said the following:
> On Fri, Sep 02, 2011 at 02:04:34PM +0300, Andriy Gapon wrote:
>> on 02/09/2011 13:40 Jilles Tjoelker said the following:
>>> Ports people have complained about poll() behaviour before, are there
>>> configure scripts that attempt to check if we ever return POLLHUP alone
>>> and only check for POLLIN if not?
>> Not sure about that other software and how POLLIN is related here.
>> The software in question (mozilla nspr) checks for POLLNVAL, POLLERR, POLLPRI
>> and POLLOUT to determine if anything interesting has happened to a connection
>> supposed to be in progress.  They aren't checking for POLLHUP at all and thus
>> they keep thinking that the connection is still in progress when they get it.
> It seems for such case it should return POLLERR too.

I think that I would agree as this is not a graceful disconnect / hang-up but an
error in trying to connect.  Anyway I am not an expert in this matters and I'd
think that POLLHUP should be checked anyway - better safe than sorry.

Andriy Gapon

More information about the freebsd-standards mailing list