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/kdevelop-python-5.6.0/pythonlanguagesupport.h
Examining data/kdevelop-python-5.6.0/pythonstylechecking.cpp
Examining data/kdevelop-python-5.6.0/duchain/contextbuilder.h
Examining data/kdevelop-python-5.6.0/duchain/navigation/declarationnavigationcontext.h
Examining data/kdevelop-python-5.6.0/duchain/navigation/declarationnavigationcontext.cpp
Examining data/kdevelop-python-5.6.0/duchain/navigation/navigationwidget.cpp
Examining data/kdevelop-python-5.6.0/duchain/navigation/navigationwidget.h
Examining data/kdevelop-python-5.6.0/duchain/helpers.h
Examining data/kdevelop-python-5.6.0/duchain/contextbuilder.cpp
Examining data/kdevelop-python-5.6.0/duchain/dumpchain.h
Examining data/kdevelop-python-5.6.0/duchain/assistants/missingincludeassistant.cpp
Examining data/kdevelop-python-5.6.0/duchain/assistants/missingincludeassistant.h
Examining data/kdevelop-python-5.6.0/duchain/expressionvisitor.h
Examining data/kdevelop-python-5.6.0/duchain/helpers.cpp
Examining data/kdevelop-python-5.6.0/duchain/pythoneditorintegrator.cpp
Examining data/kdevelop-python-5.6.0/duchain/pythonducontext.cpp
Examining data/kdevelop-python-5.6.0/duchain/correctionhelper.h
Examining data/kdevelop-python-5.6.0/duchain/declarations/functiondeclaration.cpp
Examining data/kdevelop-python-5.6.0/duchain/declarations/functiondeclaration.h
Examining data/kdevelop-python-5.6.0/duchain/types/unsuretype.h
Examining data/kdevelop-python-5.6.0/duchain/types/nonetype.h
Examining data/kdevelop-python-5.6.0/duchain/types/indexedcontainer.h
Examining data/kdevelop-python-5.6.0/duchain/types/nonetype.cpp
Examining data/kdevelop-python-5.6.0/duchain/types/hintedtype.h
Examining data/kdevelop-python-5.6.0/duchain/types/unsuretype.cpp
Examining data/kdevelop-python-5.6.0/duchain/types/hintedtype.cpp
Examining data/kdevelop-python-5.6.0/duchain/types/indexedcontainer.cpp
Examining data/kdevelop-python-5.6.0/duchain/usebuilder.h
Examining data/kdevelop-python-5.6.0/duchain/pythonducontext.h
Examining data/kdevelop-python-5.6.0/duchain/declarationbuilder.cpp
Examining data/kdevelop-python-5.6.0/duchain/expressionvisitor.cpp
Examining data/kdevelop-python-5.6.0/duchain/tests/duchainbench.h
Examining data/kdevelop-python-5.6.0/duchain/tests/pyduchaintest.h
Examining data/kdevelop-python-5.6.0/duchain/tests/duchainbench.cpp
Examining data/kdevelop-python-5.6.0/duchain/tests/pyduchaintest.cpp
Examining data/kdevelop-python-5.6.0/duchain/usebuilder.cpp
Examining data/kdevelop-python-5.6.0/duchain/pythoneditorintegrator.h
Examining data/kdevelop-python-5.6.0/duchain/dumpchain.cpp
Examining data/kdevelop-python-5.6.0/duchain/correctionhelper.cpp
Examining data/kdevelop-python-5.6.0/duchain/declarationbuilder.h
Examining data/kdevelop-python-5.6.0/docfilekcm/docfilewizard.h
Examining data/kdevelop-python-5.6.0/docfilekcm/kcm_docfiles.h
Examining data/kdevelop-python-5.6.0/docfilekcm/docfilemanagerwidget.h
Examining data/kdevelop-python-5.6.0/docfilekcm/docfilemanagerwidget.cpp
Examining data/kdevelop-python-5.6.0/docfilekcm/kcm_docfiles.cpp
Examining data/kdevelop-python-5.6.0/docfilekcm/docfilewizard.cpp
Examining data/kdevelop-python-5.6.0/pythonlanguagesupport.cpp
Examining data/kdevelop-python-5.6.0/pythonhighlighting.cpp
Examining data/kdevelop-python-5.6.0/pythonparsejob.cpp
Examining data/kdevelop-python-5.6.0/pythonhighlighting.h
Examining data/kdevelop-python-5.6.0/debugger/pdbframestackmodel.cpp
Examining data/kdevelop-python-5.6.0/debugger/pdbframestackmodel.h
Examining data/kdevelop-python-5.6.0/debugger/variablecontroller.cpp
Examining data/kdevelop-python-5.6.0/debugger/debugjob.cpp
Examining data/kdevelop-python-5.6.0/debugger/pdbdebuggerplugin.h
Examining data/kdevelop-python-5.6.0/debugger/pdblauncher.cpp
Examining data/kdevelop-python-5.6.0/debugger/debugjob.h
Examining data/kdevelop-python-5.6.0/debugger/debugsession.h
Examining data/kdevelop-python-5.6.0/debugger/variable.h
Examining data/kdevelop-python-5.6.0/debugger/variablecontroller.h
Examining data/kdevelop-python-5.6.0/debugger/breakpointcontroller.h
Examining data/kdevelop-python-5.6.0/debugger/pdblauncher.h
Examining data/kdevelop-python-5.6.0/debugger/debugsession.cpp
Examining data/kdevelop-python-5.6.0/debugger/pdbdebuggerplugin.cpp
Examining data/kdevelop-python-5.6.0/debugger/variable.cpp
Examining data/kdevelop-python-5.6.0/debugger/breakpointcontroller.cpp
Examining data/kdevelop-python-5.6.0/projectconfig/projectconfigpage.h
Examining data/kdevelop-python-5.6.0/projectconfig/projectconfigpage.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/model.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/helpers.h
Examining data/kdevelop-python-5.6.0/codecompletion/helpers.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/context.h
Examining data/kdevelop-python-5.6.0/codecompletion/context.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/worker.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/tests/pycompletiontest.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/tests/pycompletiontest.h
Examining data/kdevelop-python-5.6.0/codecompletion/worker.h
Examining data/kdevelop-python-5.6.0/codecompletion/model.h
Examining data/kdevelop-python-5.6.0/codecompletion/items/importfile.h
Examining data/kdevelop-python-5.6.0/codecompletion/items/declaration.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/items/missingincludeitem.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/items/missingincludeitem.h
Examining data/kdevelop-python-5.6.0/codecompletion/items/replacementvariable.h
Examining data/kdevelop-python-5.6.0/codecompletion/items/replacementvariable.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/items/keyword.h
Examining data/kdevelop-python-5.6.0/codecompletion/items/importfile.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/items/declaration.h
Examining data/kdevelop-python-5.6.0/codecompletion/items/implementfunction.h
Examining data/kdevelop-python-5.6.0/codecompletion/items/implementfunction.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/items/functiondeclaration.cpp
Examining data/kdevelop-python-5.6.0/codecompletion/items/functiondeclaration.h
Examining data/kdevelop-python-5.6.0/codecompletion/items/keyword.cpp
Examining data/kdevelop-python-5.6.0/pythonparsejob.h
Examining data/kdevelop-python-5.6.0/codegen/refactoring.cpp
Examining data/kdevelop-python-5.6.0/codegen/correctionfilegenerator.cpp
Examining data/kdevelop-python-5.6.0/codegen/refactoring.h
Examining data/kdevelop-python-5.6.0/codegen/correctionfilegenerator.h
Examining data/kdevelop-python-5.6.0/parser/cythonsyntaxremover.cpp
Examining data/kdevelop-python-5.6.0/parser/rangefixvisitor.cpp
Examining data/kdevelop-python-5.6.0/parser/astvisitor.h
Examining data/kdevelop-python-5.6.0/parser/ast.h
Examining data/kdevelop-python-5.6.0/parser/parsesession.h
Examining data/kdevelop-python-5.6.0/parser/cythonsyntaxremover.h
Examining data/kdevelop-python-5.6.0/parser/codehelpers.cpp
Examining data/kdevelop-python-5.6.0/parser/astbuilder.h
Examining data/kdevelop-python-5.6.0/parser/ast.cpp
Examining data/kdevelop-python-5.6.0/parser/tests/pyasttest.cpp
Examining data/kdevelop-python-5.6.0/parser/tests/pycythontest.h
Examining data/kdevelop-python-5.6.0/parser/tests/pyasttest.h
Examining data/kdevelop-python-5.6.0/parser/tests/pycythontest.cpp
Examining data/kdevelop-python-5.6.0/parser/astdefaultvisitor.h
Examining data/kdevelop-python-5.6.0/parser/astdefaultvisitor.cpp
Examining data/kdevelop-python-5.6.0/parser/codehelpers.h
Examining data/kdevelop-python-5.6.0/parser/python_header.h
Examining data/kdevelop-python-5.6.0/parser/astbuilder.cpp
Examining data/kdevelop-python-5.6.0/parser/parsesession.cpp
Examining data/kdevelop-python-5.6.0/parser/generated.h
Examining data/kdevelop-python-5.6.0/parser/astvisitor.cpp
Examining data/kdevelop-python-5.6.0/parser/rangefixvisitor.h
Examining data/kdevelop-python-5.6.0/pythonstylechecking.h
Examining data/kdevelop-python-5.6.0/pep8kcm/kcm_pep8.h
Examining data/kdevelop-python-5.6.0/pep8kcm/kcm_pep8.cpp

