src/server/util/io.h

changeset 54
3a1d5a52adfc
parent 46
636e05eb48f6
child 64
c7f5b062e622
--- a/src/server/util/io.h	Fri Mar 01 22:44:54 2013 +0100
+++ b/src/server/util/io.h	Sat Mar 16 23:11:34 2013 +0100
@@ -39,10 +39,12 @@
 
 typedef ssize_t(*io_write_f)(IOStream *, void *, size_t);
 typedef ssize_t(*io_read_f)(IOStream *, void *, size_t);
+typedef ssize_t(*io_sendfile_f)(IOStream *, sendfiledata *);
 
 struct io_stream {
-    io_write_f write;
-    io_read_f  read;
+    io_write_f    write;
+    io_read_f     read;
+    io_sendfile_f sendfile;
 };
 
 typedef struct SystemIOStream {
@@ -61,6 +63,8 @@
 /* net_ functions */
 ssize_t net_read(SYS_NETFD fd, void *buf, size_t nbytes);
 ssize_t net_write(SYS_NETFD fd, void *buf, size_t nbytes);
+ssize_t net_printf(SYS_NETFD fd, char *format, ...);
+ssize_t net_sendfile(SYS_NETFD fd, sendfiledata *sfd);
 
 
 /* iovec buffer */
@@ -83,6 +87,7 @@
 
 ssize_t net_stream_write(IOStream *st, void *buf, size_t nbytes);
 ssize_t net_stream_read(IOStream *st, void *buf, size_t nbytes);
+ssize_t net_stream_sendfile(IOStream *st, sendfiledata *sfd);
 
 /* iovec buffer */
 iovec_buf_t *iovec_buf_create(pool_handle_t *pool);

mercurial