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/r-cran-eaf-1.9-1/src/Rhv.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/hv.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/hv.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/pareto.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/gcc_attribs.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/nondominated.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/cmdline.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/ndsort.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/io.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/igd.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/hv_contrib.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/io_priv.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/epsilon.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/epsilon.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/igd.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/nondominated.c
Examining data/r-cran-eaf-1.9-1/src/mo-tools/hv_contrib.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/common.h
Examining data/r-cran-eaf-1.9-1/src/mo-tools/io.h
Examining data/r-cran-eaf-1.9-1/src/init.c
Examining data/r-cran-eaf-1.9-1/src/eaf/avl.h
Examining data/r-cran-eaf-1.9-1/src/eaf/gcc_attribs.h
Examining data/r-cran-eaf-1.9-1/src/eaf/cvector.h
Examining data/r-cran-eaf-1.9-1/src/eaf/io.c
Examining data/r-cran-eaf-1.9-1/src/eaf/io_priv.h
Examining data/r-cran-eaf-1.9-1/src/eaf/eaf.h
Examining data/r-cran-eaf-1.9-1/src/eaf/common.h
Examining data/r-cran-eaf-1.9-1/src/eaf/eaf3d.c
Examining data/r-cran-eaf-1.9-1/src/eaf/eaf.c
Examining data/r-cran-eaf-1.9-1/src/eaf/io.h
Examining data/r-cran-eaf-1.9-1/src/eaf/avl.c
Examining data/r-cran-eaf-1.9-1/src/eaf/eaf_main.c
Examining data/r-cran-eaf-1.9-1/src/Rnondominated.c
Examining data/r-cran-eaf-1.9-1/src/Rcommon.h
Examining data/r-cran-eaf-1.9-1/src/Repsilon.c
Examining data/r-cran-eaf-1.9-1/src/Reaf.c

FINAL RESULTS:

