March 2002
Sun Mon Tue Wed Thu Fri Sat
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31          
Feb   Apr
 Find out about the XML feeds of this site  
05:50 02/09/02
i have some ideas for this page. oh so much work.

building this website is starting to be fun.

 

 

where wave meets particle No Simpler than this:

The Eudora SpamThing

Michael Ax
ax@spamcop.net
--------------------------------------------------------------------------------
I wrote this tool to help me automate interfacing eudora pro with spamcop.
It needs some customizing of your eudora setup to integrate as intended.
It's not been subject to other people's feedback, so go slow. it works for me.
--------------------------------------------------------------------------------
SpamThing is (C) Copyright 2002 by Michael Ax, All Rights Reserved.
--------------------------------------------------------------------------------
This code is experimental and free to use. It works for me and it may not work
for you. Make backups before you experiment and understand that there is zero
warranty expressed or implied here. If you need more, do not use this code.
--------------------------------------------------------------------------------
Release 2: 2/9/2002 3:46 AM v.04 added hr 'host-replacement' parameter to enable providing username and password to spamcop! Thanks Petzl!
Release 1: 2/8/2002 11:11 PM v.03 works as designed, first public release.


#0 begin: find a directory for the SpamThing files

download from
http://www.sonic.net/users/ax/gems/Eudora/SpamThing/Files/

#0.1 adjust the paths listed in SpamThing.ini
the paths are read from the ini file instead of from the registry.
read SpamThing.Sample.ini for info about the settings.

read
http://radio.weblogs.com/0100169/categories/helloWorld/2002/02/04.html
http://radio.weblogs.com/0100169/categories/helloWorld/2002/02/05.html
for information about the flow i've setup for myself with this code.

there are no registry keys just an ini file and your filters for you to adjust


--------------------------------------------------------------------------------


#1 step: create three mailboxes for this to work:

>>> _Spam
final resting place for all spam related message traffic. delete

>>> _SpamCop
temporary spot for spamcop accepted spam candidates. they accrue here
until you run the manual filter to process them. see below.

>>> _SpamCan
spot for manually identified spam which somehow slipped through whatever
filters you may have. drag messages here so they get picked up by SpamThing

#1.fyi: i configured eudora to never open any mailbox or message automatically
and would not be surprised if you would want to do the same just to keep the
interface clean and quiet.


--------------------------------------------------------------------------------


#2 step: customize your filters.

#2.1: enter these rules into eudora at the top of your list of filters.
alternatively, exit eudora for a moment and add them to the top of filters.pce
(insert the rules without my comment lines and without spaces before the
first line starting with "rule" in your filters.pce file)


read what you're seeing here and adjust the paths to suit you:

**** MANUAL RULE TO PROCESS SPAM CANDIDATES ACCEPTED BY SPAMCOP
***** this filter is run by hand on all messages in the _SpamCop mailbox
***** by the time SpamThing has opened the confirmation messages in the browser
***** _SpamCop will be empty and the spam dealt with.

rule From:nobody@spamcop.net
transfer _Spam.mbx
status 4
label 6
notifyApp "F:\My Documents\My Mail\Eudora\spamhlpr\SpamThing.exe" ok %6
stop
manual
header From:
verb contains
value nobody@spamcop.net
conjunction and
header Subject:
verb starts
value SpamCop has accepted

**** INCOMING MAIL FILTER to route accepted spam candidates to _SpamCop bin

rule From:nobody@spamcop.net
transfer _SpamCop.mbx
stop
incoming
manual
header From:
verb contains
value nobody@spamcop.net
conjunction ignore
header
verb contains
value

**** OUTBOUND MAIL FILTER to route spamcop submissions to _Spam

rule To:submit.<mymagiccode>@spam.spamcop.net
transfer _Spam.mbx
stop
outgoing
manual
header To:
verb contains
value submit.<mymagiccode>@spam.spamcop.net
conjunction or
header To:
verb contains
value spam@sonic.net

 

#2.2: enter these rules at the bottom of your filter stack:  -------------------


**** ignore/optional
**** explicitly stop processing of your filter stack for pop accounts which
**** nobody knows about here. messages sent to these will wind up in the InBox.

