mirror of
				https://github.com/nadoo/glider.git
				synced 2025-11-04 07:42:38 +08:00 
			
		
		
		
	tls,trojan: optimize the default port handling
This commit is contained in:
		
							parent
							
								
									93728c6378
								
							
						
					
					
						commit
						2d16870803
					
				
							
								
								
									
										2
									
								
								go.mod
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								go.mod
									
									
									
									
									
								
							@ -17,7 +17,7 @@ require (
 | 
				
			|||||||
	github.com/xtaci/kcp-go/v5 v5.6.1
 | 
						github.com/xtaci/kcp-go/v5 v5.6.1
 | 
				
			||||||
	golang.org/x/crypto v0.0.0-20210317152858-513c2a44f670
 | 
						golang.org/x/crypto v0.0.0-20210317152858-513c2a44f670
 | 
				
			||||||
	golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4 // indirect
 | 
						golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4 // indirect
 | 
				
			||||||
	golang.org/x/sys v0.0.0-20210319071255-635bc2c9138d // indirect
 | 
						golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4 // indirect
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Replace dependency modules with local developing copy
 | 
					// Replace dependency modules with local developing copy
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										4
									
								
								go.sum
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								go.sum
									
									
									
									
									
								
							@ -153,8 +153,8 @@ golang.org/x/sys v0.0.0-20201101102859-da207088b7d1/go.mod h1:h1NjWce9XRLGQEsW7w
 | 
				
			|||||||
golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
					golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
				
			||||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
					golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
				
			||||||
golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
					golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
				
			||||||
golang.org/x/sys v0.0.0-20210319071255-635bc2c9138d h1:jbzgAvDZn8aEnytae+4ou0J0GwFZoHR0hOrTg4qH8GA=
 | 
					golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4 h1:EZ2mChiOa8udjfp6rRmswTbtZN/QzUQp4ptM4rnjHvc=
 | 
				
			||||||
golang.org/x/sys v0.0.0-20210319071255-635bc2c9138d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
					golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
				
			||||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E=
 | 
					golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E=
 | 
				
			||||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
 | 
					golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
 | 
				
			||||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 | 
					golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										2
									
								
								main.go
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								main.go
									
									
									
									
									
								
							@ -18,7 +18,7 @@ import (
 | 
				
			|||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var (
 | 
					var (
 | 
				
			||||||
	version = "0.14.0"
 | 
						version = "0.13.2"
 | 
				
			||||||
	config  = parseConfig()
 | 
						config  = parseConfig()
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -52,13 +52,12 @@ func NewTLS(s string, d proxy.Dialer, p proxy.Proxy) (*TLS, error) {
 | 
				
			|||||||
		keyFile:    query.Get("key"),
 | 
							keyFile:    query.Get("key"),
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if t.serverName == "" {
 | 
						if _, p, _ := net.SplitHostPort(t.addr); p == "" {
 | 
				
			||||||
		idx := strings.LastIndex(t.addr, ":")
 | 
					 | 
				
			||||||
		if idx == -1 {
 | 
					 | 
				
			||||||
			idx = len(t.addr)
 | 
					 | 
				
			||||||
		t.addr = net.JoinHostPort(t.addr, "443")
 | 
							t.addr = net.JoinHostPort(t.addr, "443")
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
		t.serverName = t.addr[:idx]
 | 
					
 | 
				
			||||||
 | 
						if t.serverName == "" {
 | 
				
			||||||
 | 
							t.serverName = t.addr[:strings.LastIndex(t.addr, ":")]
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return t, nil
 | 
						return t, nil
 | 
				
			||||||
 | 
				
			|||||||
@ -58,13 +58,12 @@ func NewTrojan(s string, d proxy.Dialer, p proxy.Proxy) (*Trojan, error) {
 | 
				
			|||||||
		// fallback: "127.0.0.1:80",
 | 
							// fallback: "127.0.0.1:80",
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if t.serverName == "" {
 | 
						if _, p, _ := net.SplitHostPort(t.addr); p == "" {
 | 
				
			||||||
		idx := strings.LastIndex(t.addr, ":")
 | 
					 | 
				
			||||||
		if idx == -1 {
 | 
					 | 
				
			||||||
			idx = len(t.addr)
 | 
					 | 
				
			||||||
		t.addr = net.JoinHostPort(t.addr, "443")
 | 
							t.addr = net.JoinHostPort(t.addr, "443")
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
		t.serverName = t.addr[:idx]
 | 
					
 | 
				
			||||||
 | 
						if t.serverName == "" {
 | 
				
			||||||
 | 
							t.serverName = t.addr[:strings.LastIndex(t.addr, ":")]
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// pass
 | 
						// pass
 | 
				
			||||||
 | 
				
			|||||||
@ -189,13 +189,13 @@ func (p *FwdrGroup) Check() {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	u, err := url.Parse(p.config.Check)
 | 
						u, err := url.Parse(p.config.Check)
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		log.F("[group] parse check config error: %s", err)
 | 
							log.F("[group] parse check config error: %s, disable health checking", err)
 | 
				
			||||||
		return
 | 
							return
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	addr := u.Host
 | 
						addr := u.Host
 | 
				
			||||||
	if strings.IndexByte(addr, ':') == -1 {
 | 
						if _, p, _ := net.SplitHostPort(addr); p == "" {
 | 
				
			||||||
		addr += ":80"
 | 
							addr = net.JoinHostPort(addr, "80")
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	timeout := time.Duration(p.config.CheckTimeout) * time.Second
 | 
						timeout := time.Duration(p.config.CheckTimeout) * time.Second
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user