1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 23:17:45 +00:00

LibCore: Implement LocalSocket::receive_fd and send_fd

These are just wrappers over the sendfd and recvfd syscalls.
This commit is contained in:
sin-ack 2022-01-13 21:21:16 +00:00 committed by Ali Mohammad Pur
parent aaec30ee6e
commit f9847372f3
2 changed files with 24 additions and 0 deletions

View file

@ -6,6 +6,7 @@
*/
#include "Stream.h"
#include <LibCore/System.h>
#include <fcntl.h>
#include <netdb.h>
#include <poll.h>
@ -535,4 +536,24 @@ ErrorOr<NonnullOwnPtr<LocalSocket>> LocalSocket::connect(String const& path)
return socket;
}
ErrorOr<int> LocalSocket::receive_fd(int flags)
{
#ifdef __serenity__
return Core::System::recvfd(m_helper.fd(), flags);
#else
(void)flags;
return Error::from_string_literal("File descriptor passing not supported on this platform");
#endif
}
ErrorOr<void> LocalSocket::send_fd(int fd)
{
#ifdef __serenity__
return Core::System::sendfd(m_helper.fd(), fd);
#else
(void)fd;
return Error::from_string_literal("File descriptor passing not supported on this platform");
#endif
}
}