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/pgsphere-1.1.1+2020-10-20/box.c
Examining data/pgsphere-1.1.1+2020-10-20/box.h
Examining data/pgsphere-1.1.1+2020-10-20/circle.c
Examining data/pgsphere-1.1.1+2020-10-20/circle.h
Examining data/pgsphere-1.1.1+2020-10-20/ellipse.c
Examining data/pgsphere-1.1.1+2020-10-20/ellipse.h
Examining data/pgsphere-1.1.1+2020-10-20/euler.c
Examining data/pgsphere-1.1.1+2020-10-20/euler.h
Examining data/pgsphere-1.1.1+2020-10-20/gist.c
Examining data/pgsphere-1.1.1+2020-10-20/gist.h
Examining data/pgsphere-1.1.1+2020-10-20/gnomo.c
Examining data/pgsphere-1.1.1+2020-10-20/gnomo.h
Examining data/pgsphere-1.1.1+2020-10-20/gq_cache.c
Examining data/pgsphere-1.1.1+2020-10-20/healpix.c
Examining data/pgsphere-1.1.1+2020-10-20/healpix_bare/healpix_bare.c
Examining data/pgsphere-1.1.1+2020-10-20/healpix_bare/healpix_bare.h
Examining data/pgsphere-1.1.1+2020-10-20/healpix_bare/test.c
Examining data/pgsphere-1.1.1+2020-10-20/key.c
Examining data/pgsphere-1.1.1+2020-10-20/key.h
Examining data/pgsphere-1.1.1+2020-10-20/line.c
Examining data/pgsphere-1.1.1+2020-10-20/line.h
Examining data/pgsphere-1.1.1+2020-10-20/moc.c
Examining data/pgsphere-1.1.1+2020-10-20/output.c
Examining data/pgsphere-1.1.1+2020-10-20/path.c
Examining data/pgsphere-1.1.1+2020-10-20/path.h
Examining data/pgsphere-1.1.1+2020-10-20/pg_sphere.h
Examining data/pgsphere-1.1.1+2020-10-20/pgs_chealpix.h
Examining data/pgsphere-1.1.1+2020-10-20/pgs_healpix.h
Examining data/pgsphere-1.1.1+2020-10-20/pgs_moc.h
Examining data/pgsphere-1.1.1+2020-10-20/pgs_process_moc.h
Examining data/pgsphere-1.1.1+2020-10-20/pgs_util.h
Examining data/pgsphere-1.1.1+2020-10-20/point.c
Examining data/pgsphere-1.1.1+2020-10-20/point.h
Examining data/pgsphere-1.1.1+2020-10-20/polygon.c
Examining data/pgsphere-1.1.1+2020-10-20/polygon.h
Examining data/pgsphere-1.1.1+2020-10-20/process_moc.cpp
Examining data/pgsphere-1.1.1+2020-10-20/sbuffer.c
Examining data/pgsphere-1.1.1+2020-10-20/sbuffer.h
Examining data/pgsphere-1.1.1+2020-10-20/sparse.c
Examining data/pgsphere-1.1.1+2020-10-20/sparse.h
Examining data/pgsphere-1.1.1+2020-10-20/sscan.c
Examining data/pgsphere-1.1.1+2020-10-20/types.h
Examining data/pgsphere-1.1.1+2020-10-20/vector3d.c
Examining data/pgsphere-1.1.1+2020-10-20/vector3d.h

FINAL RESULTS:

