From 7bf7de44d216db2961a0af3080b94482d95b1f96 Mon Sep 17 00:00:00 2001 From: Bananymous Date: Fri, 26 Jun 2026 01:44:03 +0300 Subject: [PATCH] Kernel: Support SO_TYPE and SO_KEEPALIVE getsockopt in UNIX socket --- kernel/kernel/Networking/UNIX/Socket.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/kernel/kernel/Networking/UNIX/Socket.cpp b/kernel/kernel/Networking/UNIX/Socket.cpp index d1ee526a..8162f0db 100644 --- a/kernel/kernel/Networking/UNIX/Socket.cpp +++ b/kernel/kernel/Networking/UNIX/Socket.cpp @@ -749,12 +749,24 @@ namespace Kernel case SO_ERROR: result = 0; break; + case SO_KEEPALIVE: + result = 1; + break; case SO_SNDBUF: result = m_sndbuf; break; case SO_RCVBUF: result = m_packet_buffer->size(); break; + case SO_TYPE: + switch (m_socket_type) + { + case Type::STREAM: result = SOCK_STREAM; break; + case Type::DGRAM: result = SOCK_DGRAM; break; + case Type::SEQPACKET: result = SOCK_SEQPACKET; break; + default: ASSERT_NOT_REACHED(); + } + break; default: dwarnln("getsockopt(SOL_SOCKET, {})", option); return BAN::Error::from_errno(ENOTSUP);