Randall Gellens wrote:
At 8:48 AM -0400 5/12/08, Joe Maimon wrote:
I am looking to make them work together, Blackberry users corrupting
spool drops is becoming a real problem (easily fixed by removing top
few lines of spool file that appear to be a partially deleted msg).
I understand that there are possibly two patchsets for locking, the
ntua patch and one from Clifton Royston.
I would like to take a stab at these, so if anyone can point me at
some resources, I would apppreciate it.
What locking method is uw-mapd using (and do you mean uw-imapd?).
Yes, not quite certain, it looks like flock()
I am of the impression the problem is more of the duration of the lock
and what is locked.
While at this time you are not supposed to run in server mode if
anything else can modify the spool file, in practice the performance
costs require it.
So if all that is necessary is to make sure the spool file is locked for
the duration of the pop session, I can live with that.
Qpopper uses flock() and dot-lock, depending on the operation. On some
platforms, Qpopper has to emulate flock(), which can cause
interoperability problems with uw-imapd.
Assuming you run ./configure prior to make, the config.h file produced
should indicate if Qpopper needs to emulate flock(). If you 'fgrep
HAVE_FLOCK config.h' what does it show?
fgrep HAVE_FLOCK config.h
#define HAVE_FLOCK 1