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-geometry-0.4.5/src/Rtsearch.cpp
Examining data/r-cran-geometry-0.4.5/src/random_r.c
Examining data/r-cran-geometry-0.4.5/src/libqhull_r.h
Examining data/r-cran-geometry-0.4.5/src/global_r.c
Examining data/r-cran-geometry-0.4.5/src/Rconvhulln.c
Examining data/r-cran-geometry-0.4.5/src/Rtsearchn.c
Examining data/r-cran-geometry-0.4.5/src/libqhull_r.c
Examining data/r-cran-geometry-0.4.5/src/geom_r.c
Examining data/r-cran-geometry-0.4.5/src/userprintf_r.c
Examining data/r-cran-geometry-0.4.5/src/Rinhulln.c
Examining data/r-cran-geometry-0.4.5/src/geometry_init.c
Examining data/r-cran-geometry-0.4.5/src/qhull_ra.h
Examining data/r-cran-geometry-0.4.5/src/merge_r.c
Examining data/r-cran-geometry-0.4.5/src/stat_r.c
Examining data/r-cran-geometry-0.4.5/src/random_r.h
Examining data/r-cran-geometry-0.4.5/src/user_r.h
Examining data/r-cran-geometry-0.4.5/src/qset_r.c
Examining data/r-cran-geometry-0.4.5/src/mem_r.c
Examining data/r-cran-geometry-0.4.5/src/geom2_r.c
Examining data/r-cran-geometry-0.4.5/src/userprintf_rbox_r.c
Examining data/r-cran-geometry-0.4.5/src/Rgeometry.h
Examining data/r-cran-geometry-0.4.5/src/Rhalfspacen.c
Examining data/r-cran-geometry-0.4.5/src/Rgeometry.c
Examining data/r-cran-geometry-0.4.5/src/Rdelaunayn.c
Examining data/r-cran-geometry-0.4.5/src/rboxlib_r.c
Examining data/r-cran-geometry-0.4.5/src/Rtsearch_orig.c
Examining data/r-cran-geometry-0.4.5/src/poly_r.h
Examining data/r-cran-geometry-0.4.5/src/poly_r.c
Examining data/r-cran-geometry-0.4.5/src/stat_r.h
Examining data/r-cran-geometry-0.4.5/src/geom_r.h
Examining data/r-cran-geometry-0.4.5/src/user_r.c
Examining data/r-cran-geometry-0.4.5/src/io_r.h
Examining data/r-cran-geometry-0.4.5/src/QuadTree.cpp
Examining data/r-cran-geometry-0.4.5/src/usermem_r.c
Examining data/r-cran-geometry-0.4.5/src/io_r.c
Examining data/r-cran-geometry-0.4.5/src/merge_r.h
Examining data/r-cran-geometry-0.4.5/src/QuadTree.h
Examining data/r-cran-geometry-0.4.5/src/RcppExports.cpp
Examining data/r-cran-geometry-0.4.5/src/poly2_r.c
Examining data/r-cran-geometry-0.4.5/src/mem_r.h
Examining data/r-cran-geometry-0.4.5/src/qset_r.h

FINAL RESULTS:

