From df53b12c42252be8ffe9aa1eb1a9adf3002f1545 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Tue, 1 Aug 2017 15:45:48 +0200 Subject: Make proxy type detection more intelligent, decouple from target protocol --- .../com/btr/proxy/selector/misc/ProtocolDispatchSelector.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/main/java/com/btr/proxy/selector/misc/ProtocolDispatchSelector.java') diff --git a/src/main/java/com/btr/proxy/selector/misc/ProtocolDispatchSelector.java b/src/main/java/com/btr/proxy/selector/misc/ProtocolDispatchSelector.java index 5d7f563..02ecc44 100644 --- a/src/main/java/com/btr/proxy/selector/misc/ProtocolDispatchSelector.java +++ b/src/main/java/com/btr/proxy/selector/misc/ProtocolDispatchSelector.java @@ -104,11 +104,18 @@ public class ProtocolDispatchSelector extends ProxySelector { @Override public List select(URI uri) { - ProxySelector selector = this.fallbackSelector; + ProxySelector selector = null; String protocol = uri.getScheme(); if (protocol != null && this.selectors.get(protocol) != null) { selector = this.selectors.get(protocol); } + if (selector == null && this.selectors.get("socks") != null) { + // Socks should always work + selector = this.selectors.get("socks"); + } + if (selector == null) { + selector = this.fallbackSelector; + } return selector.select(uri); } -- cgit v1.2.3-55-g7522