Merge branch 'master' into timeheap
[ashd.git] / lib / mtio.h
index 874eec6..ffb57da 100644 (file)
@@ -6,8 +6,23 @@
 #define EV_READ 1
 #define EV_WRITE 2
 
+struct stdiofd {
+    int fd;
+    int sock;
+    int timeout;
+    int rights, sendrights;
+};
+
+struct selected {
+    int fd, ev;
+};
+
+struct selected mblock(time_t to, int n, struct selected *spec);
 int block(int fd, int ev, time_t to);
-void ioloop(void);
-FILE *mtstdopen(int fd, int issock, int timeout, char *mode);
+int ioloop(void);
+void exitioloop(int status);
+FILE *mtstdopen(int fd, int issock, int timeout, char *mode, struct stdiofd **infop);
+struct bufio *mtbioopen(int fd, int issock, int timeout, char *mode, struct stdiofd **infop);
+void mtiopipe(FILE **read, FILE **write);
 
 #endif