Browse Source

Fix SOCKS outbound

世界 2 years ago
parent
commit
be61ca64d4
1 changed files with 10 additions and 2 deletions
  1. 10 2
      outbound/socks.go

+ 10 - 2
outbound/socks.go

@@ -113,9 +113,17 @@ func (h *Socks) ListenPacket(ctx context.Context, destination M.Socksaddr) (net.
 }
 }
 
 
 func (h *Socks) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error {
 func (h *Socks) NewConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error {
-	return NewDirectConnection(ctx, h.router, h, conn, metadata)
+	if h.resolve {
+		return NewDirectConnection(ctx, h.router, h, conn, metadata)
+	} else {
+		return NewConnection(ctx, h, conn, metadata)
+	}
 }
 }
 
 
 func (h *Socks) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error {
 func (h *Socks) NewPacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error {
-	return NewDirectPacketConnection(ctx, h.router, h, conn, metadata)
+	if h.resolve {
+		return NewDirectPacketConnection(ctx, h.router, h, conn, metadata)
+	} else {
+		return NewPacketConnection(ctx, h, conn, metadata)
+	}
 }
 }