Decrease a relay buffer size for MIPS devices

This commit is contained in:
9seconds
2026-03-29 21:42:26 +02:00
parent 1725a0d721
commit d3a090d6b4
4 changed files with 43 additions and 12 deletions
+3 -12
View File
@@ -4,19 +4,10 @@ import (
"context"
"errors"
"io"
"sync"
"github.com/9seconds/mtg/v2/essentials"
"github.com/9seconds/mtg/v2/mtglib/internal/tls"
)
var bufPool = sync.Pool{
New: func() any {
b := make([]byte, tls.MaxRecordPayloadSize)
return &b
},
}
func Relay(ctx context.Context, log Logger, telegramConn, clientConn essentials.Conn) {
defer telegramConn.Close() //nolint: errcheck
defer clientConn.Close() //nolint: errcheck
@@ -44,13 +35,13 @@ func Relay(ctx context.Context, log Logger, telegramConn, clientConn essentials.
}
func pump(log Logger, src, dst essentials.Conn, direction string) {
bp := bufPool.Get().(*[]byte)
defer bufPool.Put(bp)
buf := acquireBuffer()
defer releaseBuffer(buf)
defer src.CloseRead() //nolint: errcheck
defer dst.CloseWrite() //nolint: errcheck
n, err := io.CopyBuffer(src, dst, *bp)
n, err := io.CopyBuffer(src, dst, *buf)
switch {
case err == nil: