On Wed, 2005-12-07 at 11:40 +0100, Felix Schwarz wrote: > I'm using this transport filter in Exim: > > filter_transport: > driver = pipe > command = /usr/sbin/exim ... > transport_filter = /some/command ... > log_output = true > temp_errors = * > message_prefix = "" > message_suffix = "" > user = exim > group = exim > return_path_add = false > > Sometimes the filter will fail due to the called script exiting with a > non zero exit code. In this case the message stays in the queue and exim > will try to deliver it with the next queue run. But exim sends the mail > nevertheless therefore the mail gets duplicated on every queue run.
well, that's what your configuration asks for, isn't it? any non-zero exit code is a temporary error which means Exim will retry delivery later. if your script sends the e-mail even it returns a non-zero code, you'll need to change temp_errors to be more specific, or just remove the line. http://www.no.exim.org/exim-html-4.50/doc/html/spec_29.html#IX2166 > How can I stop exim sending the additional mail? I want that the mail > will stay in the queue until it could pass the transport filter. oh, now I get it, I think. but why are you using command = /usr/sbin/exim? you can use transport_filter with the smtp driver, too. at least it will be easier to debug it if you simplify it that way. -- Kjetil T. -- ## List details at http://www.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://www.exim.org/eximwiki/
