diff --git a/kernel/kernel/OpenFileDescriptorSet.cpp b/kernel/kernel/OpenFileDescriptorSet.cpp index 7cf764c398..fd71238adf 100644 --- a/kernel/kernel/OpenFileDescriptorSet.cpp +++ b/kernel/kernel/OpenFileDescriptorSet.cpp @@ -146,9 +146,17 @@ namespace Kernel auto sock_info = TRY(parse_socket_info(domain, type, protocol)); auto socket = TRY(NetworkManager::get().create_socket(sock_info.domain, sock_info.type, 0777, m_credentials.euid(), m_credentials.egid())); + auto socket_sv = ""_sv; + if (sock_info.domain == Socket::Domain::UNIX) + socket_sv = ""_sv; + else if (sock_info.type == Socket::Type::STREAM) + socket_sv = ""; + else if (sock_info.type == Socket::Type::DGRAM) + socket_sv = ""; + LockGuard _(m_mutex); int fd = TRY(get_free_fd()); - m_open_files[fd].description = TRY(BAN::RefPtr::create(VirtualFileSystem::File(socket, ""_sv), 0, O_RDWR | sock_info.status_flags)); + m_open_files[fd].description = TRY(BAN::RefPtr::create(VirtualFileSystem::File(socket, socket_sv), 0, O_RDWR | sock_info.status_flags)); m_open_files[fd].descriptor_flags = sock_info.descriptor_flags; return fd; }