Similar to the change for sendmsg(), create a pointer size independent implementation of recvmsg() and let cloudabi32 and cloudabi64 call into it. In case userspace requests one or more file descriptors, call kern_recvit() in such a way that we get the control message headers in an mbuf. Iterate over all of the headers and copy the file descriptors to userspace. |
||
---|---|---|
.. | ||
cloudabi32_fd.c | ||
cloudabi32_module.c | ||
cloudabi32_poll.c | ||
cloudabi32_proto.h | ||
cloudabi32_sock.c | ||
cloudabi32_syscall.h | ||
cloudabi32_syscalls.c | ||
cloudabi32_sysent.c | ||
cloudabi32_systrace_args.c | ||
cloudabi32_thread.c | ||
cloudabi32_util.h | ||
Makefile | ||
syscalls.conf |