rule To:iblog@mailbox.sonic.net
stop
incoming
manual
header To:
verb contains
value iblog@mailbox.sonic.net
conjunction or
header To:
verb contains
value iblogput@mailbox.sonic.net

**** ignore: this rule serves as a comment only

rule :'obvious' spam: x-from_ not from
label 5
header
verb contains
value 'obvious' spam: x-from_ not from
conjunction ignore
header
verb contains
value

**** EXPLICITLY TEST FOR "X-FROM_:" CONTAINED IN "FROM:"
**** this only works automatically if you have identified and
**** routed all mailing lists that you are on in your eudora filters.
**** without all your list susbscriptions having been dealt with, this
**** filter will just make you work by reporting everything a spam-candidate.
**** (doing that is ok, just dont confirm/submit legit lists as spam)
****** REPEAT THIS RULE ONCE PER POP ACCOUNT CHECKED!

rule X-From_ax@spamcop.net
transfer _Spam.mbx
status 3
label 3
notifyApp "F:\My Documents\My Mail\Eudora\spamhlpr\SpamThing.exe" go %6
stop
incoming
manual
header X-From_
verb contains
value ax@spamcop.net
conjunction and
header From:
verb !contains
value ax@spamcop.net

**** ignore: this rule serves as a comment only

rule :send To:/Cc: mailbox
label 5
header
verb contains
value send To:/Cc: mailbox
conjunction ignore
header
verb contains
value


**** EXPLICITLY MOVE TO/CC'd mail to the destination mailbox for that account.
***** if you dont want target mailboxes by pop-account then
****** drop the 'transfer' but keep the STOP

rule To:ax@spamcop.net
transfer ax@spamcopnet.mbx
open 1
stop
incoming
header To:
verb contains
value ax@spamcop.net
conjunction or
header Cc:
verb contains
value ax@spamcop.net

**** ignore: this rule serves as a comment only

rule :now spam ='s unrecognized bcc's
label 5
header
verb contains
value now spam ='s unrecognized bcc's
conjunction ignore
header
verb contains
value

**** WHATEVER IS LEFT HERE NOW IS considered an unsolicited BCC.
***** these get highlighted in color and are sent off as spam-candidates.

rule To:ax@
transfer _Spam.mbx
status 3
label 7
notifyApp "F:\My Documents\My Mail\Eudora\spamhlpr\SpamThing.exe" go %6
stop
incoming
manual
header To:
verb !contains
value ax@
conjunction and
header Cc:
verb !contains
value ax@</P>

**** ignore: another comment only rule

rule :new filters. insert above to activate --------------------------------------------------
label 5
header
verb contains
value new filters. insert above to activate --------------------------------------------------
conjunction ignore
header
verb contains
value


#2.2 done. you had to think about explicit bcc's here, didn't you? no matter,
you can safely ignore the filters suggested in 2.2 and leave them out entirely.
just drag all spam that you wind up with in your inbox to _SpamCan.

you should keep the rule >>> EXPLICITLY TEST FOR "X-FROM_:" CONTAINED IN "FROM:"
because its not only useful but if you commit to tracking your lists this rule
will serve to invoke "SpamThing go" which will process your _SpamCan manual bin.

if you do not want the ("X-FROM_:" CONTAINED IN "FROM:") rule, just make
yourself a shortcut for "SpamThing go" and run it when there's stuff in the
_SpamCan mailbox.

ok??


--------------------------------------------------------------------------------


#3. there is no step three.

SpamThing has two modes. it may be called like this:


from anywhere:
"SpamThing go"   will do nothing but process the _SpamBin

from inside eudora:
"SpamThing go %6"   forwards candidates (explicit and from _SpamBin) to spamcop.
"SpamThing ok %6"   open browser windows for each accepted spam candidate.

--------------------------------------------------------------------------------


spamthing can take any of the values provided in the ini file on the
commandline. ask me how if need be.

spamthing leaves eudora's .tmp files and its own .msg files in the system's
temp directory. i might do something about that later.

spamthing does nothing else. i'll be happy to share the top-level source
for review but can't share everything you need to compile this yourself.
not right now anyhow.

this program has ZERO user-interface.
--------------------------------------------------------------------------------
if you find this useful, let others know by giving me a link please.

@ 01:20 03/09/02
© Michael Ax, 2002