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/gtherm-0.0.2/cli/gthcli.c Examining data/gtherm-0.0.2/libgtherm/gth-cooling-device.c Examining data/gtherm-0.0.2/libgtherm/gth-cooling-device.h Examining data/gtherm-0.0.2/libgtherm/gth-manager.c Examining data/gtherm-0.0.2/libgtherm/gth-manager.h Examining data/gtherm-0.0.2/libgtherm/gth-names.h Examining data/gtherm-0.0.2/libgtherm/gth-thermal-zone.c Examining data/gtherm-0.0.2/libgtherm/gth-thermal-zone.h Examining data/gtherm-0.0.2/libgtherm/libgtherm.h Examining data/gtherm-0.0.2/src/gthd-cooling-device.c Examining data/gtherm-0.0.2/src/gthd-cooling-device.h Examining data/gtherm-0.0.2/src/gthd-data.c Examining data/gtherm-0.0.2/src/gthd-data.h Examining data/gtherm-0.0.2/src/gthd-thermal-zone.c Examining data/gtherm-0.0.2/src/gthd-thermal-zone.h Examining data/gtherm-0.0.2/src/gthd.c Examining data/gtherm-0.0.2/src/gthd.h Examining data/gtherm-0.0.2/src/sysfs-utils.c Examining data/gtherm-0.0.2/src/sysfs-utils.h Examining data/gtherm-0.0.2/debian/tests/build-test.c FINAL RESULTS: data/gtherm-0.0.2/src/sysfs-utils.c:117:12: [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). result = atoi (contents); data/gtherm-0.0.2/src/gthd-cooling-device.c:119:37: [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). id = g_ascii_strtoll (&self->name[strlen(GTHD_COOLING_DEVICE_SYSFS)], &endptr, 10); data/gtherm-0.0.2/src/gthd-cooling-device.c:120:30: [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). if (id == 0 && &self->name[strlen(GTHD_COOLING_DEVICE_SYSFS)] == endptr) { data/gtherm-0.0.2/src/gthd-thermal-zone.c:211: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). if (strlen (fname) < 5) { data/gtherm-0.0.2/src/gthd-thermal-zone.c:290:37: [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). id = g_ascii_strtoll (&self->name[strlen(GTHD_THERMAL_ZONE_SYSFS)], &endptr, 10); data/gtherm-0.0.2/src/gthd-thermal-zone.c:291:30: [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). if (id == 0 && &self->name[strlen(GTHD_THERMAL_ZONE_SYSFS)] == endptr) { ANALYSIS SUMMARY: Hits = 6 Lines analyzed = 1863 in approximately 0.07 seconds (24949 lines/second) Physical Source Lines of Code (SLOC) = 1251 Hits@level = [0] 0 [1] 5 [2] 1 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 6 [1+] 6 [2+] 1 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 4.79616 [1+] 4.79616 [2+] 0.799361 [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.