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/libvsqlitepp-0.3.13/examples/sqlite_wrapper.cpp Examining data/libvsqlitepp-0.3.13/include/sqlite/command.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/connection.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/database_exception.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/execute.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/ext/variant.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/private/private_accessor.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/private/result_construct_params_private.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/query.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/result.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/savepoint.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/transaction.hpp Examining data/libvsqlitepp-0.3.13/include/sqlite/view.hpp Examining data/libvsqlitepp-0.3.13/misc/coverity/coverity_model.cpp Examining data/libvsqlitepp-0.3.13/src/sqlite/command.cpp Examining data/libvsqlitepp-0.3.13/src/sqlite/connection.cpp Examining data/libvsqlitepp-0.3.13/src/sqlite/execute.cpp Examining data/libvsqlitepp-0.3.13/src/sqlite/query.cpp Examining data/libvsqlitepp-0.3.13/src/sqlite/result.cpp Examining data/libvsqlitepp-0.3.13/src/sqlite/savepoint.cpp Examining data/libvsqlitepp-0.3.13/src/sqlite/transaction.cpp Examining data/libvsqlitepp-0.3.13/src/sqlite/view.cpp FINAL RESULTS: data/libvsqlitepp-0.3.13/include/sqlite/connection.hpp:76:14: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). void open(std::string const & db); data/libvsqlitepp-0.3.13/src/sqlite/connection.cpp:41:13: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). open(db); data/libvsqlitepp-0.3.13/src/sqlite/connection.cpp:52:22: [2] (misc) open: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). void connection::open(const std::string &db){ data/libvsqlitepp-0.3.13/src/sqlite/result.cpp:160: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(buf,sqlite3_column_blob(m_params->statement,idx),size); data/libvsqlitepp-0.3.13/src/sqlite/result.cpp:169: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(&v[0],sqlite3_column_blob(m_params->statement,idx),size); ANALYSIS SUMMARY: Hits = 5 Lines analyzed = 1953 in approximately 0.08 seconds (23291 lines/second) Physical Source Lines of Code (SLOC) = 786 Hits@level = [0] 0 [1] 0 [2] 5 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 5 [1+] 5 [2+] 5 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 6.36132 [1+] 6.36132 [2+] 6.36132 [3+] 0 [4+] 0 [5+] 0 Dot directories skipped = 1 (--followdotdir overrides) Minimum risk level = 1 Not every hit is necessarily a security vulnerability. There may be other security vulnerabilities; review your code! See 'Secure Programming HOWTO' (https://dwheeler.com/secure-programs) for more information.