From ddade34e808330a64902d55fdbcb496c576599db Mon Sep 17 00:00:00 2001 From: George Hazan Date: Thu, 3 Dec 2020 19:49:35 +0300 Subject: attempt to fix #2575 (error 404 while opening Discord gateway connection) --- protocols/Discord/src/gateway.cpp | 1 - protocols/WhatsAppWeb/src/server.cpp | 1 - src/mir_app/src/netlib_websocket.cpp | 4 ++++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/protocols/Discord/src/gateway.cpp b/protocols/Discord/src/gateway.cpp index 747915fd1d..042922bf31 100644 --- a/protocols/Discord/src/gateway.cpp +++ b/protocols/Discord/src/gateway.cpp @@ -45,7 +45,6 @@ bool CDiscordProto::GatewayThreadWorker() NETLIBHTTPHEADER hdrs[] = { { "Origin", "https://discord.com" }, - { "Sec-WebSocket-Key", "xkGAFcWD1fSJp6o0tceQOg==" }, { 0, 0 } }; diff --git a/protocols/WhatsAppWeb/src/server.cpp b/protocols/WhatsAppWeb/src/server.cpp index 5fed264e36..ac84c5ff46 100644 --- a/protocols/WhatsAppWeb/src/server.cpp +++ b/protocols/WhatsAppWeb/src/server.cpp @@ -368,7 +368,6 @@ bool WhatsAppProto::ServerThreadWorker() NETLIBHTTPHEADER hdrs[] = { { "Origin", "https://web.whatsapp.com" }, - { "Sec-WebSocket-Key", "k/hwJLznKpk3p2hxyYGzWA==" }, { 0, 0 } }; diff --git a/src/mir_app/src/netlib_websocket.cpp b/src/mir_app/src/netlib_websocket.cpp index 8f5a1a5316..23b30957dd 100644 --- a/src/mir_app/src/netlib_websocket.cpp +++ b/src/mir_app/src/netlib_websocket.cpp @@ -43,6 +43,10 @@ MIR_APP_DLL(NETLIBHTTPREQUEST*) WebSocket_Connect(HNETLIBUSER nlu, const char *s nlr->AddHeader("Pragma", "no-cache"); nlr->AddHeader("Cache-Control", "no-cache"); nlr->AddHeader("Connection", "keep-alive, Upgrade"); + + uint8_t binNonce[16]; + Utils_GetRandom(binNonce, sizeof(binNonce)); + nlr->AddHeader("Sec-WebSocket-Key", ptrA(mir_base64_encode(binNonce, sizeof(binNonce)))); nlr->AddHeader("Sec-WebSocket-Version", "13"); nlr->AddHeader("Sec-WebSocket-Extensions", "permessage-deflate; client_max_window_bits"); -- cgit v1.2.3