From 90349ff2bf27a81ef7412f15b22769ff6ca6bd6e Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 9 Aug 2017 16:36:25 +0200 Subject: Sophisticate proxy parsing and generating, fix misinterpretation if SOCKS proxies This is a quick and dirty fix; it seems a major redesign is appropriate. We should also switch to some maintained version of proxy-vole from github. This one looks halfway active: https://github.com/MarkusBernhardt/proxy-vole or maybe one of its forks... --- .../java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java') diff --git a/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java b/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java index 41859ec..e501952 100644 --- a/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java +++ b/src/main/java/com/btr/proxy/selector/misc/ProxyListFallbackSelector.java @@ -11,6 +11,8 @@ import java.util.List; import java.util.Map.Entry; import java.util.concurrent.ConcurrentHashMap; +import com.btr.proxy.util.ProxyUtil; + /***************************************************************************** * Implements a fallback selector to warp it around an existing ProxySelector. * This will remove proxies from a list of proxies and implement an automatic @@ -58,6 +60,7 @@ public class ProxyListFallbackSelector extends ProxySelector { @Override public void connectFailed(URI uri, SocketAddress sa, IOException ioe) { this.failedDelayCache.put(sa, System.currentTimeMillis()); + this.delegate.connectFailed(uri, sa, ioe); } /************************************************************************* @@ -70,6 +73,9 @@ public class ProxyListFallbackSelector extends ProxySelector { cleanupCache(); List proxyList = this.delegate.select(uri); List result = filterUnresponsiveProxiesFromList(proxyList); + if (result.isEmpty()) { + return ProxyUtil.noProxyList(); + } return result; } -- cgit v1.2.3-55-g7522