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/gr-satellites-3.5.1/include/satellites/ao40_rs_decoder.h
Examining data/gr-satellites-3.5.1/include/satellites/api.h
Examining data/gr-satellites-3.5.1/include/satellites/ax100_decode.h
Examining data/gr-satellites-3.5.1/include/satellites/decode_ra_code.h
Examining data/gr-satellites-3.5.1/include/satellites/decode_rs.h
Examining data/gr-satellites-3.5.1/include/satellites/decode_rs_general.h
Examining data/gr-satellites-3.5.1/include/satellites/decode_rs_interleaved.h
Examining data/gr-satellites-3.5.1/include/satellites/descrambler308.h
Examining data/gr-satellites-3.5.1/include/satellites/distributed_syncframe_soft.h
Examining data/gr-satellites-3.5.1/include/satellites/encode_rs.h
Examining data/gr-satellites-3.5.1/include/satellites/lilacsat1_demux.h
Examining data/gr-satellites-3.5.1/include/satellites/matrix_deinterleaver_soft.h
Examining data/gr-satellites-3.5.1/include/satellites/nrzi_decode.h
Examining data/gr-satellites-3.5.1/include/satellites/nrzi_encode.h
Examining data/gr-satellites-3.5.1/include/satellites/nusat_decoder.h
Examining data/gr-satellites-3.5.1/include/satellites/u482c_decode.h
Examining data/gr-satellites-3.5.1/include/satellites/varlen_packet_framer.h
Examining data/gr-satellites-3.5.1/include/satellites/varlen_packet_tagger.h
Examining data/gr-satellites-3.5.1/lib/ao40_rs_decoder_impl.cc
Examining data/gr-satellites-3.5.1/lib/ao40_rs_decoder_impl.h
Examining data/gr-satellites-3.5.1/lib/ax100_decode_impl.cc
Examining data/gr-satellites-3.5.1/lib/ax100_decode_impl.h
Examining data/gr-satellites-3.5.1/lib/decode_ra_code_impl.cc
Examining data/gr-satellites-3.5.1/lib/decode_ra_code_impl.h
Examining data/gr-satellites-3.5.1/lib/decode_rs_general_impl.cc
Examining data/gr-satellites-3.5.1/lib/decode_rs_general_impl.h
Examining data/gr-satellites-3.5.1/lib/decode_rs_impl.cc
Examining data/gr-satellites-3.5.1/lib/decode_rs_impl.h
Examining data/gr-satellites-3.5.1/lib/decode_rs_interleaved_impl.cc
Examining data/gr-satellites-3.5.1/lib/decode_rs_interleaved_impl.h
Examining data/gr-satellites-3.5.1/lib/descrambler308_impl.cc
Examining data/gr-satellites-3.5.1/lib/descrambler308_impl.h
Examining data/gr-satellites-3.5.1/lib/distributed_syncframe_soft_impl.cc
Examining data/gr-satellites-3.5.1/lib/distributed_syncframe_soft_impl.h
Examining data/gr-satellites-3.5.1/lib/encode_rs_impl.cc
Examining data/gr-satellites-3.5.1/lib/encode_rs_impl.h
Examining data/gr-satellites-3.5.1/lib/golay24.c
Examining data/gr-satellites-3.5.1/lib/golay24.h
Examining data/gr-satellites-3.5.1/lib/libfec/ccsds.c
Examining data/gr-satellites-3.5.1/lib/libfec/ccsds.h
Examining data/gr-satellites-3.5.1/lib/libfec/char.h
Examining data/gr-satellites-3.5.1/lib/libfec/decode_rs.h
Examining data/gr-satellites-3.5.1/lib/libfec/decode_rs_8.c
Examining data/gr-satellites-3.5.1/lib/libfec/decode_rs_ccsds.c
Examining data/gr-satellites-3.5.1/lib/libfec/decode_rs_char.c
Examining data/gr-satellites-3.5.1/lib/libfec/encode_rs.h
Examining data/gr-satellites-3.5.1/lib/libfec/encode_rs_8.c
Examining data/gr-satellites-3.5.1/lib/libfec/encode_rs_ccsds.c
Examining data/gr-satellites-3.5.1/lib/libfec/encode_rs_char.c
Examining data/gr-satellites-3.5.1/lib/libfec/fec.h
Examining data/gr-satellites-3.5.1/lib/libfec/fixed.h
Examining data/gr-satellites-3.5.1/lib/libfec/init_rs.h
Examining data/gr-satellites-3.5.1/lib/libfec/init_rs_char.c
Examining data/gr-satellites-3.5.1/lib/libfec/rs-common.h
Examining data/gr-satellites-3.5.1/lib/libfec/taltab.c
Examining data/gr-satellites-3.5.1/lib/lilacsat1_demux_impl.cc
Examining data/gr-satellites-3.5.1/lib/lilacsat1_demux_impl.h
Examining data/gr-satellites-3.5.1/lib/matrix_deinterleaver_soft_impl.cc
Examining data/gr-satellites-3.5.1/lib/matrix_deinterleaver_soft_impl.h
Examining data/gr-satellites-3.5.1/lib/nrzi_decode_impl.cc
Examining data/gr-satellites-3.5.1/lib/nrzi_decode_impl.h
Examining data/gr-satellites-3.5.1/lib/nrzi_encode_impl.cc
Examining data/gr-satellites-3.5.1/lib/nrzi_encode_impl.h
Examining data/gr-satellites-3.5.1/lib/nusat_decoder_impl.cc
Examining data/gr-satellites-3.5.1/lib/nusat_decoder_impl.h
Examining data/gr-satellites-3.5.1/lib/qa_satellites.cc
Examining data/gr-satellites-3.5.1/lib/qa_satellites.h
Examining data/gr-satellites-3.5.1/lib/radecoder/ra_config.c
Examining data/gr-satellites-3.5.1/lib/radecoder/ra_config.h
Examining data/gr-satellites-3.5.1/lib/radecoder/ra_decoder_gen.c
Examining data/gr-satellites-3.5.1/lib/radecoder/ra_decoder_gen.h
Examining data/gr-satellites-3.5.1/lib/radecoder/ra_encoder.c
Examining data/gr-satellites-3.5.1/lib/radecoder/ra_encoder.h
Examining data/gr-satellites-3.5.1/lib/radecoder/ra_lfsr.c
Examining data/gr-satellites-3.5.1/lib/radecoder/ra_lfsr.h
Examining data/gr-satellites-3.5.1/lib/randomizer.c
Examining data/gr-satellites-3.5.1/lib/randomizer.h
Examining data/gr-satellites-3.5.1/lib/rs.h
Examining data/gr-satellites-3.5.1/lib/test_satellites.cc
Examining data/gr-satellites-3.5.1/lib/u482c_decode_impl.cc
Examining data/gr-satellites-3.5.1/lib/u482c_decode_impl.h
Examining data/gr-satellites-3.5.1/lib/varlen_packet_framer_impl.cc
Examining data/gr-satellites-3.5.1/lib/varlen_packet_framer_impl.h
Examining data/gr-satellites-3.5.1/lib/varlen_packet_tagger_impl.cc
Examining data/gr-satellites-3.5.1/lib/varlen_packet_tagger_impl.h
Examining data/gr-satellites-3.5.1/lib/viterbi.c
Examining data/gr-satellites-3.5.1/lib/viterbi.h
Examining data/gr-satellites-3.5.1/tests/ted-gain/test.cc

