tls: in AES-GCM decoding, avoid memmove

function                                             old     new   delta
xorbuf3                                                -      36     +36
xorbuf                                                24      12     -12
tls_xread_record                                     656     634     -22
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/2 up/down: 36/-34)              Total: 2 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko
2018-11-24 13:51:46 +01:00
parent 985702c892
commit 941440cf16
4 changed files with 17 additions and 15 deletions

View File

@@ -11,15 +11,6 @@ typedef uint32_t word32;
#define XMEMSET memset
#define XMEMCPY memcpy
void FAST_FUNC xorbuf(void* buf, const void* mask, unsigned count)
{
word32 i;
byte* b = (byte*)buf;
const byte* m = (const byte*)mask;
for (i = 0; i < count; i++)
b[i] ^= m[i];
}
/* from wolfssl-3.15.3/wolfcrypt/src/aes.c */
static ALWAYS_INLINE void FlattenSzInBits(byte* buf, word32 sz)