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/haskell-cryptonite-0.26/cbits/aes/x86ni.c
Examining data/haskell-cryptonite-0.26/cbits/aes/generic.c
Examining data/haskell-cryptonite-0.26/cbits/aes/gf.c
Examining data/haskell-cryptonite-0.26/cbits/aes/generic.h
Examining data/haskell-cryptonite-0.26/cbits/aes/block128.h
Examining data/haskell-cryptonite-0.26/cbits/aes/gf.h
Examining data/haskell-cryptonite-0.26/cbits/aes/x86ni.h
Examining data/haskell-cryptonite-0.26/cbits/aes/x86ni_impl.c
Examining data/haskell-cryptonite-0.26/cbits/argon2/argon2.c
Examining data/haskell-cryptonite-0.26/cbits/argon2/blamka-round-ref.h
Examining data/haskell-cryptonite-0.26/cbits/argon2/core.h
Examining data/haskell-cryptonite-0.26/cbits/argon2/argon2.h
Examining data/haskell-cryptonite-0.26/cbits/argon2/blamka-round-opt.h
Examining data/haskell-cryptonite-0.26/cbits/argon2/thread.h
Examining data/haskell-cryptonite-0.26/cbits/argon2/opt.h
Examining data/haskell-cryptonite-0.26/cbits/argon2/ref.h
Examining data/haskell-cryptonite-0.26/cbits/argon2/opt.c
Examining data/haskell-cryptonite-0.26/cbits/argon2/thread.c
Examining data/haskell-cryptonite-0.26/cbits/argon2/ref.c
Examining data/haskell-cryptonite-0.26/cbits/argon2/core.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2s-ref.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2sp-ref.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2b-ref.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2bp-ref.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2-impl.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2sp.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2b.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2bp.c
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2b-load-sse2.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2b-round.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s-load-sse41.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s-load-xop.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s-round.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2b-load-sse41.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s-load-sse2.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2-config.h
Examining data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2-impl.h
Examining data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna-c64.c
Examining data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/scalar.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/decaf_all.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/eddsa.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/decaf_tables.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/decaf.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/arch_32/arch_intrinsics.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/arch_ref64/arch_intrinsics.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/sha512.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/common.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_448.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/shake.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/ed448.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_255.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/field.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/decaf.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/constant_time.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/portable_endian.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/include/word.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/p448/arch_32/f_impl.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/p448/arch_32/f_impl.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/p448/arch_ref64/f_impl.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/p448/arch_ref64/f_impl.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/p448/f_generic.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/p448/f_arithmetic.c
Examining data/haskell-cryptonite-0.26/cbits/decaf/p448/f_field.h
Examining data/haskell-cryptonite-0.26/cbits/decaf/utils.c
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519.c
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-64bit-x86-32bit.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-portable-identify.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-randombytes.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-64bit.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-basepoint-table.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-32bit.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-64bit-tables.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-64bit-x86.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-hash.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-32bit.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-32bit-sse2.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-64bit.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-impl-base.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-portable.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-32bit-tables.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-helpers.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519.h
Examining data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-batchverify.h
Examining data/haskell-cryptonite-0.26/cbits/p256/p256.c
Examining data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c
Examining data/haskell-cryptonite-0.26/cbits/p256/p256.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_chacha.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_salsa.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_xsalsa.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_rc4.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_cpu.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_blake2s.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_blake2sp.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_blake2b.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_blake2bp.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_poly1305.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_sha1.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_sha256.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_sha3.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_md2.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_md4.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_md5.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_ripemd.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_skein256.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_skein512.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_tiger.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_whirlpool.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_scrypt.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_pbkdf2.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_rdrand.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_pbkdf2.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_blake2sp.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_whirlpool.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_md5.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_sha3.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_blake2s.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_sha256.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_poly1305.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_md2.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_blake2b.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_chacha.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_salsa.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_sha1.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_align.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_bitfn.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_blake2bp.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_ripemd.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_skein256.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_curve25519.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_md4.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_aes.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_skein512.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_cpu.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_tiger.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_rc4.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_xsalsa.h
Examining data/haskell-cryptonite-0.26/cbits/cryptonite_skein.h

FINAL RESULTS:

