On Sun, 10 Apr 2011 13:54:35 +0200, Julien Valroff wrote: > X-attached: none > > Hi Stevan, > Hello Julien,
> Le dimanche 10 avril 2011 à 13:27:12 (+0200 CEST), Stevan Bajić a > écrit : >> On Sun, 10 Apr 2011 09:06:08 +0200, Julien Valroff wrote: > [...] > >>> The following macro works but creates one unique mail with several >>> attachments, and DSPAM only retrains the first attachment: macro >>> index X "set copy=no mime_forward=yes weed=no resolve=no >>> editor='/bin/true' ns...@domain.com [1] [1] set copy=yes >>> mime_forward=ask-no weed=yes resolve=yes >>> editor='~/.mutt/scripts/killsig %s; /usr/bin/vim %s' " "Mark as >>> spam" >>> Mutt doesn't allow to split actions for each tagged mail (except >>> for >>> print and pipe, using respectively print_split and pipe_split). >>> What >>> do you use (or what would you use) for such action? >> My retraining script that I have in the contrib directory is capable >> to >> retrain multiple signatures at once. Have you looked if it is >> something >> for you? > I am currently playing with it :) I hadn't thought of it immediately > as > I had to exclude it from the Debian package due to the fact it has no > license (my bad, I also have forgotten emailing you about it!). > I think you are right. I wrote that script years ago. I think I only added a copyright notice but no formal license. I think I should add a license to it. Probably AGPLv3. > It works > fine from the command line but for unknown reason, I cannot make it > work > with postfix pipe (and I've deleted the spam I wanted to test with by > error…). Does it require any special flags? I am currently using it > as > follows: dspam-retrain unix - n n - - pipe flags=Ru user=dspam > argv=/usr/local/bin/dspam-retrain-forward.pl --headers-only=yes > --bodies-only=no --client --mode=teft --class=${nexthop} > --source=error > --user ${sender} -o > > smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject > -o mynetworks=127.0.0.1 > I don't think you can use those -o options with pipe. Out of my head I would add this to master.cf =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= dspam-retrain unix - n n - - pipe flags=DRhu user=dspam:dspam argv=/usr/bin/perl /usr/local/bin/dspam-retrain-forward.pl --user ${sender} --client --headers-only=yes --bodies-only=no --class=${nexthop} --source=error =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= And I would ensure with a restirction class that only authenticated users have access to that 'dspam-retrain' service. I would as well not use the --mode option. The retraining script will use the training mode you have specified in your dspam.conf or preference extension. Forcing TEFT has IMHO no additional benefit (okay, okay. No negative effect too, but why adding something that has no benefit?). Can the user dspam execute that retraining script? Maybe this is the issue? How have you setup your Postfix to call that retraining script? Can you post some details? Maybe you have there an error? Don't you see anything in your Postfix log? Do you see that the script is called? > When using the debug mode, it gives: cat > /home/julien/test.msg | dspam-retrain-forward.pl --debug > --headers-only=yes --bodies-only=no --client --mode=teft --class=spam > --source=error --user test DEBUG: Found DSPAM signature > '1,4da11c83154081104012938' in header (attachment). DEBUG: > /usr/bin/dspamc --source=error --class=spam > --signature=1,4da11c83154081104012938 --mode=teft --user test DEBUG: > Found DSPAM signature '1,4da0fcfa154081479215841' in header > (attachment). > DEBUG: /usr/bin/dspamc --source=error --class=spam > --signature=1,4da0fcfa154081479215841 --mode=teft --user test DEBUG: > Found DSPAM signature '1,4da0f7f1154085004845483' in header > (attachment). > DEBUG: /usr/bin/dspamc --source=error --class=spam > --signature=1,4da0f7f1154085004845483 --mode=teft --user test > Looks good IMHO. > By the way, > is there any possibility to test a setup without actually training? > Is > --mode=notrain safe for this? > If I am not wrong then using --debug=yes already just does print what it would do, without executing/training the signature(s). > Cheers, Julien > -- Kind Regards from Switzerland, Stevan Bajić -- .''`. Julien Valroff ~ ~ > : :' : Debian Developer & Free software contributor `. `'` > http://www.kirya.net/ [4] `- 4096R/ E1D8 5796 8214 4687 E416 948C > 859F > EF67 258E 26B1 > ------------------------------------------------------------------------------ > Xperia(TM) PLAY It's a major breakthrough. An authentic gaming > smartphone > on the nation's most reliable network. And it wants your games. > http://p.sf.net/sfu/verizon-sfdev [5] > _______________________________________________ Dspam-user mailing > list > Dspam-user@lists.sourceforge.net [6] > https://lists.sourceforge.net/lists/listinfo/dspam-user [7] Links: ------ [1] mailto:ns...@domain.com [2] mailto:jul...@kirya.net [3] mailto:jul...@debian.org [4] http://www.kirya.net/ [5] http://p.sf.net/sfu/verizon-sfdev [6] mailto:Dspam-user@lists.sourceforge.net [7] https://lists.sourceforge.net/lists/listinfo/dspam-user ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ Dspam-user mailing list Dspam-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dspam-user