diff --git a/mtp-type-maps b/mtp-type-maps index 486541b..f3c5037 160000 --- a/mtp-type-maps +++ b/mtp-type-maps @@ -1 +1 @@ -Subproject commit 486541b9483356ff49ff3ec7016f87d3ecbeaa0e +Subproject commit f3c5037b0a099ae5389486eec77471bd5addab4a diff --git a/src/transport/omikron_connection.rs b/src/transport/omikron_connection.rs index 1194a2d..da4a95e 100644 --- a/src/transport/omikron_connection.rs +++ b/src/transport/omikron_connection.rs @@ -394,9 +394,7 @@ impl OmikronConnection { let request_id = value.id(); let result = crate::transport::relay_router::route_from_omikron(id, value).await; let response = match &result { - Ok(()) => request_id.map(|request_id| { - CommunicationValue::new(CommunicationType::Success).with_id(request_id) - }), + Ok(response) => request_id.map(|request_id| response.clone().with_id(request_id)), Err(error) => { log_err!(id, PrintType::Omega, "Relay routing failed: {}", error); request_id.map(|request_id| { @@ -417,7 +415,9 @@ impl OmikronConnection { send_error ); } - return result.map_err(|error| crate::error::OmegaError::Transport(error.to_string())); + return result + .map(|_| ()) + .map_err(|error| crate::error::OmegaError::Transport(error.to_string())); } match value.get_comm_type_enum() { Some(CommunicationType::ShortenLink) => { diff --git a/src/transport/relay_router.rs b/src/transport/relay_router.rs index 0cbd1f2..0a76ea7 100644 --- a/src/transport/relay_router.rs +++ b/src/transport/relay_router.rs @@ -82,7 +82,7 @@ pub fn error_response_type(error: &RelayRouteError) -> CommunicationType { pub async fn route_from_omikron( source_omikron_id: i64, frame: CommunicationValue, -) -> Result<(), RelayRouteError> { +) -> Result { let frame = ensure_relay_frame_id(frame); if !frame.is_type(CommunicationType::Relay) { return Err(RelayRouteError::Relay(RelayError::NotRelay)); @@ -154,7 +154,7 @@ pub async fn route_from_omikron( RelayRouteError::Send(error.to_string()) })?; if response.is_type(CommunicationType::Success) { - Ok(()) + Ok(response) } else { Err(RelayRouteError::Send(format!( "destination Omikron rejected the Relay with {}",