Mercurial > dovecot > core-2.2
diff src/lmtp/main.c @ 10134:545bdb7670d2 HEAD
lib-storage: Changed APIs to fix reading settings for multiple users.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Thu, 22 Oct 2009 18:31:18 -0400 |
parents | d1384c2b08e5 |
children | 597f969a9870 |
line wrap: on
line diff
--- a/src/lmtp/main.c Thu Oct 22 18:27:57 2009 -0400 +++ b/src/lmtp/main.c Thu Oct 22 18:31:18 2009 -0400 @@ -26,24 +26,17 @@ static void client_connected(const struct master_service_connection *conn) { - struct client *client; - void **sets; - - client = client_create(conn->fd, conn->fd); - client->remote_ip = conn->remote_ip; - client->remote_port = conn->remote_port; - - sets = master_service_settings_get_others(master_service); - client->set = sets[1]; - client->lmtp_set = sets[2]; - - (void)net_getsockname(conn->fd, &client->local_ip, &client->local_port); + (void)client_create(conn->fd, conn->fd, conn); } static void main_init(void) { - if (IS_STANDALONE()) - (void)client_create(STDIN_FILENO, STDOUT_FILENO); + struct master_service_connection conn; + + if (IS_STANDALONE()) { + memset(&conn, 0, sizeof(conn)); + (void)client_create(STDIN_FILENO, STDOUT_FILENO, &conn); + } } static void main_deinit(void) @@ -61,7 +54,8 @@ enum master_service_flags service_flags = 0; enum mail_storage_service_flags storage_service_flags = MAIL_STORAGE_SERVICE_FLAG_DISALLOW_ROOT | - MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP; + MAIL_STORAGE_SERVICE_FLAG_USERDB_LOOKUP | + MAIL_STORAGE_SERVICE_FLAG_TEMP_PRIV_DROP; if (IS_STANDALONE()) { service_flags |= MASTER_SERVICE_FLAG_STANDALONE |