mirror of
https://github.com/v2fly/v2ray-core.git
synced 2026-04-14 01:29:17 -04:00
refactor multibuffer
This commit is contained in:
@@ -92,8 +92,7 @@ func (v *ChunkReader) ReadMultiBuffer() (buf.MultiBuffer, error) {
|
||||
return nil, newError("invalid auth")
|
||||
}
|
||||
|
||||
var mb buf.MultiBuffer
|
||||
common.Must2(mb.Write(payload))
|
||||
mb := buf.MergeBytes(nil, payload)
|
||||
|
||||
return mb, nil
|
||||
}
|
||||
@@ -117,7 +116,7 @@ func (w *ChunkWriter) WriteMultiBuffer(mb buf.MultiBuffer) error {
|
||||
defer buf.ReleaseMulti(mb)
|
||||
|
||||
for {
|
||||
payloadLen, _ := mb.Read(w.buffer[2+AuthSize:])
|
||||
mb, payloadLen, _ := buf.SplitBytes(mb, w.buffer[2+AuthSize:])
|
||||
binary.BigEndian.PutUint16(w.buffer, uint16(payloadLen))
|
||||
w.auth.Authenticate(w.buffer[2+AuthSize:2+AuthSize+payloadLen], w.buffer[2:])
|
||||
if err := buf.WriteAllBytes(w.writer, w.buffer[:2+AuthSize+payloadLen]); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user