2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Bosch ssize_t (*writev)(struct file_ostream *fstream,
2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Bosch unsigned int iov_count);
2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Bosch size_t head, tail; /* first unsent/unused byte */
0dffa25d211be541ee3c953b23566a1a990789dfTimo Sirainen bool full:1; /* if head == tail, is buffer empty or full? */
2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Boscho_stream_create_file_common(struct file_ostream *fstream,
2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Bosch int fd, size_t max_buffer_size, bool autoclose_fd);
2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Boschssize_t o_stream_file_writev(struct file_ostream *fstream,
2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Bosch unsigned int iov_size);
2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Boschssize_t o_stream_file_sendv(struct ostream_private *stream,
2ac0ee86377636dcf9e8c0ddad93842b1fb3d46aStephan Bosch unsigned int iov_count);