-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Thu, 26 Apr 2007, Steffen Kaiser wrote:
Hello,
after digging in the CMU Sieve lib sources, I found where the problem stems from.
Somehow (I don't know why) in dovecot-sieve-1.0.1/src/libsieve/script.c:671
/* first, let's figure out if we should respond to this */
ret = makehash(hash, a->u.vac.send.addr,
a->u.vac.send.msg);
u.vac.send.addr is NULL.
Although, in dovecot-sieve-1.0.1/src/libsieve/bc_eval.c:256 I get the impression that this error handled by silently skipping vacation, if no return-path is available. It didn't happened for me. BTW: I want to have those replys ;-)
The reason is that by default sendmail does not pass forth Return-Path to the MDA and Dovecot deliver does not use the -f option for this reason.
The attached patch changes this by leting deliver_get_return_address() return any information available:
str = mail_get_first_header(mail, "Return-Path");
if(!str)
str = envelope_sender != DEFAULT_ENVELOPE_SENDER
? envelope_sender /* -f option */
: mail_get_first_header(mail, "From"); /* That's not the
most correct one, but alas */
The problem still exists, if neither of the three information is available, but, well ... .
Now, vacation is working.
Bye,
Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux)
iQEVAwUBRmAmqC9SORjhbDpvAQKR9gf/W3rEkHaJwAfyMU4aMFyHy7i9W/zQQhQE s9fNfnyk+SDUbjkeDn+XmBSItVZf4PCY0DrdINzSiN6HVCBvekyWDyYN4dag9PB5 SGY1GEriApZYWloZXt6BMDjxHVu0mw74Zq1OhlwURHIWxUF2Fw2ryxEIIfgrsOgg pOC97nItWkN2zG7xFPDymZZ+n4q2CPV5U4Qslwp/XawDShk9v4j7oZPf9jbwZdjB w1n3t0t9VTanX16hpT27u7sdyO7Z5U3a1SovLGYmAK1nCk1ApfTNSLdtEErS+qQu BdVluHsL1AWUs8966UajBHBiHN1Nqq5KctNbYvOXM97WiqceVm/8gA== =JhgQ -----END PGP SIGNATURE-----