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/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_gridmapping.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_gl2ps.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_gridplot.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_color.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_scale.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_parametricsurface.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_label.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_axis.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_mousekeyboard.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_enrichment_std.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_lighting.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_movements.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_types.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_drawable.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_plot.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_coordsys.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_autoscaler.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_meshplot.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_colorlegend.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_surfaceplot.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_dataviews.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_function.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_graphplot.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_scale.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_global.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_autoscaler.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_volumeplot.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_colorlegend.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_plot.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_enrichment.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_io_gl2ps.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_portability.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_mapping.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_drawable.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_function.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_helper.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_color.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_enrichment_std.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_coordsys.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_io_reader.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_surfaceplot.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_multiplot.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_gridmapping.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_autoptr.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_types.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_io.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_label.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_parametricsurface.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_axis.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/include/qwt3d_openglhelper.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/axes/src/axesmainwindow.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/axes/src/axes.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/axes/src/main.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/axes/src/axesmainwindow.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/autoswitch/autoswitch.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/autoswitch/autoswitch.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/enrichments/src/enrichmentmainwindow.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/enrichments/src/enrichments.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/enrichments/src/enrichments.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/enrichments/src/main.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/enrichments/src/enrichmentmainwindow.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/simpleplot/simpleplot.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/colormapreader.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/designerworkaround.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/mesh.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/femreader.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/lightingdlgbaseimpl.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/lightingdlg.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/main.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/lightingdlgbaseimpl.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/designerworkaround.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/colormapreader.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/functions.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/lightingdlg.h
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/mesh2mainwindow.cpp
Examining data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/mesh2mainwindow.h

FINAL RESULTS:

