lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <65324bbb-7414-3c27-9dd3-7565010aa6b1@sberdevices.ru> Date: Tue, 10 Jan 2023 10:13:23 +0000 From: Arseniy Krasnov <AVKrasnov@...rdevices.ru> To: Stefano Garzarella <sgarzare@...hat.com>, "edumazet@...gle.com" <edumazet@...gle.com>, "David S. Miller" <davem@...emloft.net>, Paolo Abeni <pabeni@...hat.com>, Jakub Kicinski <kuba@...nel.org> CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, "netdev@...r.kernel.org" <netdev@...r.kernel.org>, "virtualization@...ts.linux-foundation.org" <virtualization@...ts.linux-foundation.org>, Bobby Eshleman <bobby.eshleman@...edance.com>, Krasnov Arseniy <oxffffaa@...il.com>, "Arseniy Krasnov" <AVKrasnov@...rdevices.ru>, kernel <kernel@...rdevices.ru> Subject: [PATCH net-next v7 1/4] vsock: return errors other than -ENOMEM to socket From: Bobby Eshleman <bobby.eshleman@...edance.com> This removes behaviour, where error code returned from any transport was always switched to ENOMEM. For example when user tries to send too big message via SEQPACKET socket, transport layers return EMSGSIZE, but this error code was always replaced with ENOMEM and returned to user. Signed-off-by: Bobby Eshleman <bobby.eshleman@...edance.com> Signed-off-by: Arseniy Krasnov <AVKrasnov@...rdevices.ru> Reviewed-by: Stefano Garzarella <sgarzare@...hat.com> --- net/vmw_vsock/af_vsock.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c index d593d5b6d4b1..19aea7cba26e 100644 --- a/net/vmw_vsock/af_vsock.c +++ b/net/vmw_vsock/af_vsock.c @@ -1861,8 +1861,9 @@ static int vsock_connectible_sendmsg(struct socket *sock, struct msghdr *msg, written = transport->stream_enqueue(vsk, msg, len - total_written); } + if (written < 0) { - err = -ENOMEM; + err = written; goto out_err; } -- 2.25.1
Powered by blists - more mailing lists