Browse Source

announce deprecated proto settings

Darien Raymond 7 years ago
parent
commit
909cb9b27a
6 changed files with 18 additions and 0 deletions
  1. 3 0
      app/dns/hosts.go
  2. 4 0
      app/dns/server.go
  3. 4 0
      functions.go
  4. 3 0
      proxy/socks/server.go
  5. 1 0
      transport/config.proto
  6. 3 0
      v2ray.go

+ 3 - 0
app/dns/hosts.go

@@ -1,6 +1,7 @@
 package dns
 
 import (
+	"v2ray.com/core"
 	"v2ray.com/core/common"
 	"v2ray.com/core/common/net"
 	"v2ray.com/core/common/strmatcher"
@@ -38,6 +39,8 @@ func NewStaticHosts(hosts []*Config_HostMapping, legacy map[string]*net.IPOrDoma
 	}
 
 	if legacy != nil {
+		core.PrintDeprecatedFeatureWarning("simple host mapping")
+
 		for domain, ip := range legacy {
 			matcher, err := strmatcher.Full.New(domain)
 			common.Must(err)

+ 4 - 0
app/dns/server.go

@@ -60,6 +60,10 @@ func New(ctx context.Context, config *Config) (*Server, error) {
 		return len(server.servers) - 1
 	}
 
+	if len(config.NameServers) > 0 {
+		core.PrintDeprecatedFeatureWarning("simple DNS server")
+	}
+
 	for _, destPB := range config.NameServers {
 		addNameServer(destPB)
 	}

+ 4 - 0
functions.go

@@ -14,3 +14,7 @@ func CreateObject(v *Instance, config interface{}) (interface{}, error) {
 	}
 	return common.CreateObject(ctx, config)
 }
+
+func PrintDeprecatedFeatureWarning(feature string) {
+	newError("You are using a deprecated feature: " + feature + ". Please update your config file with latest configuration format, or update your client software.")
+}

+ 3 - 0
proxy/socks/server.go

@@ -37,6 +37,9 @@ func NewServer(ctx context.Context, config *ServerConfig) (*Server, error) {
 func (s *Server) policy() core.Policy {
 	config := s.config
 	p := s.v.PolicyManager().ForLevel(config.UserLevel)
+	if config.Timeout > 0 {
+		core.PrintDeprecatedFeatureWarning("Socks timeout")
+	}
 	if config.Timeout > 0 && config.UserLevel == 0 {
 		p.Timeouts.ConnectionIdle = time.Duration(config.Timeout) * time.Second
 	}

+ 1 - 0
transport/config.proto

@@ -9,6 +9,7 @@ option java_multiple_files = true;
 import "v2ray.com/core/transport/internet/config.proto";
 
 // Global transport settings. This affects all type of connections that go through V2Ray.
+// Deprecated. Use each settings in StreamConfig.
 message Config {
   repeated v2ray.core.transport.internet.TransportConfig transport_settings = 1;
 }

+ 3 - 0
v2ray.go

@@ -45,6 +45,9 @@ func New(config *Config) (*Instance, error) {
 		id: uuid.New(),
 	}
 
+	if config.Transport != nil {
+		PrintDeprecatedFeatureWarning("global tranport settings")
+	}
 	if err := config.Transport.Apply(); err != nil {
 		return nil, err
 	}