You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by tk...@apache.org on 2015/11/09 05:27:18 UTC
[44/50] [abbrv] nifi git commit: NIFI-1073 fixed resource leak in
SSLContextFactory
NIFI-1073 fixed resource leak in SSLContextFactory
Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/47b93d45
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/47b93d45
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/47b93d45
Branch: refs/heads/NIFI-1073
Commit: 47b93d45cb32e3d7655734538e07d02cb924cd24
Parents: 440e4c4
Author: Tony Kurc <tr...@gmail.com>
Authored: Mon Oct 26 19:41:26 2015 -0400
Committer: Tony Kurc <tr...@gmail.com>
Committed: Sun Nov 8 21:11:33 2015 -0500
----------------------------------------------------------------------
.../org/apache/nifi/io/socket/SSLContextFactory.java | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi/blob/47b93d45/nifi-commons/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SSLContextFactory.java
----------------------------------------------------------------------
diff --git a/nifi-commons/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SSLContextFactory.java b/nifi-commons/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SSLContextFactory.java
index 9c6cb82..eeaa299 100644
--- a/nifi-commons/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SSLContextFactory.java
+++ b/nifi-commons/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SSLContextFactory.java
@@ -34,6 +34,7 @@ import javax.net.ssl.TrustManager;
import javax.net.ssl.TrustManagerFactory;
import org.apache.nifi.util.NiFiProperties;
+import org.apache.nifi.util.file.FileUtils;
public class SSLContextFactory {
@@ -58,13 +59,23 @@ public class SSLContextFactory {
// prepare the keystore
final KeyStore keyStore = KeyStore.getInstance(keystoreType);
- keyStore.load(new FileInputStream(keystore), keystorePass);
+ final FileInputStream keyStoreStream = new FileInputStream(keystore);
+ try{
+ keyStore.load(keyStoreStream, keystorePass);
+ } finally{
+ FileUtils.closeQuietly(keyStoreStream);
+ }
final KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
keyManagerFactory.init(keyStore, keystorePass);
// prepare the truststore
final KeyStore trustStore = KeyStore.getInstance(truststoreType);
- trustStore.load(new FileInputStream(truststore), truststorePass);
+ final FileInputStream trustStoreStream = new FileInputStream(truststore);
+ try{
+ trustStore.load(trustStoreStream, truststorePass);
+ } finally{
+ FileUtils.closeQuietly(trustStoreStream);
+ }
final TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
trustManagerFactory.init(trustStore);