diff options
author | Arthur de Kerhor <arthurdekerhor@gmail.com> | 2021-05-20 11:48:00 +0200 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2021-05-29 18:13:01 +0000 |
commit | 8a6f5d394c69eba3bfaddfe36a93d1013cba3ce3 (patch) | |
tree | 4adb54d52b2f246fc7d2820fb959e63bbcae7de3 /test/vpp_udp_decap.py | |
parent | b740fdc8ff7f58637524e999d5fe01b8b010810d (diff) |
udp: add udp decapsulation
Possibility to register a port via CLI or API to decap incoming UDP
packets:
- For CLI, a user needs to specify the inner protocol (only MPLS
supported for now)
- For API, the protocol is specified by index
Added unittests
Type: feature
Change-Id: Ifedd86d8db2e355b7618472554fd67d77a13a4aa
Signed-off-by: Arthur de Kerhor <arthurdekerhor@gmail.com>
Diffstat (limited to 'test/vpp_udp_decap.py')
-rw-r--r-- | test/vpp_udp_decap.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test/vpp_udp_decap.py b/test/vpp_udp_decap.py new file mode 100644 index 00000000000..2bd03ce75c0 --- /dev/null +++ b/test/vpp_udp_decap.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python3 +""" + UDP decap objects +""" + +from vpp_object import VppObject +from socket import inet_pton, inet_ntop, AF_INET, AF_INET6 + + +class VppUdpDecap(VppObject): + + def __init__(self, + test, + is_ip4, + dst_port, + next_proto): + self._test = test + self.active = False + self.udp_decap = { + 'is_ip4': is_ip4, + 'port': dst_port, + 'next_proto': next_proto + } + + def add_vpp_config(self): + self._test.vapi.udp_decap_add_del(True, self.udp_decap) + self._test.registry.register(self, self._test.logger) + self.active = True + + def query_vpp_config(self): + return self.active + + def remove_vpp_config(self): + self._test.vapi.udp_decap_add_del(False, self.udp_decap) + self.active = False |