From 48a95edf216c02394a6aad9137f05b76854b201c Mon Sep 17 00:00:00 2001 From: Marian Pritsak Date: Fri, 27 Sep 2024 20:23:32 +0300 Subject: [PATCH] Add ACL actions for setting inner MACs Add actions SET_INNER_SRC_MAC and SET_INNER_DST_MAC for tunneled packets to be able to override inner values independently from router based on ACL policy. Signed-off-by: Marian Pritsak --- inc/saiacl.h | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/inc/saiacl.h b/inc/saiacl.h index df92e7bff..d675957a9 100644 --- a/inc/saiacl.h +++ b/inc/saiacl.h @@ -288,6 +288,12 @@ typedef enum _sai_acl_action_type_t /** Next Chain Group */ SAI_ACL_ACTION_TYPE_CHAIN_REDIRECT = 0x00000038, + + /** Set Packet inner Src MAC Address */ + SAI_ACL_ACTION_TYPE_SET_INNER_SRC_MAC = 0x00000039, + + /** Set Packet inner Dst MAC Address */ + SAI_ACL_ACTION_TYPE_SET_INNER_DST_MAC = 0x0000003a, } sai_acl_action_type_t; /** @@ -3221,10 +3227,28 @@ typedef enum _sai_acl_entry_attr_t */ SAI_ACL_ENTRY_ATTR_ACTION_CHAIN_REDIRECT = SAI_ACL_ENTRY_ATTR_ACTION_START + 0x38, + /** + * @brief Set Packet Inner Src MAC Address + * + * @type sai_acl_action_data_t sai_mac_t + * @flags CREATE_AND_SET + * @default disabled + */ + SAI_ACL_ENTRY_ATTR_ACTION_SET_INNER_SRC_MAC = SAI_ACL_ENTRY_ATTR_ACTION_START + 0x39, + + /** + * @brief Set Packet Inner Dst MAC Address + * + * @type sai_acl_action_data_t sai_mac_t + * @flags CREATE_AND_SET + * @default disabled + */ + SAI_ACL_ENTRY_ATTR_ACTION_SET_INNER_DST_MAC = SAI_ACL_ENTRY_ATTR_ACTION_START + 0x3a, + /** * @brief End of Rule Actions */ - SAI_ACL_ENTRY_ATTR_ACTION_END = SAI_ACL_ENTRY_ATTR_ACTION_CHAIN_REDIRECT, + SAI_ACL_ENTRY_ATTR_ACTION_END = SAI_ACL_ENTRY_ATTR_ACTION_SET_INNER_DST_MAC, /** * @brief End of ACL Entry attributes