[Exim] Spamassassin and transport failure

Top Page
Delete this message
Reply to this message
Author: John Horne
Date:  
To: Exim Users List
Subject: [Exim] Spamassassin and transport failure
Hello,

I have been looking to use spamassassin (version 2.20) on our central
mailhubs. I have run it successfully on my linux PC with Exim 4.04. So I
thought I'd move it onto one of the mailhubs - a Sun Solaris 8 box with Exim
3.36.

It all seems to work okay for messages submitted from the mailhub itself
(i.e. I log onto the mailhub and invoke:
exim jhorne@???
('tracy' is the name of the system). The message headers show the
received protocol as 'spam-scanned'. However, if I return to my work PC and
send a message so that it goes via 'tracy', then I get an error returned:

The following address(es) failed:

    jhorne@???
      Child process of spamcheck transport returned 2 from command:
      /usr/local/exim/bin/exim


The following text was generated during the delivery attempt:

------ jhorne@??? ------

An error was detected while processing a file of BSMTP input.
The error message was:

    554 Unexpected end of file


The SMTP transaction started in line 0.
The error was detected in line 4.
0 previous messages were successfully processed.
The rest of the batch was abandoned.
554 Unexpected end of file
Transaction started in line 0
Error detected in line 4

==========================================

It then gives a copy of the original message. I installed spamassassin
according to the web site:
http://dman.ddts.net/~dman/config_docs/exim3_spamassassin.html

I am using spamd which was started as root.

The relevant bits of the Exim configure file are:

# Spam Assassin            (transport)
spamcheck:
  driver = pipe
  command = /usr/local/exim/bin/exim -oMr spam-scanned -bS
  transport_filter = /usr/local/bin/spamc
  bsmtp = all
  home_directory = /tmp
  current_directory = /tmp
  user = exim
  group = mail
  no_return_path_add
  log_output
  return_fail_output
  prefix =
  suffix =


# Spam Assassin        (director)
spamcheck_router:
  no_expn
  no_verify
  domains = tracy.csd.plymouth.ac.uk : localhost
  local_parts = jhorne
  condition = "${if and { {!def:h_X-Spam-Flag:} \
                          {!eq {$received_protocol}{spam-scanned}}} {1}{0}}"
  driver = smartuser
  transport = spamcheck


-------------------

I have searched the mailing list archives and can find similar problems when
using the spamcheck.pl script (?), but no real solution. I can find no-one
having this problem when using spamd. I should add that for the trusted
users 'exim' is included, so I can see no reason to have a problem with the
pipe. The error seems to indicate that it is a problem with running the exim
binary, but I have no idea what it is - why does it get an unexpected end of
file? Because local messages work okay I can't run exim with '-d9' since it
won't show any problem (actually I have just done that and I'll check the
output, but it looks okay and no indication of what may cause a problem
remotely).

Very strange. Anyway, as usual these things happen on a Friday afternoon :-)

If anyone has any ideas about this then I'd be grateful.


John.

------------------------------------------------------------------------
John Horne, University of Plymouth, UK           Tel: +44 (0)1752 233914
E-mail: jhorne@???
PGP key available from public key servers