summaryrefslogtreecommitdiffstats
path: root/testing/mochitest/pywebsocket3/hsts.patch
blob: 709e8604b0a840aa789ed1da4edd48c4088e5708 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
diff --git a/mod_pywebsocket/handshake/base.py b/mod_pywebsocket/handshake/base.py
index ffad0614d6bc4..12fa8ece25d03 100644
--- a/mod_pywebsocket/handshake/base.py
+++ b/mod_pywebsocket/handshake/base.py
@@ -300,6 +300,9 @@ class HandshakerBase(object):
 
     def _set_protocol(self):
         self._request.ws_protocol = None
+        # MOZILLA
+        self._request.sts = None
+        # /MOZILLA
 
         sec_websocket_protocol_header = self._transform_header(
             common.SEC_WEBSOCKET_PROTOCOL_HEADER)
diff --git a/mod_pywebsocket/handshake/hybi.py b/mod_pywebsocket/handshake/hybi.py
index cf931db5a506e..5290ea24fb6f6 100644
--- a/mod_pywebsocket/handshake/hybi.py
+++ b/mod_pywebsocket/handshake/hybi.py
@@ -205,6 +205,12 @@ class Handshaker(HandshakerBase):
                     common.SEC_WEBSOCKET_EXTENSIONS_HEADER,
                     common.format_extensions(self._request.ws_extensions)))
 
+        # MOZILLA
+        if self._request.sts is not None:
+            response.append(format_header("Strict-Transport-Security",
+                                          self._request.sts))
+        # /MOZILLA
+
         # Headers not specific for WebSocket
         for name, value in self._request.extra_headers:
             response.append(format_header(name, value))