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/pg-rational-0.0.2/pg_rational.c

FINAL RESULTS:

data/pg-rational-0.0.2/pg_rational.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(out, in, sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.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(&x, PG_GETARG_POINTER(0), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:266: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(&y, PG_GETARG_POINTER(1), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:277: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, PG_GETARG_POINTER(0), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:278: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(&y, PG_GETARG_POINTER(1), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:290: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, PG_GETARG_POINTER(0), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:291: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(&y, PG_GETARG_POINTER(1), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:303: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, PG_GETARG_POINTER(0), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:304: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(&y, PG_GETARG_POINTER(1), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:317: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, PG_GETARG_POINTER(0), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:336: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, PG_GETARG_POINTER(0), sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:358: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,
data/pg-rational-0.0.2/pg_rational.c:361: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(&y,
data/pg-rational-0.0.2/pg_rational.c:379: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(&lo, med, sizeof(Rational));
data/pg-rational-0.0.2/pg_rational.c:381: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(&hi, med, sizeof(Rational));

ANALYSIS SUMMARY:

Hits = 15
Lines analyzed = 637 in approximately 0.04 seconds (14295 lines/second)
Physical Source Lines of Code (SLOC) = 471
Hits@level = [0]   0 [1]   0 [2]  15 [3]   0 [4]   0 [5]   0
Hits@level+ = [0+]  15 [1+]  15 [2+]  15 [3+]   0 [4+]   0 [5+]   0
Hits/KSLOC@level+ = [0+] 31.8471 [1+] 31.8471 [2+] 31.8471 [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.