diff options
author | Jason Wang <jasowang@redhat.com> | 2021-04-23 11:18:03 +0800 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2021-04-23 11:11:28 +0100 |
commit | bc38e31b4e0366f3a70c0939abde4c3dd6e0fa30 (patch) | |
tree | f8e330e2edb9005a327170cffa51cd0944673806 /net/tap.c | |
parent | b1cffefa1b163bce9aebc3416f562c1d3886eeaa (diff) |
net: check the existence of peer before trying to pad
There could be case that peer is NULL. This can happen when during
network device hot-add where net device needs to be added first. So
the patch check the existence of peer before trying to do the pad.
Fixes: 969e50b61a285 ("net: Pad short frames to minimum size before sending from SLiRP/TAP")
Signed-off-by: Jason Wang <jasowang@redhat.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Stefan Weil <sw@weilnetz.de>
Message-id: 20210423031803.1479-1-jasowang@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'net/tap.c')
-rw-r--r-- | net/tap.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -203,7 +203,7 @@ static void tap_send(void *opaque) size -= s->host_vnet_hdr_len; } - if (!s->nc.peer->do_not_pad) { + if (net_peer_needs_padding(&s->nc)) { if (eth_pad_short_frame(min_pkt, &min_pktsz, buf, size)) { buf = min_pkt; size = min_pktsz; |