data/haskell-cryptonite-0.26/cbits/aes/x86ni_impl.c:140:3:  [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(&block.b, input, part_block_len);
data/haskell-cryptonite-0.26/cbits/aes/x86ni_impl.c:148:3:  [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(output, &block.b, part_block_len);
data/haskell-cryptonite-0.26/cbits/aes/x86ni_impl.c:257:3:  [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(output, &block.b, part_block_len);
data/haskell-cryptonite-0.26/cbits/argon2/argon2.c:134: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(hash, out, hashlen);
data/haskell-cryptonite-0.26/cbits/argon2/core.c:98: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(out, out_buffer, BLAKE2B_OUTBYTES / 2);
data/haskell-cryptonite-0.26/cbits/argon2/core.c:103: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(in_buffer, out_buffer, BLAKE2B_OUTBYTES);
data/haskell-cryptonite-0.26/cbits/argon2/core.c:106: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, out_buffer, BLAKE2B_OUTBYTES / 2);
data/haskell-cryptonite-0.26/cbits/argon2/core.c:111: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(in_buffer, out_buffer, BLAKE2B_OUTBYTES);
data/haskell-cryptonite-0.26/cbits/argon2/core.c:114: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(out, out_buffer, toproduce);
data/haskell-cryptonite-0.26/cbits/argon2/core.c:127: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(dst->v, src->v, sizeof(uint64_t) * ARGON2_QWORDS_IN_BLOCK);
data/haskell-cryptonite-0.26/cbits/argon2/core.c:390: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(&(thr_data[l].pos), &position,
data/haskell-cryptonite-0.26/cbits/argon2/opt.c:136: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(state, ((instance->memory + prev_offset)->v), ARGON2_BLOCK_SIZE);
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2-impl.h:37:3:  [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(&w, src, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2-impl.h:52:3:  [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(&w, src, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2-impl.h:71:3:  [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(&w, src, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2-impl.h:83:3:  [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(dst, &w, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2-impl.h:94:3:  [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(dst, &w, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2-impl.h:107:3:  [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(dst, &w, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2b-ref.c:146: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2b-ref.c:231:7:  [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( S->buf + left, in, fill ); /* Fill buffer */
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2b-ref.c:242: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( S->buf + S->buflen, in, inlen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2b-ref.c:267:3:  [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, buffer, S->outlen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2bp-ref.c:125: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2bp-ref.c:145: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( S->buf + left, in, fill );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2bp-ref.c:181: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( S->buf + left, in, inlen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2bp-ref.c:243: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2s-ref.c:141: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2s-ref.c:224:7:  [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( S->buf + left, in, fill ); /* Fill buffer */
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2s-ref.c:235: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( S->buf + S->buflen, in, inlen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2s-ref.c:260:3:  [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, buffer, outlen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2sp-ref.c:122: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2sp-ref.c:142: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( S->buf + left, in, fill );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2sp-ref.c:177: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( S->buf + left, in, inlen );
data/haskell-cryptonite-0.26/cbits/blake2/ref/blake2sp-ref.c:241: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2-impl.h:37:3:  [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(&w, src, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2-impl.h:52:3:  [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(&w, src, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2-impl.h:71:3:  [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(&w, src, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2-impl.h:83:3:  [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(dst, &w, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2-impl.h:94:3:  [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(dst, &w, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2-impl.h:107:3:  [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(dst, &w, sizeof w);
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2b.c:144: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2b.c:231:7:  [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( S->buf + left, in, fill ); /* Fill buffer */
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2b.c:242: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( S->buf + S->buflen, in, inlen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2b.c:262:3:  [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, &S->h[0], S->outlen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2bp.c:124: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2bp.c:144: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( S->buf + left, in, fill );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2bp.c:180: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( S->buf + left, in, inlen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2bp.c:244: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s.c:145: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s.c:219:7:  [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( S->buf + left, in, fill ); /* Fill buffer */
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s.c:230: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( S->buf + S->buflen, in, inlen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2s.c:255:3:  [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, buffer, S->outlen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2sp.c:122: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2sp.c:142: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( S->buf + left, in, fill );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2sp.c:178: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( S->buf + left, in, inlen );
data/haskell-cryptonite-0.26/cbits/blake2/sse/blake2sp.c:242: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( block, key, keylen );
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:534:2:  [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(&ccm->nonce.b[1], nonce, nonce_len);
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:556:3:  [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(&tmp.b[len_len], input, length);
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:559:3:  [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(&tmp.b[len_len], input, 16 - len_len);
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:618:11:  [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 stretch[24];
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:638:2:  [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(nonce.b + 4, iv, 12);
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:644:2:  [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(stretch, ktop.b, 16);
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:646:2:  [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(tmp.b, ktop.b + 1, 8);
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:648:2:  [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(stretch + 16, tmp.b, 8);
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:908:4:  [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(output, pad.b, length);
data/haskell-cryptonite-0.26/cbits/cryptonite_aes.c:915:4:  [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(output, tmp.b, length);
data/haskell-cryptonite-0.26/cbits/cryptonite_chacha.c:281:3:  [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(dst, out.b + 40, 16);
data/haskell-cryptonite-0.26/cbits/cryptonite_chacha.c:286:3:  [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(dst, out.b + 40, bytes);
data/haskell-cryptonite-0.26/cbits/cryptonite_md2.c:81:2:  [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(x, ctx->h, 16);
data/haskell-cryptonite-0.26/cbits/cryptonite_md2.c:82:2:  [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(x+16, buf, 16);
data/haskell-cryptonite-0.26/cbits/cryptonite_md2.c:93:2:  [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(ctx->h, x, 16);
data/haskell-cryptonite-0.26/cbits/cryptonite_md2.c:110:3:  [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(ctx->buf + index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_md2.c:123:3:  [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(ctx->buf + index, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_md2.c:135:2:  [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, ctx->h, 16);
data/haskell-cryptonite-0.26/cbits/cryptonite_md4.c:127:3:  [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(ctx->buf + index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_md4.c:138:4:  [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(tramp, data, 64);
data/haskell-cryptonite-0.26/cbits/cryptonite_md4.c:149:3:  [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(ctx->buf + index, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_md5.c:140:3:  [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(ctx->buf + index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_md5.c:151:4:  [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(tramp, data, 64);
data/haskell-cryptonite-0.26/cbits/cryptonite_md5.c:162:3:  [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(ctx->buf + index, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_pbkdf2.c:109:7:  [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(k, key, nkey);                                                   \
data/haskell-cryptonite-0.26/cbits/cryptonite_pbkdf2.c:211:7:  [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 + offset, block, taken);                                     \
data/haskell-cryptonite-0.26/cbits/cryptonite_poly1305.c:115:3:  [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(ctx->buf + ctx->index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_poly1305.c:130:3:  [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(ctx->buf + ctx->index, data, length);
data/haskell-cryptonite-0.26/cbits/cryptonite_rdrand.c:107:3:  [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(buffer, (uint8_t *) &tmp, to_alignment);
data/haskell-cryptonite-0.26/cbits/cryptonite_rdrand.c:123:3:  [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(buffer, (uint8_t *) &tmp, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_ripemd.c:262:3:  [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(ctx->buf + index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_ripemd.c:273:4:  [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(tramp, data, 64);
data/haskell-cryptonite-0.26/cbits/cryptonite_ripemd.c:284:3:  [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(ctx->buf + index, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha1.c:170:3:  [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(ctx->buf + index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha1.c:181:4:  [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(tramp, data, 64);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha1.c:192:3:  [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(ctx->buf + index, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha256.c:131:3:  [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(ctx->buf + index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha256.c:142:4:  [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(tramp, data, 64);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha256.c:153:3:  [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(ctx->buf + index, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha256.c:161:2:  [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, intermediate, SHA224_DIGEST_SIZE);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha3.c:130:3:  [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(ctx->buf + ctx->bufindex, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha3.c:141:4:  [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(tramp, data, ctx->bufsz);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha3.c:153:3:  [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(ctx->buf + ctx->bufindex, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha3.c:197:3:  [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, wptr + ctx->bufindex, still_avail);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha3.c:207:3:  [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, w, ctx->bufsz);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha3.c:214:3:  [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, wptr + ctx->bufindex, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.c:150:3:  [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(ctx->buf + index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.c:161:4:  [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(tramp, data, 128);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.c:172:3:  [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(ctx->buf + index, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.c:180:2:  [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, intermediate, SHA384_DIGEST_SIZE);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.c:235:3:  [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 buf[8+4];
data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.c:243:7:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
		i = sprintf(buf, "SHA-512/%d", hashlen);
data/haskell-cryptonite-0.26/cbits/cryptonite_sha512.c:265:2:  [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, intermediate, hashlen / 8);
data/haskell-cryptonite-0.26/cbits/cryptonite_skein256.c:140:3:  [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(ctx->buf + ctx->bufindex, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_skein256.c:151:4:  [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(tramp, data, 32);
data/haskell-cryptonite-0.26/cbits/cryptonite_skein256.c:162:3:  [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(ctx->buf + ctx->bufindex, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_skein256.c:199:3:  [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 + i*32, w, n);
data/haskell-cryptonite-0.26/cbits/cryptonite_skein512.c:158:3:  [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(ctx->buf + ctx->bufindex, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_skein512.c:169:4:  [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(tramp, data, 64);
data/haskell-cryptonite-0.26/cbits/cryptonite_skein512.c:180:3:  [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(ctx->buf + ctx->bufindex, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_skein512.c:217:3:  [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 + i*64, w, n);
data/haskell-cryptonite-0.26/cbits/cryptonite_tiger.c:378:3:  [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(ctx->buf + index, data, to_fill);
data/haskell-cryptonite-0.26/cbits/cryptonite_tiger.c:389:4:  [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(tramp, data, 64);
data/haskell-cryptonite-0.26/cbits/cryptonite_tiger.c:400:3:  [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(ctx->buf + index, data, len);
data/haskell-cryptonite-0.26/cbits/cryptonite_whirlpool.c:1006:2:  [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(&buffer[WBLOCKBYTES - LENGTHBYTES], bitLength, LENGTHBYTES);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna-c64.c:301:3:  [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(origx, x, 5 * sizeof(limb));
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna-c64.c:305:3:  [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(origxprime, xprime, sizeof(limb) * 5);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna-c64.c:310:3:  [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(origxprime, xxprime, sizeof(limb) * 5);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna-c64.c:360:3:  [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(nqpqx, q, sizeof(limb) * 5);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna-c64.c:394:3:  [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(resultx, nqx, sizeof(limb) * 5);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna-c64.c:395:3:  [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(resultz, nqz, sizeof(limb) * 5);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:336:3:  [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(output, t, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:420:3:  [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(output, t, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:633:3:  [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(origx, x, 10 * sizeof(limb));
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:639:3:  [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(origxprime, xprime, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:656:3:  [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(origxprime, xxprime, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:670:3:  [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(x3, xxxprime, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:671:3:  [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(z3, zzprime, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:735:3:  [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(nqpqx, q, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:769:3:  [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(resultx, nqx, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/curve25519/curve25519-donna.c:770:3:  [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(resultz, nqz, sizeof(limb) * 10);
data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/decaf.c:230:37:  [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.
void API_NS(point_encode)( unsigned char ser[SER_BYTES], const point_t p ) {
data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/decaf.c:238:20:  [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 unsigned char ser[SER_BYTES],
data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/decaf.c:970: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(table->table[idx], pn_tmp->n, sizeof(pn_tmp->n));
data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/decaf.c:1551: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(out[i], tmp[i]->n, sizeof(niels_t));
data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/eddsa.c:223: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(signature,nonce_point,sizeof(nonce_point));
data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/scalar.c:244:20:  [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 unsigned char ser[SCALAR_SER_BYTES]
data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/scalar.c:304: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 ser[SCALAR_SER_BYTES],
data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_448.h:111:20:  [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 unsigned char ser[CRYPTONITE_DECAF_448_SCALAR_BYTES]
data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_448.h:135: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 ser[CRYPTONITE_DECAF_448_SCALAR_BYTES],
data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_448.h:599:20:  [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 unsigned char factor[CRYPTONITE_DECAF_448_SER_BYTES]
data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_448.h:633:20:  [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 unsigned char hashed_data[CRYPTONITE_DECAF_448_HASH_BYTES]
data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_448.h:646:20:  [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 unsigned char hashed_data[2*CRYPTONITE_DECAF_448_HASH_BYTES]
data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_448.h:669: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 recovered_hash[CRYPTONITE_DECAF_448_HASH_BYTES],
data/haskell-cryptonite-0.26/cbits/decaf/include/decaf/point_448.h:694: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 recovered_hash[2*CRYPTONITE_DECAF_448_HASH_BYTES],
data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-32bit.h:403:51:  [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.
curve25519_expand(bignum25519 out, const unsigned char in[32]) {
data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-32bit.h:449:30:  [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.
curve25519_contract(unsigned char out[32], const bignum25519 in) {
data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-32bit.h:509:25:  [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.
		out[s+0] |= (unsigned char )(f[i] & 0xff); \
data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-32bit.h:510:24:  [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.
		out[s+1] = (unsigned char )((f[i] >> 8) & 0xff); \
data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-32bit.h:511:24:  [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.
		out[s+2] = (unsigned char )((f[i] >> 16) & 0xff); \
data/haskell-cryptonite-0.26/cbits/ed25519/curve25519-donna-32bit.h:512:24:  [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.
		out[s+3] = (unsigned char )((f[i] >> 24) & 0xff);
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h:13:45:  [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.
ED25519_FN(ed25519_scalar_encode) (unsigned char out[32], const bignum256modm in) {
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h:49:44:  [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.
ED25519_FN(ed25519_point_encode) (unsigned char r[32], const ge25519 *p) {
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h:54:70:  [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.
ED25519_FN(ed25519_point_decode_vartime) (ge25519 *r, const unsigned char p[32]) {
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h:55: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 p_neg[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h:70: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 contract_a[32], contract_b[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h:92:27:  [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.
    static const unsigned char zero[32] = {0};
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h:93: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 check[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-cryptonite-exts.h:187: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 ss[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-batchverify.h:14:11:  [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 r[heap_batch_size][16]; /* 128 bit random values */
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-batchverify.h:191:10:  [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 batch_point_buffer[3][32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-batchverify.h:195:24:  [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.
	static const unsigned char zero[32] = {0};
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-batchverify.h:196:11:  [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 point_buffer[3][32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-batchverify.h:200:2:  [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(batch_point_buffer[1], point_buffer[1], 32);
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-batchverify.h:210:11:  [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 hram[64];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-impl-base.h:180:23:  [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.
ge25519_pack(unsigned char r[32], const ge25519 *p) {
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-impl-base.h:182:11:  [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 parity[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-impl-base.h:192:60:  [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.
ge25519_unpack_negative_vartime(ge25519 *r, const unsigned char p[32]) {
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-impl-base.h:193:24:  [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.
	static const unsigned char zero[32] = {0};
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-impl-base.h:196:11:  [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 check[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-impl-base.h:254:9:  [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.
	signed char slide1[256], slide2[256];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna-impl-base.h:342:9:  [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.
	signed char b[64];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519-donna.h:61:18:  [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.
typedef unsigned char hash_512bits[64];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519.c:92:11:  [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 checkR[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519.h:10:18:  [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.
typedef unsigned char ed25519_signature[64];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519.h:11:18:  [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.
typedef unsigned char ed25519_public_key[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519.h:12:18:  [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.
typedef unsigned char ed25519_secret_key[32];
data/haskell-cryptonite-0.26/cbits/ed25519/ed25519.h:14:18:  [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.
typedef unsigned char curved25519_key[32];
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-32bit.h:209:11:  [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 work[64] = {0};
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-32bit.h:213:2:  [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(work, in, len);
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-32bit.h:261:54:  [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.
expand_raw256_modm(bignum256modm out, const unsigned char in[32]) {
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-32bit.h:285:27:  [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.
contract256_modm(unsigned char out[32], const bignum256modm in) {
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-32bit.h:299:33:  [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.
contract256_window4_modm(signed char r[64], const bignum256modm in) {
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-32bit.h:335:39:  [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.
contract256_slidingwindow_modm(signed char r[256], const bignum256modm s, int windowsize) {
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-64bit.h:154:11:  [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 work[64] = {0};
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-64bit.h:158:2:  [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(work, in, len);
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-64bit.h:190:54:  [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.
expand_raw256_modm(bignum256modm out, const unsigned char in[32]) {
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-64bit.h:206:27:  [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.
contract256_modm(unsigned char out[32], const bignum256modm in) {
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-64bit.h:214:33:  [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.
contract256_window4_modm(signed char r[64], const bignum256modm in) {
data/haskell-cryptonite-0.26/cbits/ed25519/modm-donna-64bit.h:241:39:  [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.
contract256_slidingwindow_modm(signed char r[256], const bignum256modm s, int windowsize) {
data/haskell-cryptonite-0.26/cbits/p256/p256.c:189:3:  [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(c, tmp, P256_NBYTES);
data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c:599:3:  [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, sizeof(felem));
data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c:1123:3:  [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(&precomp[1][0], x, sizeof(felem));
data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c:1124:3:  [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(&precomp[1][1], y, sizeof(felem));
data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c:1125:3:  [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(&precomp[1][2], kOne, sizeof(felem));
data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c:1268: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(x1, x2, sizeof(x2));
data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c:1269: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(y1, y2, sizeof(y2));
data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c:1270: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(z1, z2, sizeof(z2));
data/haskell-cryptonite-0.26/cbits/p256/p256_ec.c:1314: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(out_x, in_x, P256_NBYTES);
data/haskell-cryptonite-0.26/cbits/decaf/ed448goldilocks/eddsa.c:81:52:  [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).
    hash_update(hash,(const unsigned char *)dom_s, strlen(dom_s));

ANALYSIS SUMMARY:

Hits = 206
Lines analyzed = 29873 in approximately 1.24 seconds (24013 lines/second)
Physical Source Lines of Code (SLOC) = 21279
Hits@level = [0]   3 [1]   1 [2] 205 [3]   0 [4]   0 [5]   0
Hits@level+ = [0+] 209 [1+] 206 [2+] 205 [3+]   0 [4+]   0 [5+]   0
Hits/KSLOC@level+ = [0+] 9.82189 [1+] 9.68091 [2+] 9.63391 [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.