Hi all,
I'm enjoying using dovecot deliver with qmail+vpopmail+dspam. It works mostly fine, I like the indexing and sieve features with dovecot deliver.
I would like to get more details on trouble, the log entry is just :
" 2009-11-18_20:38:55.64778 delivery 50833: deferral: "
As you see, there no reason for the deferral. How can I make deliver more verbose ?
I also have a vpopmail alias issue. Because some domains (sadly) needs a catchall, and to keep using the useful vpopmail alias features, I'm using the following ugly script :
"
#!/bin/sh
email=/usr/sbin/valias -- $1 2>/dev/null | cut -d" " -f3
if [ -z "$email" ];then
email=$1
t=/usr/sbin/vuserinfo -n -- $1 2>&1>/dev/null
t=$?
if [ "$t" == "255" ];then
domain=echo "${1}" | cut -d'@' -f 2
dir=/usr/sbin/vdominfo -d $domain 2> /dev/null| head -1
email=cat ${dir}/.qmail-default | head -1 | awk -F# '{ print $2 }'
if [ "$email" == "bounce-no-mailbox" ];then
email=$1
fi
fi
fi
echo $email
"
my .qmail-default file contains :
"
#bounce-no-mailbox
| /usr/bin/dspam --client --deliver=innocent,spam --user /usr/sbin/vrealemails $EXT@$USER
--stdout | /usr/bin/preline -f /usr/lib/dovecot/deliver -d /usr/sbin/vrealemails $EXT@$USER
"
or if using a catchall :
"
#catchall@domain.com
| /usr/bin/dspam --client --deliver=innocent,spam --user /usr/sbin/vrealemails $EXT@$USER
--stdout | /usr/bin/preline -f /usr/lib/dovecot/deliver -d /usr/sbin/vrealemails $EXT@$USER
"
I don't like this way for design and security reasons and would prefer a more consistent approach. The vpopmail alias lookup should be made internally by deliver, and unlike my script, handle one to many aliasing.
The catchall feature is (sadly) also needed, my implementation is ugly, in practice it works, but is limited as the catchall address must be on the same host. I'm thinking about adding a specific option to the deliver command line, but I'm not sure that's the better way to do it.
Help needed please
Stéphane