forked from KNEMC/KLALB
隧道链接改成标准URI格式
This commit is contained in:
@@ -4,10 +4,7 @@ import java.io.IOException;
|
||||
import java.net.InetAddress;
|
||||
import java.net.InetSocketAddress;
|
||||
import java.net.Socket;
|
||||
import java.net.SocketOption;
|
||||
import java.net.SocketOptions;
|
||||
import java.net.StandardSocketOptions;
|
||||
import java.net.UnknownHostException;
|
||||
import java.nio.channels.SocketChannel;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -15,8 +12,8 @@ public class SocketToSocketProxy extends Proxy {
|
||||
private SocketListener sl;
|
||||
private SocketChannelListener scl;
|
||||
private DatagramSocketListener dsl;
|
||||
private MultipurposeSocketAddress listen, cbind, defaultConnect;
|
||||
private Map<String, MultipurposeSocketAddress> detectedConnect;
|
||||
private MultiProtocolSocketAddress listen, cbind, defaultConnect;
|
||||
private Map<String, MultiProtocolSocketAddress> detectedConnect;
|
||||
private SocketBridgeFactory defaultFactory;
|
||||
private SocketChannelBridgeFactory defaultChannelFactory;
|
||||
private Map<String, SocketBridgeFactory> detectedFactory;
|
||||
@@ -30,28 +27,28 @@ public class SocketToSocketProxy extends Proxy {
|
||||
this.defaultSoTimeout = defaultSoTimeout;
|
||||
}
|
||||
|
||||
public SocketToSocketProxy(MultipurposeSocketAddress listen, MultipurposeSocketAddress connect) throws IOException {
|
||||
this(listen, new MultipurposeSocketAddress(new InetSocketAddress(0)), connect);
|
||||
public SocketToSocketProxy(MultiProtocolSocketAddress listen, MultiProtocolSocketAddress connect) throws IOException {
|
||||
this(listen, new MultiProtocolSocketAddress(new InetSocketAddress(0)), connect);
|
||||
}
|
||||
|
||||
public SocketToSocketProxy(String l, String r) throws IOException {
|
||||
this(new MultipurposeSocketAddress(l), new MultipurposeSocketAddress(r));
|
||||
this(new MultiProtocolSocketAddress(l), new MultiProtocolSocketAddress(r));
|
||||
}
|
||||
|
||||
public SocketToSocketProxy(MultipurposeSocketAddress listen, MultipurposeSocketAddress cbind,
|
||||
MultipurposeSocketAddress defaultConnect, Map<String, MultipurposeSocketAddress> detectedConnect)
|
||||
public SocketToSocketProxy(MultiProtocolSocketAddress listen, MultiProtocolSocketAddress cbind,
|
||||
MultiProtocolSocketAddress defaultConnect, Map<String, MultiProtocolSocketAddress> detectedConnect)
|
||||
throws IOException {
|
||||
this(listen,cbind,defaultConnect,detectedConnect,new DefaultSocketBridgeFactory(),null);
|
||||
}
|
||||
|
||||
public SocketToSocketProxy(MultipurposeSocketAddress listen, MultipurposeSocketAddress cbind,
|
||||
MultipurposeSocketAddress defaultConnect, Map<String, MultipurposeSocketAddress> detectedConnect,SocketBridgeFactory defaultFactory,Map<String, SocketBridgeFactory> detectedFactory)
|
||||
public SocketToSocketProxy(MultiProtocolSocketAddress listen, MultiProtocolSocketAddress cbind,
|
||||
MultiProtocolSocketAddress defaultConnect, Map<String, MultiProtocolSocketAddress> detectedConnect, SocketBridgeFactory defaultFactory, Map<String, SocketBridgeFactory> detectedFactory)
|
||||
throws IOException {
|
||||
this(listen, cbind, defaultConnect, detectedConnect, defaultFactory, detectedFactory, new DefaultSocketChannelBridgeFactory());
|
||||
}
|
||||
|
||||
public SocketToSocketProxy(MultipurposeSocketAddress listen, MultipurposeSocketAddress cbind,
|
||||
MultipurposeSocketAddress defaultConnect, Map<String, MultipurposeSocketAddress> detectedConnect,SocketBridgeFactory defaultFactory,Map<String, SocketBridgeFactory> detectedFactory,SocketChannelBridgeFactory defaultChannelFactory)
|
||||
public SocketToSocketProxy(MultiProtocolSocketAddress listen, MultiProtocolSocketAddress cbind,
|
||||
MultiProtocolSocketAddress defaultConnect, Map<String, MultiProtocolSocketAddress> detectedConnect, SocketBridgeFactory defaultFactory, Map<String, SocketBridgeFactory> detectedFactory, SocketChannelBridgeFactory defaultChannelFactory)
|
||||
throws IOException {
|
||||
this.listen = listen;
|
||||
this.cbind = cbind;
|
||||
@@ -66,8 +63,8 @@ public class SocketToSocketProxy extends Proxy {
|
||||
open();
|
||||
}
|
||||
|
||||
public SocketToSocketProxy(MultipurposeSocketAddress listen, MultipurposeSocketAddress cbind,
|
||||
MultipurposeSocketAddress defaultConnect) throws IOException {
|
||||
public SocketToSocketProxy(MultiProtocolSocketAddress listen, MultiProtocolSocketAddress cbind,
|
||||
MultiProtocolSocketAddress defaultConnect) throws IOException {
|
||||
this(listen, cbind, defaultConnect,null);
|
||||
}
|
||||
|
||||
@@ -112,7 +109,7 @@ public class SocketToSocketProxy extends Proxy {
|
||||
ProtocolStack ps = ((ProtocolDetectorSocket) sox).getProtocolStack();
|
||||
if (!ps.isEmpty()) {
|
||||
String pname=ps.pop().getName();
|
||||
MultipurposeSocketAddress pmsa = detectedConnect.get(pname);
|
||||
MultiProtocolSocketAddress pmsa = detectedConnect.get(pname);
|
||||
if(pmsa!=null) {
|
||||
sk = pmsa.connectSocket(InetAddress.getByName(cbind.getHost()), cbind.getPort());
|
||||
}else {
|
||||
@@ -178,19 +175,19 @@ public class SocketToSocketProxy extends Proxy {
|
||||
sb.run();
|
||||
}
|
||||
|
||||
public MultipurposeSocketAddress getListen() {
|
||||
public MultiProtocolSocketAddress getListen() {
|
||||
return listen;
|
||||
}
|
||||
|
||||
public MultipurposeSocketAddress getCbind() {
|
||||
public MultiProtocolSocketAddress getCbind() {
|
||||
return cbind;
|
||||
}
|
||||
|
||||
public MultipurposeSocketAddress getDefaultConnect() {
|
||||
public MultiProtocolSocketAddress getDefaultConnect() {
|
||||
return defaultConnect;
|
||||
}
|
||||
|
||||
public Map<String, MultipurposeSocketAddress> getDetectedConnect() {
|
||||
public Map<String, MultiProtocolSocketAddress> getDetectedConnect() {
|
||||
return detectedConnect;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user