Flawfinder version 2.0.10, (C) 2001-2019 David A. Wheeler. Number of rules (primarily dangerous function names) in C/C++ ruleset: 223 Examining data/r-cran-fts-0.9.9.2/src/helpers/R.tseries.data.backend.hpp Examining data/r-cran-fts-0.9.9.2/src/helpers/time.window.template.hpp Examining data/r-cran-fts-0.9.9.2/src/helpers/freq.transform.template.hpp Examining data/r-cran-fts-0.9.9.2/src/helpers/Rsexp.allocator.templates.hpp Examining data/r-cran-fts-0.9.9.2/src/helpers/window.intersection.template.hpp Examining data/r-cran-fts-0.9.9.2/src/helpers/fts.factory.hpp Examining data/r-cran-fts-0.9.9.2/src/helpers/window.template.hpp Examining data/r-cran-fts-0.9.9.2/src/helpers/transform.template.hpp Examining data/r-cran-fts-0.9.9.2/src/helpers/Rtype.hpp Examining data/r-cran-fts-0.9.9.2/src/diff.cpp Examining data/r-cran-fts-0.9.9.2/src/lead.cpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/tseries.data.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/ts.opps/ts.ts.opp.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/ts.opps/ts.promotion.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/ts.opps/ifthenelse.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/ts.opps/ts.scalar.opp.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/ts.opps/ts.opps.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/date.policies/date.partition.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/date.policies/julian.date.policy.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/date.policies/posix.date.policy.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/tseries.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/range.specifier/range.iterator.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/range.specifier/rangeSpecifier.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/since.na.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/fill.traits.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/fill.value.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/diff.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/ema.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/lag.lead.traits.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/fill.bwd.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/expanding.maximum.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/ema.traits.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/since.na.traits.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/expanding.minimum.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform/fill.fwd.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/prod.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/contains.na.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/mean.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/cor.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/close.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/stdev.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/pos.sum.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/rsi.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/open.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/sum.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/cov.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/min.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/rank.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/max.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.summary/neg.sum.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/tseries.io.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/utils/window.intersection.apply.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/utils/breaks.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/utils/window.function.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/utils/window.apply.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/utils/cbind.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/utils/numeric.traits.hpp Examining data/r-cran-fts-0.9.9.2/src/tslib/tslib/vector.transform.hpp Examining data/r-cran-fts-0.9.9.2/src/lag.cpp Examining data/r-cran-fts-0.9.9.2/src/interface.cpp Examining data/r-cran-fts-0.9.9.2/src/pad.cpp FINAL RESULTS: data/r-cran-fts-0.9.9.2/src/tslib/tslib/date.policies/posix.date.policy.hpp:56: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(static_cast<void*>(&posix_time_tm),localtime(&posix_time_t), sizeof(struct tm)); data/r-cran-fts-0.9.9.2/src/tslib/tslib/date.policies/posix.date.policy.hpp:179: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 ans_char[BUFFSIZE]; ANALYSIS SUMMARY: Hits = 2 Lines analyzed = 5223 in approximately 0.16 seconds (33216 lines/second) Physical Source Lines of Code (SLOC) = 3357 Hits@level = [0] 0 [1] 0 [2] 2 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 2 [1+] 2 [2+] 2 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 0.59577 [1+] 0.59577 [2+] 0.59577 [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.