test_hsts-invalid-headers.sjs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /* Any copyright is dedicated to the Public Domain.
  2. * http://creativecommons.org/publicdomain/zero/1.0/ */
  3. function handleRequest(request, response)
  4. {
  5. response.setHeader("Content-Type", "text/plain; charset=utf-8", false);
  6. let issue;
  7. switch (request.queryString) {
  8. case "badSyntax":
  9. response.setHeader("Strict-Transport-Security", "\"");
  10. issue = "is not syntactically correct.";
  11. break;
  12. case "noMaxAge":
  13. response.setHeader("Strict-Transport-Security", "max-age444");
  14. issue = "does not include a max-age directive.";
  15. break;
  16. case "invalidIncludeSubDomains":
  17. response.setHeader("Strict-Transport-Security", "includeSubDomains=abc");
  18. issue = "includes an invalid includeSubDomains directive.";
  19. break;
  20. case "invalidMaxAge":
  21. response.setHeader("Strict-Transport-Security", "max-age=abc");
  22. issue = "includes an invalid max-age directive.";
  23. break;
  24. case "multipleIncludeSubDomains":
  25. response.setHeader("Strict-Transport-Security",
  26. "includeSubDomains; includeSubDomains");
  27. issue = "includes multiple includeSubDomains directives.";
  28. break;
  29. case "multipleMaxAge":
  30. response.setHeader("Strict-Transport-Security",
  31. "max-age=444; max-age=999");
  32. issue = "includes multiple max-age directives.";
  33. break;
  34. }
  35. response.write("This page is served with a STS header that " + issue);
  36. }