some more fixes to the registration/login system
This commit is contained in:
@@ -12,29 +12,22 @@ if (socket.ssid != null && !ssid_sessions[socket.ssid].get("wtvsec_login")) {
|
|||||||
|
|
||||||
if (socket.ssid !== null) {
|
if (socket.ssid !== null) {
|
||||||
if (wtvsec_login.ticket_b64 == null) {
|
if (wtvsec_login.ticket_b64 == null) {
|
||||||
if (request_headers["wtv-ticket"]) {
|
challenge_response = wtvsec_login.challenge_response;
|
||||||
if (request_headers["wtv-ticket"].length > 8) {
|
var client_challenge_response = request_headers["wtv-challenge-response"] || null;
|
||||||
wtvsec_login.DecodeTicket(request_headers["wtv-ticket"]);
|
if (challenge_response && client_challenge_response) {
|
||||||
wtvsec_login.ticket_b64 = request_headers["wtv-ticket"];
|
if (challenge_response.toString(CryptoJS.enc.Base64) == client_challenge_response) {
|
||||||
|
console.log(" * wtv-challenge-response success for " + filterSSID(socket.ssid));
|
||||||
|
wtvsec_login.PrepareTicket();
|
||||||
|
if (!ssid_sessions[socket.ssid].getSessionData("registered") && !request_headers.query.guest_login) gourl = "wtv-register:/splash";
|
||||||
|
|
||||||
|
} else {
|
||||||
|
console.log(" * wtv-challenge-response FAILED for " + filterSSID(socket.ssid));
|
||||||
|
if (zdebug) console.log("Response Expected:", challenge_response.toString(CryptoJS.enc.Base64));
|
||||||
|
if (zdebug) console.log("Response Received:", client_challenge_response)
|
||||||
|
gourl = "wtv-head-waiter:/login?reissue_challenge=true";
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
challenge_response = wtvsec_login.challenge_response;
|
gourl = "wtv-head-waiter:/login?no_response=true";
|
||||||
var client_challenge_response = request_headers["wtv-challenge-response"] || null;
|
|
||||||
if (challenge_response && client_challenge_response) {
|
|
||||||
if (challenge_response.toString(CryptoJS.enc.Base64) == client_challenge_response) {
|
|
||||||
console.log(" * wtv-challenge-response success for " + filterSSID(socket.ssid));
|
|
||||||
wtvsec_login.PrepareTicket();
|
|
||||||
if (!ssid_sessions[socket.ssid].getSessionData("registered") && !request_headers.query.guest_login) gourl = "wtv-register:/splash";
|
|
||||||
|
|
||||||
} else {
|
|
||||||
console.log(" * wtv-challenge-response FAILED for " + filterSSID(socket.ssid));
|
|
||||||
if (zdebug) console.log("Response Expected:", challenge_response.toString(CryptoJS.enc.Base64));
|
|
||||||
if (zdebug) console.log("Response Received:", client_challenge_response)
|
|
||||||
gourl = "wtv-head-waiter:/login?reissue_challenge=true";
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
gourl = "wtv-head-waiter:/login?no_response=true";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,4 +10,4 @@ ${getServiceString('wtv-star')}
|
|||||||
wtv-relogin-url: wtv-1800:/preregister?relogin=true
|
wtv-relogin-url: wtv-1800:/preregister?relogin=true
|
||||||
wtv-reconnect-url: wtv-1800:/preregister?reconnect=true
|
wtv-reconnect-url: wtv-1800:/preregister?reconnect=true
|
||||||
wtv-boot-url: wtv-1800:/preregister?relogin=true
|
wtv-boot-url: wtv-1800:/preregister?relogin=true
|
||||||
Location: wtv-1800:/preregister?relogin=true`;
|
Location: client:relogin`;
|
||||||
|
|||||||
@@ -892,6 +892,7 @@ async function processRequest(socket, data_hex, skipSecure = false, encryptedReq
|
|||||||
if (zdebug) console.log(" # New ticket from client");
|
if (zdebug) console.log(" # New ticket from client");
|
||||||
ssid_sessions[socket.ssid].data_store.wtvsec_login.ticket_b64 = headers["wtv-ticket"];
|
ssid_sessions[socket.ssid].data_store.wtvsec_login.ticket_b64 = headers["wtv-ticket"];
|
||||||
ssid_sessions[socket.ssid].data_store.wtvsec_login.DecodeTicket(ssid_sessions[socket.ssid].data_store.wtvsec_login.ticket_b64);
|
ssid_sessions[socket.ssid].data_store.wtvsec_login.DecodeTicket(ssid_sessions[socket.ssid].data_store.wtvsec_login.ticket_b64);
|
||||||
|
ssid_sessions[socket.ssid].data_store.wtvsec_login.set_incarnation(headers["wtv-incarnation"]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user