Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_jdk
提交
c0de421c
D
dragonwell8_jdk
项目概览
openanolis
/
dragonwell8_jdk
通知
3
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_jdk
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c0de421c
编写于
7月 19, 2011
作者:
X
xuelei
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
7059709: close the IO in a final block
Reviewed-by: smarks, mullan, wetmore
上级
01983949
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
94 addition
and
87 deletion
+94
-87
src/share/classes/sun/security/ssl/SSLContextImpl.java
src/share/classes/sun/security/ssl/SSLContextImpl.java
+36
-32
src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java
...are/classes/sun/security/ssl/TrustManagerFactoryImpl.java
+58
-55
未找到文件。
src/share/classes/sun/security/ssl/SSLContextImpl.java
浏览文件 @
c0de421c
...
...
@@ -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"
);
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
(
defaultKeyStoreProvider
.
length
()
==
0
)
{
ks
=
KeyStore
.
getInstance
(
defaultKeyStoreType
);
}
else
{
ks
=
KeyStore
.
getInstance
(
defaultKeyStoreType
,
defaultKeyStoreProvider
);
String
defaultKeyStorePassword
=
props
.
get
(
"keyStorePasswd"
);
if
(
defaultKeyStorePassword
.
length
()
!=
0
)
{
passwd
=
defaultKeyStorePassword
.
toCharArray
();
}
// if defaultKeyStore is NONE, fs will be null
ks
.
load
(
fs
,
passwd
);
}
if
(
fs
!=
null
)
{
fs
.
close
();
fs
=
null
;
/**
* 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
;
}
}
/*
...
...
src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java
浏览文件 @
c0de421c
...
...
@@ -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"
);
}
if
(
defaultTrustStoreProvider
.
length
()
==
0
)
{
ks
=
KeyStore
.
getInstance
(
defaultTrustStoreType
);
}
else
{
ks
=
KeyStore
.
getInstance
(
defaultTrustStoreType
,
defaultTrustStoreProvider
);
System
.
out
.
println
(
"trustStore is: "
+
storeFileName
);
System
.
out
.
println
(
"trustStore type is : "
+
defaultTrustStoreType
);
System
.
out
.
println
(
"trustStore provider is : "
+
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
();
// 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
;
// 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
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录