From 6a9069ca72cdf5118e1a2b30b462184dc790b48f Mon Sep 17 00:00:00 2001 From: 9seconds Date: Mon, 23 Mar 2020 10:53:58 +0300 Subject: [PATCH] Fixes --- wrappers/stream/obfuscated2.go | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/wrappers/stream/obfuscated2.go b/wrappers/stream/obfuscated2.go index 8947d13..603319f 100644 --- a/wrappers/stream/obfuscated2.go +++ b/wrappers/stream/obfuscated2.go @@ -21,11 +21,8 @@ var ( } ) -func poolWrapperObfuscated2WritePoolAcquire(size int) *bytes.Buffer { - buf := poolWrapperObfuscated2WritePool.Get().(*bytes.Buffer) - buf.Grow(size) - - return buf +func poolWrapperObfuscated2WritePoolAcquire() *bytes.Buffer { + return poolWrapperObfuscated2WritePool.Get().(*bytes.Buffer) } func poolWrapperObfuscated2WritePoolRelease(buf *bytes.Buffer) { @@ -62,22 +59,26 @@ func (w *wrapperObfuscated2) Read(p []byte) (int, error) { } func (w *wrapperObfuscated2) WriteTimeout(p []byte, timeout time.Duration) (int, error) { - buffer := poolWrapperObfuscated2WritePoolAcquire(len(p)) + buffer := poolWrapperObfuscated2WritePoolAcquire() defer poolWrapperObfuscated2WritePoolRelease(buffer) + buffer.Write(p) + buf := buffer.Bytes() - copy(buf, p) + w.encryptor.XORKeyStream(buf, buf) return w.parent.WriteTimeout(buf, timeout) } func (w *wrapperObfuscated2) Write(p []byte) (int, error) { - buffer := poolWrapperObfuscated2WritePoolAcquire(len(p)) + buffer := poolWrapperObfuscated2WritePoolAcquire() defer poolWrapperObfuscated2WritePoolRelease(buffer) + buffer.Write(p) + buf := buffer.Bytes() - copy(buf, p) + w.encryptor.XORKeyStream(buf, buf) return w.parent.Write(buf)