From a640b9aaeaeb054276ca6bdb6982c5346f9548d3 Mon Sep 17 00:00:00 2001 From: James Sanders Date: Mon, 11 Jan 2016 20:04:11 -0700 Subject: [PATCH] Echo close reason and close code Set code to None if it is STATUS_NO_STATUS_RECEIVED, which should not be sent across the wire. --- .../websockets/handlers/echo_wsh.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/wpt/web-platform-tests/websockets/handlers/echo_wsh.py b/tests/wpt/web-platform-tests/websockets/handlers/echo_wsh.py index 5829c2f8c18..41bcd169422 100755 --- a/tests/wpt/web-platform-tests/websockets/handlers/echo_wsh.py +++ b/tests/wpt/web-platform-tests/websockets/handlers/echo_wsh.py @@ -1,5 +1,6 @@ #!/usr/bin/python from mod_pywebsocket import msgutil +from mod_pywebsocket import common _GOODBYE_MESSAGE = u'Goodbye' @@ -23,3 +24,13 @@ def web_socket_transfer_data(request): else: request.ws_stream.send_message(line, binary=True) +def web_socket_passive_closing_handshake(request): + # Echo close status code and reason + code, reason = request.ws_close_code, request.ws_close_reason + + # No status received is a reserved pseudo code representing an empty code, + # so echo back an empty code in this case. + if code == common.STATUS_NO_STATUS_RECEIVED: + code = None + + return code, reason