mirror of
https://github.com/openjdk/jdk.git
synced 2026-02-12 11:28:35 +00:00
7059709: close the IO in a final block
Reviewed-by: smarks, mullan, wetmore
This commit is contained in:
parent
39aba3b4cf
commit
07381cf2d4
@ -567,42 +567,46 @@ public abstract class SSLContextImpl extends SSLContextSpi {
|
||||
}
|
||||
|
||||
FileInputStream fs = null;
|
||||
if (defaultKeyStore.length() != 0 && !NONE.equals(defaultKeyStore)) {
|
||||
fs = AccessController.doPrivileged(
|
||||
new PrivilegedExceptionAction<FileInputStream>() {
|
||||
public FileInputStream run() throws Exception {
|
||||
return new FileInputStream(defaultKeyStore);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
String defaultKeyStorePassword = props.get("keyStorePasswd");
|
||||
char[] passwd = null;
|
||||
if (defaultKeyStorePassword.length() != 0) {
|
||||
passwd = defaultKeyStorePassword.toCharArray();
|
||||
}
|
||||
|
||||
/**
|
||||
* Try to initialize key store.
|
||||
*/
|
||||
KeyStore ks = null;
|
||||
if ((defaultKeyStoreType.length()) != 0) {
|
||||
if (debug != null && Debug.isOn("defaultctx")) {
|
||||
System.out.println("init keystore");
|
||||
}
|
||||
if (defaultKeyStoreProvider.length() == 0) {
|
||||
ks = KeyStore.getInstance(defaultKeyStoreType);
|
||||
} else {
|
||||
ks = KeyStore.getInstance(defaultKeyStoreType,
|
||||
defaultKeyStoreProvider);
|
||||
char[] passwd = null;
|
||||
try {
|
||||
if (defaultKeyStore.length() != 0 &&
|
||||
!NONE.equals(defaultKeyStore)) {
|
||||
fs = AccessController.doPrivileged(
|
||||
new PrivilegedExceptionAction<FileInputStream>() {
|
||||
public FileInputStream run() throws Exception {
|
||||
return new FileInputStream(defaultKeyStore);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// if defaultKeyStore is NONE, fs will be null
|
||||
ks.load(fs, passwd);
|
||||
}
|
||||
if (fs != null) {
|
||||
fs.close();
|
||||
fs = null;
|
||||
String defaultKeyStorePassword = props.get("keyStorePasswd");
|
||||
if (defaultKeyStorePassword.length() != 0) {
|
||||
passwd = defaultKeyStorePassword.toCharArray();
|
||||
}
|
||||
|
||||
/**
|
||||
* Try to initialize key store.
|
||||
*/
|
||||
if ((defaultKeyStoreType.length()) != 0) {
|
||||
if (debug != null && Debug.isOn("defaultctx")) {
|
||||
System.out.println("init keystore");
|
||||
}
|
||||
if (defaultKeyStoreProvider.length() == 0) {
|
||||
ks = KeyStore.getInstance(defaultKeyStoreType);
|
||||
} else {
|
||||
ks = KeyStore.getInstance(defaultKeyStoreType,
|
||||
defaultKeyStoreProvider);
|
||||
}
|
||||
|
||||
// if defaultKeyStore is NONE, fs will be null
|
||||
ks.load(fs, passwd);
|
||||
}
|
||||
} finally {
|
||||
if (fs != null) {
|
||||
fs.close();
|
||||
fs = null;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@ -164,72 +164,75 @@ abstract class TrustManagerFactoryImpl extends TrustManagerFactorySpi {
|
||||
* If none exists, we use an empty keystore.
|
||||
*/
|
||||
|
||||
storeFileName = props.get("trustStore");
|
||||
if (!"NONE".equals(storeFileName)) {
|
||||
if (storeFileName != null) {
|
||||
storeFile = new File(storeFileName);
|
||||
fis = getFileInputStream(storeFile);
|
||||
} else {
|
||||
String javaHome = props.get("javaHome");
|
||||
storeFile = new File(javaHome + sep + "lib" + sep
|
||||
+ "security" + sep +
|
||||
"jssecacerts");
|
||||
if ((fis = getFileInputStream(storeFile)) == null) {
|
||||
storeFile = new File(javaHome + sep + "lib" + sep
|
||||
+ "security" + sep +
|
||||
"cacerts");
|
||||
try {
|
||||
storeFileName = props.get("trustStore");
|
||||
if (!"NONE".equals(storeFileName)) {
|
||||
if (storeFileName != null) {
|
||||
storeFile = new File(storeFileName);
|
||||
fis = getFileInputStream(storeFile);
|
||||
} else {
|
||||
String javaHome = props.get("javaHome");
|
||||
storeFile = new File(javaHome + sep + "lib" + sep
|
||||
+ "security" + sep +
|
||||
"jssecacerts");
|
||||
if ((fis = getFileInputStream(storeFile)) == null) {
|
||||
storeFile = new File(javaHome + sep + "lib" + sep
|
||||
+ "security" + sep +
|
||||
"cacerts");
|
||||
fis = getFileInputStream(storeFile);
|
||||
}
|
||||
}
|
||||
|
||||
if (fis != null) {
|
||||
storeFileName = storeFile.getPath();
|
||||
} else {
|
||||
storeFileName = "No File Available, using empty keystore.";
|
||||
}
|
||||
}
|
||||
|
||||
if (fis != null) {
|
||||
storeFileName = storeFile.getPath();
|
||||
} else {
|
||||
storeFileName = "No File Available, using empty keystore.";
|
||||
}
|
||||
}
|
||||
|
||||
defaultTrustStoreType = props.get("trustStoreType");
|
||||
defaultTrustStoreProvider = props.get("trustStoreProvider");
|
||||
if (debug != null && Debug.isOn(dbgname)) {
|
||||
System.out.println("trustStore is: " + storeFileName);
|
||||
System.out.println("trustStore type is : " +
|
||||
defaultTrustStoreType);
|
||||
System.out.println("trustStore provider is : " +
|
||||
defaultTrustStoreProvider);
|
||||
}
|
||||
|
||||
/*
|
||||
* Try to initialize trust store.
|
||||
*/
|
||||
if (defaultTrustStoreType.length() != 0) {
|
||||
defaultTrustStoreType = props.get("trustStoreType");
|
||||
defaultTrustStoreProvider = props.get("trustStoreProvider");
|
||||
if (debug != null && Debug.isOn(dbgname)) {
|
||||
System.out.println("init truststore");
|
||||
System.out.println("trustStore is: " + storeFileName);
|
||||
System.out.println("trustStore type is : " +
|
||||
defaultTrustStoreType);
|
||||
System.out.println("trustStore provider is : " +
|
||||
defaultTrustStoreProvider);
|
||||
}
|
||||
if (defaultTrustStoreProvider.length() == 0) {
|
||||
ks = KeyStore.getInstance(defaultTrustStoreType);
|
||||
} else {
|
||||
ks = KeyStore.getInstance(defaultTrustStoreType,
|
||||
defaultTrustStoreProvider);
|
||||
}
|
||||
char[] passwd = null;
|
||||
String defaultTrustStorePassword = props.get("trustStorePasswd");
|
||||
if (defaultTrustStorePassword.length() != 0)
|
||||
passwd = defaultTrustStorePassword.toCharArray();
|
||||
|
||||
// if trustStore is NONE, fis will be null
|
||||
ks.load(fis, passwd);
|
||||
/*
|
||||
* Try to initialize trust store.
|
||||
*/
|
||||
if (defaultTrustStoreType.length() != 0) {
|
||||
if (debug != null && Debug.isOn(dbgname)) {
|
||||
System.out.println("init truststore");
|
||||
}
|
||||
if (defaultTrustStoreProvider.length() == 0) {
|
||||
ks = KeyStore.getInstance(defaultTrustStoreType);
|
||||
} else {
|
||||
ks = KeyStore.getInstance(defaultTrustStoreType,
|
||||
defaultTrustStoreProvider);
|
||||
}
|
||||
char[] passwd = null;
|
||||
String defaultTrustStorePassword =
|
||||
props.get("trustStorePasswd");
|
||||
if (defaultTrustStorePassword.length() != 0)
|
||||
passwd = defaultTrustStorePassword.toCharArray();
|
||||
|
||||
// Zero out the temporary password storage
|
||||
if (passwd != null) {
|
||||
for (int i = 0; i < passwd.length; i++) {
|
||||
passwd[i] = (char)0;
|
||||
// if trustStore is NONE, fis will be null
|
||||
ks.load(fis, passwd);
|
||||
|
||||
// Zero out the temporary password storage
|
||||
if (passwd != null) {
|
||||
for (int i = 0; i < passwd.length; i++) {
|
||||
passwd[i] = (char)0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (fis != null) {
|
||||
fis.close();
|
||||
} finally {
|
||||
if (fis != null) {
|
||||
fis.close();
|
||||
}
|
||||
}
|
||||
|
||||
return ks;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user