ipsec: Tunnel SA DSCP behaviour

Type: feature

 - use tunnel_encap_decap_flags to control the copying of DSCP/ECN/etc
during IPSEC tunnel mode encap.
 - use DSCP value to have fixed encap value.

Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: If4f51fd4c1dcbb0422aac9bd078e5c14af5bf11f
This commit is contained in:
Neale Ranns
2020-01-02 04:06:10 +00:00
committed by Ole Tr�an
parent 62877029aa
commit 041add7d12
20 changed files with 664 additions and 72 deletions

View File

@@ -49,6 +49,9 @@ class IPsecIPv4Params(object):
self.salt = 0
self.flags = 0
self.nat_header = None
self.tun_flags = (VppEnum.vl_api_tunnel_encap_decap_flags_t.
TUNNEL_API_ENCAP_DECAP_FLAG_NONE)
self.dscp = 0
class IPsecIPv6Params(object):
@@ -85,6 +88,9 @@ class IPsecIPv6Params(object):
self.salt = 0
self.flags = 0
self.nat_header = None
self.tun_flags = (VppEnum.vl_api_tunnel_encap_decap_flags_t.
TUNNEL_API_ENCAP_DECAP_FLAG_NONE)
self.dscp = 0
def mk_scapy_crypt_key(p):
@@ -181,8 +187,10 @@ class TemplateIpsec(VppTestCase):
super(TemplateIpsec, cls).tearDownClass()
def setup_params(self):
self.ipv4_params = IPsecIPv4Params()
self.ipv6_params = IPsecIPv6Params()
if not hasattr(self, 'ipv4_params'):
self.ipv4_params = IPsecIPv4Params()
if not hasattr(self, 'ipv6_params'):
self.ipv6_params = IPsecIPv6Params()
self.params = {self.ipv4_params.addr_type: self.ipv4_params,
self.ipv6_params.addr_type: self.ipv6_params}