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/coinor-cbc-2.10.5+ds1/Cbc/examples/modify.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/sos.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchLink.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample3.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchUser.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/parallel.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample4.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/simpleBAB.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample5.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/link.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/qmip.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/allCuts.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/hotstart.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/inc.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchUser.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/ClpQuadInterface.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchFollow2.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/fast0507b.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/driver2.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/driver3.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/driver4.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchFollow2.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/ClpQuadInterface.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/driver5.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/driver6.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/longthin.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolverLongThin.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/driverFat.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/qmip2.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/cbc_driverC_sos.c
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/lotsize.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/clpdriver.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolverLongThin.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/driver.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/interrupt.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcCompareUser.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcCompareUser.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolver2.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolver3.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/fast0507.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolver2.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/pool.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolver3.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/sudoku.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/minimum.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/gear.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/nway.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/repeat.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchLink.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/barrier.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/crew.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample1.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample2.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/examples/modk.c
Examining data/coinor-cbc-2.10.5+ds1/Cbc/test/gamsTest.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/test/osiUnitTest.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/test/OsiCbcSolverInterfaceTest.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/test/CInterfaceTest.c
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareObjective.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFullNodeInfo.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.h
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSOS.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcObject.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CoinSolve.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveGuided.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCountRowCut.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcObjectUpdateData.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFixVariable.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcStrategy.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveLineSearch.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSOS.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveCoefficient.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenCtlBlk.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGeneric.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcConsequence.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRandRound.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenOsiParam.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/config_cbc_default.h
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenParamUtils.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcConsequence.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchDefaultDecision.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchDecision.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchingObject.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/ClpAmplObjective.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinkedUtils.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGeneral.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNWay.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchingObject.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMessage.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMessage.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/ClpConstraintAmpl.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFathomDynamicProgramming.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFathomDynamicProgramming.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenOsiParamUtils.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompare.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchBase.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchActual.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcStatistics.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchBase.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverExpandKnapsack.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcStatistics.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverAnalyze.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicGreedy.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcParam.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchDynamic.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenMessages.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverAnalyze.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveVectorLength.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcParam.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTree.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenCbcParam.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/config_default.h
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFollowOn.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.h
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/unitTest.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenMessages.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleInteger.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCutGenerator.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/OsiCbc/OsiCbcSolverInterface.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/OsiCbc/OsiCbcSolverInterface.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenCbcParam.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCutModifier.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicVND.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcThread.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcConfig.h
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDINS.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleInteger.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFathom.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFathom.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcPartialNodeInfo.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCutModifier.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenBaB.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcEventHandler.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDINS.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerDynamicPseudoCost.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcPartialNodeInfo.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDivePseudoCost.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareActual.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareBase.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/unitTestClp.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcObject.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchCut.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchToFixLots.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolvers.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveLineSearch.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNWay.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveCoefficient.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerDynamicPseudoCost.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRINS.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareDefault.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveGuided.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcStrategy.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcObjectUpdateData.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenCtlBlk.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicPivotAndFix.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareDepth.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchToFixLots.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchCut.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerPseudoCost.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRandRound.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareEstimate.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenCbcParamUtils.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchDefaultDecision.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenParam.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcDummyBranchingObject.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCutSubsetModifier.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNodeInfo.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGeneralDepth.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicGreedy.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchDynamic.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchLotsize.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveFractional.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSubProblem.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicVND.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchAllDifferent.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareObjective.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcEventHandler.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFullNodeInfo.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCountRowCut.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFixVariable.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRINS.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareDefault.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFeasibilityBase.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenOsiParam.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchDecision.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGeneral.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareDepth.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicPivotAndFix.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerPseudoCost.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverExpandKnapsack.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCompareEstimate.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveVectorLength.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFollowOn.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenParam.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCutGenerator.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcDummyBranchingObject.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTree.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCutSubsetModifier.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNodeInfo.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGeneralDepth.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcThread.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcCbcParam.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchLotsize.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDiveFractional.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSubProblem.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDivePseudoCost.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchAllDifferent.hpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp
Examining data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp
Examining data/coinor-cbc-2.10.5+ds1/BuildTools/headers/configall_system.h
Examining data/coinor-cbc-2.10.5+ds1/BuildTools/headers/configall_system_msc.h

FINAL RESULTS:

