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/pbcopper-1.6.0+dfsg/include/pbcopper/PbcopperConfig.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/AffineAlignment.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/AlignConfig.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/BandedChainAlignment.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/ChainSeeds.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/ChainSeedsConfig.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/FindSeeds.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/LinearAlignment.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/LocalAlignment.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/PairwiseAlignment.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/Seed.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/Seeds.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/SparseAlignment.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/internal/BCAlignBlocks.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/align/internal/BCAlignImpl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/CLI.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/Interface.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/MultiToolInterface.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/Option.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/OptionGroup.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/OptionValue.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/PositionalArgument.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/Result.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/Results.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/ResultsHandler.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/Tool.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/BuiltinOptions.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/CommandLineParser.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/HelpMetrics.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/InterfaceData.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/InterfaceHelpPrinter.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/MultiToolInterfaceData.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/MultiToolInterfaceHelpPrinter.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/OptionData.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/OptionTranslator.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/PositionalArgumentData.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/PositionalArgumentTranslator.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/VersionPrinter.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Accuracy.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/CCSTag.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Cigar.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/CigarOperation.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Clipping.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Frames.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/GenomicInterval.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Interval.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/LocalContextFlags.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/MappedRead.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/MovieName.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Orientation.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Position.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/QualityValue.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/QualityValues.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/RSMovieName.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/RSReadName.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Read.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/ReadId.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/ReadName.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/SNR.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Strand.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Zmw.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/internal/ClippingImpl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/internal/MovieName-inl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/internal/RSMovieName-inl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/internal/ReadNameBase-inl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/data/internal/ReadNameBase.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/json/JSON.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/logging/LogConfig.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/logging/LogField.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/logging/LogLevel.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/logging/LogMessage.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/logging/Logging.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/parallel/FireAndForget.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/parallel/FireAndForgetIndexed.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/parallel/WorkQueue.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/pbmer/Dbg.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/pbmer/DbgNode.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/pbmer/DnaBit.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/pbmer/Kmer.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/pbmer/Mers.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/pbmer/Parser.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/qgram/Index.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/qgram/IndexHit.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/qgram/IndexHits.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/qgram/internal/Hashing-inl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/qgram/internal/Index-inl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/reports/Report.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/third-party/edlib.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/third-party/kxsort/kxsort.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/third-party/robin_hood/robin_hood.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/Alarm.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/Deleters.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/FileUtils.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/MemoryConsumption.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/MinMax.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/MoveAppend.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/MoveInsert.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/OStreamRedirect.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/PbcopperVersion.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/SafeSubtract.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/SequenceUtils.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/Stopwatch.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/StringUtils.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/SystemInfo.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/Unused.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/internal/FileUtils-inl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/internal/Stopwatch-inl.h Examining data/pbcopper-1.6.0+dfsg/include/pbcopper/utility/internal/SystemInfo-inl.h Examining data/pbcopper-1.6.0+dfsg/src/align/AffineAlignment.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/AlignConfig.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/BandedChainAlignment.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/ChainSeeds.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/ChainSeedsConfig.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/FilterHomopolymers.h Examining data/pbcopper-1.6.0+dfsg/src/align/FindSeeds.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/LinearAlignment.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/LocalAlignment.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/PairwiseAlignment.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/Seed.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/Seeds.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/SparseAlignment.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.cpp Examining data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.h Examining data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c Examining data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.h Examining data/pbcopper-1.6.0+dfsg/src/cli2/CLI.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/CommandLineParser.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/HelpMetrics.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/Interface.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/InterfaceHelpPrinter.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/MultiToolInterface.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/MultiToolInterfaceHelpPrinter.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/Option.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/OptionTranslator.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/OptionValue.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/PositionalArgumentTranslator.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/Result.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/Results.cpp Examining data/pbcopper-1.6.0+dfsg/src/cli2/VersionPrinter.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/Accuracy.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/Cigar.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/CigarOperation.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/Frames.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/GenomicInterval.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/Interval.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/MovieName.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/QualityValue.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/QualityValues.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/RSMovieName.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/Read.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/ReadId.cpp Examining data/pbcopper-1.6.0+dfsg/src/data/SNR.cpp Examining data/pbcopper-1.6.0+dfsg/src/logging/LogConfig.cpp Examining data/pbcopper-1.6.0+dfsg/src/logging/LogLevel.cpp Examining data/pbcopper-1.6.0+dfsg/src/logging/LogMessage.cpp Examining data/pbcopper-1.6.0+dfsg/src/logging/Logging.cpp Examining data/pbcopper-1.6.0+dfsg/src/pbmer/Dbg.cpp Examining data/pbcopper-1.6.0+dfsg/src/pbmer/DbgNode.cpp Examining data/pbcopper-1.6.0+dfsg/src/pbmer/DnaBit.cpp Examining data/pbcopper-1.6.0+dfsg/src/pbmer/Kmer.cpp Examining data/pbcopper-1.6.0+dfsg/src/pbmer/Mers.cpp Examining data/pbcopper-1.6.0+dfsg/src/pbmer/Parser.cpp Examining data/pbcopper-1.6.0+dfsg/src/reports/Report.cpp Examining data/pbcopper-1.6.0+dfsg/src/reports/ReportPrinter.cpp Examining data/pbcopper-1.6.0+dfsg/src/reports/ReportPrinter.h Examining data/pbcopper-1.6.0+dfsg/src/reports/TaskReport.cpp Examining data/pbcopper-1.6.0+dfsg/src/third-party/edlib.cpp Examining data/pbcopper-1.6.0+dfsg/src/utility/Alarm.cpp Examining data/pbcopper-1.6.0+dfsg/src/utility/Deleters.cpp Examining data/pbcopper-1.6.0+dfsg/src/utility/MemoryConsumption.cpp Examining data/pbcopper-1.6.0+dfsg/src/utility/Stopwatch.cpp Examining data/pbcopper-1.6.0+dfsg/src/utility/StringUtils.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/align/test_Alignment.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/align/test_BandedChainAlign.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/align/test_Seeds.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_CLI.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_CommandLineParser.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_InterfaceHelpPrinter.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_MultiToolInterfaceHelpPrinter.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_OptionTranslator.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_OptionValue.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_PositionalArgumentTranslator.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_Results.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/cli2/test_VersionPrinter.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_Accuracy.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_Cigar.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_Frames.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_GenomicInterval.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_Interval.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_MappedRead.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_MovieName.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_QualityValues.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_RSMovieName.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_RSReadName.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/data/test_ReadName.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/json/test_JSON.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/logging/test_Logging.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/parallel/test_FireAndForget.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/parallel/test_FireAndForgetIndexed.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/parallel/test_WorkQueue.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/pbmer/test_Dbg.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/pbmer/test_DbgNode.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/pbmer/test_DnaBit.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/pbmer/test_Kmer.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/pbmer/test_Mers.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/pbmer/test_Parser.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/qgram/test_Index.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/reports/test_Report.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_Alarm.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_FileUtils.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_MinMax.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_MoveAppend.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_MoveInsert.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_OStreamRedirect.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_StringUtils.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_SystemInfo.cpp Examining data/pbcopper-1.6.0+dfsg/tests/src/utility/test_Stopwatch.cpp FINAL RESULTS: data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:3820:23: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. (std::snprintf)(cr.data(), cr.size(), "%.2hhX", static_cast<unsigned char>(element_type)); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:5476:15: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. (std::snprintf)(cr.data(), cr.size(), "%.2hhX", static_cast<unsigned char>(current)); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:6902:23: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. (std::snprintf)(cs.data(), cs.size(), "<U+%.4X>", static_cast<unsigned char>(c)); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:12494:43: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. (std::snprintf)(string_buffer.data() + bytes, 7, "\\u%04x", data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:12500:43: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. (std::snprintf)(string_buffer.data() + bytes, 13, "\\u%04x\\u%04x", data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:12538:35: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. (std::snprintf)(&sn[0], sn.size(), "%.2X", byte); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:12632:27: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. (std::snprintf)(&sn[0], sn.size(), "%.2X", static_cast<std::uint8_t>(s.back())); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:12851:36: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. std::ptrdiff_t len = (std::snprintf)(number_buffer.data(), number_buffer.size(), "%.*g", d, x); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:5419:14: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. std::memcpy(&result, vec.data(), sizeof(NumberType)); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:10946:14: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. std::memcpy(vec.data(), &n, sizeof(NumberType)); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:10977:14: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. std::memcpy(&result, &x, sizeof(x)); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:11073:10: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. std::memcpy(&target, &source, sizeof(Source)); data/pbcopper-1.6.0+dfsg/include/pbcopper/qgram/internal/Hashing-inl.h:96: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. const char dna[ALPHABET_SIZE] = {'A', 'C', 'G', 'T'}; data/pbcopper-1.6.0+dfsg/include/pbcopper/third-party/robin_hood/robin_hood.h:345:10: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. std::memcpy(&t, ptr, sizeof(T)); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.cpp:260: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(score_matrix_, score_matrix, sizeof(int8_t) * score_matrix_size_ * score_matrix_size_); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.cpp:262: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(translation_matrix_, translation_matrix, sizeof(int8_t) * translation_matrix_size); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.cpp:431: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(score_matrix_, score_matrix, sizeof(int8_t) * score_matrix_size_ * score_matrix_size_); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.cpp:433: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(translation_matrix_, translation_matrix, sizeof(int8_t) * translation_matrix_size); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.cpp:444: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(translation_matrix_, kBaseTranslation, sizeof(int8_t) * SizeOfArray(kBaseTranslation)); data/pbcopper-1.6.0+dfsg/src/pbmer/Dbg.cpp:563: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). outfile.open(fn); data/pbcopper-1.6.0+dfsg/src/reports/TaskReport.cpp:18: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 hostname_[255]; data/pbcopper-1.6.0+dfsg/src/third-party/edlib.cpp:323: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(cigar_, &(*cigar)[0], cigar->size() * sizeof(char)); data/pbcopper-1.6.0+dfsg/src/third-party/edlib.cpp:1392: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(*alignment, ulAlignment, ulAlignmentLength); data/pbcopper-1.6.0+dfsg/src/third-party/edlib.cpp:1393: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(*alignment + ulAlignmentLength, lrAlignment, lrAlignmentLength); data/pbcopper-1.6.0+dfsg/src/third-party/edlib.cpp:1434:14: [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. unsigned char letterIdx[MAX_UCHAR + 1]; data/pbcopper-1.6.0+dfsg/include/pbcopper/cli2/internal/OptionData.h:39:21: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return std::equal(names.cbegin(), names.cend(), other.names.cbegin()); data/pbcopper-1.6.0+dfsg/include/pbcopper/data/MappedRead.h:32:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead(Read read) noexcept; data/pbcopper-1.6.0+dfsg/include/pbcopper/data/MappedRead.h:33:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead(Read read, enum Strand strand, size_t templateStart, size_t templateEnd, data/pbcopper-1.6.0+dfsg/include/pbcopper/data/MappedRead.h:35:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead(Read read, enum Strand strand, Position templateStart, Cigar cigar, uint8_t mapQV); data/pbcopper-1.6.0+dfsg/include/pbcopper/data/MappedRead.h:36:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead(Read read, enum Strand strand, Position templateStart, Position templateEnd, data/pbcopper-1.6.0+dfsg/include/pbcopper/data/MappedRead.h:82:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipToQuery(MappedRead& read, Position start, Position end); data/pbcopper-1.6.0+dfsg/include/pbcopper/data/MappedRead.h:92:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipToReference(MappedRead& read, Position start, Position end, bool exciseFlankingInserts); data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Read.h:60:56: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). std::ostream& operator<<(std::ostream& os, const Read& read); data/pbcopper-1.6.0+dfsg/include/pbcopper/data/Read.h:62:24: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipToQuery(Read& read, Position start, Position end); data/pbcopper-1.6.0+dfsg/include/pbcopper/data/internal/ClippingImpl.h:16:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipRead(Read& read, const ClipResult& result, size_t start, size_t end); data/pbcopper-1.6.0+dfsg/include/pbcopper/data/internal/ClippingImpl.h:19:33: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipMappedRead(MappedRead& read, ClipResult result); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:2346:21: [1] (buffer) fgetc: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). return std::fgetc(m_file); data/pbcopper-1.6.0+dfsg/include/pbcopper/json/internal/json.hpp:2651: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). std::strlen(reinterpret_cast<const char*>(b))) {} data/pbcopper-1.6.0+dfsg/include/pbcopper/third-party/robin_hood/robin_hood.h:1391:91: [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. noexcept(KeyEqual(equal))) data/pbcopper-1.6.0+dfsg/include/pbcopper/third-party/robin_hood/robin_hood.h:1392:31: [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. : WHash(h), WKeyEqual(equal) data/pbcopper-1.6.0+dfsg/include/pbcopper/third-party/robin_hood/robin_hood.h:1400:31: [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. : WHash(h), WKeyEqual(equal) data/pbcopper-1.6.0+dfsg/include/pbcopper/third-party/robin_hood/robin_hood.h:1409:31: [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. : WHash(h), WKeyEqual(equal) data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:71:10: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). int32_t read; //alignment ending position on read, 0-based data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:82:16: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). const int8_t* read; data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:565:20: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). const int8_t* read, data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:636:39: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). temp2 = h_b[d] + mat[ref[j] * n + read[i]]; data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:765:36: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). s_profile* ssw_init (const int8_t* read, const int32_t readLen, const int8_t* mat, const int32_t n, const int8_t score_size) { data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:778:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). p->profile_byte = qP_byte (read, mat, readLen, n, bias); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:780:69: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (score_size == 1 || score_size == 2) p->profile_word = qP_word (read, mat, readLen, n); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:781:12: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). p->read = read; data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:840:26: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). r->read_end1 = bests[0].read; data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:852:35: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read_reverse = seq_reverse(prof->read, r->read_end1); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:863:51: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). r->read_begin1 = r->read_end1 - bests_reverse[0].read; data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:930:23: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). const int8_t* read, data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:947:18: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (*ref != *read) { data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.c:958:8: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ++ read; data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.h:78:35: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). s_profile* ssw_init(const int8_t* read, const int32_t readLen, const int8_t* mat, const int32_t n, data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw.h:145:37: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). const int8_t* read, int32_t readLen, uint32_t** cigar, int32_t* cigarLen); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.cpp:310:21: [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 query_len = strlen(query); data/pbcopper-1.6.0+dfsg/src/align/cssw/ssw_cpp.cpp:344:21: [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 query_len = strlen(query); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:178:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipRead(Read& read, const ClipResult& result, size_t start, size_t end) data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:182:5: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Seq = clipContainer(read.Seq, clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:182:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Seq = clipContainer(read.Seq, clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:183:5: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Qualities = clipContainer(read.Qualities, clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:183:36: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Qualities = clipContainer(read.Qualities, clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:184:5: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.QueryStart = result.qStart_; data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:185:5: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.QueryEnd = result.qEnd_; data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:186:10: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (!read.PulseWidth.empty()) data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:187:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.PulseWidth = clipContainer(read.PulseWidth, clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:187:41: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.PulseWidth = clipContainer(read.PulseWidth, clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:188:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (read.IPD) read.IPD = clipContainer(read.IPD->Data(), clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:188:19: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (read.IPD) read.IPD = clipContainer(read.IPD->Data(), clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:188:44: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (read.IPD) read.IPD = clipContainer(read.IPD->Data(), clipFrom, clipLength); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:192:33: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipMappedRead(MappedRead& read, ClipResult result) data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:195:14: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipRead(read, result, result.qStart_, result.qEnd_); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:198:5: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Cigar = std::move(result.cigar_); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:199:5: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateStart = result.refPos_; data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:200:5: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateEnd = read.TemplateStart + ReferenceLength(read.Cigar); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:200:24: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateEnd = read.TemplateStart + ReferenceLength(read.Cigar); data/pbcopper-1.6.0+dfsg/src/data/Clipping.cpp:200:61: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateEnd = read.TemplateStart + ReferenceLength(read.Cigar); data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:149:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead::MappedRead(Read read) noexcept : Read{std::move(read)} {} data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:149:61: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead::MappedRead(Read read) noexcept : Read{std::move(read)} {} data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:151:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead::MappedRead(Read read, enum Strand strand, size_t templateStart, size_t templateEnd, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:153:22: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). : Read{std::move(read)} data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:162:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead::MappedRead(Read read, PacBio::Data::Strand strand, Position templateStart, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:164:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). : MappedRead{std::move(read), strand, templateStart, UnmappedPosition, std::move(cigar), mapQV} data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:193:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead::MappedRead(Read read, PacBio::Data::Strand strand, Position templateStart, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:195:22: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). : Read{std::move(read)} data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:405:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipToQuery(MappedRead& read, Position start, Position end) data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:408:18: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (start <= read.QueryStart && end >= read.QueryEnd) return; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:408:44: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (start <= read.QueryStart && end >= read.QueryEnd) return; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:411:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToQueryConfig clipConfig{read.Seq.size(), data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:412:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.QueryStart, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:413:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.QueryEnd, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:416:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateStart, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:417:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Strand, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:418:44: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). std::move(read.Cigar), // we'll get this back data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:423:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). internal::ClipMappedRead(read, std::move(result)); data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:426:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipToReference(MappedRead& read, Position start, Position end, bool exciseFlankingInserts) data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:429:16: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (end <= read.TemplateStart || start >= read.TemplateEnd) { data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:429:47: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (end <= read.TemplateStart || start >= read.TemplateEnd) { data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:430:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Seq.clear(); data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:431:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Qualities.clear(); data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:432:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.QueryStart = -1; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:433:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.QueryEnd = -1; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:434:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.PulseWidth.clear(); data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:435:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateStart = -1; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:436:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateEnd = -1; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:437:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.Cigar.clear(); data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:438:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.MapQuality = 255; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:443:18: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (start <= read.TemplateStart && end >= read.TemplateEnd) return; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:443:47: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (start <= read.TemplateStart && end >= read.TemplateEnd) return; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:447:27: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToQueryConfig{read.Seq.size(), read.QueryStart, read.QueryEnd, start, end, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:447:44: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToQueryConfig{read.Seq.size(), read.QueryStart, read.QueryEnd, start, end, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:447:61: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToQueryConfig{read.Seq.size(), read.QueryStart, read.QueryEnd, start, end, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:448:27: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateStart, read.Strand, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:448:47: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateStart, read.Strand, data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:449:37: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). std::move(read.Cigar), // we'll get this back data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:451:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.TemplateEnd, start, end, exciseFlankingInserts}; data/pbcopper-1.6.0+dfsg/src/data/MappedRead.cpp:455:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). internal::ClipMappedRead(read, std::move(result)); data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:109:56: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). std::ostream& operator<<(std::ostream& os, const Read& read) data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:112:25: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). os << "Read(Id=" << read.Id << ", Seq=" << read.Seq << ", PulseWidth=" << read.PulseWidth data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:112:48: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). os << "Read(Id=" << read.Id << ", Seq=" << read.Seq << ", PulseWidth=" << read.PulseWidth data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:112:79: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). os << "Read(Id=" << read.Id << ", Seq=" << read.Seq << ", PulseWidth=" << read.PulseWidth data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:113:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). << ", Qualities=" << read.Qualities << ", IPD="; data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:114:9: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (read.IPD) data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:115:16: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). os << *read.IPD; data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:118:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). os << ", QueryStart=" << read.QueryStart << ", QueryEnd=" << read.QueryEnd data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:118:66: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). os << ", QueryStart=" << read.QueryStart << ", QueryEnd=" << read.QueryEnd data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:119:25: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). << ", Flags=" << read.Flags << ", ReadAccuracy=" << read.ReadAccuracy data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:119:60: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). << ", Flags=" << read.Flags << ", ReadAccuracy=" << read.ReadAccuracy data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:120:33: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). << ", SignalToNoise=" << read.SignalToNoise << ", Model=" << read.Model data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:120:69: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). << ", SignalToNoise=" << read.SignalToNoise << ", Model=" << read.Model data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:121:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). << ", FullLength=" << read.FullLength << ')'; data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:125:24: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). void ClipToQuery(Read& read, Position start, Position end) data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:128:18: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (start <= read.QueryStart && end >= read.QueryEnd) return; data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:128:44: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). if (start <= read.QueryStart && end >= read.QueryEnd) return; data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:131:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToQueryConfig clipConfig{read.Seq.size(), data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:132:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.QueryStart, data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:133:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). read.QueryEnd, data/pbcopper-1.6.0+dfsg/src/data/Read.cpp:144:24: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). internal::ClipRead(read, std::move(result), start, end); data/pbcopper-1.6.0+dfsg/tests/src/align/test_Alignment.cpp:74:21: [1] (buffer) equal: Function does not check the second iterator for over-read conditions (CWE-126). This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it. return std::equal(expected.cbegin(), expected.cend(), observed.cbegin()); data/pbcopper-1.6.0+dfsg/tests/src/align/test_Alignment.cpp:642:45: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). a.reset(PacBio::Align::AlignLinear(ref, read, &score)); data/pbcopper-1.6.0+dfsg/tests/src/align/test_Alignment.cpp:645:35: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). PacBio::Align::Align(ref, read, &peerScore, config)}; data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:29:10: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). Read read{"name/0/500_510", seq, quals, snr, qStart, qEnd, pw, ipd}; data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:30:24: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). internal::ClipRead(read, clipResult, clipStart, clipEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:40:33: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/500_510", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:41:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:42:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:43:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:44:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:45:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:46:17: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(read.PulseWidth.size()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:47:22: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:47:68: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:48:17: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(read.IPD); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:49:22: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:49:70: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:70:16: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead read{Read{"name/0/500_510", seq, quals, snr, qStart, qEnd, pw, ipd}, data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:76:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). internal::ClipMappedRead(read, clipResult); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:91:33: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/500_510", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:92:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:93:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:94:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:95:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:96:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:97:22: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:97:68: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:98:22: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:98:70: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:99:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedStrand, read.Strand); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:100:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTStart, read.TemplateStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:101:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTEnd, read.TemplateEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:102:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedCigar, read.Cigar); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:103:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedMapQV, read.MapQuality); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:135:20: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead read{Read{"name/0/500_507", seq, quals, snr, qStart, qEnd, pw, ipd}, data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:142:25: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToReference(read, start, end, true); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:144:37: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/500_507", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:145:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:146:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:147:35: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:148:33: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:149:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:150:26: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:150:72: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:151:26: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:151:74: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:152:35: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedStrand, read.Strand); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:153:35: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTStart, read.TemplateStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:154:33: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTEnd, read.TemplateEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:155:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedCigar, read.Cigar); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:156:34: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedMapQV, read.MapQuality); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:193:16: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead read{Read{"name/0/0_1200", seq, quals, snr, qStart, qEnd, pw, ipd}, data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:201:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToReference(read, 0, 1000, true); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:216:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/0_1200", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:217:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:218:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:219:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:220:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:221:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:222:22: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:222:68: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:223:22: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:223:70: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:224:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedStrand, read.Strand); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:225:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTStart, read.TemplateStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:226:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTEnd, read.TemplateEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:227:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedCigar, read.Cigar); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:228:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedMapQV, read.MapQuality); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:231:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToReference(read, 100, 1000, true); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:243:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/0_1200", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:244:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:245:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:246:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:247:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:248:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:249:22: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:249:68: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:250:22: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:250:70: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:251:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedStrand, read.Strand); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:252:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTStart, read.TemplateStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:253:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTEnd, read.TemplateEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:254:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedCigar, read.Cigar); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:255:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedMapQV, read.MapQuality); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:258:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToReference(read, 200, 800, true); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:270:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/0_1200", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:271:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:272:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:273:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:274:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:275:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:276:22: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:276:68: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:277:22: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:277:70: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:278:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedStrand, read.Strand); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:279:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTStart, read.TemplateStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:280:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTEnd, read.TemplateEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:281:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedCigar, read.Cigar); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:282:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedMapQV, read.MapQuality); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:301:16: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). MappedRead read{Read{"name/0/0_1000", seq, quals, snr, qStart, qEnd, pw, ipd}, data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:309:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToReference(read, 0, 1000, true); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:324:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/0_1000", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:325:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:326:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:327:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:328:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:329:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:330:22: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:330:68: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:331:22: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:331:70: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:332:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedStrand, read.Strand); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:333:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTStart, read.TemplateStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:334:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTEnd, read.TemplateEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:335:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedCigar, read.Cigar); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:336:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedMapQV, read.MapQuality); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:339:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToReference(read, 100, 1000, true); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:351:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/0_1000", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:352:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:353:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:354:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:355:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:356:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:357:22: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:357:68: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:358:22: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:358:70: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:359:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedStrand, read.Strand); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:360:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTStart, read.TemplateStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:361:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTEnd, read.TemplateEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:362:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedCigar, read.Cigar); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:363:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedMapQV, read.MapQuality); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:366:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). ClipToReference(read, 200, 800, true); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:378:32: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ("name/0/0_1000", read.FullName()); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:379:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSeq, read.Seq); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:380:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQuals, read.Qualities); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:381:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:382:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedQEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:383:28: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedSnr, read.SignalToNoise); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:384:22: [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. EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:384:68: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedPw.cbegin(), expectedPw.cend(), read.PulseWidth.begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:385:22: [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. EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:385:70: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_TRUE(std::equal(expectedIpd.cbegin(), expectedIpd.cend(), read.IPD->begin())); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:386:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedStrand, read.Strand); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:387:31: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTStart, read.TemplateStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:388:29: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedTEnd, read.TemplateEnd); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:389:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedCigar, read.Cigar); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:390:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(expectedMapQV, read.MapQuality); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:626:30: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). const PacBio::Data::Read read{ data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:629:23: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(qStart, read.QueryStart); data/pbcopper-1.6.0+dfsg/tests/src/data/test_Read.cpp:630:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). EXPECT_EQ(qEnd, read.QueryEnd); data/pbcopper-1.6.0+dfsg/tests/src/utility/test_StringUtils.cpp:14:22: [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. EXPECT_TRUE(std::equal(lines.cbegin(), lines.cend(), expected.cbegin())); ANALYSIS SUMMARY: Hits = 294 Lines analyzed = 56441 in approximately 1.32 seconds (42753 lines/second) Physical Source Lines of Code (SLOC) = 35517 Hits@level = [0] 5 [1] 269 [2] 17 [3] 0 [4] 8 [5] 0 Hits@level+ = [0+] 299 [1+] 294 [2+] 25 [3+] 8 [4+] 8 [5+] 0 Hits/KSLOC@level+ = [0+] 8.4185 [1+] 8.27773 [2+] 0.703888 [3+] 0.225244 [4+] 0.225244 [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.