Heh I just learned something new.  Meta rules are set to priority 500 by
default.  So even using metas shouldn't break anything, unless someone
manually set them to low priority.

So I would suggest not using any tag depends, simply use priority around 5
(10-30 are already DCC/Razor/Pyzor which will take a while if not using
async). This way also doesn't matter if DKIM plugin is loaded or not.

On Mon, Apr 20, 2020 at 05:29:11PM +0300, Henrik K wrote:
> 
> In case of FromNameSpoof, the priority method will probably break...  if
> some other rule in priority 0 is including it in metas, it will set priority
> back to 0..  so uh yeah using set_tag in that case is probably the only
> sensible and directly supported method.  But you have to also handle the
> case of someone not loading DKIM plugin at all.  Obviously then there won't
> be a DKIMCHECKDONE tag.
> 
> On Mon, Apr 20, 2020 at 05:22:45PM +0300, Henrik K wrote:
> > 
> > DKIM check is not async, so simply use priority for eval order?  This is
> > what AWL/TxRep already do, running at prio 1000, DKIM is done by then..
> > 
> > Of course more elegant solution could be designed, but it would require
> > rewriting lot of plugins..
> > 
> > 
> > On Mon, Apr 20, 2020 at 03:50:52PM +0200, Giovanni Bechis wrote:
> > > Hi,
> > > for something I am working on I need a dependency between my new code and 
> > > DKIM.
> > > DKIM sets a tag only if the signature is valid, so using 
> > > $pms->action_depends_on_tags doesn't always work.
> > > Atm I added a new DKIMCHECKDONE tag on my tree which will be always 
> > > populated even if no DKIM tag is present.
> > > Any other options to do that ? What about all other plugins ? Should we 
> > > do this where needed or should we write a general, different solution ?
> > > 
> > >  Regards
> > >   Giovanni
> > > 
> > > Index: lib/Mail/SpamAssassin/Plugin/DKIM.pm
> > > ===================================================================
> > > --- lib/Mail/SpamAssassin/Plugin/DKIM.pm        (revision 1876746)
> > > +++ lib/Mail/SpamAssassin/Plugin/DKIM.pm        (working copy)
> > > @@ -971,6 +971,7 @@
> > >      } else {
> > >        dbg("dkim: signature verification result: none");
> > >      }
> > > +    $pms->set_tag('DKIMCHECKDONE', 1);
> > >    }
> > >  }
> > >  

Reply via email to