From 6a280944ba3a89b3258f2bc5b579e5ed16d891d5 Mon Sep 17 00:00:00 2001
From: akwizgran <michael@briarproject.org>
Date: Tue, 9 Apr 2013 14:03:12 +0100
Subject: [PATCH] Don't set socket timeout unless timeouts are expected.

---
 briar-core/src/net/sf/briar/plugins/tcp/LanTcpPlugin.java | 2 --
 briar-core/src/net/sf/briar/plugins/tcp/TcpPlugin.java    | 3 +--
 2 files changed, 1 insertion(+), 4 deletions(-)

diff --git a/briar-core/src/net/sf/briar/plugins/tcp/LanTcpPlugin.java b/briar-core/src/net/sf/briar/plugins/tcp/LanTcpPlugin.java
index ec24848063..968beb4928 100644
--- a/briar-core/src/net/sf/briar/plugins/tcp/LanTcpPlugin.java
+++ b/briar-core/src/net/sf/briar/plugins/tcp/LanTcpPlugin.java
@@ -153,7 +153,6 @@ class LanTcpPlugin extends TcpPlugin {
 						try {
 							// Connect back on the advertised TCP port
 							Socket s = new Socket(packet.getAddress(), port);
-							s.setSoTimeout(0);
 							return new TcpTransportConnection(s, maxLatency);
 						} catch(IOException e) {
 							if(LOG.isLoggable(WARNING))
@@ -291,7 +290,6 @@ class LanTcpPlugin extends TcpPlugin {
 					int wait = (int) (Math.min(end, nextPacket) - now);
 					ss.setSoTimeout(wait < 1 ? 1 : wait);
 					Socket s = ss.accept();
-					s.setSoTimeout(0);
 					return new TcpTransportConnection(s, maxLatency);
 				} catch(SocketTimeoutException e) {
 					now = clock.currentTimeMillis();
diff --git a/briar-core/src/net/sf/briar/plugins/tcp/TcpPlugin.java b/briar-core/src/net/sf/briar/plugins/tcp/TcpPlugin.java
index 0c6c3b7890..05aeaf3318 100644
--- a/briar-core/src/net/sf/briar/plugins/tcp/TcpPlugin.java
+++ b/briar-core/src/net/sf/briar/plugins/tcp/TcpPlugin.java
@@ -78,6 +78,7 @@ abstract class TcpPlugin implements DuplexPlugin {
 				found = true;
 				break;
 			} catch(IOException e) {
+				if(LOG.isLoggable(INFO)) LOG.info("Failed to bind " + addr);
 				if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 				tryToClose(ss);
 				continue;
@@ -128,7 +129,6 @@ abstract class TcpPlugin implements DuplexPlugin {
 			Socket s;
 			try {
 				s = ss.accept();
-				s.setSoTimeout(0);
 			} catch(IOException e) {
 				// This is expected when the socket is closed
 				if(LOG.isLoggable(INFO)) LOG.log(INFO, e.toString(), e);
@@ -179,7 +179,6 @@ abstract class TcpPlugin implements DuplexPlugin {
 		if(addr == null) return null;
 		Socket s = new Socket();
 		try {
-			s.setSoTimeout(0);
 			s.connect(addr);
 			return new TcpTransportConnection(s, maxLatency);
 		} catch(IOException e) {
-- 
GitLab