On 7 Mar 2017, at 16:06, Harald Welte laforge@gnumonks.org wrote:
Hi Holger,
Hey!
I think we should try to get this fixed in upstream. If there's an IRIX work-around, then it shuold be a compile-time decision and only enabled on IRIX, right?
It won't help the problem in the short term, as fixed/updated glib would first have to dissipate through their next release, get picked up by distributions, etc. - but sooner or later somebody else will run into the same trap, with glib disabling POLERR on Linux and thus destroying quite a bit of capability the operating system offers.
I didn't know how poll works (hehe, used select all my life). Putting these into pollfd.events have no effect only the kernel will set the on the revents. For us they would indicate the intention of sofia-sip but then the RECVERR will not be signaled in the exception set unless we set another socket option (for a socket we can't access directly).
So the joke is on me and I didn't know what I was doing when implementing poll with select. So...
a.) We do POLLIN | POLLERR when a socket becomes readable b.) We merge the code to use ppoll (added in 2.6.14)
cheers holger