dokodemo.go 690 B

1234567891011121314151617181920212223242526
  1. package conf
  2. import (
  3. "github.com/xtls/xray-core/proxy/dokodemo"
  4. "google.golang.org/protobuf/proto"
  5. )
  6. type DokodemoConfig struct {
  7. Address *Address `json:"address"`
  8. Port uint16 `json:"port"`
  9. Network *NetworkList `json:"network"`
  10. FollowRedirect bool `json:"followRedirect"`
  11. UserLevel uint32 `json:"userLevel"`
  12. }
  13. func (v *DokodemoConfig) Build() (proto.Message, error) {
  14. config := new(dokodemo.Config)
  15. if v.Address != nil {
  16. config.Address = v.Address.Build()
  17. }
  18. config.Port = uint32(v.Port)
  19. config.Networks = v.Network.Build()
  20. config.FollowRedirect = v.FollowRedirect
  21. config.UserLevel = v.UserLevel
  22. return config, nil
  23. }