Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
1 from mod_pywebsocket import msgutil
3 def web_socket_do_extra_handshake(request):
4 # must set request.ws_protocol to the selected version from ws_requested_protocols
5 request.ws_protocol = request.ws_requested_protocols[0]
7 if (request.ws_protocol == 'error'):
8 raise ValueError('Error')
9 pass
11 def web_socket_transfer_data(request):
12 while True:
13 line = msgutil.receive_message(request)
14 if line == 'protocol':
15 msgutil.send_message(request, request.ws_protocol)
16 continue
18 if line == 'resource':
19 msgutil.send_message(request, request.ws_resource)
20 continue
22 if line == 'origin':
23 msgutil.send_message(request, request.ws_origin)
24 continue
26 msgutil.send_message(request, line)
28 if line == 'end':
29 return