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/minexpert2-7.3.0/src/gui/AboutDlg.cpp Examining data/minexpert2-7.3.0/src/gui/AboutDlg.hpp Examining data/minexpert2-7.3.0/src/gui/AnalysisPreferencesDlg.cpp Examining data/minexpert2-7.3.0/src/gui/AnalysisPreferencesDlg.hpp Examining data/minexpert2-7.3.0/src/gui/Application.cpp Examining data/minexpert2-7.3.0/src/gui/Application.hpp Examining data/minexpert2-7.3.0/src/gui/BaseColorMapPlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/BaseColorMapPlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/BaseColorMapPlotWnd.cpp Examining data/minexpert2-7.3.0/src/gui/BaseColorMapPlotWnd.hpp Examining data/minexpert2-7.3.0/src/gui/BasePlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/BasePlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/BasePlotWnd.cpp Examining data/minexpert2-7.3.0/src/gui/BasePlotWnd.hpp Examining data/minexpert2-7.3.0/src/gui/BaseTracePlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/BaseTracePlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/BaseTracePlotWnd.cpp Examining data/minexpert2-7.3.0/src/gui/BaseTracePlotWnd.hpp Examining data/minexpert2-7.3.0/src/gui/ColorSelector.cpp Examining data/minexpert2-7.3.0/src/gui/ColorSelector.hpp Examining data/minexpert2-7.3.0/src/gui/ConsoleWnd.cpp Examining data/minexpert2-7.3.0/src/gui/ConsoleWnd.hpp Examining data/minexpert2-7.3.0/src/gui/DataPlottableNode.cpp Examining data/minexpert2-7.3.0/src/gui/DataPlottableNode.hpp Examining data/minexpert2-7.3.0/src/gui/DataPlottableTree.cpp Examining data/minexpert2-7.3.0/src/gui/DataPlottableTree.hpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecMassSpecColorMapPlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecMassSpecColorMapPlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecMassSpecColorMapWnd.cpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecMassSpecColorMapWnd.hpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecTracePlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecTracePlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecTracePlotWidget.cpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecTracePlotWidget.hpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecTracePlotWnd.cpp Examining data/minexpert2-7.3.0/src/gui/DriftSpecTracePlotWnd.hpp Examining data/minexpert2-7.3.0/src/gui/IsoSpecDlg.cpp Examining data/minexpert2-7.3.0/src/gui/IsoSpecDlg.hpp Examining data/minexpert2-7.3.0/src/gui/IsoSpecTableView.cpp Examining data/minexpert2-7.3.0/src/gui/IsoSpecTableView.hpp Examining data/minexpert2-7.3.0/src/gui/IsoSpecTableViewModel.cpp Examining data/minexpert2-7.3.0/src/gui/IsoSpecTableViewModel.hpp Examining data/minexpert2-7.3.0/src/gui/MassPeakShaperDlg.cpp Examining data/minexpert2-7.3.0/src/gui/MassPeakShaperDlg.hpp Examining data/minexpert2-7.3.0/src/gui/MassSpecTracePlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/MassSpecTracePlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/MassSpecTracePlotWidget.cpp Examining data/minexpert2-7.3.0/src/gui/MassSpecTracePlotWidget.hpp Examining data/minexpert2-7.3.0/src/gui/MassSpecTracePlotWnd.cpp Examining data/minexpert2-7.3.0/src/gui/MassSpecTracePlotWnd.hpp Examining data/minexpert2-7.3.0/src/gui/MsFragmentationSpecDlg.cpp Examining data/minexpert2-7.3.0/src/gui/MsFragmentationSpecDlg.hpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableView.cpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableView.hpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableViewItem.cpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableViewItem.hpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableViewModel.cpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableViewModel.hpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableViewProxyModel.cpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableViewProxyModel.hpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableViewWnd.cpp Examining data/minexpert2-7.3.0/src/gui/MsRunDataSetTableViewWnd.hpp Examining data/minexpert2-7.3.0/src/gui/MsRunReadTask.cpp Examining data/minexpert2-7.3.0/src/gui/MsRunReadTask.hpp Examining data/minexpert2-7.3.0/src/gui/MsRunSelectorDlg.cpp Examining data/minexpert2-7.3.0/src/gui/MsRunSelectorDlg.hpp Examining data/minexpert2-7.3.0/src/gui/MzIntegrationParamsDlg.cpp Examining data/minexpert2-7.3.0/src/gui/MzIntegrationParamsDlg.hpp Examining data/minexpert2-7.3.0/src/gui/OpenMsRunDataSetsDlg.cpp Examining data/minexpert2-7.3.0/src/gui/OpenMsRunDataSetsDlg.hpp Examining data/minexpert2-7.3.0/src/gui/ProcessingFlowViewerDlg.cpp Examining data/minexpert2-7.3.0/src/gui/ProcessingFlowViewerDlg.hpp Examining data/minexpert2-7.3.0/src/gui/ProgramWindow.cpp Examining data/minexpert2-7.3.0/src/gui/ProgramWindow.hpp Examining data/minexpert2-7.3.0/src/gui/SaveToGraphicsFileDlg.cpp Examining data/minexpert2-7.3.0/src/gui/SaveToGraphicsFileDlg.hpp Examining data/minexpert2-7.3.0/src/gui/TaskMonitorCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/TaskMonitorCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/TaskMonitorWnd.cpp Examining data/minexpert2-7.3.0/src/gui/TaskMonitorWnd.hpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromDriftSpecColorMapPlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromDriftSpecColorMapPlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromDriftSpecColorMapWnd.cpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromDriftSpecColorMapWnd.hpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromMassSpecColorMapPlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromMassSpecColorMapPlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromMassSpecColorMapWnd.cpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromMassSpecColorMapWnd.hpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromTracePlotCompositeWidget.cpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromTracePlotCompositeWidget.hpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromTracePlotWidget.cpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromTracePlotWidget.hpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromTracePlotWnd.cpp Examining data/minexpert2-7.3.0/src/gui/TicXicChromTracePlotWnd.hpp Examining data/minexpert2-7.3.0/src/gui/XicExtractionWnd.cpp Examining data/minexpert2-7.3.0/src/gui/XicExtractionWnd.hpp Examining data/minexpert2-7.3.0/src/main.cpp Examining data/minexpert2-7.3.0/src/nongui/About_gpl_v30.hpp Examining data/minexpert2-7.3.0/src/nongui/AnalysisPreferences.cpp Examining data/minexpert2-7.3.0/src/nongui/AnalysisPreferences.hpp Examining data/minexpert2-7.3.0/src/nongui/Atom.cpp Examining data/minexpert2-7.3.0/src/nongui/Atom.hpp Examining data/minexpert2-7.3.0/src/nongui/AtomCount.cpp Examining data/minexpert2-7.3.0/src/nongui/AtomCount.hpp Examining data/minexpert2-7.3.0/src/nongui/BaseMsRunDataSetTreeNodeVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/BaseMsRunDataSetTreeNodeVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/DriftSpectrumTreeNodeCombinerVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/DriftSpectrumTreeNodeCombinerVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/Formula.cpp Examining data/minexpert2-7.3.0/src/nongui/Formula.hpp Examining data/minexpert2-7.3.0/src/nongui/IntensityTreeNodeCombinerVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/IntensityTreeNodeCombinerVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/IsoSpecEntity.cpp Examining data/minexpert2-7.3.0/src/nongui/IsoSpecEntity.hpp Examining data/minexpert2-7.3.0/src/nongui/Isotope.cpp Examining data/minexpert2-7.3.0/src/nongui/Isotope.hpp Examining data/minexpert2-7.3.0/src/nongui/MassDataIntegrator.cpp Examining data/minexpert2-7.3.0/src/nongui/MassDataIntegrator.hpp Examining data/minexpert2-7.3.0/src/nongui/MassDataIntegratorTask.cpp Examining data/minexpert2-7.3.0/src/nongui/MassDataIntegratorTask.hpp Examining data/minexpert2-7.3.0/src/nongui/MassPeakShaper.cpp Examining data/minexpert2-7.3.0/src/nongui/MassPeakShaper.hpp Examining data/minexpert2-7.3.0/src/nongui/MassPeakShaperConfig.cpp Examining data/minexpert2-7.3.0/src/nongui/MassPeakShaperConfig.hpp Examining data/minexpert2-7.3.0/src/nongui/MassSpecDataFileLoader.cpp Examining data/minexpert2-7.3.0/src/nongui/MassSpecDataFileLoader.hpp Examining data/minexpert2-7.3.0/src/nongui/MassSpectrumTreeNodeCombinerVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/MassSpectrumTreeNodeCombinerVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/MsFragmentationSpec.cpp Examining data/minexpert2-7.3.0/src/nongui/MsFragmentationSpec.hpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSet.cpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSet.hpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetStats.cpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetStats.hpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToDt.cpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToDt.hpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToDtRtMz.cpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToDtRtMz.hpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToMz.cpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToMz.hpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToRt.cpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToRt.hpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToTicInt.cpp Examining data/minexpert2-7.3.0/src/nongui/MsRunDataSetTreeMassDataIntegratorToTicInt.hpp Examining data/minexpert2-7.3.0/src/nongui/MsRunStatisticsTreeNodeVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/MsRunStatisticsTreeNodeVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/MultiTreeNodeCombinerVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/MultiTreeNodeCombinerVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/MzIntegrationParams.cpp Examining data/minexpert2-7.3.0/src/nongui/MzIntegrationParams.hpp Examining data/minexpert2-7.3.0/src/nongui/Ponderable.cpp Examining data/minexpert2-7.3.0/src/nongui/Ponderable.hpp Examining data/minexpert2-7.3.0/src/nongui/ProcessingFlow.cpp Examining data/minexpert2-7.3.0/src/nongui/ProcessingFlow.hpp Examining data/minexpert2-7.3.0/src/nongui/ProcessingSpec.cpp Examining data/minexpert2-7.3.0/src/nongui/ProcessingSpec.hpp Examining data/minexpert2-7.3.0/src/nongui/ProcessingStep.cpp Examining data/minexpert2-7.3.0/src/nongui/ProcessingStep.hpp Examining data/minexpert2-7.3.0/src/nongui/ProcessingType.cpp Examining data/minexpert2-7.3.0/src/nongui/ProcessingType.hpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegrator.cpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegrator.hpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToDt.cpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToDt.hpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToDtRtMz.cpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToDtRtMz.hpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToMz.cpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToMz.hpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToRt.cpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToRt.hpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToRtDt.cpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToRtDt.hpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToTicInt.cpp Examining data/minexpert2-7.3.0/src/nongui/QualifiedMassSpectrumVectorMassDataIntegratorToTicInt.hpp Examining data/minexpert2-7.3.0/src/nongui/RtDtColorMapTreeNodeCombinerVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/RtDtColorMapTreeNodeCombinerVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/RtDtMzColorMapsTreeNodeCombinerVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/RtDtMzColorMapsTreeNodeCombinerVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/TicChromTreeNodeCombinerVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/TicChromTreeNodeCombinerVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/TraceTreeNodeCombinerVisitor.cpp Examining data/minexpert2-7.3.0/src/nongui/TraceTreeNodeCombinerVisitor.hpp Examining data/minexpert2-7.3.0/src/nongui/about_gpl_v30.hpp Examining data/minexpert2-7.3.0/src/nongui/globals.cpp Examining data/minexpert2-7.3.0/src/nongui/globals.hpp Examining data/minexpert2-7.3.0/tests/nongui/DataPoint_test.cpp Examining data/minexpert2-7.3.0/tests/nongui/MapTrace_test.cpp Examining data/minexpert2-7.3.0/tests/nongui/MassSpectrumCombiner_test.cpp Examining data/minexpert2-7.3.0/tests/nongui/MassSpectrum_test.cpp Examining data/minexpert2-7.3.0/tests/nongui/MzIntegrationParams_test.cpp Examining data/minexpert2-7.3.0/tests/nongui/TraceCombiner_test.cpp Examining data/minexpert2-7.3.0/tests/nongui/Trace_test.cpp Examining data/minexpert2-7.3.0/tests/testmain.cpp FINAL RESULTS: data/minexpert2-7.3.0/src/gui/AboutDlg.cpp:220:19: [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(!historyFile.open(QFile::ReadOnly | QFile::Text)) data/minexpert2-7.3.0/src/gui/AnalysisPreferencesDlg.cpp:372:24: [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). analysisFile.open(QIODevice::WriteOnly); data/minexpert2-7.3.0/src/gui/AnalysisPreferencesDlg.cpp:382:24: [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). analysisFile.open(QIODevice::Append); data/minexpert2-7.3.0/src/gui/IsoSpecDlg.cpp:474: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(!file.open(QIODevice::WriteOnly | QIODevice::Text)) data/minexpert2-7.3.0/src/gui/IsoSpecDlg.cpp:548: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(!file.open(QIODevice::WriteOnly | QIODevice::Text)) data/minexpert2-7.3.0/src/gui/IsoSpecDlg.cpp:626: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(!file.open(QIODevice::ReadOnly | QIODevice::Text)) data/minexpert2-7.3.0/src/gui/IsoSpecDlg.cpp:1976: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(!file.open(QIODevice::ReadOnly | QIODevice::Text)) data/minexpert2-7.3.0/src/gui/IsoSpecDlg.cpp:2315: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(!file.open(QIODevice::WriteOnly | QIODevice::Text)) data/minexpert2-7.3.0/src/gui/ProgramWindow.cpp:574: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(!file.open(QIODevice::WriteOnly | QIODevice::Text)) data/minexpert2-7.3.0/src/gui/ProgramWindow.cpp:1018: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). res = mpa_analysisFile->open(QIODevice::WriteOnly); data/minexpert2-7.3.0/src/gui/ProgramWindow.cpp:1020: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). res = mpa_analysisFile->open(QIODevice::Append); data/minexpert2-7.3.0/src/gui/ProgramWindow.cpp:1072:33: [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(!mpa_analysisFile->open(QIODevice::Append)) data/minexpert2-7.3.0/src/nongui/MzIntegrationParams.cpp:585:8: [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). file.open(QIODevice::WriteOnly); data/minexpert2-7.3.0/src/nongui/MzIntegrationParams.cpp:698:8: [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). file.open(QIODevice::WriteOnly); ANALYSIS SUMMARY: Hits = 14 Lines analyzed = 68564 in approximately 1.28 seconds (53678 lines/second) Physical Source Lines of Code (SLOC) = 35144 Hits@level = [0] 5 [1] 0 [2] 14 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 19 [1+] 14 [2+] 14 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 0.540633 [1+] 0.398361 [2+] 0.398361 [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.