]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
Fix a Coverity error by avoiding a memset with zero length.
authorRoy Marples <roy@marples.name>
Tue, 3 May 2016 10:25:42 +0000 (10:25 +0000)
committerRoy Marples <roy@marples.name>
Tue, 3 May 2016 10:25:42 +0000 (10:25 +0000)
crypt/hmac_md5.c

index 453ea090f4de4032d1a56b6e55fc478fb4ee7bbf..476bf647e3c86009aa7a2cc7e86187da0ca8798a 100644 (file)
@@ -66,8 +66,10 @@ hmac_md5(const uint8_t *text, size_t text_len,
        /* store key in pads */
        memcpy(k_ipad, key, key_len);
        memcpy(k_opad, key, key_len);
-       memset(k_ipad + key_len, 0, sizeof(k_ipad) - key_len);
-       memset(k_opad + key_len, 0, sizeof(k_opad) - key_len);
+       if (key_len != HMAC_PAD_LEN) {
+               memset(k_ipad + key_len, 0, sizeof(k_ipad) - key_len);
+               memset(k_opad + key_len, 0, sizeof(k_opad) - key_len);
+       }
 
        /* XOR key with ipad and opad values */
        for (i = 0; i < HMAC_PAD_LEN; i++) {