data/r-cran-geometry-0.4.5/src/Rgeometry.c:68:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(flags, "%s %s", cmd, CHAR(STRING_ELT(options,0)));
data/r-cran-geometry-0.4.5/src/global_r.c:2070:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(buf, "  %s", option);
data/r-cran-geometry-0.4.5/src/random_r.c:54:9:  [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(command, s);
data/r-cran-geometry-0.4.5/src/random_r.c:86:7:  [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(command, s);
data/r-cran-geometry-0.4.5/src/rboxlib_r.c:361:7:  [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(t+1, t+3); /* remove " t " */
data/r-cran-geometry-0.4.5/src/userprintf_r.c:75:7:  [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(fp, fmt, args);
data/r-cran-geometry-0.4.5/src/userprintf_rbox_r.c:50: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(fp, fmt, args);
data/r-cran-geometry-0.4.5/src/user_r.h:279:22:  [3] (random) random:
  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 qh_RANDOMint random()
data/r-cran-geometry-0.4.5/src/user_r.h:280:34:  [3] (random) srandom:
  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 qh_RANDOMseed_(qh, seed) srandom(seed);
data/r-cran-geometry-0.4.5/src/user_r.h:289:34:  [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.
#define qh_RANDOMseed_(qh, seed) srand((unsigned)seed);
data/r-cran-geometry-0.4.5/src/user_r.h:294:34:  [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.
#define qh_RANDOMseed_(qh, seed) srand((unsigned)seed);
data/r-cran-geometry-0.4.5/src/user_r.h:298:22:  [3] (random) lrand48:
  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 qh_RANDOMint lrand48()
data/r-cran-geometry-0.4.5/src/user_r.h:308:17:  [3] (random) random:
  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.
#error: unknown random option
data/r-cran-geometry-0.4.5/src/Rconvhulln.c:42: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 errstr[ERRSTRSIZE];
data/r-cran-geometry-0.4.5/src/Rconvhulln.c:44: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 cmd[50] = "qhull";
data/r-cran-geometry-0.4.5/src/Rdelaunayn.c:51: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 errstr[ERRSTRSIZE];
data/r-cran-geometry-0.4.5/src/Rdelaunayn.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 cmd[50] = "qhull d Qbb T0";
data/r-cran-geometry-0.4.5/src/Rgeometry.c:38:157:  [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.
int qhullNewQhull(qhT *qh, const SEXP p, char* cmd, const SEXP options, const SEXP tmp_stdout, const SEXP tmp_stderr, unsigned int* pdim, unsigned int* pn, char errstr[ERRSTRSIZE]) {
data/r-cran-geometry-0.4.5/src/Rgeometry.c:42: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 flags[250];             /* option flags for qhull, see qh_opt.htm */
data/r-cran-geometry-0.4.5/src/Rgeometry.c:88: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).
  tmpstdout = fopen(name, "w");
data/r-cran-geometry-0.4.5/src/Rgeometry.c:90:13:  [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).
  errfile = fopen(errname, "w+");
data/r-cran-geometry-0.4.5/src/Rgeometry.c:96: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 buf[200];
data/r-cran-geometry-0.4.5/src/Rgeometry.h:26:157:  [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.
int qhullNewQhull(qhT *qh, const SEXP p, char* cmd, const SEXP options, const SEXP tmp_stdout, const SEXP tmp_stderr, unsigned int* pdim, unsigned int* pn, char errstr[1000]);
data/r-cran-geometry-0.4.5/src/Rhalfspacen.c:29: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 errstr[ERRSTRSIZE];
data/r-cran-geometry-0.4.5/src/Rhalfspacen.c:31: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 cmd[50] = "qhull H";
data/r-cran-geometry-0.4.5/src/geom2_r.c:40:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy((char *)newpoints, (char *)points, (size_t)size); /* newpoints!=0 by QH6004 */
data/r-cran-geometry-0.4.5/src/global_r.c:1298:13:  [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[qh_FILENAMElen];
data/r-cran-geometry-0.4.5/src/global_r.c:1318:15:  [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[qh_FILENAMElen];
data/r-cran-geometry-0.4.5/src/global_r.c:1870:3:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
  strcat(qh->qhull, "qhull");
data/r-cran-geometry-0.4.5/src/global_r.c:2067: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 buf[200];
data/r-cran-geometry-0.4.5/src/global_r.c:2072:5:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
    sprintf(buf+strlen(buf), " %d", *i);
data/r-cran-geometry-0.4.5/src/global_r.c:2074:5:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
    sprintf(buf+strlen(buf), " %2.2g", *r);
data/r-cran-geometry-0.4.5/src/io_r.c:3595: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 *t, firstline[qh_MAXfirst+1];
data/r-cran-geometry-0.4.5/src/libqhull_r.h:565: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  qhull_command[256];/* command line that invoked this program */
data/r-cran-geometry-0.4.5/src/libqhull_r.h:567: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  rbox_command[256]; /* command line that produced the input points */
data/r-cran-geometry-0.4.5/src/libqhull_r.h:568: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  qhull_options[512];/* descriptive list of options */
data/r-cran-geometry-0.4.5/src/libqhull_r.h:622: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 qhull[sizeof("qhull")]; /* "qhull" for checking ownership while debugging */
data/r-cran-geometry-0.4.5/src/libqhull_r.h:624: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 jmpXtra[40];       /* extra bytes in case jmp_buf is defined wrong by compiler */
data/r-cran-geometry-0.4.5/src/libqhull_r.h:626: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 jmpXtra2[40];      /* extra bytes in case jmp_buf is defined wrong by compiler*/
data/r-cran-geometry-0.4.5/src/libqhull_r.h:779: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    jmpXtra3[40];   /* extra bytes in case jmp_buf is defined wrong by compiler */
data/r-cran-geometry-0.4.5/src/poly2_r.c:2988: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((char *)newfacet->normal, facetA->normal, qh->normal_size);
data/r-cran-geometry-0.4.5/src/poly2_r.c:2994: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((char *)newfacet->center, facetA->center, qh->center_size);
data/r-cran-geometry-0.4.5/src/qset_r.c:186: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((char *)&((*setp)->e[size].p), (char *)&(setA->e[0].p), (size_t)(sizeA+1) * SETelemsize);
data/r-cran-geometry-0.4.5/src/qset_r.c:319:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy((char *)&(newset->e[0].p), (char *)&(set->e[0].p), (size_t)(size+1) * SETelemsize);
data/r-cran-geometry-0.4.5/src/qset_r.c:551: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(newElem, elem, (size_t)elemsize);
data/r-cran-geometry-0.4.5/src/qset_r.c:869: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((char *)newp, (char *)oldp, (size_t)(size+1) * SETelemsize);
data/r-cran-geometry-0.4.5/src/qset_r.c:1004: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((char *)newp, (char *)oldp, (size_t)nth * SETelemsize);
data/r-cran-geometry-0.4.5/src/qset_r.c:1032: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((char *)newp, (char *)oldp, (size_t)tailsize * SETelemsize);
data/r-cran-geometry-0.4.5/src/rboxlib_r.c:90: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 command[400], seedbuf[200];
data/r-cran-geometry-0.4.5/src/rboxlib_r.c:357:5:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
    sprintf(seedbuf, " t%d", seed);  /* appends an extra t, not worth removing */
data/r-cran-geometry-0.4.5/src/stat_r.h:488:14:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  unsigned   char id[ZEND+10]; /* id's in print order */
data/r-cran-geometry-0.4.5/src/stat_r.h:489: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.
  const char *doc[ZEND];       /* array of documentation strings */
data/r-cran-geometry-0.4.5/src/stat_r.h:491: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       type[ZEND];      /* type, see ztypes above */
data/r-cran-geometry-0.4.5/src/stat_r.h:492: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       printed[ZEND];   /* true, if statistic has been printed */
data/r-cran-geometry-0.4.5/src/Rdelaunayn.c:58:5:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings. Risk is low because the source is a
  constant string.
    strncat(cmd, " Qz", 4);
data/r-cran-geometry-0.4.5/src/Rgeometry.c:99:23:  [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).
        (ERRSTRSIZE - strlen(errstr) - 1) > 0) {
data/r-cran-geometry-0.4.5/src/Rgeometry.c:100:14:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
    errstr = strncat(errstr, buf, ERRSTRSIZE - strlen(errstr) - 1);
data/r-cran-geometry-0.4.5/src/Rgeometry.c:100: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).
    errstr = strncat(errstr, buf, ERRSTRSIZE - strlen(errstr) - 1);
data/r-cran-geometry-0.4.5/src/global_r.c:86:42:  [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 (*hiddenflags != ' ' || hiddenflags[strlen(hiddenflags)-1] != ' ') {
data/r-cran-geometry-0.4.5/src/global_r.c:144:14:  [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).
      chkerr[strlen(chkerr)-1]=  '\'';
data/r-cran-geometry-0.4.5/src/global_r.c:208:35:  [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).
      qh->qhull_commandsiz2= (int)strlen(qh->qhull_command); /* WARN64 */
data/r-cran-geometry-0.4.5/src/global_r.c:213: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).
    qh->qhull_optionsiz2= (int)strlen(qh->qhull_options);  /* WARN64 */
data/r-cran-geometry-0.4.5/src/global_r.c:601:7:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
      strncat(qh->qhull_command, command, sizeof(qh->qhull_command)-strlen(qh->qhull_command)-1);
data/r-cran-geometry-0.4.5/src/global_r.c:601:69:  [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).
      strncat(qh->qhull_command, command, sizeof(qh->qhull_command)-strlen(qh->qhull_command)-1);
data/r-cran-geometry-0.4.5/src/global_r.c:714:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy(qh->feasible_string, start, (size_t)(t-start));
data/r-cran-geometry-0.4.5/src/global_r.c:2072:17:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    sprintf(buf+strlen(buf), " %d", *i);
data/r-cran-geometry-0.4.5/src/global_r.c:2074:17:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    sprintf(buf+strlen(buf), " %2.2g", *r);
data/r-cran-geometry-0.4.5/src/global_r.c:2075:13:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  len= (int)strlen(buf);  /* WARN64 */
data/r-cran-geometry-0.4.5/src/global_r.c:2081:5:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings. Risk is low because the source is a
  constant character.
    strncat(qh->qhull_options, "\n", (size_t)(maxlen--));
data/r-cran-geometry-0.4.5/src/global_r.c:2083:3:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
  strncat(qh->qhull_options, buf, (size_t)maxlen);
data/r-cran-geometry-0.4.5/src/io_r.c:200:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(filename, source, length);
data/r-cran-geometry-0.4.5/src/io_r.c:3698:9:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
        strncat(qh->rbox_command, s, sizeof(qh->rbox_command)-1);
data/r-cran-geometry-0.4.5/src/io_r.c:3716:11:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
          strncat(qh->rbox_command, s, sizeof(qh->rbox_command)-1);
data/r-cran-geometry-0.4.5/src/io_r.c:3828:10:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
         strncat(qh->rbox_command, s, sizeof(qh->rbox_command)-1);
data/r-cran-geometry-0.4.5/src/io_r.c:3932:22:  [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).
    qh->rbox_command[strlen(qh->rbox_command)-1]= '\0';
data/r-cran-geometry-0.4.5/src/libqhull_r.c:318:33:  [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).
      qh->qhull_optionsiz= (int)strlen(qh->qhull_options);   /* WARN64 */
data/r-cran-geometry-0.4.5/src/random_r.c:53:14:  [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 ((int)strlen(s) < max_size)   /* WARN64 */
data/r-cran-geometry-0.4.5/src/random_r.c:63: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).
    remaining= max_size - (int)strlen(command) - (int)strlen(s) - 2;   /* WARN64 */
data/r-cran-geometry-0.4.5/src/random_r.c:63:55:  [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).
    remaining= max_size - (int)strlen(command) - (int)strlen(s) - 2;   /* WARN64 */
data/r-cran-geometry-0.4.5/src/random_r.c:65:26:  [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).
      char *t= command + strlen(command);
data/r-cran-geometry-0.4.5/src/random_r.c:85:7:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
      strcat(command, " ");
data/r-cran-geometry-0.4.5/src/random_r.c:112:21:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      count += (int)strlen(argv[i]) + 1;   /* WARN64 */
data/r-cran-geometry-0.4.5/src/rboxlib_r.c:104:3:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
  strncat(command, rbox_command, sizeof(command)-sizeof(seedbuf)-strlen(command)-1);
data/r-cran-geometry-0.4.5/src/rboxlib_r.c:104:66:  [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).
  strncat(command, rbox_command, sizeof(command)-sizeof(seedbuf)-strlen(command)-1);
data/r-cran-geometry-0.4.5/src/rboxlib_r.c:358:5:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
    strncat(command, seedbuf, sizeof(command)-strlen(command)-1);
data/r-cran-geometry-0.4.5/src/rboxlib_r.c:358: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).
    strncat(command, seedbuf, sizeof(command)-strlen(command)-1);

ANALYSIS SUMMARY:

Hits = 86
Lines analyzed = 29284 in approximately 0.91 seconds (32213 lines/second)
Physical Source Lines of Code (SLOC) = 17887
Hits@level = [0]   3 [1]  32 [2]  41 [3]   6 [4]   7 [5]   0
Hits@level+ = [0+]  89 [1+]  86 [2+]  54 [3+]  13 [4+]   7 [5+]   0
Hits/KSLOC@level+ = [0+] 4.97568 [1+] 4.80796 [2+] 3.01895 [3+] 0.726785 [4+] 0.391346 [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.