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/kcalutils-20.08.2/autotests/testincidenceformatter.cpp Examining data/kcalutils-20.08.2/autotests/testtodotooltip.h Examining data/kcalutils-20.08.2/autotests/testdndfactory.h Examining data/kcalutils-20.08.2/autotests/testincidenceformatter.h Examining data/kcalutils-20.08.2/autotests/testdndfactory.cpp Examining data/kcalutils-20.08.2/autotests/teststringify.cpp Examining data/kcalutils-20.08.2/autotests/testtodotooltip.cpp Examining data/kcalutils-20.08.2/autotests/teststringify.h Examining data/kcalutils-20.08.2/src/htmlexport.cpp Examining data/kcalutils-20.08.2/src/incidenceformatter.cpp Examining data/kcalutils-20.08.2/src/dndfactory.cpp Examining data/kcalutils-20.08.2/src/grantleetemplatemanager.cpp Examining data/kcalutils-20.08.2/src/htmlexport.h Examining data/kcalutils-20.08.2/src/dndfactory.h Examining data/kcalutils-20.08.2/src/recurrenceactions.h Examining data/kcalutils-20.08.2/src/grantleeki18nlocalizer_p.h Examining data/kcalutils-20.08.2/src/icaldrag.h Examining data/kcalutils-20.08.2/src/qtresourcetemplateloader.h Examining data/kcalutils-20.08.2/src/qtresourcetemplateloader.cpp Examining data/kcalutils-20.08.2/src/grantleetemplatemanager_p.h Examining data/kcalutils-20.08.2/src/vcaldrag.h Examining data/kcalutils-20.08.2/src/grantlee_plugin/icon.cpp Examining data/kcalutils-20.08.2/src/grantlee_plugin/datetimefilters.h Examining data/kcalutils-20.08.2/src/grantlee_plugin/kcalendargrantleeplugin.cpp Examining data/kcalutils-20.08.2/src/grantlee_plugin/kcalendargrantleeplugin.h Examining data/kcalutils-20.08.2/src/grantlee_plugin/icon.h Examining data/kcalutils-20.08.2/src/grantlee_plugin/datetimefilters.cpp Examining data/kcalutils-20.08.2/src/grantleeki18nlocalizer.cpp Examining data/kcalutils-20.08.2/src/incidenceformatter.h Examining data/kcalutils-20.08.2/src/vcaldrag.cpp Examining data/kcalutils-20.08.2/src/icaldrag.cpp Examining data/kcalutils-20.08.2/src/kcalutils_private_export.h Examining data/kcalutils-20.08.2/src/recurrenceactions.cpp Examining data/kcalutils-20.08.2/src/stringify.cpp Examining data/kcalutils-20.08.2/src/stringify.h FINAL RESULTS: data/kcalutils-20.08.2/autotests/testincidenceformatter.cpp:173:18: [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 (!outFile.open(QIODevice::WriteOnly)) { data/kcalutils-20.08.2/autotests/testincidenceformatter.cpp:202: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). if (!f.open(QIODevice::ReadOnly)) { data/kcalutils-20.08.2/autotests/testincidenceformatter.cpp:212: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). if (!f.open(QIODevice::WriteOnly | QIODevice::Truncate)) { data/kcalutils-20.08.2/autotests/testincidenceformatter.cpp:352:18: [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). QVERIFY(file.open(QIODevice::ReadOnly)); data/kcalutils-20.08.2/autotests/testincidenceformatter.cpp:411: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). QVERIFY(eventFile.open(QIODevice::ReadOnly)); data/kcalutils-20.08.2/src/htmlexport.cpp:76:12: [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 (!f.open(QIODevice::WriteOnly)) { data/kcalutils-20.08.2/src/qtresourcetemplateloader.cpp:27:37: [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.exists() || !file.open(QIODevice::ReadOnly | QIODevice::Text)) { data/kcalutils-20.08.2/src/qtresourcetemplateloader.cpp:48:37: [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.exists() || !file.open(QIODevice::ReadOnly | QIODevice::Text)) { ANALYSIS SUMMARY: Hits = 8 Lines analyzed = 8149 in approximately 0.30 seconds (27366 lines/second) Physical Source Lines of Code (SLOC) = 6032 Hits@level = [0] 0 [1] 0 [2] 8 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 8 [1+] 8 [2+] 8 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 1.32626 [1+] 1.32626 [2+] 1.32626 [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.