From: Phil Carmody Date: Mon, 8 Feb 2016 16:55:32 +0000 (+0200) Subject: lib: istream - migrate to i_stream_read_bytes() X-Git-Tag: 2.3.0.rc1~3744 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=534e41e436a7546f36f61e0dc49c0c191d850f6b;p=thirdparty%2Fdovecot%2Fcore.git lib: istream - migrate to i_stream_read_bytes() Scripted to pick off the low hanging fruit, one liners with an explicit '-1' in the final parameter, but hand-checked. git grep 'i_stream_read_data.*, [^,]*- \?1)' | sed s/:.*// | \ xargs sed -i -e 's/i_stream_read_data(\(.*\), \(.*\), \(.*\), \(.*[^ ]\) \?- \?1)/i_stream_read_bytes(\1, \2, \3, \4)/' Signed-off-by: Phil Carmody --- diff --git a/src/doveadm/doveadm-dump-dbox.c b/src/doveadm/doveadm-dump-dbox.c index 7042c57f4b..da695a2423 100644 --- a/src/doveadm/doveadm-dump-dbox.c +++ b/src/doveadm/doveadm-dump-dbox.c @@ -94,7 +94,7 @@ dump_msg_hdr(struct istream *input, unsigned int hdr_size, uoff_t *msg_size_r) size_t size; uoff_t msg_size; - if (i_stream_read_data(input, &data, &size, hdr_size-1) <= 0) { + if (i_stream_read_bytes(input, &data, &size, hdr_size) <= 0) { if (size == 0) return FALSE; i_fatal("Partial message header read at %"PRIuUOFF_T": " @@ -125,7 +125,7 @@ static void dump_msg_metadata(struct istream *input) const char *line; /* verify magic */ - if (i_stream_read_data(input, &data, &size, sizeof(hdr)-1) <= 0) { + if (i_stream_read_bytes(input, &data, &size, sizeof(hdr)) <= 0) { i_fatal("dbox missing metadata at %"PRIuUOFF_T, input->v_offset); } diff --git a/src/lib-compression/compression.c b/src/lib-compression/compression.c index 5576b276f9..b3a5a97821 100644 --- a/src/lib-compression/compression.c +++ b/src/lib-compression/compression.c @@ -47,7 +47,7 @@ static bool is_compressed_bzlib(struct istream *input) const unsigned char *data; size_t size; - if (i_stream_read_data(input, &data, &size, 4+6 - 1) <= 0) + if (i_stream_read_bytes(input, &data, &size, 4+6) <= 0) return FALSE; if (data[0] != 'B' || data[1] != 'Z') return FALSE; @@ -63,7 +63,7 @@ static bool is_compressed_xz(struct istream *input) const unsigned char *data; size_t size; - if (i_stream_read_data(input, &data, &size, 6 - 1) <= 0) + if (i_stream_read_bytes(input, &data, &size, 6) <= 0) return FALSE; return memcmp(data, "\xfd\x37\x7a\x58\x5a", 6) == 0; } diff --git a/src/lib-fs/ostream-cmp.c b/src/lib-fs/ostream-cmp.c index 21e9404918..490371d86b 100644 --- a/src/lib-fs/ostream-cmp.c +++ b/src/lib-fs/ostream-cmp.c @@ -33,7 +33,7 @@ bool stream_cmp_block(struct istream *input, size_t insize, max; while (size > 0) { - (void)i_stream_read_data(input, &indata, &insize, size-1); + (void)i_stream_read_bytes(input, &indata, &insize, size); max = I_MIN(insize, size); if (insize == 0 || memcmp(data, indata, max) != 0) return FALSE; diff --git a/src/lib-index/mail-index-strmap.c b/src/lib-index/mail-index-strmap.c index e55cc2b32f..0fb6d9342f 100644 --- a/src/lib-index/mail-index-strmap.c +++ b/src/lib-index/mail-index-strmap.c @@ -267,7 +267,7 @@ static int mail_index_strmap_open(struct mail_index_strmap_view *view) return -1; } strmap->input = i_stream_create_fd(strmap->fd, (size_t)-1, FALSE); - ret = i_stream_read_data(strmap->input, &data, &size, sizeof(hdr)-1); + ret = i_stream_read_bytes(strmap->input, &data, &size, sizeof(hdr)); if (ret <= 0) { if (ret < 0) { mail_index_strmap_set_syscall_error(strmap, "read()"); @@ -360,7 +360,7 @@ mail_index_strmap_read_packed(struct mail_index_strmap_read_context *ctx, size_t size; int ret; - ret = i_stream_read_data(ctx->input, &data, &size, sizeof(*num_r) - 1); + ret = i_stream_read_bytes(ctx->input, &data, &size, sizeof(*num_r)); if (ret <= 0) return ret; diff --git a/src/lib-storage/index/dbox-common/dbox-file-fix.c b/src/lib-storage/index/dbox-common/dbox-file-fix.c index bd0f537d2d..1335d484f1 100644 --- a/src/lib-storage/index/dbox-common/dbox-file-fix.c +++ b/src/lib-storage/index/dbox-common/dbox-file-fix.c @@ -151,7 +151,7 @@ dbox_file_find_next_magic(struct dbox_file *file, uoff_t *offset_r, bool *pre_r) orig_offset = prev_offset = input->v_offset; need_bytes = strlen(DBOX_MAGIC_POST); prev_need_bytes = 0; - while ((ret = i_stream_read_data(input, &data, &size, need_bytes-1)) > 0 || + while ((ret = i_stream_read_bytes(input, &data, &size, need_bytes)) > 0 || ret == -2) { /* search for the beginning of a potential pre/post magic */ i_assert(size > 1); diff --git a/src/lib-storage/list/subscription-file.c b/src/lib-storage/list/subscription-file.c index c47b03c411..02c8e145cd 100644 --- a/src/lib-storage/list/subscription-file.c +++ b/src/lib-storage/list/subscription-file.c @@ -67,7 +67,7 @@ subsfile_list_read_header(struct mailbox_list *list, struct istream *input, *version_r = 0; - ret = i_stream_read_data(input, &data, &size, version2_header_len-1); + ret = i_stream_read_bytes(input, &data, &size, version2_header_len); if (ret < 0) { i_assert(ret == -1); if (input->stream_errno != 0) diff --git a/src/lib/istream.h b/src/lib/istream.h index 4db812005d..dddaff6254 100644 --- a/src/lib/istream.h +++ b/src/lib/istream.h @@ -174,7 +174,7 @@ i_stream_read_bytes(struct istream *stream, const unsigned char **data_r, size_t *size_r, size_t wanted) { i_assert(wanted > 0); - return i_stream_read_data(stream, data_r, size_r, wanted - 1); + return i_stream_read_bytes(stream, data_r, size_r, wanted); } /* Short-hand for just requesting more data (i.e. even one byte) */ static inline int