Kyle Johnson wrote:
Running a little test:
mail:/usr/local/virtual/hanoveruniform.com/sodoherty # cat
message.txt | /usr/local/bin/maildrop -V 10 -d
sodo...@hanoveruniform.com
[snip]
maildrop: Delivering to | /usr/local/bin/mailbot -A "From: " -t
"/usr/local/virtual/hanoveruniform.com/sodoherty/message.txt"
/usr/sbin/sendmail -f ""
maildrop: Delivery complete.
maildrop: Delivery complete.
Look towards the bottom, at: maildrop: Delivering to |
/usr/local/bin/mailbot -A "From: " -t
"/usr/local/virtual/hanoveruniform.com/sodoherty/message.txt"
/usr/sbin/sendmail -f ""
-t is empty, as is the $RECIPIENT variable, it seems.
No, -t contains the path to your message.txt file, but I do see that
the RECIPIENT variable expanded to null in the two places where it was
used.
My mailflow is like this:
Internet -> Postfix (virtual_transport = lmtp:unix:/tmp/dspam.sock)
-> dspam (TrustedDeliveryAgent "/usr/local/bin/maildrop -d %u") ->
maildir Could the problem be that dspam isn't passing the variables
that are needed? This makes sense since they weren't filled in when
I used them in my script.
That is quite possible. I had assumed you were using the Courier MTA.
Postfix is an entirely different animal. You will have to check which
environment variables are being set. Try this:
Put this line in your .mailfilter:
`env > env.txt`
(including the back-ticks)
This will drop a copy of the environment into the user's home
directory. You can take a look at this file to see which variables
are set and then modify your mailbot line to use those variables.