(Courriels de diversion: <ensorcelleront@approuverai-somnolent.com> <ecloraient@repugner-bolides.com> <partagerons@sensibilisant-rauques.com> <extrairez@enracines-situent.com> <gravirais@atomiques-expieras.com> <philosopherons@detecterent-polemiquerais.com> <scandalisa@retranscrirai-manchettes.com> <sautillements@trajets-machinal.com> <ballaster@delimitee-reinstallera.com> <intimidante@conquerions-refermerai.com> )
Bonsoir, Sébastien Dinot a écrit : | Je me débats depuis plusieurs semaines avec mon fichier .procmailrc | pour essayer d'identifier les messages comportant une pièce jointe | suspecte (noms se terminant par l'une des extensions MS-Windows | classiques). | [...] Je me réponds à moi-même vu que j'ai trouvé la réponse à mon problème et que, personne n'ayant pu m'aider, la solution est toujours bonne à diffuser. Pour que les variables soient recherchées et substituées dans les conditions, il faut insérer entre le caractère '*' qui annonce la condition et le début de l'expression régulière le drapeau '$' (se reporter aux pages de manuel 'procmailrc' et 'procmailex' pour les détails). Le filtre devient donc : ---------------------------------------------------------------------- WS='[ ]*($[ ]+)*' EXTLIST='bat|chm|com|dll|dot|exe|hta|js|ocx|pif|scr|shs|vba|vbs|zip' :0H * $ ^content-type:${WS}(multipart/mixed|application/octet-stream) { :0B * $ ^content-disposition:${WS}(attachment|inline);${WS}(file)?name=.*\.(${EXTLIST}) ${MAILDIR}/messages_louches } ---------------------------------------------------------------------- Et tout fonctionne ! Démonstration en basculant en mode verbeux : Sans le drapeau '$' : ---------------------------------------------------------------------- seb@achille:~$ procmail -m .procmailrc.test < ~/mail/testseb@achille:~$ cat ~/mail/procmail.log.testprocmail: Assigning "WS=[ ]*($[ ]+)*" procmail: Assigning "EXTLIST=bat|chm|com|dll|dot|exe|hta|js|ocx|pif|scr|shs|vba|vbs|zip" procmail: No match on "^content-type:${WS}(multipart/mixed|application/octet-stream)" ^^^^^ Pas de substitution de ${WS} procmail: Executing "spamassassin" procmail: [17455] Wed Apr 14 22:27:52 2004 procmail: Match on "^X-Spam-Status: Yes" procmail: Locking "/home/seb/mail/spam.lock" procmail: Assigning "LASTFOLDER=/home/seb/mail/spam" procmail: Opening "/home/seb/mail/spam" procmail: Acquiring kernel-lock procmail: Unlocking "/home/seb/mail/spam.lock" From seb Wed Apr 14 10:49:54 2004 Subject: [CA] Re: Extended Mail System Folder: /home/seb/mail/spam 45077 ---------------------------------------------------------------------- Avec le drapeau '$' : ---------------------------------------------------------------------- seb@achille:~$ procmail -m .procmailrcc.test < ~/mail/testseb@achille:~$ cat ~/mail/procmail.log.testprocmail: Assigning "WS=[ ]*($[ ]+)*" procmail: Assigning "EXTLIST=bat|chm|com|dll|dot|exe|hta|js|ocx|pif|scr|shs|vba|vbs|zip" procmail: Match on "^content-type:[ ]*($[ ]+)*(multipart/mixed|application/octet-stream)" ^^^^^^^^^^^^^^^^^^ Substitution de ${WS} procmail: Match on "^content-disposition:[ ]*($[ ]+)*(attachment|inline);[ ]*($[ ]+)*(file)?name=.*\.(bat|chm|com|dll|dot|exe|hta|js|ocx|pif|scr|shs|vba|vbs|zip)" procmail: Assigning "LASTFOLDER=/home/seb/mail/messages_louches" procmail: Opening "/home/seb/mail/messages_louches" procmail: Acquiring kernel-lock From seb Wed Apr 14 10:49:54 2004 Subject: [CA] Re: Extended Mail System Folder: /home/seb/mail/messages_louches 42369 ---------------------------------------------------------------------- Sébastien -- Sébastien Dinot, sdinot@april.orgSecrétaire de l'APRIL (http://www.april.org) Association pour la Promotion et la Recherche en Informatique Libre -------------------------------------------------------------------- Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>