Forum | Documentation | Website | Blog

Skip to content
Snippets Groups Projects
Commit 1e1fdcbd authored by Michael S. Tsirkin's avatar Michael S. Tsirkin
Browse files

vhost/vsock: always initialize seqpacket_allow


There are two issues around seqpacket_allow:
1. seqpacket_allow is not initialized when socket is
   created. Thus if features are never set, it will be
   read uninitialized.
2. if VIRTIO_VSOCK_F_SEQPACKET is set and then cleared,
   then seqpacket_allow will not be cleared appropriately
   (existing apps I know about don't usually do this but
    it's legal and there's no way to be sure no one relies
    on this).

To fix:
	- initialize seqpacket_allow after allocation
	- set it unconditionally in set_features

Reported-by: default avatar <syzbot+6c21aeb59d0e82eb2782@syzkaller.appspotmail.com>
Reported-by: default avatarJeongjun Park <aha310510@gmail.com>
Fixes: ced7b713

 ("vhost/vsock: support SEQPACKET for transport").
Tested-by: default avatarArseny Krasnov <arseny.krasnov@kaspersky.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20240422100010-mutt-send-email-mst@kernel.org>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Acked-by: default avatarJason Wang <jasowang@redhat.com>
Reviewed-by: default avatarStefano Garzarella <sgarzare@redhat.com>
Reviewed-by: default avatarEugenio Pérez <eperezma@redhat.com>
Acked-by: default avatarJakub Kicinski <kuba@kernel.org>
parent e9d22f7a
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment