Hi,
we are using sendmail together with procmail as delivery agent,
and cucipop as POP3 server. Both procmail and cucipop use
dotlocking, fcntl(), lockf() as locking strategies (Solaris 2.6).
Once in a while cucipop complains about "Error locking xyz's mailbox".
The reason is a stale dotlock on xyz's mailbox file. On the next
mail delivery, procmail will remove the stale dotlock, but until then
the user has problems accessing his/her mailbox. Cucipop can no
longer update the mailbox file - it just waits for the lock to
disappear, until a session timeout occurs or the client closes the
connection. I have no idea why the stale lock exists at all. From
logfile data I can see that it was set by cucipop in the first
place.
I did some tests and set a fcntl() lock on a mailbox. Procmail
and cucipop honor this lock just fine. There are no shell accounts
on this box, so we don't have to worry about other MUAs. No NFS.
I am tempted to remove dotlocking from cucipop, in order to get rid
of this problem. Of course, cucipop should be fixed for a more robust
dotlock handling. Avoiding dotlocking alltogether is just a quick
workaround. Will I run into other problems without it?
Thanks,
Juergen Georgi