data/pgsphere-1.1.1+2020-10-20/output.c:164:2:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	sprintf(buf, "SET %s", c);
data/pgsphere-1.1.1+2020-10-20/output.c:243:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(buffer, "<%s , %.*gd>",
data/pgsphere-1.1.1+2020-10-20/output.c:251:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(buffer,
data/pgsphere-1.1.1+2020-10-20/output.c:258:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(buffer,	"<%s , %.*g>",
data/pgsphere-1.1.1+2020-10-20/output.c:289:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(buffer,
data/pgsphere-1.1.1+2020-10-20/output.c:302:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(buffer,
data/pgsphere-1.1.1+2020-10-20/output.c:311:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(
data/pgsphere-1.1.1+2020-10-20/output.c:350:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(out,
data/pgsphere-1.1.1+2020-10-20/output.c:359:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(out,
data/pgsphere-1.1.1+2020-10-20/output.c:365:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
			sprintf(out,
data/pgsphere-1.1.1+2020-10-20/output.c:426:3:  [4] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused).
		strcat(buffer, &buf[0]);
data/pgsphere-1.1.1+2020-10-20/output.c:456:2:  [4] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused).
	strcat(buffer, etype);
data/pgsphere-1.1.1+2020-10-20/output.c:478:3:  [4] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused).
		strcat(out, tmp);
data/pgsphere-1.1.1+2020-10-20/output.c:502:3:  [4] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused).
		strcat(out, tmp);
data/pgsphere-1.1.1+2020-10-20/output.c:521:2:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	sprintf(buffer, "(%s, %s)", str1, str2);
data/pgsphere-1.1.1+2020-10-20/pgs_process_moc.h:131:23:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
__attribute__((format(printf, 2, 3)))
data/pgsphere-1.1.1+2020-10-20/process_moc.cpp:81:3:  [4] (format) vsprintf:
  Potential format string problem (CWE-134). Make format string constant.
		vsprintf(buffer, fm, arguments);
data/pgsphere-1.1.1+2020-10-20/sparse.c:709:21:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
#  define YYFPRINTF fprintf
data/pgsphere-1.1.1+2020-10-20/polygon.c:655:5:  [3] (random) srand:
  This function is not sufficiently random for security-related functions
  such as key and nonce creation (CWE-327). Use a more secure technique for
  acquiring random values.
				srand(cntr);
data/pgsphere-1.1.1+2020-10-20/box.c:89: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((void *) &sp, (void *) &box->sw, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/box.c:90: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((void *) &box->sw, (void *) &box->ne, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/box.c:91: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((void *) &box->ne, (void *) &sp, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/box.c:883: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((void *) &box->sw, (void *) p1, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/box.c:884: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((void *) &box->ne, (void *) p2, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/box.c:895: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((void *) p, (void *) &box->sw, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/box.c:905: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((void *) p, (void *) &box->ne, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/circle.c:332: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((void *) p, (void *) &c->center, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/circle.c:350: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((void *) &c->center, (void *) p, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/circle.c:368: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((void *) &c->center, (void *) p, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:98: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((void *) &sc->center, (void *) &sp, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:425:6:  [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((void *) &sp[2], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:431: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((void *) &sp[2], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:435: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((void *) &sp[0], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:440:6:  [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((void *) &sp[2], (void *) &sp[0], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:441:6:  [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((void *) &sp[0], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:445:6:  [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((void *) &sp[0], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:451: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((void *) &sp[2], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:455: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((void *) &sp[0], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:460:6:  [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((void *) &sp[0], (void *) &sp[2], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:461:6:  [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((void *) &sp[2], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:466:6:  [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((void *) &sp[1], (void *) &sp[0], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:467:6:  [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((void *) &sp[0], (void *) &sp[2], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/ellipse.c:468:6:  [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((void *) &sp[2], (void *) &sp[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/euler.c:47: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 etype[3];
data/pgsphere-1.1.1+2020-10-20/euler.c:230:2:  [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		ret[4];
data/pgsphere-1.1.1+2020-10-20/euler.c:263: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((void *) VARDATA(result), (void *) &ret[0], 3);
data/pgsphere-1.1.1+2020-10-20/euler.c:287: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((void *) se_out, (void *) se_in, sizeof(SEuler));
data/pgsphere-1.1.1+2020-10-20/euler.c:298: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((void *) ret, (void *) se, sizeof(SEuler));
data/pgsphere-1.1.1+2020-10-20/euler.c:443: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((void *) se, (void *) &set, sizeof(SEuler));
data/pgsphere-1.1.1+2020-10-20/euler.c:523: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((void *) &u[0], (void *) &vr[0], sizeof(u));
data/pgsphere-1.1.1+2020-10-20/gist.c:103:2:  [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.
	sprintf(buffer, "(%.9f,%.9f,%.9f),(%.9f,%.9f,%.9f)",
data/pgsphere-1.1.1+2020-10-20/gist.c:181:3:  [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.
		sprintf(buffer, "(%.9f,%.9f)", k->lng, k->lat);
data/pgsphere-1.1.1+2020-10-20/gist.c:185:3:  [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.
		sprintf(buffer,	"(%.9f,%.9f,%.9f),(%.9f,%.9f,%.9f)",
data/pgsphere-1.1.1+2020-10-20/gist.c:321: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((void *) ret,
data/pgsphere-1.1.1+2020-10-20/gist.c:368: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(ret->k, p, KEYSIZE);
data/pgsphere-1.1.1+2020-10-20/gist.c:1976: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(intervalsUpper, intervalsLower,
data/pgsphere-1.1.1+2020-10-20/gist.c:2321: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(leftKey->k, DatumGetPointer(v->spl_ldatum), KEYSIZE);
data/pgsphere-1.1.1+2020-10-20/gist.c:2322: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(rightKey->k, DatumGetPointer(v->spl_rdatum), KEYSIZE);
data/pgsphere-1.1.1+2020-10-20/gq_cache.c:102: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((void *) cquery, (void *) query, sizeof(type)); \
data/pgsphere-1.1.1+2020-10-20/gq_cache.c:137: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((void *) cquery,
data/pgsphere-1.1.1+2020-10-20/gq_cache.c:144: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((void *) cquery,
data/pgsphere-1.1.1+2020-10-20/gq_cache.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((void *) &kcache[0], (void *) key, KEYSIZE);
data/pgsphere-1.1.1+2020-10-20/key.c:402: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((void *) key, (void *) &tk[0], KEYSIZE);
data/pgsphere-1.1.1+2020-10-20/key.c:462: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((void *) key, (void *) &tk[0], KEYSIZE);
data/pgsphere-1.1.1+2020-10-20/key.h:23:2:  [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			vl_len_[4];
data/pgsphere-1.1.1+2020-10-20/key.h:36:2:  [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			vl_len_[4];
data/pgsphere-1.1.1+2020-10-20/line.c:253: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((void *) &nl, (void *) sl, sizeof(SLine));
data/pgsphere-1.1.1+2020-10-20/line.c:312: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((void *) p1, (void *) p2, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/line.c:650: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	etype[3];
data/pgsphere-1.1.1+2020-10-20/moc.c:391:4:  [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.
			sprintf(buffer, "Set output type to MOC-ASCII (0).");
data/pgsphere-1.1.1+2020-10-20/moc.c:394:4:  [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.
			sprintf(buffer, "Set output type to MOC intervals (1).");
data/pgsphere-1.1.1+2020-10-20/output.c:132:2:  [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.
	sprintf(buf, "SET %d", c);
data/pgsphere-1.1.1+2020-10-20/output.c:186:4:  [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.
			sprintf(buffer, "(%.*gd , %.*gd)",
data/pgsphere-1.1.1+2020-10-20/output.c:194:4:  [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.
			sprintf(buffer,
data/pgsphere-1.1.1+2020-10-20/output.c:204:4:  [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.
			sprintf(buffer,
data/pgsphere-1.1.1+2020-10-20/output.c:212:4:  [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.
			sprintf(buffer, "(%.*g , %.*g)",
data/pgsphere-1.1.1+2020-10-20/output.c:380:2:  [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[100];
data/pgsphere-1.1.1+2020-10-20/output.c:381:2:  [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		etype[4];
data/pgsphere-1.1.1+2020-10-20/output.c:408:5:  [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.
				sprintf(&buf[0],
data/pgsphere-1.1.1+2020-10-20/output.c:416:5:  [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.
				sprintf(&buf[0],
data/pgsphere-1.1.1+2020-10-20/output.c:422:5:  [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.
				sprintf(&buf[0], "%.*g", sphere_output_precision, val[i].lng);
data/pgsphere-1.1.1+2020-10-20/output.c:425:3:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
		strcat(&buf[0], ", ");
data/pgsphere-1.1.1+2020-10-20/output.c:531:2:  [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.
	sprintf(buffer, "1.1.5");
data/pgsphere-1.1.1+2020-10-20/path.c:125: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((void *) &path->p[i], (void *) &arr[i], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/path.c:399: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((void *) sp, (void *) &path->p[i], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/path.c:627: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((void *) &ret->p[i], (void *) &path->p[n - i], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/path.c:983: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((void *) &path->p[0], (void *) p, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/path.c:1005: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((void *) path_new, (void *) path, VARSIZE(path));
data/pgsphere-1.1.1+2020-10-20/path.c:1010: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((void *) &path_new->p[path->npts], (void *) p, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/path.h:15:2:  [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	vl_len_[4];	/* total size in bytes */
data/pgsphere-1.1.1+2020-10-20/pgs_process_moc.h:41:2:  [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	start[HP64_SIZE];
data/pgsphere-1.1.1+2020-10-20/pgs_process_moc.h:57:2:  [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		vl_len_[4];	/* size of PostgreSQL variable-length data */
data/pgsphere-1.1.1+2020-10-20/polygon.c:233: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((void *) &poly->p[i],
data/pgsphere-1.1.1+2020-10-20/polygon.c:661: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((void *) tmp, (void *) ttt, VARSIZE(pg));
data/pgsphere-1.1.1+2020-10-20/polygon.c:900: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((void *) &s[1],
data/pgsphere-1.1.1+2020-10-20/polygon.c:903: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((void *) &s[0], (void *) &s[poly->npts], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/polygon.c:904: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((void *) &s[poly->npts + 1], (void *) &s[1], sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/polygon.c:1362: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((void *) &poly->p[0], (void *) p, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/polygon.c:1384: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((void *) poly_new, (void *) poly, VARSIZE(poly));
data/pgsphere-1.1.1+2020-10-20/polygon.c:1388: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((void *) &poly_new->p[poly->npts], (void *) p, sizeof(SPoint));
data/pgsphere-1.1.1+2020-10-20/polygon.h:15:2:  [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	vl_len_[4];	/* total size in bytes */
data/pgsphere-1.1.1+2020-10-20/process_moc.cpp:77:2:  [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 buffer[2048];
data/pgsphere-1.1.1+2020-10-20/process_moc.cpp:736:3:  [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.
		sprintf(s, "%d/", order);
data/pgsphere-1.1.1+2020-10-20/process_moc.cpp:756:4:  [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.
			sprintf(s, "%d/", k);
data/pgsphere-1.1.1+2020-10-20/process_moc.cpp:764:6:  [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.
					sprintf(s, "" MOC_FORMAT_64U " ", first);
data/pgsphere-1.1.1+2020-10-20/process_moc.cpp:766:6:  [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.
					sprintf(s, "" MOC_FORMAT_64U "-" MOC_FORMAT_64U " ", first, last);
data/pgsphere-1.1.1+2020-10-20/process_moc.cpp:784: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 s[60];
data/pgsphere-1.1.1+2020-10-20/process_moc.cpp:804:6:  [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.
					sprintf(s, "[" MOC_FORMAT_64U ", " MOC_FORMAT_64U ") ", x.first, x.second);
data/pgsphere-1.1.1+2020-10-20/sbuffer.c:132: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((void *) bufpoints.p, (void *) p, bufpoints.m * sizeof(bpoint));
data/pgsphere-1.1.1+2020-10-20/sbuffer.c:381: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((void *) buf, (void *) parse_buffer, slen);
data/pgsphere-1.1.1+2020-10-20/sparse.c:98: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 err[255];
data/pgsphere-1.1.1+2020-10-20/sparse.c:99:3:  [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.
		sprintf(err, "minutes or seconds invalid (min:%f sec:%f)", m, s);
data/pgsphere-1.1.1+2020-10-20/sparse.c:194:2:  [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	c[3];
data/pgsphere-1.1.1+2020-10-20/sparse.c:960: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 const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
data/pgsphere-1.1.1+2020-10-20/sparse.c:1149: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 yymsgbuf[128];
data/pgsphere-1.1.1+2020-10-20/sparse.h:94:2:  [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	c[3];
data/pgsphere-1.1.1+2020-10-20/sscan.c:1027:19:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
sphere_yylval.i = atoi(yytext); return INT;
data/pgsphere-1.1.1+2020-10-20/sscan.c:1037:1:  [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(&sphere_yylval.c[0], yytext, 3); return EULERAXIS;
data/pgsphere-1.1.1+2020-10-20/output.c:469:2:  [1] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant character.
	strcpy(out, "{");
data/pgsphere-1.1.1+2020-10-20/output.c:474:4:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
			strcat(out, ",");
data/pgsphere-1.1.1+2020-10-20/output.c:481:2:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
	strcat(out, "}");
data/pgsphere-1.1.1+2020-10-20/output.c:493:2:  [1] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant character.
	strcpy(out, "{");
data/pgsphere-1.1.1+2020-10-20/output.c:498:4:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
			strcat(out, ",");
data/pgsphere-1.1.1+2020-10-20/output.c:505:2:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
	strcat(out, "}");
data/pgsphere-1.1.1+2020-10-20/sbuffer.c:370:13:  [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).
	int slen = strlen(parse_buffer);
data/pgsphere-1.1.1+2020-10-20/sparse.c:857:21:  [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).
#   define yystrlen strlen
data/pgsphere-1.1.1+2020-10-20/sscan.c:857:14:  [1] (buffer) getc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
data/pgsphere-1.1.1+2020-10-20/sscan.c:1842:37:  [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).
	return yy_scan_bytes( yystr, (int) strlen(yystr) );

ANALYSIS SUMMARY:

Hits = 128
Lines analyzed = 21996 in approximately 0.51 seconds (43255 lines/second)
Physical Source Lines of Code (SLOC) = 15588
Hits@level = [0]  18 [1]  10 [2]  99 [3]   1 [4]  18 [5]   0
Hits@level+ = [0+] 146 [1+] 128 [2+] 118 [3+]  19 [4+]  18 [5+]   0
Hits/KSLOC@level+ = [0+] 9.36618 [1+] 8.21144 [2+] 7.56993 [3+] 1.21889 [4+] 1.15473 [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.