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/kitemmodels-5.74.0/autotests/klinkitemselectionmodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/test_model_helpers.h
Examining data/kitemmodels-5.74.0/autotests/kselectionproxymodeltestsuite.h
Examining data/kitemmodels-5.74.0/autotests/kextracolumnsproxymodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/kcolumnheadersmodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/krearrangecolumnsproxymodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/ksortfilterproxymodel_qml.cpp
Examining data/kitemmodels-5.74.0/autotests/kselectionproxymodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/kmodelindexproxymappertest.cpp
Examining data/kitemmodels-5.74.0/autotests/bihash/functionalitytest.cpp
Examining data/kitemmodels-5.74.0/autotests/bihash/benchmarks.cpp
Examining data/kitemmodels-5.74.0/autotests/kdescendantsproxymodel_smoketest.cpp
Examining data/kitemmodels-5.74.0/autotests/kdescendantsproxymodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/kselectionproxymodeltestsuite.cpp
Examining data/kitemmodels-5.74.0/autotests/klinkitemselectionmodeltest.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/proxymodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/persistentchangelist.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modelcommander.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/eventloggerregister.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modelspy.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modelselector.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modeleventlogger.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/templates/modelreset.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/templates/layoutchanged.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/templates/init.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/templates/datachanged.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/templates/rowsremoved.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/templates/main.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/templates/rowsinserted.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modeleventlogger.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/dynamictreewidget.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modelselector.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/proxymodeltest.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/indexfinder.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modeldumper.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modelcommander.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modeldumper.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/dynamictreemodel.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/eventloggerregister.cpp
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/dynamictreemodel.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modelspy.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/dynamictreewidget.h
Examining data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modeltest.h
Examining data/kitemmodels-5.74.0/autotests/knumbermodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/kconcatenaterowsproxymodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/kselectionproxymodel_smoketest.cpp
Examining data/kitemmodels-5.74.0/autotests/krecursivefilterproxymodeltest.cpp
Examining data/kitemmodels-5.74.0/autotests/kconcatenaterows_qml.cpp
Examining data/kitemmodels-5.74.0/tests/rearrangecolumns.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/lessthanwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/scriptablereparentingwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/checkablewidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/mainwindow.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/breadcrumbswidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/recursivefilterpmwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/reparentingpmwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/reparentingpmwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/proxymodeltestwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/proxymodeltestwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/proxyitemselectionwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/mainwindow.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/statesaverwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/lessthanwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/kreparentingproxymodel.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/selectioninqmlwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/kidentityproxymodelwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/descendantpmwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/modelcommanderwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/kreparentingproxymodel.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/breadcrumbnavigationwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/main.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/statesaverwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/descendantpmwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/proxyitemselectionwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/kidentityproxymodelwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/matchcheckingwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/matchcheckingwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/checkablewidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/selectioninqmlwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/breadcrumbdirectionwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/breadcrumbdirectionwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/recursivefilterpmwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/modelcommanderwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/selectionpmwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/selectionpmwidget.h
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/breadcrumbnavigationwidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/breadcrumbswidget.cpp
Examining data/kitemmodels-5.74.0/tests/proxymodeltestapp/scriptablereparentingwidget.h
Examining data/kitemmodels-5.74.0/src/qml/plugin.cpp
Examining data/kitemmodels-5.74.0/src/qml/kconcatenaterowsproxymodel_qml.h
Examining data/kitemmodels-5.74.0/src/qml/kconcatenaterowsproxymodel_qml.cpp
Examining data/kitemmodels-5.74.0/src/qml/plugin.h
Examining data/kitemmodels-5.74.0/src/qml/ksortfilterproxymodel.h
Examining data/kitemmodels-5.74.0/src/qml/ksortfilterproxymodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kselectionproxymodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kdescendantsproxymodel.h
Examining data/kitemmodels-5.74.0/src/core/kmodelindexproxymapper.cpp
Examining data/kitemmodels-5.74.0/src/core/kvoidpointerfactory_p.h
Examining data/kitemmodels-5.74.0/src/core/kcolumnheadersmodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kcheckableproxymodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kcolumnheadersmodel.h
Examining data/kitemmodels-5.74.0/src/core/krearrangecolumnsproxymodel.h
Examining data/kitemmodels-5.74.0/src/core/kdescendantsproxymodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kselectionproxymodel.h
Examining data/kitemmodels-5.74.0/src/core/krearrangecolumnsproxymodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kextracolumnsproxymodel.h
Examining data/kitemmodels-5.74.0/src/core/krecursivefilterproxymodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kbreadcrumbselectionmodel.h
Examining data/kitemmodels-5.74.0/src/core/kextracolumnsproxymodel.cpp
Examining data/kitemmodels-5.74.0/src/core/klinkitemselectionmodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kcheckableproxymodel.h
Examining data/kitemmodels-5.74.0/src/core/krecursivefilterproxymodel.h
Examining data/kitemmodels-5.74.0/src/core/kconcatenaterowsproxymodel.cpp
Examining data/kitemmodels-5.74.0/src/core/klinkitemselectionmodel.h
Examining data/kitemmodels-5.74.0/src/core/kbihash_p.h
Examining data/kitemmodels-5.74.0/src/core/kconcatenaterowsproxymodel.h
Examining data/kitemmodels-5.74.0/src/core/knumbermodel.h
Examining data/kitemmodels-5.74.0/src/core/kbreadcrumbselectionmodel.cpp
Examining data/kitemmodels-5.74.0/src/core/kmodelindexproxymapper.h
Examining data/kitemmodels-5.74.0/src/core/knumbermodel.cpp

FINAL RESULTS:

data/kitemmodels-5.74.0/src/core/knumbermodel.cpp:122:36:  [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.
            auto locale = QLocale::system();
data/kitemmodels-5.74.0/autotests/bihash/functionalitytest.cpp:96: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).
    outBuffer.open(QIODevice::WriteOnly);
data/kitemmodels-5.74.0/autotests/bihash/functionalitytest.cpp:104: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).
    inBuffer.open(QIODevice::ReadOnly);
data/kitemmodels-5.74.0/autotests/proxymodeltestsuite/modeleventlogger.cpp:203:43:  [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).
    const bool logFileOpened = outputFile.open(QFile::WriteOnly | QFile::Text);

ANALYSIS SUMMARY:

Hits = 4
Lines analyzed = 24850 in approximately 0.87 seconds (28506 lines/second)
Physical Source Lines of Code (SLOC) = 17327
Hits@level = [0]   5 [1]   0 [2]   3 [3]   0 [4]   1 [5]   0
Hits@level+ = [0+]   9 [1+]   4 [2+]   4 [3+]   1 [4+]   1 [5+]   0
Hits/KSLOC@level+ = [0+] 0.519421 [1+] 0.230854 [2+] 0.230854 [3+] 0.0577134 [4+] 0.0577134 [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.