Lines Matching refs:instream
702 struct istream *instream, int in_fd,
710 if ((ret = i_stream_get_size(instream, TRUE, &in_size)) < 0) {
735 v_offset = instream->v_offset;
736 abs_start_offset = i_stream_get_absolute_offset(instream) - v_offset;
776 i_stream_seek(instream, v_offset);
778 instream->eof = TRUE;
794 struct istream *instream, uoff_t in_size)
805 buffer_size = instream->real_stream->buffer_size;
816 in_start_offset = instream->v_offset;
831 i_stream_seek(instream, in_offset);
835 if (i_stream_read_bytes(instream, &data, &size,
840 if (instream->mmaped) {
865 i_stream_skip(instream, size);
867 /* make it visible that we're at instream's EOF */
868 i_stream_seek(instream, in_size);
869 instream->eof = TRUE;
877 struct istream *instream)
884 if ((ret = i_stream_get_size(instream, TRUE, &in_size)) < 0)
887 /* if we couldn't find out the size, it means that instream
891 return io_stream_copy(&outstream->ostream, instream);
893 i_assert(instream->v_offset <= in_size);
895 in_abs_offset = i_stream_get_absolute_offset(instream);
904 i_assert(instream->seekable);
905 return io_stream_copy_backwards(outstream, instream, in_size);
908 return io_stream_copy(&outstream->ostream, instream);
914 struct istream *instream)
921 in_fd = !instream->readable_fd ? -1 : i_stream_get_fd(instream);
923 in_fd != foutstream->fd && instream->seekable) {
924 if (io_stream_sendfile(outstream, instream, in_fd, &res))
932 same_stream = i_stream_get_fd(instream) == foutstream->fd &&
935 return io_stream_copy(&outstream->ostream, instream);
936 return io_stream_copy_same_stream(outstream, instream);