From: Vincent Le Gallic Date: Thu, 24 Dec 2015 23:37:37 +0000 (+0100) Subject: Décodage des headers avec un oneliner : adieu la dépendance à un script X-Git-Url: http://gitweb.pimeys.fr/?p=config-20-100.git;a=commitdiff_plain;h=bcc52f86c198e4d1d15a164c27ed3adfdcad5f62 Décodage des headers avec un oneliner : adieu la dépendance à un script --- diff --git a/.procmailrc b/.procmailrc index 6916b27..280b612 100644 --- a/.procmailrc +++ b/.procmailrc @@ -43,13 +43,6 @@ # * Le troisième, custom.final.rules est appliqué tout à la fin, il peut par # exemple servir à définir un dossier par défaut autre que .INBOX -# Attention, certaines règles (pour l'instant commentées par #~#) -# font appel à des scripts. -# Pour qu'elles fonctionnent correctement, il faut que vous -# possédiez les scripts correspondant et que vous adaptiez -# la partie "Scripting" des variables de configuration. -# (cf https://wiki.crans.org/VieCrans/FichiersConfiguration#scripting) - ################################################################################ ##### Commentaires ##### @@ -248,11 +241,6 @@ LOGFILE="${PROCMAILDIR}/logs/procmail.log" ### Scripting # Shell à utiliser pour exécuter des commandes SHELL="/bin/bash" -## Scripts -# Dossier où sont rangés les scripts -SCRIPTSFOLDER="${HOME}/scripts/crans_toolbox/" -# Scripts pour décoder les headers MIME -DECODEHEADERSCRIPT="${SCRIPTSFOLDER}decode_header.pl" ################################################################# @@ -401,6 +389,21 @@ FEDEREZOVHDIR="${FEDEREZADMINDIR}.OVH" +################################################################################ +##### Preprocessing ##### +################################################################################ + +# On décode les champs sur lesquels ont pourrait avoir besoin de matcher +# plus tard la version décodée. On stocke les versions décodées +# dans des variables. +# "formail -cXHeader" récupère le champ Header (-X) en enlevant les \n (-c) +# si le champ fait plusieurs lignes +:0 +* ^X-Mailer: +XMAILER=| formail -cXX-Mailer: | perl -MEncode -pe '$_=encode("iso-8859-1",decode("MIME-Header",$_))' + + + ################################################################################ ##### Règles ##### ################################################################################ @@ -745,19 +748,13 @@ ${CABLAGEDIR}/ # Sur la ML respbats@ -# L'ancienne version de ce filtre ne fonctionne plus car les headers -# de ces mails sont maintenant correctement encodé. -# C'est bien pour le respect des RFC, mais c'est un peu pain in the ass -# p our le trier avec procmail, donc on besoin d'un script -# Ne pas décommenter si vous n'avez pas le script associé. -# (cf https://wiki.crans.org/VieCrans/FichiersConfiguration#scripting) +# On utilise la variable XMAILER peuplée dans la phase de Preprocessing :0 * ^List-Id:.*respbats\.lists\.crans\.org -* ^X-Mailer:\/.* { # Machines supprimées pour chambre invalide :0 - * ? echo "${MATCH}" | ${DECODEHEADERSCRIPT} | grep /usr/scripts/gestion/chambres_vides.py + * XMAILER ?? /usr/scripts/gestion/menage/chambres_invalides.py ${DELETEDMACHINES}/ }