summaryrefslogtreecommitdiffstats
path: root/vlib
diff options
context:
space:
mode:
Diffstat (limited to 'vlib')
-rw-r--r--vlib/vlib/unix/input.c2
-rw-r--r--vlib/vlib/unix/unix.h1
2 files changed, 3 insertions, 0 deletions
diff --git a/vlib/vlib/unix/input.c b/vlib/vlib/unix/input.c
index f9d7feceeb5..62b32544b94 100644
--- a/vlib/vlib/unix/input.c
+++ b/vlib/vlib/unix/input.c
@@ -72,6 +72,8 @@ linux_epoll_file_update (unix_file_t * f,
e.events = EPOLLIN;
if (f->flags & UNIX_FILE_DATA_AVAILABLE_TO_WRITE)
e.events |= EPOLLOUT;
+ if (f->flags & UNIX_FILE_EVENT_EDGE_TRIGGERED)
+ e.events |= EPOLLET;
e.data.u32 = f - um->file_pool;
if (epoll_ctl (em->epoll_fd,
diff --git a/vlib/vlib/unix/unix.h b/vlib/vlib/unix/unix.h
index 0802a93baa3..e3e6aa14176 100644
--- a/vlib/vlib/unix/unix.h
+++ b/vlib/vlib/unix/unix.h
@@ -51,6 +51,7 @@ typedef struct unix_file {
u32 flags;
#define UNIX_FILE_DATA_AVAILABLE_TO_WRITE (1 << 0)
+#define UNIX_FILE_EVENT_EDGE_TRIGGERED (1 << 1)
/* Data available for function's use. */
uword private_data;