Inbound worker should fill context outbounds info

https://github.com/XTLS/Xray-core/issues/3388
This commit is contained in:
yuhan6665 2024-05-25 19:10:59 -04:00
parent ca07a705dc
commit 0a3c449cdf

View file

@ -308,12 +308,11 @@ func (w *udpWorker) callback(b *buf.Buffer, source net.Destination, originalDest
sid := session.NewID() sid := session.NewID()
ctx = session.ContextWithID(ctx, sid) ctx = session.ContextWithID(ctx, sid)
outbounds := []*session.Outbound{{}}
if originalDest.IsValid() { if originalDest.IsValid() {
outbounds := []*session.Outbound{{ outbounds[0].Target = originalDest
Target: originalDest,
}}
ctx = session.ContextWithOutbounds(ctx, outbounds)
} }
ctx = session.ContextWithOutbounds(ctx, outbounds)
ctx = session.ContextWithInbound(ctx, &session.Inbound{ ctx = session.ContextWithInbound(ctx, &session.Inbound{
Source: source, Source: source,
Gateway: net.UDPDestination(w.address, w.port), Gateway: net.UDPDestination(w.address, w.port),