summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJorgen Hansen <jhansen@vmware.com>2016-04-05 01:59:32 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-04-27 09:09:32 +0200
commit8d5ed79fb2d766e57b5220a3e6054d99f1c985d0 (patch)
tree90151c321997710198f3c755a6277ae6b0a8a9aa /net
parentf803416632b5c31e647cf18861e4c379173a02e2 (diff)
downloadlinux-stable-8d5ed79fb2d766e57b5220a3e6054d99f1c985d0.tar.gz
linux-stable-8d5ed79fb2d766e57b5220a3e6054d99f1c985d0.tar.bz2
linux-stable-8d5ed79fb2d766e57b5220a3e6054d99f1c985d0.zip
VSOCK: Detach QP check should filter out non matching QPs.
commit 8ab18d71de8b07d2c4d6f984b718418c09ea45c5 upstream. The check in vmci_transport_peer_detach_cb should only allow a detach when the qp handle of the transport matches the one in the detach message. Testing: Before this change, a detach from a peer on a different socket would cause an active stream socket to register a detach. Reviewed-by: George Zhang <georgezhang@vmware.com> Signed-off-by: Jorgen Hansen <jhansen@vmware.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net')
-rw-r--r--net/vmw_vsock/vmci_transport.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c
index 0a369bb440e7..662bdd20a748 100644
--- a/net/vmw_vsock/vmci_transport.c
+++ b/net/vmw_vsock/vmci_transport.c
@@ -842,7 +842,7 @@ static void vmci_transport_peer_detach_cb(u32 sub_id,
* qp_handle.
*/
if (vmci_handle_is_invalid(e_payload->handle) ||
- vmci_handle_is_equal(trans->qp_handle, e_payload->handle))
+ !vmci_handle_is_equal(trans->qp_handle, e_payload->handle))
return;
/* We don't ask for delayed CBs when we subscribe to this event (we
@@ -2154,7 +2154,7 @@ module_exit(vmci_transport_exit);
MODULE_AUTHOR("VMware, Inc.");
MODULE_DESCRIPTION("VMCI transport for Virtual Sockets");
-MODULE_VERSION("1.0.2.0-k");
+MODULE_VERSION("1.0.3.0-k");
MODULE_LICENSE("GPL v2");
MODULE_ALIAS("vmware_vsock");
MODULE_ALIAS_NETPROTO(PF_VSOCK);