diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2023-08-11 15:12:28 +1000 |
---|---|---|
committer | Stefano Brivio <sbrivio@redhat.com> | 2023-08-13 17:30:17 +0200 |
commit | eda4f1997e57d5c8b8cd668065634fd87495e908 (patch) | |
tree | 0590ea66ec13dfa93cceb27bf9536b7b1680446d /passt.h | |
parent | 485b5fb8f97c203a9842639fc708f32458be0c18 (diff) | |
download | passt-eda4f1997e57d5c8b8cd668065634fd87495e908.tar passt-eda4f1997e57d5c8b8cd668065634fd87495e908.tar.gz passt-eda4f1997e57d5c8b8cd668065634fd87495e908.tar.bz2 passt-eda4f1997e57d5c8b8cd668065634fd87495e908.tar.lz passt-eda4f1997e57d5c8b8cd668065634fd87495e908.tar.xz passt-eda4f1997e57d5c8b8cd668065634fd87495e908.tar.zst passt-eda4f1997e57d5c8b8cd668065634fd87495e908.zip |
epoll: Split listening Unix domain socket into its own type
tap_handler() actually handles events on three different types of object:
the /dev/tap character device (pasta), a connected Unix domain socket
(passt) or a listening Unix domain socket (passt).
The last, in particular, really has no handling in common with the others,
so split it into its own epoll type and directly dispatch to the relevant
handler from the top level.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'passt.h')
-rw-r--r-- | passt.h | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -61,10 +61,12 @@ enum epoll_type { EPOLL_TYPE_ICMPV6, /* inotify fd watching for end of netns (pasta) */ EPOLL_TYPE_NSQUIT, - /* tap char device, or qemu socket fd */ + /* tap char device, or connected qemu socket fd */ EPOLL_TYPE_TAP, + /* socket listening for qemu socket connections */ + EPOLL_TYPE_TAP_LISTEN, - EPOLL_TYPE_MAX = EPOLL_TYPE_TAP, + EPOLL_TYPE_MAX = EPOLL_TYPE_TAP_LISTEN, }; /** |