summaryrefslogtreecommitdiffstats
path: root/toolkit/components/antitracking/test/browser/browser_staticPartition_HSTS.sjs
blob: 185c7c7e0589c3c966a8632197004f530f365c2c (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
32
33
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */

const IMG_BYTES = atob(
  "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAA" +
    "DUlEQVQImWNgY2P7DwABOgESJhRQtgAAAABJRU5ErkJggg=="
);

const PAGE = "<!DOCTYPE html><html><body><p>HSTS page</p></body></html>";

function handleRequest(request, response) {
  response.setStatusLine(request.httpVersion, "200", "OK");
  if (request.queryString == "includeSub") {
    response.setHeader(
      "Strict-Transport-Security",
      "max-age=60; includeSubDomains"
    );
  } else {
    response.setHeader("Strict-Transport-Security", "max-age=60");
  }

  if (request.queryString == "image") {
    response.setHeader("Content-Type", "image/png", false);
    response.setHeader("Content-Length", IMG_BYTES.length + "", false);
    response.write(IMG_BYTES);
    return;
  }

  response.setHeader("Content-Type", "text/html", false);
  response.setHeader("Content-Length", PAGE.length + "", false);
  response.write(PAGE);
}