github.com/ipfans/trojan-go@v0.11.0/tunnel/freedom/config.go (about) 1 package freedom 2 3 import "github.com/ipfans/trojan-go/config" 4 5 type Config struct { 6 LocalHost string `json:"local_addr" yaml:"local-addr"` 7 LocalPort int `json:"local_port" yaml:"local-port"` 8 TCP TCPConfig `json:"tcp" yaml:"tcp"` 9 ForwardProxy ForwardProxyConfig `json:"forward_proxy" yaml:"forward-proxy"` 10 } 11 12 type TCPConfig struct { 13 PreferIPV4 bool `json:"prefer_ipv4" yaml:"prefer-ipv4"` 14 KeepAlive bool `json:"keep_alive" yaml:"keep-alive"` 15 NoDelay bool `json:"no_delay" yaml:"no-delay"` 16 } 17 18 type ForwardProxyConfig struct { 19 Enabled bool `json:"enabled" yaml:"enabled"` 20 ProxyHost string `json:"proxy_addr" yaml:"proxy-addr"` 21 ProxyPort int `json:"proxy_port" yaml:"proxy-port"` 22 Username string `json:"username" yaml:"username"` 23 Password string `json:"password" yaml:"password"` 24 } 25 26 func init() { 27 config.RegisterConfigCreator(Name, func() interface{} { 28 return &Config{ 29 TCP: TCPConfig{ 30 PreferIPV4: false, 31 NoDelay: true, 32 KeepAlive: true, 33 }, 34 } 35 }) 36 }