From 61c7be669b64a942df4bfb2423c6ea424412b8d3 Mon Sep 17 00:00:00 2001 From: Sean Parkinson Date: Mon, 12 Nov 2018 17:37:34 +1000 Subject: [PATCH] Fix for checking of TLS padding when padding byte value > msg len --- src/internal.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/internal.c b/src/internal.c index d5cf35026..b0e5b086b 100644 --- a/src/internal.c +++ b/src/internal.c @@ -12417,8 +12417,8 @@ static byte MaskMac(const byte* data, int sz, int macSz, byte* expMac) unsigned char started, notEnded; unsigned char good = 0; - if (scanStart < 0) - scanStart = 0; + scanStart &= (~scanStart) >> (sizeof(int) * 8 - 1); + macStart &= (~macStart) >> (sizeof(int) * 8 - 1); /* Div on Intel has different speeds depending on value. * Use a bitwise AND or mod a specific value (converted to mul). */