Documentation
¶
Index ¶
- Variables
- func GrepSSLinkFromString(text string) []string
- func GrepSSRLinkFromString(text string) []string
- func GrepTrojanLinkFromString(text string) []string
- func GrepVmessLinkFromString(text string) []string
- func InitGeoIpDB()
- type Base
- type GeoIP
- type HTTPOptions
- type Proxy
- type ProxyList
- func (ps ProxyList) Clone() ProxyList
- func (ps ProxyList) Deduplication() ProxyList
- func (ps ProxyList) Len() int
- func (ps ProxyList) Less(i, j int) bool
- func (ps ProxyList) NameAddCounrty() ProxyList
- func (ps ProxyList) NameAddIndex() ProxyList
- func (ps ProxyList) Sort() ProxyList
- func (ps ProxyList) Swap(i, j int)
- func (ps ProxyList) TypeLen(t string) int
- type Shadowsocks
- type ShadowsocksR
- type Trojan
- type Vmess
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrorNotSSRLink = errors.New("not a correct ssr link") ErrorPasswordParseFail = errors.New("password parse failed") ErrorPathNotComplete = errors.New("path not complete") ErrorMissingQuery = errors.New("link missing query") ErrorProtocolParamParseFail = errors.New("protocol param parse failed") ErrorObfsParamParseFail = errors.New("obfs param parse failed") )
View Source
var ( ErrorNotVmessLink = errors.New("not a correct vmess link") ErrorVmessPayloadParseFail = errors.New("vmess link payload parse failed") )
View Source
var (
ErrorNotSSLink = errors.New("not a correct ss link")
)
View Source
var (
ErrorNotTrojanink = errors.New("not a correct trojan link")
)
Functions ¶
func GrepSSLinkFromString ¶
func GrepSSRLinkFromString ¶
func GrepVmessLinkFromString ¶
func InitGeoIpDB ¶
func InitGeoIpDB()
Types ¶
type Base ¶
type HTTPOptions ¶
type Proxy ¶
type Proxy interface {
String() string
ToClash() string
ToSurge() string
Identifier() string
SetName(name string)
TypeName() string
BaseInfo() *Base
Clone() Proxy
}
func CleanBadProxies ¶
type ProxyList ¶
type ProxyList []Proxy
func Deduplication ¶
func (ProxyList) Deduplication ¶
func (ProxyList) NameAddCounrty ¶
func (ProxyList) NameAddIndex ¶
type Shadowsocks ¶
type Shadowsocks struct {
Base
Password string `yaml:"password" json:"password"`
Cipher string `yaml:"cipher" json:"cipher"`
Plugin string `yaml:"plugin,omitempty" json:"plugin,omitempty"`
PluginOpts map[string]interface{} `yaml:"plugin-opts,omitempty" json:"plugin-opts,omitempty"`
}
func ParseSSLink ¶
func ParseSSLink(link string) (*Shadowsocks, error)
func (Shadowsocks) Clone ¶
func (ss Shadowsocks) Clone() Proxy
func (Shadowsocks) Identifier ¶
func (ss Shadowsocks) Identifier() string
func (Shadowsocks) String ¶
func (ss Shadowsocks) String() string
func (Shadowsocks) ToClash ¶
func (ss Shadowsocks) ToClash() string
func (Shadowsocks) ToSurge ¶
func (ss Shadowsocks) ToSurge() string
type ShadowsocksR ¶
type ShadowsocksR struct {
Base
Password string `yaml:"password" json:"password"`
Cipher string `yaml:"cipher" json:"cipher"`
Protocol string `yaml:"protocol" json:"protocol"`
ProtocolParam string `yaml:"protocol-param,omitempty" json:"protocol_param,omitempty"`
Obfs string `yaml:"obfs" json:"obfs"`
ObfsParam string `yaml:"obfs-param,omitempty" json:"obfs_param,omitempty"`
Group string `yaml:"group,omitempty" json:"group,omitempty"`
}
func ParseSSRLink ¶
func ParseSSRLink(link string) (*ShadowsocksR, error)
func (ShadowsocksR) Clone ¶
func (ssr ShadowsocksR) Clone() Proxy
func (ShadowsocksR) Identifier ¶
func (ssr ShadowsocksR) Identifier() string
func (ShadowsocksR) String ¶
func (ssr ShadowsocksR) String() string
func (ShadowsocksR) ToClash ¶
func (ssr ShadowsocksR) ToClash() string
func (ShadowsocksR) ToSurge ¶
func (ssr ShadowsocksR) ToSurge() string
type Trojan ¶
type Trojan struct {
Base
Password string `yaml:"password" json:"password"`
ALPN []string `yaml:"alpn,omitempty" json:"alpn,omitempty"`
SNI string `yaml:"sni,omitempty" json:"sni,omitempty"`
SkipCertVerify bool `yaml:"skip-cert-verify,omitempty" json:"skip-cert-verify,omitempty"`
UDP bool `yaml:"udp,omitempty" json:"udp,omitempty"`
}
func ParseTrojanLink ¶
func (Trojan) Identifier ¶
type Vmess ¶
type Vmess struct {
Base
UUID string `yaml:"uuid" json:"uuid"`
AlterID int `yaml:"alterId" json:"alterId"`
Cipher string `yaml:"cipher" json:"cipher"`
TLS bool `yaml:"tls,omitempty" json:"tls,omitempty"`
Network string `yaml:"network,omitempty" json:"network,omitempty"`
HTTPOpts HTTPOptions `yaml:"http-opts,omitempty" json:"http-opts,omitempty"`
WSPath string `yaml:"ws-path,omitempty" json:"ws-path,omitempty"`
WSHeaders map[string]string `yaml:"ws-headers,omitempty" json:"ws-headers,omitempty"`
SkipCertVerify bool `yaml:"skip-cert-verify,omitempty" json:"skip-cert-verify,omitempty"`
ServerName string `yaml:"servername,omitempty" json:"servername,omitempty"`
}
func ParseVmessLink ¶
func (Vmess) Identifier ¶
Click to show internal directories.
Click to hide internal directories.