mirror of
				https://github.com/nadoo/glider.git
				synced 2025-11-04 07:42:38 +08:00 
			
		
		
		
	proxy: move usage func to proxy.go
This commit is contained in:
		
							parent
							
								
									a98995e2cb
								
							
						
					
					
						commit
						420ec26368
					
				@ -7,14 +7,12 @@ import (
 | 
				
			|||||||
	// comment out the protocols you don't need to make the compiled binary smaller.
 | 
						// comment out the protocols you don't need to make the compiled binary smaller.
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/http"
 | 
						_ "github.com/nadoo/glider/proxy/http"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/kcp"
 | 
						_ "github.com/nadoo/glider/proxy/kcp"
 | 
				
			||||||
 | 
					 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/mixed"
 | 
						_ "github.com/nadoo/glider/proxy/mixed"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/obfs"
 | 
						_ "github.com/nadoo/glider/proxy/obfs"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/pxyproto"
 | 
						_ "github.com/nadoo/glider/proxy/pxyproto"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/reject"
 | 
						_ "github.com/nadoo/glider/proxy/reject"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/smux"
 | 
						_ "github.com/nadoo/glider/proxy/smux"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/socks4"
 | 
						_ "github.com/nadoo/glider/proxy/socks4"
 | 
				
			||||||
 | 
					 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/socks5"
 | 
						_ "github.com/nadoo/glider/proxy/socks5"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/ss"
 | 
						_ "github.com/nadoo/glider/proxy/ss"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/ssh"
 | 
						_ "github.com/nadoo/glider/proxy/ssh"
 | 
				
			||||||
@ -22,7 +20,6 @@ import (
 | 
				
			|||||||
	_ "github.com/nadoo/glider/proxy/tcp"
 | 
						_ "github.com/nadoo/glider/proxy/tcp"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/tls"
 | 
						_ "github.com/nadoo/glider/proxy/tls"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/trojan"
 | 
						_ "github.com/nadoo/glider/proxy/trojan"
 | 
				
			||||||
 | 
					 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/udp"
 | 
						_ "github.com/nadoo/glider/proxy/udp"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/vless"
 | 
						_ "github.com/nadoo/glider/proxy/vless"
 | 
				
			||||||
	_ "github.com/nadoo/glider/proxy/vmess"
 | 
						_ "github.com/nadoo/glider/proxy/vmess"
 | 
				
			||||||
 | 
				
			|||||||
@ -2,7 +2,6 @@ package main
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
	// comment out the services you don't need to make the compiled binary smaller.
 | 
						// comment out the services you don't need to make the compiled binary smaller.
 | 
				
			||||||
	// _ "github.com/nadoo/glider/service/xxx"
 | 
					 | 
				
			||||||
	_ "github.com/nadoo/glider/service/dhcpd"
 | 
						_ "github.com/nadoo/glider/service/dhcpd"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// comment out the protocols you don't need to make the compiled binary smaller.
 | 
						// comment out the protocols you don't need to make the compiled binary smaller.
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										2
									
								
								go.mod
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								go.mod
									
									
									
									
									
								
							@ -11,7 +11,7 @@ require (
 | 
				
			|||||||
	github.com/nadoo/conflag v0.3.1
 | 
						github.com/nadoo/conflag v0.3.1
 | 
				
			||||||
	github.com/nadoo/ipset v0.4.1-0.20220218075046-ca3cdce74266
 | 
						github.com/nadoo/ipset v0.4.1-0.20220218075046-ca3cdce74266
 | 
				
			||||||
	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-20220307211146-efcb8507fb70
 | 
						golang.org/x/crypto v0.0.0-20220313003712-b769efc7c000
 | 
				
			||||||
	golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5
 | 
						golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										4
									
								
								go.sum
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								go.sum
									
									
									
									
									
								
							@ -111,8 +111,8 @@ golang.org/x/crypto v0.0.0-20191219195013-becbf705a915/go.mod h1:LzIPMQfyMNhhGPh
 | 
				
			|||||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 | 
					golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 | 
				
			||||||
golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 | 
					golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 | 
				
			||||||
golang.org/x/crypto v0.0.0-20201012173705-84dcc777aaee/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 | 
					golang.org/x/crypto v0.0.0-20201012173705-84dcc777aaee/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 | 
				
			||||||
golang.org/x/crypto v0.0.0-20220307211146-efcb8507fb70 h1:syTAU9FwmvzEoIYMqcPHOcVm4H3U5u90WsvuYgwpETU=
 | 
					golang.org/x/crypto v0.0.0-20220313003712-b769efc7c000 h1:SL+8VVnkqyshUSz5iNnXtrBQzvFF2SkROm6t5RczFAE=
 | 
				
			||||||
golang.org/x/crypto v0.0.0-20220307211146-efcb8507fb70/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
 | 
					golang.org/x/crypto v0.0.0-20220313003712-b769efc7c000/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
 | 
				
			||||||
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
 | 
					golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
 | 
				
			||||||
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
 | 
					golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
 | 
				
			||||||
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
 | 
					golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,4 @@
 | 
				
			|||||||
//go:build !linux
 | 
					//go:build !linux
 | 
				
			||||||
// +build !linux
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
package ipset
 | 
					package ipset
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,4 @@
 | 
				
			|||||||
//go:build !linux && !darwin
 | 
					//go:build !linux && !darwin
 | 
				
			||||||
// +build !linux,!darwin
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
package sockopt
 | 
					package sockopt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,9 @@
 | 
				
			|||||||
package proxy
 | 
					package proxy
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import "net"
 | 
					import (
 | 
				
			||||||
 | 
						"net"
 | 
				
			||||||
 | 
						"strings"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Proxy is a dialer manager.
 | 
					// Proxy is a dialer manager.
 | 
				
			||||||
type Proxy interface {
 | 
					type Proxy interface {
 | 
				
			||||||
@ -16,3 +19,26 @@ type Proxy interface {
 | 
				
			|||||||
	// Record records result while using the dialer from proxy.
 | 
						// Record records result while using the dialer from proxy.
 | 
				
			||||||
	Record(dialer Dialer, success bool)
 | 
						Record(dialer Dialer, success bool)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var usages = make(map[string]string)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// AddUsage adds help message for the named proxy.
 | 
				
			||||||
 | 
					func AddUsage(name, usage string) { usages[name] = usage }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Usage returns help message of the named proxy.
 | 
				
			||||||
 | 
					func Usage(name string) string {
 | 
				
			||||||
 | 
						if name == "all" {
 | 
				
			||||||
 | 
							var msg strings.Builder
 | 
				
			||||||
 | 
							for _, usage := range usages {
 | 
				
			||||||
 | 
								msg.WriteString(usage)
 | 
				
			||||||
 | 
								msg.WriteString("\n--")
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							return msg.String()
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if usage, ok := usages[name]; ok {
 | 
				
			||||||
 | 
							return usage
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return "can not find usage for: " + name
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,4 @@
 | 
				
			|||||||
//go:build linux && !386
 | 
					//go:build linux && !386
 | 
				
			||||||
// +build linux,!386
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
package redir
 | 
					package redir
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,26 +0,0 @@
 | 
				
			|||||||
package proxy
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import "strings"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var (
 | 
					 | 
				
			||||||
	msg    strings.Builder
 | 
					 | 
				
			||||||
	usages = make(map[string]string)
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// AddUsage adds help message for the named proxy.
 | 
					 | 
				
			||||||
func AddUsage(name, usage string) {
 | 
					 | 
				
			||||||
	usages[name] = usage
 | 
					 | 
				
			||||||
	msg.WriteString(usage)
 | 
					 | 
				
			||||||
	msg.WriteString("\n--")
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Usage returns help message of the named proxy.
 | 
					 | 
				
			||||||
func Usage(name string) string {
 | 
					 | 
				
			||||||
	if name == "all" {
 | 
					 | 
				
			||||||
		return msg.String()
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if usage, ok := usages[name]; ok {
 | 
					 | 
				
			||||||
		return usage
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return "can not find usage for: " + name
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user