Remove pools from faketls

This commit is contained in:
9seconds
2020-08-10 13:21:30 +03:00
parent e286dea650
commit 3996b9a6b8
3 changed files with 3 additions and 46 deletions
+2 -3
View File
@@ -2,6 +2,7 @@ package faketls
import (
"bufio"
"bytes"
"encoding/binary"
"errors"
"fmt"
@@ -63,9 +64,7 @@ func (c *ClientProtocol) tlsHandshake(conn io.ReadWriter) error {
return fmt.Errorf("cannot read initial record: %w", err)
}
buf := acquireBytesBuffer()
defer releaseBytesBuffer(buf)
buf := &bytes.Buffer{}
helloRecord.Data.WriteBytes(buf)
clientHello, err := tlstypes.ParseClientHello(buf.Bytes())
+1 -4
View File
@@ -67,8 +67,5 @@ func cloak(one, another io.ReadWriteCloser) {
func cloakPipe(one io.Writer, another io.Reader, wg *sync.WaitGroup) {
defer wg.Done()
buf := acquireCloakBuffer()
defer releaseCloakBuffer(buf)
io.CopyBuffer(one, another, *buf) // nolint: errcheck
io.Copy(one, another) // nolint: errcheck
}
-39
View File
@@ -1,39 +0,0 @@
package faketls
import (
"bytes"
"sync"
)
const cloakBufferSize = 1024
var (
poolBytesBuffer = sync.Pool{
New: func() interface{} {
return &bytes.Buffer{}
},
}
poolCloakBuffer = sync.Pool{
New: func() interface{} {
rv := make([]byte, cloakBufferSize)
return &rv
},
}
)
func acquireBytesBuffer() *bytes.Buffer {
return poolBytesBuffer.Get().(*bytes.Buffer)
}
func acquireCloakBuffer() *[]byte {
return poolCloakBuffer.Get().(*[]byte)
}
func releaseBytesBuffer(buf *bytes.Buffer) {
buf.Reset()
poolBytesBuffer.Put(buf)
}
func releaseCloakBuffer(buf *[]byte) {
poolCloakBuffer.Put(buf)
}