<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.hoenzb
        {mso-style-name:hoenzb;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal>It is possible. I have written one for Mailborder v5 in PHP. I have gone so far as to write an entire new scanning engine in C and PHP as well for Mailborder v5. The milter won’t work with MailScanner because it is designed to work with the upcoming Mailborder scan engine, but I can share some information to help build a MailScanner milter. <o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>--<o:p></o:p></p><p class=MsoNormal>Jerry Benton<o:p></o:p></p><p class=MsoNormal><a href="http://www.mailborder.com/"><span style='color:#0563C1'>www.mailborder.com</span></a><br>+1   (843) 800-8605<o:p></o:p></p><p class=MsoNormal>+44 (020) 3883-8605<br><br><o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><b>From:</b> MailScanner [mailto:mailscanner-bounces+jerry.benton=mailborder.com@lists.mailscanner.info] <b>On Behalf Of </b>Shawn Iverson<br><b>Sent:</b> Wednesday, December 13, 2017 18:50<br><b>To:</b> MailScanner Discussion <mailscanner@lists.mailscanner.info><br><b>Subject:</b> Re: postfix and mailscanner<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>For anyone curious, I am researching creating a mailscanner milter for postfix.  I have gotten as far to conclude it is possible and that it might bring additional functionality when using postfix and mailscanner together.  For example, it would be possible to reject a message for various reasons and still have detailed reports on the messages.  It would also be possible to have more granular whitelisting capabilities (virus scan only, spam scan only, no scan, etc.).  It is a ways off, but I've been looking at milter code on various things for a while.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>On Wed, Dec 13, 2017 at 5:36 PM, Jerry Benton <<a href="mailto:jerry.benton@mailborder.com" target="_blank">jerry.benton@mailborder.com</a>> wrote:<o:p></o:p></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><p class=MsoNormal style='margin-bottom:12.0pt'>Because MailScanner does not use a proper milter for Postfix. Instead, it<br>gets the email from a hold directory and drops it back in the Postfix queue.<br><br><br>This is how it is supposed to work:<br><br>Postfix > milter > hold > scan > injection to Postfix > delivery<br><br><br>This is how it actually works:<br><br>Postfix > hold > scan > drop into Postfix<br><br><br>Technically, this is incorrect.<br><br><br>--<br>Jerry Benton<br><a href="http://www.mailborder.com" target="_blank">www.mailborder.com</a><br><a href="tel:%2B1%20%20%20%28843%29%20800-8605">+1 (843) 800-8605</a><br><a href="tel:%2B44%20%28020%29%203883-8605">+44 (020) 3883-8605</a><br><br><br>-----Original Message-----<br>From: MailScanner<br>[mailto:<a href="mailto:mailscanner-bounces%2Bjerry.benton">mailscanner-bounces+jerry.benton</a>=<a href="mailto:mailborder.com@lists.mailscanner.in">mailborder.com@lists.mailscanner.in</a><br>fo] On Behalf Of Maarten<br>Sent: Wednesday, December 13, 2017 17:34<br>To: MailScanner Discussion <<a href="mailto:mailscanner@lists.mailscanner.info">mailscanner@lists.mailscanner.info</a>><br>Subject: postfix and mailscanner<br><br>Don't want to start a flame war here, but just a question, why does<br><a href="http://postfix.org" target="_blank">postfix.org</a> advise against using mailscanner? Saw the following on the<br>postfix website:<br><br>mailscanner: system, works with Postfix and other MTAs. WARNING: This<br>software uses unsupported methods to manipulate Postfix queue files<br>directly. This will result in corruption or loss of mail. The mailscanner<br>authors have sofar refused to discuss a proper access API or protocol.<br><br>When reading through mailinglists it seems that some mails can get lost as<br>in how mailscanner handles mail from the postfix mailqueue, and that it's<br>safer to use one of the virus/spam/content filters that that uses the SMTP<br>proxy interface or the Milter Interface. I wouldn't know if this is true or<br>how to know if any mails every got lost(is there a way to know of having<br>lost mails), but have there ever been talks between postfix devs and<br>mailscanner devs about this?<br><br><br><br><br>--<br>MailScanner mailing list<br><a href="mailto:mailscanner@lists.mailscanner.info">mailscanner@lists.mailscanner.info</a><br><a href="http://lists.mailscanner.info/mailman/listinfo/mailscanner" target="_blank">http://lists.mailscanner.info/mailman/listinfo/mailscanner</a><br><span style='color:#888888'><br><br><br><br><span class=hoenzb>--</span><br><span class=hoenzb>MailScanner mailing list</span><br><span class=hoenzb><a href="mailto:mailscanner@lists.mailscanner.info">mailscanner@lists.mailscanner.info</a></span><br><span class=hoenzb><a href="http://lists.mailscanner.info/mailman/listinfo/mailscanner" target="_blank">http://lists.mailscanner.info/mailman/listinfo/mailscanner</a></span></span><o:p></o:p></p></blockquote></div><p class=MsoNormal><br><br clear=all><o:p></o:p></p><div><p class=MsoNormal><o:p> </o:p></p></div><p class=MsoNormal>-- <o:p></o:p></p><div><div><div><div><div><div><div><div><div><div><div><div><p class=MsoNormal>Shawn Iverson, CETL<o:p></o:p></p><div><p class=MsoNormal>Director of Technology<o:p></o:p></p></div><div><p class=MsoNormal>Rush County Schools<o:p></o:p></p></div><div><p class=MsoNormal>765-932-3901 x1171<o:p></o:p></p></div><div><p class=MsoNormal><a href="mailto:iversons@rushville.k12.in.us" target="_blank">iversons@rushville.k12.in.us</a><o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><img border=0 width=96 height=96 style='width:1.0in;height:1.0in' id="_x0000_i1025" src="https://docs.google.com/uc?export=download&id=0Bw5iD0ToYvs_cy1OZFNIZ0drYVU&revid=0Bw5iD0ToYvs_UitIcHVIWkJVVTl2VGpxVUE0d0FQcHBIRXk4PQ"><img border=0 id="_x0000_i1026" src="https://docs.google.com/uc?export=download&id=0Bw5iD0ToYvs_Zkh4eEs3R01yWXc&revid=0Bw5iD0ToYvs_QWpBK2Y2ajJtYjhOMDRFekZwK2xOamk5Q3Y0PQ"><o:p></o:p></p></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></body></html>