From 70aa04354aa1a394c1ae9425a36d7fe69b4ec43f Mon Sep 17 00:00:00 2001 From: Andy Wang Date: Fri, 17 Apr 2020 01:03:36 +0100 Subject: [PATCH] Bounds check elimination --- internal/common/tls.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/internal/common/tls.go b/internal/common/tls.go index 53b6b2a..7b234d9 100644 --- a/internal/common/tls.go +++ b/internal/common/tls.go @@ -19,11 +19,12 @@ const ( func AddRecordLayer(input []byte, typ byte, ver uint16) []byte { msgLen := len(input) + retLen := msgLen + recordLayerLength var ret []byte - if cap(input) > msgLen+recordLayerLength { - ret = input[:msgLen+recordLayerLength] + if cap(input) >= retLen { + ret = input[:retLen] } else { - ret = make([]byte, msgLen+recordLayerLength) + ret = make([]byte, retLen) } copy(ret[recordLayerLength:], input) ret[0] = typ