FINAL RESULTS:

data/kdevelop-python-5.6.0/codecompletion/tests/pycompletiontest.cpp:77:13:  [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).
    fileptr.open(QIODevice::WriteOnly);
data/kdevelop-python-5.6.0/codecompletion/tests/pycompletiontest.cpp:200:13:  [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).
    fileptr.open(QIODevice::WriteOnly);
data/kdevelop-python-5.6.0/codegen/correctionfilegenerator.cpp:196: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).
    m_file.open(QFile::ReadWrite);
data/kdevelop-python-5.6.0/codegen/correctionfilegenerator.cpp:365:40:  [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 ( checkForValidSyntax() && temp.open() ) {
data/kdevelop-python-5.6.0/codegen/correctionfilegenerator.cpp:376:32:  [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 ( success && m_file.open(QFile::ReadWrite) ) {
data/kdevelop-python-5.6.0/docfilekcm/docfilewizard.cpp:216: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).
        outputFile.open(QIODevice::WriteOnly);
data/kdevelop-python-5.6.0/pythonstylechecking.cpp:135:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    size_d = m_checkerProcess.read(10);
data/kdevelop-python-5.6.0/pythonstylechecking.cpp:150:35:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        auto d = m_checkerProcess.read(qMin(4096, size));

ANALYSIS SUMMARY:

Hits = 8
Lines analyzed = 23911 in approximately 0.65 seconds (36688 lines/second)
Physical Source Lines of Code (SLOC) = 17212
Hits@level = [0]   0 [1]   2 [2]   6 [3]   0 [4]   0 [5]   0
Hits@level+ = [0+]   8 [1+]   8 [2+]   6 [3+]   0 [4+]   0 [5+]   0
Hits/KSLOC@level+ = [0+] 0.464792 [1+] 0.464792 [2+] 0.348594 [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.