I found the problem.
Instead of hardcoded to use /bin/sh, maildrop looks up the shell of the
invoking user and uses it to flock the pipe.
I changed the shell of "vpopmail" to /bin/sh and now things work. I wonder
if there is a better way.
Andrew
Greetings,
I am running FreeBSD 4.5, qmail 1.0.3, vpopmail 5.3.9 (with seekable
option set to Yes, if it matters) and things have been working quite
well. I recently want to try out maildrop 1.5.0 (for using SpamProbe).
=== The following original environment works as expected ===
server# cat /var/vpopmail/domains/achan.com/.qmail-default
| /var/vpopmail/bin/vdelivermail '' bounce-no-mailbox
=== The following most simple "wrapper" filter doesn't work ===
server# cat /var/vpopmail/domains/achan.com/.qmail-default
| /usr/local/bin/maildrop -V 5 filter_file
server# cat /var/vpopmail/domains/achan.com/filter_file
CMD='| /var/vpopmail/bin/vdelivermail "" bounce-no-mailbox'
exception {
to "$CMD"
}
=== The following are the error messages ====
I'm afraid I wasn't able to deliver your message to the following
addresses.
This is a permanent error; I've given up. Sorry it didn't work out.
<ach...@achan.com>:
Message start at 0 bytes, envelope sender=vpopmail
maildrop: Attempting filter_file
default-filter(1): CMD='/var/vpopmail/bin/vdelivermail ""
bounce-no-mailbox'
default-filter(2): Trapping exceptions.
maildrop: Delivering to | /var/vpopmail/bin/vdelivermail ""
bounce-no-mailbox
Unable to execute /nonexistent
maildrop: Delivery complete.
default-filter(2): Trapped exception.
maildrop: Delivering to /var/mail/vpopmail
maildrop: Appending to /var/mail/vpopmail.
maildrop: Delivery complete.
One thing to note is that /nonexistent is the shell of the "vpopmail"
user.
Any pointers will be most appreciated.
Many thanks!