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/itsol-1.0.0/LIB/piluNEW.c
Examining data/itsol-1.0.0/LIB/ilutpC.c
Examining data/itsol-1.0.0/LIB/svdInvC.c
Examining data/itsol-1.0.0/LIB/setblks.c
Examining data/itsol-1.0.0/LIB/MatOps.c
Examining data/itsol-1.0.0/LIB/misc.c
Examining data/itsol-1.0.0/LIB/globheads.h
Examining data/itsol-1.0.0/LIB/defs.h
Examining data/itsol-1.0.0/LIB/systimer.c
Examining data/itsol-1.0.0/LIB/PQ.c
Examining data/itsol-1.0.0/LIB/indsetC.c
Examining data/itsol-1.0.0/LIB/protos.h
Examining data/itsol-1.0.0/LIB/sets.c
Examining data/itsol-1.0.0/arms2.c
Examining data/itsol-1.0.0/ilut.c
Examining data/itsol-1.0.0/auxill.c
Examining data/itsol-1.0.0/fgmr.c
Examining data/itsol-1.0.0/ios.h
Examining data/itsol-1.0.0/TESTS_HB/mainILUThb.c
Examining data/itsol-1.0.0/TESTS_HB/mainILUKhb.c
Examining data/itsol-1.0.0/TESTS_HB/mainARMShb.c
Examining data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c
Examining data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c
Examining data/itsol-1.0.0/vbilut.c
Examining data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c
Examining data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c
Examining data/itsol-1.0.0/TESTS_COO/mainARMScoo.c
Examining data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c
Examining data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c
Examining data/itsol-1.0.0/vbiluk.c
Examining data/itsol-1.0.0/iluk.c

FINAL RESULTS:

data/itsol-1.0.0/LIB/sets.c:14:3:  [4] (format) vsprintf:
  Potential format string problem (CWE-134). Make format string constant.
  vsprintf(out1, f_str, argp);
data/itsol-1.0.0/LIB/sets.c:17:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(out2, "Error! %s\n", out1);
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:197:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
       sprintf(pltfile, "OUT/%s_ARMS_F%05d_T%08.6f", io.HBnameF, lfil,tol);
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:174:2:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	sprintf( pltfile, "OUT/%s_ILUK_F%05d", io.HBnameF, lfil);
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:176:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
       sprintf( matdata, "OUT/%s.dat", io.HBnameF );
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:200:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
       sprintf( pltfile, "OUT/%s_ILUT_F%05d_T%08.6f", io.HBnameF, lfil,tol);
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:186:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf( matdata, "OUT/%s.dat", io.HBnameF );
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:241:2:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	sprintf( pltfile, "OUT/%s_VBILUK_F%05d", io.HBnameF, lfil);
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:181:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf( matdata, "OUT/%s.dat", io.HBnameF );
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:245:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
       sprintf( pltfile, "OUT/%s_VBILUT_F%05d_T%08.6f", io.HBnameF, lfil,tol);
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:197:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
       sprintf(pltfile, "OUT/%s_ARMS_F%05d_T%08.6f", io.HBnameF, lfil,tol);
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:169:2:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	sprintf( pltfile, "OUT/%s_ILUK_F%05d", io.HBnameF, lfil);
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:169:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
       sprintf( matdata, "OUT/%s.dat", io.HBnameF );
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:192:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
       sprintf( pltfile, "OUT/%s_ILUT_F%05d_T%08.6f", io.HBnameF, lfil,tol);
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:181:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf( matdata, "OUT/%s.dat", io.HBnameF );
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:236:2:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	sprintf( pltfile, "OUT/%s_VBILUK_F%05d", io.HBnameF, lfil);
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:178:7:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
      sprintf( matdata, "OUT/%s.dat", io.HBnameF );
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:241:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
       sprintf( pltfile, "OUT/%s_VBILUT_F%05d_T%08.6f", io.HBnameF, lfil,tol);
