Skip to content

Commit

Permalink
lib: istream - migrate to i_stream_read_more()
Browse files Browse the repository at this point in the history
Scripted to find all the low-hanging-fruit (single line calls), but hand-checked:

  git grep i_stream_read_data.*,\ 0\) | sed s/:.*// | \
    xargs sed -i -e 's/i_stream_read_data(\(.*\), \(.*\), \(.*\), 0)/i_stream_read_more(\1, \2, \3)/'

Signed-off-by: Phil Carmody <phil@dovecot.fi>
  • Loading branch information
Phil Carmody authored and GitLab committed May 16, 2016
1 parent 09142ea commit 3858a7a
Show file tree
Hide file tree
Showing 37 changed files with 49 additions and 49 deletions.
2 changes: 1 addition & 1 deletion src/director/director-test.c
Expand Up @@ -293,7 +293,7 @@ director_connection_input(struct director_connection *conn,
const unsigned char *data;
size_t size;

if (i_stream_read_data(input, &data, &size, 0) == -1) {
if (i_stream_read_more(input, &data, &size) == -1) {
director_connection_destroy(&conn);
return;
}
Expand Down
2 changes: 1 addition & 1 deletion src/doveadm/doveadm-fs.c
Expand Up @@ -70,7 +70,7 @@ static void cmd_fs_get(int argc, char *argv[])

file = fs_file_init(fs, argv[0], FS_OPEN_MODE_READONLY);
input = fs_read_stream(file, IO_BLOCK_SIZE);
while ((ret = i_stream_read_data(input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &data, &size)) > 0) {
doveadm_print_stream(data, size);
i_stream_skip(input, size);
}
Expand Down
2 changes: 1 addition & 1 deletion src/doveadm/doveadm-print.c
Expand Up @@ -110,7 +110,7 @@ int doveadm_print_istream(struct istream *input)
size_t size;
ssize_t ret;

while ((ret = i_stream_read_data(input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &data, &size)) > 0) {
doveadm_print_stream(data, size);
i_stream_skip(input, size);
}
Expand Down
2 changes: 1 addition & 1 deletion src/doveadm/doveadm-zlib.c
Expand Up @@ -69,7 +69,7 @@ static void cmd_dump_imapzlib(int argc ATTR_UNUSED, char *argv[])
input2 = i_stream_create_deflate(input, TRUE);
i_stream_unref(&input);

while (i_stream_read_data(input2, &data, &size, 0) != -1) {
while (i_stream_read_more(input2, &data, &size) != -1) {
fwrite(data, 1, size, stdout);
i_stream_skip(input2, size);
}
Expand Down
2 changes: 1 addition & 1 deletion src/doveadm/dsync/dsync-mail.c
Expand Up @@ -46,7 +46,7 @@ int dsync_mail_get_hdr_hash(struct mail *mail, unsigned int version,

md5_init(&md5_ctx);
while (!i_stream_is_eof(input)) {
if (i_stream_read_data(input, &data, &size, 0) == -1)
if (i_stream_read_more(input, &data, &size) == -1)
break;
if (size == 0)
break;
Expand Down
4 changes: 2 additions & 2 deletions src/doveadm/dsync/dsync-mailbox-import.c
Expand Up @@ -359,8 +359,8 @@ dsync_istreams_cmp(struct istream *input1, struct istream *input2, int *cmp_r)
*cmp_r = -1; /* quiet gcc */

for (;;) {
(void)i_stream_read_data(input1, &data1, &size1, 0);
(void)i_stream_read_data(input2, &data2, &size2, 0);
(void)i_stream_read_more(input1, &data1, &size1);
(void)i_stream_read_more(input2, &data2, &size2);

if (size1 == 0 || size2 == 0)
break;
Expand Down
2 changes: 1 addition & 1 deletion src/imap-urlauth/imap-urlauth-worker.c
Expand Up @@ -280,7 +280,7 @@ static int client_run_url(struct client *client)
size_t size;
ssize_t ret = 0;

while (i_stream_read_data(client->msg_part_input, &data, &size, 0) > 0) {
while (i_stream_read_more(client->msg_part_input, &data, &size) > 0) {
if ((ret = o_stream_send(client->output, data, size)) < 0)
break;
i_stream_skip(client->msg_part_input, ret);
Expand Down
2 changes: 1 addition & 1 deletion src/imap/cmd-setmetadata.c
Expand Up @@ -121,7 +121,7 @@ cmd_setmetadata_entry_read_stream(struct imap_setmetadata_context *ctx)
struct mail_attribute_value value;
int ret;

while ((ret = i_stream_read_data(ctx->input, &data, &size, 0)) > 0)
while ((ret = i_stream_read_more(ctx->input, &data, &size)) > 0)
i_stream_skip(ctx->input, size);
if (ctx->input->v_offset == ctx->entry_value_len) {
/* finished reading the value */
Expand Down
2 changes: 1 addition & 1 deletion src/lda/main.c
Expand Up @@ -127,7 +127,7 @@ create_raw_stream(struct mail_deliver_context *ctx,
if (ret > 0 && size >= 5 && memcmp(data, "From ", 5) == 0) {
/* skip until the first LF */
i_stream_skip(input, 5);
while (i_stream_read_data(input, &data, &size, 0) > 0) {
while (i_stream_read_more(input, &data, &size) > 0) {
for (i = 0; i < size; i++) {
if (data[i] == '\n')
break;
Expand Down
2 changes: 1 addition & 1 deletion src/lib-compression/istream-bzlib.c
Expand Up @@ -101,7 +101,7 @@ static ssize_t i_stream_bzlib_read(struct istream_private *stream)
}
}

if (i_stream_read_data(stream->parent, &data, &size, 0) < 0) {
if (i_stream_read_more(stream->parent, &data, &size) < 0) {
if (stream->parent->stream_errno != 0) {
stream->istream.stream_errno =
stream->parent->stream_errno;
Expand Down
2 changes: 1 addition & 1 deletion src/lib-compression/istream-lzma.c
Expand Up @@ -110,7 +110,7 @@ static ssize_t i_stream_lzma_read(struct istream_private *stream)
}
}

if (i_stream_read_data(stream->parent, &data, &size, 0) < 0) {
if (i_stream_read_more(stream->parent, &data, &size) < 0) {
if (stream->parent->stream_errno != 0) {
stream->istream.stream_errno =
stream->parent->stream_errno;
Expand Down
2 changes: 1 addition & 1 deletion src/lib-compression/istream-zlib.c
Expand Up @@ -245,7 +245,7 @@ static ssize_t i_stream_zlib_read(struct istream_private *stream)
}
}

if (i_stream_read_data(stream->parent, &data, &size, 0) < 0) {
if (i_stream_read_more(stream->parent, &data, &size) < 0) {
if (stream->parent->stream_errno != 0) {
stream->istream.stream_errno =
stream->parent->stream_errno;
Expand Down
6 changes: 3 additions & 3 deletions src/lib-compression/test-compression.c
Expand Up @@ -69,7 +69,7 @@ static void test_compression_handler(const struct compression_handler *handler)
sha1_init(&sha1);
file_input = i_stream_create_fd(fd, IO_BLOCK_SIZE, FALSE);
input = handler->create_istream(file_input, FALSE);
while ((ret = i_stream_read_data(input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &data, &size)) > 0) {
sha1_loop(&sha1, data, size);
i_stream_skip(input, size);
}
Expand Down Expand Up @@ -124,7 +124,7 @@ static void test_compress_file(const char *in_path, const char *out_path)
file_output = o_stream_create_fd_file(fd_out, 0, FALSE);
output = handler->create_ostream(file_output, 1);
input = i_stream_create_fd_autoclose(&fd_in, IO_BLOCK_SIZE);
while (i_stream_read_data(input, &data, &size, 0) > 0) {
while (i_stream_read_more(input, &data, &size) > 0) {
sha1_loop(&sha1, data, size);
o_stream_nsend(output, data, size);
i_stream_skip(input, size);
Expand All @@ -142,7 +142,7 @@ static void test_compress_file(const char *in_path, const char *out_path)
sha1_init(&sha1);
file_input = i_stream_create_fd(fd_out, IO_BLOCK_SIZE, FALSE);
input = handler->create_istream(file_input, FALSE);
while ((ret = i_stream_read_data(input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &data, &size)) > 0) {
sha1_loop(&sha1, data, size);
i_stream_skip(input, size);
}
Expand Down
2 changes: 1 addition & 1 deletion src/lib-dict-extra/dict-fs.c
Expand Up @@ -97,7 +97,7 @@ static int fs_dict_lookup(struct dict *_dict, pool_t pool, const char *key,
i_stream_read(input);

str = str_new(pool, i_stream_get_data_size(input)+1);
while ((ret = i_stream_read_data(input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &data, &size)) > 0) {
str_append_n(str, data, size);
i_stream_skip(input, size);
}
Expand Down
2 changes: 1 addition & 1 deletion src/lib-fs/fs-api.c
Expand Up @@ -564,7 +564,7 @@ struct istream *fs_read_stream(struct fs_file *file, size_t max_buffer_size)

if ((file->flags & FS_OPEN_FLAG_ASYNC) == 0 && !input->blocking) {
/* read the whole input stream before returning */
while ((ret = i_stream_read_data(input, &data, &size, 0)) >= 0) {
while ((ret = i_stream_read_more(input, &data, &size)) >= 0) {
i_stream_skip(input, size);
if (ret == 0) {
if (fs_wait_async(file->fs) < 0) {
Expand Down
2 changes: 1 addition & 1 deletion src/lib-http/http-message-parser.c
Expand Up @@ -104,7 +104,7 @@ int http_message_parse_finish_payload(struct http_message_parser *parser)
if (parser->payload == NULL)
return 1;

while ((ret = i_stream_read_data(parser->payload, &data, &size, 0)) > 0)
while ((ret = i_stream_read_more(parser->payload, &data, &size)) > 0)
i_stream_skip(parser->payload, size);
if (ret == 0 || parser->payload->stream_errno != 0) {
if (ret < 0) {
Expand Down
2 changes: 1 addition & 1 deletion src/lib-http/test-http-client.c
Expand Up @@ -23,7 +23,7 @@ static void payload_input(struct http_test_request *req)
int ret;

/* read payload */
while ((ret=i_stream_read_data(req->payload, &data, &size, 0)) > 0) {
while ((ret=i_stream_read_more(req->payload, &data, &size)) > 0) {
i_info("DEBUG: got data (size=%d)", (int)size);
if (req->write_output)
write_full(1, data, size);
Expand Down
2 changes: 1 addition & 1 deletion src/lib-http/test-http-transfer.c
Expand Up @@ -278,7 +278,7 @@ static void test_http_transfer_chunked_output_valid(void)

/* send input through chunked stream; chunk size is limited */
for (;;) {
ret = i_stream_read_data(input, &rdata, &rsize, 0);
ret = i_stream_read_more(input, &rdata, &rsize);
if (ret < 0) {
if (input->eof)
ret = 1;
Expand Down
4 changes: 2 additions & 2 deletions src/lib-mail/istream-attachment-extractor.c
Expand Up @@ -410,7 +410,7 @@ static int astream_decode_base64(struct attachment_istream *astream)
if (input->v_offset != part->temp_output->offset && !failed) {
/* write the rest of the data to the message stream */
extra_buf = buffer_create_dynamic(default_pool, 1024);
while ((ret = i_stream_read_data(input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &data, &size)) > 0) {
buffer_append(extra_buf, data, size);
i_stream_skip(input, size);
}
Expand Down Expand Up @@ -510,7 +510,7 @@ astream_part_finish(struct attachment_istream *astream, const char **error_r)

/* copy data to attachment from temp file */
input = i_stream_create_fd(part->temp_fd, IO_BLOCK_SIZE, FALSE);
while (i_stream_read_data(input, &data, &size, 0) > 0) {
while (i_stream_read_more(input, &data, &size) > 0) {
o_stream_nsend(output, data, size);
i_stream_skip(input, size);
}
Expand Down
2 changes: 1 addition & 1 deletion src/lib-mail/istream-qp-decoder.c
Expand Up @@ -69,7 +69,7 @@ static ssize_t i_stream_qp_decoder_read(struct istream_private *stream)
}

/* need to read more input */
ret = i_stream_read_data(stream->parent, &data, &size, 0);
ret = i_stream_read_more(stream->parent, &data, &size);
if (ret <= 0) {
stream->istream.stream_errno = stream->parent->stream_errno;
stream->istream.eof = stream->parent->eof;
Expand Down
4 changes: 2 additions & 2 deletions src/lib-mail/message-size.c
Expand Up @@ -74,7 +74,7 @@ int message_get_body_size(struct istream *input, struct message_size *body,
*has_nuls_r = FALSE;

missing_cr_count = 0;
if ((ret = i_stream_read_data(input, &msg, &size, 0)) <= 0)
if ((ret = i_stream_read_more(input, &msg, &size)) <= 0)
return ret < 0 && input->stream_errno != 0 ? -1 : 0;

if (msg[0] == '\n')
Expand Down Expand Up @@ -134,7 +134,7 @@ int message_skip_virtual(struct istream *input, uoff_t virtual_skip,
if (virtual_skip == 0)
return 0;

while ((ret = i_stream_read_data(input, &msg, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &msg, &size)) > 0) {
for (i = 0; i < size && virtual_skip > 0; i++) {
virtual_skip--;

Expand Down
6 changes: 3 additions & 3 deletions src/lib-mail/test-istream-attachment.c
Expand Up @@ -234,7 +234,7 @@ static int test_input_stream(struct istream *file_input)
/* get hash when directly reading input */
input = i_stream_create_crlf(file_input);
sha1_init(&hash);
while (i_stream_read_data(input, &data, &size, 0) > 0) {
while (i_stream_read_more(input, &data, &size) > 0) {
sha1_loop(&hash, data, size);
i_stream_skip(input, size);
}
Expand All @@ -250,7 +250,7 @@ static int test_input_stream(struct istream *file_input)
input2 = i_stream_create_attachment_extractor(input, &set, NULL);
i_stream_unref(&input);
base_buf = buffer_create_dynamic(default_pool, 1024);
while (i_stream_read_data(input2, &data, &size, 0) > 0) {
while (i_stream_read_more(input2, &data, &size) > 0) {
buffer_append(base_buf, data, size);
i_stream_skip(input2, size);
}
Expand All @@ -262,7 +262,7 @@ static int test_input_stream(struct istream *file_input)
i_stream_unref(&input2);

sha1_init(&hash);
while (i_stream_read_data(input, &data, &size, 0) > 0) {
while (i_stream_read_more(input, &data, &size) > 0) {
sha1_loop(&hash, data, size);
i_stream_skip(input, size);
}
Expand Down
4 changes: 2 additions & 2 deletions src/lib-mail/test-istream-binary-converter.c
Expand Up @@ -169,7 +169,7 @@ static int test_input_file(const char *path)
/* get hash when directly reading input */
input = i_stream_create_crlf(file_input);
sha1_init(&hash);
while (i_stream_read_data(input, &data, &size, 0) > 0) {
while (i_stream_read_more(input, &data, &size) > 0) {
sha1_loop(&hash, data, size);
i_stream_skip(input, size);
}
Expand All @@ -181,7 +181,7 @@ static int test_input_file(const char *path)
input = i_stream_create_crlf(file_input);
input2 = i_stream_create_binary_converter(input);
sha1_init(&hash);
while (i_stream_read_data(input2, &data, &size, 0) > 0) {
while (i_stream_read_more(input2, &data, &size) > 0) {
sha1_loop(&hash, data, size);
i_stream_skip(input2, size);
}
Expand Down
4 changes: 2 additions & 2 deletions src/lib-mail/test-istream-qp-decoder.c
Expand Up @@ -39,7 +39,7 @@ decode_test(const char *qp_input, const char *output, bool broken_input,

for (i = 1; i <= qp_input_len; i++) {
test_istream_set_size(input_data, i);
while ((ret = i_stream_read_data(input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &data, &size)) > 0) {
str_append_n(str, data, size);
i_stream_skip(input, size);
}
Expand All @@ -49,7 +49,7 @@ decode_test(const char *qp_input, const char *output, bool broken_input,
}
if (ret == 0) {
test_istream_set_allow_eof(input_data, TRUE);
while ((ret = i_stream_read_data(input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(input, &data, &size)) > 0) {
str_append_n(str, data, size);
i_stream_skip(input, size);
}
Expand Down
2 changes: 1 addition & 1 deletion src/lib-ssl-iostream/iostream-openssl.c
Expand Up @@ -375,7 +375,7 @@ openssl_iostream_read_more(struct ssl_iostream *ssl_io,
return 0;
}

if (i_stream_read_data(ssl_io->plain_input, data_r, size_r, 0) < 0)
if (i_stream_read_more(ssl_io->plain_input, data_r, size_r) < 0)
return -1;
return 0;
}
Expand Down
4 changes: 2 additions & 2 deletions src/lib-storage/index/imapc/imapc-mail.c
Expand Up @@ -262,7 +262,7 @@ imapc_mail_get_headers(struct mail *_mail, const char *field,
if (ret < 0)
return -1;

while (i_stream_read_data(input, &data, &size, 0) > 0)
while (i_stream_read_more(input, &data, &size) > 0)
i_stream_skip(input, size);
/* the header should cached now. */
return index_mail_get_headers(_mail, field, decode_to_utf8, value_r);
Expand Down Expand Up @@ -462,7 +462,7 @@ static int imapc_mail_get_hdr_hash(struct index_mail *imail)
imail->data.stream->v_offset;
if (mail_get_hdr_stream(&imail->mail.mail, NULL, &input) < 0)
return -1;
while (i_stream_read_data(input, &data, &size, 0) > 0) {
while (i_stream_read_more(input, &data, &size) > 0) {
sha1_loop(&sha1_ctx, data, size);
i_stream_skip(input, size);
}
Expand Down
2 changes: 1 addition & 1 deletion src/lib-storage/index/index-mail-binary.c
Expand Up @@ -320,7 +320,7 @@ blocks_count_lines(struct binary_ctx *ctx, struct istream *full_input)
block_idx = 0;

/* count the number of lines each block contains */
while ((ret = i_stream_read_data(full_input, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(full_input, &data, &size)) > 0) {
i_assert(cur_block_offset <= cur_block->input->v_offset);
if (cur_block->input->eof) {
/* this is the last input for this block. the input
Expand Down
2 changes: 1 addition & 1 deletion src/lib-storage/index/mbox/istream-raw-mbox.c
Expand Up @@ -624,7 +624,7 @@ int istream_raw_mbox_get_body_size(struct istream *stream,
}

/* have to read through the message body */
while (i_stream_read_data(stream, &data, &size, 0) > 0)
while (i_stream_read_more(stream, &data, &size) > 0)
i_stream_skip(stream, size);
i_stream_seek(stream, old_offset);
if (stream->stream_errno != 0)
Expand Down
2 changes: 1 addition & 1 deletion src/lib-storage/mailbox-attribute.c
Expand Up @@ -230,7 +230,7 @@ int mailbox_attribute_value_to_string(struct mail_storage *storage,
}
str = t_str_new(128);
i_stream_seek(value->value_stream, 0);
while (i_stream_read_data(value->value_stream, &data, &size, 0) > 0) {
while (i_stream_read_more(value->value_stream, &data, &size) > 0) {
if (memchr(data, '\0', size) != NULL) {
mail_storage_set_error(storage, MAIL_ERROR_PARAMS,
"Attribute string value has NULs");
Expand Down
2 changes: 1 addition & 1 deletion src/lib/ostream.c
Expand Up @@ -381,7 +381,7 @@ off_t io_stream_copy(struct ostream *outstream, struct istream *instream)

start_offset = instream->v_offset;
do {
(void)i_stream_read_data(instream, &data, &iov.iov_len, 0);
(void)i_stream_read_more(instream, &data, &iov.iov_len);
if (iov.iov_len == 0) {
/* all sent */
if (instream->stream_errno != 0)
Expand Down
6 changes: 3 additions & 3 deletions src/lib/test-istream-unix.c
Expand Up @@ -33,7 +33,7 @@ test_server_read_nofd(struct istream *input, unsigned int idx)
const unsigned char *data;
size_t size;

test_assert_idx(i_stream_read_data(input, &data, &size, 0) == 1, idx);
test_assert_idx(i_stream_read_more(input, &data, &size) == 1, idx);
i_stream_skip(input, 1);
test_assert_idx(i_stream_unix_get_read_fd(input) == -1, idx);
}
Expand All @@ -46,7 +46,7 @@ test_server_read_fd(struct istream *input, int wanted_fd, unsigned int idx)
size_t size;
int recv_fd;

test_assert_idx(i_stream_read_data(input, &data, &size, 0) == 1, idx);
test_assert_idx(i_stream_read_more(input, &data, &size) == 1, idx);
i_stream_skip(input, 1);
test_assert_idx((recv_fd = i_stream_unix_get_read_fd(input)) != -1, idx);
if (recv_fd != -1) {
Expand All @@ -73,7 +73,7 @@ static void test_istream_unix_server(int fd)
/* we still shouldn't have the fd */
fd_set_nonblock(fd, TRUE);
i_stream_unix_set_read_fd(input);
test_assert(i_stream_read_data(input, &data, &size, 0) == 0);
test_assert(i_stream_read_more(input, &data, &size) == 0);
test_assert(i_stream_unix_get_read_fd(input) == -1);
fd_set_nonblock(fd, FALSE);
write_one(fd);
Expand Down
2 changes: 1 addition & 1 deletion src/login-common/client-common-auth.c
Expand Up @@ -486,7 +486,7 @@ int client_auth_read_line(struct client *client)
size_t i, size;
unsigned int len;

if (i_stream_read_data(client->input, &data, &size, 0) == -1) {
if (i_stream_read_more(client->input, &data, &size) == -1) {
client_destroy(client, "Disconnected");
return -1;
}
Expand Down
2 changes: 1 addition & 1 deletion src/plugins/fts-solr/solr-connection.c
Expand Up @@ -376,7 +376,7 @@ static void solr_connection_payload_input(struct solr_connection *conn)
int ret;

/* read payload */
while ((ret = i_stream_read_data(conn->payload, &data, &size, 0)) > 0) {
while ((ret = i_stream_read_more(conn->payload, &data, &size)) > 0) {
(void)solr_xml_parse(conn, data, size, FALSE);
i_stream_skip(conn->payload, size);
}
Expand Down

0 comments on commit 3858a7a

Please sign in to comment.