On 07/18/2018 11:36 PM, Jeremy Cline wrote: > Adjust tcp_client.py and tcp_server.py to work with Python 3 by using > the print function, marking string literals as bytes, and using the > newer exception syntax. This should be functionally equivalent and > support Python 2.6 through Python 3.7. > > Signed-off-by: Jeremy Cline <jcline@xxxxxxxxxx> Thanks for the patch, Jeremy! Given we also have test_offload.py in BPF kselftests and it is written for python 3 only, it would probably make sense to adapt the tcp_{client,server}.py towards python 3 as well, so we wouldn't need to keep extra compat for 2 and have a consistent version dependency. Lawrence / Jeremy, any objections? > tools/testing/selftests/bpf/tcp_client.py | 12 ++++++------ > tools/testing/selftests/bpf/tcp_server.py | 17 +++++++++-------- > 2 files changed, 15 insertions(+), 14 deletions(-) > > diff --git a/tools/testing/selftests/bpf/tcp_client.py b/tools/testing/selftests/bpf/tcp_client.py > index 481dccdf140c..9fe5f1b5c020 100755 > --- a/tools/testing/selftests/bpf/tcp_client.py > +++ b/tools/testing/selftests/bpf/tcp_client.py > @@ -1,4 +1,4 @@ > -#!/usr/bin/env python2 > +#!/usr/bin/env python > # > # SPDX-License-Identifier: GPL-2.0 > # > @@ -9,11 +9,11 @@ import subprocess > import select > > def read(sock, n): > - buf = '' > + buf = b'' > while len(buf) < n: > rem = n - len(buf) > try: s = sock.recv(rem) > - except (socket.error), e: return '' > + except (socket.error) as e: return b'' > buf += s > return buf > > @@ -22,7 +22,7 @@ def send(sock, s): > count = 0 > while count < total: > try: n = sock.send(s) > - except (socket.error), e: n = 0 > + except (socket.error) as e: n = 0 > if n == 0: > return count; > count += n > @@ -39,10 +39,10 @@ try: > except socket.error as e: > sys.exit(1) > > -buf = '' > +buf = b'' > n = 0 > while n < 1000: > - buf += '+' > + buf += b'+' > n += 1 > > sock.settimeout(1); > diff --git a/tools/testing/selftests/bpf/tcp_server.py b/tools/testing/selftests/bpf/tcp_server.py > index bc454d7d0be2..1d4a40a6584b 100755 > --- a/tools/testing/selftests/bpf/tcp_server.py > +++ b/tools/testing/selftests/bpf/tcp_server.py > @@ -1,7 +1,8 @@ > -#!/usr/bin/env python2 > +#!/usr/bin/env python > # > # SPDX-License-Identifier: GPL-2.0 > # > +from __future__ import print_function > > import sys, os, os.path, getopt > import socket, time > @@ -9,11 +10,11 @@ import subprocess > import select > > def read(sock, n): > - buf = '' > + buf = b'' > while len(buf) < n: > rem = n - len(buf) > try: s = sock.recv(rem) > - except (socket.error), e: return '' > + except (socket.error) as e: return b'' > buf += s > return buf > > @@ -22,7 +23,7 @@ def send(sock, s): > count = 0 > while count < total: > try: n = sock.send(s) > - except (socket.error), e: n = 0 > + except (socket.error) as e: n = 0 > if n == 0: > return count; > count += n > @@ -43,7 +44,7 @@ host = socket.gethostname() > > try: serverSocket.bind((host, 0)) > except socket.error as msg: > - print 'bind fails: ', msg > + print('bind fails: ' + str(msg)) > > sn = serverSocket.getsockname() > serverPort = sn[1] > @@ -51,10 +52,10 @@ serverPort = sn[1] > cmdStr = ("./tcp_client.py %d &") % (serverPort) > os.system(cmdStr) > > -buf = '' > +buf = b'' > n = 0 > while n < 500: > - buf += '.' > + buf += b'.' > n += 1 > > serverSocket.listen(MAX_PORTS) > @@ -79,5 +80,5 @@ while True: > serverSocket.close() > sys.exit(0) > else: > - print 'Select timeout!' > + print('Select timeout!') > sys.exit(1) > -- To unsubscribe from this list: send the line "unsubscribe linux-kselftest" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html