ip: fix offload flags handling

The per-protocol offload flags only make sense if F_OFFLOAD is set on
the vlib buffer main flags.
vnet_calc_checksums_inline is called from many places which should do
this check and don't, moving the check to this function is less error
prone and shouldn't have an impact on performance since the function
is always_inline.

Type: fix
Change-Id: I0297f109f31e409f07bfbaea3cd8b90c659658c4
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
This commit is contained in:
Aloys Augustin
2021-04-15 18:12:51 +02:00
committed by Beno�t Ganne
parent 8932e45022
commit ac6c528fb2
2 changed files with 5 additions and 3 deletions

View File

@ -87,6 +87,9 @@ vnet_calc_checksums_inline (vlib_main_t * vm, vlib_buffer_t * b,
udp_header_t *uh;
u32 oflags = vnet_buffer2 (b)->oflags;
if (!(b->flags & VNET_BUFFER_F_OFFLOAD))
return;
ASSERT (!(is_ip4 && is_ip6));
ip4 = (ip4_header_t *) (b->data + vnet_buffer (b)->l3_hdr_offset);