Hi,
I am running exim 4.50 with virtual domains/users. Some of the users
get their mails checked for spam by a seperate transport. Since
yesterday some mails were rejected, because of problems with this
transport. The following appeared in the mainlog:
---/---
2006-02-09 13:19:49 1F7Am3-0008Uf-W1 <= ebay-698272660-29c094adII12607e1@??? H=fmmailgate01.web.de [217.72.192.221] P=esmtp S=30388 id=43EB3250.00000082@???
2006-02-09 13:24:49 1F7Am3-0008Uf-W1 <pat@???>: spamcheck transport output: An error was detected while processing a file of BSMTP input.
2006-02-09 13:24:49 1F7Am3-0008Uf-W1 ** pat@??? R=spamscan T=spamcheck: Child process of spamcheck transport returned 2 from command: /usr/sbin/exim4
2006-02-09 13:24:49 1F7Aqv-0008WE-Ah <= <> R=1F7Am3-0008Uf-W1 U=Debian-exim P=local S=31716
2006-02-09 13:24:49 1F7Am3-0008Uf-W1 Completed
2006-02-09 13:24:49 1F7Aqv-0008WE-Ah => ebay-698272660-29c094adii12607e1@??? <ebay-698272660-29c094adII12607e1@???> R=dnslookup T=remote_smtp H=emasmail2.emarsys.net [81.223.46.30]
2006-02-09 13:24:49 1F7Aqv-0008WE-Ah Completed
---/---
The generated bounce message contains something like the following:
---/---
This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:
mail@???
local delivery failed
The following text was generated during the delivery attempt:
------ mail@??? ------
An error was detected while processing a file of BSMTP input.
The error message was:
421 Lost incoming connection
The SMTP transaction started in line 0.
The error was detected in line 3.
0 previous messages were successfully processed.
The rest of the batch was abandoned.
421 Lost incoming connection
Transaction started in line 0
Error detected in line 3
------ This is a copy of the message, including all the headers. ------
...
---/---
What is quite strange in my opinion is that the error is a 4xx error (which
seems appropriate), but the sender got this error message and delivery has
failed.
I include the relevant parts of the config for reference:
---/---
spamscan:
driver=accept
domains= +hosted_domains
condition= ${if and { {eq{${lookup pgsql{ \
SELECT spam_check FROM mail_address WHERE \
domain_name='${quote_pgsql:$domain}' AND \
local_part='${quote_pgsql:$local_part}' \
}}}{t}} \
{!def:h_X-Spam-Flag:} \
{!eq {$received_protocol}{spam-scanned}}} \
}
no_verify
transport= spamcheck
spamcheck:
driver = pipe
command = /usr/sbin/exim4 -oMr spam-scanned -bS
use_bsmtp = true
transport_filter = /usr/bin/spamc -u "${lookup pgsql{\
SELECT username FROM domain WHERE domain_name='$domain'}\
{$value}}"
log_output = true
return_fail_output = true
return_path_add = false
message_prefix =
message_suffix =
---/---
Any ideas what the problem is? This mailserver has been running for around 3
years now, without such problems. And even if there are problems during the spam check,
why is the message bounced instead of just returning a temporary error?
Thanks for help in advance.
Marco