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/librpcsecgss-0.19/src/authgss_prot.c
Examining data/librpcsecgss-0.19/src/clnt_simple.c
Examining data/librpcsecgss-0.19/src/svc_auth_gss.c
Examining data/librpcsecgss-0.19/src/svc_simple.c
Examining data/librpcsecgss-0.19/src/svc_auth.c
Examining data/librpcsecgss-0.19/src/svc_udp.c
Examining data/librpcsecgss-0.19/src/svc.c
Examining data/librpcsecgss-0.19/src/svc_auth_unix.c
Examining data/librpcsecgss-0.19/src/rpc_commondata.c
Examining data/librpcsecgss-0.19/src/clnt_raw.c
Examining data/librpcsecgss-0.19/src/svc_auth_none.c
Examining data/librpcsecgss-0.19/src/clnt_perror.c
Examining data/librpcsecgss-0.19/src/clnt_generic.c
Examining data/librpcsecgss-0.19/src/svc_raw.c
Examining data/librpcsecgss-0.19/src/svc_run.c
Examining data/librpcsecgss-0.19/src/clnt_tcp.c
Examining data/librpcsecgss-0.19/src/clnt_udp.c
Examining data/librpcsecgss-0.19/src/auth_gss.c
Examining data/librpcsecgss-0.19/src/svc_tcp.c
Examining data/librpcsecgss-0.19/include/rpcsecgss/rpc/auth_gss.h
Examining data/librpcsecgss-0.19/include/rpcsecgss/rpc/svc_auth.h
Examining data/librpcsecgss-0.19/include/rpcsecgss/rpc/rpc.h
Examining data/librpcsecgss-0.19/include/rpcsecgss/rpc/rpcsecgss_rename.h
Examining data/librpcsecgss-0.19/include/rpcsecgss/rpc/svc.h
Examining data/librpcsecgss-0.19/include/rpcsecgss/rpc/auth.h

FINAL RESULTS:

