Messages in this thread | | | From | Vishnu Dasa <> | Subject | Re: [PATCH] net: vmw_vsock: vmci: Check memcpy_from_msg() | Date | Sat, 3 Dec 2022 01:17:33 +0000 |
| |
> On Dec 2, 2022, at 2:58 PM, Artem Chernyshev <artem.chernyshev@red-soft.ru> wrote: > > We returns from vmci_transport_dgram_enqueue() with error > if memcpy goes wrong
Thanks for the patch.
Nit: could you please update the description? Maybe something like - vmci_transport_dgram_enqueue() does not check the return value of memcpy_from_msg(). Return with an error if the memcpy fails.
> > Found by Linux Verification Center (linuxtesting.org) with SVACE. > > Fixes: 0f7db23a07af ("vmci_transport: switch ->enqeue_dgram, ->enqueue_stream and ->dequeue_stream to msghdr") > Signed-off-by: Artem Chernyshev <artem.chernyshev@red-soft.ru> > --- > net/vmw_vsock/vmci_transport.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c > index 842c94286d31..7994090e0314 100644 > --- a/net/vmw_vsock/vmci_transport.c > +++ b/net/vmw_vsock/vmci_transport.c > @@ -1711,7 +1711,8 @@ static int vmci_transport_dgram_enqueue( > if (!dg) > return -ENOMEM; > > - memcpy_from_msg(VMCI_DG_PAYLOAD(dg), msg, len); > + if (memcpy_from_msg(VMCI_DG_PAYLOAD(dg), msg, len))
Need to free dg using kfree() before returning.
> + return -EFAULT; > > dg->dst = vmci_make_handle(remote_addr->svm_cid, > remote_addr->svm_port); > -- > 2.30.3 >
| |