On Thu, 2010-07-22 at 14:54 -0700, Neil Hodge wrote: > > I may be wrong, but I understand Neil is talking about a single, ISP > > provided email address. Just about the same as any Gmail, Yahoo or GMX > > address. There is NO way for a 5xx SMTP response. In fact, he was > > explicitly talking about an IMAP account, so the mail has been delivered > > already. Nothing can be done about that. Except better filtering and > > delivering spam to a dedicated folder to keep the Inbox clean. > > That is a correct description of the situation. > > Ted's attitude seems to be "do it right, or don't do it all", which, > usually, I am completely for. That being said, I don't actually build > my own car, for the sake of it being "right". In this case, given my > various time constraints (trying to finish my research/dissertation), > it is the case that the prefect is the enemy of the good. So, either > I will do it "wrong" (and maybe it won't work that way), or I won't do > it at all . . .
There is nothing wrong with the (general) setup I outlined, in a situation like yours, where the message has been delivered and accepted by the MX already. The "right" way Ted described, of multiple levels of defense and rejecting spam at the SMTP level is certainly right, though only applies in a situation where one does have control over the MX and the domain as a whole. If, however, you are merely granted ownership of an email address, using and depending on some third-party's SMTP accepting mail on your behalf -- there's other shades of "right". Perfectly acceptable shades of right. FWIW, exactly such a situation [1] is what drove me to SA years ago in the first place, and the beginning of a long and exciting journey. The rest is history. guenther [1] Minus the idea to run SA on multiple servers, and instead use IMAP right from the beginning, even though I was using a single MUA exclusively at that time... ;) -- char *t="\10pse\0r\0dtu...@ghno\x4e\xc8\x79\xf4\xab\x51\x8a\x10\xf4\xf4\xc4"; main(){ char h,m=h=*t++,*x=t+2*h,c,i,l=*x,s=0; for (i=0;i<l;i++){ i%8? c<<=1: (c=*++x); c&128 && (s+=h); if (!(h>>=1)||!t[s+h]){ putchar(t[s]);h=m;s=0; }}}