From: Aki Tuomi Date: Mon, 19 Feb 2018 17:22:42 +0000 (+0200) Subject: global: Use unix_socket capability in connection.c X-Git-Tag: 2.3.1~57 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b194576cded3cb7aa5b2822c8508a81a3ff9080e;p=thirdparty%2Fdovecot%2Fcore.git global: Use unix_socket capability in connection.c This is more reliably way to correctly create input stream with unix socket capability for passing fd's around --- diff --git a/src/imap-hibernate/imap-hibernate-client.c b/src/imap-hibernate/imap-hibernate-client.c index 8b8f6dfdf9..fb9be0998a 100644 --- a/src/imap-hibernate/imap-hibernate-client.c +++ b/src/imap-hibernate/imap-hibernate-client.c @@ -253,11 +253,9 @@ void imap_hibernate_client_create(int fd, bool debug) client = i_new(struct imap_hibernate_client, 1); client->debug = debug; + client->conn.unix_socket = TRUE; connection_init_server(hibernate_clients, &client->conn, "imap-hibernate", fd, fd); - - i_assert(client->conn.input == NULL); - client->conn.input = i_stream_create_unix(fd, (size_t)-1); i_stream_unix_set_read_fd(client->conn.input); } @@ -267,7 +265,7 @@ static struct connection_settings client_set = { .major_version = 1, .minor_version = 0, - .input_max_size = 0, /* don't auto-create istream */ + .input_max_size = (size_t)-1, .output_max_size = (size_t)-1, .client = FALSE }; diff --git a/src/imap/imap-master-client.c b/src/imap/imap-master-client.c index d7dd8359e6..0f5b4020dc 100644 --- a/src/imap/imap-master-client.c +++ b/src/imap/imap-master-client.c @@ -329,11 +329,10 @@ void imap_master_client_create(int fd) struct imap_master_client *client; client = i_new(struct imap_master_client, 1); + client->conn.unix_socket = TRUE; connection_init_server(master_clients, &client->conn, "imap-master", fd, fd); - i_assert(client->conn.input == NULL); - client->conn.input = i_stream_create_unix(fd, (size_t)-1); /* read the first file descriptor that we can */ i_stream_unix_set_read_fd(client->conn.input); } @@ -344,7 +343,7 @@ static struct connection_settings client_set = { .major_version = 1, .minor_version = 0, - .input_max_size = 0, /* don't auto-create istream */ + .input_max_size = (size_t)-1, .output_max_size = (size_t)-1, .client = FALSE };