[Dovecot] PATCH Deliver forgets sendmail_path if DEBUG is set
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hello,
Dovecot v1.0.0 deliver erases the environment if DEBUG is set, hence, also (probably) erases SENDMAIL_PATH if it has been read from configuration file. This happens with: Debian Etch, libc-2.3.6.so, gcc (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21).
Problem in log: May 10 12:33:07 ux-2s11-9 deliver(dvtest): execv() failed: No such file or directory May 10 12:33:07 ux-2s11-9 deliver(dvtest): Sendmail process terminated abnormally, exit status 75
Note the empty string in the function call execv().
Attached patch just deletes the DEBUG variable.
Bye,
Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux)
iQEVAwUBRkL45y9SORjhbDpvAQKeTAgAr6i6XrICqZsTaezUFqXO69cuwOt4iL5u K3PAF0ywAtrRkpWG+G8TUtypUkLp+CGEK3Ery1mWVp2/TeNPv6LxeUWWGxmdlSV3 XFQSV/VRuPtJ/Uc8wFWOBcpAn0H9rnLNkF5vv512t4zs99eF10++US5fZwFOXK8M azgaCEYwOrmZ4U2sCQwVQChXcZQq6MI5IcE3ChpzlUP45bq2dVZrXqAZ/xNo1iuG lQd/43XJu1++LxB8N1Fkbaeme+Ojt/c5fOKApjhnCJuQwi46jnSEeHbO2VUCz+ST mU34QR3zx+h4YW91oKQhFYkbSWEYmuXk2OoZaFUd1Q+E+oXHHuDBng== =CiqO -----END PGP SIGNATURE-----
On Thu, 2007-05-10 at 12:50 +0200, Steffen Kaiser wrote:
Dovecot v1.0.0 deliver erases the environment if DEBUG is set, hence, also (probably) erases SENDMAIL_PATH if it has been read from configuration file. This happens with: Debian Etch, libc-2.3.6.so, gcc (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21).
putenv("DEBUG"); /* BTW this is a short living fork
putenv() without '=' in the string isn't a standard, so I didn't want to use that when I wrote the code.
But actually it's MAIL_DEBUG environment that's supposed to be removed, not DEBUG. That makes it easier to fix, since Dovecot uses only the DEBUG environment:
http://dovecot.org/list/dovecot-cvs/2007-May/008758.html http://dovecot.org/list/dovecot-cvs/2007-May/008760.html
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Sun, 13 May 2007, Timo Sirainen wrote:
putenv("DEBUG"); /* BTW this is a short living fork
putenv() without '=' in the string isn't a standard, so I didn't want to use that when I wrote the code.
Oh, I wasn't aware of it.
Bye,
Steffen Kaiser -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux)
iQEVAwUBRkgguy9SORjhbDpvAQJLHwgAyPadcaJjJ2u7T0Mlbr1IlQjshkQE5Osa nPDCgdBoguAx2gOl/HJje0BXqLTepYJNKLZEV/KsjXtsNjafyDraFA6Ax6j1EhaG fsso2S9Kg8plvvHeH+QzMLrQlBWRo6eQ5drgLlnfioG4FcPO6ZFGj3ItHT+3rJKG rzUybuTBm+nFMcO5KhbtWlqop94oH82Ud7vJDf9t5zigKfvcUtyr+D5CulMZrH5y MiJPSy4FMsgfNkDXiyJrtYZw6GjSujHpfKxwlTXQCQH0rpmkwm7mXUVUhvXWXhS6 IE3lWAkkhrD7hVQK1kwVxlHLwfAnmUSqc7PMrbByaQ8j0allxeFx8Q== =lBk4 -----END PGP SIGNATURE-----
participants (2)
-
Steffen Kaiser
-
Timo Sirainen