Remove []byte allocation in vmess

This commit is contained in:
V2Ray committed 2015-10-21 22:28:26 +02:00
1 parent 2c710d6b1c
commit 96c5d32d59
3 files changed
+27 -30

No files matched your search

+3 -3
View File
@@ -124,7 +124,7 @@ func handleRequest(conn net.Conn, request *protocol.VMessRequest, firstPacket v2
}
buffer := alloc.NewBuffer().Clear()
requestBytes, err := request.ToBytes(user.NewTimeHash(user.HMACHash{}), user.GenerateRandomInt64InRange, buffer.Value)
buffer, err = request.ToBytes(user.NewTimeHash(user.HMACHash{}), user.GenerateRandomInt64InRange, buffer)
if err != nil {
log.Error("VMessOut: Failed to serialize VMess request: %v", err)
return
@@ -140,10 +140,10 @@ func handleRequest(conn net.Conn, request *protocol.VMessRequest, firstPacket v2
if firstChunk != nil {
encryptRequestWriter.Crypt(firstChunk.Value)
requestBytes = append(requestBytes, firstChunk.Value...)
buffer.Append(firstChunk.Value)
firstChunk.Release()
_, err = conn.Write(requestBytes)
_, err = conn.Write(buffer.Value)
buffer.Release()
if err != nil {
log.Error("VMessOut: Failed to write VMess request: %v", err)