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/libjcat-0.1.3/libjcat/jcat-blob-private.h Examining data/libjcat-0.1.3/libjcat/jcat-blob.c Examining data/libjcat-0.1.3/libjcat/jcat-blob.h Examining data/libjcat-0.1.3/libjcat/jcat-common-private.h Examining data/libjcat-0.1.3/libjcat/jcat-common.c Examining data/libjcat-0.1.3/libjcat/jcat-common.h Examining data/libjcat-0.1.3/libjcat/jcat-context-private.h Examining data/libjcat-0.1.3/libjcat/jcat-context.c Examining data/libjcat-0.1.3/libjcat/jcat-context.h Examining data/libjcat-0.1.3/libjcat/jcat-engine-private.h Examining data/libjcat-0.1.3/libjcat/jcat-engine.c Examining data/libjcat-0.1.3/libjcat/jcat-engine.h Examining data/libjcat-0.1.3/libjcat/jcat-file-private.h Examining data/libjcat-0.1.3/libjcat/jcat-file.c Examining data/libjcat-0.1.3/libjcat/jcat-file.h Examining data/libjcat-0.1.3/libjcat/jcat-gpg-engine.c Examining data/libjcat-0.1.3/libjcat/jcat-gpg-engine.h Examining data/libjcat-0.1.3/libjcat/jcat-item-private.h Examining data/libjcat-0.1.3/libjcat/jcat-item.c Examining data/libjcat-0.1.3/libjcat/jcat-item.h Examining data/libjcat-0.1.3/libjcat/jcat-pkcs7-common.c Examining data/libjcat-0.1.3/libjcat/jcat-pkcs7-common.h Examining data/libjcat-0.1.3/libjcat/jcat-pkcs7-engine.c Examining data/libjcat-0.1.3/libjcat/jcat-pkcs7-engine.h Examining data/libjcat-0.1.3/libjcat/jcat-result-private.h Examining data/libjcat-0.1.3/libjcat/jcat-result.c Examining data/libjcat-0.1.3/libjcat/jcat-result.h Examining data/libjcat-0.1.3/libjcat/jcat-self-test.c Examining data/libjcat-0.1.3/libjcat/jcat-sha1-engine.c Examining data/libjcat-0.1.3/libjcat/jcat-sha1-engine.h Examining data/libjcat-0.1.3/libjcat/jcat-sha256-engine.c Examining data/libjcat-0.1.3/libjcat/jcat-sha256-engine.h Examining data/libjcat-0.1.3/libjcat/jcat-tool.c Examining data/libjcat-0.1.3/libjcat/jcat.h FINAL RESULTS: data/libjcat-0.1.3/libjcat/jcat-blob.c:205:34: [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). priv->data = g_bytes_new (tmp, strlen (tmp)); data/libjcat-0.1.3/libjcat/jcat-blob.c:431:34: [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). priv->data = g_bytes_new (data, strlen (data)); data/libjcat-0.1.3/libjcat/jcat-self-test.c:231:46: [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). blob_sig1 = g_bytes_new_static (sig_actual, strlen (sig_actual)); data/libjcat-0.1.3/libjcat/jcat-self-test.c:289:46: [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). blob_sig1 = g_bytes_new_static (sig_actual, strlen (sig_actual)); data/libjcat-0.1.3/libjcat/jcat-self-test.c:371:45: [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). data_sig = g_bytes_new_static (sig_actual, strlen (sig_actual)); data/libjcat-0.1.3/libjcat/jcat-self-test.c:440:38: [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). data_sig = g_bytes_new_static (sig, strlen (sig)); data/libjcat-0.1.3/libjcat/jcat-sha1-engine.c:41:31: [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). data_tmp = g_bytes_new (tmp, strlen (tmp)); data/libjcat-0.1.3/libjcat/jcat-sha256-engine.c:41:31: [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). data_tmp = g_bytes_new (tmp, strlen (tmp)); data/libjcat-0.1.3/libjcat/jcat-tool.c:123:9: [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). len = strlen (item->name) + 2; data/libjcat-0.1.3/libjcat/jcat-tool.c:127:11: [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). len += strlen (item->arguments) + 1; ANALYSIS SUMMARY: Hits = 10 Lines analyzed = 6057 in approximately 0.18 seconds (34254 lines/second) Physical Source Lines of Code (SLOC) = 4363 Hits@level = [0] 0 [1] 10 [2] 0 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 10 [1+] 10 [2+] 0 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 2.292 [1+] 2.292 [2+] 0 [3+] 0 [4+] 0 [5+] 0 Dot directories skipped = 2 (--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.