From 08eb2bb205f998a75dacd1f3b999ec1a10160b35 Mon Sep 17 00:00:00 2001 From: Dave Barach Date: Wed, 15 Apr 2020 09:34:43 -0400 Subject: pg: set vnet buffer flags in pg streams See .../extras/pg/checksum_offload.pg for a nontrivial example, which deliberately sets bogus ip and udp checksums in the generated packets, then fixes the mess with (software emulated) hardware checksum offload. Validated via "pcap dispatch trace on max 1000 buffer-trace pg-input 100". Packets stuffed into loop1-output have the configured bogus ip and udp checksums. vnet_calc_checksums_inline(...) fixes the checksums, which are correct when packets visit loop1-tx. The packet generator is a dumb robot in this regard. If you ask for a ridiculous flag combination - example: ip4 and ip6 - your mileage may vary. Type: feature Signed-off-by: Dave Barach Change-Id: I6d9e790f373bcd9e445a89113ca8e4c8f9aa9419 --- src/vnet/interface_funcs.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/vnet/interface_funcs.h') diff --git a/src/vnet/interface_funcs.h b/src/vnet/interface_funcs.h index f5c66d447de..7d9c098b118 100644 --- a/src/vnet/interface_funcs.h +++ b/src/vnet/interface_funcs.h @@ -444,6 +444,7 @@ format_function_t format_vnet_sw_interface_flags; /* Parses sw/hw interface name -> index. */ unformat_function_t unformat_vnet_sw_interface; unformat_function_t unformat_vnet_hw_interface; +unformat_function_t unformat_vnet_buffer_flags; /* Parses interface flags (up, down, enable, disable, etc.) */ unformat_function_t unformat_vnet_hw_interface_flags; -- cgit 1.2.3-korg