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/fuzzylite-6.0+dfsg/examples/application/src/main.cpp Examining data/fuzzylite-6.0+dfsg/examples/hybrid/ObstacleAvoidance.cpp Examining data/fuzzylite-6.0+dfsg/examples/hybrid/tipper.cpp Examining data/fuzzylite-6.0+dfsg/examples/mamdani/AllTerms.cpp Examining data/fuzzylite-6.0+dfsg/examples/mamdani/Laundry.cpp Examining data/fuzzylite-6.0+dfsg/examples/mamdani/ObstacleAvoidance.cpp Examining data/fuzzylite-6.0+dfsg/examples/mamdani/SimpleDimmer.cpp Examining data/fuzzylite-6.0+dfsg/examples/mamdani/SimpleDimmerChained.cpp Examining data/fuzzylite-6.0+dfsg/examples/mamdani/SimpleDimmerInverse.cpp Examining data/fuzzylite-6.0+dfsg/examples/mamdani/octave/investment_portfolio.cpp Examining data/fuzzylite-6.0+dfsg/examples/mamdani/octave/mamdani_tip_calculator.cpp Examining data/fuzzylite-6.0+dfsg/examples/takagi-sugeno/ObstacleAvoidance.cpp Examining data/fuzzylite-6.0+dfsg/examples/takagi-sugeno/SimpleDimmer.cpp Examining data/fuzzylite-6.0+dfsg/examples/takagi-sugeno/approximation.cpp Examining data/fuzzylite-6.0+dfsg/examples/takagi-sugeno/octave/cubic_approximator.cpp Examining data/fuzzylite-6.0+dfsg/examples/takagi-sugeno/octave/heart_disease_risk.cpp Examining data/fuzzylite-6.0+dfsg/examples/takagi-sugeno/octave/linear_tip_calculator.cpp Examining data/fuzzylite-6.0+dfsg/examples/takagi-sugeno/octave/sugeno_tip_calculator.cpp Examining data/fuzzylite-6.0+dfsg/examples/tsukamoto/tsukamoto.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/Benchmark.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/Complexity.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/Console.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/Engine.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/Exception.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/Headers.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/Operation.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/activation/Activation.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/activation/First.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/activation/General.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/activation/Highest.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/activation/Last.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/activation/Lowest.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/activation/Proportional.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/activation/Threshold.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/Bisector.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/Centroid.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/Defuzzifier.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/IntegralDefuzzifier.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/LargestOfMaximum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/MeanOfMaximum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/SmallestOfMaximum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/WeightedAverage.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/WeightedAverageCustom.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/WeightedDefuzzifier.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/WeightedSum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/defuzzifier/WeightedSumCustom.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/ActivationFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/CloningFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/ConstructionFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/DefuzzifierFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/FactoryManager.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/FunctionFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/HedgeFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/SNormFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/TNormFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/factory/TermFactory.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/hedge/Any.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/hedge/Extremely.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/hedge/Hedge.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/hedge/HedgeFunction.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/hedge/Not.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/hedge/Seldom.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/hedge/Somewhat.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/hedge/Very.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/CppExporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/Exporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/FclExporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/FclImporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/FisExporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/FisImporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/FldExporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/FllExporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/FllImporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/Importer.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/JavaExporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/imex/RScriptExporter.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/Norm.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/SNorm.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/TNorm.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/AlgebraicSum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/BoundedSum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/DrasticSum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/EinsteinSum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/HamacherSum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/Maximum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/NilpotentMaximum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/NormalizedSum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/SNormFunction.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/s/UnboundedSum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/t/AlgebraicProduct.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/t/BoundedDifference.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/t/DrasticProduct.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/t/EinsteinProduct.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/t/HamacherProduct.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/t/Minimum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/t/NilpotentMinimum.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/norm/t/TNormFunction.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/rule/Antecedent.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/rule/Consequent.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/rule/Expression.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/rule/Rule.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/rule/RuleBlock.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Activated.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Aggregated.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Bell.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Binary.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Concave.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Constant.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Cosine.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Discrete.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Function.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Gaussian.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/GaussianProduct.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Linear.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/PiShape.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Ramp.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Rectangle.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/SShape.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Sigmoid.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/SigmoidDifference.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/SigmoidProduct.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Spike.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Term.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Trapezoid.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/Triangle.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/term/ZShape.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/variable/InputVariable.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/variable/OutputVariable.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/variable/Variable.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/fl/fuzzylite.h Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/Benchmark.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/Complexity.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/Console.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/Engine.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/Exception.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/activation/First.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/activation/General.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/activation/Highest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/activation/Last.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/activation/Lowest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/activation/Proportional.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/activation/Threshold.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/Bisector.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/Centroid.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/IntegralDefuzzifier.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/LargestOfMaximum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/MeanOfMaximum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/SmallestOfMaximum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/WeightedAverage.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/WeightedAverageCustom.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/WeightedDefuzzifier.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/WeightedSum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/defuzzifier/WeightedSumCustom.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/factory/ActivationFactory.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/factory/DefuzzifierFactory.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/factory/FactoryManager.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/factory/FunctionFactory.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/factory/HedgeFactory.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/factory/SNormFactory.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/factory/TNormFactory.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/factory/TermFactory.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/fuzzylite.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/hedge/Any.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/hedge/Extremely.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/hedge/HedgeFunction.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/hedge/Not.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/hedge/Seldom.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/hedge/Somewhat.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/hedge/Very.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/CppExporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/Exporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/FclExporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/FclImporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/FisExporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/FisImporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/FldExporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/FllExporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/FllImporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/Importer.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/JavaExporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/imex/RScriptExporter.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/main.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/AlgebraicSum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/BoundedSum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/DrasticSum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/EinsteinSum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/HamacherSum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/Maximum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/NilpotentMaximum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/NormalizedSum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/SNormFunction.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/s/UnboundedSum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/t/AlgebraicProduct.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/t/BoundedDifference.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/t/DrasticProduct.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/t/EinsteinProduct.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/t/HamacherProduct.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/t/Minimum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/t/NilpotentMinimum.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/norm/t/TNormFunction.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/rule/Antecedent.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/rule/Consequent.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/rule/Expression.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/rule/Rule.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/rule/RuleBlock.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Activated.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Aggregated.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Bell.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Binary.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Concave.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Constant.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Cosine.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Discrete.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Function.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Gaussian.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/GaussianProduct.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Linear.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/PiShape.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Ramp.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Rectangle.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/SShape.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Sigmoid.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/SigmoidDifference.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/SigmoidProduct.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Spike.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Term.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Trapezoid.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/Triangle.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/term/ZShape.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/variable/InputVariable.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/variable/OutputVariable.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/src/variable/Variable.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/MainTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/QuickTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/activation/ThresholdTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/hedge/HedgeFunctionTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/imex/FldExporterTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/imex/FllImporterTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/imex/RScriptExporterTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/norm/NormFunctionTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/term/AggregatedTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/term/DiscreteTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/term/FunctionTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/term/TrapezoidTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/term/TriangleTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/variable/VariableTest.cpp Examining data/fuzzylite-6.0+dfsg/fuzzylite/test/BenchmarkTest.cpp FINAL RESULTS: data/fuzzylite-6.0+dfsg/fuzzylite/fl/Operation.h:342:20: [3] (random) random: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. static int random(); data/fuzzylite-6.0+dfsg/fuzzylite/fl/Operation.h:729:27: [3] (random) random: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. inline int Operation::random() { data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:8445:18: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. std::srand( config.rngSeed() ); data/fuzzylite-6.0+dfsg/fuzzylite/test/term/DiscreteTest.cpp:94:13: [3] (random) srand: This function is not sufficiently random for security-related functions such as key and nonce creation (CWE-327). Use a more secure technique for acquiring random values. srand(0); data/fuzzylite-6.0+dfsg/fuzzylite/src/Console.cpp:966: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). outputFile.open(filename.c_str()); data/fuzzylite-6.0+dfsg/fuzzylite/src/Console.cpp:995: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). outputFile.open(filename.c_str()); data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:1556:23: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. struct TrueType { char sizer[1]; }; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:1557:24: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. struct FalseType { char sizer[2]; }; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:3108:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char storage[sizeof(T)]; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:6050: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). void open() { data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:6144:17: [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). open(); data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:6190:26: [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). tracker->open(); data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:6378:16: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char altStackMem[SIGSTKSZ]; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:7403:9: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char data[bufferSize]; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:7440: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). m_ofs.open( filename.c_str() ); data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:8638:21: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char asChar[sizeof (int)]; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:9492:16: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static char line[CATCH_CONFIG_CONSOLE_WIDTH] = {0}; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:10079:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char timeStamp[timeStampSize]; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:10311:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buffer[maxDoubleSize]; data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:10315:13: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(buffer, "%.3f", duration); data/fuzzylite-6.0+dfsg/fuzzylite/src/Console.cpp:330:16: [1] (buffer) getchar: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ch = ::getchar(); data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:8369:50: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return s.size() >= prefix.size() && std::equal(prefix.begin(), prefix.end(), s.begin()); data/fuzzylite-6.0+dfsg/fuzzylite/test/catch.hpp:8375:50: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return s.size() >= suffix.size() && std::equal(suffix.rbegin(), suffix.rend(), s.rbegin()); ANALYSIS SUMMARY: Hits = 23 Lines analyzed = 42668 in approximately 1.18 seconds (36312 lines/second) Physical Source Lines of Code (SLOC) = 25881 Hits@level = [0] 0 [1] 3 [2] 16 [3] 4 [4] 0 [5] 0 Hits@level+ = [0+] 23 [1+] 23 [2+] 20 [3+] 4 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 0.888683 [1+] 0.888683 [2+] 0.772768 [3+] 0.154554 [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.