v2ray-core/proxy/socks/config/json/config.go

32 lines
609 B
Go
Raw Normal View History

package json
import (
"encoding/json"
)
const (
AuthMethodNoAuth = "noauth"
AuthMethodUserPass = "password"
)
type SocksConfig struct {
AuthMethod string `json:"auth"`
Username string `json:"user"`
Password string `json:"pass"`
2015-10-03 09:34:01 +00:00
UDPEnabled bool `json:"udp"`
}
func (config SocksConfig) IsNoAuth() bool {
return config.AuthMethod == AuthMethodNoAuth
}
func (config SocksConfig) IsPassword() bool {
return config.AuthMethod == AuthMethodUserPass
}
func Load(rawConfig []byte) (SocksConfig, error) {
config := SocksConfig{}
err := json.Unmarshal(rawConfig, &config)
return config, err
}