On 2011-07-13 at 10:14 -0700, David Mathog wrote: > Nevertheless, none of the headers defined by "add_header" in any of > those many configuration files actually show up in the messages. > Instead the only headers created are those defined in exim.conf in this > section:
SpamAssassin's added headers rely upon the message itself being transported through SA, modified by it, before delivery. By contrast, Exim is asking spamd to take a look at the message and report back on it; spamd doesn't get to modify the message at all. > Is there a different exim configuration that would let spamassassin use > the headers defined in its configuration files instead? In particular I > want the X-Spam-Status header that results from: > > add_header all Status "_YESNO_, score=_SCORE_ required=_REQD_ > tests=_TESTS_ autolearn=_AUTOLEARN_ version=_VERSION_" > > which is defined in those configuration files but isn't showing up in > the scanned email messages. Exim gets $spam_report, so you could use clear_report_template and then add stuff explicitly to the report, to get just that data. The spamd protocol: http://svn.apache.org/repos/asf/spamassassin/trunk/spamd/PROTOCOL contains a PROCESS command, and now HEADERS; I haven't thought about it deeply, but I think that supporting this in Exim would be non-trivial, because of the life-cycle of messages and headers. However, it might be feasible to use HEADERS and filter the results to any headers starting "X-Spam" and do an implicit headers_add of those. If you want to write a patch, we'd probably accept it if the change in behaviour is optional, triggered by an ACL control or somesuch; anything you write (even without that control) increases the odds of it going in. You're looking at spam.c and probably using setup_header() so that the new headers are treated as ACL-added. -Phil -- ## List details at https://lists.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://wiki.exim.org/
