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/metis-edf-4.1-2/Lib/fm.c
Examining data/metis-edf-4.1-2/Lib/minitpart.c
Examining data/metis-edf-4.1-2/Lib/debug.c
Examining data/metis-edf-4.1-2/Lib/bucketsort.c
Examining data/metis-edf-4.1-2/Lib/rename.h
Examining data/metis-edf-4.1-2/Lib/mcoarsen.c
Examining data/metis-edf-4.1-2/Lib/mkwayrefine.c
Examining data/metis-edf-4.1-2/Lib/mfm.c
Examining data/metis-edf-4.1-2/Lib/mmd.c
Examining data/metis-edf-4.1-2/Lib/sfm.c
Examining data/metis-edf-4.1-2/Lib/mincover.c
Examining data/metis-edf-4.1-2/Lib/ccgraph.c
Examining data/metis-edf-4.1-2/Lib/ometis.c
Examining data/metis-edf-4.1-2/Lib/parmetis.c
Examining data/metis-edf-4.1-2/Lib/kwayfm.c
Examining data/metis-edf-4.1-2/Lib/macros.h
Examining data/metis-edf-4.1-2/Lib/match.c
Examining data/metis-edf-4.1-2/Lib/separator.c
Examining data/metis-edf-4.1-2/Lib/estmem.c
Examining data/metis-edf-4.1-2/Lib/mrefine2.c
Examining data/metis-edf-4.1-2/Lib/mkmetis.c
Examining data/metis-edf-4.1-2/Lib/metis.h
Examining data/metis-edf-4.1-2/Lib/compress.c
Examining data/metis-edf-4.1-2/Lib/minitpart2.c
Examining data/metis-edf-4.1-2/Lib/mpmetis.c
Examining data/metis-edf-4.1-2/Lib/defs.h
Examining data/metis-edf-4.1-2/Lib/mrefine.c
Examining data/metis-edf-4.1-2/Lib/initpart.c
Examining data/metis-edf-4.1-2/Lib/coarsen.c
Examining data/metis-edf-4.1-2/Lib/mbalance.c
Examining data/metis-edf-4.1-2/Lib/mesh.c
Examining data/metis-edf-4.1-2/Lib/mfm2.c
Examining data/metis-edf-4.1-2/Lib/mutil.c
Examining data/metis-edf-4.1-2/Lib/myqsort.c
Examining data/metis-edf-4.1-2/Lib/mkwayfmh.c
Examining data/metis-edf-4.1-2/Lib/frename.c
Examining data/metis-edf-4.1-2/Lib/kwayrefine.c
Examining data/metis-edf-4.1-2/Lib/graph.c
Examining data/metis-edf-4.1-2/Lib/stat.c
Examining data/metis-edf-4.1-2/Lib/kwayvolfm.c
Examining data/metis-edf-4.1-2/Lib/meshpart.c
Examining data/metis-edf-4.1-2/Lib/fortran.c
Examining data/metis-edf-4.1-2/Lib/pqueue.c
Examining data/metis-edf-4.1-2/Lib/timing.c
Examining data/metis-edf-4.1-2/Lib/kmetis.c
Examining data/metis-edf-4.1-2/Lib/kvmetis.c
Examining data/metis-edf-4.1-2/Lib/mbalance2.c
Examining data/metis-edf-4.1-2/Lib/kwayvolrefine.c
Examining data/metis-edf-4.1-2/Lib/subdomains.c
Examining data/metis-edf-4.1-2/Lib/struct.h
Examining data/metis-edf-4.1-2/Lib/balance.c
Examining data/metis-edf-4.1-2/Lib/pmetis.c
Examining data/metis-edf-4.1-2/Lib/refine.c
Examining data/metis-edf-4.1-2/Lib/proto.h
Examining data/metis-edf-4.1-2/Lib/memory.c
Examining data/metis-edf-4.1-2/Lib/srefine.c
Examining data/metis-edf-4.1-2/Lib/mmatch.c
Examining data/metis-edf-4.1-2/Lib/util.c
Examining data/metis-edf-4.1-2/Programs/io.c
Examining data/metis-edf-4.1-2/Programs/partnmesh.c
Examining data/metis-edf-4.1-2/Programs/io_aster.c
Examining data/metis-edf-4.1-2/Programs/onmetis.c
Examining data/metis-edf-4.1-2/Programs/mesh2nodal.c
Examining data/metis-edf-4.1-2/Programs/mesh2dual.c
Examining data/metis-edf-4.1-2/Programs/partdmesh.c
Examining data/metis-edf-4.1-2/Programs/smbfactor.c
Examining data/metis-edf-4.1-2/Programs/kmetis.c
Examining data/metis-edf-4.1-2/Programs/graphchk.c
Examining data/metis-edf-4.1-2/Programs/oemetis.c
Examining data/metis-edf-4.1-2/Programs/pmetis.c

