tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

server_is_auto_selected_accounts.sjs (1430B)


      1 /* Any copyright is dedicated to the Public Domain.
      2  * http://creativecommons.org/publicdomain/zero/1.0/
      3  */
      4 
      5 function handleRequest(request, response) {
      6   if (
      7     !request.hasHeader("Cookie") ||
      8     request.getHeader("Cookie") != "credential=authcookieval"
      9   ) {
     10     response.setStatusLine(request.httpVersion, 400, "Bad Request");
     11     return;
     12   }
     13   if (
     14     !request.hasHeader("Sec-Fetch-Dest") ||
     15     request.getHeader("Sec-Fetch-Dest") != "webidentity"
     16   ) {
     17     response.setStatusLine(request.httpVersion, 400, "Bad Request");
     18     return;
     19   }
     20   if (request.hasHeader("Origin") && request.getHeader("Origin") != "null") {
     21     response.setStatusLine(request.httpVersion, 400, "Bad Request");
     22     return;
     23   }
     24   if (request.hasHeader("Referer")) {
     25     response.setStatusLine(request.httpVersion, 400, "Bad Request");
     26     return;
     27   }
     28 
     29   response.setHeader("Access-Control-Allow-Origin", "*");
     30   response.setHeader("Access-Control-Allow-Credentials", "true");
     31   response.setHeader("Content-Type", "application/json");
     32   let content = {
     33     accounts: [
     34       {
     35         id: "1234",
     36         given_name: "John",
     37         name: "John Doe",
     38         email: "john_doe@example.com",
     39         picture: "https://example.com/profile/123",
     40         approved_clients: ["123", "456", "789", "mochitest"],
     41       },
     42     ],
     43   };
     44   let body = JSON.stringify(content);
     45   response.setStatusLine(request.httpVersion, 200, "OK");
     46   response.write(body);
     47 }