[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] send all email from certain From: addresses into a spam


On Thu, Jul 04, 2019 at 11:29:20PM +0900, Mark Fletcher wrote:
> On Wed, Jul 03, 2019 at 06:44:42PM +0300, Reco wrote:
> > On Wed, Jul 03, 2019 at 11:39:22AM -0400, Greg Wooledge wrote:
> > > 
> > > procmail might have worked, but it's more of a pain to learn procmail
> > > than it is to write my own filter.  I also get more flexibility this way.
> > > 
> > > The write-up of my approach is at
> > > <https://lists.debian.org/debian-user/2017/02/msg00100.html>.
> > 
> > Maildrop does exactly this. For instance, 
> > 
> > ^From:.*User Name/
> > 
> > Transforms to this snippet of .mailfilter:
> > 
> > if ( /^From:.*User Name/:h )
> > 	to /dev/null
> > 
> > Works with exim, postfix and probably qmail OOB.
> > 
> Could this also be expanded to delete not only mail from a particular 
> user, but also any mail *replying to* that mail as well? In other words, 
> get rid of not only the mail that starts a thread, but the entire 
> thread?

I don't see a universal way of doing this, but I'd try a match against a
References header.
For instance, your e-mail has this References header:

References: <[🔎] E1hihDN-00068j-56@enotuniq.net>
        <[🔎] 20190703153922.GZ2450@eeg.ccf.org>
        <[🔎] E1hihR4-0006A9-VE@enotuniq.net>

So, assuming that you wish to block threads that are started by me,
participated by me, etc, you'll need (:h should correctly process a
multiline header):

if ( /^From:.*recoverym4n@enotuniq.net/:h )
	to /dev/null
if ( /^References:.*enotuniq.net/:h )
	to /dev/null

But that assumes that everybody in the thread are using a sane e-mail
client. And relies on Message-ID that can include literally anything
(but it does include a domain most of the time).

> Or would that be a task better done in mutt?

That's an option too. The obvious disadvantage is that you see e-mails
and (sub)threads that you want to delete.


Reply to: