Send length alongside Message::NewPrivilegedClient

This commit is contained in:
Lucy 2022-06-30 11:09:00 -04:00
parent f39cdb37b5
commit 606800a711
No known key found for this signature in database
GPG key ID: EBC517FAD666BBF1

View file

@ -21,7 +21,7 @@ use tokio_util::sync::CancellationToken;
#[serde(rename_all = "snake_case", tag = "message")] #[serde(rename_all = "snake_case", tag = "message")]
pub enum Message { pub enum Message {
SetEnv { variables: HashMap<String, String> }, SetEnv { variables: HashMap<String, String> },
NewPrivilegedClient, NewPrivilegedClient { count: usize },
} }
pub fn create_privileged_socket( pub fn create_privileged_socket(
@ -87,7 +87,7 @@ async fn receive_ipc(
.expect("failed to send environmental variables"); .expect("failed to send environmental variables");
} }
} }
Message::NewPrivilegedClient => { Message::NewPrivilegedClient { .. } => {
unreachable!("compositor should not send NewPrivilegedClient") unreachable!("compositor should not send NewPrivilegedClient")
} }
} }
@ -108,8 +108,8 @@ async fn send_fd(session_tx: &mut WriteHalf<'_>, stream: Vec<UnixStream>) -> Res
}) })
.collect::<Result<Vec<_>>>() .collect::<Result<Vec<_>>>()
.wrap_err("failed to convert streams to file descriptors")?; .wrap_err("failed to convert streams to file descriptors")?;
let json = let json = serde_json::to_string(&Message::NewPrivilegedClient { count: fds.len() })
serde_json::to_string(&Message::NewPrivilegedClient).wrap_err("failed to encode json")?; .wrap_err("failed to encode json")?;
session_tx session_tx
.write_all(json.as_bytes()) .write_all(json.as_bytes())
.await .await