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/libsysstat-0.4.2/basestat.cpp Examining data/libsysstat-0.4.2/basestat.h Examining data/libsysstat-0.4.2/basestat_p.h Examining data/libsysstat-0.4.2/cpustat.cpp Examining data/libsysstat-0.4.2/cpustat.h Examining data/libsysstat-0.4.2/cpustat_p.h Examining data/libsysstat-0.4.2/memstat.cpp Examining data/libsysstat-0.4.2/memstat.h Examining data/libsysstat-0.4.2/memstat_p.h Examining data/libsysstat-0.4.2/netstat.cpp Examining data/libsysstat-0.4.2/netstat.h Examining data/libsysstat-0.4.2/netstat_p.h Examining data/libsysstat-0.4.2/sysstat_global.h Examining data/libsysstat-0.4.2/version.cpp Examining data/libsysstat-0.4.2/version.h Examining data/libsysstat-0.4.2/version_p.h FINAL RESULTS: data/libsysstat-0.4.2/cpustat.cpp:215:75: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. static_cast<float>(current.system - mPrevious.system) / sumDelta, data/libsysstat-0.4.2/cpustat.cpp:225:75: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. static_cast<float>(current.system - mPrevious.system) / sumDelta, data/libsysstat-0.4.2/cpustat.cpp:274:7: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. , system(0) data/libsysstat-0.4.2/cpustat.h:59:47: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. void update(float user, float nice, float system, float other, float frequencyRate, uint frequency); data/libsysstat-0.4.2/cpustat.h:60:47: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. void update(float user, float nice, float system, float other); data/libsysstat-0.4.2/cpustat_p.h:59:47: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. void update(float user, float nice, float system, float other); data/libsysstat-0.4.2/cpustat_p.h:61:47: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. void update(float user, float nice, float system, float other, float frequencyRate, uint frequency); data/libsysstat-0.4.2/cpustat_p.h:79:20: [4] (shell) system: This causes a new program to execute and is difficult to use safely (CWE-78). try using a library call that implements the same functionality if available. qulonglong system; data/libsysstat-0.4.2/basestat.cpp:122:12: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char buffer[bufferSize]; data/libsysstat-0.4.2/basestat.cpp:124:16: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). int fd = ::open(filename, O_RDONLY); data/libsysstat-0.4.2/basestat.cpp:127:26: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ssize_t size = ::read(fd, buffer, bufferSize); ANALYSIS SUMMARY: Hits = 11 Lines analyzed = 1546 in approximately 0.07 seconds (21852 lines/second) Physical Source Lines of Code (SLOC) = 855 Hits@level = [0] 0 [1] 1 [2] 2 [3] 0 [4] 8 [5] 0 Hits@level+ = [0+] 11 [1+] 11 [2+] 10 [3+] 8 [4+] 8 [5+] 0 Hits/KSLOC@level+ = [0+] 12.8655 [1+] 12.8655 [2+] 11.6959 [3+] 9.35673 [4+] 9.35673 [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.