Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
ikev2: support responder hostname
[vpp.git]
/
src
/
plugins
/
ikev2
/
test
/
vpp_ikev2.py
diff --git
a/src/plugins/ikev2/test/vpp_ikev2.py
b/src/plugins/ikev2/test/vpp_ikev2.py
index
5a2a51e
..
de20812
100644
(file)
--- a/
src/plugins/ikev2/test/vpp_ikev2.py
+++ b/
src/plugins/ikev2/test/vpp_ikev2.py
@@
-1,3
+1,4
@@
+from ipaddress import IPv4Address, AddressValueError
from vpp_object import VppObject
from vpp_papi import VppEnum
from vpp_object import VppObject
from vpp_papi import VppEnum
@@
-12,7
+13,8
@@
class AuthMethod:
class IDType:
v = {'ip4-addr': 1,
class IDType:
v = {'ip4-addr': 1,
- 'fqdn': 2}
+ 'fqdn': 2,
+ 'ip6-addr': 5}
@staticmethod
def value(key): return IDType.v[key]
@staticmethod
def value(key): return IDType.v[key]
@@
-25,6
+27,10
@@
class Profile(VppObject):
self.vapi = test.vapi
self.profile_name = profile_name
self.udp_encap = False
self.vapi = test.vapi
self.profile_name = profile_name
self.udp_encap = False
+ self.natt = True
+
+ def disable_natt(self):
+ self.natt = False
def add_auth(self, method, data, is_hex=False):
if isinstance(method, int):
def add_auth(self, method, data, is_hex=False):
if isinstance(method, int):
@@
-52,7
+58,8
@@
class Profile(VppObject):
'is_local': False}
def add_local_ts(self, start_addr, end_addr, start_port=0, end_port=0xffff,
'is_local': False}
def add_local_ts(self, start_addr, end_addr, start_port=0, end_port=0xffff,
- proto=0):
+ proto=0, is_ip4=True):
+ self.ts_is_ip4 = is_ip4
self.local_ts = {'is_local': True,
'protocol_id': proto,
'start_port': start_port,
self.local_ts = {'is_local': True,
'protocol_id': proto,
'start_port': start_port,
@@
-62,6
+69,12
@@
class Profile(VppObject):
def add_remote_ts(self, start_addr, end_addr, start_port=0,
end_port=0xffff, proto=0):
def add_remote_ts(self, start_addr, end_addr, start_port=0,
end_port=0xffff, proto=0):
+ try:
+ IPv4Address(start_addr)
+ is_ip4 = True
+ except AddressValueError:
+ is_ip4 = False
+ self.ts_is_ip4 = is_ip4
self.remote_ts = {'is_local': False,
'protocol_id': proto,
'start_port': start_port,
self.remote_ts = {'is_local': False,
'protocol_id': proto,
'start_port': start_port,
@@
-69,6
+82,9
@@
class Profile(VppObject):
'start_addr': start_addr,
'end_addr': end_addr}
'start_addr': start_addr,
'end_addr': end_addr}
+ def add_responder_hostname(self, hn):
+ self.responder_hostname = hn
+
def add_responder(self, responder):
self.responder = responder
def add_responder(self, responder):
self.responder = responder
@@
-115,19
+131,24
@@
class Profile(VppObject):
**self.remote_id)
if hasattr(self, 'local_ts'):
self.vapi.ikev2_profile_set_ts(name=self.profile_name,
**self.remote_id)
if hasattr(self, 'local_ts'):
self.vapi.ikev2_profile_set_ts(name=self.profile_name,
- ts=
{**self.local_ts}
)
+ ts=
self.local_ts
)
if hasattr(self, 'remote_ts'):
self.vapi.ikev2_profile_set_ts(name=self.profile_name,
if hasattr(self, 'remote_ts'):
self.vapi.ikev2_profile_set_ts(name=self.profile_name,
- ts=
{**self.remote_ts}
)
+ ts=
self.remote_ts
)
if hasattr(self, 'responder'):
self.vapi.ikev2_set_responder(name=self.profile_name,
if hasattr(self, 'responder'):
self.vapi.ikev2_set_responder(name=self.profile_name,
- responder={**self.responder})
+ responder=self.responder)
+
+ if hasattr(self, 'responder_hostname'):
+ print(self.responder_hostname)
+ self.vapi.ikev2_set_responder_hostname(name=self.profile_name,
+ **self.responder_hostname)
if hasattr(self, 'ike_transforms'):
self.vapi.ikev2_set_ike_transforms(name=self.profile_name,
if hasattr(self, 'ike_transforms'):
self.vapi.ikev2_set_ike_transforms(name=self.profile_name,
- tr=
{**self.ike_transforms}
)
+ tr=
self.ike_transforms
)
if hasattr(self, 'esp_transforms'):
self.vapi.ikev2_set_esp_transforms(name=self.profile_name,
if hasattr(self, 'esp_transforms'):
self.vapi.ikev2_set_esp_transforms(name=self.profile_name,
@@
-147,6
+168,9
@@
class Profile(VppObject):
self.vapi.ikev2_set_tunnel_interface(name=self.profile_name,
sw_if_index=self.tun_itf)
self.vapi.ikev2_set_tunnel_interface(name=self.profile_name,
sw_if_index=self.tun_itf)
+ if not self.natt:
+ self.vapi.ikev2_profile_disable_natt(name=self.profile_name)
+
def query_vpp_config(self):
res = self.vapi.ikev2_profile_dump()
for r in res:
def query_vpp_config(self):
res = self.vapi.ikev2_profile_dump()
for r in res: