|
|
@@ -13,15 +13,6 @@ import (
|
|
13
|
13
|
|
|
14
|
14
|
const directPipeBufferSize = 1024
|
|
15
|
15
|
|
|
16
|
|
-var (
|
|
17
|
|
- directPipePool = sync.Pool{
|
|
18
|
|
- New: func() interface{} {
|
|
19
|
|
- rv := make([]byte, directPipeBufferSize)
|
|
20
|
|
- return &rv
|
|
21
|
|
- },
|
|
22
|
|
- }
|
|
23
|
|
-)
|
|
24
|
|
-
|
|
25
|
16
|
func directConnection(request *protocol.TelegramRequest) error {
|
|
26
|
17
|
telegramConnRaw, err := obfuscated2.TelegramProtocol(request)
|
|
27
|
18
|
if err != nil {
|
|
|
@@ -51,10 +42,9 @@ func directPipe(dst io.WriteCloser, src io.ReadCloser, wg *sync.WaitGroup, logge
|
|
51
|
42
|
wg.Done()
|
|
52
|
43
|
}()
|
|
53
|
44
|
|
|
54
|
|
- buf := directPipePool.Get().(*[]byte)
|
|
55
|
|
- defer directPipePool.Put(buf)
|
|
|
45
|
+ buf := [directPipeBufferSize]byte{}
|
|
56
|
46
|
|
|
57
|
|
- if _, err := io.CopyBuffer(dst, src, *buf); err != nil {
|
|
|
47
|
+ if _, err := io.CopyBuffer(dst, src, buf[:]); err != nil {
|
|
58
|
48
|
logger.Debugw("Cannot pump sockets", "error", err)
|
|
59
|
49
|
}
|
|
60
|
50
|
}
|