Browse Source

Do not convert @ to \x00

RPRX 5 years ago
parent
commit
16fe0b03f6
3 changed files with 3 additions and 10 deletions
  1. 1 4
      infra/conf/vless.go
  2. 1 1
      infra/conf/vless_test.go
  3. 1 5
      proxy/vless/inbound/inbound.go

+ 1 - 4
infra/conf/vless.go

@@ -97,10 +97,7 @@ func (c *VLessInboundConfig) Build() (proto.Message, error) {
 				fb.Type = "serve"
 			} else {
 				switch fb.Dest[0] {
-				case '@':
-					fb.Dest = "\x00" + fb.Dest[1:]
-					fallthrough
-				case '/':
+				case '@', '/':
 					fb.Type = "unix"
 				default:
 					if _, err := strconv.Atoi(fb.Dest); err == nil {

+ 1 - 1
infra/conf/vless_test.go

@@ -113,7 +113,7 @@ func TestVLessInbound(t *testing.T) {
 						Alpn: "h2",
 						Path: "",
 						Type: "unix",
-						Dest: "\x00/dev/shm/domain.socket",
+						Dest: "@/dev/shm/domain.socket",
 						Xver: 2,
 					},
 					{

+ 1 - 5
proxy/vless/inbound/inbound.go

@@ -260,11 +260,7 @@ func (h *Handler) Process(ctx context.Context, network net.Network, connection i
 				}
 				return nil
 			}); err != nil {
-				dest := fb.Dest
-				if dest[0] == '\x00' {
-					dest = "@" + dest[1:]
-				}
-				return newError("failed to dial to " + dest).Base(err).AtWarning()
+				return newError("failed to dial to " + fb.Dest).Base(err).AtWarning()
 			}
 			defer conn.Close() // nolint: errcheck