Specify //go:inline for all functions in common.go

Even if 2485f4831f
This commit is contained in:
RPRX
2025-08-16 11:32:27 +00:00
committed by GitHub
parent 906b1d51a3
commit 72e3b65233

View File

@@ -16,6 +16,7 @@ import (
var MaxNonce = bytes.Repeat([]byte{255}, 12)
//go:inline
func EncodeHeader(h []byte, t byte, l int) {
switch t {
case 1:
@@ -35,6 +36,7 @@ func EncodeHeader(h []byte, t byte, l int) {
h[4] = byte(l)
}
//go:inline
func DecodeHeader(h []byte) (t byte, l int, err error) {
l = int(h[3])<<8 | int(h[4])
if h[0] == 23 && h[1] == 3 && h[2] == 3 {
@@ -52,6 +54,7 @@ func DecodeHeader(h []byte) (t byte, l int, err error) {
return
}
//go:inline
func ReadAndDecodeHeader(conn net.Conn) (h []byte, t byte, l int, err error) {
h = make([]byte, 5)
if _, err = io.ReadFull(conn, h); err != nil {
@@ -61,6 +64,7 @@ func ReadAndDecodeHeader(conn net.Conn) (h []byte, t byte, l int, err error) {
return
}
//go:inline
func ReadAndDiscardPaddings(conn net.Conn) (h []byte, t byte, l int, err error) {
for {
if h, t, l, err = ReadAndDecodeHeader(conn); err != nil || t != 23 {
@@ -72,6 +76,7 @@ func ReadAndDiscardPaddings(conn net.Conn) (h []byte, t byte, l int, err error)
}
}
//go:inline
func NewAead(c byte, secret, salt, info []byte) (aead cipher.AEAD) {
key := make([]byte, 32)
hkdf.New(sha256.New, secret, salt, info).Read(key)
@@ -84,6 +89,7 @@ func NewAead(c byte, secret, salt, info []byte) (aead cipher.AEAD) {
return
}
//go:inline
func IncreaseNonce(nonce []byte) {
for i := range 12 {
nonce[11-i]++