From 87f63898b4ad54c081e8aaeb35e465b2fe23b9b3 Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Sat, 1 May 2021 16:01:40 -0700 Subject: vcl: attr api to set endpt ext config Type: improvement Signed-off-by: Florin Coras Change-Id: I06cd3721c1b534e9449bf96760c02ca30628c21e --- src/vcl/vppcom.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'src/vcl/vppcom.c') diff --git a/src/vcl/vppcom.c b/src/vcl/vppcom.c index 5e37dcfef39..96a207b741f 100644 --- a/src/vcl/vppcom.c +++ b/src/vcl/vppcom.c @@ -3697,7 +3697,8 @@ vppcom_session_attr (uint32_t session_handle, uint32_t op, } if (!session->ext_config) { - vcl_session_alloc_ext_cfg (session, TRANSPORT_ENDPT_EXT_CFG_CRYPTO); + vcl_session_alloc_ext_cfg (session, TRANSPORT_ENDPT_EXT_CFG_CRYPTO, + sizeof (transport_endpt_ext_cfg_t)); } else if (session->ext_config->type != TRANSPORT_ENDPT_EXT_CFG_CRYPTO) { @@ -3744,6 +3745,23 @@ vppcom_session_attr (uint32_t session_handle, uint32_t op, *buflen); break; + case VPPCOM_ATTR_SET_ENDPT_EXT_CFG: + if (!(buffer && buflen && (*buflen > 0))) + { + rv = VPPCOM_EINVAL; + break; + } + if (session->ext_config) + { + rv = VPPCOM_EINVAL; + break; + } + vcl_session_alloc_ext_cfg (session, TRANSPORT_ENDPT_EXT_CFG_NONE, + *buflen + sizeof (u32)); + clib_memcpy (session->ext_config->data, buffer, *buflen); + session->ext_config->len = *buflen; + break; + default: rv = VPPCOM_EINVAL; break; -- cgit 1.2.3-korg