From e1180544ebdc0e80f98e9456a1841f81f19c2164 Mon Sep 17 00:00:00 2001 From: weitengchen Date: Wed, 18 Mar 2026 01:20:38 -0700 Subject: [PATCH] sendmsg for unix socket --- litebox_shim_linux/src/syscalls/net.rs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/litebox_shim_linux/src/syscalls/net.rs b/litebox_shim_linux/src/syscalls/net.rs index d1b04e894..44e24a927 100644 --- a/litebox_shim_linux/src/syscalls/net.rs +++ b/litebox_shim_linux/src/syscalls/net.rs @@ -1427,7 +1427,24 @@ impl Task { } Ok(total_sent) }, - |_file| Err(Errno::ENOTSOCK), + |file| { + let unix_addr = sock_addr + .clone() + .map(|addr| addr.unix().ok_or(Errno::EAFNOSUPPORT)) + .transpose()?; + let mut total_sent = 0; + for iov in &iovs { + if iov.iov_len == 0 { + continue; + } + let buf = iov + .iov_base + .to_owned_slice(iov.iov_len) + .ok_or(Errno::EFAULT)?; + total_sent += file.sendto(self, &buf, flags, unix_addr.clone())?; + } + Ok(total_sent) + }, ) }