diff options
author | Alyssa Ross <hi@alyssa.is> | 2020-03-26 11:54:48 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2020-06-15 09:37:22 +0000 |
commit | 98d69a42870030ad533dd8eda5da817430c2b71c (patch) | |
tree | 2f75316c682b4d0588c7c87faf142c064fb37f3c /msg_socket | |
parent | 353b1d9091b9095282463f36e26643506e2d2897 (diff) | |
download | crosvm-98d69a42870030ad533dd8eda5da817430c2b71c.tar crosvm-98d69a42870030ad533dd8eda5da817430c2b71c.tar.gz crosvm-98d69a42870030ad533dd8eda5da817430c2b71c.tar.bz2 crosvm-98d69a42870030ad533dd8eda5da817430c2b71c.tar.lz crosvm-98d69a42870030ad533dd8eda5da817430c2b71c.tar.xz crosvm-98d69a42870030ad533dd8eda5da817430c2b71c.tar.zst crosvm-98d69a42870030ad533dd8eda5da817430c2b71c.zip |
send wl::Params over socket
Diffstat (limited to 'msg_socket')
-rw-r--r-- | msg_socket/src/lib.rs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/msg_socket/src/lib.rs b/msg_socket/src/lib.rs index 5dedac8..f9b1ca0 100644 --- a/msg_socket/src/lib.rs +++ b/msg_socket/src/lib.rs @@ -4,6 +4,7 @@ mod msg_on_socket; +use std::fmt::{self, Debug, Formatter}; use std::io::{IoSlice, Result}; use std::marker::PhantomData; use std::os::unix::prelude::*; @@ -34,7 +35,7 @@ pub fn pair<Request: MsgOnSocket, Response: MsgOnSocket>( } /// Bidirection sock that support both send and recv. -#[derive(SerializeWithFds, DeserializeWithFds)] +#[derive(DeserializeWithFds, SerializeWithFds)] #[msg_socket2(strategy = "AsRawFd")] pub struct MsgSocket<I: MsgOnSocket, O: MsgOnSocket> { sock: UnixSeqpacket, @@ -42,6 +43,15 @@ pub struct MsgSocket<I: MsgOnSocket, O: MsgOnSocket> { _o: PhantomData<O>, } +// Implement Debug manually because the derivable implementation only +// works when I and O are Debug, even though they're only used as +// PhantomData type parameters. +impl<I: MsgOnSocket, O: MsgOnSocket> Debug for MsgSocket<I, O> { + fn fmt(&self, f: &mut Formatter) -> fmt::Result { + write!(f, "MsgSocket {{ sock: {:?}, .. }}", self.sock) + } +} + impl<I: MsgOnSocket, O: MsgOnSocket> MsgSocket<I, O> { // Create a new MsgSocket. pub fn new(s: UnixSeqpacket) -> MsgSocket<I, O> { |