]> git.ozlabs.org Git - ccan/blobdiff - ccan/io/backend.h
io: use normal linked lists.
[ccan] / ccan / io / backend.h
index 2c03a98a1a4632917ad810f6e1d74d37813d52df..3a1f12e7ee859742b0341912de41044c5416b61b 100644 (file)
@@ -4,6 +4,7 @@
 #include <stdbool.h>
 #include <poll.h>
 #include "io_plan.h"
+#include <ccan/list/list.h>
 
 struct fd {
        int fd;
@@ -62,8 +63,8 @@ struct io_conn {
        /* For duplex to save. */
        bool debug_saved;
 
-       /* always or closing list. */
-       struct io_conn *list;
+       /* always and closing lists. */
+       struct list_node always, closing;
 
        void (*finish)(struct io_conn *, void *arg);
        void *finish_arg;
@@ -88,6 +89,6 @@ void backend_del_conn(struct io_conn *conn);
 
 void io_ready(struct io_conn *conn, int pollflags);
 void io_do_always(struct io_conn *conn);
-void io_do_wakeup(struct io_conn *conn, struct io_plan *plan);
+void io_do_wakeup(struct io_conn *conn, enum io_direction dir);
 void *do_io_loop(struct io_conn **ready);
 #endif /* CCAN_IO_BACKEND_H */