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/python-crypto-2.6.1/src/inc-msvc/stdint.h Examining data/python-crypto-2.6.1/src/inc-msvc/config.h Examining data/python-crypto-2.6.1/src/DES.c Examining data/python-crypto-2.6.1/src/SHA256.c Examining data/python-crypto-2.6.1/src/hash_template.c Examining data/python-crypto-2.6.1/src/ARC4.c Examining data/python-crypto-2.6.1/src/pycrypto_compat.h Examining data/python-crypto-2.6.1/src/hash_SHA2_template.c Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_math.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_prng.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_des.c Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_misc.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_cfg.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_custom.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_macros.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_pk.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_pkcs.h Examining data/python-crypto-2.6.1/src/libtom/tomcrypt_argchk.h Examining data/python-crypto-2.6.1/src/SHA512.c Examining data/python-crypto-2.6.1/src/hash_SHA2.h Examining data/python-crypto-2.6.1/src/SHA224.c Examining data/python-crypto-2.6.1/src/strxor.c Examining data/python-crypto-2.6.1/src/_counter.h Examining data/python-crypto-2.6.1/src/SHA384.c Examining data/python-crypto-2.6.1/src/cast5.c Examining data/python-crypto-2.6.1/src/Blowfish-tables.h Examining data/python-crypto-2.6.1/src/XOR.c Examining data/python-crypto-2.6.1/src/CAST.c Examining data/python-crypto-2.6.1/src/MD4.c Examining data/python-crypto-2.6.1/src/AES.c Examining data/python-crypto-2.6.1/src/winrand.c Examining data/python-crypto-2.6.1/src/Blowfish.c Examining data/python-crypto-2.6.1/src/MD2.c Examining data/python-crypto-2.6.1/src/stream_template.c Examining data/python-crypto-2.6.1/src/ARC2.c Examining data/python-crypto-2.6.1/src/_counter.c Examining data/python-crypto-2.6.1/src/RIPEMD160.c Examining data/python-crypto-2.6.1/src/DES3.c Examining data/python-crypto-2.6.1/src/_fastmath.c Examining data/python-crypto-2.6.1/src/block_template.c FINAL RESULTS: data/python-crypto-2.6.1/src/ARC2.c:185: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(self->xkey, key, keylength); data/python-crypto-2.6.1/src/ARC4.c:35: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 state[256]; data/python-crypto-2.6.1/src/Blowfish.c:202: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(self->S1, initial_S1, 256*sizeof(uint32_t)); data/python-crypto-2.6.1/src/Blowfish.c:203: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(self->S2, initial_S2, 256*sizeof(uint32_t)); data/python-crypto-2.6.1/src/Blowfish.c:204: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(self->S3, initial_S3, 256*sizeof(uint32_t)); data/python-crypto-2.6.1/src/Blowfish.c:205: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(self->S4, initial_S4, 256*sizeof(uint32_t)); data/python-crypto-2.6.1/src/CAST.c:354:3: [2] (buffer) bcopy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. bcopy(key, abuf, 16); data/python-crypto-2.6.1/src/CAST.c:355:3: [2] (buffer) bcopy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. bcopy(key, bbuf, 16); data/python-crypto-2.6.1/src/CAST.c:441: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, in, 8); data/python-crypto-2.6.1/src/CAST.c:449: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, in, 8); data/python-crypto-2.6.1/src/MD2.c:90: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(dest->buf, src->buf, dest->count); data/python-crypto-2.6.1/src/MD2.c:91: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(dest->X, src->X, 48); data/python-crypto-2.6.1/src/MD2.c:92: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(dest->C, src->C, 16); data/python-crypto-2.6.1/src/MD2.c:102: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(self->buf+self->count, buf, L); data/python-crypto-2.6.1/src/MD2.c:112: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(self->X+16, self->buf, 16); data/python-crypto-2.6.1/src/MD2.c:139: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(&temp, self, sizeof(hash_state)); data/python-crypto-2.6.1/src/MD4.c:75: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(dest->buf, src->buf, dest->count); data/python-crypto-2.6.1/src/MD4.c:92: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(self->buf+self->count, buf, L); data/python-crypto-2.6.1/src/MD4.c:187: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(&temp, self, sizeof(hash_state)); data/python-crypto-2.6.1/src/RIPEMD160.c:168: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(self->h, initial_h, RIPEMD160_DIGEST_SIZE); data/python-crypto-2.6.1/src/RIPEMD160.c:331: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(&self->buf.b[self->bufpos], p, bytes_needed); data/python-crypto-2.6.1/src/RIPEMD160.c:342: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(&self->buf.b[self->bufpos], p, length); data/python-crypto-2.6.1/src/RIPEMD160.c:351: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(dest, source, sizeof(ripemd160_state)); data/python-crypto-2.6.1/src/RIPEMD160.c:388: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, &tmp.h, RIPEMD160_DIGEST_SIZE); data/python-crypto-2.6.1/src/RIPEMD160.c:411: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 buf[DIGEST_SIZE]; data/python-crypto-2.6.1/src/XOR.c:37: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 key[MAX_KEY_SIZE]; data/python-crypto-2.6.1/src/_counter.c:114: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(self->val, PyBytes_AS_STRING(prefix), PyBytes_GET_SIZE(prefix)); data/python-crypto-2.6.1/src/_counter.c:115: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(self->p, PyBytes_AS_STRING(initval), self->nbytes); data/python-crypto-2.6.1/src/_counter.c:116: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(self->p + self->nbytes, PyBytes_AS_STRING(suffix), PyBytes_GET_SIZE(suffix)); data/python-crypto-2.6.1/src/block_template.c:66: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 IV[BLOCK_SIZE], oldCipher[BLOCK_SIZE]; data/python-crypto-2.6.1/src/block_template.c:253: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(new->IV, IV, IVlen); data/python-crypto-2.6.1/src/block_template.c:266: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 temp[BLOCK_SIZE]; data/python-crypto-2.6.1/src/block_template.c:321: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(self->IV, buffer+i, BLOCK_SIZE); data/python-crypto-2.6.1/src/block_template.c:335: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(self->IV, buffer + i, BLOCK_SIZE); data/python-crypto-2.6.1/src/block_template.c:341: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(self->IV + BLOCK_SIZE - sz, buffer + i, data/python-crypto-2.6.1/src/block_template.c:355: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(self->IV, temp, BLOCK_SIZE); data/python-crypto-2.6.1/src/block_template.c:498: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 temp[BLOCK_SIZE]; data/python-crypto-2.6.1/src/block_template.c:549: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(self->oldCipher, self->IV, BLOCK_SIZE); data/python-crypto-2.6.1/src/block_template.c:569: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(self->IV, str + i, BLOCK_SIZE); data/python-crypto-2.6.1/src/block_template.c:575: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(self->IV + BLOCK_SIZE - sz, str + i, data/python-crypto-2.6.1/src/block_template.c:589: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(self->IV, temp, BLOCK_SIZE); data/python-crypto-2.6.1/src/block_template.c:659: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(self->IV, PyBytes_AsString(v), BLOCK_SIZE); data/python-crypto-2.6.1/src/hash_SHA2.h:101: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 buf[BLOCK_SIZE]; data/python-crypto-2.6.1/src/hash_SHA2_template.c:184: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(dest,src,sizeof(hash_state)); data/python-crypto-2.6.1/src/hash_SHA2_template.c:191: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 digest[DIGEST_SIZE]; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:28:13: [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 K[33][16]; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:68:16: [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 S[32], start; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:81: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 safer_block_t[SAFER_BLOCK_LEN]; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:82: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 safer_key_t[SAFER_KEY_LEN]; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:114: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 key[10]; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:212:13: [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 IV[MAXBLOCKSIZE], data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:230:13: [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 IV[MAXBLOCKSIZE]; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:244:13: [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 IV[MAXBLOCKSIZE]; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:263:13: [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 ctr[MAXBLOCKSIZE], data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:279: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 IV[16], data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:292: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 PC[16][256][16]; data/python-crypto-2.6.1/src/libtom/tomcrypt_cipher.h:307:13: [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 IV[MAXBLOCKSIZE], data/python-crypto-2.6.1/src/libtom/tomcrypt_custom.h:37:11: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. #ifdef memcpy data/python-crypto-2.6.1/src/libtom/tomcrypt_custom.h:40:18: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. #define XMEMCPY memcpy data/python-crypto-2.6.1/src/libtom/tomcrypt_des.c:68: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. static const unsigned char pc1[56] = { data/python-crypto-2.6.1/src/libtom/tomcrypt_des.c:75: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. static const unsigned char totrot[16] = { data/python-crypto-2.6.1/src/libtom/tomcrypt_des.c:82: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. static const unsigned char pc2[48] = { data/python-crypto-2.6.1/src/libtom/tomcrypt_des.c:1310: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 pc1m[56], pcr[56]; data/python-crypto-2.6.1/src/libtom/tomcrypt_des.c:1691: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. unsigned char key[8], txt[8], out[8]; data/python-crypto-2.6.1/src/libtom/tomcrypt_des.c:1797: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 tmp[8]; data/python-crypto-2.6.1/src/libtom/tomcrypt_des.c:1831:13: [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 key[24], pt[8], ct[8], tmp[8]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:6: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 buf[128]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:14: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:22: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:30: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:38: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:46: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:52: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 chksum[16], X[48], buf[16]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:60: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:68: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:76: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:84: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:92: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 buf[64]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:100: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 state[MAXBLOCKSIZE], buf[MAXBLOCKSIZE]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:106: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 dummy[1]; data/python-crypto-2.6.1/src/libtom/tomcrypt_hash.h:361:12: [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(md-> state_var .buf + md-> state_var.curlen, in, (size_t)n); \ data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:32:13: [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 block[MAXBLOCKSIZE], data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:59:13: [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 Ls[32][MAXBLOCKSIZE], /* L shifted by i bits to the left */ data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:106:13: [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 N[MAXBLOCKSIZE]; data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:142:13: [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 L[MAXBLOCKSIZE], /* L value */ data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:236:13: [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 H[16], /* multiplier */ data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:251:13: [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 PC[16][256][16] /* 16 tables of 8x128 */ data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:297: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 state[16]; data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:315:13: [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 K[3][MAXBLOCKSIZE], data/python-crypto-2.6.1/src/libtom/tomcrypt_mac.h:347:13: [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 akey[MAXBLOCKSIZE], data/python-crypto-2.6.1/src/libtom/tomcrypt_prng.h:5: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 pool[MAXBLOCKSIZE]; data/python-crypto-2.6.1/src/libtom/tomcrypt_prng.h:14: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 buf[256]; data/python-crypto-2.6.1/src/libtom/tomcrypt_prng.h:24: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 K[32], /* the current key */ data/python-crypto-2.6.1/src/libtom/tomcrypt_prng.h:51: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 dummy[1]; data/python-crypto-2.6.1/src/stream_template.c:160: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, str, len); data/python-crypto-2.6.1/src/stream_template.c:192: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, str, len); data/python-crypto-2.6.1/src/strxor.c:104: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. char x[7] = "\x00hello"; /* NUL + "hello" + NUL */ data/python-crypto-2.6.1/src/strxor.c:105: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. char y[7] = "\xffworld"; /* 0xff + "world" + NUL */ data/python-crypto-2.6.1/src/strxor.c:106: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. char z[9] = "[ABCDEFG]"; /* "[ABCDEFG]" + NUL */ data/python-crypto-2.6.1/src/strxor.c:115: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. char x[7] = "\x00hello"; /* NUL + "hello" + NUL */ data/python-crypto-2.6.1/src/strxor.c:117: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. char z[9] = "[ABCDEFG]"; /* "[ABCDEFG]" + NUL */ data/python-crypto-2.6.1/src/winrand.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(buf, str, len); data/python-crypto-2.6.1/src/libtom/tomcrypt_prng.h:95:21: [1] (buffer) read: Check buffer boundaries if used in a loop including recursive loops (CWE-120, CWE-20). unsigned long (*read)(unsigned char *out, unsigned long outlen, prng_state *prng); ANALYSIS SUMMARY: Hits = 103 Lines analyzed = 16522 in approximately 0.62 seconds (26725 lines/second) Physical Source Lines of Code (SLOC) = 12459 Hits@level = [0] 21 [1] 1 [2] 102 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 124 [1+] 103 [2+] 102 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 9.95264 [1+] 8.26712 [2+] 8.18685 [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.