mirror of
https://github.com/wyx2685/V2bX.git
synced 2026-02-04 04:30:08 +00:00
fix: xray内核使用自有连接时报空指针BUG
This commit is contained in:
@@ -151,14 +151,9 @@ func (d *DefaultDispatcher) getLink(ctx context.Context, network net.Network) (*
|
|||||||
uplinkReader, uplinkWriter := pipe.New(opt...)
|
uplinkReader, uplinkWriter := pipe.New(opt...)
|
||||||
downlinkReader, downlinkWriter := pipe.New(opt...)
|
downlinkReader, downlinkWriter := pipe.New(opt...)
|
||||||
|
|
||||||
managedWriter := &ManagedWriter{
|
|
||||||
writer: uplinkWriter,
|
|
||||||
manager: d.Wm,
|
|
||||||
}
|
|
||||||
|
|
||||||
inboundLink := &transport.Link{
|
inboundLink := &transport.Link{
|
||||||
Reader: downlinkReader,
|
Reader: downlinkReader,
|
||||||
Writer: managedWriter,
|
Writer: uplinkWriter,
|
||||||
}
|
}
|
||||||
|
|
||||||
outboundLink := &transport.Link{
|
outboundLink := &transport.Link{
|
||||||
@@ -198,6 +193,13 @@ func (d *DefaultDispatcher) getLink(ctx context.Context, network net.Network) (*
|
|||||||
common.Interrupt(inboundLink.Reader)
|
common.Interrupt(inboundLink.Reader)
|
||||||
return nil, nil, nil, errors.New("Limited ", user.Email, " by conn or ip")
|
return nil, nil, nil, errors.New("Limited ", user.Email, " by conn or ip")
|
||||||
}
|
}
|
||||||
|
managedWriter := &ManagedWriter{
|
||||||
|
writer: uplinkWriter,
|
||||||
|
email: user.Email,
|
||||||
|
manager: d.Wm,
|
||||||
|
}
|
||||||
|
d.Wm.AddWriter(managedWriter)
|
||||||
|
inboundLink.Writer = managedWriter
|
||||||
if w != nil {
|
if w != nil {
|
||||||
inboundLink.Writer = rate.NewRateLimitWriter(inboundLink.Writer, w)
|
inboundLink.Writer = rate.NewRateLimitWriter(inboundLink.Writer, w)
|
||||||
outboundLink.Writer = rate.NewRateLimitWriter(outboundLink.Writer, w)
|
outboundLink.Writer = rate.NewRateLimitWriter(outboundLink.Writer, w)
|
||||||
@@ -222,8 +224,6 @@ func (d *DefaultDispatcher) getLink(ctx context.Context, network net.Network) (*
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
managedWriter.email = user.Email
|
|
||||||
d.Wm.AddWriter(managedWriter)
|
|
||||||
|
|
||||||
return inboundLink, outboundLink, limit, nil
|
return inboundLink, outboundLink, limit, nil
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user