Hi,

It seems avahi never requests events different form POLLIN and POLLOUT from me. 
So using select seems to be no problem ...

Nathan

On Fri, Aug 08, 2008 at 04:40:48PM +0200, Nathan Huesken wrote:
> > You have several options that are far more elegant:
> > 
> > 1) Implement the AvahiPoll structure for your existing event loop,
> >    i.e. implement the seven functions defined here:
> > 
> >    http://avahi.org/download/doxygen/struct_avahi_poll.html
> > 
> >    Then, pass this struct to avahi_client_new() and the avahi client
> >    will call those functions whenever there is a new FD or timeout to
> >    sleep on. You should then add a new item to your "struct pollfd"
> >    array (in case you uses poll()) or fd_set (in case you use
> >    select()) everytime the watch_new() function you implemented is
> >    called by the avahi client libraries, and similarly for the other
> >    six functions you'd need to implement.
> 
> Sound good! I have a question to this methode:
> Avahi also tells me what events to wait for, these are.
> POLLIN
> POLLOUT
> POLLERR
> POLLHUP
> So exactly the events "poll" deals with.
> For compatibility reasons I do not want to use poll but select.
> So, I put all the POLLOUT event sockets in the "writefds" and all the others 
> in the "readfds".
> Select should return on connection closed or connection error for any socket 
> in the "readfds", correct?
> 
> But how do I determine the event type? I do I distinguish between POLLIN, 
> POLLERR and POLLHUP without reading from the socket?
> I need this to react with the correct event.
> 
> Any Ideas?
> Thanks!
> Nathan
> 
> _______________________________________________
> avahi mailing list
> avahi@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/avahi
_______________________________________________
avahi mailing list
avahi@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/avahi

Reply via email to