To reproduce: - Install postfix - Install libmilter - Install mimedefang - Hook up mimedefang in the postfix config The mimedefang milter fails, causing all email delivery to come to a halt. The error reported in syslog is "Permission denied", although that is not the problem - strace reveals that postfix does not communicate properly with mimedefang, it expects mimedefang to say something that it doesn't. To fix: - Unmerge mimedefang which is at version 2.57 - Download mimedefang 2.63 from official website - ./configure --bindir=/usr/bin + make + make install If you have an empty /usr/local/bin (as my Gentoo does), mimedefang will get much farther than before, but will now fail because it finds the /usr/local/bin and just assumes that mimedefang.pl is placed there. The error shown in syslog is "SLAVE DIED UNEXPECTEDLY". To keep your slaves alive and breathing, just symlink /usr/local/bin/mimedefang.pl to /usr/bin/mimedefang.pl, and... Voila! everything works like a charm. Wanted: * ebuild upgraded to 2.63, since upstream fixed whatever bug is preventing this from working OOTB. * upstream fixed to look for /usr/local/bin/mimedefang.pl instead of /usr/local/bin. alternatively, a gentoo patch on top which does this.. Reproducible: Always Steps to Reproduce: see above. Actual Results: see above. Expected Results: see above. see above.
Running ./configure with --prefix=/usr causes the files to be installed in the right place, but `strings /usr/bin/mimedefang-multiplexor` reveals that it still looks in /usr/local/bin for the mimedefang.pl exectuable. Annoying.. Anyway.
Created attachment 137970 [details, diff] mimedefang ebuild diff for version 2.63 version bump mimedefang to 2.63 and postfix compatibility. Just proposing this ebuild wich compiles fine but did not test hooking it up with postfix content filtering.
Created attachment 137997 [details, diff] mimedefang ebuild diff for version 2.63
Created attachment 138176 [details, diff] mimedefang-2.63.ebuild.diff sorry for the mistakes
Fixed in version 2.64, but using blocking dependency atoms.