diff options
author | Alexei Starovoitov <ast@kernel.org> | 2020-11-03 17:52:37 -0800 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2020-11-03 17:54:03 -0800 |
commit | d0b3d2d7e50de5ce121f77a16df4c17e91b09421 (patch) | |
tree | 0be3b5fecc5789017fb95e9e3acff9ac7b23e96b /tools/testing/selftests/bpf/tcp_server.py | |
parent | 8aaeed81fcb917b5cf4976932c5baefa1471128b (diff) | |
parent | 21b5177e997c98643eaabd4b917f2e287395af86 (diff) |
Merge branch 'selftests/bpf: Migrate test_tcpbpf_user to be a part of test_progs'
Alexander Duyck says:
====================
Move the test functionality from test_tcpbpf_user into the test_progs
framework so that it will be run any time the test_progs framework is run.
This will help to prevent future test escapes as the individual tests, such
as test_tcpbpf_user, are less likely to be run by developers and CI
tests.
As a part of moving it over the series goes through and updates the code to
make use of the existing APIs included in the test_progs framework. This is
meant to simplify and streamline the test code and avoid duplication of
effort.
v2: Dropped test_tcpbpf_user from .gitignore
Replaced CHECK_FAIL calls with CHECK calls
Minimized changes in patch 1 when moving the file
Updated stg mail command line to display renames in submission
Added shutdown logic to end of run_test function to guarantee close
Added patch that replaces the two maps with use of global variables
v3: Left err at -1 while we are performing send/recv calls w/ data
Drop extra labels from test_tcpbpf_user in favor of keeping err label
Dropped redundant zero init for tcpbpf_globals result and key
Dropped replacing of "printf(" with "fprintf(stderr, "
Fixed error in use of ASSERT_OK_PTR which was skipping of run_test
Replaced "{ 0 }" with "{}" in init of global in test_tcpbpf_kern.c
Added "Acked-by" from Martin KaiFai Lau and Andrii Nakryiko
====================
Acked-by: Martin KaFai Lau <kafai@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'tools/testing/selftests/bpf/tcp_server.py')
-rwxr-xr-x | tools/testing/selftests/bpf/tcp_server.py | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/tools/testing/selftests/bpf/tcp_server.py b/tools/testing/selftests/bpf/tcp_server.py deleted file mode 100755 index 42ab8882f00f..000000000000 --- a/tools/testing/selftests/bpf/tcp_server.py +++ /dev/null @@ -1,80 +0,0 @@ -#!/usr/bin/env python3 -# -# SPDX-License-Identifier: GPL-2.0 -# - -import sys, os, os.path, getopt -import socket, time -import subprocess -import select - -def read(sock, n): - buf = b'' - while len(buf) < n: - rem = n - len(buf) - try: s = sock.recv(rem) - except (socket.error) as e: return b'' - buf += s - return buf - -def send(sock, s): - total = len(s) - count = 0 - while count < total: - try: n = sock.send(s) - except (socket.error) as e: n = 0 - if n == 0: - return count; - count += n - return count - - -SERVER_PORT = 12877 -MAX_PORTS = 2 - -serverPort = SERVER_PORT -serverSocket = None - -# create passive socket -serverSocket = socket.socket(socket.AF_INET6, socket.SOCK_STREAM) - -try: serverSocket.bind(('::1', 0)) -except socket.error as msg: - print('bind fails: ' + str(msg)) - -sn = serverSocket.getsockname() -serverPort = sn[1] - -cmdStr = ("./tcp_client.py %d &") % (serverPort) -os.system(cmdStr) - -buf = b'' -n = 0 -while n < 500: - buf += b'.' - n += 1 - -serverSocket.listen(MAX_PORTS) -readList = [serverSocket] - -while True: - readyRead, readyWrite, inError = \ - select.select(readList, [], [], 2) - - if len(readyRead) > 0: - waitCount = 0 - for sock in readyRead: - if sock == serverSocket: - (clientSocket, address) = serverSocket.accept() - address = str(address[0]) - readList.append(clientSocket) - else: - sock.settimeout(1); - s = read(sock, 1000) - n = send(sock, buf) - sock.close() - serverSocket.close() - sys.exit(0) - else: - print('Select timeout!') - sys.exit(1) |