<p>Yep.</p>
<div class="gmail_quote">Den 18 okt 2011 09:44 skrev &quot;--[ UxBoD ]--&quot; &lt;<a href="mailto:uxbod@splatnix.net">uxbod@splatnix.net</a>&gt;:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Though that will also set it to zero if null though will it not Glenn ?<br>
--<br>
Thanks, Phil<br>
<br>
----- Original Message -----<br>
<br>
&gt; The num+0 thing is to &quot;trick&quot; perl to always treat imthe scalar as a<br>
&gt; number.<br>
&gt; I have close to no free time to look at this, but ... will try as<br>
&gt; best as I can to check this over.<br>
&gt; Cheers<br>
&gt; --<br>
&gt; -- Glenn<br>
&gt; Den 17 okt 2011 18:37 skrev &quot;--[ UxBoD ]--&quot; &lt; <a href="mailto:uxbod@splatnix.net">uxbod@splatnix.net</a> &gt;:<br>
<br>
&gt; &gt; &gt;From what I can see it is a trivial fix. In PFDiskStore.pm around<br>
&gt; &gt; &gt;line 359 it has:<br>
&gt;<br>
<br>
&gt; &gt; printf $Tf &quot;%15ld %15ld %15ld&quot;, $HeaderLength, $HeaderStartPos,<br>
&gt; &gt; $recipcounter;<br>
&gt;<br>
&gt; &gt; printf $Tf &quot; %15ld&quot;, $message-&gt;{PostfixQmgrOpts}<br>
&gt;<br>
&gt; &gt; if $message-&gt;{PostfixQmgrOpts} ne &quot;&quot;;<br>
&gt;<br>
&gt; &gt; seek $Tf, 0, 0;<br>
&gt;<br>
<br>
&gt; &gt; I believe this needs to become:<br>
&gt;<br>
<br>
&gt; &gt; printf $Tf &quot;%15ld %15ld %15ld&quot;, $HeaderLength, $HeaderStartPos,<br>
&gt; &gt; $recipcounter;<br>
&gt;<br>
&gt; &gt; printf $Tf &quot; %15ld&quot;, $message-&gt;{PostfixQmgrOpts}<br>
&gt;<br>
&gt; &gt; if $message-&gt;{PostfixQmgrOpts} ne &quot;&quot;;<br>
&gt;<br>
&gt; &gt; printf $Tf &quot; %15ld&quot;, $HeaderLength;<br>
&gt;<br>
&gt; &gt; seek $Tf, 0, 0;<br>
&gt;<br>
<br>
&gt; &gt; This then sets the actual content length in field 5 of the queue<br>
&gt; &gt; file. I am not sure why the line above is there though as<br>
&gt; &gt; Postfix.pm<br>
&gt; &gt; always appears to set PostfixQmgrOpts to at least zero:<br>
&gt;<br>
<br>
&gt; &gt; if (defined $numbers[3]) {<br>
&gt;<br>
&gt; &gt; $MailScanner::Postfix::DataStructure = 1;<br>
&gt;<br>
&gt; &gt; $message-&gt;{PostfixQmgrOpts} = $numbers[3]+0;<br>
&gt;<br>
&gt; &gt; }<br>
&gt;<br>
<br>
&gt; &gt; I have tested this and it appears to work fine. Thoughts Jules or<br>
&gt; &gt; anybody else ?<br>
&gt;<br>
&gt; &gt; --<br>
&gt;<br>
&gt; &gt; Thanks, Phil<br>
&gt;<br>
<br>
&gt; &gt; ----- Original Message -----<br>
&gt;<br>
<br>
&gt; &gt; &gt; Hello,<br>
&gt;<br>
<br>
&gt; &gt; &gt; I am working on the MailScanner and ZendTo integration and have<br>
&gt; &gt; &gt; hit<br>
&gt;<br>
&gt; &gt; &gt; the same problem that Markus had with respect to setting the true<br>
&gt;<br>
&gt; &gt; &gt; message size when the content has been changed. Within<br>
&gt;<br>
&gt; &gt; &gt; PFDiskStore.pm I see that the message size is being written plus<br>
&gt; &gt; &gt; the<br>
&gt;<br>
&gt; &gt; &gt; data offset:<br>
&gt;<br>
<br>
&gt; &gt; &gt; printf $Tf &quot;%15ld %15ld %15ld&quot;, $HeaderLength, $HeaderStartPos,<br>
&gt;<br>
&gt; &gt; &gt; $recipcounter;<br>
&gt;<br>
&gt; &gt; &gt; printf $Tf &quot; %15ld&quot;, $message-&gt;{PostfixQmgrOpts}<br>
&gt;<br>
&gt; &gt; &gt; if $message-&gt;{PostfixQmgrOpts} ne &quot;&quot;;<br>
&gt;<br>
&gt; &gt; &gt; seek $Tf, 0, 0;<br>
&gt;<br>
<br>
&gt; &gt; &gt; now to check these figures I stopped MailScanner, and only<br>
&gt; &gt; &gt; started<br>
&gt; &gt; &gt; up<br>
&gt;<br>
&gt; &gt; &gt; Postfix, and then sent a message with an attachment. If the queue<br>
&gt;<br>
&gt; &gt; &gt; file one saw:<br>
&gt;<br>
<br>
&gt; &gt; &gt; *** ENVELOPE RECORDS 247A13580015 ***<br>
&gt;<br>
&gt; &gt; &gt; message_size: <a href="tel:21966%20613%201%200" value="+12196661310">21966 613 1 0</a> 21966<br>
&gt;<br>
&gt; &gt; &gt; message_arrival_time: Mon Oct 17 10:30:47 2011<br>
&gt;<br>
&gt; &gt; &gt; create_time: Mon Oct 17 10:30:47 2011<br>
&gt;<br>
&gt; &gt; &gt; named_attribute: rewrite_context=local<br>
&gt;<br>
<br>
&gt; &gt; &gt; and after the file has been stripped:<br>
&gt;<br>
<br>
&gt; &gt; &gt; *** ENVELOPE RECORDS 30E7C358026F ***<br>
&gt;<br>
&gt; &gt; &gt; message_size: 2283 613 1 0 21966<br>
&gt;<br>
&gt; &gt; &gt; message_arrival_time: Mon Oct 17 10:33:23 2011<br>
&gt;<br>
&gt; &gt; &gt; create_time: Mon Oct 17 10:33:23 2011<br>
&gt;<br>
&gt; &gt; &gt; named_attribute: rewrite_context=local<br>
&gt;<br>
<br>
&gt; &gt; &gt; Note that the first field in message_size has been correctly<br>
&gt; &gt; &gt; reduced.<br>
&gt;<br>
&gt; &gt; &gt; When this message then hits the remote MTA it is still being<br>
&gt;<br>
&gt; &gt; &gt; rejected due to the size, even though we have stripped the<br>
&gt;<br>
&gt; &gt; &gt; attachment. I believe the problem is that the final field in<br>
&gt;<br>
&gt; &gt; &gt; message_size part of the envelope is not being updated as-well.<br>
&gt; &gt; &gt; Any<br>
&gt;<br>
&gt; &gt; &gt; ideas what the field is ? I am struggling to find it in the<br>
&gt; &gt; &gt; Postfix<br>
&gt;<br>
&gt; &gt; &gt; source code; and on checking Postfix.pm I see the following code<br>
&gt; &gt; &gt; has<br>
&gt;<br>
&gt; &gt; &gt; been hashed out:<br>
&gt;<br>
<br>
&gt; &gt; &gt; # If $5 is set then we have a new data structure in the file<br>
&gt;<br>
&gt; &gt; &gt; $MailScanner::Postfix::DataStructure = 0;<br>
&gt;<br>
&gt; &gt; &gt; #if ($5 ne &quot;&quot;) {<br>
&gt;<br>
&gt; &gt; &gt; # $MailScanner::Postfix::DataStructure = 1;<br>
&gt;<br>
&gt; &gt; &gt; # $message-&gt;{PostfixQmgrOpts} = $5+0;<br>
&gt;<br>
&gt; &gt; &gt; #}<br>
&gt;<br>
<br>
&gt; &gt; &gt; Any thoughts please ?<br>
&gt;<br>
&gt; &gt; &gt; --<br>
&gt;<br>
&gt; &gt; &gt; Thanks, Phil<br>
&gt;<br>
<br>
&gt; &gt; &gt; --<br>
&gt;<br>
&gt; &gt; &gt; MailScanner mailing list<br>
&gt;<br>
&gt; &gt; &gt; <a href="mailto:mailscanner@lists.mailscanner.info">mailscanner@lists.mailscanner.info</a><br>
&gt;<br>
&gt; &gt; &gt; <a href="http://lists.mailscanner.info/mailman/listinfo/mailscanner" target="_blank">http://lists.mailscanner.info/mailman/listinfo/mailscanner</a><br>
&gt;<br>
<br>
&gt; &gt; &gt; Before posting, read <a href="http://wiki.mailscanner.info/posting" target="_blank">http://wiki.mailscanner.info/posting</a><br>
&gt;<br>
<br>
&gt; &gt; &gt; Support MailScanner development - buy the book off the website!<br>
&gt;<br>
&gt; &gt; --<br>
&gt;<br>
&gt; &gt; MailScanner mailing list<br>
&gt;<br>
&gt; &gt; <a href="mailto:mailscanner@lists.mailscanner.info">mailscanner@lists.mailscanner.info</a><br>
&gt;<br>
&gt; &gt; <a href="http://lists.mailscanner.info/mailman/listinfo/mailscanner" target="_blank">http://lists.mailscanner.info/mailman/listinfo/mailscanner</a><br>
&gt;<br>
<br>
&gt; &gt; Before posting, read <a href="http://wiki.mailscanner.info/posting" target="_blank">http://wiki.mailscanner.info/posting</a><br>
&gt;<br>
<br>
&gt; &gt; Support MailScanner development - buy the book off the website!<br>
&gt;<br>
<br>
&gt; --<br>
&gt; MailScanner mailing list<br>
&gt; <a href="mailto:mailscanner@lists.mailscanner.info">mailscanner@lists.mailscanner.info</a><br>
&gt; <a href="http://lists.mailscanner.info/mailman/listinfo/mailscanner" target="_blank">http://lists.mailscanner.info/mailman/listinfo/mailscanner</a><br>
<br>
&gt; Before posting, read <a href="http://wiki.mailscanner.info/posting" target="_blank">http://wiki.mailscanner.info/posting</a><br>
<br>
&gt; Support MailScanner development - buy the book off the website!<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>
<br>
Before posting, read <a href="http://wiki.mailscanner.info/posting" target="_blank">http://wiki.mailscanner.info/posting</a><br>
<br>
Support MailScanner development - buy the book off the website!<br>
</blockquote></div>