mirror of https://github.com/v2ray/v2ray-core
adjust connection type priority
parent
9d21c78a01
commit
103c721626
|
@ -24,10 +24,10 @@ var (
|
||||||
func Dial(src v2net.Address, dest v2net.Destination, settings *StreamSettings) (Connection, error) {
|
func Dial(src v2net.Address, dest v2net.Destination, settings *StreamSettings) (Connection, error) {
|
||||||
if dest.IsTCP() {
|
if dest.IsTCP() {
|
||||||
switch {
|
switch {
|
||||||
case settings.IsCapableOf(StreamConnectionTypeKCP):
|
|
||||||
return KCPDialer(src, dest)
|
|
||||||
case settings.IsCapableOf(StreamConnectionTypeTCP):
|
case settings.IsCapableOf(StreamConnectionTypeTCP):
|
||||||
return TCPDialer(src, dest)
|
return TCPDialer(src, dest)
|
||||||
|
case settings.IsCapableOf(StreamConnectionTypeKCP):
|
||||||
|
return KCPDialer(src, dest)
|
||||||
case settings.IsCapableOf(StreamConnectionTypeRawTCP):
|
case settings.IsCapableOf(StreamConnectionTypeRawTCP):
|
||||||
return RawTCPDialer(src, dest)
|
return RawTCPDialer(src, dest)
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,12 +34,15 @@ type TCPHub struct {
|
||||||
func ListenTCP(address v2net.Address, port v2net.Port, callback ConnectionHandler, settings *StreamSettings) (*TCPHub, error) {
|
func ListenTCP(address v2net.Address, port v2net.Port, callback ConnectionHandler, settings *StreamSettings) (*TCPHub, error) {
|
||||||
var listener Listener
|
var listener Listener
|
||||||
var err error
|
var err error
|
||||||
if settings.IsCapableOf(StreamConnectionTypeKCP) {
|
switch {
|
||||||
listener, err = KCPListenFunc(address, port)
|
case settings.IsCapableOf(StreamConnectionTypeTCP):
|
||||||
} else if settings.IsCapableOf(StreamConnectionTypeTCP) {
|
|
||||||
listener, err = TCPListenFunc(address, port)
|
listener, err = TCPListenFunc(address, port)
|
||||||
} else {
|
case settings.IsCapableOf(StreamConnectionTypeKCP):
|
||||||
|
listener, err = KCPListenFunc(address, port)
|
||||||
|
case settings.IsCapableOf(StreamConnectionTypeRawTCP):
|
||||||
listener, err = RawTCPListenFunc(address, port)
|
listener, err = RawTCPListenFunc(address, port)
|
||||||
|
default:
|
||||||
|
err = ErrUnsupportedStreamType
|
||||||
}
|
}
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in New Issue