dovecot-1.2: imap/pop3 logins now fail if home directory path is...

dovecot at dovecot.org dovecot at dovecot.org
Fri Jul 10 02:16:10 EEST 2009


details:   http://hg.dovecot.org/dovecot-1.2/rev/dd49cf3fd2c9
changeset: 9217:dd49cf3fd2c9
user:      Timo Sirainen <tss at iki.fi>
date:      Thu Jul 09 19:15:59 2009 -0400
description:
imap/pop3 logins now fail if home directory path is relative.

diffstat:

1 file changed, 6 insertions(+), 4 deletions(-)
src/master/mail-process.c |   10 ++++++----

diffs (27 lines):

diff -r 23f676bada8c -r dd49cf3fd2c9 src/master/mail-process.c
--- a/src/master/mail-process.c	Thu Jul 09 13:28:47 2009 -0400
+++ b/src/master/mail-process.c	Thu Jul 09 19:15:59 2009 -0400
@@ -605,6 +605,12 @@ create_mail_process(enum process_type pr
 	for (; *args != NULL; args++) {
 		if (strncmp(*args, "home=", 5) == 0) {
 			home_dir = *args + 5;
+			if (*home_dir != '/') {
+				i_error("Relative home directory paths not "
+					"supported (user %s): %s",
+					user, home_dir);
+				return MASTER_LOGIN_STATUS_INTERNAL_ERROR;
+			}
 			home_given = TRUE;
 		} else if (strncmp(*args, "mail=", 5) == 0)
 			mail = *args + 5;
@@ -670,10 +676,6 @@ create_mail_process(enum process_type pr
 		   a possibility of using them (non-empty valid_chroot_dirs)*/
 		chroot_dir = t_strdup_until(home_dir, p);
 		home_dir = p + 2;
-	} else if (*chroot_dir != '\0' && *home_dir != '/') {
-		/* home directories should never be relative, but force this
-		   with chroots. */
-		home_dir = t_strconcat("/", home_dir, NULL);
 	}
 
 	if (!dump_capability) {


More information about the dovecot-cvs mailing list