From c8b26c51aa67fc9345b624e36aab6f819e7eed74 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Sun, 25 Nov 2012 11:35:31 -0500 Subject: [PATCH] Gitblit Certificate Authority revisions. Eliminate certificate scripts. --- src/com/gitblit/GitBlitServer.java | 28 ++++++++++++++++++++++++++-- 1 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/com/gitblit/GitBlitServer.java b/src/com/gitblit/GitBlitServer.java index 52afb54..d98f891 100644 --- a/src/com/gitblit/GitBlitServer.java +++ b/src/com/gitblit/GitBlitServer.java @@ -16,7 +16,9 @@ package com.gitblit; import java.io.BufferedReader; +import java.io.BufferedWriter; import java.io.File; +import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; @@ -55,10 +57,12 @@ import com.beust.jcommander.Parameter; import com.beust.jcommander.ParameterException; import com.beust.jcommander.Parameters; +import com.gitblit.authority.GitblitAuthority; import com.gitblit.authority.NewCertificateConfig; import com.gitblit.utils.StringUtils; import com.gitblit.utils.TimeUtils; import com.gitblit.utils.X509Utils; +import com.gitblit.utils.X509Utils.X509Log; import com.gitblit.utils.X509Utils.X509Metadata; import com.unboundid.ldap.listener.InMemoryDirectoryServer; import com.unboundid.ldap.listener.InMemoryDirectoryServerConfig; @@ -194,7 +198,7 @@ // conditionally configure the https connector if (params.securePort > 0) { - File folder = new File(System.getProperty("user.dir")); + final File folder = new File(System.getProperty("user.dir")); File certificatesConf = new File(folder, X509Utils.CA_CONFIG); File serverKeyStore = new File(folder, X509Utils.SERVER_KEY_STORE); File serverTrustStore = new File(folder, X509Utils.SERVER_TRUST_STORE); @@ -215,7 +219,27 @@ } metadata.notAfter = new Date(System.currentTimeMillis() + 10*TimeUtils.ONEYEAR); - X509Utils.prepareX509Infrastructure(metadata, folder); + X509Utils.prepareX509Infrastructure(metadata, folder, new X509Log() { + @Override + public void log(String message) { + BufferedWriter writer = null; + try { + writer = new BufferedWriter(new FileWriter(new File(folder, X509Utils.CERTS + File.separator + "log.txt"), true)); + writer.write(MessageFormat.format("{0,date,yyyy-MM-dd HH:mm}: {1}", new Date(), message)); + writer.newLine(); + writer.flush(); + } catch (Exception e) { + LoggerFactory.getLogger(GitblitAuthority.class).error("Failed to append log entry!", e); + } finally { + if (writer != null) { + try { + writer.close(); + } catch (IOException e) { + } + } + } + } + }); if (serverKeyStore.exists()) { Connector secureConnector = createSSLConnector(serverKeyStore, serverTrustStore, params.storePassword, -- Gitblit v1.9.1