diff --git a/crates/daemon/src/control.rs b/crates/daemon/src/control.rs index e674cc6..ed7c379 100644 --- a/crates/daemon/src/control.rs +++ b/crates/daemon/src/control.rs @@ -28,6 +28,7 @@ use krata::{ ReadZoneMetricsReply, ReadZoneMetricsRequest, ResolveZoneIdReply, ResolveZoneIdRequest, SnoopIdmReply, SnoopIdmRequest, UpdateZoneResourcesReply, UpdateZoneResourcesRequest, WatchEventsReply, WatchEventsRequest, ZoneConsoleReply, ZoneConsoleRequest, + ReadHypervisorConsoleRingRequest, ReadHypervisorConsoleRingReply, }, }, }; @@ -710,4 +711,15 @@ impl ControlService for DaemonControlService { .map_err(ApiError::from)?; Ok(Response::new(UpdateZoneResourcesReply {})) } + + async fn read_hypervisor_console_ring( + &self, + request: Request, + ) -> Result, Status> { + let request = request.into_inner(); + let data = self.runtime.read_hypervisor_console(request.clear).await.map_err(|error| ApiError { + message: error.to_string(), + })?; + Ok(Response::new(ReadHypervisorConsoleRingReply { data: data.to_string() })) + } }