You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by ja...@apache.org on 2018/05/29 00:02:10 UTC
[incubator-pulsar] branch branch-1.22 updated: Fixing resource leak
due to open file descriptors in SecurityUtility.java (#1851)
This is an automated email from the ASF dual-hosted git repository.
jai1 pushed a commit to branch branch-1.22
in repository https://gitbox.apache.org/repos/asf/incubator-pulsar.git
The following commit(s) were added to refs/heads/branch-1.22 by this push:
new c9a3699 Fixing resource leak due to open file descriptors in SecurityUtility.java (#1851)
c9a3699 is described below
commit c9a369936af3b3ecc663b86ae959a3fbfa627aca
Author: Jai Asher <ja...@ccs.neu.edu>
AuthorDate: Mon May 28 17:02:06 2018 -0700
Fixing resource leak due to open file descriptors in SecurityUtility.java (#1851)
---
.../org/apache/pulsar/common/util/SecurityUtility.java | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/pulsar-common/src/main/java/org/apache/pulsar/common/util/SecurityUtility.java b/pulsar-common/src/main/java/org/apache/pulsar/common/util/SecurityUtility.java
index e9106f6..7121149 100644
--- a/pulsar-common/src/main/java/org/apache/pulsar/common/util/SecurityUtility.java
+++ b/pulsar-common/src/main/java/org/apache/pulsar/common/util/SecurityUtility.java
@@ -58,7 +58,7 @@ public class SecurityUtility {
}
public static SslContext createNettySslContextForClient(boolean allowInsecureConnection, String trustCertsFilePath)
- throws GeneralSecurityException, SSLException, FileNotFoundException {
+ throws IOException, GeneralSecurityException, SSLException, FileNotFoundException {
return createNettySslContextForClient(allowInsecureConnection, trustCertsFilePath, (Certificate[]) null,
(PrivateKey) null);
}
@@ -73,7 +73,7 @@ public class SecurityUtility {
public static SslContext createNettySslContextForClient(boolean allowInsecureConnection, String trustCertsFilePath,
String certFilePath, String keyFilePath)
- throws GeneralSecurityException, SSLException, FileNotFoundException {
+ throws IOException, GeneralSecurityException, SSLException, FileNotFoundException {
X509Certificate[] certificates = loadCertificatesFromPemFile(certFilePath);
PrivateKey privateKey = loadPrivateKeyFromPemFile(keyFilePath);
return createNettySslContextForClient(allowInsecureConnection, trustCertsFilePath, certificates, privateKey);
@@ -81,13 +81,15 @@ public class SecurityUtility {
public static SslContext createNettySslContextForClient(boolean allowInsecureConnection, String trustCertsFilePath,
Certificate[] certificates, PrivateKey privateKey)
- throws GeneralSecurityException, SSLException, FileNotFoundException {
+ throws GeneralSecurityException, IOException, FileNotFoundException {
SslContextBuilder builder = SslContextBuilder.forClient();
if (allowInsecureConnection) {
builder.trustManager(InsecureTrustManagerFactory.INSTANCE);
} else {
if (trustCertsFilePath != null && trustCertsFilePath.length() != 0) {
- builder.trustManager(new FileInputStream(trustCertsFilePath));
+ try (FileInputStream input = new FileInputStream(trustCertsFilePath)) {
+ builder.trustManager(input);
+ }
}
}
builder.keyManager(privateKey, (X509Certificate[]) certificates);
@@ -96,7 +98,7 @@ public class SecurityUtility {
public static SslContext createNettySslContextForServer(boolean allowInsecureConnection, String trustCertsFilePath,
String certFilePath, String keyFilePath)
- throws GeneralSecurityException, SSLException, FileNotFoundException {
+ throws IOException, GeneralSecurityException, SSLException, FileNotFoundException {
X509Certificate[] certificates = loadCertificatesFromPemFile(certFilePath);
PrivateKey privateKey = loadPrivateKeyFromPemFile(keyFilePath);
@@ -105,7 +107,9 @@ public class SecurityUtility {
builder.trustManager(InsecureTrustManagerFactory.INSTANCE);
} else {
if (trustCertsFilePath != null && trustCertsFilePath.length() != 0) {
- builder.trustManager(new FileInputStream(trustCertsFilePath));
+ try (FileInputStream input = new FileInputStream(trustCertsFilePath)) {
+ builder.trustManager(input);
+ }
} else {
builder.trustManager((File) null);
}
--
To stop receiving notification emails like this one, please contact
jai1@apache.org.