Skip to content

Commit 9cc0f07

Browse files
author
dbird
committed
1 parent 0181e76 commit 9cc0f07

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

extended/src/main/java/net/jradius/radsec/RadSecClientTransport.java

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929

3030
import javax.net.ssl.KeyManager;
3131
import javax.net.ssl.SSLContext;
32+
import javax.net.ssl.SSLSocket;
3233
import javax.net.ssl.SSLSocketFactory;
3334
import javax.net.ssl.TrustManager;
3435

@@ -42,14 +43,16 @@
4243

4344
public class RadSecClientTransport extends RadiusClientTransport
4445
{
45-
private Socket socket;
46-
private Socket socketAcct;
46+
private SSLSocket socket;
47+
private SSLSocket socketAcct;
4748
private KeyManager keyManagers[];
4849
private TrustManager trustManagers[];
4950

5051
protected final ByteBuffer buffer_in;
5152
protected final ByteBuffer buffer_out;
5253

54+
private String[] protocols = new String[] { "TLSv1" };
55+
5356
public RadSecClientTransport(KeyManager keyManager, TrustManager trustManager)
5457
{
5558
this(new KeyManager[] { keyManager } , new TrustManager[] { trustManager });
@@ -71,19 +74,21 @@ private void initialize()
7174
{
7275
try
7376
{
74-
SSLContext sslContext = SSLContext.getInstance("SSLv3");
77+
SSLContext sslContext = SSLContext.getInstance(protocols[0]);
7578
sslContext.init(keyManagers, trustManagers, null);
7679

7780
SSLSocketFactory socketFactory = sslContext.getSocketFactory();
78-
socket = socketFactory.createSocket(getRemoteInetAddress(), getAuthPort());
81+
socket = (SSLSocket) socketFactory.createSocket(getRemoteInetAddress(), getAuthPort());
7982
socket.setReuseAddress(true);
8083
socket.setSoTimeout(getSocketTimeout() * 1000);
84+
socket.setEnabledProtocols(protocols);
8185

8286
if (getAcctPort() != getAuthPort())
8387
{
84-
socketAcct = socketFactory.createSocket(getRemoteInetAddress(), getAcctPort());
88+
socketAcct = (SSLSocket) socketFactory.createSocket(getRemoteInetAddress(), getAcctPort());
8589
socketAcct.setReuseAddress(true);
8690
socketAcct.setSoTimeout(getSocketTimeout() * 1000);
91+
socketAcct.setEnabledProtocols(protocols);
8792
}
8893
}
8994
catch (Exception e)

0 commit comments

Comments
 (0)