From e93184a9055c2530366dfe617e07199603c399dd Mon Sep 17 00:00:00 2001 From: =?utf8?q?Martti=20Rannanj=C3=A4rvi?= Date: Mon, 9 May 2016 14:28:08 +0300 Subject: [PATCH] lib: remove autoclose parameter from [io]_stream_create_fd Use [io]_stream_create_fd_autoclose() for autoclose. --- src/anvil/anvil-connection.c | 4 ++-- src/auth/auth-client-connection.c | 5 ++--- src/auth/auth-master-connection.c | 4 ++-- src/auth/auth-postfix-connection.c | 4 ++-- src/auth/auth-worker-client.c | 5 ++--- src/auth/auth-worker-server.c | 5 ++--- src/auth/db-passwd-file.c | 2 +- src/config/config-connection.c | 4 ++-- src/config/doveconf.c | 2 +- src/dict/dict-connection.c | 5 ++--- src/director/auth-connection.c | 5 ++--- src/director/director-connection.c | 4 ++-- src/director/director-test.c | 14 ++++++------- src/director/doveadm-connection.c | 4 ++-- src/director/login-connection.c | 4 ++-- src/director/notify-connection.c | 2 +- src/dns/dns-client.c | 4 ++-- src/doveadm/client-connection.c | 4 ++-- src/doveadm/doveadm-cmd.c | 2 +- src/doveadm/doveadm-dsync.c | 6 +++--- src/doveadm/doveadm-mail.c | 2 +- src/doveadm/doveadm-stats.c | 4 ++-- src/doveadm/doveadm-zlib.c | 4 ++-- src/doveadm/doveadm.c | 2 +- src/doveadm/server-connection.c | 4 ++-- src/imap-hibernate/imap-client.c | 2 +- src/imap-urlauth/imap-urlauth-client.c | 7 +++---- src/imap-urlauth/imap-urlauth-worker.c | 13 ++++++------ src/imap/imap-client.c | 4 ++-- src/indexer/indexer-client.c | 4 ++-- src/indexer/master-connection.c | 2 +- src/indexer/worker-connection.c | 4 ++-- src/ipc/client.c | 4 ++-- src/ipc/ipc-connection.c | 4 ++-- src/lda/main.c | 2 +- src/lib-auth/auth-master.c | 4 ++-- src/lib-auth/auth-server-connection.c | 5 ++--- src/lib-compression/test-compression.c | 4 ++-- src/lib-dict/dict-client.c | 4 ++-- src/lib-dict/dict-file.c | 4 ++-- src/lib-dns/dns-lookup.c | 2 +- src/lib-http/test-http-payload.c | 2 +- src/lib-imap-client/imapc-connection.c | 4 ++-- .../imap-urlauth-connection.c | 4 ++-- src/lib-index/mail-index-strmap.c | 6 +++--- src/lib-lda/duplicate.c | 2 +- src/lib-lda/lmtp-client.c | 5 ++--- src/lib-lda/smtp-client.c | 2 +- src/lib-mail/istream-attachment-extractor.c | 6 +++--- src/lib-master/anvil-client.c | 4 ++-- src/lib-master/ipc-client.c | 4 ++-- src/lib-master/ipc-server.c | 4 ++-- src/lib-master/master-instance.c | 2 +- src/lib-master/master-login-auth.c | 4 ++-- src/lib-master/master-login.c | 2 +- src/lib-master/master-service-settings.c | 2 +- .../index/imapc/imapc-mail-fetch.c | 7 +++---- src/lib-storage/index/imapc/imapc-save.c | 2 +- .../index/maildir/maildir-keywords.c | 2 +- .../index/maildir/maildir-uidlist.c | 2 +- src/lib-storage/index/mbox/mbox-file.c | 3 +-- src/lib-storage/index/pop3c/pop3c-client.c | 4 ++-- src/lib/connection.c | 4 ++-- src/lib/file-copy.c | 2 +- src/lib/istream-file.c | 12 +++++++---- src/lib/istream-rawlog.c | 4 +++- src/lib/istream.h | 3 +-- src/lib/ostream-file.c | 20 +++++++++++++------ src/lib/ostream-rawlog.c | 5 ++++- src/lib/ostream.h | 3 +-- src/lib/test-iostream-temp.c | 2 +- src/lib/test-ostream-file.c | 15 +++++++------- src/lmtp/client.c | 4 ++-- src/lmtp/commands.c | 3 +-- src/log/doveadm-connection.c | 2 +- src/log/log-connection.c | 2 +- src/login-common/client-common.c | 6 ++---- src/login-common/login-proxy.c | 5 ++--- src/plugins/acl/acl-backend-vfile-acllist.c | 2 +- src/plugins/acl/acl-backend-vfile.c | 2 +- src/plugins/fts-squat/squat-test.c | 2 +- src/plugins/fts-squat/squat-trie.c | 4 ++-- src/plugins/fts-squat/squat-uidlist.c | 4 ++-- src/plugins/fts/fts-expunge-log.c | 2 +- src/plugins/fts/fts-indexer.c | 2 +- src/plugins/mail-filter/istream-ext-filter.c | 4 ++-- src/plugins/mail-filter/ostream-ext-filter.c | 4 ++-- src/plugins/trash/trash-plugin.c | 2 +- src/plugins/virtual/virtual-config.c | 2 +- src/pop3/pop3-client.c | 4 ++-- .../aggregator/notify-connection.c | 4 ++-- .../aggregator/replicator-connection.c | 4 ++-- src/replication/replicator/dsync-client.c | 4 ++-- .../replicator/notify-connection.c | 4 ++-- src/stats/client.c | 4 ++-- src/stats/fifo-input-connection.c | 2 +- src/util/rawlog.c | 4 ++-- 97 files changed, 200 insertions(+), 199 deletions(-) diff --git a/src/anvil/anvil-connection.c b/src/anvil/anvil-connection.c index 2eef2350e3..ae30d22f79 100644 --- a/src/anvil/anvil-connection.c +++ b/src/anvil/anvil-connection.c @@ -189,9 +189,9 @@ anvil_connection_create(int fd, bool master, bool fifo) conn = i_new(struct anvil_connection, 1); conn->fd = fd; - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); if (!fifo) { - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); } conn->io = io_add(fd, IO_READ, anvil_connection_input, conn); diff --git a/src/auth/auth-client-connection.c b/src/auth/auth-client-connection.c index c4ada95671..c959a777ad 100644 --- a/src/auth/auth-client-connection.c +++ b/src/auth/auth-client-connection.c @@ -317,9 +317,8 @@ void auth_client_connection_create(struct auth *auth, int fd, random_fill(conn->cookie, sizeof(conn->cookie)); conn->fd = fd; - conn->input = i_stream_create_fd(fd, AUTH_CLIENT_MAX_LINE_LENGTH, - FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, AUTH_CLIENT_MAX_LINE_LENGTH); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); o_stream_set_flush_callback(conn->output, auth_client_output, conn); conn->io = io_add(fd, IO_READ, auth_client_input, conn); diff --git a/src/auth/auth-master-connection.c b/src/auth/auth-master-connection.c index 810f555f02..bd84869891 100644 --- a/src/auth/auth-master-connection.c +++ b/src/auth/auth-master-connection.c @@ -747,8 +747,8 @@ auth_master_connection_create(struct auth *auth, int fd, conn->fd = fd; conn->path = i_strdup(path); conn->auth = auth; - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); o_stream_set_flush_callback(conn->output, master_output, conn); conn->io = io_add(fd, IO_READ, master_input, conn); diff --git a/src/auth/auth-postfix-connection.c b/src/auth/auth-postfix-connection.c index 50b61d8322..db3a1d97f6 100644 --- a/src/auth/auth-postfix-connection.c +++ b/src/auth/auth-postfix-connection.c @@ -176,8 +176,8 @@ auth_postfix_connection_create(struct auth *auth, int fd) conn->refcount = 1; conn->fd = fd; conn->auth = auth; - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); conn->io = io_add(fd, IO_READ, postfix_input, conn); DLLIST_PREPEND(&auth_postfix_connections, conn); diff --git a/src/auth/auth-worker-client.c b/src/auth/auth-worker-client.c index fdf72bc4c9..5c909d29a4 100644 --- a/src/auth/auth-worker-client.c +++ b/src/auth/auth-worker-client.c @@ -739,9 +739,8 @@ auth_worker_client_create(struct auth *auth, int fd) client->auth = auth; client->fd = fd; - client->input = i_stream_create_fd(fd, AUTH_WORKER_MAX_LINE_LENGTH, - FALSE); - client->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd, AUTH_WORKER_MAX_LINE_LENGTH); + client->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); o_stream_set_flush_callback(client->output, auth_worker_output, client); client->io = io_add(fd, IO_READ, auth_worker_input, client); diff --git a/src/auth/auth-worker-server.c b/src/auth/auth-worker-server.c index 48419ff45f..49453cb240 100644 --- a/src/auth/auth-worker-server.c +++ b/src/auth/auth-worker-server.c @@ -192,9 +192,8 @@ static struct auth_worker_connection *auth_worker_create(void) conn = i_new(struct auth_worker_connection, 1); conn->fd = fd; - conn->input = i_stream_create_fd(fd, AUTH_WORKER_MAX_LINE_LENGTH, - FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, AUTH_WORKER_MAX_LINE_LENGTH); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); conn->io = io_add(fd, IO_READ, worker_input, conn); conn->to = timeout_add(AUTH_WORKER_MAX_IDLE_SECS * 1000, diff --git a/src/auth/db-passwd-file.c b/src/auth/db-passwd-file.c index 572d2cab6d..71940bd21d 100644 --- a/src/auth/db-passwd-file.c +++ b/src/auth/db-passwd-file.c @@ -200,7 +200,7 @@ static int passwd_file_open(struct passwd_file *pw, bool startup, hash_table_create(&pw->users, pw->pool, 0, str_hash, strcmp); start_time = time(NULL); - input = i_stream_create_fd(pw->fd, (size_t)-1, FALSE); + input = i_stream_create_fd(pw->fd, (size_t)-1); i_stream_set_return_partial_line(input, TRUE); while ((line = i_stream_read_next_line(input)) != NULL) { if (*line == '\0' || *line == ':' || *line == '#') diff --git a/src/config/config-connection.c b/src/config/config-connection.c index 14aec5d9fa..7df5b0e1ea 100644 --- a/src/config/config-connection.c +++ b/src/config/config-connection.c @@ -194,8 +194,8 @@ struct config_connection *config_connection_create(int fd) conn = i_new(struct config_connection, 1); conn->fd = fd; - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); conn->io = io_add(fd, IO_READ, config_connection_input, conn); DLLIST_PREPEND(&config_connections, conn); diff --git a/src/config/doveconf.c b/src/config/doveconf.c index 095a78840f..152333ca35 100644 --- a/src/config/doveconf.c +++ b/src/config/doveconf.c @@ -434,7 +434,7 @@ config_dump_human(const struct config_filter *filter, const char *const *modules struct ostream *output; int ret; - output = o_stream_create_fd(STDOUT_FILENO, 0, FALSE); + output = o_stream_create_fd(STDOUT_FILENO, 0); o_stream_set_no_error_handling(output, TRUE); o_stream_cork(output); diff --git a/src/dict/dict-connection.c b/src/dict/dict-connection.c index d091eee83e..44d5815fe6 100644 --- a/src/dict/dict-connection.c +++ b/src/dict/dict-connection.c @@ -201,9 +201,8 @@ struct dict_connection *dict_connection_create(int fd) conn = i_new(struct dict_connection, 1); conn->refcount = 1; conn->fd = fd; - conn->input = i_stream_create_fd(fd, DICT_CLIENT_MAX_LINE_LENGTH, - FALSE); - conn->output = o_stream_create_fd(fd, 128*1024, FALSE); + conn->input = i_stream_create_fd(fd, DICT_CLIENT_MAX_LINE_LENGTH); + conn->output = o_stream_create_fd(fd, 128*1024); o_stream_set_no_error_handling(conn->output, TRUE); o_stream_set_flush_callback(conn->output, dict_connection_output, conn); conn->io = io_add(fd, IO_READ, dict_connection_input, conn); diff --git a/src/director/auth-connection.c b/src/director/auth-connection.c index 931b5a625d..20a0aa4db1 100644 --- a/src/director/auth-connection.c +++ b/src/director/auth-connection.c @@ -85,9 +85,8 @@ int auth_connection_connect(struct auth_connection *conn) return -1; } - conn->input = i_stream_create_fd(conn->fd, AUTH_CLIENT_MAX_LINE_LENGTH, - FALSE); - conn->output = o_stream_create_fd(conn->fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(conn->fd, AUTH_CLIENT_MAX_LINE_LENGTH); + conn->output = o_stream_create_fd(conn->fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); conn->io = io_add(conn->fd, IO_READ, auth_connection_input, conn); return 0; diff --git a/src/director/director-connection.c b/src/director/director-connection.c index d8b58d3c56..5121758ecd 100644 --- a/src/director/director-connection.c +++ b/src/director/director-connection.c @@ -1851,8 +1851,8 @@ director_connection_init_common(struct director *dir, int fd) conn->created = ioloop_time; conn->fd = fd; conn->dir = dir; - conn->input = i_stream_create_fd(conn->fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(conn->fd, MAX_OUTBUF_SIZE, FALSE); + conn->input = i_stream_create_fd(conn->fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(conn->fd, MAX_OUTBUF_SIZE); o_stream_set_no_error_handling(conn->output, TRUE); conn->to_ping = timeout_add(DIRECTOR_CONNECTION_ME_TIMEOUT_MSECS, director_connection_init_timeout, conn); diff --git a/src/director/director-test.c b/src/director/director-test.c index ddcc4d024a..b1c5de06ff 100644 --- a/src/director/director-test.c +++ b/src/director/director-test.c @@ -246,8 +246,8 @@ static void imap_client_create(int fd) client = i_new(struct imap_client, 1); client->fd = fd; - client->input = i_stream_create_fd(fd, 4096, FALSE); - client->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd, 4096); + client->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); client->io = io_add(fd, IO_READ, imap_client_input, client); client->parser = @@ -344,15 +344,15 @@ director_connection_create(int in_fd, const struct ip_addr *local_ip, conn = i_new(struct director_connection, 1); conn->in_fd = in_fd; - conn->in_input = i_stream_create_fd(conn->in_fd, (size_t)-1, FALSE); - conn->in_output = o_stream_create_fd(conn->in_fd, (size_t)-1, FALSE); + conn->in_input = i_stream_create_fd(conn->in_fd, (size_t)-1); + conn->in_output = o_stream_create_fd(conn->in_fd, (size_t)-1); o_stream_set_no_error_handling(conn->in_output, TRUE); conn->in_io = io_add(conn->in_fd, IO_READ, director_connection_in_input, conn); conn->out_fd = out_fd; - conn->out_input = i_stream_create_fd(conn->out_fd, (size_t)-1, FALSE); - conn->out_output = o_stream_create_fd(conn->out_fd, (size_t)-1, FALSE); + conn->out_input = i_stream_create_fd(conn->out_fd, (size_t)-1); + conn->out_output = o_stream_create_fd(conn->out_fd, (size_t)-1); o_stream_set_no_error_handling(conn->out_output, TRUE); conn->out_io = io_add(conn->out_fd, IO_READ, director_connection_out_input, conn); @@ -459,7 +459,7 @@ static struct admin_connection *admin_connect(const char *path) admin_random_action, conn); net_set_nonblock(conn->fd, FALSE); - conn->input = i_stream_create_fd(conn->fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(conn->fd, (size_t)-1); admin_send(conn, DIRECTOR_ADMIN_HANDSHAKE); line = i_stream_read_next_line(conn->input); diff --git a/src/director/doveadm-connection.c b/src/director/doveadm-connection.c index cf000ce37f..0b93885e52 100644 --- a/src/director/doveadm-connection.c +++ b/src/director/doveadm-connection.c @@ -686,8 +686,8 @@ doveadm_connection_init(struct director *dir, int fd) conn = i_new(struct doveadm_connection, 1); conn->fd = fd; conn->dir = dir; - conn->input = i_stream_create_fd(conn->fd, 1024, FALSE); - conn->output = o_stream_create_fd(conn->fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(conn->fd, 1024); + conn->output = o_stream_create_fd(conn->fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); conn->io = io_add(conn->fd, IO_READ, doveadm_connection_input, conn); o_stream_nsend_str(conn->output, DOVEADM_HANDSHAKE); diff --git a/src/director/login-connection.c b/src/director/login-connection.c index c7be35b18b..d57c912b17 100644 --- a/src/director/login-connection.c +++ b/src/director/login-connection.c @@ -262,7 +262,7 @@ login_connection_init(struct director *dir, int fd, conn->refcount = 1; conn->fd = fd; conn->dir = dir; - conn->output = o_stream_create_fd(conn->fd, (size_t)-1, FALSE); + conn->output = o_stream_create_fd(conn->fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); if (type != LOGIN_CONNECTION_TYPE_AUTHREPLY) { i_assert(auth != NULL); @@ -272,7 +272,7 @@ login_connection_init(struct director *dir, int fd, auth_connection_set_callback(conn->auth, auth_input_line, conn); } else { i_assert(auth == NULL); - conn->input = i_stream_create_fd(conn->fd, IO_BLOCK_SIZE, FALSE); + conn->input = i_stream_create_fd(conn->fd, IO_BLOCK_SIZE); conn->io = io_add(conn->fd, IO_READ, login_connection_authreply_input, conn); o_stream_nsend_str(conn->output, t_strdup_printf( diff --git a/src/director/notify-connection.c b/src/director/notify-connection.c index c32a62231e..b2cb8efae6 100644 --- a/src/director/notify-connection.c +++ b/src/director/notify-connection.c @@ -56,7 +56,7 @@ notify_connection_init(struct director *dir, int fd) conn = i_new(struct notify_connection, 1); conn->fd = fd; conn->dir = dir; - conn->input = i_stream_create_fd(conn->fd, 1024, FALSE); + conn->input = i_stream_create_fd(conn->fd, 1024); conn->io = io_add(conn->fd, IO_READ, notify_connection_input, conn); return conn; } diff --git a/src/dns/dns-client.c b/src/dns/dns-client.c index 798c19bc54..9119ec5dd6 100644 --- a/src/dns/dns-client.c +++ b/src/dns/dns-client.c @@ -93,8 +93,8 @@ static struct dns_client *dns_client_create(int fd) client = i_new(struct dns_client, 1); client->fd = fd; - client->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - client->output = o_stream_create_fd(fd, MAX_OUTBUF_SIZE, FALSE); + client->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + client->output = o_stream_create_fd(fd, MAX_OUTBUF_SIZE); o_stream_set_no_error_handling(client->output, TRUE); client->io = io_add(fd, IO_READ, dns_client_input, client); return client; diff --git a/src/doveadm/client-connection.c b/src/doveadm/client-connection.c index 1c3398cff1..290827d036 100644 --- a/src/doveadm/client-connection.c +++ b/src/doveadm/client-connection.c @@ -548,8 +548,8 @@ client_connection_create(int fd, int listen_fd, bool ssl) doveadm_print_init(DOVEADM_PRINT_TYPE_SERVER); conn->io = io_add(fd, IO_READ, client_connection_input, conn); - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(fd, (size_t)-1); i_stream_set_name(conn->input, net_ip2addr(&conn->remote_ip)); o_stream_set_name(conn->output, net_ip2addr(&conn->remote_ip)); o_stream_set_no_error_handling(conn->output, TRUE); diff --git a/src/doveadm/doveadm-cmd.c b/src/doveadm/doveadm-cmd.c index 5b478543ee..5f5cf04e13 100644 --- a/src/doveadm/doveadm-cmd.c +++ b/src/doveadm/doveadm-cmd.c @@ -423,7 +423,7 @@ static void doveadm_fill_param(struct doveadm_cmd_param *param, case CMD_PARAM_ISTREAM: { struct istream *is; if (strcmp(value,"-") == 0) { - is = i_stream_create_fd(STDIN_FILENO, IO_BLOCK_SIZE, FALSE); + is = i_stream_create_fd(STDIN_FILENO, IO_BLOCK_SIZE); } else { is = i_stream_create_file(value, IO_BLOCK_SIZE); } diff --git a/src/doveadm/doveadm-dsync.c b/src/doveadm/doveadm-dsync.c index a3e34635b2..f77c76d36a 100644 --- a/src/doveadm/doveadm-dsync.c +++ b/src/doveadm/doveadm-dsync.c @@ -180,7 +180,7 @@ run_cmd(struct dsync_cmd_context *ctx, const char *const *args) } fd_set_nonblock(ctx->fd_err, TRUE); - ctx->err_stream = i_stream_create_fd(ctx->fd_err, IO_BLOCK_SIZE, FALSE); + ctx->err_stream = i_stream_create_fd(ctx->fd_err, IO_BLOCK_SIZE); i_stream_set_return_partial_line(ctx->err_stream, TRUE); } @@ -486,8 +486,8 @@ cmd_dsync_icb_stream_init(struct dsync_cmd_context *ctx, if (ctx->input == NULL) { fd_set_nonblock(ctx->fd_in, TRUE); fd_set_nonblock(ctx->fd_out, TRUE); - ctx->input = i_stream_create_fd(ctx->fd_in, (size_t)-1, FALSE); - ctx->output = o_stream_create_fd(ctx->fd_out, (size_t)-1, FALSE); + ctx->input = i_stream_create_fd(ctx->fd_in, (size_t)-1); + ctx->output = o_stream_create_fd(ctx->fd_out, (size_t)-1); } else { ctx->input_orig_bufsize = i_stream_get_max_buffer_size(ctx->input); ctx->output_orig_bufsize = o_stream_get_max_buffer_size(ctx->output); diff --git a/src/doveadm/doveadm-mail.c b/src/doveadm/doveadm-mail.c index 8cfe09537a..409b3ceee9 100644 --- a/src/doveadm/doveadm-mail.c +++ b/src/doveadm/doveadm-mail.c @@ -221,7 +221,7 @@ void doveadm_mail_get_input(struct doveadm_mail_cmd_context *ctx) if (ctx->conn != NULL) inputs[0] = i_stream_create_dot(ctx->conn->input, FALSE); else { - inputs[0] = i_stream_create_fd(STDIN_FILENO, 1024*1024, FALSE); + inputs[0] = i_stream_create_fd(STDIN_FILENO, 1024*1024); i_stream_set_name(inputs[0], "stdin"); } inputs[1] = NULL; diff --git a/src/doveadm/doveadm-stats.c b/src/doveadm/doveadm-stats.c index 56b7011042..6a7470e78e 100644 --- a/src/doveadm/doveadm-stats.c +++ b/src/doveadm/doveadm-stats.c @@ -480,7 +480,7 @@ static void stats_top(const char *path, const char *sort_type) hash_table_create(&ctx.sessions, default_pool, 0, str_hash, strcmp); net_set_nonblock(ctx.fd, FALSE); - ctx.input = i_stream_create_fd(ctx.fd, (size_t)-1, FALSE); + ctx.input = i_stream_create_fd(ctx.fd, (size_t)-1); if (strstr(sort_type, "cpu") != NULL) ctx.lines_sort = sort_cpu; @@ -507,7 +507,7 @@ static void stats_reset(const char *path, const char **items ATTR_UNUSED) fd = doveadm_connect(path); net_set_nonblock(fd, FALSE); - input = i_stream_create_fd(fd, (size_t)-1, FALSE); + input = i_stream_create_fd(fd, (size_t)-1); cmd = t_str_new(10); str_append(cmd, "RESET"); diff --git a/src/doveadm/doveadm-zlib.c b/src/doveadm/doveadm-zlib.c index 10c964afb9..a64a6f30fc 100644 --- a/src/doveadm/doveadm-zlib.c +++ b/src/doveadm/doveadm-zlib.c @@ -163,8 +163,8 @@ static void cmd_zlibconnect(int argc ATTR_UNUSED, char *argv[]) memset(&client, 0, sizeof(client)); client.fd = fd; - client.input = i_stream_create_fd(fd, (size_t)-1, FALSE); - client.output = o_stream_create_fd(fd, 0, FALSE); + client.input = i_stream_create_fd(fd, (size_t)-1); + client.output = o_stream_create_fd(fd, 0); o_stream_set_no_error_handling(client.output, TRUE); client.io_client = io_add(STDIN_FILENO, IO_READ, client_input, &client); client.io_server = io_add(fd, IO_READ, server_input, &client); diff --git a/src/doveadm/doveadm.c b/src/doveadm/doveadm.c index 677047e008..85da817e95 100644 --- a/src/doveadm/doveadm.c +++ b/src/doveadm/doveadm.c @@ -346,7 +346,7 @@ int main(int argc, char *argv[]) quick_init = TRUE; } else { quick_init = FALSE; - doveadm_print_ostream = o_stream_create_fd(STDOUT_FILENO, 0, FALSE); + doveadm_print_ostream = o_stream_create_fd(STDOUT_FILENO, 0); o_stream_set_no_error_handling(doveadm_print_ostream, TRUE); doveadm_dump_init(); doveadm_mail_init(); diff --git a/src/doveadm/server-connection.c b/src/doveadm/server-connection.c index 0b44b5177d..979a5622f8 100644 --- a/src/doveadm/server-connection.c +++ b/src/doveadm/server-connection.c @@ -469,8 +469,8 @@ int server_connection_create(struct doveadm_server *server, doveadm_settings->doveadm_port); net_set_nonblock(conn->fd, TRUE); conn->io = io_add(conn->fd, IO_READ, server_connection_input, conn); - conn->input = i_stream_create_fd(conn->fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(conn->fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(conn->fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(conn->fd, (size_t)-1); o_stream_set_flush_callback(conn->output, server_connection_output, conn); i_stream_set_name(conn->input, server->name); diff --git a/src/imap-hibernate/imap-client.c b/src/imap-hibernate/imap-client.c index c89c0ab3b7..fd91dc92f9 100644 --- a/src/imap-hibernate/imap-client.c +++ b/src/imap-hibernate/imap-client.c @@ -421,7 +421,7 @@ imap_client_create(int fd, const struct imap_client_state *state) client = p_new(pool, struct imap_client, 1); client->pool = pool; client->fd = fd; - client->input = i_stream_create_fd(fd, IMAP_MAX_INBUF, FALSE); + client->input = i_stream_create_fd(fd, IMAP_MAX_INBUF); client->state = *state; client->state.username = p_strdup(pool, state->username); diff --git a/src/imap-urlauth/imap-urlauth-client.c b/src/imap-urlauth/imap-urlauth-client.c index bf8af5d476..9528ca1d3b 100644 --- a/src/imap-urlauth/imap-urlauth-client.c +++ b/src/imap-urlauth/imap-urlauth-client.c @@ -89,7 +89,7 @@ int client_create(const char *username, int fd_in, int fd_out, if (username != NULL) client->username = i_strdup(username); - client->output = o_stream_create_fd(fd_out, (size_t)-1, FALSE); + client->output = o_stream_create_fd(fd_out, (size_t)-1); imap_urlauth_client_count++; DLLIST_PREPEND(&imap_urlauth_clients, client); @@ -171,8 +171,7 @@ static int client_worker_connect(struct client *client) return -1; } - client->ctrl_output = - o_stream_create_fd(client->fd_ctrl, (size_t)-1, FALSE); + client->ctrl_output = o_stream_create_fd(client->fd_ctrl, (size_t)-1); /* send protocol version handshake */ if (o_stream_send_str(client->ctrl_output, handshake) < 0) { @@ -182,7 +181,7 @@ static int client_worker_connect(struct client *client) } client->ctrl_input = - i_stream_create_fd(client->fd_ctrl, MAX_INBUF_SIZE, FALSE); + i_stream_create_fd(client->fd_ctrl, MAX_INBUF_SIZE); client->ctrl_io = io_add(client->fd_ctrl, IO_READ, client_worker_input, client); return 0; diff --git a/src/imap-urlauth/imap-urlauth-worker.c b/src/imap-urlauth/imap-urlauth-worker.c index b61da90722..c508f224af 100644 --- a/src/imap-urlauth/imap-urlauth-worker.c +++ b/src/imap-urlauth/imap-urlauth-worker.c @@ -193,8 +193,8 @@ client_create_standalone(const char *access_user, } client->debug = debug; - client->input = i_stream_create_fd(fd_in, MAX_INBUF_SIZE, FALSE); - client->output = o_stream_create_fd(fd_out, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd_in, MAX_INBUF_SIZE); + client->output = o_stream_create_fd(fd_out, (size_t)-1); client->io = io_add(fd_in, IO_READ, client_input, client); client->to_idle = timeout_add(CLIENT_IDLE_TIMEOUT_MSECS, client_idle_timeout, client); @@ -793,9 +793,8 @@ client_ctrl_read_fds(struct client *client) } client->ctrl_input = - i_stream_create_fd(client->fd_ctrl, MAX_INBUF_SIZE, FALSE); - client->ctrl_output = - o_stream_create_fd(client->fd_ctrl, (size_t)-1, FALSE); + i_stream_create_fd(client->fd_ctrl, MAX_INBUF_SIZE); + client->ctrl_output = o_stream_create_fd(client->fd_ctrl, (size_t)-1); return 1; } @@ -913,8 +912,8 @@ static void client_ctrl_input(struct client *client) return; } - client->input = i_stream_create_fd(client->fd_in, MAX_INBUF_SIZE, FALSE); - client->output = o_stream_create_fd(client->fd_out, (size_t)-1, FALSE); + client->input = i_stream_create_fd(client->fd_in, MAX_INBUF_SIZE); + client->output = o_stream_create_fd(client->fd_out, (size_t)-1); client->io = io_add(client->fd_in, IO_READ, client_input, client); o_stream_set_flush_callback(client->output, client_output, client); diff --git a/src/imap/imap-client.c b/src/imap/imap-client.c index 3fdaff773d..ba95740592 100644 --- a/src/imap/imap-client.c +++ b/src/imap/imap-client.c @@ -103,8 +103,8 @@ struct client *client_create(int fd_in, int fd_out, const char *session_id, client->fd_in = fd_in; client->fd_out = fd_out; client->input = i_stream_create_fd(fd_in, - set->imap_max_line_length, FALSE); - client->output = o_stream_create_fd(fd_out, (size_t)-1, FALSE); + set->imap_max_line_length); + client->output = o_stream_create_fd(fd_out, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); i_stream_set_name(client->input, ""); o_stream_set_name(client->output, ""); diff --git a/src/indexer/indexer-client.c b/src/indexer/indexer-client.c index 8ceaefc520..16c15a3f1e 100644 --- a/src/indexer/indexer-client.c +++ b/src/indexer/indexer-client.c @@ -211,8 +211,8 @@ indexer_client_create(int fd, struct indexer_queue *queue) client->refcount = 1; client->queue = queue; client->fd = fd; - client->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - client->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + client->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); client->io = io_add(fd, IO_READ, indexer_client_input, client); diff --git a/src/indexer/master-connection.c b/src/indexer/master-connection.c index 2f516a218a..64a5c69726 100644 --- a/src/indexer/master-connection.c +++ b/src/indexer/master-connection.c @@ -281,7 +281,7 @@ master_connection_create(int fd, struct mail_storage_service_ctx *storage_servic conn->storage_service = storage_service; conn->fd = fd; conn->io = io_add(conn->fd, IO_READ, master_connection_input, conn); - conn->input = i_stream_create_fd(conn->fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(conn->fd, (size_t)-1); handshake = t_strdup_printf(INDEXER_WORKER_HANDSHAKE, master_service_get_process_limit(master_service)); diff --git a/src/indexer/worker-connection.c b/src/indexer/worker-connection.c index bf9d76346f..445b00bcbe 100644 --- a/src/indexer/worker-connection.c +++ b/src/indexer/worker-connection.c @@ -196,8 +196,8 @@ int worker_connection_connect(struct worker_connection *conn) return -1; } conn->io = io_add(conn->fd, IO_READ, worker_connection_input, conn); - conn->input = i_stream_create_fd(conn->fd, (size_t)-1, FALSE); - conn->output = o_stream_create_fd(conn->fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(conn->fd, (size_t)-1); + conn->output = o_stream_create_fd(conn->fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); o_stream_nsend_str(conn->output, INDEXER_MASTER_HANDSHAKE); return 0; diff --git a/src/ipc/client.c b/src/ipc/client.c index 181af47435..11dd294306 100644 --- a/src/ipc/client.c +++ b/src/ipc/client.c @@ -122,8 +122,8 @@ struct client *client_create(int fd) client = i_new(struct client, 1); client->fd = fd; client->io = io_add(fd, IO_READ, client_input, client); - client->input = i_stream_create_fd(fd, (size_t)-1, FALSE); - client->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd, (size_t)-1); + client->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); DLLIST_PREPEND(&clients, client); diff --git a/src/ipc/ipc-connection.c b/src/ipc/ipc-connection.c index 63b7a11088..c8c7b79cbc 100644 --- a/src/ipc/ipc-connection.c +++ b/src/ipc/ipc-connection.c @@ -175,8 +175,8 @@ struct ipc_connection *ipc_connection_create(int listen_fd, int fd) conn->id = ++connection_id_counter; conn->fd = fd; conn->io = io_add(fd, IO_READ, ipc_connection_input, conn); - conn->input = i_stream_create_fd(fd, (size_t)-1, FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, (size_t)-1); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); i_array_init(&conn->cmds, 8); o_stream_nsend_str(conn->output, IPC_SERVER_HANDSHAKE); diff --git a/src/lda/main.c b/src/lda/main.c index d61d783051..ef5ea64f18 100644 --- a/src/lda/main.c +++ b/src/lda/main.c @@ -120,7 +120,7 @@ create_raw_stream(struct mail_deliver_context *ctx, *mtime_r = (time_t)-1; fd_set_nonblock(fd, FALSE); - input = i_stream_create_fd(fd, 4096, FALSE); + input = i_stream_create_fd(fd, 4096); input->blocking = TRUE; /* If input begins with a From-line, drop it */ ret = i_stream_read_bytes(input, &data, &size, 5); diff --git a/src/lib-auth/auth-master.c b/src/lib-auth/auth-master.c index b3ceab510f..79dfb59550 100644 --- a/src/lib-auth/auth-master.c +++ b/src/lib-auth/auth-master.c @@ -342,8 +342,8 @@ static void auth_master_set_io(struct auth_master_connection *conn) conn->prev_ioloop = current_ioloop; conn->ioloop = io_loop_create(); - conn->input = i_stream_create_fd(conn->fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(conn->fd, MAX_OUTBUF_SIZE, FALSE); + conn->input = i_stream_create_fd(conn->fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(conn->fd, MAX_OUTBUF_SIZE); conn->io = io_add(conn->fd, IO_READ, auth_input, conn); conn->to = timeout_add(1000*MASTER_AUTH_LOOKUP_TIMEOUT_SECS, auth_request_timeout, conn); diff --git a/src/lib-auth/auth-server-connection.c b/src/lib-auth/auth-server-connection.c index 8453a3a61f..67a655b5c0 100644 --- a/src/lib-auth/auth-server-connection.c +++ b/src/lib-auth/auth-server-connection.c @@ -444,9 +444,8 @@ int auth_server_connection_connect(struct auth_server_connection *conn) } conn->fd = fd; conn->io = io_add(fd, IO_READ, auth_server_connection_input, conn); - conn->input = i_stream_create_fd(fd, AUTH_SERVER_CONN_MAX_LINE_LENGTH, - FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, AUTH_SERVER_CONN_MAX_LINE_LENGTH); + conn->output = o_stream_create_fd(fd, (size_t)-1); handshake = t_strdup_printf("VERSION\t%u\t%u\nCPID\t%u\n", AUTH_CLIENT_PROTOCOL_MAJOR_VERSION, diff --git a/src/lib-compression/test-compression.c b/src/lib-compression/test-compression.c index 320d6b83ba..83c8060068 100644 --- a/src/lib-compression/test-compression.c +++ b/src/lib-compression/test-compression.c @@ -67,7 +67,7 @@ static void test_compression_handler(const struct compression_handler *handler) /* read and uncompress the data */ sha1_init(&sha1); - file_input = i_stream_create_fd(fd, IO_BLOCK_SIZE, FALSE); + file_input = i_stream_create_fd(fd, IO_BLOCK_SIZE); input = handler->create_istream(file_input, FALSE); while ((ret = i_stream_read_more(input, &data, &size)) > 0) { sha1_loop(&sha1, data, size); @@ -140,7 +140,7 @@ static void test_compress_file(const char *in_path, const char *out_path) /* verify that we can read the compressed file */ sha1_init(&sha1); - file_input = i_stream_create_fd(fd_out, IO_BLOCK_SIZE, FALSE); + file_input = i_stream_create_fd(fd_out, IO_BLOCK_SIZE); input = handler->create_istream(file_input, FALSE); while ((ret = i_stream_read_more(input, &data, &size)) > 0) { sha1_loop(&sha1, data, size); diff --git a/src/lib-dict/dict-client.c b/src/lib-dict/dict-client.c index 17e11ea635..8b5fadc7e8 100644 --- a/src/lib-dict/dict-client.c +++ b/src/lib-dict/dict-client.c @@ -414,8 +414,8 @@ static int client_dict_connect(struct client_dict *dict, const char **error_r) /* Dictionary lookups are blocking */ net_set_nonblock(dict->fd, FALSE); - dict->input = i_stream_create_fd(dict->fd, (size_t)-1, FALSE); - dict->output = o_stream_create_fd(dict->fd, 4096, FALSE); + dict->input = i_stream_create_fd(dict->fd, (size_t)-1); + dict->output = o_stream_create_fd(dict->fd, 4096); query = t_strdup_printf("%c%u\t%u\t%d\t%s\t%s\n", DICT_PROTOCOL_CMD_HELLO, diff --git a/src/lib-dict/dict-file.c b/src/lib-dict/dict-file.c index aa79b6dd84..f0c168d3c8 100644 --- a/src/lib-dict/dict-file.c +++ b/src/lib-dict/dict-file.c @@ -178,7 +178,7 @@ static int file_dict_refresh(struct file_dict *dict, const char **error_r) p_clear(dict->hash_pool); if (dict->fd != -1) { - input = i_stream_create_fd(dict->fd, (size_t)-1, FALSE); + input = i_stream_create_fd(dict->fd, (size_t)-1); while ((key = i_stream_read_next_line(input)) != NULL) { /* strdup() before the second read */ @@ -574,7 +574,7 @@ file_dict_write_changes(struct dict_transaction_memory_context *ctx, } file_dict_apply_changes(ctx, atomic_inc_not_found_r); - output = o_stream_create_fd(fd, 0, FALSE); + output = o_stream_create_fd(fd, 0); o_stream_cork(output); iter = hash_table_iterate_init(dict->hash); str = t_str_new(256); diff --git a/src/lib-dns/dns-lookup.c b/src/lib-dns/dns-lookup.c index b6dc0da714..fd814c7e15 100644 --- a/src/lib-dns/dns-lookup.c +++ b/src/lib-dns/dns-lookup.c @@ -302,7 +302,7 @@ int dns_client_connect(struct dns_client *client, const char **error_r) client->path); return -1; } - client->input = i_stream_create_fd(client->fd, MAX_INBUF_SIZE, FALSE); + client->input = i_stream_create_fd(client->fd, MAX_INBUF_SIZE); client->io = io_add(client->fd, IO_READ, dns_client_input, client); return 0; } diff --git a/src/lib-http/test-http-payload.c b/src/lib-http/test-http-payload.c index 6401376a79..d8270d4688 100644 --- a/src/lib-http/test-http-payload.c +++ b/src/lib-http/test-http-payload.c @@ -152,7 +152,7 @@ test_file_open(const char *path, return NULL; } - return i_stream_create_fd(fd, 40960, TRUE); + return i_stream_create_fd_autoclose(&fd, 40960); } /* diff --git a/src/lib-imap-client/imapc-connection.c b/src/lib-imap-client/imapc-connection.c index 8bf5b7d8ea..b4f90bc80b 100644 --- a/src/lib-imap-client/imapc-connection.c +++ b/src/lib-imap-client/imapc-connection.c @@ -1641,8 +1641,8 @@ static void imapc_connection_connect_next_ip(struct imapc_connection *conn) } } conn->fd = fd; - conn->input = conn->raw_input = i_stream_create_fd(fd, (size_t)-1, FALSE); - conn->output = conn->raw_output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = conn->raw_input = i_stream_create_fd(fd, (size_t)-1); + conn->output = conn->raw_output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); if (*conn->client->set.rawlog_dir != '\0' && diff --git a/src/lib-imap-urlauth/imap-urlauth-connection.c b/src/lib-imap-urlauth/imap-urlauth-connection.c index f94ee8d64a..6ab16e9700 100644 --- a/src/lib-imap-urlauth/imap-urlauth-connection.c +++ b/src/lib-imap-urlauth/imap-urlauth-connection.c @@ -914,8 +914,8 @@ imap_urlauth_connection_do_connect(struct imap_urlauth_connection *conn) timeout_remove(&conn->to_reconnect); conn->fd = fd; - conn->input = i_stream_create_fd(fd, (size_t)-1, FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, (size_t)-1); + conn->output = o_stream_create_fd(fd, (size_t)-1); conn->io = io_add(fd, IO_READ, imap_urlauth_input, conn); conn->state = IMAP_URLAUTH_STATE_AUTHENTICATING; diff --git a/src/lib-index/mail-index-strmap.c b/src/lib-index/mail-index-strmap.c index 88f06cd83c..4382d75a93 100644 --- a/src/lib-index/mail-index-strmap.c +++ b/src/lib-index/mail-index-strmap.c @@ -266,7 +266,7 @@ static int mail_index_strmap_open(struct mail_index_strmap_view *view) mail_index_strmap_set_syscall_error(strmap, "open()"); return -1; } - strmap->input = i_stream_create_fd(strmap->fd, (size_t)-1, FALSE); + strmap->input = i_stream_create_fd(strmap->fd, (size_t)-1); ret = i_stream_read_bytes(strmap->input, &data, &size, sizeof(hdr)); if (ret <= 0) { if (ret < 0) { @@ -1013,7 +1013,7 @@ static int mail_index_strmap_recreate(struct mail_index_strmap_view *view) temp_path); return -1; } - output = o_stream_create_fd(fd, 0, FALSE); + output = o_stream_create_fd(fd, 0); o_stream_cork(output); mail_index_strmap_recreate_write(view, output); if (o_stream_nfinish(output) < 0) { @@ -1167,7 +1167,7 @@ mail_index_strmap_write_append(struct mail_index_strmap_view *view) i_assert(old_recs[i].uid > view->last_read_uid); /* write the new records */ - output = o_stream_create_fd(view->strmap->fd, 0, FALSE); + output = o_stream_create_fd(view->strmap->fd, 0); (void)o_stream_seek(output, view->last_read_block_offset); o_stream_cork(output); mail_index_strmap_write_block(view, output, i, diff --git a/src/lib-lda/duplicate.c b/src/lib-lda/duplicate.c index 80a3b3eddc..66751112f0 100644 --- a/src/lib-lda/duplicate.c +++ b/src/lib-lda/duplicate.c @@ -169,7 +169,7 @@ static int duplicate_read(struct duplicate_file *file) } /* */ - input = i_stream_create_fd(fd, DUPLICATE_BUFSIZE, FALSE); + input = i_stream_create_fd(fd, DUPLICATE_BUFSIZE); if (i_stream_read_bytes(input, &data, &size, sizeof(hdr)) > 0) { memcpy(&hdr, data, sizeof(hdr)); if (hdr.version == 0 || hdr.version > DUPLICATE_VERSION + 10) { diff --git a/src/lib-lda/lmtp-client.c b/src/lib-lda/lmtp-client.c index 4d16a4ea12..5b882cac90 100644 --- a/src/lib-lda/lmtp-client.c +++ b/src/lib-lda/lmtp-client.c @@ -674,9 +674,8 @@ static int lmtp_client_connect(struct lmtp_client *client) client->host, client->port); return -1; } - client->input = - i_stream_create_fd(client->fd, LMTP_MAX_LINE_LEN, FALSE); - client->output = o_stream_create_fd(client->fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(client->fd, LMTP_MAX_LINE_LEN); + client->output = o_stream_create_fd(client->fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); o_stream_set_flush_callback(client->output, lmtp_client_output, client); /* we're already sending data in ostream, so can't use IO_WRITE here */ diff --git a/src/lib-lda/smtp-client.c b/src/lib-lda/smtp-client.c index 131766ef03..9fdbcb216c 100644 --- a/src/lib-lda/smtp-client.c +++ b/src/lib-lda/smtp-client.c @@ -300,7 +300,7 @@ smtp_client_send_flush(struct smtp_client *smtp_client, data_callback, smtp_client); } - input = i_stream_create_fd(smtp_client->temp_fd, (size_t)-1, FALSE); + input = i_stream_create_fd(smtp_client->temp_fd, (size_t)-1); lmtp_client_send(client, input); i_stream_unref(&input); diff --git a/src/lib-mail/istream-attachment-extractor.c b/src/lib-mail/istream-attachment-extractor.c index d0c130e3fc..7bdd2b8767 100644 --- a/src/lib-mail/istream-attachment-extractor.c +++ b/src/lib-mail/istream-attachment-extractor.c @@ -281,7 +281,7 @@ static int astream_open_output(struct attachment_istream *astream) return -1; astream->part.temp_fd = fd; - astream->part.temp_output = o_stream_create_fd(fd, 0, FALSE); + astream->part.temp_output = o_stream_create_fd(fd, 0); o_stream_cork(astream->part.temp_output); return 0; } @@ -369,7 +369,7 @@ static int astream_decode_base64(struct attachment_istream *astream) return -1; buf = buffer_create_dynamic(default_pool, 1024); - input = i_stream_create_fd(part->temp_fd, IO_BLOCK_SIZE, FALSE); + input = i_stream_create_fd(part->temp_fd, IO_BLOCK_SIZE); base64_input = i_stream_create_limit(input, part->base64_bytes); output = o_stream_create_fd_file(outfd, 0, FALSE); o_stream_cork(output); @@ -509,7 +509,7 @@ astream_part_finish(struct attachment_istream *astream, const char **error_r) return -1; /* copy data to attachment from temp file */ - input = i_stream_create_fd(part->temp_fd, IO_BLOCK_SIZE, FALSE); + input = i_stream_create_fd(part->temp_fd, IO_BLOCK_SIZE); while (i_stream_read_more(input, &data, &size) > 0) { o_stream_nsend(output, data, size); i_stream_skip(input, size); diff --git a/src/lib-master/anvil-client.c b/src/lib-master/anvil-client.c index eff41ff578..0189cd725d 100644 --- a/src/lib-master/anvil-client.c +++ b/src/lib-master/anvil-client.c @@ -148,8 +148,8 @@ int anvil_client_connect(struct anvil_client *client, bool retry) timeout_remove(&client->to_reconnect); client->fd = fd; - client->input = i_stream_create_fd(fd, ANVIL_INBUF_SIZE, FALSE); - client->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd, ANVIL_INBUF_SIZE); + client->output = o_stream_create_fd(fd, (size_t)-1); client->io = io_add(fd, IO_READ, anvil_input, client); if (o_stream_send_str(client->output, ANVIL_HANDSHAKE) < 0) { i_error("write(%s) failed: %s", client->path, diff --git a/src/lib-master/ipc-client.c b/src/lib-master/ipc-client.c index dd110e61b5..440164f007 100644 --- a/src/lib-master/ipc-client.c +++ b/src/lib-master/ipc-client.c @@ -91,8 +91,8 @@ static int ipc_client_connect(struct ipc_client *client) } client->io = io_add(client->fd, IO_READ, ipc_client_input, client); - client->input = i_stream_create_fd(client->fd, (size_t)-1, FALSE); - client->output = o_stream_create_fd(client->fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(client->fd, (size_t)-1); + client->output = o_stream_create_fd(client->fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); return 0; } diff --git a/src/lib-master/ipc-server.c b/src/lib-master/ipc-server.c index e1037b50d5..e25b9ea92b 100644 --- a/src/lib-master/ipc-server.c +++ b/src/lib-master/ipc-server.c @@ -109,8 +109,8 @@ static void ipc_server_connect(struct ipc_server *server) } server->io = io_add(server->fd, IO_READ, ipc_server_input, server); - server->input = i_stream_create_fd(server->fd, (size_t)-1, FALSE); - server->output = o_stream_create_fd(server->fd, (size_t)-1, FALSE); + server->input = i_stream_create_fd(server->fd, (size_t)-1); + server->output = o_stream_create_fd(server->fd, (size_t)-1); o_stream_set_no_error_handling(server->output, TRUE); o_stream_nsend_str(server->output, t_strdup_printf(IPC_SERVER_HANDSHAKE, server->name, my_pid)); diff --git a/src/lib-master/master-instance.c b/src/lib-master/master-instance.c index 271adfe278..de16d61de3 100644 --- a/src/lib-master/master-instance.c +++ b/src/lib-master/master-instance.c @@ -132,7 +132,7 @@ master_instance_list_write(struct master_instance_list *list, string_t *str = t_str_new(128); int ret = 0; - output = o_stream_create_fd(fd, 0, FALSE); + output = o_stream_create_fd(fd, 0); o_stream_cork(output); array_foreach(&list->instances, inst) { str_truncate(str, 0); diff --git a/src/lib-master/master-login-auth.c b/src/lib-master/master-login-auth.c index c28ff92e56..a643e4b494 100644 --- a/src/lib-master/master-login-auth.c +++ b/src/lib-master/master-login-auth.c @@ -389,8 +389,8 @@ master_login_auth_connect(struct master_login_auth *auth) return -1; } auth->fd = fd; - auth->input = i_stream_create_fd(fd, AUTH_MAX_INBUF_SIZE, FALSE); - auth->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + auth->input = i_stream_create_fd(fd, AUTH_MAX_INBUF_SIZE); + auth->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(auth->output, TRUE); auth->io = io_add(fd, IO_READ, master_login_auth_input, auth); return 0; diff --git a/src/lib-master/master-login.c b/src/lib-master/master-login.c index cac02d2c3a..658972563f 100644 --- a/src/lib-master/master-login.c +++ b/src/lib-master/master-login.c @@ -444,7 +444,7 @@ void master_login_add(struct master_login *login, int fd) conn->login = login; conn->fd = fd; conn->io = io_add(conn->fd, IO_READ, master_login_conn_input, conn); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); DLLIST_PREPEND(&login->conns, conn); diff --git a/src/lib-master/master-service-settings.c b/src/lib-master/master-service-settings.c index 4a25f6592c..044c6e7f71 100644 --- a/src/lib-master/master-service-settings.c +++ b/src/lib-master/master-service-settings.c @@ -452,7 +452,7 @@ int master_service_settings_read(struct master_service *service, SETTINGS_PARSER_FLAG_IGNORE_UNKNOWN_KEYS); if (fd != -1) { - istream = i_stream_create_fd(fd, (size_t)-1, FALSE); + istream = i_stream_create_fd(fd, (size_t)-1); now = time(NULL); timeout = now + CONFIG_READ_TIMEOUT_SECS; do { diff --git a/src/lib-storage/index/imapc/imapc-mail-fetch.c b/src/lib-storage/index/imapc/imapc-mail-fetch.c index 36a7bb255d..725585d1db 100644 --- a/src/lib-storage/index/imapc/imapc-mail-fetch.c +++ b/src/lib-storage/index/imapc/imapc-mail-fetch.c @@ -301,8 +301,7 @@ static void imapc_mail_cache_get(struct imapc_mail *mail, if (cache->fd != -1) { mail->fd = cache->fd; - mail->imail.data.stream = - i_stream_create_fd(mail->fd, 0, FALSE); + mail->imail.data.stream = i_stream_create_fd(mail->fd, 0); cache->fd = -1; } else if (cache->buf != NULL) { mail->body = cache->buf; @@ -608,7 +607,7 @@ imapc_fetch_stream(struct imapc_mail *mail, return; } mail->fd = fd; - imail->data.stream = i_stream_create_fd(fd, 0, FALSE); + imail->data.stream = i_stream_create_fd(fd, 0); } else { if (!imap_arg_get_nstring(arg, &value)) value = NULL; @@ -690,7 +689,7 @@ imapc_fetch_header_stream(struct imapc_mail *mail, if (args->type == IMAP_ARG_LITERAL_SIZE) { if (!imapc_find_lfile_arg(reply, args, &fd)) return; - input = i_stream_create_fd(fd, 0, FALSE); + input = i_stream_create_fd(fd, 0); } else { if (!imap_arg_get_nstring(args, &value)) return; diff --git a/src/lib-storage/index/imapc/imapc-save.c b/src/lib-storage/index/imapc/imapc-save.c index b8a6919b5f..da463d98c1 100644 --- a/src/lib-storage/index/imapc/imapc-save.c +++ b/src/lib-storage/index/imapc/imapc-save.c @@ -234,7 +234,7 @@ static int imapc_save_append(struct imapc_save_context *ctx) ctx->mbox->exists_received = FALSE; - input = i_stream_create_fd(ctx->fd, IO_BLOCK_SIZE, FALSE); + input = i_stream_create_fd(ctx->fd, IO_BLOCK_SIZE); sctx.ctx = ctx; sctx.ret = -2; cmd = imapc_client_cmd(ctx->mbox->storage->client->client, diff --git a/src/lib-storage/index/maildir/maildir-keywords.c b/src/lib-storage/index/maildir/maildir-keywords.c index 161bd01286..f29fa97292 100644 --- a/src/lib-storage/index/maildir/maildir-keywords.c +++ b/src/lib-storage/index/maildir/maildir-keywords.c @@ -157,7 +157,7 @@ static int maildir_keywords_sync(struct maildir_keywords *mk) } maildir_keywords_clear(mk); - input = i_stream_create_fd(fd, 1024, FALSE); + input = i_stream_create_fd(fd, 1024); while ((line = i_stream_read_next_line(input)) != NULL) { p = strchr(line, ' '); if (p == NULL) { diff --git a/src/lib-storage/index/maildir/maildir-uidlist.c b/src/lib-storage/index/maildir/maildir-uidlist.c index 61faf4d6c1..c364bd6b6b 100644 --- a/src/lib-storage/index/maildir/maildir-uidlist.c +++ b/src/lib-storage/index/maildir/maildir-uidlist.c @@ -765,7 +765,7 @@ maildir_uidlist_update_read(struct maildir_uidlist *uidlist, st.st_size/8)); } - input = i_stream_create_fd(fd, (size_t)-1, FALSE); + input = i_stream_create_fd(fd, (size_t)-1); i_stream_seek(input, last_read_offset); orig_uid_validity = uidlist->uid_validity; diff --git a/src/lib-storage/index/mbox/mbox-file.c b/src/lib-storage/index/mbox/mbox-file.c index cc951c4b19..e2f80df698 100644 --- a/src/lib-storage/index/mbox/mbox-file.c +++ b/src/lib-storage/index/mbox/mbox-file.c @@ -81,8 +81,7 @@ int mbox_file_open_stream(struct mbox_mailbox *mbox) } else { mbox->mbox_file_stream = i_stream_create_fd(mbox->mbox_fd, - MBOX_READ_BLOCK_SIZE, - FALSE); + MBOX_READ_BLOCK_SIZE); i_stream_set_init_buffer_size(mbox->mbox_file_stream, MBOX_READ_BLOCK_SIZE); } diff --git a/src/lib-storage/index/pop3c/pop3c-client.c b/src/lib-storage/index/pop3c/pop3c-client.c index 9388568de6..e74fe22497 100644 --- a/src/lib-storage/index/pop3c/pop3c-client.c +++ b/src/lib-storage/index/pop3c/pop3c-client.c @@ -640,9 +640,9 @@ static void pop3c_client_connect_ip(struct pop3c_client *client) } client->input = client->raw_input = - i_stream_create_fd(client->fd, POP3C_MAX_INBUF_SIZE, FALSE); + i_stream_create_fd(client->fd, POP3C_MAX_INBUF_SIZE); client->output = client->raw_output = - o_stream_create_fd(client->fd, (size_t)-1, FALSE); + o_stream_create_fd(client->fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); if (*client->set.rawlog_dir != '\0' && diff --git a/src/lib/connection.c b/src/lib/connection.c index b73a8c3241..5310975944 100644 --- a/src/lib/connection.c +++ b/src/lib/connection.c @@ -126,7 +126,7 @@ static void connection_init_streams(struct connection *conn) if (set->input_max_size != 0) { conn->input = i_stream_create_fd(conn->fd_in, - set->input_max_size, FALSE); + set->input_max_size); i_stream_set_name(conn->input, conn->name); conn->io = io_add_istream(conn->input, *conn->list->v.input, conn); } else { @@ -134,7 +134,7 @@ static void connection_init_streams(struct connection *conn) } if (set->output_max_size != 0) { conn->output = o_stream_create_fd(conn->fd_out, - set->output_max_size, FALSE); + set->output_max_size); o_stream_set_no_error_handling(conn->output, TRUE); o_stream_set_name(conn->output, conn->name); } diff --git a/src/lib/file-copy.c b/src/lib/file-copy.c index 99a5a55793..7dd7331361 100644 --- a/src/lib/file-copy.c +++ b/src/lib/file-copy.c @@ -67,7 +67,7 @@ static int file_copy_to_tmp(const char *srcpath, const char *tmppath, if (fchown(fd_out, (uid_t)-1, st.st_gid) < 0 && errno != EPERM) i_error("fchown(%s) failed: %m", tmppath); - input = i_stream_create_fd(fd_in, IO_BLOCK_SIZE, FALSE); + input = i_stream_create_fd(fd_in, IO_BLOCK_SIZE); output = o_stream_create_fd_file(fd_out, 0, FALSE); switch (o_stream_send_istream(output, input)) { diff --git a/src/lib/istream-file.c b/src/lib/istream-file.c index fcf284b5de..15cdc21e76 100644 --- a/src/lib/istream-file.c +++ b/src/lib/istream-file.c @@ -227,8 +227,7 @@ i_stream_create_file_common(struct file_istream *fstream, return input; } -struct istream *i_stream_create_fd(int fd, size_t max_buffer_size, - bool autoclose_fd) +struct istream *i_stream_create_fd(int fd, size_t max_buffer_size) { struct file_istream *fstream; @@ -236,14 +235,19 @@ struct istream *i_stream_create_fd(int fd, size_t max_buffer_size, fstream = i_new(struct file_istream, 1); return i_stream_create_file_common(fstream, fd, NULL, - max_buffer_size, autoclose_fd); + max_buffer_size, FALSE); } struct istream *i_stream_create_fd_autoclose(int *fd, size_t max_buffer_size) { struct istream *input; + struct file_istream *fstream; + + i_assert(*fd != -1); - input = i_stream_create_fd(*fd, max_buffer_size, TRUE); + fstream = i_new(struct file_istream, 1); + input = i_stream_create_file_common(fstream, *fd, NULL, + max_buffer_size, TRUE); *fd = -1; return input; } diff --git a/src/lib/istream-rawlog.c b/src/lib/istream-rawlog.c index 53a0f06848..5bcda78ca2 100644 --- a/src/lib/istream-rawlog.c +++ b/src/lib/istream-rawlog.c @@ -82,7 +82,9 @@ i_stream_create_rawlog(struct istream *input, const char *rawlog_path, i_assert(rawlog_path != NULL); i_assert(rawlog_fd != -1); - rawlog_output = o_stream_create_fd(rawlog_fd, 0, autoclose_fd); + rawlog_output = autoclose_fd ? + o_stream_create_fd_autoclose(&rawlog_fd, 0) : + o_stream_create_fd(rawlog_fd, 0); o_stream_set_name(rawlog_output, t_strdup_printf("rawlog(%s)", rawlog_path)); return i_stream_create_rawlog_from_stream(input, rawlog_output, flags); diff --git a/src/lib/istream.h b/src/lib/istream.h index 34f95715d1..b987b5acec 100644 --- a/src/lib/istream.h +++ b/src/lib/istream.h @@ -22,8 +22,7 @@ struct istream { typedef void istream_callback_t(void *context); -struct istream *i_stream_create_fd(int fd, size_t max_buffer_size, - bool autoclose_fd); +struct istream *i_stream_create_fd(int fd, size_t max_buffer_size); /* The fd is set to -1 immediately to avoid accidentally closing it twice. */ struct istream *i_stream_create_fd_autoclose(int *fd, size_t max_buffer_size); /* Open the given path only when something is actually tried to be read from diff --git a/src/lib/ostream-file.c b/src/lib/ostream-file.c index 4ccc1740dd..a1c71c5a72 100644 --- a/src/lib/ostream-file.c +++ b/src/lib/ostream-file.c @@ -29,6 +29,8 @@ ((size) < SSIZE_T_MAX ? (size_t)(size) : SSIZE_T_MAX) static void stream_send_io(struct file_ostream *fstream); +static struct ostream * o_stream_create_fd_common(int fd, + size_t max_buffer_size, bool autoclose_fd); static void stream_closed(struct file_ostream *fstream) { @@ -988,8 +990,9 @@ static void fstream_init_file(struct file_ostream *fstream) } } -struct ostream * -o_stream_create_fd(int fd, size_t max_buffer_size, bool autoclose_fd) +static +struct ostream * o_stream_create_fd_common(int fd, size_t max_buffer_size, + bool autoclose_fd) { struct file_ostream *fstream; struct ostream *ostream; @@ -1016,13 +1019,18 @@ o_stream_create_fd(int fd, size_t max_buffer_size, bool autoclose_fd) } struct ostream * -o_stream_create_fd_autoclose(int *fd, size_t max_buffer_size) +o_stream_create_fd(int fd, size_t max_buffer_size) { - struct ostream *output; + return o_stream_create_fd_common(fd, max_buffer_size, FALSE); +} - output = o_stream_create_fd(*fd, max_buffer_size, TRUE); +struct ostream * +o_stream_create_fd_autoclose(int *fd, size_t max_buffer_size) +{ + struct ostream *ostream = o_stream_create_fd_common(*fd, + max_buffer_size, TRUE); *fd = -1; - return output; + return ostream; } struct ostream * diff --git a/src/lib/ostream-rawlog.c b/src/lib/ostream-rawlog.c index e1e25d9956..46c741a95b 100644 --- a/src/lib/ostream-rawlog.c +++ b/src/lib/ostream-rawlog.c @@ -61,7 +61,10 @@ o_stream_create_rawlog(struct ostream *output, const char *rawlog_path, i_assert(rawlog_path != NULL); i_assert(rawlog_fd != -1); - rawlog_output = o_stream_create_fd(rawlog_fd, 0, autoclose_fd); + rawlog_output = autoclose_fd ? + o_stream_create_fd_autoclose(&rawlog_fd, 0): + o_stream_create_fd(rawlog_fd, 0); + o_stream_set_name(rawlog_output, t_strdup_printf("rawlog(%s)", rawlog_path)); return o_stream_create_rawlog_from_stream(output, rawlog_output, flags); diff --git a/src/lib/ostream.h b/src/lib/ostream.h index 2b9afe1874..7b1901ec92 100644 --- a/src/lib/ostream.h +++ b/src/lib/ostream.h @@ -51,8 +51,7 @@ typedef void ostream_callback_t(void *context); /* Create new output stream from given file descriptor. If max_buffer_size is 0, an "optimal" buffer size is used (max 128kB). */ -struct ostream * -o_stream_create_fd(int fd, size_t max_buffer_size, bool autoclose_fd); +struct ostream *o_stream_create_fd(int fd, size_t max_buffer_size); /* The fd is set to -1 immediately to avoid accidentally closing it twice. */ struct ostream *o_stream_create_fd_autoclose(int *fd, size_t max_buffer_size); /* Create an output stream from a regular file which begins at given offset. diff --git a/src/lib/test-iostream-temp.c b/src/lib/test-iostream-temp.c index 0a3bdf7b1b..2961d79877 100644 --- a/src/lib/test-iostream-temp.c +++ b/src/lib/test-iostream-temp.c @@ -57,7 +57,7 @@ static void test_iostream_temp_istream(void) test_assert(write(fd, "foobar", 6) == 6); test_assert(lseek(fd, 0, SEEK_SET) == 0); - input = i_stream_create_fd(fd, 1024, TRUE); + input = i_stream_create_fd_autoclose(&fd, 1024); /* a working fd-dup */ output = iostream_temp_create_sized(".nonexistent/", IOSTREAM_TEMP_FLAG_TRY_FD_DUP, "test", 1); diff --git a/src/lib/test-ostream-file.c b/src/lib/test-ostream-file.c index 281e701c9d..c4e8a4f929 100644 --- a/src/lib/test-ostream-file.c +++ b/src/lib/test-ostream-file.c @@ -27,7 +27,7 @@ static void test_ostream_file_random_once(void) if (fd == -1) i_fatal("safe_mkstemp(%s) failed: %m", str_c(path)); i_unlink(str_c(path)); - output = o_stream_create_fd(fd, MAX_BUFSIZE, FALSE); + output = o_stream_create_fd(fd, MAX_BUFSIZE); o_stream_cork(output); size = (rand() % MAX_BUFSIZE) + 1; @@ -84,13 +84,13 @@ static void test_ostream_file_send_istream_file(void) i_fatal("creat(.temp.istream) failed: %m"); test_assert(write(fd, "1234567890", 10) == 10); test_assert(lseek(fd, 0, SEEK_SET) == 0); - input = i_stream_create_fd(fd, 1024, TRUE); + input = i_stream_create_fd_autoclose(&fd, 1024); /* temp file ostream */ fd = open(".temp.ostream", O_RDWR | O_CREAT | O_TRUNC, 0600); if (fd == -1) i_fatal("creat(.temp.ostream) failed: %m"); - output = o_stream_create_fd(fd, 0, TRUE); + output = o_stream_create_fd(fd, 0); /* test that writing works between two files */ i_stream_seek(input, 3); @@ -104,7 +104,7 @@ static void test_ostream_file_send_istream_file(void) /* test that writing works within the same file */ i_stream_destroy(&input); - input = i_stream_create_fd(fd, 1024, FALSE); + input = i_stream_create_fd(fd, 1024); /* forwards: 4567 -> 4677 */ o_stream_seek(output, 1); i_stream_seek(input, 2); @@ -119,7 +119,7 @@ static void test_ostream_file_send_istream_file(void) /* backwards: 1234 -> 11234 */ memcpy(buf, "1234", 4); test_assert(pwrite(fd, buf, 4, 0) == 4); - input = i_stream_create_fd(fd, 1024, FALSE); + input = i_stream_create_fd(fd, 1024); o_stream_seek(output, 1); test_assert(o_stream_send_istream(output, input) == OSTREAM_SEND_ISTREAM_RESULT_FINISHED); test_assert(output->offset == 5); @@ -128,6 +128,7 @@ static void test_ostream_file_send_istream_file(void) i_stream_destroy(&input); o_stream_destroy(&output); + i_close_fd(&fd); i_unlink(".temp.istream"); i_unlink(".temp.ostream"); @@ -149,11 +150,11 @@ static void test_ostream_file_send_istream_sendfile(void) i_fatal("creat(.temp.istream) failed: %m"); test_assert(write(fd, "abcdefghij", 10) == 10); test_assert(lseek(fd, 0, SEEK_SET) == 0); - input = i_stream_create_fd(fd, 1024, TRUE); + input = i_stream_create_fd_autoclose(&fd, 1024); /* temp socket ostream */ i_assert(socketpair(AF_UNIX, SOCK_STREAM, 0, sock_fd) == 0); - output = o_stream_create_fd(sock_fd[0], 0, TRUE); + output = o_stream_create_fd_autoclose(sock_fd, 0); /* test that sendfile() works */ i_stream_seek(input, 3); diff --git a/src/lmtp/client.c b/src/lmtp/client.c index 8f9d704c99..ff83042377 100644 --- a/src/lmtp/client.c +++ b/src/lmtp/client.c @@ -253,8 +253,8 @@ struct client *client_create(int fd_in, int fd_out, client->local_ip = conn->local_ip; client->local_port = conn->local_port; - client->input = i_stream_create_fd(fd_in, CLIENT_MAX_INPUT_SIZE, FALSE); - client->output = o_stream_create_fd(fd_out, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd_in, CLIENT_MAX_INPUT_SIZE); + client->output = o_stream_create_fd(fd_out, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); client_io_reset(client); diff --git a/src/lmtp/commands.c b/src/lmtp/commands.c index 9211cc93b5..321b989c1f 100644 --- a/src/lmtp/commands.c +++ b/src/lmtp/commands.c @@ -969,8 +969,7 @@ static struct istream *client_get_input(struct client *client) if (state->mail_data_output != NULL) { o_stream_unref(&state->mail_data_output); inputs[1] = i_stream_create_fd(state->mail_data_fd, - MAIL_READ_FULL_BLOCK_SIZE, - FALSE); + MAIL_READ_FULL_BLOCK_SIZE); i_stream_set_init_buffer_size(inputs[1], MAIL_READ_FULL_BLOCK_SIZE); } else { diff --git a/src/log/doveadm-connection.c b/src/log/doveadm-connection.c index 1f06346482..4182192318 100644 --- a/src/log/doveadm-connection.c +++ b/src/log/doveadm-connection.c @@ -64,7 +64,7 @@ void doveadm_connection_create(struct log_error_buffer *errorbuf, int fd) conn = i_new(struct doveadm_connection, 1); conn->errorbuf = errorbuf; conn->fd = fd; - conn->output = o_stream_create_fd(conn->fd, (size_t)-1, FALSE); + conn->output = o_stream_create_fd(conn->fd, (size_t)-1); if (doveadm_connection_send_errors(conn) < 0) doveadm_connection_destroy(&conn); else { diff --git a/src/log/log-connection.c b/src/log/log-connection.c index 87f8ece211..2f96a8ce29 100644 --- a/src/log/log-connection.c +++ b/src/log/log-connection.c @@ -394,7 +394,7 @@ void log_connection_create(struct log_error_buffer *errorbuf, log->fd = fd; log->listen_fd = listen_fd; log->io = io_add(fd, IO_READ, log_connection_input, log); - log->input = i_stream_create_fd(fd, PIPE_BUF, FALSE); + log->input = i_stream_create_fd(fd, PIPE_BUF); log->default_prefix = i_strdup_printf("listen_fd %d", listen_fd); hash_table_create_direct(&log->clients, default_pool, 0); array_idx_set(&logs_by_fd, listen_fd, &log); diff --git a/src/login-common/client-common.c b/src/login-common/client-common.c index 4fde20edfc..d0a9c526ec 100644 --- a/src/login-common/client-common.c +++ b/src/login-common/client-common.c @@ -80,10 +80,8 @@ static void client_idle_disconnect_timeout(struct client *client) static void client_open_streams(struct client *client) { - client->input = - i_stream_create_fd(client->fd, LOGIN_MAX_INBUF_SIZE, FALSE); - client->output = - o_stream_create_fd(client->fd, LOGIN_MAX_OUTBUF_SIZE, FALSE); + client->input = i_stream_create_fd(client->fd, LOGIN_MAX_INBUF_SIZE); + client->output = o_stream_create_fd(client->fd, LOGIN_MAX_OUTBUF_SIZE); o_stream_set_no_error_handling(client->output, TRUE); if (login_rawlog_dir != NULL) { diff --git a/src/login-common/login-proxy.c b/src/login-common/login-proxy.c index a68f7467a1..de74eb41f3 100644 --- a/src/login-common/login-proxy.c +++ b/src/login-common/login-proxy.c @@ -240,10 +240,9 @@ static void proxy_prelogin_input(struct login_proxy *proxy) static void proxy_plain_connected(struct login_proxy *proxy) { proxy->server_input = - i_stream_create_fd(proxy->server_fd, MAX_PROXY_INPUT_SIZE, - FALSE); + i_stream_create_fd(proxy->server_fd, MAX_PROXY_INPUT_SIZE); proxy->server_output = - o_stream_create_fd(proxy->server_fd, (size_t)-1, FALSE); + o_stream_create_fd(proxy->server_fd, (size_t)-1); o_stream_set_no_error_handling(proxy->server_output, TRUE); proxy->server_io = diff --git a/src/plugins/acl/acl-backend-vfile-acllist.c b/src/plugins/acl/acl-backend-vfile-acllist.c index 6e3fd226d9..7ec62bfc3e 100644 --- a/src/plugins/acl/acl-backend-vfile-acllist.c +++ b/src/plugins/acl/acl-backend-vfile-acllist.c @@ -129,7 +129,7 @@ static int acl_backend_vfile_acllist_read(struct acl_backend_vfile *backend) backend->acllist_mtime = st.st_mtime; acllist_clear(backend, st.st_size); - input = i_stream_create_fd(fd, (size_t)-1, FALSE); + input = i_stream_create_fd(fd, (size_t)-1); while ((line = i_stream_read_next_line(input)) != NULL) { acllist.mtime = 0; for (p = line; *p >= '0' && *p <= '9'; p++) diff --git a/src/plugins/acl/acl-backend-vfile.c b/src/plugins/acl/acl-backend-vfile.c index db8048a5df..92b76c72e3 100644 --- a/src/plugins/acl/acl-backend-vfile.c +++ b/src/plugins/acl/acl-backend-vfile.c @@ -364,7 +364,7 @@ acl_backend_vfile_read(struct acl_object *aclobj, bool global, const char *path, if (aclobj->backend->debug) i_debug("acl vfile: reading file %s", path); - input = i_stream_create_fd(fd, (size_t)-1, FALSE); + input = i_stream_create_fd(fd, (size_t)-1); i_stream_set_return_partial_line(input, TRUE); linenum = 0; while ((line = i_stream_read_next_line(input)) != NULL) { diff --git a/src/plugins/fts-squat/squat-test.c b/src/plugins/fts-squat/squat-test.c index ca45c33d4d..90f8cd0e69 100644 --- a/src/plugins/fts-squat/squat-test.c +++ b/src/plugins/fts-squat/squat-test.c @@ -69,7 +69,7 @@ int main(int argc ATTR_UNUSED, char *argv[]) return 1; valid = buffer_create_dynamic(default_pool, 4096); - input = i_stream_create_fd(fd, (size_t)-1, FALSE); + input = i_stream_create_fd(fd, (size_t)-1); ret = 0; while (ret == 0 && (line = i_stream_read_next_line(input)) != NULL) { if (last != input->v_offset/(1024*100)) { diff --git a/src/plugins/fts-squat/squat-trie.c b/src/plugins/fts-squat/squat-trie.c index bbf6e89121..c24aacb032 100644 --- a/src/plugins/fts-squat/squat-trie.c +++ b/src/plugins/fts-squat/squat-trie.c @@ -1639,7 +1639,7 @@ static int squat_trie_write(struct squat_trie_build_context *ctx) } } - output = o_stream_create_fd(fd, 0, FALSE); + output = o_stream_create_fd(fd, 0); o_stream_cork(output); o_stream_nsend(output, &trie->hdr, sizeof(trie->hdr)); } else { @@ -1653,7 +1653,7 @@ static int squat_trie_write(struct squat_trie_build_context *ctx) if (squat_trie_write_lock(ctx) < 0) return -1; } - output = o_stream_create_fd(trie->fd, 0, FALSE); + output = o_stream_create_fd(trie->fd, 0); o_stream_cork(output); if (trie->hdr.used_file_size != 0) diff --git a/src/plugins/fts-squat/squat-uidlist.c b/src/plugins/fts-squat/squat-uidlist.c index 348dd646d7..566e9efd10 100644 --- a/src/plugins/fts-squat/squat-uidlist.c +++ b/src/plugins/fts-squat/squat-uidlist.c @@ -710,7 +710,7 @@ int squat_uidlist_build_init(struct squat_uidlist *uidlist, ctx = i_new(struct squat_uidlist_build_context, 1); ctx->uidlist = uidlist; - ctx->output = o_stream_create_fd(uidlist->fd, 0, FALSE); + ctx->output = o_stream_create_fd(uidlist->fd, 0); if (ctx->output->offset == 0) { struct squat_uidlist_file_header hdr; @@ -927,7 +927,7 @@ int squat_uidlist_rebuild_init(struct squat_uidlist_build_context *build_ctx, ctx->uidlist = build_ctx->uidlist; ctx->build_ctx = build_ctx; ctx->fd = fd; - ctx->output = o_stream_create_fd(ctx->fd, 0, FALSE); + ctx->output = o_stream_create_fd(ctx->fd, 0); ctx->next_uid_list_idx = 0x100; o_stream_cork(ctx->output); diff --git a/src/plugins/fts/fts-expunge-log.c b/src/plugins/fts/fts-expunge-log.c index 667d66ac7f..d58d444459 100644 --- a/src/plugins/fts/fts-expunge-log.c +++ b/src/plugins/fts/fts-expunge-log.c @@ -401,7 +401,7 @@ fts_expunge_log_read_begin(struct fts_expunge_log *log) if (fts_expunge_log_reopen_if_needed(log, FALSE) < 0) ctx->failed = TRUE; else if (log->fd != -1) - ctx->input = i_stream_create_fd(log->fd, (size_t)-1, FALSE); + ctx->input = i_stream_create_fd(log->fd, (size_t)-1); ctx->unlink = TRUE; return ctx; } diff --git a/src/plugins/fts/fts-indexer.c b/src/plugins/fts/fts-indexer.c index de1848bb01..884132ac9a 100644 --- a/src/plugins/fts/fts-indexer.c +++ b/src/plugins/fts/fts-indexer.c @@ -126,7 +126,7 @@ int fts_indexer_init(struct fts_backend *backend, struct mailbox *box, ctx->box = box; ctx->path = i_strdup(path); ctx->fd = fd; - ctx->input = i_stream_create_fd(fd, 128, FALSE); + ctx->input = i_stream_create_fd(fd, 128); ctx->search_start_time = ioloop_timeval; value = mail_user_plugin_getenv(box->storage->user, "fts_index_timeout"); diff --git a/src/plugins/mail-filter/istream-ext-filter.c b/src/plugins/mail-filter/istream-ext-filter.c index 0c8ac22702..7373e428d6 100644 --- a/src/plugins/mail-filter/istream-ext-filter.c +++ b/src/plugins/mail-filter/istream-ext-filter.c @@ -176,8 +176,8 @@ static int filter_connect(struct mail_filter_istream *mstream, mstream->fd = fd; mstream->ext_in = - i_stream_create_fd(fd, mstream->istream.max_buffer_size, FALSE); - mstream->ext_out = o_stream_create_fd(fd, 0, FALSE); + i_stream_create_fd(fd, mstream->istream.max_buffer_size); + mstream->ext_out = o_stream_create_fd(fd, 0); str = t_str_new(256); str_append(str, "VERSION\tscript\t3\t0\nnoreply\n"); diff --git a/src/plugins/mail-filter/ostream-ext-filter.c b/src/plugins/mail-filter/ostream-ext-filter.c index d4421460e6..06498b615d 100644 --- a/src/plugins/mail-filter/ostream-ext-filter.c +++ b/src/plugins/mail-filter/ostream-ext-filter.c @@ -137,8 +137,8 @@ static int filter_connect(struct mail_filter_ostream *mstream, net_set_nonblock(fd, FALSE); mstream->fd = fd; - mstream->ext_in = i_stream_create_fd(fd, IO_BLOCK_SIZE, FALSE); - mstream->ext_out = o_stream_create_fd(fd, 0, FALSE); + mstream->ext_in = i_stream_create_fd(fd, IO_BLOCK_SIZE); + mstream->ext_out = o_stream_create_fd(fd, 0); str = t_str_new(256); str_append(str, "VERSION\tscript\t3\t0\nnoreply\n"); diff --git a/src/plugins/trash/trash-plugin.c b/src/plugins/trash/trash-plugin.c index 6ded3b5bc3..8dbe7f7eb4 100644 --- a/src/plugins/trash/trash-plugin.c +++ b/src/plugins/trash/trash-plugin.c @@ -292,7 +292,7 @@ static int read_configuration(struct mail_user *user, const char *path) p_array_init(&tuser->trash_boxes, user->pool, INIT_TRASH_MAILBOX_COUNT); - input = i_stream_create_fd(fd, (size_t)-1, FALSE); + input = i_stream_create_fd(fd, (size_t)-1); i_stream_set_return_partial_line(input, TRUE); while ((line = i_stream_read_next_line(input)) != NULL) { /* */ diff --git a/src/plugins/virtual/virtual-config.c b/src/plugins/virtual/virtual-config.c index 908bf476ad..016ac10566 100644 --- a/src/plugins/virtual/virtual-config.c +++ b/src/plugins/virtual/virtual-config.c @@ -497,7 +497,7 @@ int virtual_config_read(struct virtual_mailbox *mbox) ctx.mbox = mbox; ctx.pool = mbox->box.pool; ctx.rule = t_str_new(256); - ctx.input = i_stream_create_fd(fd, (size_t)-1, FALSE); + ctx.input = i_stream_create_fd(fd, (size_t)-1); i_stream_set_return_partial_line(ctx.input, TRUE); while ((line = i_stream_read_next_line(ctx.input)) != NULL) { linenum++; diff --git a/src/pop3/pop3-client.c b/src/pop3/pop3-client.c index 35b4f74fa3..e34b6d191d 100644 --- a/src/pop3/pop3-client.c +++ b/src/pop3/pop3-client.c @@ -395,8 +395,8 @@ int client_create(int fd_in, int fd_out, const char *session_id, client->session_id = p_strdup(pool, session_id); client->fd_in = fd_in; client->fd_out = fd_out; - client->input = i_stream_create_fd(fd_in, MAX_INBUF_SIZE, FALSE); - client->output = o_stream_create_fd(fd_out, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd_in, MAX_INBUF_SIZE); + client->output = o_stream_create_fd(fd_out, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); o_stream_set_flush_callback(client->output, client_output, client); diff --git a/src/replication/aggregator/notify-connection.c b/src/replication/aggregator/notify-connection.c index 25727b6b38..c07654bba6 100644 --- a/src/replication/aggregator/notify-connection.c +++ b/src/replication/aggregator/notify-connection.c @@ -109,9 +109,9 @@ void notify_connection_create(int fd, bool fifo) conn->refcount = 1; conn->fd = fd; conn->io = io_add(fd, IO_READ, notify_input, conn); - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); if (!fifo) { - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); } diff --git a/src/replication/aggregator/replicator-connection.c b/src/replication/aggregator/replicator-connection.c index 4cf06d6eeb..91bf16059c 100644 --- a/src/replication/aggregator/replicator-connection.c +++ b/src/replication/aggregator/replicator-connection.c @@ -171,8 +171,8 @@ static void replicator_connection_connect(struct replicator_connection *conn) timeout_remove(&conn->to); conn->fd = fd; conn->io = io_add(fd, IO_READ, replicator_input, conn); - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); o_stream_nsend_str(conn->output, REPLICATOR_HANDSHAKE); o_stream_set_flush_callback(conn->output, replicator_output, conn); diff --git a/src/replication/replicator/dsync-client.c b/src/replication/replicator/dsync-client.c index 641ef473a0..1adebb786b 100644 --- a/src/replication/replicator/dsync-client.c +++ b/src/replication/replicator/dsync-client.c @@ -175,8 +175,8 @@ static int dsync_connect(struct dsync_client *client) } client->last_connect_failure = 0; client->io = io_add(client->fd, IO_READ, dsync_input, client); - client->input = i_stream_create_fd(client->fd, (size_t)-1, FALSE); - client->output = o_stream_create_fd(client->fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(client->fd, (size_t)-1); + client->output = o_stream_create_fd(client->fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); o_stream_nsend_str(client->output, DOVEADM_HANDSHAKE); return 0; diff --git a/src/replication/replicator/notify-connection.c b/src/replication/replicator/notify-connection.c index 1f62cec30f..e70b4e8fe2 100644 --- a/src/replication/replicator/notify-connection.c +++ b/src/replication/replicator/notify-connection.c @@ -139,8 +139,8 @@ notify_connection_create(int fd, struct replicator_queue *queue) conn->refcount = 1; conn->queue = queue; conn->fd = fd; - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - conn->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + conn->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(conn->output, TRUE); conn->io = io_add(fd, IO_READ, notify_connection_input, conn); conn->queue = queue; diff --git a/src/stats/client.c b/src/stats/client.c index f78c70155e..be056a9319 100644 --- a/src/stats/client.c +++ b/src/stats/client.c @@ -147,8 +147,8 @@ struct client *client_create(int fd) client = i_new(struct client, 1); client->fd = fd; client->io = io_add(fd, IO_READ, client_input, client); - client->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); - client->output = o_stream_create_fd(fd, (size_t)-1, FALSE); + client->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); + client->output = o_stream_create_fd(fd, (size_t)-1); o_stream_set_no_error_handling(client->output, TRUE); o_stream_set_flush_callback(client->output, client_output, client); client->cmd_pool = pool_alloconly_create("cmd pool", 1024); diff --git a/src/stats/fifo-input-connection.c b/src/stats/fifo-input-connection.c index 4c9e060414..3ef0f74e20 100644 --- a/src/stats/fifo-input-connection.c +++ b/src/stats/fifo-input-connection.c @@ -78,7 +78,7 @@ struct fifo_input_connection *fifo_input_connection_create(int fd) conn = i_new(struct fifo_input_connection, 1); conn->fd = fd; - conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE, FALSE); + conn->input = i_stream_create_fd(fd, MAX_INBUF_SIZE); conn->io = io_add(fd, IO_READ, fifo_input_connection_input, conn); DLLIST_PREPEND(&fifo_conns, conn); return conn; diff --git a/src/util/rawlog.c b/src/util/rawlog.c index dadbab68a2..e1fe2baab7 100644 --- a/src/util/rawlog.c +++ b/src/util/rawlog.c @@ -281,7 +281,7 @@ rawlog_proxy_create(int client_in_fd, int client_out_fd, int server_fd, proxy = i_new(struct rawlog_proxy, 1); proxy->server_fd = server_fd; - proxy->server_output = o_stream_create_fd(server_fd, (size_t)-1, FALSE); + proxy->server_output = o_stream_create_fd(server_fd, (size_t)-1); o_stream_set_no_error_handling(proxy->server_output, TRUE); o_stream_set_flush_callback(proxy->server_output, server_output, proxy); proxy->server_io = io_add(server_fd, IO_READ, server_input, proxy); @@ -289,7 +289,7 @@ rawlog_proxy_create(int client_in_fd, int client_out_fd, int server_fd, proxy->client_in_fd = client_in_fd; proxy->client_out_fd = client_out_fd; proxy->client_output = - o_stream_create_fd(client_out_fd, (size_t)-1, FALSE); + o_stream_create_fd(client_out_fd, (size_t)-1); o_stream_set_no_error_handling(proxy->client_output, TRUE); proxy->client_io = io_add(proxy->client_in_fd, IO_READ, client_input, proxy); -- 2.47.3