data/itsol-1.0.0/auxill.c:194:5:  [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( pio->Fname, p1 );
data/itsol-1.0.0/auxill.c:200:5:  [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( pio->HBnameF, p1 );
data/itsol-1.0.0/auxill.c:403:3:  [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/itsol-1.0.0/LIB/MatOps.c:50: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(D[i], vbmat->ba[i][j], size );
data/itsol-1.0.0/LIB/MatOps.c:265: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(&work[lenB],&x[lenB],(len-lenB)*sizeof(double));
data/itsol-1.0.0/LIB/MatOps.c:482: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(y, work,n*sizeof(double));
data/itsol-1.0.0/LIB/MatOps.c:919: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(y, x, n*sizeof(double));  
data/itsol-1.0.0/LIB/ilutpC.c:296: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(ilusch->L->ma[ii], w, len*sizeof(double));
data/itsol-1.0.0/LIB/ilutpC.c:365: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(&ilusch->U->ma[ii][1], &w[ii+1], (len-1)*sizeof(double));
data/itsol-1.0.0/LIB/ilutpC.c:639: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(ilusch->L->ja[ii], jw, lenl*sizeof(int));
data/itsol-1.0.0/LIB/ilutpC.c:640: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(ilusch->L->ma[ii], w, lenl*sizeof(double));
data/itsol-1.0.0/LIB/ilutpC.c:670: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(&ilusch->U->ja[ii][1], jw, jpos*sizeof(int));
data/itsol-1.0.0/LIB/ilutpC.c:671: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(&ilusch->U->ma[ii][1], w, jpos*sizeof(double));
data/itsol-1.0.0/LIB/piluNEW.c:310:8:  [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(amat->L->ja[ii], jw, lenl*sizeof(int));
data/itsol-1.0.0/LIB/piluNEW.c:311:8:  [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(amat->L->ma[ii], w, lenl*sizeof(double));
data/itsol-1.0.0/LIB/piluNEW.c:340: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(&amat->U->ja[ii][1], jw, jpos*sizeof(int));
data/itsol-1.0.0/LIB/piluNEW.c:341: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(&amat->U->ma[ii][1], w, jpos*sizeof(double));
data/itsol-1.0.0/LIB/piluNEW.c:361:8:  [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(lfma[ii], w, lenu*sizeof(double));
data/itsol-1.0.0/LIB/piluNEW.c:362:8:  [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(lfja[ii], jw, lenu*sizeof(int)); 
data/itsol-1.0.0/LIB/piluNEW.c:560: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(&schur->ja[ii][0], jw, jpos*sizeof(int));
data/itsol-1.0.0/LIB/piluNEW.c:561: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(&schur->ma[ii][0], w, jpos*sizeof(double));
data/itsol-1.0.0/LIB/sets.c:11: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 out1[256], out2[256];
data/itsol-1.0.0/LIB/sets.c:143: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(bja,amat->ja[j],len*sizeof(int));
data/itsol-1.0.0/LIB/sets.c:144: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(bma,amat->ma[j],len*sizeof(double));
data/itsol-1.0.0/LIB/sets.c:808: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(B->ja[j], new1j, numl*sizeof(int));
data/itsol-1.0.0/LIB/sets.c:809: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(B->ma[j], new1m, numl*sizeof(double));
data/itsol-1.0.0/LIB/sets.c:810: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(F->ja[j], new2j, numr*sizeof(int));
data/itsol-1.0.0/LIB/sets.c:811: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(F->ma[j], new2m, numr*sizeof(double));
data/itsol-1.0.0/LIB/sets.c:848: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(E->ja[j], new1j, numl*sizeof(int));
data/itsol-1.0.0/LIB/sets.c:849: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(E->ma[j], new1m, numl*sizeof(double));
data/itsol-1.0.0/LIB/sets.c:850: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(C->ja[j], new2j, numr*sizeof(int));
data/itsol-1.0.0/LIB/sets.c:851: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(C->ma[j], new2m, numr*sizeof(double));
data/itsol-1.0.0/LIB/sets.c:1225:19:  [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).
  FILE *fmatlab = fopen( filename, "w" );
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:40: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 pltfile[256];
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:67: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:82:24:  [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( NULL == ( fmat = fopen( "matfile_coo", "r" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:88:16:  [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).
  if( (numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:100:7:  [2] (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 string.
      strcpy(io.outfile,"OUT/ARMS_DDPQ.out");
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:101:7:  [2] (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 string.
      strcpy(io.PrecMeth,"ARMS_DDPQ");
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:104:7:  [2] (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 string.
      strcpy(io.outfile,"OUT/ARMS.out");
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:105:7:  [2] (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 string.
      strcpy(io.PrecMeth,"ARMS");
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:107:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainARMScoo.c:198:28:  [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( NULL == (fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:28: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 pltfile[256];
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:45: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:62:24:  [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( NULL == ( fmat = fopen( "matfile_coo", "r" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:68:17:  [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).
  if( ( numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:77:5:  [2] (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 string.
    strcpy(io.outfile,"OUT/ILUK.out");
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:78:5:  [2] (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 string.
    strcpy(io.PrecMeth,"ILUK");
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:79:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainILUKcoo.c:175:23:  [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( NULL == ( fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:36: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 pltfile[256];
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:61: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:73:24:  [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( NULL == ( fmat = fopen( "matfile_coo", "r" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:79:17:  [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).
  if( ( numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:87:5:  [2] (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 string.
    strcpy(io.outfile,"OUT/ILUT.out");
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:88:5:  [2] (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 string.
    strcpy(io.PrecMeth,"ILUT");
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:89:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:175:8:  [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 matdata[MAX_LINE];
data/itsol-1.0.0/TESTS_COO/mainILUTcoo.c:201:29:  [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( NULL == ( fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:37: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 pltfile[256];
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:58: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:81:24:  [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( NULL == ( fmat = fopen( "matfile_coo", "r" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:87:17:  [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).
  if( ( numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:95:5:  [2] (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 string.
    strcpy(io.outfile,"OUT/VBILUK.out");
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:96:5:  [2] (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 string.
    strcpy(io.PrecMeth,"Variable Block ILUK (VBILUK)");
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:97:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:183:7:  [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 matdata[MAX_LINE];
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:187:31:  [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( NULL != ( fmatlab = fopen( matdata, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUKcoo.c:242:23:  [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( NULL == ( fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:36: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 pltfile[256];
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:53: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:77:24:  [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( NULL == ( fmat = fopen( "matfile_coo", "r" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:83:17:  [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).
  if( ( numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:91:5:  [2] (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 string.
    strcpy(io.outfile,"OUT/ILUT.out");
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:92:5:  [2] (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 string.
    strcpy(io.PrecMeth,"Variable Block ILUT (VBILUT)");
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:93:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:178:7:  [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 matdata[MAX_LINE];
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:182:31:  [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( NULL != ( fmatlab = fopen( matdata, "w" ) ) ) {
data/itsol-1.0.0/TESTS_COO/mainVBILUTcoo.c:246:29:  [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( NULL == ( fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:43: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 pltfile[256];
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:71: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:86:24:  [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( NULL == ( fmat = fopen( "matfile_hb", "r" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:92:16:  [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).
  if( (numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:104:7:  [2] (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 string.
      strcpy(io.outfile,"OUT/ARMS_DDPQ.out");
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:105:7:  [2] (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 string.
      strcpy(io.PrecMeth,"ARMS_DDPQ");
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:108:7:  [2] (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 string.
      strcpy(io.outfile,"OUT/ARMS.out");
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:109:7:  [2] (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 string.
      strcpy(io.PrecMeth,"ARMS");
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:111:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainARMShb.c:198:28:  [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( NULL == (fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:28: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 pltfile[256];
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:45: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:62:24:  [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( NULL == ( fmat = fopen( "matfile_hb", "r" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:68:17:  [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).
  if( ( numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:76:5:  [2] (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 string.
    strcpy(io.outfile,"OUT/ILUK.out");
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:77:5:  [2] (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 string.
    strcpy(io.PrecMeth,"ILUK");
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:78:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainILUKhb.c:170:23:  [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( NULL == ( fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:36: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 pltfile[256];
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:61: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:72:24:  [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( NULL == ( fmat = fopen( "matfile_hb", "r" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:78:17:  [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).
  if( ( numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:86:5:  [2] (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 string.
    strcpy(io.outfile,"OUT/ILUT.out");
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:87:5:  [2] (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 string.
    strcpy(io.PrecMeth,"ILUT");
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:88:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:168:8:  [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 matdata[MAX_LINE];
data/itsol-1.0.0/TESTS_HB/mainILUThb.c:193:29:  [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( NULL == ( fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:37: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 pltfile[256];
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:58: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:81:24:  [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( NULL == ( fmat = fopen( "matfile_hb", "r" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:87:17:  [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).
  if( ( numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:95:5:  [2] (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 string.
    strcpy(io.outfile,"OUT/VBILUK.out");
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:96:5:  [2] (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 string.
    strcpy(io.PrecMeth,"Variable Block ILUK (VBILUK)");
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:97:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:178:7:  [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 matdata[MAX_LINE];
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:182:31:  [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( NULL != ( fmatlab = fopen( matdata, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUKhb.c:237:23:  [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( NULL == ( fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:36: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 pltfile[256];
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:53: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 line[MAX_LINE];
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:77:24:  [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( NULL == ( fmat = fopen( "matfile_hb", "r" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:83:17:  [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).
  if( ( numat = atoi( line ) ) <= 0 ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:91:5:  [2] (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 string.
    strcpy(io.outfile,"OUT/ILUT.out");
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:92:5:  [2] (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 string.
    strcpy(io.PrecMeth,"Variable Block ILUT (VBILUT)");
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:93:29:  [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( NULL == ( io.fout = fopen( io.outfile, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:175:7:  [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 matdata[MAX_LINE];
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:179:31:  [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( NULL != ( fmatlab = fopen( matdata, "w" ) ) ) {
data/itsol-1.0.0/TESTS_HB/mainVBILUThb.c:242:29:  [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( NULL == ( fits = fopen( pltfile, "w" ) ) ) {
data/itsol-1.0.0/arms2.c:183: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(methL, &ipar[10], 4*sizeof(int));
data/itsol-1.0.0/arms2.c:184: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(methS, &ipar[14], 4*sizeof(int));
data/itsol-1.0.0/auxill.c:15: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 guesol[3], title[73], key[9], type[4];
data/itsol-1.0.0/auxill.c:85: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 line[MAX_LINE], *p1, *p2;
data/itsol-1.0.0/auxill.c:86:27:  [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( NULL == ( finputs = fopen( in_file, "r" ) ) )
data/itsol-1.0.0/auxill.c:94:17:  [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).
  pio->nparam = atoi( p1 );
data/itsol-1.0.0/auxill.c:101: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).
  pio->im = atoi( p1 );
data/itsol-1.0.0/auxill.c:108:17:  [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).
  pio->maxits = atoi( p1 );
data/itsol-1.0.0/auxill.c:132:16:  [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).
  pio->lfil0 = atoi( p1 );
data/itsol-1.0.0/auxill.c:139:18:  [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).
  pio->lfilInc = atoi( p1 );
data/itsol-1.0.0/auxill.c:160: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).
  pio->fill_lev = atoi( p1 );
data/itsol-1.0.0/auxill.c:169:20:  [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).
  pio->perm_type = atoi( p1 );
data/itsol-1.0.0/auxill.c:176:16:  [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).
  pio->Bsize = atoi( p1 );
data/itsol-1.0.0/auxill.c:186: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 line[MAX_LINE], *p1, *p2;
data/itsol-1.0.0/auxill.c:243: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 line[MAX_LINE];
data/itsol-1.0.0/auxill.c:245:10:  [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).
  matf = fopen(pio->Fname,"r");
data/itsol-1.0.0/auxill.c:276:15:  [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).
      ii[k] = atoi(p1);
data/itsol-1.0.0/auxill.c:282:16:  [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).
      jj[k]  = atoi(p1); 
data/itsol-1.0.0/fgmr.c:102: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(z[i],vv[i],n*sizeof(double));
data/itsol-1.0.0/iluk.c:271: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( L->ja[i], jbuf, sizeof(int)*incl);
data/itsol-1.0.0/iluk.c:278: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(U->ja[i], jbuf+i, sizeof(int)*k );
data/itsol-1.0.0/iluk.c:281: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( ulvl[i], levls+i, k*sizeof(int) );
data/itsol-1.0.0/ios.h:7: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 outfile[MAX_LINE];     /* output filename                 */
data/itsol-1.0.0/ios.h:8: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 Fname[MAX_LINE];       /* matrix filename                 */
data/itsol-1.0.0/ios.h:9: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 HBnameF[MAX_HBNAME];   /* HB name                         */
data/itsol-1.0.0/ios.h:10: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 PrecMeth[MAX_LINE];    /* preconditioner being tested     */
data/itsol-1.0.0/ios.h:11: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 type[4];               /* HB type                         */
data/itsol-1.0.0/vbiluk.c:308: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( L->ja[i], jbuf, sizeof(int)*incl);
data/itsol-1.0.0/vbiluk.c:315: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(U->ja[i], jbuf+i, sizeof(int)*k );
data/itsol-1.0.0/vbiluk.c:318: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( ulvl[i], levls+i, k*sizeof(int) );
data/itsol-1.0.0/auxill.c:66:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy( pio->type, type, 3 );

ANALYSIS SUMMARY:

Hits = 176
Lines analyzed = 10409 in approximately 0.45 seconds (23358 lines/second)
Physical Source Lines of Code (SLOC) = 6797
Hits@level = [0] 310 [1]   1 [2] 154 [3]   1 [4]  20 [5]   0
Hits@level+ = [0+] 486 [1+] 176 [2+] 175 [3+]  21 [4+]  20 [5+]   0
Hits/KSLOC@level+ = [0+] 71.5021 [1+] 25.8938 [2+] 25.7467 [3+] 3.0896 [4+] 2.94247 [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.