data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:308: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, fmt, args); 
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:448:11:  [4] (format) vsprintf:
  Potential format string problem (CWE-134). Make format string constant.
    ret = vsprintf(buf, fmt, args);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:458:11:  [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.
    ret = vfprintf(gl2ps->stream, fmt, args);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:894:3:  [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(prim->data.text->str, str); 
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:896:3:  [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(prim->data.text->fontname, fontname);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:911:3:  [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(text->str, t->str); 
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:913:3:  [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(text->fontname, t->fontname);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:3218:16:  [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).
    if(i <= 0) strcpy(name, gl2ps->filename);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5671: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(gl2ps->title, title);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5680: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(gl2ps->producer, producer);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5689: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(gl2ps->filename, filename);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:445:10:  [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.
  static char buf[1000];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:452: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(gl2ps->compress->start+oldsize, buf, ret);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:469: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 tmp[10] = {'\x1f', '\x8b', /* magic numbers: 0x1f, 0x8b */
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:489: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 tmp[8];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:583: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(&list->array[(list->n - 1) * list->size], data, list->size);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:638: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(data, &list->array[index * list->size], list->size);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:641:45:  [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.
static void gl2psEncodeBase64Block(unsigned char in[3], unsigned char out[4], int len)
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:641:66:  [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.
static void gl2psEncodeBase64Block(unsigned char in[3], unsigned char out[4], int len)
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:654:12:  [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 *buffer, in[3], out[4];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:659: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(buffer, list->array, n * sizeof(unsigned char));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:783: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(image->pixels, im->pixels, size);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:1041: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(prim->verts, p->verts, p->numverts * sizeof(GL2PSvertex));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:2165: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(prim->verts, verts, numverts * sizeof(GL2PSvertex));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:2378: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(&(((char*)(node->image->pixels))[i + v]), &(current[2]), sizeoffloat);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:2380: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(&(((char*)(node->image->pixels))[i + v]), &(current[2]), vtot - i);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:2912: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 tmp[16];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:3206: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 name[256];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:3221: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(name, "untitled");
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:4835:52:  [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.
static void gl2psSVGGetColorString(GL2PSrgba rgba, char str[32])
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:4843:3:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
  sprintf(str, "#%2.2x%2.2x%2.2x", rc, gc, bc);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:4849: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 col[32];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:4903: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 col[32];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5030: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 col[32];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5125: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 col[32];
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5534:41:  [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.
GL2PSDLL_API GLint gl2psBeginPage(const char *title, const char *producer, 
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5534:60:  [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.
GL2PSDLL_API GLint gl2psBeginPage(const char *title, const char *producer, 
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5651: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(gl2ps->colormap, colormap, gl2ps->colorsize * sizeof(GL2PSrgba));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5828: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(prim->data.image->pixels, pixels, size * sizeof(GLfloat));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5835: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(prim->data.image->pixels, pixels, size * sizeof(GLfloat));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.h:164:41:  [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.
GL2PSDLL_API GLint gl2psBeginPage(const char *title, const char *producer, 
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.h:164:60:  [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.
GL2PSDLL_API GLint gl2psBeginPage(const char *title, const char *producer, 
data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/colormapreader.cpp:34:9:  [2] (misc) open:
  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 ( open(path) )
data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/colormapreader.cpp:39:23:  [2] (misc) open:
  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).
bool ColorMapPreview::open(QString fname)
data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/colormapreader.h:22:7:  [2] (misc) open:
  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).
	bool open(QString);
data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/mesh2mainwindow.cpp:105:28:  [2] (misc) open:
  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).
	connectA( openFile, SLOT( open() ) );
data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/mesh2mainwindow.cpp:223:23:  [2] (misc) open:
  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).
void Mesh2MainWindow::open()
data/qwtplot3d-0.2.7+svn191+gcc7/examples/mesh2/src/mesh2mainwindow.h:55:7:  [2] (misc) open:
  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).
	void open();
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_gl2ps.cpp:208: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).
	FILE *fp = fopen(QWT3DLOCAL8BIT(fname), "wb");	
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_gl2ps.cpp:236: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).
    fp = fopen(QWT3DLOCAL8BIT(fn), "wb");	
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp:19:8:  [2] (misc) open:
  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* open(QString fname)
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp:21:16:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
		FILE* file = fopen(QWT3DLOCAL8BIT(fname), "r");
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp:52:12:  [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.
    static char buf[71];
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp:80:27:  [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).
    xmesh = (unsigned int)atoi(p);
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp:84:27:  [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).
    ymesh = (unsigned int)atoi (p);
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp:168:9:  [2] (misc) open:
  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 = open(fname);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:893:46:  [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).
  prim->data.text->str = (char*)gl2psMalloc((strlen(str)+1)*sizeof(char));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:895:51:  [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).
  prim->data.text->fontname = (char*)gl2psMalloc((strlen(fontname)+1)*sizeof(char));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:910: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).
  text->str = (char*)gl2psMalloc((strlen(t->str)+1)*sizeof(char));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:912:40:  [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).
  text->fontname = (char*)gl2psMalloc((strlen(t->fontname)+1)*sizeof(char));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:3210:25:  [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(gl2ps->filename && strlen(gl2ps->filename) < 256){
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:3211: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).
    for(i = strlen(gl2ps->filename)-1; i >= 0; i--){
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:3213:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy(name, gl2ps->filename, i);
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:4422:7:  [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).
    ? strlen("/TrSh sh\n") + (int)log10((double)childobj)+1
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:4423:7:  [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).
    : strlen("/TrSh0 sh\n"); 
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5670:40:  [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).
    gl2ps->title = (char*)gl2psMalloc((strlen(title)+1)*sizeof(char));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5679:43:  [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).
    gl2ps->producer = (char*)gl2psMalloc((strlen(producer)+1)*sizeof(char));
data/qwtplot3d-0.2.7+svn191+gcc7/3rdparty/gl2ps/gl2ps.c:5688:43:  [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).
    gl2ps->filename = (char*)gl2psMalloc((strlen(filename)+1)*sizeof(char));
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp:33:14:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if ((c = fgetc (fp)) == EOF)
data/qwtplot3d-0.2.7+svn191+gcc7/src/qwt3d_io_reader.cpp:41:15:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
					if ((c = fgetc (fp)) == EOF)

ANALYSIS SUMMARY:

Hits = 70
Lines analyzed = 18420 in approximately 0.44 seconds (41961 lines/second)
Physical Source Lines of Code (SLOC) = 13992
Hits@level = [0] 103 [1]  14 [2]  45 [3]   0 [4]  11 [5]   0
Hits@level+ = [0+] 173 [1+]  70 [2+]  56 [3+]  11 [4+]  11 [5+]   0
Hits/KSLOC@level+ = [0+] 12.3642 [1+] 5.00286 [2+] 4.00229 [3+] 0.786164 [4+] 0.786164 [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.