data/librpcsecgss-0.19/include/rpcsecgss/rpc/auth.h:84: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[8];
data/librpcsecgss-0.19/src/auth_gss.c:89: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 mechbuf[1024];
data/librpcsecgss-0.19/src/auth_gss.c:320: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			 tmp[MAX_AUTH_BYTES];
data/librpcsecgss-0.19/src/auth_gss.c:403: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(gd->gc_wire_verf.value, verf->oa_base, verf->oa_length);
data/librpcsecgss-0.19/src/authgss_prot.c:355: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 msgbuff[1024];
data/librpcsecgss-0.19/src/authgss_prot.c:375: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 msgbuff[1024];
data/librpcsecgss-0.19/src/authgss_prot.c:391: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 msgbuff[256];
data/librpcsecgss-0.19/src/authgss_prot.c:396:13:  [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.
		written = sprintf(m, "  %04x: ", (u_int)(i + offset));
data/librpcsecgss-0.19/src/authgss_prot.c:403:15:  [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.
				written = sprintf(m, "%02x ", (u_int) buf[i+j]);
data/librpcsecgss-0.19/src/authgss_prot.c:405:15:  [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.
				written = sprintf(m, "%02x", (u_int) buf[i+j]);
data/librpcsecgss-0.19/src/authgss_prot.c:410:15:  [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.
				written = sprintf(m, "   ");
data/librpcsecgss-0.19/src/authgss_prot.c:412:15:  [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.
				written = sprintf(m, "  ");
data/librpcsecgss-0.19/src/authgss_prot.c:421: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(m, "%c", c);
data/librpcsecgss-0.19/src/clnt_generic.c:80: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((char*)&sin.sin_addr, h->h_addr, h->h_length);
data/librpcsecgss-0.19/src/clnt_perror.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.
		return (char *)rpc_errlist[errnum];
data/librpcsecgss-0.19/src/clnt_perror.c:261: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.
		return (char *)auth_errlist[errnum];
data/librpcsecgss-0.19/src/clnt_raw.c:56: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	_raw_buf[UDPMSGSIZE];
data/librpcsecgss-0.19/src/clnt_raw.c: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	mashl_callmsg[MCALL_MSG_SIZE];
data/librpcsecgss-0.19/src/clnt_simple.c:100: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((char *)&server_addr.sin_addr, hp->h_addr, hp->h_length);
data/librpcsecgss-0.19/src/clnt_tcp.c:92: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		ct_mcall[MCALL_MSG_SIZE];	/* marshalled callmsg */
data/librpcsecgss-0.19/src/clnt_udp.c:86: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		   cu_inbuf[1];
data/librpcsecgss-0.19/src/svc.c:104: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(fds, __svc_fdset, howmany(__svc_fdsetsize,
data/librpcsecgss-0.19/src/svc.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(xp, xports, xportssize * sizeof(SVCXPRT *));
data/librpcsecgss-0.19/src/svc.c:437: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 cred_area[2*MAX_AUTH_BYTES + RQCRED_SIZE];
data/librpcsecgss-0.19/src/svc_auth_gss.c:340: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(gr->gr_ctx.value, gd->ctx, sizeof(gss_union_ctx_id_desc));
data/librpcsecgss-0.19/src/svc_auth_gss.c:441: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((caddr_t)buf, oa->oa_base, oa->oa_length);
data/librpcsecgss-0.19/src/svc_auth_gss.c:739: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(pname, gd->cname.value, gd->cname.length);
data/librpcsecgss-0.19/src/svc_auth_unix.c:64: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 area_machname[MAX_MACHINE_NAME+1];
data/librpcsecgss-0.19/src/svc_auth_unix.c:87: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(aup->aup_machname, (caddr_t)buf, (u_int)str_len);
data/librpcsecgss-0.19/src/svc_raw.c:50: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	_raw_buf[UDPMSGSIZE];
data/librpcsecgss-0.19/src/svc_raw.c:53: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	verf_body[MAX_AUTH_BYTES];
data/librpcsecgss-0.19/src/svc_run.c:60: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(fds, __svc_fdset, bytes);
data/librpcsecgss-0.19/src/svc_simple.c:107: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 xdrbuf[UDPMSGSIZE];
data/librpcsecgss-0.19/src/svc_tcp.c:105: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 verf_body[MAX_AUTH_BYTES];
data/librpcsecgss-0.19/src/svc_tcp.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(fds, __svc_fdset, bytes);
data/librpcsecgss-0.19/src/svc_udp.c:80: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	su_verfbody[MAX_AUTH_BYTES];	/* verifier body */
data/librpcsecgss-0.19/src/auth_gss.c:238:17:  [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).
	sname.length = strlen(service);
data/librpcsecgss-0.19/src/authgss_prot.c:415:3:  [1] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source is a constant character.
		sprintf(m, " ");
data/librpcsecgss-0.19/src/authgss_prot.c:424:3:  [1] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source is a constant character.
		sprintf(m, "\n");
data/librpcsecgss-0.19/src/clnt_perror.c:143: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(strstart, "\n");
data/librpcsecgss-0.19/src/clnt_simple.c:112:10:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
		(void) strncpy(crp->oldhost, host, MAXHOSTNAMELEN-1);
data/librpcsecgss-0.19/src/clnt_tcp.c:513:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	switch (len = read(ct->ct_sock, buf, len)) {
data/librpcsecgss-0.19/src/svc_auth_gss.c:118:19:  [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).
	namebuf.length = strlen(principal);
data/librpcsecgss-0.19/src/svc_tcp.c:407:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	if ((len = read(sock, buf, len)) > 0) {

ANALYSIS SUMMARY:

Hits = 44
Lines analyzed = 6975 in approximately 0.30 seconds (22873 lines/second)
Physical Source Lines of Code (SLOC) = 4593
Hits@level = [0]  28 [1]   8 [2]  36 [3]   0 [4]   0 [5]   0
Hits@level+ = [0+]  72 [1+]  44 [2+]  36 [3+]   0 [4+]   0 [5+]   0
Hits/KSLOC@level+ = [0+] 15.676 [1+] 9.5798 [2+] 7.83801 [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.