On Fri, 9 Nov 2007, Mark Martinec wrote:
>> SMFI_VERSION is defined in libmilter/mfapi.h so it's evaluated at 
>> compile-time.  It's not sent down from the MTA.
>
> I think you are wrong. It is packed into a an options-negotiation 
> command SMFIC_OPTNEG and passed from MTA to a milter on a session 
> startup.

That may be, but if you look at the prototype for xxfi_negotiate(), 
there's no place where that value is ever exposed to the filter.  All you 
get is a pair of unsigned longs which indicate the facilities offered by 
the MTA, and you can return a pair of unsigned longs which tell the MTA 
which of those you want to use.

It is by way of these flag arrays that the filter can see what facilities 
are available.  It never gets to know what version of milter the MTA 
(server-side) is running, and doesn't need to know.  What you do get is 
SMFI_VERSION from libmilter/mfapi.h which tells you what version of the 
milter library (client-side) you have and thus what facilities on the 
client side are available.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
dkim-milter-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dkim-milter-discuss

Reply via email to