From 19e893fa532ee10349ec7a5e76622e78053802d6 Mon Sep 17 00:00:00 2001 From: Rob Bradford Date: Tue, 14 Feb 2023 12:12:53 +0000 Subject: [PATCH] vfio_user: Reject SET_IRQS with VFIO_IRQ_SET_DATA_BOOL This is unsupported. Signed-off-by: Rob Bradford --- vfio_user/src/lib.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/vfio_user/src/lib.rs b/vfio_user/src/lib.rs index 3c0779099..5093902ff 100644 --- a/vfio_user/src/lib.rs +++ b/vfio_user/src/lib.rs @@ -272,6 +272,8 @@ pub enum Error { SocketAccept(#[source] std::io::Error), #[error("Unsupported command: {0:?}")] UnsupportedCommand(Command), + #[error("Unsupported feature")] + UnsupportedFeature, #[error("Error from backend: {0:?}")] Backend(#[source] std::io::Error), } @@ -1084,6 +1086,10 @@ impl Server { .read_exact(&mut cmd.as_mut_slice()[size_of::
()..]) .map_err(Error::StreamRead)?; + if cmd.flags & VFIO_IRQ_SET_DATA_BOOL > 0 { + return Err(Error::UnsupportedFeature); + } + backend .set_irqs(cmd.index, cmd.flags, cmd.start, cmd.count, fds) .map_err(Error::Backend)?;