]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
script-login: When not using "-d" parameter, don't do unnecessary config lookup.
authorTimo Sirainen <tss@iki.fi>
Fri, 3 Jun 2011 15:54:27 +0000 (18:54 +0300)
committerTimo Sirainen <tss@iki.fi>
Fri, 3 Jun 2011 15:54:27 +0000 (18:54 +0300)
src/util/script-login.c

index 38e8c67b0e6745325c410d339ce10e32755062bf..b62fe0ea522433e9b8213846712338fb31fd265a 100644 (file)
@@ -114,13 +114,13 @@ static void client_connected(struct master_service_connection *conn)
        master_service_init_log(master_service,
                t_strdup_printf("script-login(%s): ", input.username));
 
-       service_ctx = mail_storage_service_init(master_service, NULL, flags);
-       if (mail_storage_service_lookup(service_ctx, &input, &user, &error) <= 0)
-               i_fatal("%s", error);
-       mail_storage_service_restrict_setenv(service_ctx, user);
-
-       if (drop_to_userdb_privileges)
+       if (drop_to_userdb_privileges) {
+               service_ctx = mail_storage_service_init(master_service, NULL, flags);
+               if (mail_storage_service_lookup(service_ctx, &input, &user, &error) <= 0)
+                       i_fatal("%s", error);
+               mail_storage_service_restrict_setenv(service_ctx, user);
                restrict_access_by_env(getenv("HOME"), TRUE);
+       }
 
        if (dup2(fd, STDIN_FILENO) < 0)
                i_fatal("dup2() failed: %m");