During packet filtering, we can now use host hdr len to offset incoming buffer unconditionally.
Signed-off-by: Michael S. Tsirkin <m...@redhat.com> --- hw/virtio-net.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/hw/virtio-net.c b/hw/virtio-net.c index d9a9f8f..c65dead 100644 --- a/hw/virtio-net.c +++ b/hw/virtio-net.c @@ -543,9 +543,7 @@ static int receive_filter(VirtIONet *n, const uint8_t *buf, int size) if (n->promisc) return 1; - if (n->has_vnet_hdr) { - ptr += sizeof(struct virtio_net_hdr); - } + ptr += n->host_hdr_len; if (!memcmp(&ptr[12], vlan, sizeof(vlan))) { int vid = be16_to_cpup((uint16_t *)(ptr + 14)) & 0xfff; -- MST