Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[Procmail] Probleme avec une regle procmail

11 réponses
Avatar
Vincent Lefevre
Bonjour,

J'ai reçu un spam avec les en-têtes suivants (ajoutés par le serveur
de mail de la machine qui m'héberge):

[...]
Received: (qmail 23860 invoked by uid 1027); 3 Jul 2004 01:37:08 -0000
Date: 3 Jul 2004 01:37:08 -0000
Message-ID: <20040703013708.23859.qmail@ldh.org>
Cc: recipient list not shown: ;
Delivered-To: vinc17-vincent@vinc17.org
Received: (qmail 23846 invoked from network); 3 Jul 2004 01:37:08 -0000
[...]

J'aimerais savoir pourquoi ce message n'a pas été filtré par la règle
suivante de mon .procmailrc (situé sur le serveur):

:0
* ^Date:(.*$)+\
Message-ID: <.*\.qmail@ldh\.org>$(.*$)*\
Delivered-To: vinc17-.*@vinc17\.org
{
EXITCODE=$DEVNULL
:0
/dev/null
}

--
Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/>
100% validated (X)HTML - Acorn / RISC OS / ARM, free software, YP17,
Championnat International des Jeux Mathématiques et Logiques, etc.
Work: CR INRIA - computer arithmetic / SPACES project at LORIA

10 réponses

1 2
Avatar
Olivier Tharan
* Vincent Lefevre <vincent+ (Mon, 5 Jul 2004 08:14:42 +0000 (UTC)):
J'aimerais savoir pourquoi ce message n'a pas été filtré par la règle
suivante de mon .procmailrc (situé sur le serveur):


- mettre la variable VERBOSE=yes dans le .procmailrc
- utiliser un fichier de trace (LOGFILE=...)

:0
* ^Date:(.*$)+
Message-ID: <.*$(.*$)*
Delivered-To: vinc17-.*@vinc17.org


Mets des * devant chaque ligne de règle.

--
olive

Avatar
Vincent Lefevre
Dans l'article <slrncei54k.1md5.olive+,
Olivier Tharan <olive+ écrit:

* Vincent Lefevre <vincent+ (Mon, 5 Jul 2004 08:14:42 +0000 (UTC)):
J'aimerais savoir pourquoi ce message n'a pas été filtré par la règle
suivante de mon .procmailrc (situé sur le serveur):


- mettre la variable VERBOSE=yes dans le .procmailrc
- utiliser un fichier de trace (LOGFILE=...)


Je posais la question pour éviter d'avoir à faire des tests (qui
risquent de prendre pas mal de temps).

:0
* ^Date:(.*$)+
Message-ID: <.*$(.*$)*
Delivered-To: vinc17-.*@vinc17.org


Mets des * devant chaque ligne de règle.


Mais c'est fait: il s'agit d'une seule et même règle (l'ordre de ces
en-têtes est très important, c'est d'ailleurs le point de cette règle).

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% validated (X)HTML - Acorn / RISC OS / ARM, free software, YP17,
Championnat International des Jeux Mathématiques et Logiques, etc.
Work: CR INRIA - computer arithmetic / SPACES project at LORIA


Avatar
GERBIER Eric
Vincent Lefevre wrote:

:0
* ^Date:(.*$)+
Message-ID: <.*$(.*$)*
Delivered-To: vinc17-.*@vinc17.org




Mets des * devant chaque ligne de règle.



Mais c'est fait: il s'agit d'une seule et même règle (l'ordre de ces
en-têtes est très important, c'est d'ailleurs le point de cette règle).


tel que c'est ecrit, il cherche la ligne Date suivit immediatement du
message-id, puis du delivered.
ta regle ne marche pas si les lignes ne sont pas exactement dans cet ordre (ce
qui n'est garanti par rien)

en ecrivant comme ci-dessous, tu n'es pas lié a l'ordre des lignes :
:0
* ^Date:(.*$)+
* ^Message-ID: <.*$(.*$)*
* ^Delivered-To: vinc17-.*@vinc17.org



Avatar
GERBIER Eric
GERBIER Eric wrote:
Vincent Lefevre wrote:


:0
* ^Date:(.*$)+
Message-ID: <.*$(.*$)*
Delivered-To: vinc17-.*@vinc17.org




Mets des * devant chaque ligne de règle.



Mais c'est fait: il s'agit d'une seule et même règle (l'ordre de ces
en-têtes est très important, c'est d'ailleurs le point de cette règle).



tel que c'est ecrit, il cherche la ligne Date suivit immediatement du
message-id, puis du delivered.
ta regle ne marche pas si les lignes ne sont pas exactement dans cet ordre (ce
qui n'est garanti par rien)

en ecrivant comme ci-dessous, tu n'es pas lié a l'ordre des lignes :
:0
* ^Date:(.*$)+
* ^Message-ID: <.*$(.*$)*
* ^Delivered-To: vinc17-.*@vinc17.org


oups, version corrigée sans les passages a la ligne :

:0
* ^Message-ID: <.*$
* ^Delivered-To: vinc17-.*@vinc17.org




Avatar
Vincent Lefevre
Dans l'article <ccdhtq$rk6$,
GERBIER Eric écrit:

Vincent Lefevre wrote:
Mais c'est fait: il s'agit d'une seule et même règle (l'ordre de ces
en-têtes est très important, c'est d'ailleurs le point de cette règle).


