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/kjots-5.0.2/src/kjotstreeview.cpp Examining data/kjots-5.0.2/src/knowitimporter.h Examining data/kjots-5.0.2/src/kjotspart.cpp Examining data/kjots-5.0.2/src/kjotsbookmarks.h Examining data/kjots-5.0.2/src/kjotsedit.h Examining data/kjots-5.0.2/src/kjotstreeview.h Examining data/kjots-5.0.2/src/kjotsmodel.h Examining data/kjots-5.0.2/src/kjotsbookshelfentryvalidator.cpp Examining data/kjots-5.0.2/src/kcm_kjots.cpp Examining data/kjots-5.0.2/src/kjotswidget.cpp Examining data/kjots-5.0.2/src/main.cpp Examining data/kjots-5.0.2/src/kjotsmodel.cpp Examining data/kjots-5.0.2/src/kjotsbookshelfentryvalidator.h Examining data/kjots-5.0.2/src/localresourcecreator.h Examining data/kjots-5.0.2/src/kjotslinkdialog.cpp Examining data/kjots-5.0.2/src/kjotspart.h Examining data/kjots-5.0.2/src/kjotsedit.cpp Examining data/kjots-5.0.2/src/kjotsconfigdlg.h Examining data/kjots-5.0.2/src/kjotslockjob.h Examining data/kjots-5.0.2/src/kontact_plugin/kjots_plugin.cpp Examining data/kjots-5.0.2/src/kontact_plugin/kjots_plugin.h Examining data/kjots-5.0.2/src/kjotsconfigdlg.cpp Examining data/kjots-5.0.2/src/knowitimporter.cpp Examining data/kjots-5.0.2/src/kjotslockjob.cpp Examining data/kjots-5.0.2/src/kjotswidget.h Examining data/kjots-5.0.2/src/noteshared/localresourcecreator.h Examining data/kjots-5.0.2/src/noteshared/noteeditorutils.cpp Examining data/kjots-5.0.2/src/noteshared/metatype.h Examining data/kjots-5.0.2/src/noteshared/notelockattribute.cpp Examining data/kjots-5.0.2/src/noteshared/localresourcecreator.cpp Examining data/kjots-5.0.2/src/noteshared/noteeditorutils.h Examining data/kjots-5.0.2/src/noteshared/notelockattribute.h Examining data/kjots-5.0.2/src/kjotsreplacenextdialog.h Examining data/kjots-5.0.2/src/kjotsbookmarks.cpp Examining data/kjots-5.0.2/src/localresourcecreator.cpp Examining data/kjots-5.0.2/src/kjotssortproxymodel.cpp Examining data/kjots-5.0.2/src/kjotslinkdialog.h Examining data/kjots-5.0.2/src/kjotssortproxymodel.h Examining data/kjots-5.0.2/src/KJotsMain.cpp Examining data/kjots-5.0.2/src/akonadi_next/notecreatorandselector.h Examining data/kjots-5.0.2/src/akonadi_next/note.cpp Examining data/kjots-5.0.2/src/akonadi_next/notecreatorandselector.cpp Examining data/kjots-5.0.2/src/akonadi_next/note.h Examining data/kjots-5.0.2/src/aboutdata.h Examining data/kjots-5.0.2/src/KJotsMain.h Examining data/kjots-5.0.2/src/kjotsreplacenextdialog.cpp Examining data/kjots-5.0.2/src/kjotsbrowser.h Examining data/kjots-5.0.2/src/kjotsbrowser.cpp Examining data/kjots-5.0.2/src/aboutdata.cpp FINAL RESULTS: data/kjots-5.0.2/src/kjotswidget.cpp:1062:25: [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 (!exportFile.open(QIODevice::WriteOnly | QIODevice::Text)) { data/kjots-5.0.2/src/kjotswidget.cpp:1083:25: [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 (!exportFile.open(QIODevice::WriteOnly | QIODevice::Text)) { data/kjots-5.0.2/src/kjotswidget.cpp:1104:25: [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 (!exportFile.open(QIODevice::WriteOnly | QIODevice::Text)) { data/kjots-5.0.2/src/knowitimporter.cpp:56:14: [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()) { data/kjots-5.0.2/src/knowitimporter.cpp:162:20: [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 (knowItFile.open(QIODevice::ReadOnly | QIODevice::Text)) { data/kjots-5.0.2/src/noteshared/noteeditorutils.cpp:67:20: [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). buffer.open(QIODevice::WriteOnly); ANALYSIS SUMMARY: Hits = 6 Lines analyzed = 6464 in approximately 0.67 seconds (9661 lines/second) Physical Source Lines of Code (SLOC) = 4096 Hits@level = [0] 0 [1] 0 [2] 6 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 6 [1+] 6 [2+] 6 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 1.46484 [1+] 1.46484 [2+] 1.46484 [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.