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/libecpint-1.0.2/external/Faddeeva/Faddeeva.cpp Examining data/libecpint-1.0.2/external/Faddeeva/Faddeeva.hpp Examining data/libecpint-1.0.2/include/generate.hpp Examining data/libecpint-1.0.2/include/libecpint.hpp Examining data/libecpint-1.0.2/include/libecpint/angular.hpp Examining data/libecpint-1.0.2/include/libecpint/api.hpp Examining data/libecpint-1.0.2/include/libecpint/bessel.hpp Examining data/libecpint-1.0.2/include/libecpint/ecp.hpp Examining data/libecpint-1.0.2/include/libecpint/ecpint.hpp Examining data/libecpint-1.0.2/include/libecpint/gaussquad.hpp Examining data/libecpint-1.0.2/include/libecpint/gshell.hpp Examining data/libecpint-1.0.2/include/libecpint/mathutil.hpp Examining data/libecpint-1.0.2/include/libecpint/multiarr.hpp Examining data/libecpint-1.0.2/include/libecpint/qgen.hpp Examining data/libecpint-1.0.2/include/libecpint/radial.hpp Examining data/libecpint-1.0.2/include/testutil.hpp Examining data/libecpint-1.0.2/share/libecpint/raw/ecp10mdf.ecp Examining data/libecpint-1.0.2/share/libecpint/raw/ecp28mdf.ecp Examining data/libecpint-1.0.2/share/libecpint/raw/ecp46mdf.ecp Examining data/libecpint-1.0.2/share/libecpint/raw/ecp60mdf.ecp Examining data/libecpint-1.0.2/share/libecpint/raw/ecp78mdf.ecp Examining data/libecpint-1.0.2/share/libecpint/raw/lanl2dz.ecp Examining data/libecpint-1.0.2/src/generate.cpp Examining data/libecpint-1.0.2/src/generated/radial/radial_gen.cpp Examining data/libecpint-1.0.2/src/lib/angular.cpp Examining data/libecpint-1.0.2/src/lib/api.cpp Examining data/libecpint-1.0.2/src/lib/bessel.cpp Examining data/libecpint-1.0.2/src/lib/ecp.cpp Examining data/libecpint-1.0.2/src/lib/ecpint.cpp Examining data/libecpint-1.0.2/src/lib/gaussquad.cpp Examining data/libecpint-1.0.2/src/lib/gshell.cpp Examining data/libecpint-1.0.2/src/lib/mathutil.cpp Examining data/libecpint-1.0.2/src/lib/qgen.cpp Examining data/libecpint-1.0.2/src/lib/radial_gen.cpp Examining data/libecpint-1.0.2/src/lib/radial_quad.cpp Examining data/libecpint-1.0.2/tests/lib/api_test1/test1.cpp Examining data/libecpint-1.0.2/tests/lib/api_test2/test2.cpp Examining data/libecpint-1.0.2/tests/lib/deriv_test1/test1.cpp Examining data/libecpint-1.0.2/tests/lib/deriv_test2/test2.cpp Examining data/libecpint-1.0.2/tests/lib/hess_test1/test1.cpp Examining data/libecpint-1.0.2/tests/lib/hess_test2/test2.cpp Examining data/libecpint-1.0.2/tests/lib/int_test1/test1.cpp Examining data/libecpint-1.0.2/tests/lib/int_test2/test2.cpp Examining data/libecpint-1.0.2/tests/lib/stress_test/test.cpp Examining data/libecpint-1.0.2/tests/lib/type1_test/test1.cpp Examining data/libecpint-1.0.2/tests/units/bessel/bessel.cpp Examining data/libecpint-1.0.2/tests/units/ecp/ecp.cpp Examining data/libecpint-1.0.2/tests/units/ecp/ecpbasis.cpp Examining data/libecpint-1.0.2/tests/units/ecp/main.cpp Examining data/libecpint-1.0.2/tests/units/gaussquad/gaussquad.cpp Examining data/libecpint-1.0.2/tests/units/generate/generate.cpp Examining data/libecpint-1.0.2/tests/units/gshell/gshell.cpp Examining data/libecpint-1.0.2/tests/units/mathutil/math.cpp Examining data/libecpint-1.0.2/tests/units/multiarr/fiveindex.cpp Examining data/libecpint-1.0.2/tests/units/multiarr/multiarr.cpp Examining data/libecpint-1.0.2/tests/units/multiarr/sevenindex.cpp Examining data/libecpint-1.0.2/tests/units/multiarr/threeindex.cpp Examining data/libecpint-1.0.2/tests/units/multiarr/twoindex.cpp FINAL RESULTS: data/libecpint-1.0.2/external/Faddeeva/Faddeeva.cpp:2231:7: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. printf(#f "(%g%+gi) = %g%+gi (vs. %g%+gi), re/im rel. err. = %0.2g/%0.2g)\n", \ ANALYSIS SUMMARY: Hits = 1 Lines analyzed = 12238 in approximately 0.72 seconds (16887 lines/second) Physical Source Lines of Code (SLOC) = 8745 Hits@level = [0] 11 [1] 0 [2] 0 [3] 0 [4] 1 [5] 0 Hits@level+ = [0+] 12 [1+] 1 [2+] 1 [3+] 1 [4+] 1 [5+] 0 Hits/KSLOC@level+ = [0+] 1.37221 [1+] 0.114351 [2+] 0.114351 [3+] 0.114351 [4+] 0.114351 [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.