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/akonadiconsole-20.08.2/autotests/jobtrackermodeltest.cpp Examining data/akonadiconsole-20.08.2/autotests/jobtrackersearchwidgettest.cpp Examining data/akonadiconsole-20.08.2/autotests/jobtrackermodeltest.h Examining data/akonadiconsole-20.08.2/autotests/jobtrackertest.h Examining data/akonadiconsole-20.08.2/autotests/jobtrackertest.cpp Examining data/akonadiconsole-20.08.2/autotests/jobtrackersearchwidgettest.h Examining data/akonadiconsole-20.08.2/src/jobtrackerfilterproxymodel.h Examining data/akonadiconsole-20.08.2/src/loggingfiltermodel.h Examining data/akonadiconsole-20.08.2/src/connectionpage.cpp Examining data/akonadiconsole-20.08.2/src/notificationfiltermodel.cpp Examining data/akonadiconsole-20.08.2/src/loggingmodel.h Examining data/akonadiconsole-20.08.2/src/collectionattributespage.h Examining data/akonadiconsole-20.08.2/src/akonadibrowsermodel.h Examining data/akonadiconsole-20.08.2/src/mainwindow.h Examining data/akonadiconsole-20.08.2/src/jobtracker.cpp Examining data/akonadiconsole-20.08.2/src/searchwidget.h Examining data/akonadiconsole-20.08.2/src/jobtrackerwidget.h Examining data/akonadiconsole-20.08.2/src/jobtrackermodel.cpp Examining data/akonadiconsole-20.08.2/src/collectionattributespage.cpp Examining data/akonadiconsole-20.08.2/src/loggingmodel.cpp Examining data/akonadiconsole-20.08.2/src/notificationfiltermodel.h Examining data/akonadiconsole-20.08.2/src/collectioninternalspage.h Examining data/akonadiconsole-20.08.2/src/jobtrackersearchwidget.cpp Examining data/akonadiconsole-20.08.2/src/dbbrowser.cpp Examining data/akonadiconsole-20.08.2/src/collectionaclpage.h Examining data/akonadiconsole-20.08.2/src/debugmodel.cpp Examining data/akonadiconsole-20.08.2/src/akonadibrowsermodel.cpp Examining data/akonadiconsole-20.08.2/src/notificationmonitor.h Examining data/akonadiconsole-20.08.2/src/metatypes.h Examining data/akonadiconsole-20.08.2/src/mainwidget.cpp Examining data/akonadiconsole-20.08.2/src/agentwidget.cpp Examining data/akonadiconsole-20.08.2/src/dbbrowser.h Examining data/akonadiconsole-20.08.2/src/utils.h Examining data/akonadiconsole-20.08.2/src/debugwidget.h Examining data/akonadiconsole-20.08.2/src/debugfiltermodel.cpp Examining data/akonadiconsole-20.08.2/src/mainwidget.h Examining data/akonadiconsole-20.08.2/src/logging.cpp Examining data/akonadiconsole-20.08.2/src/mainwindow.cpp Examining data/akonadiconsole-20.08.2/src/loggingfiltermodel.cpp Examining data/akonadiconsole-20.08.2/src/browserwidget.h Examining data/akonadiconsole-20.08.2/src/notificationmodel.cpp Examining data/akonadiconsole-20.08.2/src/agentconfigmodel.cpp Examining data/akonadiconsole-20.08.2/src/monitorswidget.cpp Examining data/akonadiconsole-20.08.2/src/instanceselector.h Examining data/akonadiconsole-20.08.2/src/main.cpp Examining data/akonadiconsole-20.08.2/src/tagpropertiesdialog.h Examining data/akonadiconsole-20.08.2/src/jobtrackerfilterproxymodel.cpp Examining data/akonadiconsole-20.08.2/src/searchwidget.cpp Examining data/akonadiconsole-20.08.2/src/browserwidget.cpp Examining data/akonadiconsole-20.08.2/src/debugwidget.cpp Examining data/akonadiconsole-20.08.2/src/instanceselector.cpp Examining data/akonadiconsole-20.08.2/src/querydebugger.h Examining data/akonadiconsole-20.08.2/src/collectionaclpage.cpp Examining data/akonadiconsole-20.08.2/src/jobtracker.h Examining data/akonadiconsole-20.08.2/src/logging.h Examining data/akonadiconsole-20.08.2/src/monitorsmodel.h Examining data/akonadiconsole-20.08.2/src/querydebugger.cpp Examining data/akonadiconsole-20.08.2/src/monitorsmodel.cpp Examining data/akonadiconsole-20.08.2/src/notificationmodel.h Examining data/akonadiconsole-20.08.2/src/debugfiltermodel.h Examining data/akonadiconsole-20.08.2/src/tagpropertiesdialog.cpp Examining data/akonadiconsole-20.08.2/src/dbaccess.cpp Examining data/akonadiconsole-20.08.2/src/collectioninternalspage.cpp Examining data/akonadiconsole-20.08.2/src/dbconsole.h Examining data/akonadiconsole-20.08.2/src/agentconfigmodel.h Examining data/akonadiconsole-20.08.2/src/connectionpage.h Examining data/akonadiconsole-20.08.2/src/jobtrackersearchwidget.h Examining data/akonadiconsole-20.08.2/src/agentconfigdialog.h Examining data/akonadiconsole-20.08.2/src/dbconsole.cpp Examining data/akonadiconsole-20.08.2/src/jobtrackermodel.h Examining data/akonadiconsole-20.08.2/src/jobtrackerwidget.cpp Examining data/akonadiconsole-20.08.2/src/monitorswidget.h Examining data/akonadiconsole-20.08.2/src/notificationmonitor.cpp Examining data/akonadiconsole-20.08.2/src/debugmodel.h Examining data/akonadiconsole-20.08.2/src/agentwidget.h Examining data/akonadiconsole-20.08.2/src/dbaccess.h Examining data/akonadiconsole-20.08.2/src/agentconfigdialog.cpp FINAL RESULTS: data/akonadiconsole-20.08.2/src/dbaccess.cpp:55:23: [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). if (!database.open()) { data/akonadiconsole-20.08.2/src/debugwidget.cpp:125:15: [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). if (!file.open(QIODevice::WriteOnly)) { data/akonadiconsole-20.08.2/src/debugwidget.cpp:141:15: [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). if (!file.open(QIODevice::WriteOnly)) { data/akonadiconsole-20.08.2/src/jobtrackerwidget.cpp:159:15: [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). if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate)) { data/akonadiconsole-20.08.2/src/logging.cpp:140:15: [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). if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate)) { data/akonadiconsole-20.08.2/src/notificationmonitor.cpp:639:15: [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). if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate)) { data/akonadiconsole-20.08.2/src/querydebugger.cpp:823:15: [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). if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate)) { ANALYSIS SUMMARY: Hits = 7 Lines analyzed = 10407 in approximately 0.28 seconds (37694 lines/second) Physical Source Lines of Code (SLOC) = 7435 Hits@level = [0] 0 [1] 0 [2] 7 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 7 [1+] 7 [2+] 7 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 0.941493 [1+] 0.941493 [2+] 0.941493 [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.