MCPcopy Index your code
hub / github.com/shadow1ng/fscan / createProxyConfig

Method createProxyConfig

common/session.go:77–106  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

75}
76
77func (s *ScanSession) createProxyConfig() *proxy.ProxyConfig {
78 cfg := proxy.DefaultProxyConfig()
79 cfg.Timeout = s.Config.Timeout
80 cfg.LocalAddr = s.Config.Network.Iface
81
82 // 优先 SOCKS5
83 if s.Config.Network.Socks5Proxy != "" {
84 cfg.Type = proxy.ProxyTypeSOCKS5
85 socks5URL := s.Config.Network.Socks5Proxy
86 if !strings.HasPrefix(socks5URL, "socks5://") {
87 socks5URL = "socks5://" + socks5URL
88 }
89 cfg.Address, cfg.Username, cfg.Password = parseProxyURL(socks5URL, s.Config.Network.Socks5Proxy)
90 return cfg
91 }
92
93 // 其次 HTTP
94 if s.Config.Network.HTTPProxy != "" {
95 if strings.HasPrefix(s.Config.Network.HTTPProxy, "https://") {
96 cfg.Type = proxy.ProxyTypeHTTPS
97 } else {
98 cfg.Type = proxy.ProxyTypeHTTP
99 }
100 cfg.Address, cfg.Username, cfg.Password = parseProxyURL(s.Config.Network.HTTPProxy, s.Config.Network.HTTPProxy)
101 return cfg
102 }
103
104 cfg.Type = proxy.ProxyTypeNone
105 return cfg
106}

Callers 1

getDialerMethod · 0.95

Calls 2

DefaultProxyConfigFunction · 0.92
parseProxyURLFunction · 0.85

Tested by

no test coverage detected