FINAL RESULTS:

data/metis-edf-4.1-2/Lib/macros.h:138:10:  [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.
         printf msg ; \
data/metis-edf-4.1-2/Lib/util.c:26:4:  [4] (format) vsprintf:
  Potential format string problem (CWE-134). Make format string constant.
   vsprintf(out1, f_str, argp); 
data/metis-edf-4.1-2/Lib/util.c:29:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
   sprintf(out2, "Error! %s", out1); 
data/metis-edf-4.1-2/Programs/graphchk.c:33:4:  [4] (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).
   strcpy(filename, argv[1]); 
data/metis-edf-4.1-2/Programs/io.c:156:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(filename,"%s.part.%d",fname, nparts);
data/metis-edf-4.1-2/Programs/io.c:178:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(filename,"%s.epart.%d",fname, nparts);
data/metis-edf-4.1-2/Programs/io.c:188:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(filename,"%s.npart.%d",fname, nparts);
data/metis-edf-4.1-2/Programs/io.c:212:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(filename,"%s.iperm",fname);
data/metis-edf-4.1-2/Programs/io_aster.c:160:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
   sprintf(filename,"%s.part.%ld",fname, nparts); 
data/metis-edf-4.1-2/Programs/io_aster.c:182:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
   sprintf(filename,"%s.epart.%ld",fname, nparts); 
data/metis-edf-4.1-2/Programs/io_aster.c:192:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
   sprintf(filename,"%s.npart.%ld",fname, nparts); 
data/metis-edf-4.1-2/Programs/io_aster.c:216:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
   sprintf(filename,"%s.iperm",fname); 
data/metis-edf-4.1-2/Programs/kmetis.c:37:4:  [4] (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).
   strcpy(filename, argv[1]); 
data/metis-edf-4.1-2/Programs/mesh2dual.c:57:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
   sprintf(fileout, "%s.dgraph", argv[1]); 
data/metis-edf-4.1-2/Programs/mesh2nodal.c:57:4:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
   sprintf(fileout, "%s.ngraph", argv[1]); 
data/metis-edf-4.1-2/Programs/oemetis.c:37:4:  [4] (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).
   strcpy(filename, argv[1]); 
data/metis-edf-4.1-2/Programs/onmetis.c:42:4:  [4] (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).
   strcpy(filename, argv[1]); 
data/metis-edf-4.1-2/Programs/pmetis.c:38:4:  [4] (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).
   strcpy(filename, argv[1]); 
data/metis-edf-4.1-2/Lib/macros.h:23:35:  [3] (random) drand48:
  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.
 #define RandomInRange(u) ((long)(drand48()*((double)(u)))) 
data/metis-edf-4.1-2/Lib/proto.h:458:9:  [3] (random) drand48:
  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.
 double drand48(); 
data/metis-edf-4.1-2/Lib/util.c:499:6:  [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(4321);   
data/metis-edf-4.1-2/Lib/util.c:505:6:  [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(seed);   
data/metis-edf-4.1-2/Lib/ccgraph.c:65: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(auxadj, adjncy, iend*sizeof(idxtype));  
data/metis-edf-4.1-2/Lib/ccgraph.c:235: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(auxadj, adjncy, iend*sizeof(idxtype));  
data/metis-edf-4.1-2/Lib/ccgraph.c:362: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(auxadj, adjncy, iend*sizeof(idxtype));  
data/metis-edf-4.1-2/Lib/macros.h:43:34:  [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 scopy(n, a, b) (float *)memcpy((void *)(b), (void *)(a), sizeof(float)*(n)) 
data/metis-edf-4.1-2/Lib/macros.h:44:38:  [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 idxcopy(n, a, b) (idxtype *)memcpy((void *)(b), (void *)(a), sizeof(idxtype)*(n))  
data/metis-edf-4.1-2/Lib/util.c:23:4:  [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 out1[256], out2[256]; 
data/metis-edf-4.1-2/Programs/graphchk.c:25:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/io.c:33:15:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  if ((fpin = fopen(filename, "r")) == NULL) {
data/metis-edf-4.1-2/Programs/io.c:154: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 filename[256];
data/metis-edf-4.1-2/Programs/io.c:158:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  if ((fpout = fopen(filename, "w")) == NULL) 
data/metis-edf-4.1-2/Programs/io.c:176: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 filename[256];
data/metis-edf-4.1-2/Programs/io.c:180:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  if ((fpout = fopen(filename, "w")) == NULL) 
data/metis-edf-4.1-2/Programs/io.c:190:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  if ((fpout = fopen(filename, "w")) == NULL) 
data/metis-edf-4.1-2/Programs/io.c:210: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 filename[256];
data/metis-edf-4.1-2/Programs/io.c:214:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  if ((fpout = fopen(filename, "w")) == NULL) 
data/metis-edf-4.1-2/Programs/io.c:282:15:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  if ((fpin = fopen(filename, "r")) == NULL) {
data/metis-edf-4.1-2/Programs/io.c:329:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  if ((fpout = fopen(filename, "w")) == NULL) {
data/metis-edf-4.1-2/Programs/io.c:354: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 filename[256];
data/metis-edf-4.1-2/Programs/io.c:363: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(filename, "moc.graph.%d.%d", nvtxs, ncon);
data/metis-edf-4.1-2/Programs/io.c:365:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
  if ((fpout = fopen(filename, "w")) == NULL) {
data/metis-edf-4.1-2/Programs/io_aster.c:33:17:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    if ((fpin = fopen(filename, "r")) == NULL) { 
data/metis-edf-4.1-2/Programs/io_aster.c:158:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/io_aster.c:162:17:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
   if ((fpout = fopen(filename, "w")) == NULL)  
data/metis-edf-4.1-2/Programs/io_aster.c:180:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/io_aster.c:184:17:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
   if ((fpout = fopen(filename, "w")) == NULL)  
data/metis-edf-4.1-2/Programs/io_aster.c:194:17:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
   if ((fpout = fopen(filename, "w")) == NULL)  
data/metis-edf-4.1-2/Programs/io_aster.c:214:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/io_aster.c:218:17:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
   if ((fpout = fopen(filename, "w")) == NULL)  
data/metis-edf-4.1-2/Programs/io_aster.c:286:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
   if ((fpin = fopen(filename, "r")) == NULL) { 
data/metis-edf-4.1-2/Programs/io_aster.c:333:17:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
   if ((fpout = fopen(filename, "w")) == NULL) { 
data/metis-edf-4.1-2/Programs/io_aster.c:358:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/io_aster.c:367: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(filename, "moc.graph.%ld.%ld", nvtxs, ncon); 
data/metis-edf-4.1-2/Programs/io_aster.c:369:17:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
   if ((fpout = fopen(filename, "w")) == NULL) { 
data/metis-edf-4.1-2/Programs/kmetis.c:28:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/kmetis.c:38:13:  [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).
   nparts = atoi(argv[2]); 
data/metis-edf-4.1-2/Programs/mesh2dual.c:28:4:  [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 fileout[256], etypestr[4][5] = {"TRI", "TET", "HEX", "QUAD"}; 
data/metis-edf-4.1-2/Programs/mesh2nodal.c:28:4:  [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 fileout[256], etypestr[4][5] = {"TRI", "TET", "HEX", "QUAD"}; 
data/metis-edf-4.1-2/Programs/oemetis.c:27:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/onmetis.c:27:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/partdmesh.c:28:4:  [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 etypestr[4][5] = {"TRI", "TET", "HEX", "QUAD"}; 
data/metis-edf-4.1-2/Programs/partdmesh.c:36:13:  [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).
   nparts = atoi(argv[2]); 
data/metis-edf-4.1-2/Programs/partnmesh.c:28:4:  [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 etypestr[4][5] = {"TRI", "TET", "HEX", "QUAD"}; 
data/metis-edf-4.1-2/Programs/partnmesh.c:36:13:  [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).
   nparts = atoi(argv[2]); 
data/metis-edf-4.1-2/Programs/pmetis.c:28:4:  [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 filename[256]; 
data/metis-edf-4.1-2/Programs/pmetis.c:39:13:  [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).
   nparts = atoi(argv[2]); 
data/metis-edf-4.1-2/Programs/io.c:96:9:  [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).
    if (strlen(line) == MAXLINE) 

ANALYSIS SUMMARY:

Hits = 68
Lines analyzed = 23414 in approximately 0.71 seconds (32904 lines/second)
Physical Source Lines of Code (SLOC) = 15702
Hits@level = [0] 411 [1]   1 [2]  45 [3]   4 [4]  18 [5]   0
Hits@level+ = [0+] 479 [1+]  68 [2+]  67 [3+]  22 [4+]  18 [5+]   0
Hits/KSLOC@level+ = [0+] 30.5057 [1+] 4.33066 [2+] 4.26697 [3+] 1.4011 [4+] 1.14635 [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.