Fix buffer usage

This commit is contained in:
世界 2023-12-08 18:14:33 +08:00
parent fed8d42732
commit a9d165b21b
No known key found for this signature in database
GPG key ID: CD109927C34A63C4
2 changed files with 3 additions and 3 deletions

View file

@ -294,7 +294,7 @@ func (c *clientConn) writeRequest(payload []byte) error {
payloadLen := len(payload)
variableLengthHeaderLen += payloadLen
common.Must(binary.Write(fixedLengthBuffer, binary.BigEndian, uint16(variableLengthHeaderLen)))
writer.WriteChunk(header, fixedLengthBuffer.Slice())
writer.WriteChunk(header, fixedLengthBuffer.Bytes())
variableLengthBuffer := buf.NewSize(variableLengthHeaderLen)
err = M.SocksaddrSerializer.WriteAddrPort(variableLengthBuffer, c.destination)
@ -308,7 +308,7 @@ func (c *clientConn) writeRequest(payload []byte) error {
if payloadLen > 0 {
common.Must1(variableLengthBuffer.Write(payload[:payloadLen]))
}
writer.WriteChunk(header, variableLengthBuffer.Slice())
writer.WriteChunk(header, variableLengthBuffer.Bytes())
variableLengthBuffer.Release()
err = writer.BufferedWriter(header.Len()).Flush()

View file

@ -287,7 +287,7 @@ func (c *serverConn) writeResponse(payload []byte) (n int, err error) {
common.Must1(headerFixedChunk.Write(c.requestSalt))
common.Must(binary.Write(headerFixedChunk, binary.BigEndian, uint16(payloadLen)))
writer.WriteChunk(header, headerFixedChunk.Slice())
writer.WriteChunk(header, headerFixedChunk.Bytes())
headerFixedChunk.Release()
c.requestSalt = nil