procmail
[Top] [All Lists]

Re: formail -D generates empty msg. when duplicate found?

1999-12-12 12:22:21
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