From 573424407a2d3c1453638a643583a7cf10c129e1 Mon Sep 17 00:00:00 2001 From: Phil Carmody Date: Mon, 8 Feb 2016 19:26:20 +0200 Subject: [PATCH] lib: istream - more migration to i_stream_read_bytes() This time a coccinelle semantic patch, again hand checked: git grep 'i_stream_read_data' | sed s/:.*// | \ while read f; do spatch --sp-file istream.cocci --in-place "$f" ; done -- 8< --- istream.cocci --- @@ expression e1, e2, e3, e4; @@ - i_stream_read_data(e1, e2, e3, e4 - 1) + i_stream_read_bytes(e1, e2, e3, e4) -- 8< --- end Signed-off-by: Phil Carmody --- src/lib-compression/compression.c | 3 +-- src/lib-compression/istream-lz4.c | 4 ++-- src/lib-compression/istream-zlib.c | 4 ++-- src/lib-fs/fs-api.c | 4 ++-- src/lib-index/mail-index-strmap.c | 7 +++---- src/lib-lda/duplicate.c | 3 +-- src/lib-storage/index/dbox-common/dbox-file.c | 8 ++++---- src/lib/istream.h | 2 +- src/lib/ostream-file.c | 4 ++-- src/plugins/fts/fts-expunge-log.c | 3 +-- 10 files changed, 19 insertions(+), 23 deletions(-) diff --git a/src/lib-compression/compression.c b/src/lib-compression/compression.c index b3a5a97821..4aa2f42f61 100644 --- a/src/lib-compression/compression.c +++ b/src/lib-compression/compression.c @@ -73,8 +73,7 @@ static bool is_compressed_lz4(struct istream *input) const unsigned char *data; size_t size; - if (i_stream_read_data(input, &data, &size, - IOSTREAM_LZ4_MAGIC_LEN - 1) <= 0) + if (i_stream_read_bytes(input, &data, &size, IOSTREAM_LZ4_MAGIC_LEN) <= 0) return FALSE; /* there is no standard LZ4 header, so we've created our own */ return memcmp(data, IOSTREAM_LZ4_MAGIC, IOSTREAM_LZ4_MAGIC_LEN) == 0; diff --git a/src/lib-compression/istream-lz4.c b/src/lib-compression/istream-lz4.c index d53c970caa..67efaaa02d 100644 --- a/src/lib-compression/istream-lz4.c +++ b/src/lib-compression/istream-lz4.c @@ -53,8 +53,8 @@ static int i_stream_lz4_read_header(struct lz4_istream *zstream) size_t size; int ret; - ret = i_stream_read_data(zstream->istream.parent, &data, &size, - sizeof(*hdr)-1); + ret = i_stream_read_bytes(zstream->istream.parent, &data, &size, + sizeof(*hdr)); if (ret < 0) { zstream->istream.istream.stream_errno = zstream->istream.parent->stream_errno; diff --git a/src/lib-compression/istream-zlib.c b/src/lib-compression/istream-zlib.c index f90e195517..80144e0d91 100644 --- a/src/lib-compression/istream-zlib.c +++ b/src/lib-compression/istream-zlib.c @@ -139,8 +139,8 @@ static int i_stream_zlib_read_trailer(struct zlib_istream *zstream) size_t size; int ret; - ret = i_stream_read_data(stream->parent, &data, &size, - GZ_TRAILER_SIZE-1); + ret = i_stream_read_bytes(stream->parent, &data, &size, + GZ_TRAILER_SIZE); if (size == zstream->prev_size) { stream->istream.stream_errno = stream->parent->stream_errno; if (ret == -1 && stream->istream.stream_errno == 0) { diff --git a/src/lib-fs/fs-api.c b/src/lib-fs/fs-api.c index 1966ddd729..4f6a5ea625 100644 --- a/src/lib-fs/fs-api.c +++ b/src/lib-fs/fs-api.c @@ -460,8 +460,8 @@ ssize_t fs_read_via_stream(struct fs_file *file, void *buf, size_t size) if (file->pending_read_input == NULL) file->pending_read_input = fs_read_stream(file, size+1); - ret = i_stream_read_data(file->pending_read_input, - &data, &data_size, size-1); + ret = i_stream_read_bytes(file->pending_read_input, &data, + &data_size, size); if (ret == 0) { fs_set_error_async(file->fs); return -1; diff --git a/src/lib-index/mail-index-strmap.c b/src/lib-index/mail-index-strmap.c index 0fb6d9342f..4f5de33d09 100644 --- a/src/lib-index/mail-index-strmap.c +++ b/src/lib-index/mail-index-strmap.c @@ -435,8 +435,7 @@ mail_index_strmap_read_rec_first(struct mail_index_strmap_read_context *ctx, ret = mail_index_strmap_uid_exists(ctx, ctx->rec.uid); if (ret < 0) return -1; - if (i_stream_read_data(ctx->view->strmap->input, &ctx->data, &size, - ctx->rec_size - 1) <= 0) + if (i_stream_read_bytes(ctx->view->strmap->input, &ctx->data, &size, ctx->rec_size) <= 0) return -1; ctx->str_idx_base = ctx->data + count * sizeof(uint32_t); @@ -509,8 +508,8 @@ strmap_read_block_init(struct mail_index_strmap_view *view, } memset(ctx, 0, sizeof(*ctx)); - ret = i_stream_read_data(strmap->input, &data, &size, - sizeof(block_size)-1); + ret = i_stream_read_bytes(strmap->input, &data, &size, + sizeof(block_size)); if (ret <= 0) { if (strmap->input->stream_errno == 0) { /* no new data */ diff --git a/src/lib-lda/duplicate.c b/src/lib-lda/duplicate.c index b63dcbdca5..fdc81903c9 100644 --- a/src/lib-lda/duplicate.c +++ b/src/lib-lda/duplicate.c @@ -119,8 +119,7 @@ duplicate_read_records(struct duplicate_file *file, struct istream *input, return -1; } - if (i_stream_read_data(input, &data, &size, - hdr.id_size + hdr.user_size - 1) <= 0) { + if (i_stream_read_bytes(input, &data, &size, hdr.id_size + hdr.user_size) <= 0) { i_error("unexpected end of file in %s", file->path); return -1; } diff --git a/src/lib-storage/index/dbox-common/dbox-file.c b/src/lib-storage/index/dbox-common/dbox-file.c index 1d42e370e5..11236f6c77 100644 --- a/src/lib-storage/index/dbox-common/dbox-file.c +++ b/src/lib-storage/index/dbox-common/dbox-file.c @@ -355,8 +355,8 @@ int dbox_file_read_mail_header(struct dbox_file *file, uoff_t *physical_size_r) size_t size; int ret; - ret = i_stream_read_data(file->input, &data, &size, - file->msg_header_size - 1); + ret = i_stream_read_bytes(file->input, &data, &size, + file->msg_header_size); if (ret <= 0) { if (file->input->stream_errno == 0) { /* EOF, broken offset or file truncated */ @@ -643,8 +643,8 @@ int dbox_file_metadata_skip_header(struct dbox_file *file) size_t size; int ret; - ret = i_stream_read_data(file->input, &data, &size, - sizeof(metadata_hdr) - 1); + ret = i_stream_read_bytes(file->input, &data, &size, + sizeof(metadata_hdr)); if (ret <= 0) { if (file->input->stream_errno == 0) { /* EOF, broken offset */ diff --git a/src/lib/istream.h b/src/lib/istream.h index dddaff6254..4db812005d 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_bytes(stream, data_r, size_r, wanted); + return i_stream_read_data(stream, data_r, size_r, wanted - 1); } /* Short-hand for just requesting more data (i.e. even one byte) */ static inline int diff --git a/src/lib/ostream-file.c b/src/lib/ostream-file.c index a276a9e1d7..c96d33a591 100644 --- a/src/lib/ostream-file.c +++ b/src/lib/ostream-file.c @@ -806,8 +806,8 @@ static off_t io_stream_copy_backwards(struct ostream_private *outstream, i_stream_seek(instream, in_offset); read_size = in_limit - in_offset; - (void)i_stream_read_data(instream, &data, &size, - read_size-1); + (void)i_stream_read_bytes(instream, &data, &size, + read_size); if (size >= read_size) { size = read_size; if (instream->mmaped) { diff --git a/src/plugins/fts/fts-expunge-log.c b/src/plugins/fts/fts-expunge-log.c index 27ce54ee88..1b5861afac 100644 --- a/src/plugins/fts/fts-expunge-log.c +++ b/src/plugins/fts/fts-expunge-log.c @@ -478,8 +478,7 @@ fts_expunge_log_read_next(struct fts_expunge_log_read_ctx *ctx) /* read the entire record */ while (size < rec->record_size) { - if (i_stream_read_data(ctx->input, &data, &size, - rec->record_size-1) < 0) { + if (i_stream_read_bytes(ctx->input, &data, &size, rec->record_size) < 0) { fts_expunge_log_read_failure(ctx, rec->record_size); return NULL; } -- 2.47.3