era eriksson <era(_at_)iki(_dot_)fi> writes:
On Sun, 12 Dec 1999 08:45:19 -0800, gary(_at_)Intrepid(_dot_)Com (Gary Funck)
wrote:
A question: how is procmail's message cache organized?
It's an, er, um, circular file :-) [You mean formail's]
You can grok it by just looking at it. Message-Id:s are null
terminated and the place where the next one will be written is marked
with a double null. When you exceed the maximum file size, Procmail
starts overwriting the start of the file. So you see something like
Start of file
v
ssage-id(_at_)recently>(NULL)(NULL)verwritten>(NULL)<fairly-old(_at_)long(_dot_)ago>(NULL)
<... zip ahead to near the end of the file ...>
<something>(NULL)<last-one(_at_)before(_dot_)wrap>(NULL)<latest.me
^ End of file
Close, but not quite. formail wraps complete Message-Id:s only, so the
first entry in the file will always be a complete one and the file can
grow to one Message-Id: longer than the specified length.
Philip Guenther