api: verify message size on receipt 69/34569/4
authorKlement Sekera <ksekera@cisco.com>
Mon, 22 Nov 2021 20:26:20 +0000 (21:26 +0100)
committerOle Tr�an <otroan@employees.org>
Tue, 14 Dec 2021 09:15:48 +0000 (09:15 +0000)
commit9b7e8acf792cced80e6775bc5668d9db415cdb46
treeb600764a60f9978017a567390a025d2777b864a1
parent755042dec0fcc733d456adc2a74042c529eff039
api: verify message size on receipt

When a message is received, verify that it's sufficiently large to
accomodate any VLAs within message. To do that, we need a way to
calculate message size including any VLAs. This patch adds such
funcionality to vppapigen and necessary C code to use those to validate
message size on receipt. Drop messages which are malformed.

Type: improvement
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Change-Id: I2903aa21dee84be6822b064795ba314de46c18f4
16 files changed:
src/plugins/hs_apps/sapi/vpp_echo_bapi.c
src/plugins/tracedump/tracedump_test.c
src/tools/vppapigen/vppapigen_c.py
src/vat/api_format.c
src/vcl/vcl_bapi.c
src/vlibapi/api_common.h
src/vlibapi/api_shared.c
src/vlibmemory/memclnt_api.c
src/vlibmemory/memory_client.c
src/vlibmemory/socket_api.c
src/vlibmemory/socket_client.c
src/vnet/ip/ip_api.c
src/vnet/ip/ip_test.c
src/vnet/ipsec/ipsec_test.c
src/vnet/l2/l2_test.c
src/vnet/srmpls/sr_mpls_api.c