Chromium Code Reviews| Index: net/data/websocket/close-with-split-packet_wsh.py |
| diff --git a/net/data/websocket/close-with-split-packet_wsh.py b/net/data/websocket/close-with-split-packet_wsh.py |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..f2a6a16b7216f369329dc63ef619bf5112880759 |
| --- /dev/null |
| +++ b/net/data/websocket/close-with-split-packet_wsh.py |
| @@ -0,0 +1,30 @@ |
| +# Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| +# Use of this source code is governed by a BSD-style license that can be |
| +# found in the LICENSE file. |
| + |
| +import struct |
| + |
| +from mod_pywebsocket import handshake |
| +from mod_pywebsocket import stream |
| + |
| + |
| +def web_socket_do_extra_handshake(_request): |
| + pass |
| + |
| + |
| +def web_socket_transfer_data(request): |
| + line = request.ws_stream.receive_message() |
| + if line is None: |
| + return |
| + if isinstance(line, unicode): |
| + request.ws_stream.send_message(line, binary=False) |
| + else: |
| + request.ws_stream.send_message(line, binary=True) |
| + |
| + |
| +def web_socket_passive_closing_handshake(request): |
| + code = struct.pack('!H', int(1000)) |
|
tyoshino (SeeGerritForStatus)
2012/12/14 15:13:54
int() is unnecessary
Takashi Toyoshima
2012/12/21 06:39:03
Done.
|
| + packet = stream.create_close_frame(code + 'split test'.encode('utf-8')) |
| + request.connection.write(packet[:1]) |
| + request.connection.write(packet[1:]) |
| + raise handshake.AbortedByUserException('Abort the connection') |