procmail
[Top] [All Lists]

Re: Interpreting the 'w' flag

2004-05-16 06:40:54

    >> For example, I have this recipe:
    >> 
    >> :0 W: cksum.lock
    >> | pycksum -v $HOME/tmp/spam.cache

    Sean> FTR, you cited the manpage description of 'w' (lowercase), but
    Sean> you're using 'W' (uppercase) in the recipe you're asking about -
    Sean> while the two are essentially the same, differing only in that 'W'
    Sean> (uppercase) suppresses the program failure message which would
    Sean> appear in the log, I think it's worth noting anyway.  Flags are
    Sean> case sensitive.

Right, and that was my intent, though maybe for the wrong reason.  I really
just want to exit with 1 or 0.  I was incorrectly interpreting 'W' as
suppressing failures altogether.  'w' is what I want.

    >> If pycksum exits with a 0 status procmail will consider the message
    >> delivered, right?

    Sean> ... (I presume from the name of the program you're using, it's
    Sean> probably a checksum program, and therfore it should probably be
    Sean> reading the WHOLE file, so wouldn't normally run afoul of this
    Sean> condition).

Yes.  I'm computing several partial checksums from the message after
stripping out stuff that might vary across similar spams (urls, etc), then
want to exit with 0 status if one or more subsets of the partial checksums
match.  The idea isn't original with me.  I got the idea from Justin Mason
who indicated that SpamAssassin uses a similar technique.  My checksum
program is just my interpretation of that idea.

My confusion stemmed from two problems.  First, I had a bug in my checksum
program.  Second, thinking I had screwed up the return values I had them
backwards.  Upon rereading the procmail man page I corrected the return
values, but it started marking most messages as "duplicates".  That's when I
began to doubt my interpretation of the man page.  This morning I found and
corrected the bug.  It seems to be doing a much better job at squashing
duplicates now.

Thanks,

Skip

_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail

<Prev in Thread] Current Thread [Next in Thread>