Amavis-new et des messages aux accents bizarres!
Voici le fruit de 3 jours de recherche!
Si vous avez une configuration incluant Amavisd-New pour filtrer les courriels, et que les messages en texte clair ont des accents bizarres, ce blog vous intéresse!
La raison pour laquelle vous avez ce problème, est que libnet, depuis la version 1.20, transforme tout le texte transigeant à travers elle en UTF-8. Amavisd-New utilise Net::SMTP et Net::Cmd, deux composantes de LibNet.
Une solution existe!
En appliquant cette patch sur Net/CMD.pm, le problème disparait!
Copiez le texte de la prochaine citation dans un fichier texte vide :
--- Net/Cmd.pm~ Fri Oct 27 13:08:07 2006
+++ Net/Cmd.pm Thu Feb 8 17:32:52 2007
@@ -22,6 +22,4 @@
}
-my $doUTF8 = eval { require utf8 };
-
$VERSION = "2.27";
@ISA = qw(Exporter);
@@ -395,6 +393,4 @@
my $arr = @_ == 1 && ref($_[0]) ? $_[0] : \@_;
my $line = join("" ,@$arr);
-
- utf8::encode($line) if $doUTF8;
return 0 unless defined(fileno($cmd));
Ensuite, trouvez votre fichier Net/Cmd.pm :
locate Net/Cmd.pm
Rendez-vous dans le répertoire où ce fichier réside.
Exécutez :
patch Cmd.pm /chemin/vers/votre/fichier/patch.txt
Redémarrez amvisd-new.. et tout est beau!
Pour tester exécutez sur votre serveur :
telnet localhost 25
helo localhost
mail from: <root@localhost>
rcpt to: <root@localhost>
data
Subject: test héhéhé
test
é
è
à
ç
.
quit
Maintenant, allez voir vos courriels du compte root. Le sujet et le contenu du message devrait avoir les bons accents!