Flawfinder version 2.0.10, (C) 2001-2019 David A. Wheeler. Number of rules (primarily dangerous function names) in C/C++ ruleset: 223 Examining data/libbaseencode-1.0.11/src/base32.c Examining data/libbaseencode-1.0.11/src/base64.c Examining data/libbaseencode-1.0.11/src/baseencode.h Examining data/libbaseencode-1.0.11/src/common.h Examining data/libbaseencode-1.0.11/tests/test-base32-decode.c Examining data/libbaseencode-1.0.11/tests/test-base32-encode.c Examining data/libbaseencode-1.0.11/tests/test-base64-decode.c Examining data/libbaseencode-1.0.11/tests/test-base64-encode.c FINAL RESULTS: data/libbaseencode-1.0.11/tests/test-base32-decode.c:11:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *dk = base32_decode(k, strlen(k)+1, &err); data/libbaseencode-1.0.11/tests/test-base32-decode.c:24:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *dk = base32_decode(k, strlen(k), &err); data/libbaseencode-1.0.11/tests/test-base32-decode.c:38:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *dk = base32_decode(k[i], strlen(k[i])+1, &err); data/libbaseencode-1.0.11/tests/test-base32-decode.c:51:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *dk = base32_decode(k[i], strlen(k[i]), &err); data/libbaseencode-1.0.11/tests/test-base32-decode.c:61:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(k); data/libbaseencode-1.0.11/tests/test-base32-decode.c:87:42: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). unsigned char *dk = base32_decode(k, strlen(k), &err); data/libbaseencode-1.0.11/tests/test-base32-encode.c:37:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *ek = base32_encode(k, strlen(k)+1, &err); data/libbaseencode-1.0.11/tests/test-base32-encode.c:50:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *ek = base32_encode(k, strlen(k), &err); data/libbaseencode-1.0.11/tests/test-base32-encode.c:64:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *ek = base32_encode(k[i], strlen(k[i])+1, &err); data/libbaseencode-1.0.11/tests/test-base32-encode.c:77:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *ek = base32_encode(k[i], strlen(k[i]), &err); data/libbaseencode-1.0.11/tests/test-base64-decode.c:11:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *dk = base64_decode(k, strlen(k)+1, &err); data/libbaseencode-1.0.11/tests/test-base64-decode.c:24:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *dk = base64_decode(k, strlen(k), &err); data/libbaseencode-1.0.11/tests/test-base64-decode.c:39:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *dk = base64_decode(k[i], strlen(k[i])+1, &err); data/libbaseencode-1.0.11/tests/test-base64-decode.c:52:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *dk = base64_decode(k[i], strlen(k[i]), &err); data/libbaseencode-1.0.11/tests/test-base64-decode.c:62:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t len = strlen(k); data/libbaseencode-1.0.11/tests/test-base64-decode.c:88:42: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). unsigned char *dk = base64_decode(k, strlen(k), &err); data/libbaseencode-1.0.11/tests/test-base64-encode.c:37:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *ek = base64_encode(k, strlen(k)+1, &err); data/libbaseencode-1.0.11/tests/test-base64-encode.c:50:33: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *ek = base64_encode(k, strlen(k), &err); data/libbaseencode-1.0.11/tests/test-base64-encode.c:64:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *ek = base64_encode(k[i], strlen(k[i])+1, &err); data/libbaseencode-1.0.11/tests/test-base64-encode.c:77:40: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). char *ek = base64_encode(k[i], strlen(k[i]), &err); ANALYSIS SUMMARY: Hits = 20 Lines analyzed = 811 in approximately 0.18 seconds (4525 lines/second) Physical Source Lines of Code (SLOC) = 631 Hits@level = [0] 0 [1] 20 [2] 0 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 20 [1+] 20 [2+] 0 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 31.6957 [1+] 31.6957 [2+] 0 [3+] 0 [4+] 0 [5+] 0 Dot directories skipped = 1 (--followdotdir overrides) Minimum risk level = 1 Not every hit is necessarily a security vulnerability. There may be other security vulnerabilities; review your code! See 'Secure Programming HOWTO' (https://dwheeler.com/secure-programs) for more information.