aboutsummaryrefslogtreecommitdiff
path: root/lib/tran_sock.c
diff options
context:
space:
mode:
authorJohn Levon <john.levon@nutanix.com>2021-03-31 19:30:02 +0100
committerGitHub <noreply@github.com>2021-03-31 19:30:02 +0100
commitfe3f7540dbf3b3ba9346fd1deb6298ba163dd28d (patch)
tree90e05cffd1232940e656d5713accb77412c0e677 /lib/tran_sock.c
parent5e6cd316c19f2d0a29a692bd16757ca7030b9774 (diff)
downloadlibvfio-user-fe3f7540dbf3b3ba9346fd1deb6298ba163dd28d.zip
libvfio-user-fe3f7540dbf3b3ba9346fd1deb6298ba163dd28d.tar.gz
libvfio-user-fe3f7540dbf3b3ba9346fd1deb6298ba163dd28d.tar.bz2
tran_sock_recv_fds(): fix handling of get_msg() failures (#412)
get_msg() returns -errno not -1. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Thanos Makatos <thanos.makatos@nutanix.com>
Diffstat (limited to 'lib/tran_sock.c')
-rw-r--r--lib/tran_sock.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/tran_sock.c b/lib/tran_sock.c
index 4acde3b..cc14ca0 100644
--- a/lib/tran_sock.c
+++ b/lib/tran_sock.c
@@ -217,8 +217,8 @@ tran_sock_recv_fds(int sock, struct vfio_user_header *hdr, bool is_reply,
/* FIXME if ret == -1 then fcntl can overwrite recv's errno */
ret = get_msg(hdr, sizeof(*hdr), fds, nr_fds, sock, 0);
- if (ret == -1) {
- return -errno;
+ if (ret < 0) {
+ return ret;
}
if (ret < (int)sizeof(*hdr)) {
return -EINVAL;