From 1c4ee49a89025bc67d5b5c7ea3718a09e656097e Mon Sep 17 00:00:00 2001 From: Sebastien Boeuf Date: Wed, 2 Feb 2022 09:35:55 +0100 Subject: [PATCH] Implement AsRawFd for VringEpollHandler In order to let the consumer of the crate access directly the file descriptor related to the VringEpollHandler, we implement the AsRawFd trait. Signed-off-by: Sebastien Boeuf --- coverage_config_x86_64.json | 2 +- src/event_loop.rs | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/coverage_config_x86_64.json b/coverage_config_x86_64.json index 38e6dec..374cba7 100644 --- a/coverage_config_x86_64.json +++ b/coverage_config_x86_64.json @@ -1,5 +1,5 @@ { - "coverage_score": 85.0, + "coverage_score": 85.1, "exclude_path": "", "crate_features": "" } diff --git a/src/event_loop.rs b/src/event_loop.rs index e4d7147..9083e13 100644 --- a/src/event_loop.rs +++ b/src/event_loop.rs @@ -226,6 +226,12 @@ where } } +impl AsRawFd for VringEpollHandler { + fn as_raw_fd(&self) -> RawFd { + self.epoll.as_raw_fd() + } +} + #[cfg(test)] mod tests { use super::super::backend::tests::MockVhostBackend; @@ -269,5 +275,7 @@ mod tests { handler .unregister_listener(eventfd.as_raw_fd(), EventSet::IN, 1) .unwrap_err(); + // Check we retrieve the correct file descriptor + assert_eq!(handler.as_raw_fd(), handler.epoll.as_raw_fd()); } }