diff options
Diffstat (limited to 'resources')
-rw-r--r-- | resources/api/vpp/supported_crcs.yaml | 2 | ||||
-rw-r--r-- | resources/libraries/python/IPsecUtil.py | 19 | ||||
-rw-r--r-- | resources/libraries/robot/crypto/ipsec.robot | 8 |
3 files changed, 29 insertions, 0 deletions
diff --git a/resources/api/vpp/supported_crcs.yaml b/resources/api/vpp/supported_crcs.yaml index c4bc243aae..c3eb03226b 100644 --- a/resources/api/vpp/supported_crcs.yaml +++ b/resources/api/vpp/supported_crcs.yaml @@ -134,6 +134,8 @@ ipsec_spd_entry_add_del_reply: '0x9ffac24b' # dev ipsec_tunnel_if_add_del: '0x2b135e68' # perf ipsec_tunnel_if_add_del_reply: '0x5383d31f' # perf + ipsec_set_async_mode: '0xa6465f7c' #perf + ipsec_set_async_mode_reply: '0xe8d4e804' #perf # ^^ tc01-64B-1c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-mrr # ^ See select_backend. # l2_fib_table_dump / details # honeycomb diff --git a/resources/libraries/python/IPsecUtil.py b/resources/libraries/python/IPsecUtil.py index 63fb6f1e8e..36e984923b 100644 --- a/resources/libraries/python/IPsecUtil.py +++ b/resources/libraries/python/IPsecUtil.py @@ -264,6 +264,25 @@ class IPsecUtil: papi_exec.add(cmd, **args).get_reply(err_msg) @staticmethod + def vpp_ipsec_set_async_mode(node, async_enable=1): + """Set IPsec async mode on|off. + + :param node: VPP node to set IPsec async mode. + :param async_enable: Async mode on or off. + :type node: dict + :type async_enable: int + :raises RuntimeError: If failed to set IPsec async mode or if no API + reply received. + """ + cmd = u"ipsec_set_async_mode" + err_msg = f"Failed to set IPsec async mode on host {node[u'host']}" + args = dict( + async_enable=async_enable + ) + with PapiSocketExecutor(node) as papi_exec: + papi_exec.add(cmd, **args).get_reply(err_msg) + + @staticmethod def vpp_ipsec_add_sad_entry( node, sad_id, spi, crypto_alg, crypto_key, integ_alg=None, integ_key=u"", tunnel_src=None, tunnel_dst=None): diff --git a/resources/libraries/robot/crypto/ipsec.robot b/resources/libraries/robot/crypto/ipsec.robot index b55c8a83ce..ec5884daa6 100644 --- a/resources/libraries/robot/crypto/ipsec.robot +++ b/resources/libraries/robot/crypto/ipsec.robot @@ -223,3 +223,11 @@ | | Vpp Route Add | | ... | ${dut1} | ${laddr_ip4} | 8 | gateway=${tg_if1_ip4} | | ... | interface=${DUT1_${int}1}[0] + +| Enable IPSec Async Mode on all VPP DUTs +| | [Documentation] +| | ... | Set IPsec async mode on for all DUT nodes. +| | +| | FOR | ${dut} | IN | @{duts} +| | | VPP Ipsec Set Async Mode | ${nodes['${dut}']} +| | END |