Commit 9012956d authored by Eugenio Pérez's avatar Eugenio Pérez Committed by Yang Yingliang
Browse files

vhost: Check docket sk_family instead of call getname



commit 42d84c84 upstream.

Doing so, we save one call to get data we already have in the struct.

Also, since there is no guarantee that getname use sockaddr_ll
parameter beyond its size, we add a little bit of security here.
It should do not do beyond MAX_ADDR_LEN, but syzbot found that
ax25_getname writes more (72 bytes, the size of full_sockaddr_ax25,
versus 20 + 32 bytes of sockaddr_ll + MAX_ADDR_LEN in syzbot repro).

Fixes: 3a4d5c94 ("vhost_net: a kernel-level virtio server")
Reported-by: default avatar <syzbot+f2a62d07a5198c819c7b@syzkaller.appspotmail.com>
Signed-off-by: default avatarEugenio Pérez <eperezma@redhat.com>
Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
parent 7d19836c
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment