From: Wietse Venema Date: Tue, 7 Oct 2008 05:00:00 +0000 (-0500) Subject: postfix-2.6-20081007 X-Git-Tag: v2.6.0-RC1~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40373c1f286644d42b9cd68a437534a7b2a17b46;p=thirdparty%2Fpostfix.git postfix-2.6-20081007 --- diff --git a/postfix/HISTORY b/postfix/HISTORY index f78a25e96..14f850734 100644 --- a/postfix/HISTORY +++ b/postfix/HISTORY @@ -14695,3 +14695,9 @@ Apologies for any names omitted. Hardened the proxymap client, in case it ever ends up in a set-gid program. File: global/dict_proxy.c. + +10081007 + + Undo the proxymap client change. It broke chrooted servers + when they attempted to reconnect to the proxy read/write + service. File: global/dict_proxy.c. diff --git a/postfix/src/global/dict_proxy.c b/postfix/src/global/dict_proxy.c index 5d0a11a61..78a5dd73e 100644 --- a/postfix/src/global/dict_proxy.c +++ b/postfix/src/global/dict_proxy.c @@ -308,7 +308,7 @@ DICT *dict_proxy_open(const char *map, int open_flags, int dict_flags) int server_flags; int status; const char *service; - char *chroot_path; + char *relative_path; char *kludge = 0; char *prefix; CLNT_STREAM **pstream; @@ -342,10 +342,10 @@ DICT *dict_proxy_open(const char *map, int open_flags, int dict_flags) map, DICT_TYPE_PROXY); if (*pstream == 0) { - chroot_path = concatenate("/" MAIL_CLASS_PRIVATE "/", + relative_path = concatenate(MAIL_CLASS_PRIVATE "/", service, (char *) 0); - if (access(chroot_path, F_OK) == 0) - prefix = "/" MAIL_CLASS_PRIVATE; + if (access(relative_path, F_OK) == 0) + prefix = MAIL_CLASS_PRIVATE; else prefix = kludge = concatenate(var_queue_dir, "/", MAIL_CLASS_PRIVATE, (char *) 0); @@ -353,7 +353,7 @@ DICT *dict_proxy_open(const char *map, int open_flags, int dict_flags) var_ipc_ttl_limit); if (kludge) myfree(kludge); - myfree(chroot_path); + myfree(relative_path); } /* diff --git a/postfix/src/global/mail_version.h b/postfix/src/global/mail_version.h index 2c22d40fd..09700c2ee 100644 --- a/postfix/src/global/mail_version.h +++ b/postfix/src/global/mail_version.h @@ -20,7 +20,7 @@ * Patches change both the patchlevel and the release date. Snapshots have no * patchlevel; they change the release date only. */ -#define MAIL_RELEASE_DATE "20081006" +#define MAIL_RELEASE_DATE "20081007" #define MAIL_VERSION_NUMBER "2.6" #ifdef SNAPSHOT