blob: cb9f4f229e817a82e4125e5e50f59f7516d93c71 [file] [log] [blame]
# 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 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 line == '-':
data = ''
elif line == '--':
data = 'X'
else:
code, reason = line.split(' ', 1)
data = struct.pack('!H', int(code)) + reason.encode('utf-8')
request.connection.write(stream.create_close_frame(data))
request.server_terminated = True
# Wait for Close frame from client.
request.ws_stream.receive_message()