summaryrefslogtreecommitdiffstats
path: root/test/vpp_papi_provider.py
diff options
context:
space:
mode:
authorOle Troan <ot@cisco.com>2019-04-15 11:27:22 +0200
committerFlorin Coras <florin.coras@gmail.com>2019-04-23 18:49:22 +0000
commit4ff09ae3483593f51faa160829fbcad4c77ed5b3 (patch)
treef2fa50765a7deaa081d26841437e9e9f24c00337 /test/vpp_papi_provider.py
parent59e0c8f5dc4b9c2b580c68da5595e4ed750194fe (diff)
API: Python and Unix domain socket improvement
Handle the case where buffer overflows. Then SOCK_SEQPACKET assumption that multiple API messages are not returned by recv() is broken. Use SOCK_STREAM for API exchanges instead. Add support for running tests over sockets. make test SOCKET=1 Change-Id: Ibe5fd69b1bf617de4c7ba6cce0a7c2b3f97a2821 Signed-off-by: Ole Troan <ot@cisco.com>
Diffstat (limited to 'test/vpp_papi_provider.py')
-rw-r--r--test/vpp_papi_provider.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/test/vpp_papi_provider.py b/test/vpp_papi_provider.py
index 62fc0aa42b3..8b637f0bd49 100644
--- a/test/vpp_papi_provider.py
+++ b/test/vpp_papi_provider.py
@@ -226,8 +226,16 @@ class VppPapiProvider(object):
if 'VPP_API_DIR' not in os.environ:
os.environ['VPP_API_DIR'] = os.getenv('VPP_INSTALL_PATH')
+ use_socket = False
+ try:
+ if os.environ['SOCKET'] == '1':
+ use_socket = True
+ except:
+ pass
self.vpp = VPP(logger=test_class.logger,
- read_timeout=read_timeout)
+ read_timeout=read_timeout,
+ use_socket=use_socket,
+ server_address=test_class.api_sock)
self._events = deque()
def __enter__(self):