Lines Matching refs:iov

150 				   const struct const_iovec *iov,
158 i_assert(iov->iov_len > 0);
162 ret = write(fstream->fd, iov->iov_base, iov->iov_len);
166 ret = pwrite(fstream->fd, iov->iov_base, iov->iov_len,
177 size += iov[i].iov_len;
179 ret = writev(fstream->fd, (const struct iovec *)iov,
188 iov += IOV_MAX;
195 size += iov[i].iov_len;
197 ret = writev(fstream->fd, (const struct iovec *)iov,
213 const struct const_iovec *iov,
222 total_size += iov[i].iov_len;
225 ret = fstream->writev(fstream, iov, iov_count);
232 return o_stream_file_writev_full(fstream, iov, iov_count);
254 while (iov_count > 0 && size >= iov->iov_len) {
255 size -= iov->iov_len;
256 iov++;
261 ret2 = o_stream_file_writev_full(fstream, iov, iov_count);
263 /* write the first iov separately */
267 CONST_PTR_OFFSET(iov->iov_base, size);
268 new_iov.iov_len = iov->iov_len - size;
275 ret2 = o_stream_file_writev_full(fstream, iov + 1,
293 struct const_iovec iov[2])
299 iov[0].iov_base = fstream->buffer + fstream->head;
300 iov[0].iov_len = fstream->tail - fstream->head;
303 iov[0].iov_base = fstream->buffer + fstream->head;
304 iov[0].iov_len = fstream->buffer_size - fstream->head;
308 iov[1].iov_base = fstream->buffer;
309 iov[1].iov_len = fstream->tail;
317 struct const_iovec iov[2];
321 iov_len = o_stream_fill_iovec(fstream, iov);
323 ret = o_stream_file_writev_full(fstream, iov, iov_len);
549 const struct const_iovec *iov,
558 size += iov[i].iov_len;
571 ret = o_stream_file_writev_full(fstream, iov, iov_count);
576 while (size > 0 && iov_count > 0 && size >= iov[0].iov_len) {
577 size -= iov[0].iov_len;
578 iov++;
586 CONST_PTR_OFFSET(iov[0].iov_base, size),
587 iov[0].iov_len - size);
590 if (added != iov[0].iov_len - size) {
596 iov++;
603 added = o_stream_add(fstream, iov[i].iov_base, iov[i].iov_len);
605 if (added != iov[i].iov_len)