From ff1e4b1bfb9baa54efd3b072ef4bca37062b9af4 Mon Sep 17 00:00:00 2001 From: Sebastian Sumpf Date: Fri, 16 Feb 2024 10:04:09 +0100 Subject: [PATCH] vfs_lxip: return error in case peek read returns EAGAIN A read with MSG_PEEK returns -1 and EGAIN/EWOULDBLOCK in case the socket is connected. Zero is only returned if the socket is disconnected. isuee #5104 --- repos/dde_linux/src/lib/vfs/lxip/vfs.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/repos/dde_linux/src/lib/vfs/lxip/vfs.cc b/repos/dde_linux/src/lib/vfs/lxip/vfs.cc index 43bd2b9995..443806c2df 100644 --- a/repos/dde_linux/src/lib/vfs/lxip/vfs.cc +++ b/repos/dde_linux/src/lib/vfs/lxip/vfs.cc @@ -527,7 +527,7 @@ class Vfs::Lxip_peek_file final : public Vfs::Lxip_file Errno err = genode_socket_recvmsg(&_sock, msg_recv.header(), &bytes_avail, true); if (err == GENODE_EAGAIN) - return 0; + return -1; return bytes_avail; }