1
0
mirror of https://github.com/nitezs/sub2clash.git synced 2024-12-23 20:54:42 -05:00

Merge pull request #20 from QiChaiQiChai/dev

fix: hysteria 缺失参数 @QiChaiQiChai 
update: 策略组 icon 支持 @QiChaiQiChai
This commit is contained in:
Nite07 2024-03-11 12:40:29 +08:00 committed by GitHub
commit 0681f599f1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 18 additions and 0 deletions

View File

@ -56,6 +56,9 @@ type Proxy struct {
DisableMTUDiscovery bool `yaml:"disable-mtu-discovery,omitempty"` DisableMTUDiscovery bool `yaml:"disable-mtu-discovery,omitempty"`
FastOpen bool `yaml:"fast-open,omitempty"` FastOpen bool `yaml:"fast-open,omitempty"`
HopInterval int `yaml:"hop-interval,omitempty"` HopInterval int `yaml:"hop-interval,omitempty"`
Ports string `yaml:"ports,omitempty"`
AuthStringOLD string `yaml:"auth_str,omitempty"`
AuthString string `yaml:"auth-str,omitempty"`
} }
func (p Proxy) MarshalYAML() (interface{}, error) { func (p Proxy) MarshalYAML() (interface{}, error) {

View File

@ -17,6 +17,7 @@ type ProxyGroup struct {
Size int `yaml:"-"` Size int `yaml:"-"`
DisableUDP bool `yaml:"disable-udp,omitempty"` DisableUDP bool `yaml:"disable-udp,omitempty"`
Strategy string `yaml:"strategy,omitempty"` Strategy string `yaml:"strategy,omitempty"`
Icon string `yaml:"icon,omitempty"`
} }
type SelectProxyGroup struct { type SelectProxyGroup struct {
@ -24,6 +25,7 @@ type SelectProxyGroup struct {
Type string `yaml:"type,omitempty"` Type string `yaml:"type,omitempty"`
Proxies []string `yaml:"proxies,omitempty"` Proxies []string `yaml:"proxies,omitempty"`
DisableUDP bool `yaml:"disable-udp,omitempty"` DisableUDP bool `yaml:"disable-udp,omitempty"`
Icon string `yaml:"icon,omitempty"`
} }
type UrlTestProxyGroup struct { type UrlTestProxyGroup struct {
@ -35,6 +37,7 @@ type UrlTestProxyGroup struct {
Tolerance int `yaml:"tolerance,omitempty"` Tolerance int `yaml:"tolerance,omitempty"`
Lazy bool `yaml:"lazy"` Lazy bool `yaml:"lazy"`
DisableUDP bool `yaml:"disable-udp,omitempty"` DisableUDP bool `yaml:"disable-udp,omitempty"`
Icon string `yaml:"icon,omitempty"`
} }
type LoadBalanceProxyGroup struct { type LoadBalanceProxyGroup struct {
@ -46,12 +49,14 @@ type LoadBalanceProxyGroup struct {
Interval int `yaml:"interval,omitempty"` Interval int `yaml:"interval,omitempty"`
Lazy bool `yaml:"lazy"` Lazy bool `yaml:"lazy"`
Strategy string `yaml:"strategy,omitempty"` Strategy string `yaml:"strategy,omitempty"`
Icon string `yaml:"icon,omitempty"`
} }
type RelayProxyGroup struct { type RelayProxyGroup struct {
Name string `yaml:"name,omitempty"` Name string `yaml:"name,omitempty"`
Type string `yaml:"type,omitempty"` Type string `yaml:"type,omitempty"`
Proxies []string `yaml:"proxies,omitempty"` Proxies []string `yaml:"proxies,omitempty"`
Icon string `yaml:"icon,omitempty"`
} }
func (p ProxyGroup) MarshalYAML() (interface{}, error) { func (p ProxyGroup) MarshalYAML() (interface{}, error) {
@ -62,6 +67,7 @@ func (p ProxyGroup) MarshalYAML() (interface{}, error) {
Type: p.Type, Type: p.Type,
Proxies: p.Proxies, Proxies: p.Proxies,
DisableUDP: p.DisableUDP, DisableUDP: p.DisableUDP,
Icon: p.Icon,
}, nil }, nil
case "url-test", "fallback": case "url-test", "fallback":
return UrlTestProxyGroup{ return UrlTestProxyGroup{
@ -73,6 +79,7 @@ func (p ProxyGroup) MarshalYAML() (interface{}, error) {
Tolerance: p.Tolerance, Tolerance: p.Tolerance,
Lazy: p.Lazy, Lazy: p.Lazy,
DisableUDP: p.DisableUDP, DisableUDP: p.DisableUDP,
Icon: p.Icon,
}, nil }, nil
case "load-balance": case "load-balance":
return LoadBalanceProxyGroup{ return LoadBalanceProxyGroup{
@ -84,18 +91,21 @@ func (p ProxyGroup) MarshalYAML() (interface{}, error) {
Interval: p.Interval, Interval: p.Interval,
Lazy: p.Lazy, Lazy: p.Lazy,
Strategy: p.Strategy, Strategy: p.Strategy,
Icon: p.Icon,
}, nil }, nil
case "relay": case "relay":
return RelayProxyGroup{ return RelayProxyGroup{
Name: p.Name, Name: p.Name,
Type: p.Type, Type: p.Type,
Proxies: p.Proxies, Proxies: p.Proxies,
Icon: p.Icon,
}, nil }, nil
default: default:
return SelectProxyGroup{ return SelectProxyGroup{
Name: p.Name, Name: p.Name,
Type: p.Type, Type: p.Type,
Proxies: p.Proxies, Proxies: p.Proxies,
Icon: p.Icon,
}, nil }, nil
} }
} }

View File

@ -13,6 +13,7 @@ type Hysteria struct {
Down string `yaml:"down"` Down string `yaml:"down"`
DownSpeed int `yaml:"down-speed,omitempty"` // compatible with Stash DownSpeed int `yaml:"down-speed,omitempty"` // compatible with Stash
Auth string `yaml:"auth,omitempty"` Auth string `yaml:"auth,omitempty"`
AuthStringOLD string `yaml:"auth_str,omitempty"`
AuthString string `yaml:"auth-str,omitempty"` AuthString string `yaml:"auth-str,omitempty"`
Obfs string `yaml:"obfs,omitempty"` Obfs string `yaml:"obfs,omitempty"`
SNI string `yaml:"sni,omitempty"` SNI string `yaml:"sni,omitempty"`
@ -34,9 +35,13 @@ func ProxyToHysteria(p Proxy) Hysteria {
Name: p.Name, Name: p.Name,
Server: p.Server, Server: p.Server,
Port: p.Port, Port: p.Port,
Ports: p.Ports,
Protocol: p.Protocol,
Up: p.Up, Up: p.Up,
Down: p.Down, Down: p.Down,
Auth: p.Auth, Auth: p.Auth,
AuthStringOLD: p.AuthStringOLD,
AuthString: p.AuthString,
Obfs: p.Obfs, Obfs: p.Obfs,
SNI: p.Sni, SNI: p.Sni,
SkipCertVerify: p.SkipCertVerify, SkipCertVerify: p.SkipCertVerify,