diff options
author | Christoph Egger <christoph@debian.org> | 2017-05-28 14:30:29 +0200 |
---|---|---|
committer | Christoph Egger <christoph@debian.org> | 2017-05-28 14:30:29 +0200 |
commit | fc98900adb70b6316f991fe16726dc24b568cb52 (patch) | |
tree | af00c153db0f97c5280369fdb5f23d4636f673dc /test_server.py | |
parent | c83668fff106e313beb66b8c09bdce1e9844fd3c (diff) | |
parent | 9f30a9497bb1e812acfdf1c98e3b5cf35ddd8e39 (diff) |
Updated version 0.0~vcs.2017.05.26.git from '0.0_vcs.2017.05.26.git'
with Debian dir e44e7e9b159453b5fa19fb0c2508a7173ffe82a3
Diffstat (limited to 'test_server.py')
-rw-r--r-- | test_server.py | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/test_server.py b/test_server.py index f147553..fbeee2a 100644 --- a/test_server.py +++ b/test_server.py @@ -25,5 +25,40 @@ while run: print("%s: Error sending echo packet!" % event.peer.address) else: print("%s: OUT: %r" % (event.peer.address, msg)) - if event.packet.data == "SHUTDOWN": + if event.packet.data == b"SHUTDOWN": + shutdown_recv = True + +# Part of the test to do with intercept callback and socket.send + +connect_count = 0 +run = True +shutdown_recv = False + +def receive_callback(address, data): + if data and data == b"\xff\xff\xff\xffgetstatus\x00": + host.socket.send(address, b"\xff\xff\xff\xffstatusResponse\n") + +host.intercept = receive_callback + +while run: + # Wait 1 second for an event + event = host.service(1000) + if event.type == enet.EVENT_TYPE_CONNECT: + print("%s: CONNECT" % event.peer.address) + connect_count += 1 + elif event.type == enet.EVENT_TYPE_DISCONNECT: + print("%s: DISCONNECT" % event.peer.address) + connect_count -= 1 + if connect_count <= 0 and shutdown_recv: + run = False + elif event.type == enet.EVENT_TYPE_RECEIVE: + print("%s: IN: %r" % (event.peer.address, event.packet.data)) + + # This packet echo is used to mimick the usual use case when packets are going back&forth while the intercept callback is used + msg = event.packet.data + if event.peer.send(0, enet.Packet(msg)) < 0: + print("%s: Error sending echo packet!" % event.peer.address) + else: + print("%s: OUT: %r" % (event.peer.address, msg)) + if event.packet.data == b"SHUTDOWN": shutdown_recv = True |