data/r-cran-eaf-1.9-1/src/eaf/common.h:21:22:  [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.
#define Rprintf(...) printf(__VA_ARGS__)
data/r-cran-eaf-1.9-1/src/eaf/common.h:22:66:  [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.
void fatal_error(const char * format,...) __attribute__ ((format(printf, 1, 2))) __noreturn __unused;
data/r-cran-eaf-1.9-1/src/eaf/common.h:23:64:  [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.
void errprintf(const char * format,...) __attribute__ ((format(printf, 1, 2)));
data/r-cran-eaf-1.9-1/src/eaf/common.h:24:65:  [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.
void warnprintf(const char *format,...)  __attribute__ ((format(printf, 1, 2)));
data/r-cran-eaf-1.9-1/src/eaf/common.h:76:35:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
#define DEBUG2_PRINT(...) DEBUG2 (fprintf (stderr,  __VA_ARGS__))
data/r-cran-eaf-1.9-1/src/eaf/eaf.c:130:9:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        fprintf (coord_file, point_printf_format "\t" point_printf_format,
data/r-cran-eaf-1.9-1/src/eaf/eaf.c:133:13:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
            fprintf (coord_file, "\t" point_printf_format, (double)x[k]);
data/r-cran-eaf-1.9-1/src/eaf/eaf.c:135:9:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        fprintf (coord_file, 
data/r-cran-eaf-1.9-1/src/eaf/eaf.c:150:9:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        fprintf (indic_file, (indic_file == diff_file) ? "\t" : "\n");
data/r-cran-eaf-1.9-1/src/eaf/eaf.c:328:26:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
#define PRINT_POINT(X,Y) fprintf(stderr, point_printf_format "\t" point_printf_format "\n", X, Y)
data/r-cran-eaf-1.9-1/src/eaf/eaf.c:688:9:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        fprintf(stream, point_printf_format "\t" point_printf_format "\n", 
data/r-cran-eaf-1.9-1/src/eaf/eaf3d.c:221:13:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
            fprintf(outfile, point_printf_format "\t", val[i]);
data/r-cran-eaf-1.9-1/src/eaf/eaf3d.c:266:13:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
            fprintf(outfile, point_printf_format, val[0]);
data/r-cran-eaf-1.9-1/src/eaf/eaf3d.c:268:17:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
                fprintf(outfile, "\t" point_printf_format, val[i]);
data/r-cran-eaf-1.9-1/src/eaf/eaf3d.c:271:13:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
            fprintf(outfile, (outfile == outfileindic) ? "\t" : "\n");
data/r-cran-eaf-1.9-1/src/eaf/io.c:100:5:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    vfprintf(stderr, format, ap);
data/r-cran-eaf-1.9-1/src/eaf/io.c:118:5:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    vfprintf(stderr, format, ap);
data/r-cran-eaf-1.9-1/src/eaf/io.c:130:5:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    vfprintf(stderr, format, ap);
data/r-cran-eaf-1.9-1/src/eaf/io.c:139:5:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    fprintf (stream, point_printf_format, vector[0]);
data/r-cran-eaf-1.9-1/src/eaf/io.c:141:9:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        fprintf (stream, point_printf_sep "" point_printf_format, vector[k]);
data/r-cran-eaf-1.9-1/src/eaf/io_priv.h:86:21:  [4] (buffer) fscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
                if (fscanf (instream, objective_t_scanf_format, &number) != 1) {
data/r-cran-eaf-1.9-1/src/mo-tools/cmdline.h:89: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 (dest, a);
data/r-cran-eaf-1.9-1/src/mo-tools/cmdline.h:90:5:  [4] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused).
    strcat (dest, b);
data/r-cran-eaf-1.9-1/src/mo-tools/common.h:21:22:  [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.
#define Rprintf(...) printf(__VA_ARGS__)
data/r-cran-eaf-1.9-1/src/mo-tools/common.h:22:66:  [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.
void fatal_error(const char * format,...) __attribute__ ((format(printf, 1, 2))) __noreturn __unused;
data/r-cran-eaf-1.9-1/src/mo-tools/common.h:23:64:  [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.
void errprintf(const char * format,...) __attribute__ ((format(printf, 1, 2)));
data/r-cran-eaf-1.9-1/src/mo-tools/common.h:24:65:  [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.
void warnprintf(const char *format,...)  __attribute__ ((format(printf, 1, 2)));
data/r-cran-eaf-1.9-1/src/mo-tools/common.h:76:35:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
#define DEBUG2_PRINT(...) DEBUG2 (fprintf (stderr,  __VA_ARGS__))
data/r-cran-eaf-1.9-1/src/mo-tools/epsilon.c:261:9:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        fprintf (stderr, (additive_flag) 
data/r-cran-eaf-1.9-1/src/mo-tools/hv.c:60:70:  [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.
static void fatal_error(const char * str,...) __attribute__ ((format(printf, 1, 2))) __noreturn;
data/r-cran-eaf-1.9-1/src/mo-tools/hv.c:66:5:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    vfprintf(stderr, template, ap);
data/r-cran-eaf-1.9-1/src/mo-tools/io.c:100:5:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    vfprintf(stderr, format, ap);
data/r-cran-eaf-1.9-1/src/mo-tools/io.c:118:5:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    vfprintf(stderr, format, ap);
data/r-cran-eaf-1.9-1/src/mo-tools/io.c:130:5:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    vfprintf(stderr, format, ap);
data/r-cran-eaf-1.9-1/src/mo-tools/io.c:139:5:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    fprintf (stream, point_printf_format, vector[0]);
data/r-cran-eaf-1.9-1/src/mo-tools/io.c:141:9:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        fprintf (stream, point_printf_sep "" point_printf_format, vector[k]);
data/r-cran-eaf-1.9-1/src/mo-tools/io_priv.h:86:21:  [4] (buffer) fscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
                if (fscanf (instream, objective_t_scanf_format, &number) != 1) {
data/r-cran-eaf-1.9-1/src/eaf/eaf_main.c:248:26:  [3] (buffer) getopt_long:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while (0 < (option = getopt_long(argc, argv, short_options,
data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c:339:23:  [3] (buffer) getopt_long:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while (0 < (opt = getopt_long(argc, argv, "hVvqpo:",
data/r-cran-eaf-1.9-1/src/mo-tools/epsilon.c:203:23:  [3] (buffer) getopt_long:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while (0 < (opt = getopt_long(argc, argv, "hVvqamr:us:o:",
data/r-cran-eaf-1.9-1/src/mo-tools/igd.c:289:23:  [3] (buffer) getopt_long:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while (0 < (opt = getopt_long(argc, argv, "hVvqamr:us:o:",
data/r-cran-eaf-1.9-1/src/mo-tools/ndsort.c:154:23:  [3] (buffer) getopt_long:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while (0 < (opt = getopt_long(argc, argv, "hVvqkro:",
data/r-cran-eaf-1.9-1/src/mo-tools/nondominated.c:644:23:  [3] (buffer) getopt_long:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    while (0 < (opt = getopt_long (argc, argv, "hVvqfo:a:n:u:l:Us:b",
data/r-cran-eaf-1.9-1/src/eaf/eaf.c:293:17:  [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 (save_attained, attained, nruns * sizeof(*attained));
data/r-cran-eaf-1.9-1/src/eaf/eaf_main.c:353:22:  [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).
        coord_file = fopen (coord_filename, "w");
data/r-cran-eaf-1.9-1/src/eaf/eaf_main.c:369:22:  [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).
        indic_file = fopen (indic_filename, "w");
data/r-cran-eaf-1.9-1/src/eaf/eaf_main.c:387:21:  [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).
        diff_file = fopen (diff_filename, "w");
data/r-cran-eaf-1.9-1/src/eaf/io.c:62: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 newline[2];
data/r-cran-eaf-1.9-1/src/eaf/io.c:69: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 newline[2];
data/r-cran-eaf-1.9-1/src/eaf/io_priv.h:30:36:  [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).
    } else if (NULL == (instream = fopen (filename,"rb"))) {
data/r-cran-eaf-1.9-1/src/eaf/io_priv.h:87:21:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
                    char buffer[64];
data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c:105: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 buffer[32];
data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c:414:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
        char buffer[32];
data/r-cran-eaf-1.9-1/src/mo-tools/epsilon.c:117: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).
        outfile = fopen (outfilename, "w");
data/r-cran-eaf-1.9-1/src/mo-tools/hv_contrib.c:27:9:  [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 (tmp, points + i * dim, sizeof(double) * dim);
data/r-cran-eaf-1.9-1/src/mo-tools/hv_contrib.c:28:9:  [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 (points + i * dim, ref, sizeof(double) * dim);
data/r-cran-eaf-1.9-1/src/mo-tools/hv_contrib.c:32:9:  [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 (points + i * dim, tmp, sizeof(double) * dim);
data/r-cran-eaf-1.9-1/src/mo-tools/igd.c:140: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).
        outfile = fopen (outfilename, "w");
data/r-cran-eaf-1.9-1/src/mo-tools/igd.c:294:28:  [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).
              exponent_p = atoi(optarg);
data/r-cran-eaf-1.9-1/src/mo-tools/igd.c:298:22:  [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).
              norm = atoi(optarg);
data/r-cran-eaf-1.9-1/src/mo-tools/io.c:62: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 newline[2];
data/r-cran-eaf-1.9-1/src/mo-tools/io.c:69: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 newline[2];
data/r-cran-eaf-1.9-1/src/mo-tools/io_priv.h:30:36:  [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).
    } else if (NULL == (instream = fopen (filename,"rb"))) {
data/r-cran-eaf-1.9-1/src/mo-tools/io_priv.h:87:21:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
                    char buffer[64];
data/r-cran-eaf-1.9-1/src/mo-tools/ndsort.c:266:17:  [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 (data + data_size * dim, src, sizeof(double) * dim);
data/r-cran-eaf-1.9-1/src/mo-tools/nondominated.c:301:17:  [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 (&points[n * dim], &points[n2 * dim], 
data/r-cran-eaf-1.9-1/src/mo-tools/nondominated.c:526:9:  [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 (log_lbound, lbound, sizeof(double) * dim);
data/r-cran-eaf-1.9-1/src/mo-tools/nondominated.c:527:9:  [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 (log_ubound, ubound, sizeof(double) * dim);
data/r-cran-eaf-1.9-1/src/mo-tools/nondominated.c:568: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).
            outfile = fopen (outfilename, "w");
data/r-cran-eaf-1.9-1/src/mo-tools/nondominated.h:171:9:  [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(&pareto_set[dim * k], &points[dim * n], sizeof(points[0]) * dim);
data/r-cran-eaf-1.9-1/src/eaf/avl.h:81:24:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    struct avl_node_t *equal;
data/r-cran-eaf-1.9-1/src/eaf/eaf3d.c:197:21:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    node = avlnode->equal;
data/r-cran-eaf-1.9-1/src/eaf/eaf3d.c:201:22:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
        node = node->equal;
data/r-cran-eaf-1.9-1/src/eaf/io.h:59:15:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    int len = strlen (str);
data/r-cran-eaf-1.9-1/src/eaf/io.h:106:15:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    int len = strlen (str);
data/r-cran-eaf-1.9-1/src/mo-tools/cmdline.h:86:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    int dest_len = strlen(a) + strlen(b) + 1;
data/r-cran-eaf-1.9-1/src/mo-tools/cmdline.h:86:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    int dest_len = strlen(a) + strlen(b) + 1;
data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c:109:57:  [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).
        max_filename_len = MAX (max_filename_len, (int) strlen (filenames[k]));
data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c:117:48:  [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).
    max_col_len = MAX (max_filename_len, (int) strlen(buffer));
data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c:141:47:  [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).
        max_col_len = MAX (max_col_len, (int) strlen("100.0"));
data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c:418:37:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        p = malloc (sizeof(char) * (strlen(buffer) + 1));
data/r-cran-eaf-1.9-1/src/mo-tools/dominatedsets.c:419:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy (p, buffer, 32);
data/r-cran-eaf-1.9-1/src/mo-tools/io.h:59:15:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    int len = strlen (str);
data/r-cran-eaf-1.9-1/src/mo-tools/io.h:106:15:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    int len = strlen (str);

ANALYSIS SUMMARY:

Hits = 84
Lines analyzed = 9731 in approximately 0.31 seconds (31313 lines/second)
Physical Source Lines of Code (SLOC) = 7098
Hits@level = [0] 224 [1]  14 [2]  27 [3]   6 [4]  37 [5]   0
Hits@level+ = [0+] 308 [1+]  84 [2+]  70 [3+]  43 [4+]  37 [5+]   0
Hits/KSLOC@level+ = [0+] 43.3925 [1+] 11.8343 [2+] 9.86193 [3+] 6.05804 [4+] 5.21274 [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.