MINOR: fd: add a new I/O handler to fdtab
This one will eventually replace both cb[] handlers. At the moment it
is not used yet.
diff --git a/include/types/fd.h b/include/types/fd.h
index 3b00994..c4133a9 100644
--- a/include/types/fd.h
+++ b/include/types/fd.h
@@ -51,6 +51,11 @@
#define FD_POLL_DATA (FD_POLL_IN | FD_POLL_OUT)
#define FD_POLL_STICKY (FD_POLL_ERR | FD_POLL_HUP)
+/* flags that an I/O callback may return */
+#define FD_WAIT_READ 0x01
+#define FD_WAIT_WRITE 0x02
+#define FD_WAIT_BOTH (FD_WAIT_READ|FD_WAIT_WRITE)
+
/* bit values for fdtab[fd]->flags. Most of them are used to hold a value
* consecutive to a behaviour change.
*/
@@ -60,6 +65,7 @@
/* info about one given fd */
struct fdtab {
+ int (*iocb)(int fd); /* I/O handler, returns FD_WAIT_* */
struct {
int (*f)(int fd); /* read/write function */
} cb[DIR_SIZE];