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/gnome-multi-writer-3.32.1/src/gmw-cleanup.h Examining data/gnome-multi-writer-3.32.1/src/gmw-device.c Examining data/gnome-multi-writer-3.32.1/src/gmw-device.h Examining data/gnome-multi-writer-3.32.1/src/gmw-main.c Examining data/gnome-multi-writer-3.32.1/src/gmw-probe.c FINAL RESULTS: data/gnome-multi-writer-3.32.1/src/gmw-probe.c:72:13: [3] (random) g_random_int_range: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. data[i] = g_random_int_range ('a', 'z'); data/gnome-multi-writer-3.32.1/src/gmw-probe.c:183:18: [3] (random) g_random_int_range: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. item->offset = g_random_int_range (1, 0xff); data/gnome-multi-writer-3.32.1/src/gmw-probe.c:239:20: [3] (random) g_random_int_range: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. guint32 offset = g_random_int_range (1, 0xff); data/gnome-multi-writer-3.32.1/src/gmw-main.c:263:8: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). idx = atoi (uri); data/gnome-multi-writer-3.32.1/src/gmw-probe.c:153:15: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). bytes_read = read (dev->fd, buf, len); ANALYSIS SUMMARY: Hits = 5 Lines analyzed = 3346 in approximately 0.12 seconds (26880 lines/second) Physical Source Lines of Code (SLOC) = 2623 Hits@level = [0] 0 [1] 1 [2] 1 [3] 3 [4] 0 [5] 0 Hits@level+ = [0+] 5 [1+] 5 [2+] 4 [3+] 3 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 1.90621 [1+] 1.90621 [2+] 1.52497 [3+] 1.14373 [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.