]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/Launcher.java
UPD: Enable Jettys default etags
[gigi.git] / src / org / cacert / gigi / Launcher.java
index 33511ba54826928ea72de54cfa8543a5674a4852..ff4b9b6e7b1aa97ba4f56a8e81155c7e63f15af9 100644 (file)
@@ -48,9 +48,13 @@ import org.eclipse.jetty.util.ssl.SslContextFactory;
 public class Launcher {
 
     public static void main(String[] args) throws Exception {
+        System.setProperty("jdk.tls.ephemeralDHKeySize", "4096");
+        boot();
+    }
+
+    public static void boot() throws Exception {
         Locale.setDefault(Locale.ENGLISH);
         TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
-        System.setProperty("jdk.tls.ephemeralDHKeySize", "4096");
 
         GigiConfig conf = GigiConfig.parse(System.in);
         ServerConstants.init(conf.getMainProps());
@@ -80,6 +84,9 @@ public class Launcher {
                 Log.getLogger(Launcher.class).warn("Couldn't set uid!");
             }
         }
+        if (conf.getMainProps().containsKey("testrunner")) {
+            DevelLauncher.addDevelPage();
+        }
     }
 
     private static ServerConnector createConnector(GigiConfig conf, Server s, HttpConfiguration httpConfig, boolean doHttps) throws GeneralSecurityException, IOException {
@@ -188,6 +195,7 @@ public class Launcher {
 
     private static ContextHandler generateGigiServletContext(ServletHolder webAppServlet) {
         final ResourceHandler rh = new ResourceHandler();
+        rh.setEtags(true);
         rh.setResourceBase("static/www");
 
         HandlerWrapper hw = new PolicyRedirector();
@@ -198,6 +206,7 @@ public class Launcher {
         servlet.addServlet(webAppServlet, "/*");
         ErrorPageErrorHandler epeh = new ErrorPageErrorHandler();
         epeh.addErrorPage(404, "/error");
+        epeh.addErrorPage(403, "/denied");
         servlet.setErrorHandler(epeh);
 
         HandlerList hl = new HandlerList();
@@ -212,6 +221,7 @@ public class Launcher {
 
     private static Handler generateStaticContext() {
         final ResourceHandler rh = new ResourceHandler();
+        rh.setEtags(true);
         rh.setResourceBase("static/static");
 
         ContextHandler ch = new ContextHandler();
@@ -257,6 +267,7 @@ public class Launcher {
         scf.setRenegotiationAllowed(false);
 
         scf.setProtocol("TLS");
+        scf.setIncludeProtocols("TLSv1", "TLSv1.1", "TLSv1.2");
         scf.setTrustStore(conf.getTrustStore());
         KeyStore privateStore = conf.getPrivateStore();
         scf.setKeyStorePassword(conf.getPrivateStorePw());