tel que c'est ecrit, il cherche la ligne Date suivit immediatement
du message-id, puis du delivered. ta regle ne marche pas si les
lignes ne sont pas exactement dans cet ordre (ce qui n'est garanti
par rien)


Est-ce que tu lis les messages auxquels tu réponds? J'ai dit que
l'ordre des en-têtes est très important. Le test de l'ordre de ces
en-têtes est volontaire.

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% validated (X)HTML - Acorn / RISC OS / ARM, free software, YP17,
Championnat International des Jeux Mathématiques et Logiques, etc.
Work: CR INRIA - computer arithmetic / SPACES project at LORIA


Avatar
Nicolas Le Scouarnec
:0
* ^Date:(.*$)+
Message-ID: <.*$(.*$)*
Delivered-To: vinc17-.*@vinc17.org
Mets des * devant chaque ligne de règle.

Mais c'est fait: il s'agit d'une seule et même règle (l'ordre de ces

en-têtes est très important, c'est d'ailleurs le point de cette règle).


Je pense que cette regle s'attend a tout trouver sur une meme ligne,
c'est peut etre la que ca bloque. ^ indique un début de ligne, et rien
n'indique la fin, et comme les Regexp travaillent ligne/ligne en
général, ca doit bloquer.

Peut-etre en faisant un filtre extérieur avec Perl , a la mode de
SpamAssassin.

--
Nicolas Le Scouarnec



Avatar
Olivier Tharan
* Nicolas Le Scouarnec (Tue, 6 Jul 2004 10:32:55 +0000 (UTC)):
Peut-etre en faisant un filtre extérieur avec Perl , a la mode de
SpamAssassin.


Mail::Audit par exemple. Ou son remplaçant, Email::Filter.

--
olive

Avatar
Vincent Lefevre
Dans l'article ,
Nicolas Le Scouarnec écrit:

:0
* ^Date:(.*$)+
Message-ID: <.*$(.*$)*
Delivered-To: vinc17-.*@vinc17.org
Mets des * devant chaque ligne de règle.

Mais c'est fait: il s'agit d'une seule et même règle (l'ordre de ces

en-têtes est très important, c'est d'ailleurs le point de cette règle).


Je pense que cette regle s'attend a tout trouver sur une meme ligne,


Non. man procmailrc

The following token meanings are special procmail extensions:

^ or $ Match a newline (for multiline matches).

Cf mes $ dans ma regexp.

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% validated (X)HTML - Acorn / RISC OS / ARM, free software, YP17,
Championnat International des Jeux Mathématiques et Logiques, etc.
Work: CR INRIA - computer arithmetic / SPACES project at LORIA




Avatar
Nicolas Le Scouarnec
* ^Date:(.*$)+
Message-ID: <.*$(.*$)*
Delivered-To: vinc17-.*@vinc17.org
Mets des * devant chaque ligne de règle.

Mais c'est fait: il s'agit d'une seule et même règle (l'ordre de ces

en-têtes est très important, c'est d'ailleurs le point de cette règle).
Je pense que cette regle s'attend a tout trouver sur une meme ligne,

Non. man procmailrc

The following token meanings are special procmail extensions:
^ or $ Match a newline (for multiline matches).
Cf mes $ dans ma regexp.


Je l'avais pas vu.
Peut etre en rajoutant un ^ au début autres lignes alors, puisque pour
moi: $ est une fin de ligne.


--
Nicolas Le Scouarnec





Avatar
Vincent Lefevre
Dans l'article ,
Nicolas Le Scouarnec écrit:

* ^Date:(.*$)+
Message-ID: <.*$(.*$)*
Delivered-To: vinc17-.*@vinc17.org
[...]






Non. man procmailrc
The following token meanings are special procmail extensions:
^ or $ Match a newline (for multiline matches).
Cf mes $ dans ma regexp.


Je l'avais pas vu.
Peut etre en rajoutant un ^ au début autres lignes alors, puisque pour
moi: $ est une fin de ligne.


Pour procmail, $ n'est pas une fin de ligne, mais un caractère de
nouvelle ligne (c'est la syntaxe spécifique procmail pour n).
Rajouter un ^ ferait qu'on devrait matcher nn et serait alors
incorrect.

Je signale également que le problème est que ma règle ci-dessus
n'était pas prise en compte, et qu'ajouter ^ ne ferait qu'ajouter
des contraintes supplémentaires (alors qu'il y a en fait déjà
trop de contraintes -- sans que je sache pourquoi).

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% validated (X)HTML - Acorn / RISC OS / ARM, free software, YP17,
Championnat International des Jeux Mathématiques et Logiques, etc.
Work: CR INRIA - computer arithmetic / SPACES project at LORIA






1 2