MCPcopy
hub / github.com/zu1k/proxypool / Provide

Method Provide

pkg/provider/sssub.go:24–56  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

22}
23
24func (sub SSSub) Provide() string {
25 sub.Types = "ss,ssr"
26 sub.preFilter()
27 proxies := make([]ssJson, 0, sub.Proxies.Len())
28 for _, p := range *sub.Proxies {
29 var pp *proxy.Shadowsocks
30
31 if p.TypeName() == "ssr" {
32 var err error
33 pp, err = proxy.SSR2SS(p.(*proxy.ShadowsocksR))
34 if err != nil {
35 continue
36 }
37 } else if p.TypeName() == "ss" {
38 pp = p.(*proxy.Shadowsocks)
39 }
40
41 proxies = append(proxies, ssJson{
42 Remarks: pp.Name,
43 Server: pp.Server,
44 ServerPort: strconv.Itoa(pp.Port),
45 Method: pp.Cipher,
46 Password: pp.Password,
47 Plugin: pp.Plugin,
48 PluginOpts: pp.PluginOpts,
49 })
50 }
51 text, err := json.Marshal(proxies)
52 if err != nil {
53 return ""
54 }
55 return string(text)
56}

Callers 1

setupRouterFunction · 0.95

Calls 4

SSR2SSFunction · 0.92
preFilterMethod · 0.80
LenMethod · 0.80
TypeNameMethod · 0.65

Tested by

no test coverage detected