buffer+pool: add buffer.Read and pool.ReadBuffer

This commit is contained in:
Conner Fromknecht
2019-02-15 19:27:16 -08:00
parent 6f96d04b72
commit 5d9514fbe4
3 changed files with 91 additions and 0 deletions

19
buffer/read.go Normal file
View File

@ -0,0 +1,19 @@
package buffer
import (
"github.com/lightningnetwork/lnd/lnwire"
)
// ReadSize represents the size of the maximum message that can be read off the
// wire by brontide. The buffer is used to hold the ciphertext while the
// brontide state machine decrypts the message.
const ReadSize = lnwire.MaxMessagePayload + 16
// Read is a static byte array sized to the maximum-allowed Lightning message
// size, plus 16 bytes for the MAC.
type Read [ReadSize]byte
// Recycle zeroes the Read, making it fresh for another use.
func (b *Read) Recycle() {
RecycleSlice(b[:])
}