提交 26980700 编写于 作者: V vinnie

6906854: SSL/Krb5 testcase should not use a fixed port number

Reviewed-by: alanb
上级 acecf66e
...@@ -893,10 +893,6 @@ java/rmi/server/UnicastRemoteObject/unexportObject/UnexportLeak.java generic-all ...@@ -893,10 +893,6 @@ java/rmi/server/UnicastRemoteObject/unexportObject/UnexportLeak.java generic-all
# jdk_security # jdk_security
# Fails on OpenSolaris, IOException: Attempt to obtain kerberos service ticket
# for host/`hostname`@RABBIT.HOLE failed!
sun/security/krb5/auto/SSL.java generic-all
# Run too slow on Solaris 10 sparc # Run too slow on Solaris 10 sparc
sun/security/ssl/com/sun/net/ssl/internal/ssl/InputRecord/SSLSocketTimeoutNulls.java solaris-sparc sun/security/ssl/com/sun/net/ssl/internal/ssl/InputRecord/SSLSocketTimeoutNulls.java solaris-sparc
sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLSocketImpl/ClientTimeout.java solaris-sparc sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLSocketImpl/ClientTimeout.java solaris-sparc
......
...@@ -36,33 +36,32 @@ import sun.security.jgss.GSSUtil; ...@@ -36,33 +36,32 @@ import sun.security.jgss.GSSUtil;
public class SSL { public class SSL {
private static final String KRB5_CIPHER = "TLS_KRB5_WITH_3DES_EDE_CBC_SHA"; private static final String KRB5_CIPHER = "TLS_KRB5_WITH_3DES_EDE_CBC_SHA";
private static final int PORT = 4569;
private static final int LOOP_LIMIT = 1; private static final int LOOP_LIMIT = 1;
private static final char[] PASS = "secret".toCharArray(); private static final char[] PASS = "secret".toCharArray();
private static int loopCount = 0; private static int loopCount = 0;
private static volatile String server;
private static String SERVER; private static volatile int port;
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
KDC kdc = KDC.create(OneKDC.REALM); KDC kdc = KDC.create(OneKDC.REALM);
// Run this after KDC, so our own DNS service can be started // Run this after KDC, so our own DNS service can be started
try { try {
SERVER = InetAddress.getLocalHost().getHostName().toLowerCase(); server = InetAddress.getLocalHost().getHostName().toLowerCase();
} catch (java.net.UnknownHostException e) { } catch (java.net.UnknownHostException e) {
SERVER = "localhost"; server = "localhost";
} }
kdc.addPrincipal(OneKDC.USER, OneKDC.PASS); kdc.addPrincipal(OneKDC.USER, OneKDC.PASS);
kdc.addPrincipalRandKey("krbtgt/" + OneKDC.REALM); kdc.addPrincipalRandKey("krbtgt/" + OneKDC.REALM);
kdc.addPrincipal("host/" + SERVER, PASS); kdc.addPrincipal("host/" + server, PASS);
KDC.saveConfig(OneKDC.KRB5_CONF, kdc); KDC.saveConfig(OneKDC.KRB5_CONF, kdc);
System.setProperty("java.security.krb5.conf", OneKDC.KRB5_CONF); System.setProperty("java.security.krb5.conf", OneKDC.KRB5_CONF);
final Context c = Context.fromUserPass(OneKDC.USER, OneKDC.PASS, false); final Context c = Context.fromUserPass(OneKDC.USER, OneKDC.PASS, false);
final Context s = Context.fromUserPass("host/" + SERVER, PASS, true); final Context s = Context.fromUserPass("host/" + server, PASS, true);
c.startAsClient("host/" + SERVER, GSSUtil.GSS_KRB5_MECH_OID); c.startAsClient("host/" + server, GSSUtil.GSS_KRB5_MECH_OID);
s.startAsServer(GSSUtil.GSS_KRB5_MECH_OID); s.startAsServer(GSSUtil.GSS_KRB5_MECH_OID);
new Thread(new Runnable() { new Thread(new Runnable() {
...@@ -87,7 +86,7 @@ public class SSL { ...@@ -87,7 +86,7 @@ public class SSL {
public byte[] run(Context s, byte[] input) throws Exception { public byte[] run(Context s, byte[] input) throws Exception {
SSLSocketFactory sslsf = SSLSocketFactory sslsf =
(SSLSocketFactory) SSLSocketFactory.getDefault(); (SSLSocketFactory) SSLSocketFactory.getDefault();
SSLSocket sslSocket = (SSLSocket) sslsf.createSocket(SERVER, PORT); SSLSocket sslSocket = (SSLSocket) sslsf.createSocket(server, port);
// Enable only a KRB5 cipher suite. // Enable only a KRB5 cipher suite.
String enabledSuites[] = {KRB5_CIPHER}; String enabledSuites[] = {KRB5_CIPHER};
...@@ -124,7 +123,8 @@ public class SSL { ...@@ -124,7 +123,8 @@ public class SSL {
SSLServerSocketFactory sslssf = SSLServerSocketFactory sslssf =
(SSLServerSocketFactory) SSLServerSocketFactory.getDefault(); (SSLServerSocketFactory) SSLServerSocketFactory.getDefault();
SSLServerSocket sslServerSocket = SSLServerSocket sslServerSocket =
(SSLServerSocket) sslssf.createServerSocket(PORT); (SSLServerSocket) sslssf.createServerSocket(0); // any port
port = sslServerSocket.getLocalPort();
// Enable only a KRB5 cipher suite. // Enable only a KRB5 cipher suite.
String enabledSuites[] = {KRB5_CIPHER}; String enabledSuites[] = {KRB5_CIPHER};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册