FINAL RESULTS:

data/gr-satellites-3.5.1/lib/ax100_decode_impl.cc:74: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(d_data.data(), msg, length);
data/gr-satellites-3.5.1/lib/decode_rs_general_impl.cc:91: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(d_data.data(), msg, length);
data/gr-satellites-3.5.1/lib/decode_rs_impl.cc:76: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(d_data.data(), msg, length);
data/gr-satellites-3.5.1/lib/encode_rs_impl.cc:70: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(d_data.data(), msg, length);
data/gr-satellites-3.5.1/lib/libfec/decode_rs.h:212:13:  [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(lambda, t, (NROOTS + 1) * sizeof(t[0]));
data/gr-satellites-3.5.1/lib/libfec/decode_rs.h:224: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(&reg[1], &lambda[1], NROOTS * sizeof(reg[0]));
data/gr-satellites-3.5.1/lib/nusat_decoder_impl.cc:117: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(d_data.data(), msg, msg_length);
data/gr-satellites-3.5.1/lib/randomizer.c:29: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 x[9] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 };
data/gr-satellites-3.5.1/lib/u482c_decode_impl.cc:103: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(d_data.data(), msg, data_len);
data/gr-satellites-3.5.1/lib/varlen_packet_framer_impl.cc:125:17:  [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(out, (const void*)&d_sync_word[0], asm_len);
data/gr-satellites-3.5.1/lib/varlen_packet_framer_impl.cc:147:13:  [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(&out[d_header_length], in, packet_len);
data/gr-satellites-3.5.1/lib/varlen_packet_tagger_impl.cc:155:13:  [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(out, &in[d_header_length], packet_len);
data/gr-satellites-3.5.1/lib/viterbi.c:281:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(dp++, d, sizeof(decision_t));
data/gr-satellites-3.5.1/lib/viterbi.c:299: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 temp[256];
data/gr-satellites-3.5.1/lib/viterbi.c:310: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(channel, temp, 2 * (framebits / 8) + 2);

ANALYSIS SUMMARY:

Hits = 15
Lines analyzed = 5706 in approximately 0.27 seconds (20916 lines/second)
Physical Source Lines of Code (SLOC) = 3397
Hits@level = [0]  26 [1]   0 [2]  15 [3]   0 [4]   0 [5]   0
Hits@level+ = [0+]  41 [1+]  15 [2+]  15 [3+]   0 [4+]   0 [5+]   0
Hits/KSLOC@level+ = [0+] 12.0695 [1+] 4.41566 [2+] 4.41566 [3+]   0 [4+]   0 [5+]   0
Dot directories skipped = 2 (--followdotdir overrides)
Minimum risk level = 1
Not every hit is necessarily a security vulnerability.
There may be other security vulnerabilities; review your code!
See 'Secure Programming HOWTO'
(https://dwheeler.com/secure-programs) for more information.