data/coinor-cbc-2.10.5+ds1/Cbc/examples/inc.cpp:84:9:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        sprintf(outFName, "inc%s.sol", strCost);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:65:7:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
      strcpy(pMask, pMask2 + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:73:7:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
      strcpy(pMask, pMask2 + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:77:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(pMask, pMask2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:105:3:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
  strcpy(masks[0], pMask);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:1484:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
              sprintf(generalPrint,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:479:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf(dwPrint, "PASS %d changed objective from %g to %g in %g seconds (%g elapsed) - total %g (%g elapsed) - current needed %d nodes %d - %s",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1557:5:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    sprintf(dwPrint, "%s %d blocks (largest %d,%d), %d master rows (%d empty) out of %d, %d master columns (%d empty, %d integer) out of %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:427:11:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
          sprintf(line, "Heuristic %s fixed %d to one (and %d to zero)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:569:11:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
          sprintf(line, "Heuristic %s fixed %d to one (%d sets)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1052:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1086:11:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
          strcpy(temp, el);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1240:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1317:11:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
          strcpy(temp, el);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1874:7:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
      strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1899:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3315:7:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
      strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3352:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7679:7:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
      strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7714:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7772:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7822:11:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
          strcpy(temp, expr);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:47:17:  [4] (buffer) sscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function.
    int nread = sscanf(line, "%s %s %s %s", col[0], col[1], col[2], col[3]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:53:9:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        sprintf(printLine, "Reading: %s, line %d - first column in mipstart file should be numeric, ignoring.", fileName, nLine);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:58:9:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        sprintf(printLine, "Reading: %s, line %d - Third column in mipstart file should be numeric, ignoring.", fileName, nLine);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:94:5:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    sprintf(printLine, "No mipstart solution read from %s", fileName);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:145:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(colNotFound, colValues[i].first.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:174:5:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    sprintf(printLine, "Warning: %d column names were not found (e.g. %s) while filling solution.", notFound, colNotFound);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15688:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
              sprintf(line, "Heuristic %s took %g seconds (%s)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5386:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
              sprintf(general, "Secondary analysis solve increases lower bound on %d from %g to %g%s",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5412:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
              sprintf(general, "Secondary analysis solve decreases upper bound on %d from %g to %g%s",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1902:9:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1908:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1926:11:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
          sprintf(generalPrint + strlen(generalPrint), "%s ", argv[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1944:7:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
      strcpy(temp, field.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3080:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(generalPrint, "\nResult - %s%s\n\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3186:17:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                strcpy(info.buffer, buf);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3430:19:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                  strcpy(info.buffer, buf);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3792:21:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                    sprintf(generalPrint, "Problem is %s - %.2f seconds",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4495:21:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                    strcpy(name, parameters_[iParam].stringValue().c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:6092:25:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                        sprintf(generalPrint, "Setting %d SOS priorities %s", numberSOS, msg[sosPriorityOption - 1]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7543:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(generalPrint, "%s was tried %d times and created %d cuts of which %d were active after adding rounds of cuts",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7550:21:  [4] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused).
                    strcat(generalPrint, timing);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7573:21:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                    sprintf(generalPrint, "%s was tried %d times out of %d and created %d solutions\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7933:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(generalPrint, "\nResult - %s%s\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7949:21:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                    sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8007:28:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                    pos += sprintf(buf + pos, "stopped on %s,", minor[iStat2].c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8056:19:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                  strcpy(info.buffer, buf);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8206:21:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                    sprintf(generalPrint, "Unable to open file %s", gmplData.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8211:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8410:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8479:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8679:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9046:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9081:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
              sprintf(generalPrint, "opening mipstart file %s.", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9088:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "file %s will be used before preprocessing.", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9170:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9224:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9272:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
              sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9347:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
              sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9468:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "Setting %s to DEBUG %g", parameters_[iParam].name().c_str(), value);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9569:26:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  pos += sprintf(buf + pos, "stopped on %s,", minor[iStat2].c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9605:17:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                strcpy(info.buffer, buf);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9677:15:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
              strcpy(buffer, argv[1]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9703:15:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
              sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9985:23:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                      strcpy(pMask, pMask2 + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9993:23:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                      strcpy(pMask, pMask2 + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9997:21:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                    strcpy(pMask, pMask2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10019:19:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                  strcpy(masks[0], pMask);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10216:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(printFormat, " %s         %s\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10243:23:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
                      fprintf(fp, printFormat, primalRowSolution[iRow],
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10290:25:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
                        fprintf(fp, printFormat,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10431:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                sprintf(generalPrint, "Unable to open file %s", fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12636:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(name, lpSolver->problemName().c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:393:3:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
  strcpy( model->cNames+ps, name );
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:1502:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(s, solver->getColName(colIdxs[i]).c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:67:3:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
  strcpy(algFound, kw->desc);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:342:9:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        fprintf(Stderr, badfmt, what, i, j);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:347:7:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
      fprintf(Stderr, badfmt, what, i1, j1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:374:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(fileName, argv[1]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:735:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(buf, "%s %s", Oinfo.bsname, info->buffer);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1398:19:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                  strcpy(temp, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1400:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(temp, "%g+%s", constant, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1402:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(temp, "%g%s", constant, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1405:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(temp, "%s+%s", expr, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1407:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(temp, "%s%s", expr, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1442:19:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
                  strcpy(temp, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1444:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(temp, "%g+%s", constant, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1446:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(temp, "%g%s", constant, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1449:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(temp, "%s+%s", expr, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1451:19:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
                  sprintf(temp, "%s%s", expr, temp2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFollowOn.cpp:633:49:  [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.
      away[n] = -fabs(value - nearest) * (1.0 + random);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFollowOn.cpp:640:39:  [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.
      away[n] = distanceDown * (1.0 + random);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:257:28:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
        char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:382:5:  [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.
    random[i] = randomNumberGenerator_.randomDouble() + 0.3;
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:591:60:  [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.
      cnt = fixOtherVariables(solver, solution, candidate, random);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:630:74:  [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.
            candidate[cnt++].pseudoRedCost = fabs(reducedCost[iColumn] * random[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:1104:12:  [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.
  delete[] random;
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:1488:17:  [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.
  const double *random)
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:1530:70:  [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.
        candidate[cnt++].pseudoRedCost = fabs(reducedCost[iColumn] * random[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.hpp:141:19:  [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.
    const double *random);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDivePseudoCost.cpp:198:17:  [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.
  const double *random)
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDivePseudoCost.cpp:225:13:  [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.
          * random[i];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDivePseudoCost.cpp:230:13:  [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.
          * random[i];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDivePseudoCost.cpp:235:13:  [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.
          * random[i];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDivePseudoCost.hpp:54:19:  [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.
    const double *random);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicPivotAndFix.cpp:186:3:  [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(time(NULL) + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRandRound.cpp:223:3:  [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(static_cast< unsigned int >(time(NULL) + 1));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRandRound.cpp:390:3:  [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(static_cast< unsigned int >(time(NULL) + 1));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRandRound.cpp:398:16:  [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.
      rp[i] = (random * (cornerPoints[randomIndex][i] - rp[i])) + rp[i];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2694:45:  [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.
            int iStart = static_cast< int >(random * numberRows);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2705:43:  [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.
            int bias = static_cast< int >(random * (numberIterations / 4));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8172:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8393:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8462:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8662:38:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                  char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8715:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9070:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9121:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9207:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9255:34:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
              char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9330:34:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
              char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9642:34:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
              char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9750:38:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                  char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10455:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10494:36:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
                char *environVar = getenv("HOME");
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:364:23:  [3] (buffer) getenv:
  Environment variables are untrustable input if they can be set by an
  attacker. They can have any content and length, and the same variable can
  be set more than once (CWE-807, CWE-20). Check environment variables
  carefully before using them.
  char *environment = getenv("cbc_options");
data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchFollow2.cpp:354:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(rhsx,rhs_,matrix_.getNumRows()*sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchLink.cpp:44:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(weights_, weights, numberMembers_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcBranchLink.cpp:75:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(weights_, weights, numberMembers_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolver2.cpp:275:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(dj, modelPtr_->objective(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolver3.cpp:333:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(dj, modelPtr_->objective(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/examples/CbcSolverLongThin.cpp:558:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(dj, modelPtr_->objective(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/examples/cbc_driverC_sos.c:121:5:  [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 model_name[256];
data/coinor-cbc-2.10.5+ds1/Cbc/examples/cbc_driverC_sos.c:169: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 name[20];
data/coinor-cbc-2.10.5+ds1/Cbc/examples/cbc_driverC_sos.c:170:9:  [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(name," Row%-4i",iRow);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/cbc_driverC_sos.c:203: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 name[20];
data/coinor-cbc-2.10.5+ds1/Cbc/examples/cbc_driverC_sos.c:204:9:  [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(name," Col%-4i",iColumn);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/cbc_driverC_sos.c:225:3:  [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 modelName[80];
data/coinor-cbc-2.10.5+ds1/Cbc/examples/driverFat.cpp:585:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(objective, saveObjective, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/examples/inc.cpp:79: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 outFName[256] = "", strCost[256] = "";
data/coinor-cbc-2.10.5+ds1/Cbc/examples/inc.cpp:80:9:  [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(strCost, "%.12e", bestCost);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/inc.cpp:88:19:  [2] (misc) fopen:
  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 *f = fopen(outFName, "w");
data/coinor-cbc-2.10.5+ds1/Cbc/examples/lotsize.cpp:87:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
    int minutes = atoi(argv[2]);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/nway.cpp:127:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
    int minutes = atoi(argv[2]);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/parallel.cpp:148:27:  [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 **thisArgv = new char *[thisArgc + 2];
data/coinor-cbc-2.10.5+ds1/Cbc/examples/qmip.cpp:143:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
    int minutes = atoi(argv[2]);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample3.cpp:69:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
          value = atoi(x + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample3.cpp:71:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
          value = atoi(argv[i + 1]);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample3.cpp:179:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
    int minutes = atoi(argv[2]);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sample5.cpp:252:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
    int minutes = atoi(argv[2]);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sos.cpp:160:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
    int minutes = atoi(argv[2]);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sudoku.cpp:73:14:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sudoku.cpp:81:3:  [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 line[80];
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sudoku.cpp:187:3:  [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 name[4];
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sudoku.cpp:192:11:  [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(name, "X%d%d", row, column);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sudoku.cpp:194:11:  [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(name, "X%d%c", row, 'A' + (column - 10));
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sudoku.cpp:197:11:  [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(name, "X%c%d", 'A' + (row - 10), column);
data/coinor-cbc-2.10.5+ds1/Cbc/examples/sudoku.cpp:199:11:  [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(name, "X%c%c", 'A' + (row - 10), 'A' + (column - 10));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchDynamic.cpp:74:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, history, numberHistory * sizeof(History));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchDynamic.cpp:625:14:  [2] (misc) fopen:
  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 *fp = fopen(file, "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchLotsize.cpp:224:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(bound_, rhs.bound_, (numberRanges_ + 1) * rangeType_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchLotsize.cpp:252:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bound_, rhs.bound_, (numberRanges_ + 1) * rangeType_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcBranchToFixLots.cpp:58:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(mark_, mark, numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:63:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(members_, which, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:77:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(type_, type, numberMembers_ * sizeof(char));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:106:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(members_, rhs.members_, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:108:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(type_, rhs.type_, numberMembers_ * sizeof(char));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:136:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(members_, rhs.members_, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:138:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(type_, rhs.type_, numberMembers_ * sizeof(char));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:709:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(downMask_, rhs.downMask_, numberWords * sizeof(unsigned int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:711:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(upMask_, rhs.upMask_, numberWords * sizeof(unsigned int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:731:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(downMask_, rhs.downMask_, numberWords * sizeof(unsigned int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcClique.cpp:733:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(upMask_, rhs.upMask_, numberWords * sizeof(unsigned int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFathomDynamicProgramming.cpp:369:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(rhs_, temp, numberActive_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFathomDynamicProgramming.cpp:374:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(numberBits_, temp, numberActive_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFathomDynamicProgramming.cpp:563:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(betterSolution, lower, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFixVariable.cpp:59:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(states_, states, numberStates_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFullNodeInfo.cpp:90:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(lower_, rhs.lower_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcFullNodeInfo.cpp:91:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(upper_, rhs.upper_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenMessages.cpp:102:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(msgs->source_, "CbcG");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenParamUtils.cpp:1342:14:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "wb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenParamUtils.cpp:1387:14:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "rb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:48:3:  [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 pMask[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:98:22:  [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 **masks = new char *[maxMasks];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:99:25:  [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 **newMasks = new char *[maxMasks];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:120:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(maskOut, oldMask, nBefore);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:123:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(maskOut + nBefore + i, ast + 1, nAfter);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:277:10:  [2] (misc) fopen:
  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).
    fp = fopen(fileName.c_str(), "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:278:10:  [2] (misc) fopen:
  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).
    fp = fopen(fileName.c_str(), "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:454:5:  [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 printArray[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:455:5:  [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(printArray, "using time of day seed was changed from %d to %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:780:3:  [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 generalPrint[LEN_PRINT];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:875:15:  [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(generalPrint, "Full problem %d rows %d columns, reduced to %d rows %d columns - %d fixed gives %d, %d - still too large",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:882:15:  [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(generalPrint, "Full problem %d rows %d columns, reduced to %d rows %d columns - %d fixed gives %d, %d - ok now",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:1026:9:  [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(generalPrint, "Full problem %d rows %d columns, reduced to %d rows %d columns - too large",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:1035:9:  [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(generalPrint, "Full problem %d rows %d columns, reduced to %d rows %d columns",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:1400: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(generalPrint, "Unable to insert previous solution - using cutoff of %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:1531:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(newSolution, solver->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:1681:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(inputSolution_, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:2115:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(newSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:2717:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:2731:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(newSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:3115:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(betterSolution, inputSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDINS.cpp:328:7:  [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 generalPrint[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDINS.cpp:329:7:  [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(generalPrint,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:333:3:  [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 dwPrint[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:334:3:  [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(dwPrint, "Before PASSes objective is %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:460:5:  [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(dwPrint, "*** %d blocks have no elements in master - can be solved separately",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:466:3:  [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(dwPrint, "With initial best solution %d blocks were same as continuous, %d when just looking at integers",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:495:9:  [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(dwPrint, "Pass %d improved objective by %g using %d blocks - ",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:522:7:  [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(dwPrint, "Exiting on lack of progress");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:529:7:  [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(dwPrint, "Exiting on time or interrupt");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:541:9:  [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(dwPrint, "No improvement - think we need more variables ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:551:9:  [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(dwPrint, "No improvement - stopped on nodes - think we need more nodes ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:577:5:  [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(dwPrint, "new needed %d, nodes %d", nNeeded_, nNodes_);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:604:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(bestSolution_, solver->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:609:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(blocks + 1, whichBlock, numberBlocksUsed * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:754:11:  [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(dwPrint, "Block %d contobj %g intobj %g convdual %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:914:11:  [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(dwPrint, "freeing block %d (already freed %d times) - dj %g, diff %g, diffint %g - %d columns (%d integer)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:946:7:  [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(dwPrint, "%d big dj blocks found", nBigDjBlock);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:953:7:  [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(dwPrint, "Changing phase");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:998:5:  [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(dwPrint, "Fixed %d ints, %d c, %d m - free %d, %d, %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1047:7:  [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(dwPrint, "**** Continuous below best - bad solution passed in?!");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1083:7:  [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(dwPrint, "Reduced model has %d rows and %d columns",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1249:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(fixedDj_, solver->getReducedCost(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1261:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(bestSolution_, model.bestSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1306:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(betterSolution, bestSolution_,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1342:3:  [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 dwPrint[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1458:5:  [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(dwPrint, "%d master rows %d <= < %d", lastMaster - firstMaster,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1571:9:  [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(dwPrint, "Block %d has %d rows and %d columns (%d elements, %d integers)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1594:9:  [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(dwPrint, "Number of blocks reduced from %d to %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1818:7:  [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(dwPrint, "Total not affinity %d - average %g%%",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1827:7:  [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(dwPrint, "Too many blocks - no affinity");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1842:3:  [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 dwPrint[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1849:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(weightsT, weights_, numberDW_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1850:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(dwBlockT, dwBlock_, numberDW_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1851:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(fingerT, fingerPrint_,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1931:5:  [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(dwPrint, "block %d nel %d nelInt %d nelInt1 %d - weight %g (%g)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1943:7:  [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(dwPrint, "above looks like duplicate");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1975:7:  [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(dwPrint, "Adding %d proposals with %d elements - out of room",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:1989:5:  [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(dwPrint, "Adding %d proposals with %d elements",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:2003:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(objs, objectiveDW_, numberDWTimes_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:2007:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, numberColumnsDW_, numberDWTimes_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:2030:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(bestSolution_, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:2039:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(continuousSolution_, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:2150:3:  [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 dwPrint[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDW.cpp:2187:3:  [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(dwPrint, "DW model has %d master rows, %d master columns and %d convexity rows",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:359:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(newSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:367:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(lowerBefore, lower, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:368:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(upperBefore, upper, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:928:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(newSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:963:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(lastDjs, solver->getReducedCost(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:964:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(lowerBefore, lower, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:965:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(upperBefore, upper, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:1151:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:1172:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(originalLower, model_->solver()->getColLower(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicDive.cpp:1174:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(originalUpper, model_->solver()->getColUpper(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:221:3:  [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 pumpPrint[LEN_PRINT];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:385:3:  [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(pumpPrint, "Initial state - %d integers unsatisfied sum - %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:592:11:  [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(pumpPrint, "Reduced cost fixing fixed %d variables on major pass %d", nFix, numberTries);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:677:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(lastSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:692:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(saveObjective, solver->getObjCoefficients(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:804:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(newSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:821:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(solverSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:838:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(roundingSolution, roundingSolution + numberColumns,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:864:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(newSolution, roundingSolution,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:881:9:  [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(pumpPrint, "Solution found of %g", newSolutionValue);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:906:15:  [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(pumpPrint, "Branch and bound needed to clear up %d general integers", numberLeft);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:936:17:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                memcpy(newSolution, solver->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:943:17:  [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(pumpPrint, "Relaxing continuous gives %g", newSolutionValue);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:948:30:  [2] (misc) fopen:
  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 *fp = fopen("solution.data2", "wb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1023:17:  [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(pumpPrint, "Infeasible when relaxing continuous!\n");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1031:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1063:15:  [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(pumpPrint, "Cleaned solution of %g", solutionValue);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1071: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(pumpPrint, "Mini branch and bound could not fix general integers");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1077:11:  [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(pumpPrint, "After further testing solution no better than previous of %g", solutionValue);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1286:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(newSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1300: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(pumpPrint, "Intermediate solution found of %g", newSolutionValue);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1305:15:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
              memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1582:23:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                      memcpy(roundingSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1665:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(sol, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1750:11:  [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(pumpPrint, "Pass %3d: suminf. %10.5f (%d) obj. %g iterations %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1755:11:  [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(pumpPrint, "Pass %3d: (%.2f seconds) suminf. %10.5f (%d) obj. %g iterations %d", numberPasses + totalNumberPasses,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1908:9:  [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(pumpPrint, "Rounding solution of %g is better than previous of %g\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1917:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(betterSolution, roundingSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:1926:7:  [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(pumpPrint, "No solution found this major pass");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2022:9:  [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(pumpPrint, "Before mini branch and bound, %d integers at bound fixed and %d continuous",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2025:11:  [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(pumpPrint + strlen(pumpPrint), " of which %d were internal integer and %d internal continuous",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2062:17:  [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(pumpPrint,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2117:11:  [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(pumpPrint, "Mini branch and bound improved solution from %g to %g (%.2f seconds)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2122:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2227:17:  [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(pumpPrint, "Freeing continuous variables gives a solution of %g", value);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2232:17:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                memcpy(betterSolution, newSolver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2236:15:  [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(pumpPrint, "On closer inspection solution is not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2245:11:  [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(pumpPrint, "Mini branch and bound did not improve solution (%.2f seconds)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2268:17:  [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(pumpPrint, "Freeing continuous variables gives a solution of %g", value);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2274:17:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                memcpy(betterSolution, newSolver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2335:7:  [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(pumpPrint, "Round again with cutoff of %g", cutoff);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2391:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2413:5:  [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(pumpPrint, "After %.2f seconds - Feasibility pump exiting - took %.2f seconds",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2416:5:  [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(pumpPrint, "After %.2f seconds - Feasibility pump exiting with objective of %g - took %.2f seconds",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2419:5:  [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(pumpPrint, "After %.2f seconds - Feasibility pump exiting with objective of %g (stopping after %d solutions) - took %.2f seconds",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2582:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(newSolution, newSolution2, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicGreedy.cpp:350:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicGreedy.cpp:778:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicGreedy.cpp:1162:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(newSolution, newSolution0, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicGreedy.cpp:1755:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:431:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(newSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:917:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(betterSolution, newSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:1199:3:  [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 proxPrint[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:1222:5:  [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(proxPrint, "Proximity search ran %d nodes (out of %d) - in new solution %d increased (%d), %d decreased (%d)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:1231:5:  [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(proxPrint, "Proximity search ran %d nodes - no new solution",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:1378:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(betterSolution, newSolver->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:1433:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(betterSolution, newSolution,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:1506:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(betterSolution, newSolution,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:1576:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(random_, rhs.random_, 10 * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicLocal.cpp:1588:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(random_, rhs.random_, 10 * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:128:7:  [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 line[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:129:7:  [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(line, "Reduced cost fixing fixed %d variables", nFix);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:371:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(saveUpper, rowUpper, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:426:11:  [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 line[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:568:11:  [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 line[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:991:15:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
              memcpy(saveLower, colLower, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRENS.cpp:992:15:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
              memcpy(saveUpper, colUpper, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRINS.cpp:90:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(used_, rhs.used_, numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicRINS.cpp:125:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(used_, rhs.used_, numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicVND.cpp:93:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(baseSolution_, rhs.baseSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicVND.cpp:131:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(baseSolution_, rhs.baseSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:245:15:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
              memcpy(gradient, qpTemp.objectiveAsObject()->gradient(&qpTemp, bestSolution_, offset, true, 2),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:342:5:  [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 temp[50];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:343:5:  [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(temp, "bb%d", xxxxxx);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1051: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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1085:11:  [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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1239: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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1316:11:  [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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1447:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(startNonLinear_, pos, numberNonLinearRows_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1873:7:  [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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1898: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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2156:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(saveRowSolution, rowActivity, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2170:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(model.dualRowSolution(), savePi, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2171:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(model.statusArray(), saveStatus, numberRows + numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2188:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(model.primalColumnSolution(), sol2, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2189:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(model.statusArray(), status2, numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2334:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(saveSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2335:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(saveRowSolution, rowActivity, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2336:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(savePi, model.dualRowSolution(), numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2337:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(saveStatus, model.statusArray(), numberRows + numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2370:7:  [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 temp[20];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2371:7:  [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(temp, "pass%d.mps", iPass);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2381:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(solution, safeSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2382:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(saveSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2385:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(saveRowSolution, rowActivity, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2386:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(model.dualRowSolution(), savePi, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2387:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(model.statusArray(), saveStatus, numberRows + numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2400:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(safeSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2419:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(solution, saveSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2420:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(rowActivity, saveRowSolution, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2421:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(model.dualRowSolution(), savePi, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2422:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(model.statusArray(), saveStatus, numberRows + numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2437:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(solution, saveSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2451:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(model.primalColumnSolution(), sol2, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2452:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(model.statusArray(), status2, numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2628:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(gradient, qp->objectiveAsObject()->gradient(qp, solution, offset, true, 2),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:2910:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(cbcModel->bestSolution(), cbcModel->solver()->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3238:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(bestSolution_, solution, CoinMin(numberColumns, numberColumnsThis) * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3314:7:  [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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3351: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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3643:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(cbcModel->bestSolution(), cbcModel->solver()->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3758:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(affected_, rhs.affected_, numberAffected_ * sizeof(boundElementAction));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3786:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(affected_, rhs.affected_, numberAffected_ * sizeof(boundElementAction));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3800:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, affected_, numberAffected_ * sizeof(boundElementAction));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3841:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, affected_, numberAffected_ * sizeof(boundElementAction));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3922:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(betterSolution, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3971:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(weights_, weights, numberMembers_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:4004:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(weights_, weights, numberMembers_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:5207:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(tempI, extraRow_, numberExtraRows_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:5208:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(tempD, multiplier_, numberExtraRows_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7257:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(modelPtr_->objective(), trueObjective->gradient(modelPtr_, solution, offset, true, 2),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7678:7:  [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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7713: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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7771: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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7821:11:  [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 temp[20000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinkedUtils.cpp:275:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(objective_, rhs.objective_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinkedUtils.cpp:281:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(gradient_, rhs.gradient_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinkedUtils.cpp:320:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(objective_, rhs.objective_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinkedUtils.cpp:326:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(gradient_, rhs.gradient_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinkedUtils.cpp:711:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(gradient, lastGradient_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMessage.cpp:81:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(source_, "Cbc");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:37:13:  [2] (misc) fopen:
  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 *f = fopen(fileName, "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:40:3:  [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 line[STR_SIZE];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:43:3:  [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 printLine[STR_SIZE];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:46:5:  [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 col[4][STR_SIZE];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:71:5:  [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(printLine, "MIPStart values read for %d variables.", static_cast< int >(colValues.size()));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:122:3:  [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 printLine[STR_SIZE];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:125:3:  [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 colNotFound[256] = "";
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:128:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(realObj, lp->getObjCoefficients(), sizeof(double)*lp->getNumCols());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:280:5:  [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(printLine, "MIPStart solution provided values for %d of %d integer variables, %d variables are still fractional.", fixed, lp->getNumIntegers(), static_cast< int >(lp->getFractionalIndices().size()));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:294:7:  [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(printLine, "Mini branch and bound defined values for remaining variables in %.2f seconds.",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:309:7:  [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(printLine, "Mini branch and bound defined values for remaining variables in %.2f seconds.",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:335:5:  [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(printLine, "MIPStart provided solution with cost %g", compObj);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:482: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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:484:11:  [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(general, "%d integer variables out of %d objects (%d integer) have costs - high priority",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:487:11:  [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(general, "No integer variables out of %d objects (%d integer) have costs",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:491:11:  [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(general, "%d integer variables out of %d objects (%d integer) have cost of %g - high priority",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:497:9:  [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(general, "branch on satisfied %c create fake objective %c random cost %c",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2076:7:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2077:7:  [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(general, "Solution of %g already found by heuristic",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2135:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(bestSolution_, solver_->getColSolution(), n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2776:5:  [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 general[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2779:7:  [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(general, "Multiple root solvers took a total of %.2f seconds\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2782:7:  [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(general, "Multiple root solvers took a total of %.2f seconds (%.2f elapsed)\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2887:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(currentSolution_, solver_->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2980:17:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:2981:17:  [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(general, "Solvers give infeasible bounds on %d %g,%g was %g,%g - search finished\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3001:11:  [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 printBuffer[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3002:11:  [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(printBuffer, "%d solvers added %d different cuts out of pool of %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3007: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(printBuffer, "%d bounds were tightened",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3016:22:  [2] (misc) fopen:
  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 *fp = fopen("global.cuts", "rb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3064:20:  [2] (misc) fopen:
  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).
              fp = fopen("global.fix", "rb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3092:15:  [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 printBuffer[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3093:15:  [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(printBuffer, "%d cuts read in of which %d were unique, %d bounds tightened",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3113:18:  [2] (misc) fopen:
  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).
            fp = fopen("global.cuts", "r+b");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3150:18:  [2] (misc) fopen:
  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).
            fp = fopen("global.cuts", "wb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3174:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(elements, elementByRow + start, n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3175:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(indices, column + start, n * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3210:18:  [2] (misc) fopen:
  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).
            fp = fopen("global.fix", "wb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3482:5:  [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 printBuffer[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3484:7:  [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(printBuffer, "Add %g to all Cplex messages for true objective",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:3492:5:  [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(printBuffer, "Cplex took %g seconds",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:4170:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(temp, statistics_, numberNodes2_ * sizeof(CbcStatistics *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:5058:7:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:5059:7:  [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(general, "%d conflict cuts generated - average length %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:5394:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bestSolution_, solver_->getColSolution(), n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:5912:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(newArray, array, oldLength * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:5923:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(newArray, array, oldLength * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:6193:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(originalColumns_, rhs.originalColumns_, numberColumns * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:6236:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(integerVariable_, rhs.integerVariable_, numberIntegers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:6253:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(bestSolution_, rhs.bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:6383:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bestSolution_, rhs.bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:6540:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(heuristic_, rhs.heuristic_,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:6576:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(originalColumns_, rhs.originalColumns_, numberColumns * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:6606:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(integerVariable_, rhs.integerVariable_,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:7158:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(generator_, temp, numberCutGenerators_ * sizeof(CbcCutGenerator *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:7167:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(virginGenerator_, temp, numberCutGenerators_ * sizeof(CbcCutGenerator *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:7180:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(heuristic_, temp, numberHeuristics_ * sizeof(CbcHeuristic *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:7743:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, whichGenerator_, numberNow * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:8569:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(oldLower, cbcColLower_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:8570:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(oldUpper, cbcColUpper_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:10434:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(objective, saveObj, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:10436:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(rowLower, saveRowLower, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:10438:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(rowUpper, saveRowUpper, numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:10575:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(saveSolution, solver_->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:10577:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(saveLower, solver_->getColLower(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:10578:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(saveUpper, solver_->getColUpper(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:10886:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, integerVariable_, numberIntegers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:10920:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(newModel->originalColumns_, originalColumns_, numberColumns * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:11507:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(object_ + numberIntegers_, oldObject, nObjects * sizeof(OsiObject *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:12243:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(saveUpper, getColUpper(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:12244:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(saveLower, getColLower(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:12671:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(solution, solver_->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:12921:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(saveUpper, solver_->getColUpper(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:12922:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(saveLower, solver_->getColLower(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:13458:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(bestSolution_, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:13462:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bestSolution_, saveSol, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:13639:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(objective, solver_->getObjCoefficients(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:13738:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(solution, solver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:13857:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(solution, solver->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:13939:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(currentSolution_, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:14739:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(newModel.objective(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:14742:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(newModel.columnLower(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:14745:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(newModel.columnUpper(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:14783:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(clpSimplex->primalColumnSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:14786:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(clpSimplex->dualColumnSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:14789:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(clpSimplex->primalRowSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:14792:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(clpSimplex->dualRowSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:14795:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(clpSimplex->statusArray(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15444:5:  [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 printBuffer[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15446:7:  [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(printBuffer, "Warning %d integer variables were more than 1.0e-4 away from integer", numberAway);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15455:9:  [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(printBuffer, "Given objective value %g, computed %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15484:7:  [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(printBuffer, "Solution with objective value %g saved",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15516:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(bestSolution_, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15641:19:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                  memcpy(newSolution, parameters[i].solution,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15687:15:  [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 line[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15696:24:  [2] (misc) fopen:
  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 *fp = fopen("solution.data", "rb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:15699:20:  [2] (misc) fopen:
  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).
              fp = fopen("solution.data", "wb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:16032:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(originalColumns_, originalColumns, numberCopy * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:16206:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(currentSolution_, solver_->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:16387: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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:16391: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(general, "fathom took %d nodes, %d iterations - status %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:16552:15:  [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 printBuffer[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:16553:15:  [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(printBuffer, "Add %g to all Cplex messages for true objective",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:17141:15:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
              memcpy(temp, statistics_, numberNodes2_ * sizeof(CbcStatistics *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:17205:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(temp, statistics_, numberNodes2_ * sizeof(CbcStatistics *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:17672:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(save + 2, solution, n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:17685:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(bestSolution_, solution, n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:17855:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(originalIntegers, integerVariable_, numberIntegers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:18623:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(currentSolution_, solver_->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:18918:3:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:18920:5:  [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(general, "Starting multiple root solver");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:18934:5:  [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(general, "Solver did %d iterations in initialSolve\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:18942:3:  [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(general, "Ending multiple root solver");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:19358:7:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:19359:7:  [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(general, "%d objects not SOS or Integer - can't move to Osi",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNWay.cpp:48:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(members_, which, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNWay.cpp:63:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(members_, rhs.members_, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNWay.cpp:101:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(members_, rhs.members_, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNWay.cpp:289:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(order_, order, number * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNWay.cpp:300:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(order_, rhs.order_, numberInSet_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNWay.cpp:317:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(order_, rhs.order_, numberInSet_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:580:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(saveSolution, solver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:848:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(saveSolution, solver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:1416:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(saveSolution, solver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:1418:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(saveLower, solver->getColLower(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:1419:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(saveUpper, solver->getColUpper(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:1725:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(saveSolution, solver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:2559:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveLower, solver->getColLower(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:2560:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveUpper, solver->getColUpper(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:2566:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveLower, solver->getColLower(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:2567:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveUpper, solver->getColUpper(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:2666:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveLower, solver->getColLower(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:2667:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveUpper, solver->getColUpper(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3034:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveLower, solver->getColLower(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3035:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveUpper, solver->getColUpper(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3292:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveLower, solver->getColLower(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3293:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveUpper, solver->getColUpper(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3531:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveLower, solver->getColLower(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3532:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveUpper, solver->getColUpper(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3692:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveLower, solver->getColLower(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3693:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveUpper, solver->getColUpper(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3754:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveLower, solver->getColLower(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:3755:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(saveUpper, solver->getColUpper(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4009:5:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4011:7:  [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(general, "Strong branching on all %d unsatisfied, %d iterations (depth %d)\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4014:7:  [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(general, "Strong branching on all %d unfixed variables (%d unsatisfied), %d iterations (depth %d)\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4224:15:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
              memcpy(choice->integerSolution, thisSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4443:3:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4460:5:  [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(general, "Analyze options %d", solveType);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4507:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(saveSolution, solver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4601:5:  [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(general, "Using %d threads in analysis\n", numberThreads);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4745:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(index0 + first, index + first, n * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4746:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(weight0 + first, weight + first, n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4773:7:  [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(general, "%d variables looked at - %d changed by initial strong branching (%.2f seconds - %d iterations)", numberDone, numberToFix, model->getCurrentSeconds() - time1, saveAllowed - numberIterationsAllowed);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4882:17:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                memcpy(bestSolution, foundSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5075:5:  [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(general, "%d variable bounds modified by initial strong branching (%.2f seconds - %d iterations)", numberToFix, model->getCurrentSeconds() - time1, saveAllowed - numberIterationsAllowed);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5077:5:  [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(general, "initial strong branching found to be infeasible (%.2f seconds - %d iterations)", model->getCurrentSeconds() - time1, saveAllowed - numberIterationsAllowed);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5079:5:  [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(general, "No variables fixed by initial strong branching (%.2f seconds - %d iterations)", model->getCurrentSeconds() - time1, saveAllowed - numberIterationsAllowed);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5101:3:  [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(general, "Looked at %d integer variables - smallest interaction %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5122:5:  [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(general + strlen(general), "%d <= %g ", groupCounts[i], groupValue[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5151:3:  [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(general, "Strong branching - %d bounds changed, %d zero objective changes and %d nonzero (smallest %g)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5158:3:  [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(general, "Breakdown ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5175:5:  [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(general + strlen(general), "%d <= %g ", groupCounts[i], groupValue[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5220:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(obj, solver->getObjCoefficients(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5259:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(staticInfo.newObjective, solver->getObjCoefficients(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5288:9:  [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(general, "%d variables looked at - %d bounds changed by secondary solves (%.2f seconds - %d iterations)", numberDone, numberBoundsChanged, model->getCurrentSeconds() - time1, saveAllowed - numberIterationsAllowed);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5554:5:  [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(general, "%d bounds changed by secondary solves (%.2f seconds - %d iterations)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5560:5:  [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(general, "No bounds changed by secondary solves (%.2f seconds - %d iterations)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5830:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(saveSolution, solver->getColSolution(), solver->getNumCols() * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5945:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(saveSolution, solver->getColSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNodeInfo.cpp:338:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(temp, cuts_, numberCuts_ * sizeof(CbcCountRowCut *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNodeInfo.cpp:383:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(temp, cuts_, numberCuts_ * sizeof(CbcCountRowCut *));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSOS.cpp:89:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(members_, which, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSOS.cpp:91:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(weights_, weights, numberMembers_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSOS.cpp:134:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(members_, rhs.members_, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSOS.cpp:135:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(weights_, rhs.weights_, numberMembers_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSOS.cpp:170:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(members_, rhs.members_, numberMembers_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSOS.cpp:171:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(weights_, rhs.weights_, numberMembers_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleInteger.hpp:104:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(down_, bounds, 2 * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleInteger.hpp:109:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(up_, bounds, 2 * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerDynamicPseudoCost.cpp:52:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(temp, history, numberHistory * sizeof(History));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerDynamicPseudoCost.cpp:1559:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(other, otherVariable_, numberOther_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerDynamicPseudoCost.cpp:1562:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(bounds, zeroLowerBound_, numberOther_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerDynamicPseudoCost.cpp:1563:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(bounds + nNew, oneLowerBound_, numberOther_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerDynamicPseudoCost.cpp:1564:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(bounds + 2 * nNew, zeroUpperBound_, numberOther_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSimpleIntegerDynamicPseudoCost.cpp:1565:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(bounds + 3 * nNew, oneUpperBound_, numberOther_ * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1128: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 **argv = new char *[n + 2];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1398:3:  [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 generalPrint[10000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1407:3:  [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 generalPrint[10000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1419:21:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
      if (equals && atoi(equals + 1) != 0)
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1425:11:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
      if (atoi(argv[i + 1]) != 0)
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1500:27:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
            if (equals && atoi(equals + 1) > 0) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1502:31:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
              info.logLevel = atoi(equals + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1525:49:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
            if (i < info.numberArguments - 1 && atoi(info.arguments[i + 1]) > 0)
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1658:11:  [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(generalPrint, "Ampl objective offset is %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1899:7:  [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(generalPrint,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1905:9:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1911:7:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1920:9:  [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(generalPrint, "command line - ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1929:11:  [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(generalPrint + strlen(generalPrint), "(default strategy 1)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1943:7:  [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 temp[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2236:19:  [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(generalPrint, "%d columns fixed\n", numberFixed);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2847:21:  [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(generalPrint, "Dual of model has %d rows and %d columns",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2872:21:  [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(generalPrint, "Doing %d presolve passes - picking up non-costed slacks",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2881:21:  [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(generalPrint, "Doing %d presolve passes - picking up costed slacks",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2996:19:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                  memcpy(model2->primalColumnSolution(), solution,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3083:19:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3085:19:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3088:19:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3091:19:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3128:17:  [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 buf[300];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3132:26:  [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.
                  pos += sprintf(buf + pos, "optimal,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3135:26:  [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.
                  pos += sprintf(buf + pos, "infeasible,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3138:26:  [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.
                  pos += sprintf(buf + pos, "unbounded,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3140:26:  [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.
                  pos += sprintf(buf + pos, "stopped on iterations or time,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3143:26:  [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.
                  pos += sprintf(buf + pos, "stopped on difficulties,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3146:26:  [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.
                  pos += sprintf(buf + pos, "stopped on ctrl-c,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3149:26:  [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.
                  pos += sprintf(buf + pos, "integer infeasible,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3152:26:  [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.
                  pos += sprintf(buf + pos, "status unknown,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3157:24:  [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.
                pos += sprintf(buf + pos, " objective %.*g", ampl_obj_prec(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3159:17:  [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(buf + pos, "\n%d iterations",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3191:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3226:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3234:17:  [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(generalPrint, "** Analysis indicates model infeasible");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3238:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3251:19:  [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(generalPrint, "Matrix converted to +- one matrix");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3254:19:  [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(generalPrint, "Matrix can not be converted to +- 1 matrix");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3258:17:  [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(generalPrint, "Matrix not a ClpPackedMatrix");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3262:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3276:17:  [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(generalPrint, "%d rows eliminated", nOut);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3281:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3295:19:  [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(generalPrint, "Matrix converted to network matrix");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3298:19:  [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(generalPrint, "Matrix can not be converted to network matrix");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3302:17:  [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(generalPrint, "Matrix not a ClpPackedMatrix");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3306:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3397:19:  [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 buf[300];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3399:26:  [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.
                  pos += sprintf(buf + pos, "feasible,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3402:26:  [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.
                  pos += sprintf(buf + pos, " objective %.*g", ampl_obj_prec(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3404:19:  [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(buf + pos, "\n0 iterations");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3670:25:  [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(generalPrint, "Problem is infeasible - tightenPrimalBounds!");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3702:25:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                        memcpy(gradient, qp->objectiveAsObject()->gradient(qp, solution, offset, true, 2),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3804:19:  [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(generalPrint, "Continuous objective value is %g - %.2f seconds",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3842:19:  [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(generalPrint, "Problem is infeasible - tightenPrimalBounds!");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3947:21:  [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(generalPrint, "Problem is infeasible!");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4245:23:  [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(generalPrint, "%d variables in SOS1 sets made integer, %d non integer in SOS1, %d in SOS2\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4416:19:  [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(info.buffer, "infeasible/unbounded by pre-processing");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4424:21:  [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(generalPrint, "Pre-processing says infeasible or unbounded");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4484:19:  [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 name[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4486:21:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
                    strcpy(name, "presolved.mps");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4509:23:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
                      strcat(name, "_preprocessed.mps");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4511:23:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
                      strcpy(name, "preprocessed.mps");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4666:19:  [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(generalPrint, "Problem has %d integers (%d of which binary) and %d continuous",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4672:21:  [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(generalPrint, "%d continuous have nonzero objective, %d have zero objective",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4678:19:  [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(generalPrint, "%d integer have nonzero objective, %d have zero objective, %d different nonzero (taking abs)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4700:25:  [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(generalPrint, "%d variables have objective of %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4709:21:  [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(generalPrint, "%d variables have objective of %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:4822:23:  [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(generalPrint, "Replacing model - %d new variables", numberDifferentObj);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5009:25:  [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(generalPrint, "Objective integer added with %d elements and %d Integer slacks added",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5013:25:  [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(generalPrint, "Objective integer added with %d elements",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5018:25:  [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(generalPrint, "%d Integer slacks added", addSlacks);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5049:19:  [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(generalPrint, "Problem is infeasible!");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5209:15:  [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 doAtEnd[30] = {};
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5620:23:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                      memcpy(newValues, siCopy->getColSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5641:17:  [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(generalPrint, "mip options %d", mipOptions);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5679:19:  [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(generalPrint, "more mip options %d", moreMipOptions);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5782:25:  [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 newName[15];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5783:25:  [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(newName, "C%7.7d", i);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5985:23:  [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(generalPrint, "%d SOS variables vanished due to pre processing? - check validity?", nMissing);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:5987:23:  [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(generalPrint, "%d SOS variables eliminated by pre processing", nMissing);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:6075:27:  [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(generalPrint, "%d SOS variables vanished due to pre processing? - check validity?", nMissing);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:6077:27:  [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(generalPrint, "%d SOS variables eliminated by pre processing", nMissing);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:6086:31:  [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.
                        const char *msg[4] = {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:6275:27:  [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(generalPrint, "%d SOS variables vanished due to pre processing? - check validity?", nMissing);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:6415:30:  [2] (misc) fopen:
  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 *fp = fopen("user_driver.cpp", "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:6441:19:  [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(generalPrint, "Testing OsiObject options %d", testOsiOptions);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:6923:25:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                        memcpy(columns + nEls, which, n * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7222:19:  [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(generalPrint, "Starting %d passes each with %d solvers",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7228:21:  [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(generalPrint, "Starting pass %d", iGo + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7275:21:  [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(generalPrint, "Ending major passes - best solution %g", -bestValues[numberSolutions - 1]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7277:21:  [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(generalPrint, "Ending major passes - no solution found");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7513:17:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                memcpy(lpSolver->primalColumnSolution(), babModel_->bestSolution(), n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7520:17:  [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(generalPrint, "Cuts at root node changed objective from %g to %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7534:56:  [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.
                statistics_name_generators = new const char *[numberGenerators];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7538:17:  [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 timing[30];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7549:21:  [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(timing, " (%.3f seconds)", generator->timeInCutGenerator());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7731:21:  [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(generalPrint, "%d bounds tightened after postprocessing\n",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7778:19:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                  memcpy(bestSolution, babModel_->solver()->getColSolution(), n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7782:19:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                  memcpy(bestSolution, babModel_->solver()->getColSolution(), n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7839:17:  [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(generalPrint, "Restoring heuristic best solution of %g", model_.getMinimizationObjValue());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7850:17:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                memcpy(bestSolution, babModel_->solver()->getColSolution(), n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7895:19:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                  memcpy(lpSolver->primalColumnSolution(), bestSolution, n * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7940:21:  [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(generalPrint,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7944:21:  [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(generalPrint,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7954:23:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7959:19:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7962:19:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7966:19:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7969:19:  [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(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7992:19:  [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 buf[300];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7996:30:  [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.
                      pos += sprintf(buf + pos, "optimal,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8000:30:  [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.
                      pos += sprintf(buf + pos, "infeasible,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8010:28:  [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.
                    pos += sprintf(buf + pos, "stopped on difficulties,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8013:28:  [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.
                    pos += sprintf(buf + pos, "stopped on ctrl-c,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8015:28:  [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.
                    pos += sprintf(buf + pos, "status unknown,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8023:30:  [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.
                      pos += sprintf(buf + pos, " objective %.*g", precision,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8026:30:  [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.
                      pos += sprintf(buf + pos, " objective %g", value);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8028:19:  [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(buf + pos, "\n%d nodes, %d iterations, %g seconds",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8060:17:  [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(generalPrint, "Model strengthened - now has %d rows",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8078:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8201:24:  [2] (misc) fopen:
  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).
                  fp = fopen(gmplData.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8344:32:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8353:17:  [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(generalPrint, "There were %d errors on input", status);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8404:26:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8473:26:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8488:19:  [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(generalPrint, "Dual of model has %d rows and %d columns",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8540:32:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8563:38:  [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.
                      rowNames = new char *[numberRows];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8568:41:  [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.
                      columnNames = new char *[numberColumns];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8600:34:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8636:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8673:28:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8695:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8726:26:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8748:17:  [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 line[1000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8811:46:  [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 **columnNames = new char *[numberColumns];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8932:37:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
                          iColumn = atoi(pos);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8955:33:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
                          pri = atoi(pos);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8972:38:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
                          priValue = atoi(pos);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9050:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9094:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9132:26:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "rb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9174:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9218:26:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9235:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9266:24:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "wb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9309:17:  [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(generalPrint, "There were errors on output");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9341:24:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "rb");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9359:17:  [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(generalPrint, "There were errors on input");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9553:17:  [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 buf[300];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9558:28:  [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.
                    pos += sprintf(buf + pos, "optimal,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9562:28:  [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.
                    pos += sprintf(buf + pos, "infeasible,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9572:26:  [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.
                  pos += sprintf(buf + pos, "stopped on difficulties,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9575:26:  [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.
                  pos += sprintf(buf + pos, "stopped on ctrl-c,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9578:26:  [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.
                  pos += sprintf(buf + pos, "integer infeasible,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9581:26:  [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.
                  pos += sprintf(buf + pos, "status unknown,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9587:26:  [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.
                  pos += sprintf(buf + pos, " objective %.*g", ampl_obj_prec(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9589:17:  [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(buf + pos, "\n%d nodes, %d iterations",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9654: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[1000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9655:24:  [2] (misc) fopen:
  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 *fp = fopen(fileName.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9666:18:  [2] (misc) fopen:
  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).
            fp = fopen(fileName.c_str(), "a");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9762:24:  [2] (misc) fopen:
  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).
                  fp = fopen(fileName.c_str(), "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9764:24:  [2] (misc) fopen:
  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).
                  fp = fopen(fileName.c_str(), "a");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9878:23:  [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(generalPrint, "All alternative solutions printed");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9884:23:  [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(generalPrint, "Alternative solution - %d remaining", model_.numberSavedSolutions() - 2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9902:21:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                    memcpy(solution, nextBestSolution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9976:19:  [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 pMask[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10012:31:  [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.
                  masks = new char *[maxMasks];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10013:41:  [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 **newMasks = new char *[maxMasks];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10034:25:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                        memcpy(maskOut, oldMask, nBefore);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10037:25:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                        memcpy(maskOut + nBefore + i, ast + 1, nAfter);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10215:17:  [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 printFormat[50];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10294:25:  [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 temp[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10301:27:  [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(temp, "%7d", iColumn);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10303:25:  [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(temp + strlen(temp), ", %15.8g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10370:5:  [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 outputValue[24];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10435:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10468:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10510:15:  [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(generalPrint, "** Current model not valid");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10568:3:  [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(generalPrint,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:11611:14:  [2] (misc) fopen:
  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).
        fp = fopen("fake.bnd", "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:11621: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 name[20];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:11623:11:  [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(name, "block%d.mps", iBlock);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:11659:17:  [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(name, "block%d.bnd", iBlock);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:11660:22:  [2] (misc) fopen:
  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).
                fp = fopen(name, "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12292:14:  [2] (misc) fopen:
  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 *fp = fopen(fileName, "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12297:3:  [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 line[MAXLINES][MAXONELINE];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12298:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#if defined(_MSC_VER)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12299:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0// Turn off compiler warning about long names");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12300:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#  pragma warning(disable:4786)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12301:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#endif\n");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12302:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#include <cassert>");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12303:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#include <iomanip>");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12304:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#include \"OsiClpSolverInterface.hpp\"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12305:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#include \"CbcModel.hpp\"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12306:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#include \"CbcCutGenerator.hpp\"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12307:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#include \"CbcStrategy.hpp\"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12308:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#include \"CglPreProcess.hpp\"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12309:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0#include \"CoinTime.hpp\"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12311:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "0#include \"CglProbing.hpp\""); // possibly redundant
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12313:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  cbcModel->initialSolve();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12314:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  if (clpModel->tightenPrimalBounds()!=0) {");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12315:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    std::cout<<\"Problem is infeasible - tightenPrimalBounds!\"<<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12316:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    exit(1);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12317:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  }");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12318:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  clpModel->dual();  // clean up");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12321:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  // compute some things using problem size");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12322:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  cbcModel->setMinimumDrop(CoinMin(5.0e-2,");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12323:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5       fabs(cbcModel->getMinimizationObjValue())*1.0e-3+1.0e-4));");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12324:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  if (cbcModel->getNumCols()<500)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12325:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    cbcModel->setMaximumCutPassesAtRoot(-100); // always do 100 if possible");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12326:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  else if (cbcModel->getNumCols()<5000)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12327:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    cbcModel->setMaximumCutPassesAtRoot(100); // use minimum drop");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12328:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  else");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12329:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    cbcModel->setMaximumCutPassesAtRoot(20);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12330:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  cbcModel->setMaximumCutPasses(1);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12335:7:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
      strcpy(line[numberLines++], "5  // Preprocessing using CbcStrategy");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12336:7:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
      strcpy(line[numberLines++], "5  CbcStrategyDefault strategy(1,5,5);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12337:7:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
      strcpy(line[numberLines++], "5  strategy.setupPreProcessing(1);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12338:7:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
      strcpy(line[numberLines++], "5  cbcModel->setStrategy(strategy);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12342:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  // Hand coded preprocessing");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12343:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  CglPreProcess process;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12344:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  OsiSolverInterface * saveSolver=cbcModel->solver()->clone();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12345:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  // Tell solver we are in Branch and Cut");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12346:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  saveSolver->setHintParam(OsiDoInBranchAndCut,true,OsiHintDo) ;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12347:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  // Default set of cut generators");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12348:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  CglProbing generator1;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12349:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  generator1.setUsingObjective(1);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12350:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  generator1.setMaxPass(3);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12351:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  generator1.setMaxProbeRoot(saveSolver->getNumCols());");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12352:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  generator1.setMaxElements(100);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12353:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  generator1.setMaxLookRoot(50);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12354:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  generator1.setRowCuts(3);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12355:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  // Add in generators");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12356:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  process.addCutGenerator(&generator1);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12357:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  process.messageHandler()->setLogLevel(cbcModel->logLevel());");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12358:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  OsiSolverInterface * solver2 = ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12359:5:  [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(line[numberLines++], "5    process.preProcessNonDefault(*saveSolver,%d,10);", translate[preProcess]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12360:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  // Tell solver we are not in Branch and Cut");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12361:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  saveSolver->setHintParam(OsiDoInBranchAndCut,false,OsiHintDo) ;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12362:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  if (solver2)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12363:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    solver2->setHintParam(OsiDoInBranchAndCut,false,OsiHintDo) ;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12364:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  if (!solver2) {");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12365:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    std::cout<<\"Pre-processing says infeasible!\"<<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12366:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    exit(1);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12367:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  } else {");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12368:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    std::cout<<\"processed model has \"<<solver2->getNumRows()");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12369:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5	     <<\" rows, \"<<solver2->getNumCols()");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12370:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5	     <<\" columns and \"<<solver2->getNumElements()");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12371:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5	     <<\" elements\"<<solver2->getNumElements()<<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12372:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  }");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12373:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  // we have to keep solver2 so pass clone");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12374:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  solver2 = solver2->clone();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12375:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  cbcModel->assignSolver(solver2);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12376:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5  cbcModel->initialSolve();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12384:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0\nint main (int argc, const char *argv[])\n{");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12385:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  OsiClpSolverInterface solver1;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12386:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  int status=1;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12387:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  if (argc<2)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12388:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0    std::cout<<\"Please give file name\"<<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12389:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  else");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12390:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0    status=solver1.readMps(argv[1],\"\");");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12391:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  if (status) {");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12392:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0    std::cout<<\"Bad readMps \"<<argv[1]<<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12393:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0    exit(1);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12394:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  }\n");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12395:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  double time1 = CoinCpuTime();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12396:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  CbcModel model(solver1);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12397:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  // Now do requested saves and modifications");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12398:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  CbcModel * cbcModel = & model;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12399:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  OsiSolverInterface * osiModel = model.solver();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12400:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  OsiClpSolverInterface * osiclpModel = dynamic_cast< OsiClpSolverInterface*> (osiModel);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12401:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "0  ClpSimplex * clpModel = osiclpModel->getModelPtr();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12403:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "3  // You can save some time by switching off message building");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12404:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "3  // clpModel->messagesPointer()->setDetailMessages(100,10000,(int *) NULL);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12406:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  cbcModel->branchAndBound();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12407:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "8  std::cout<<argv[1]<<\" took \"<<CoinCpuTime()-time1<<\" seconds, \"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12408:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "8	   <<cbcModel->getNodeCount()<<\" nodes with objective \"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12409:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "8	   <<cbcModel->getObjValue()");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12410:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "8	   <<(!cbcModel->status() ? \" Finished\" : \" Not finished\")");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12411:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "8	   <<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12412:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  // For best solution");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12413:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  int numberColumns = solver1.getNumCols();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12414:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  if (cbcModel->getMinimizationObjValue()<1.0e50) {");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12416:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    // post process");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12417:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    process.postProcess(*cbcModel->solver());");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12418:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    // Solution now back in saveSolver");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12419:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    cbcModel->assignSolver(saveSolver);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12420:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5    memcpy(cbcModel->bestSolution(),cbcModel->solver()->getColSolution(),");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12421:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(line[numberLines++], "5	   numberColumns*sizeof(double));");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12423:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    // put back in original solver");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12424:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    solver1.setColSolution(cbcModel->bestSolution());");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12425:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    const double * solution = solver1.getColSolution();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12426:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "8  \n  // Now you would use solution etc etc\n");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12428:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    // Get names from solver1 (as OsiSolverInterface may lose)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12429:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    std::vector<std::string> columnNames = *solver1.getModelPtr()->columnNames();");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12430:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12431:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    int iColumn;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12432:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    std::cout<<std::setiosflags(std::ios::fixed|std::ios::showpoint)<<std::setw(14);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12433:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12434:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    std::cout<<\"--------------------------------------\"<<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12435:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    for (iColumn=0;iColumn<numberColumns;iColumn++) {");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12436:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5      double value=solution[iColumn];");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12437:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5      if (fabs(value)>1.0e-7&&solver1.isInteger(iColumn)) ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12438:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5	std::cout<<std::setw(6)<<iColumn<<\" \"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12439:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5                 <<columnNames[iColumn]<<\" \"");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12440:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5                 <<value<<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12441:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    }");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12442:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    std::cout<<\"--------------------------------------\"<<std::endl;");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12443:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12444:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5    std::cout<<std::resetiosflags(std::ios::fixed|std::ios::showpoint|std::ios::scientific);");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12445:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "5  }");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12446:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(line[numberLines++], "8  return 0;\n}");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12447:8:  [2] (misc) fopen:
  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).
  fp = fopen(fileName, "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12622:5:  [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 general[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12624:7:  [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(general, "%d constraints added in %d passes", numberAdded,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12627:7:  [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(general, "%d constraints added in %d passes (maximum) - must be better way", numberAdded,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12635:5:  [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 name[100];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12637:5:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
    strcat(name, "_nauty");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverAnalyze.cpp:34:3:  [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 generalPrint[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverAnalyze.cpp:316:9:  [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(generalPrint, "Cutoff increment increased from %g to %g", increment, increment2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:163:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(columnLower, saveLB, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:164:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(columnUpper, saveUB, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:581: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 buffer[50];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:585:15:  [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, " ==    zero            ");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:587:15:  [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, "> %6d and <= %6d ", check[i - 1], check[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:589:15:  [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, "> %6d                ", check[i - 1]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:660:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(columnLower, saveColumnLower, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:661:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(columnUpper, saveColumnUpper, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:677:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(columnLower, saveColumnLower, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:678:11:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
          memcpy(columnUpper, saveColumnUpper, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:968:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(columnLower, originalColumnLower, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:969:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(columnUpper, originalColumnUpper, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1102:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(originalLpSolver->statusArray(), lpSolver->statusArray(), numberRows + numberColumns);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1103:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(originalLpSolver->primalColumnSolution(), lpSolver->primalColumnSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1104:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(originalLpSolver->primalRowSolution(), lpSolver->primalRowSolution(), numberRows * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1135:3:  [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 generalPrint[10000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1210:11:  [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(generalPrint, "Initial weight for objective %g, decay factor %g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1227:11:  [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(generalPrint, "Fake cutoff of %g", cutoff);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1256: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(generalPrint, "Fixing if same for %d passes",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1268: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(generalPrint, "Accumulate of %d", accumulate);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1290:15:  [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(generalPrint, "Absolute increment of %g", increment);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1292:15:  [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(generalPrint, "Relative increment of %g", -increment);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1297:11:  [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(generalPrint, "%d retries", r + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1306:11:  [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(generalPrint, "Feasibility pump options of %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolverHeuristics.cpp:1318:9:  [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(generalPrint, "Tuning (fixing) %d", pumpTune % 10);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:134:3:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:145:7:  [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(general, "Orbital branching tried %d times, succeeded %d times - average extra %7.3f, fixing %d times (%d, %7.3f)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:157:9:  [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(general, "Nauty: %d orbits (%d useful covering %d variables), %d generators, group size: %g - dense size %d, sparse %d - took %g seconds",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:164:11:  [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(general, "Nauty did not find any useful orbits in time %g", nautyTime_);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:166:11:  [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(general, "Nauty did not find any useful orbits - but keeping Nauty on");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:170:7:  [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(general, "Nauty failed with error code %d (%g seconds)",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:646:5:  [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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:647:5:  [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(general, "Nauty - initial level %d - will probably take too long",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:830:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(GSparse_->v, v, n_ * sizeof(size_t));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:831:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(GSparse_->d, d, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:832:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(GSparse_->e, e, nel_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:949:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(G_, rhs.G_, m_ * n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:951:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(GSparse_->v, rhs.GSparse_->v, n_ * sizeof(size_t));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:952:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(GSparse_->d, rhs.GSparse_->d, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:953:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(GSparse_->e, rhs.GSparse_->e, nel_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:955:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(lab_, rhs.lab_, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:956:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(ptn_, rhs.ptn_, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:957:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(orbits_, rhs.orbits_, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:958:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(workspace_, rhs.workspace_, worksize_ * sizeof(setword));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:960:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(options_, rhs.options_, MULTIPLIER * sizeof(optionblk));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:961:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(stats_, rhs.stats_, MULTIPLIER * sizeof(statsblk));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:963:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(options_, rhs.options_, MULTIPLIER * sizeof(TracesOptions));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:964:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(stats_, rhs.stats_, MULTIPLIER * sizeof(TracesStats));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:966:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(vstat_, rhs.vstat_, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1036:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(G_, rhs.G_, m_ * n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1038:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(GSparse_->v, rhs.GSparse_->v, n_ * sizeof(size_t));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1039:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(GSparse_->d, rhs.GSparse_->d, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1040:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(GSparse_->e, rhs.GSparse_->e, nel_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1042:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(lab_, rhs.lab_, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1043:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(ptn_, rhs.ptn_, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1044:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(orbits_, rhs.orbits_, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1045:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(workspace_, rhs.workspace_, worksize_ * sizeof(setword));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1047:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(options_, rhs.options_, MULTIPLIER * sizeof(optionblk));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1048:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(stats_, rhs.stats_, MULTIPLIER * sizeof(statsblk));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1050:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(options_, rhs.options_, MULTIPLIER * sizeof(TracesOptions));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1051:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(stats_, rhs.stats_, MULTIPLIER * sizeof(TracesStats));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1053:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(vstat_, rhs.vstat_, n_ * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1219:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(v, vstat_, nv * sizeof(VarStatus));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSymmetry.cpp:1276:10:  [2] (misc) fopen:
  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).
  afp_ = fopen(fname.c_str(), "w");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcThread.cpp:1065: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 general[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcThread.cpp:1066:9:  [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(general, "Changing tree size from %d to %d",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcThread.cpp:1292:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(otherModel->bestSolution_, bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcThread.cpp:1316:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(otherModel->usedInSolution_, usedInSolution_, numberColumns * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcThread.cpp:1412:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bestSolution_, baseModel->bestSolution_,
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcThread.cpp:1639:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(usedInSolution_, baseModel->usedInSolution_, solver_->getNumCols() * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:167:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(savedSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:224:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(originalLower_, rhs.originalLower_, numberIntegers * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:226:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(originalUpper_, rhs.originalUpper_, numberIntegers * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:234:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(bestSolution_, rhs.bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:241:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(savedSolution_, rhs.savedSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:282:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(originalLower_, rhs.originalLower_, numberIntegers * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:284:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(originalUpper_, rhs.originalUpper_, numberIntegers * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:293:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bestSolution_, rhs.bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:301:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(savedSolution_, rhs.savedSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:320:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(savedSolution_, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:430:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bestSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:462:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(savedSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:537:15:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
              memcpy(model_->bestSolution(), subModel->bestSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:555:17:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                memcpy(model_->bestSolution(), subModel->bestSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:571:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(bestSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:589:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(savedSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:671:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(model_->bestSolution(), bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1028:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(savedSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1085:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(originalLower_, rhs.originalLower_, numberIntegers * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1087:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(originalUpper_, rhs.originalUpper_, numberIntegers * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1095:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(bestSolution_, rhs.bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1102:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(savedSolution_, rhs.savedSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1143:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(originalLower_, rhs.originalLower_, numberIntegers * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1145:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(originalUpper_, rhs.originalUpper_, numberIntegers * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1154:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bestSolution_, rhs.bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1162:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(savedSolution_, rhs.savedSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1181:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy(savedSolution_, solution, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1291:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(bestSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1323:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(savedSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1398:15:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
              memcpy(model_->bestSolution(), subModel->bestSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1416:17:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
                memcpy(model_->bestSolution(), subModel->bestSolution(),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1432:13:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
            memcpy(bestSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1450:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(savedSolution_, model_->bestSolution(), numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcTreeLocal.cpp:1532:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(model_->bestSolution(), bestSolution_, numberColumns * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:238:5:  [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 *vString[200];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:589:3:  [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 outFile[512];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:1499:22:  [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 **names = new char *[count];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:1542: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 name[20];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:1544:9:  [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(name, "ROW%5i", iRow);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:1583: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 name[20];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:1585:9:  [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(name, "COL%5i", iColumn);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:60:8:  [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 algFound[20] = "";
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:123:8:  [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 xxxxxx[20];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:365:3:  [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 tempBuffer[20];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:372:3:  [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 fileName[1000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:382:21:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
      if (equals && atoi(equals + 1) >= 10 && atoi(equals + 1) <= 20) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:382:47:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
      if (equals && atoi(equals + 1) >= 10 && atoi(equals + 1) <= 20) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:383:25:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
        nonLinearType = atoi(equals + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:454:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(info->sosPriority, sospri, nsos * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:455:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(info->sosStart, sosbeg, (nsos + 1) * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:456:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(info->sosIndices, sosind, nsosnz * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:457:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(info->sosReference, sosref, nsosnz * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:524:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(info->primalSolution, X0, n_var * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:549:7:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
      strcat(fileName, ".nl");
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:714:3:  [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 buf[1000];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:926:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(info->sosPriority, sospri, nsos * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:927:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(info->sosStart, sosbeg, (nsos + 1) * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:928:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(info->sosIndices, sosind, nsosnz * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:929:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(info->sosReference, sosref, nsosnz * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:981:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(primalSolution, X0, n_var * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1337:5:  [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 name[9];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1338:5:  [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(name, "r%7.7d", iRow);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1343:5:  [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 name[9];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1344:5:  [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(name, "c%7.7d", iColumn);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1391:15:  [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 temp2[30];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1393:17:  [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(temp2, "c%7.7d", kColumn);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1395:17:  [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(temp2, "%g*c%7.7d", value, kColumn);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1435:15:  [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 temp2[30];
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1437:17:  [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(temp2, "c%7.7d", kColumn);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1439:17:  [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(temp2, "%g*c%7.7d", value, kColumn);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1496:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(prioritySOS_, sospri, nsos * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1497:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(startSOS_, sosbeg, (nsos + 1) * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1498:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(memberSOS_, sosind, nsosnz * sizeof(int));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1499:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
      memcpy(referenceSOS_, sosref, nsosnz * sizeof(double));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.h:51:3:  [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[300];
data/coinor-cbc-2.10.5+ds1/Cbc/src/unitTest.cpp:56:8:  [2] (misc) fopen:
  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).
  fp = fopen(test1.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/unitTest.cpp:63:10:  [2] (misc) fopen:
  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).
    fp = fopen(test1.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/src/unitTestClp.cpp:41:14:  [2] (misc) fopen:
  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 *fp = fopen(name.c_str(), "r");
data/coinor-cbc-2.10.5+ds1/Cbc/test/OsiCbcSolverInterfaceTest.cpp:705: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 temp[100];
data/coinor-cbc-2.10.5+ds1/Cbc/test/OsiCbcSolverInterfaceTest.cpp:706:9:  [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(temp, "%g + abs(%g*multiplier)", value, value);
data/coinor-cbc-2.10.5+ds1/Cbc/test/OsiCbcSolverInterfaceTest.cpp:728: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 temp[100];
data/coinor-cbc-2.10.5+ds1/Cbc/test/OsiCbcSolverInterfaceTest.cpp:729: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(temp, "%g + (1.5*%g*multiplier)", triple.value(), triple.value());
data/coinor-cbc-2.10.5+ds1/Cbc/examples/driver6.cpp:30:15:  [1] (buffer) getchar:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    gotChar = getchar();
data/coinor-cbc-2.10.5+ds1/Cbc/examples/driverFat.cpp:36:15:  [1] (buffer) getchar:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    gotChar = getchar();
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:50:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  int lengthMask = strlen(pMask2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:113:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      int length = strlen(oldMask) - 1;
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:138:18:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    int length = strlen(maskThis);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcGenSolution.cpp:173:16:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  int length = strlen(checkC);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:2849:7:  [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.
      equal[0] = 65535;
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristic.cpp:2871:33:  [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.
    equal_[i] = (unsigned short)equal;
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcHeuristicFPump.cpp:2025:31:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
          sprintf(pumpPrint + strlen(pumpPrint), " of which %d were internal integer and %d internal continuous",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:895:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
          memmove(expression, first + 1, strlen(first + 1) + 1);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:907:18:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        first += strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:919:24:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              first += strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1049:16:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        assert(strlen(expr) < 20000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1084:18:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
          assert(strlen(el) < 20000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1872:14:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      assert(strlen(expr) < 20000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:1897:16:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        assert(strlen(expr) < 20000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3313:14:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      assert(strlen(expr) < 20000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:3350:16:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        assert(strlen(expr) < 20000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7677:14:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      assert(strlen(expr) < 20000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcLinked.cpp:7712:16:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        assert(strlen(expr) < 20000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:23:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  const size_t l = strlen(str);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcMipStartIO.cpp:51:9:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    if (strlen(col[0]) && isdigit(col[0][0]) && (nread >= 3)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcModel.cpp:17560:10:  [1] (buffer) getc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      xx=getc(stdin);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4722:9:  [1] (obsolete) usleep:
  This C routine is considered obsolete (as opposed to the shell command by
  the same name). The interaction of this function with SIGALRM and other
  timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is
  unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead.
        usleep(1000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:4855:7:  [1] (obsolete) usleep:
  This C routine is considered obsolete (as opposed to the shell command by
  the same name). The interaction of this function with SIGALRM and other
  timer functions such as sleep(), alarm(), setitimer(), and nanosleep() is
  unspecified (CWE-676). Use nanosleep(2) or setitimer(2) instead.
      usleep(1000);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5122:23:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    sprintf(general + strlen(general), "%d <= %g ", groupCounts[i], groupValue[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcNode.cpp:5175:23:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    sprintf(general + strlen(general), "%d <= %g ", groupCounts[i], groupValue[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1107:19:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  size_t length = strlen(input);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1902:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1905:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1908:30:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1911:30:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1926:34:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
          sprintf(generalPrint + strlen(generalPrint), "%s ", argv[i]);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1929:34:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
          sprintf(generalPrint + strlen(generalPrint), "(default strategy 1)");
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:1945:39:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      int length = static_cast< int >(strlen(temp));
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2178:35:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              if (!noPrinting_ && strlen(message)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2186:35:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              if (!noPrinting_ && strlen(message)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2194:35:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              if (!noPrinting_ && strlen(message)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2290:35:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              if (!noPrinting_ && strlen(message)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2444:35:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              if (!noPrinting_ && strlen(message)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:2469:33:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
            if (!noPrinting_ && strlen(message)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3083:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3085:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3088:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:3091:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7949:44:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                    sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7954:46:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                      sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7959:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7962:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7966:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:7969:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  sprintf(generalPrint + strlen(generalPrint),
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8143:33:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                size_t length = strlen(c_name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8533:38:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                    int lengthName = strlen(fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8576:40:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                      int lengthName = strlen(fileName.c_str());
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8737:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  int length = strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8909:44:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                              int length = strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:8910:48:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                              int lengthMask = strlen(pos);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9679:54:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              for (int i = 0; i < static_cast< int >(strlen(buffer)); i++) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:9978:39:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                  size_t lengthMask = strlen(pMask2);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10027:39:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                      size_t length = strlen(oldMask) - 1;
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10050:37:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                    size_t length = strlen(maskThis);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10236:36:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        size_t n = strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10283:38:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                          size_t n = strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10303:40:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        sprintf(temp + strlen(temp), ", %15.8g",
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10305:36:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        size_t n = strlen(temp);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10375:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		      size_t n = strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10387:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		      size_t n = strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:10410:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		      size_t n = strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12263:19:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  size_t length = strlen(checkC);
data/coinor-cbc-2.10.5+ds1/Cbc/src/CbcSolver.cpp:12427:3:  [1] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant character.
  strcpy(line[numberLines++], "5");
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:394:13:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  int len = strlen(name);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:590:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(outFile, filename, 511);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:663:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(array, name.c_str(), maxNumberCharacters);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:806:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(name, rowname.c_str(), maxLength);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:819:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(name, colname.c_str(), maxLength);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_C_Interface.cpp:1614:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy( name, osiSolver->getColName(i).c_str(), maxLen );
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:64:7:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  if (strlen(v))
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:73:7:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  if (strlen(v))
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:91:9:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    if (strlen(phrase))
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:93:14:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  } else if (strlen(phrase)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:600:39:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        if (!strncmp(argument, check, strlen(check))) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:619:12:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      if (!strlen(algFound)) {
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:632:21:  [1] (buffer) getc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      int getChar = getc(stdin);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1014:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    nl = jac0dim(stub, (ftnlen)strlen(stub));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1119:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    nl = jac0dim(stub, (ftnlen)strlen(stub));
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1409:41:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              assert(static_cast< int >(strlen(temp)) < 30 * numberColumns_);
data/coinor-cbc-2.10.5+ds1/Cbc/src/Cbc_ampl.cpp:1453:41:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
              assert(static_cast< int >(strlen(temp)) < 30 * numberColumns_);

ANALYSIS SUMMARY:

Hits = 1138
Lines analyzed = 144687 in approximately 3.68 seconds (39288 lines/second)
Physical Source Lines of Code (SLOC) = 109021
Hits@level = [0] 1910 [1]  87 [2] 924 [3]  36 [4]  91 [5]   0
Hits@level+ = [0+] 3048 [1+] 1138 [2+] 1051 [3+] 127 [4+]  91 [5+]   0
Hits/KSLOC@level+ = [0+] 27.9579 [1+] 10.4384 [2+] 9.64034 [3+] 1.16491 [4+] 0.834702 [5+]   0
Dot directories skipped = 2 (--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.