diff options
| author | Erik <erik.elbieh@protonmail.com> | 2021-01-08 20:38:53 -0500 |
|---|---|---|
| committer | Erik <erik.elbieh@protonmail.com> | 2021-01-08 20:38:53 -0500 |
| commit | 75c0b4af17fca55ff9559fed6669b59499025ea3 (patch) | |
| tree | 5161b951c3ee76c9a8aa451dd4afa648584e04fc | |
| parent | 84ad5890bfd9d8196a4b4fd2e8324e1d818f668f (diff) | |
| parent | d1465a2245b2ea100f7efc923785bfb3b5671d38 (diff) | |
| download | websocket-client-75c0b4af17fca55ff9559fed6669b59499025ea3.tar.gz | |
Merge branch 'master' of github.com:engn33r/websocket-client
| -rw-r--r-- | websocket/_app.py | 2 | ||||
| -rw-r--r-- | websocket/_handshake.py | 5 | ||||
| -rw-r--r-- | websocket/tests/test_websocket.py | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/websocket/_app.py b/websocket/_app.py index e4e9f99..bbf64f5 100644 --- a/websocket/_app.py +++ b/websocket/_app.py @@ -341,7 +341,7 @@ class WebSocketApp(object): if callback: try: if inspect.ismethod(callback): - callback(*args) + callback(self, *args) else: callback(self, *args) diff --git a/websocket/_handshake.py b/websocket/_handshake.py index 7476a07..88605fc 100644 --- a/websocket/_handshake.py +++ b/websocket/_handshake.py @@ -183,10 +183,11 @@ def _validate(headers, key, subprotocols): return False, None if subprotocols: - subproto = headers.get("sec-websocket-protocol", None).lower() - if not subproto or subproto not in [s.lower() for s in subprotocols]: + subproto = headers.get("sec-websocket-protocol", None) + if not subproto or subproto.lower() not in [s.lower() for s in subprotocols]: error("Invalid subprotocol: " + str(subprotocols)) return False, None + subproto = subproto.lower() result = headers.get("sec-websocket-accept", None) if not result: diff --git a/websocket/tests/test_websocket.py b/websocket/tests/test_websocket.py index 8b131bb..fa86c05 100644 --- a/websocket/tests/test_websocket.py +++ b/websocket/tests/test_websocket.py @@ -222,6 +222,8 @@ class WebSocketTest(unittest.TestCase): header["sec-websocket-protocol"] = "sUb1" self.assertEqual(_validate_header(header, key, ["Sub1", "suB2"]), (True, "sub1")) + header = required_header.copy() + self.assertEqual(_validate_header(header, key, ["Sub1", "suB2"]), (False, None)) def testReadHeader(self): status, header, status_message = read_headers(HeaderSockMock("data/header01.txt")) |
