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/r-cran-rspectra-0.16-0/src/matops.h Examining data/r-cran-rspectra-0.16-0/src/is_sym.cpp Examining data/r-cran-rspectra-0.16-0/src/matops_c.h Examining data/r-cran-rspectra-0.16-0/src/eigs_sym.cpp Examining data/r-cran-rspectra-0.16-0/src/matops.cpp Examining data/r-cran-rspectra-0.16-0/src/svds.cpp Examining data/r-cran-rspectra-0.16-0/src/register_routines.c Examining data/r-cran-rspectra-0.16-0/src/eigs_gen.cpp Examining data/r-cran-rspectra-0.16-0/inst/include/GenEigs.h Examining data/r-cran-rspectra-0.16-0/inst/include/SpectraC.h Examining data/r-cran-rspectra-0.16-0/inst/include/SymEigs.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/SymEigsSolver.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/GenEigsBase.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/SymGEigsSolver.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/GenEigsComplexShiftSolver.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/LinAlg/DoubleShiftQR.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/LinAlg/TridiagEigen.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/LinAlg/UpperHessenbergQR.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/LinAlg/UpperHessenbergEigen.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/LinAlg/Lanczos.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/LinAlg/Arnoldi.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/LinAlg/BKLDLT.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/Util/SimpleRandom.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/Util/CompInfo.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/Util/SelectionRule.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/Util/TypeTraits.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/Util/GEigsMode.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/SymEigsShiftSolver.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/GenEigsRealShiftSolver.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/GenEigsSolver.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/SymEigsBase.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/SparseCholesky.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/DenseSymMatProd.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/internal/SymGEigsCholeskyOp.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/internal/ArnoldiOp.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/internal/SymGEigsRegInvOp.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/DenseGenRealShiftSolve.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/SparseSymMatProd.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/DenseGenMatProd.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/DenseCholesky.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/SparseGenMatProd.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/SparseGenRealShiftSolve.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/DenseGenComplexShiftSolve.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/SparseSymShiftSolve.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/SparseRegularInverse.h Examining data/r-cran-rspectra-0.16-0/inst/include/Spectra/MatOp/DenseSymShiftSolve.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/ComplexShift_sparseMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/ComplexShift_dgeMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/ComplexShift_matrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/ComplexShift.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/RealShift_sparseMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/RealShift_sym_sparseMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd_function.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/RealShift.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/RealShift_matrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd_dsyMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd_sparseMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd_dgeMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd_sym_matrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd_matrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/SparseMatrixMapping.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/RealShift_sym_dgeMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/SVDOp.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/RealShift_dgeMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/RealShift_sym_matrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/RealShift_dsyMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd_sym_dgeMatrix.h Examining data/r-cran-rspectra-0.16-0/inst/include/RMatOp/MatProd_sym_sparseMatrix.h FINAL RESULTS: data/r-cran-rspectra-0.16-0/inst/include/Spectra/GenEigsComplexShiftSolver.h:79:35: [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 Scalar shiftr = rng.random() * m_sigmar + rng.random(); data/r-cran-rspectra-0.16-0/inst/include/Spectra/GenEigsComplexShiftSolver.h:79:61: [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 Scalar shiftr = rng.random() * m_sigmar + rng.random(); data/r-cran-rspectra-0.16-0/inst/include/Spectra/Util/SimpleRandom.h:68: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. Scalar random() ANALYSIS SUMMARY: Hits = 3 Lines analyzed = 8937 in approximately 0.19 seconds (47044 lines/second) Physical Source Lines of Code (SLOC) = 5173 Hits@level = [0] 0 [1] 0 [2] 0 [3] 3 [4] 0 [5] 0 Hits@level+ = [0+] 3 [1+] 3 [2+] 3 [3+] 3 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 0.579934 [1+] 0.579934 [2+] 0.579934 [3+] 0.579934 [4+] 0 [5+] 0 Dot directories skipped = 1 (--followdotdir overrides) Minimum risk level = 1 Not every hit is necessarily a security vulnerability. There may be other security vulnerabilities; review your code! See 'Secure Programming HOWTO' (https://dwheeler.com/secure-programs) for more information.