On Wed, Aug 11, 2004 at 10:57:31AM -0400, Adam J. Henry wrote:
> I'm curious how I can enable further debugging to show why this
> message returns an error, but most others work fine. Can anyone offer
> any suggestions?
>
>
> Here is the error I am receiving:
>
> LOG: MAIN
> <hank@???>: dspam transport output: An error was
> detected while processing a file of BSMTP input.
> LOG: MAIN
> == hank@??? R=dspam T=dspam defer (0): Child
> process of dspam transport returned 2 from command:
> /usr/local/exim/bin/exim
According to 42.12., Incoming batched SMTP "[...] writes a more verbose
version, for human consumption, to the standard error file." Where is
the standard error file? I first checked the panic and reject logs.
Then I ran a failed message in debug mode using 'exim -d -M', but I
could not find any useful information explaining the cause of this
failure. Can anyone help me, please?
The debug session follows:
>>>>>>>>>>>>>>>> Local deliveries >>>>>>>>>>>>>>>>
--------> hank@??? <--------
locking /usr/local/exim/var/spool/db/retry.lockfile
locked /usr/local/exim/var/spool/db/retry.lockfile
opened hints database /usr/local/exim/var/spool/db/retry: flags=0
dbfn_read: key=T:hank@???
no retry record exists
search_tidyup called
changed uid/gid: local delivery to hank <hank@???> transport=dspam
uid=8 gid=8 pid=28985
auxiliary group list: <none>
home=/tmp current=/tmp
set_process_info: 28985 delivering 1BwJ7f-0003L8-CF to hank using dspam
direct command:
argv[0] = /usr/local/bin/dspam
argv[1] = --stdout
argv[2] = --deliver=innocent,spam
argv[3] = --mode=teft
argv[4] = --feature=chained,noise
argv[5] = --user
argv[6] = ${local_part}@${domain}
direct command after expansion:
argv[0] = /usr/local/bin/dspam
argv[1] = --stdout
argv[2] = --deliver=innocent,spam
argv[3] = --mode=teft
argv[4] = --feature=chained,noise
argv[5] = --user
argv[6] = hank@???
dspam transport entered
direct command:
argv[0] = /usr/local/exim/bin/exim
argv[1] = -oMr
argv[2] = ds
argv[3] = -bS
direct command after expansion:
argv[0] = /usr/local/exim/bin/exim
argv[1] = -oMr
argv[2] = ds
argv[3] = -bS
Writing message to pipe
writing data block fd=9 size=0 timeout=3600
writing data block fd=9 size=57 timeout=3600
writing data block fd=9 size=27 timeout=3600
set_process_info: 28987 reading output from |/usr/local/exim/bin/exim -oMr ds -bS
writing data block fd=9 size=5 timeout=3600
process 28989 running as transport filter: write=10 read=11
process 28990 writing to transport filter
copying from the filter
writing data block fd=10 size=2032 timeout=3600
waiting for filter process
waiting for writing process
writing data block fd=9 size=1790 timeout=3600
end of filtering transport writing: yield=1
writing data block fd=9 size=0 timeout=3600
writing data block fd=9 size=2 timeout=3600
dspam transport yielded 1
search_tidyup called
dspam transport returned DEFER for hank@???
added retry item for T:hank@???: errno=0 0 flags=0
post-process hank@??? (1)
LOG: MAIN
<hank@???>: dspam transport output: An error was detected while processing a file of BSMTP input.
LOG: MAIN
== hank@??? R=dspam T=dspam defer (0): Child process of dspam transport returned 2 from command: /
usr/local/exim/bin/exim
>>>>>>>>>>>>>>>> deliveries are done >>>>>>>>>>>>>>>>
Is Dspam what is returning the non-zero exit status? Perhaps this is
why no specific information is written to the standard error file?
thanks again,
hank