gamin 0.1.7
Alex Dupre
ale at FreeBSD.org
Wed Feb 8 12:05:56 PST 2006
eculp at encontacto.net wrote:
> I'm a bit confused. With this port will the fam/gamin conflict with
> courier still exist or will gamin be used in place of fam?
gamin is a replacement for fam. Unfortunately it's not 100% compatible
with fam. suspend/resume monitor is not implemented for security
reasons, but the main *undocumented* difference is the use of the
select(2) system call to check if there are new events to be read. For
different reasons it may be that select() doesn't find any new events,
while FAMPending find them, and viceversa. The only safe and correct way
to check for pending events before calling a non-blocking FAMNextEvent
is to call FAMPending before and after the select() system call (and
return true as soon as any call to FAMPending return true).
I don't know why courier-imap doesn't work with gamin. If the problem
was a bug in gamin, maybe I've fixed it, but if it was due to one of the
differences exposed above then the problem remains unless we fix the
courier code to work with gamin.
--
Alex Dupre
More information about the freebsd-ports
mailing list