this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: Some more WSL support

- sendmsg: Fix a problem when an uninitialized Linux msg_name pointing to
garbage can cause WSL1 to return EINVAL, even when msg_namelen is 0.
- listen: Register listening fds to libkqueue as a workaround for a problem
with SO_ACCEPTCONN in WSL1.
- Updated darlingserver and libkqueue submodules with fixes.

+8
+4
src/kernel/emulation/linux/network/listen.c
··· 3 3 #include "../errno.h" 4 4 #include <linux-syscalls/linux.h> 5 5 6 + void __attribute__((weak)) __attribute__((visibility("default"))) __darling_kqueue_register_listen(int fd) { } 7 + 6 8 long sys_listen(int fd, int backlog) 7 9 { 8 10 int ret; ··· 16 18 17 19 if (ret < 0) 18 20 ret = errno_linux_to_bsd(ret); 21 + else 22 + __darling_kqueue_register_listen(fd); 19 23 20 24 return ret; 21 25 }
+4
src/kernel/emulation/linux/network/sendmsg.c
··· 30 30 saddr->linux_family = sfamily_bsd_to_linux(saddr->bsd_family); 31 31 lmsg.msg_name = saddr; 32 32 } 33 + else if (msg->msg_namelen == 0) 34 + { 35 + lmsg.msg_name = NULL; 36 + } 33 37 34 38 lmsg.msg_namelen = msg->msg_namelen; 35 39 lmsg.msg_iov = msg->msg_iov;