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/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_vpath.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_pathcode.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_affine_private.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta_rect.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_gray_svp.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_vpath.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath_bpath.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/libart.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta_ops.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_svp.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rect_svp.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_rgba_affine.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_wind.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta_rect.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_intersect.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_misc.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rect_uta.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_misc.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_ops.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath_dash.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_ops.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta_vpath.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_pixbuf.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/config.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_bitmap_affine.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta_vpath.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta_svp.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_render_aa.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_pixbuf_affine.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/gen_art_config.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_pixbuf.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_point.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgba.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rect.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/testart.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rect.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath_bpath.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath_dash.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgba.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_affine.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rect_svp.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath_svp.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_vpath_stroke.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_bpath.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_filterlevel.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_config.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_svp.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_pixbuf_affine.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/testuta.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta_ops.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_affine.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_mask.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/acconfig.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_vpath_stroke.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_point.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_point.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath_svp.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_intersect.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_a_affine.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_a_affine.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_uta_svp.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_affine_private.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_alphagamma.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/test_gradient.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_wind.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_svp.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_rgba_affine.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_alphagamma.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/libart-features.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_bpath.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_mask.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_gray_svp.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rgb_bitmap_affine.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_render_aa.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_rect_uta.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_svp.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-region.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-dict.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-value.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-dict.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-misc.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-namecontext.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-namecontext.h
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-region.c
Examining data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.h
Examining data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hnjalloc.h
Examining data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.h
Examining data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c
Examining data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c
Examining data/python-reportlab-3.5.55/src/rl_addons/rl_accel/pyHnjmodule.c
Examining data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hnjalloc.c

FINAL RESULTS:

data/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c:1488:4:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
			strcpy(name,ft_f->family_name);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c:1491: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(name,ft_f->style_name);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:310:21:  [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(gfi->afmVersion, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:318:21:  [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(gfi->fontName, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:324:21:  [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(gfi->encodingScheme, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:329:21:  [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(gfi->fullName, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:334:21:  [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(gfi->familyName, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:339:21:  [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(gfi->weight, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:364:21:  [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(gfi->version, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:369:21:  [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(gfi->notice, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:661:17:  [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(temp->name, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:683:17:  [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((*tail)->succ, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:686:17:  [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((*tail)->lig, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:873:25:  [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(fi->pkd[pos].name1, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:877:25:  [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(fi->pkd[pos].name2, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:896:25:  [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(fi->pkd[pos].name1, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:900:25:  [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(fi->pkd[pos].name2, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1007:25:  [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(fi->ccd[pos].ccName, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1027:25:  [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(fi->ccd[pos].pieces[j].pccName, keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:237:8:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
	      sprintf (str, "%s rotate", tmp);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_misc.c:43:3:  [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, ap);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_misc.c:60:3:  [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, ap);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_misc.c:76:3:  [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, ap);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_misc.c:78:3:  [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 (stdout, fmt, ap);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:336:3:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
		sprintf(s,_fp_fmts[l], d);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:387:4:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
			strcpy(pB,pD);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/testuta.c:158:5:  [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 (atoi (argv[1]));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c:901:2:  [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(orig, self->ctm, sizeof(A2DMX));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c:964:2:  [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(self->ctm, orig, sizeof(A2DMX));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c:1773: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(pfb=gt1_alloc(size),pystr,size);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-namecontext.c:47:37:  [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.
  for (i = 0; (c = ((const unsigned char *)string)[i]) != '\0'; i++)
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-namecontext.c:61:48:  [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.
    result += (result << 3) + ((const unsigned char *)string)[i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-namecontext.c:102: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 (new, s, len);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-namecontext.c:125: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 (new, s, size);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:52: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.
	const char hextab[16] = "0123456789abcdef";
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:77: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 (flat + flat_size, in + in_idx, length);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:155:2:  [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 (tc->source, input, length + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:171:2:  [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 (tc->source, input->start, length + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:384:2:  [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 (buf, tc->source + tc->index, buf_size);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2543:22:  [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.
			byte = ((unsigned char *)exe_stack[exe_stack_ptr].start)[i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2548:22:  [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.
		byte1 = ((unsigned char *)exe_stack[exe_stack_ptr].start)[++i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2553:22:  [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.
		byte1 = ((unsigned char *)exe_stack[exe_stack_ptr].start)[++i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2558:22:  [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.
		byte1 = ((unsigned char *)exe_stack[exe_stack_ptr].start)[++i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2559:22:  [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.
		byte2 = ((unsigned char *)exe_stack[exe_stack_ptr].start)[++i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2560:22:  [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.
		byte3 = ((unsigned char *)exe_stack[exe_stack_ptr].start)[++i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2561:22:  [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.
		byte4 = ((unsigned char *)exe_stack[exe_stack_ptr].start)[++i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2567:22:  [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.
		byte1 = ((unsigned char *)exe_stack[exe_stack_ptr].start)[++i];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2843:2:  [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 (new_fn, filename, i);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2844:2:  [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 (new_fn + i, ext, size_ext);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2916: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).
	afm_f = fopen(afm_filename, "rb");
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:3036:7:  [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).
		f = fopen(filename, "rb");
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:3059:19:  [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.
			if (((unsigned char *)pfb)[0] == 128) flat = pfb_to_flat (pfb, pfb_size);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:3062: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 (flat, pfb, pfb_size);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:3213:19:  [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.
			if (((unsigned char *)pfb)[0] == 128)
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:3218: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 (flat, pfb, pfb_size);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-region.c:89: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 (new, p, old_size);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:355:43:  [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).
	                gfi->underlinePosition = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:359:47:  [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).
                    gfi->underlineThickness = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:373:41:  [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).
                    gfi->fontBBox.llx = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:375:41:  [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).
                    gfi->fontBBox.lly = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:377:41:  [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).
                    gfi->fontBBox.urx = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:379:41:  [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).
                    gfi->fontBBox.ury = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:383:38:  [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).
                    gfi->capHeight = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:387:36:  [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).
                    gfi->xHeight = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:391:38:  [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).
                    gfi->descender = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:395:37:  [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).
                    gfi->ascender = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:457:24:  [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).
                code = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:460:25:  [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).
                width = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:559: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).
                    pos = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:569:36:  [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).
                        cwi[pos] = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:642:34:  [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).
                    temp->code = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:652: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).
                temp->wx = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:653: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).
                temp->wy = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:656: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).
                temp->wx = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:664:38:  [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).
                temp->charBBox.llx = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:665:38:  [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).
                temp->charBBox.lly = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:666:38:  [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).
                temp->charBBox.urx = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:667:38:  [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).
                temp->charBBox.ury = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:769:47:  [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).
                        fi->tkd[pos].degree = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:879:45:  [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).
                        fi->pkd[pos].xamt = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:881:47:  [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).
                        fi->pkd[pos++].yamt = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:902:47:  [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).
                        fi->pkd[pos++].xamt = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1009:52:  [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).
                        fi->ccd[pos].numOfPieces = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1029:57:  [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).
                        fi->ccd[pos].pieces[j].deltax = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1031:59:  [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).
                        fi->ccd[pos].pieces[j++].deltay = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1124:29:  [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).
        (*fi)->numOfChars = atoi(token(fp));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1176:42:  [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).
                    (*fi)->numOfTracks = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1191:41:  [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).
                    (*fi)->numOfPairs = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1206:41:  [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).
                    (*fi)->numOfComps = atoi(keyword);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:111:11:  [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.
art_ftoa (char str[80], double x)
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:131:11:  [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.
      i = sprintf (p, "%06d", (int)floor ((x + EPSILON / 2) * 1e6));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:140:11:  [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.
      i = sprintf (p, "%d", (int)floor (x + EPSILON / 2));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:160:4:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
	  sprintf (p, "%06d", ix);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:170:10:  [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.
    p += sprintf (p, "%g", x);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:191:23:  [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.
art_affine_to_string (char str[128], const double src[6])
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:193: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[80];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:222:8:  [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 (str + ix, " scale");
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:252:4:  [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 (str + ix, " translate");
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:265:3:  [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 (str + ix, "] concat");
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.h:47:23:  [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.
art_affine_to_string (char str[128], const double src[6]);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_pixbuf.c:276: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 (result->pixels, pixbuf->pixels, size);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.c:255:2:  [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_stops, gradient->stops, sizeof (ArtGradientStop));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.c:260: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 (tmp_stops, gradient->stops, sizeof (ArtGradientStop) * n_stops);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.c:264:2:  [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_stops, &gradient->stops[n_stops-1], sizeof (ArtGradientStop));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.c:286: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 (stops, tmp_stops, sizeof (ArtGradientStop) * n_stops);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.c:291: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 (stops[n_stops * 2 - 1 - i].color, stops[i].color, sizeof (stops[i].color));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.c:606: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_source->gradient.stops, gradient->stops, sizeof (ArtGradientStop) * gradient->n_stops);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_gradient.c:710: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_source->gradient.stops, gradient->stops, sizeof (ArtGradientStop) * gradient->n_stops);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_render_mask.c:79:2:  [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 (dst_line, src_line, z_width);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_svp_wind.c:1475: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 (new_points, points, n_points * sizeof (ArtPoint));
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath.c:207: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).
  int open;
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_vpath.c:230:12:  [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 && (i + 1 == size || src[i + 1].code != ART_LINETO))
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/test_gradient.c:265: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[G_ASCII_DTOSTR_BUF_SIZE];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/testart.c:49: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 str[128];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/testuta.c:158:12:  [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).
    srand (atoi (argv[1]));
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:243: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(q,"!!!!!",5);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:313: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.
	static	char s[30];
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:410:2:  [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[4];
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:416:4:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
			sprintf(buf,"%03o",c);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:525:2:  [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[20];
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:527:2:  [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,"0X%8.8lX",x);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:62: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 (new, s, l);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:235: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[80];
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:236: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 word[80];
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:237: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 pattern[80];
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:244:7:  [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).
  f = fopen (fn, "r");
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:380: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 prep_word_buf[MAX_WORD];
data/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c:1486:24:  [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 *name = malloc(strlen(ft_f->family_name)+strlen(ft_f->style_name)+2);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c:1486:50:  [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 *name = malloc(strlen(ft_f->family_name)+strlen(ft_f->style_name)+2);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/_renderPM.c:1490:5:  [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(name," ");
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-namecontext.c:100:9:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  len = strlen (s);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:153:11:  [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).
	length = strlen (input);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2835:12:  [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).
	size_fn = strlen (filename);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/gt1-parset1.c:2836: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).
	size_ext = strlen (ext);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:166:18:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    while ((ch = fgetc(stream)) == ' ' || ch == lineterm ||
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:176:14:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        ch = fgetc(stream);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:200:18:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    while ((ch = fgetc(stream)) == ' ' || ch == '\t' ); 
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:207:14:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        ch = fgetc(stream);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:309: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).
                    gfi->afmVersion = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:317:53:  [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).
                    gfi->fontName = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:323:29:  [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).
                    	malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:328:53:  [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).
                    gfi->fullName = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:333: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).
                    gfi->familyName = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:338: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).
                    gfi->weight = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:363:52:  [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).
                    gfi->version = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:368: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).
                    gfi->notice = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:660: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).
                temp->name = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:682:49:  [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).
                (*tail)->succ = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:685: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).
                (*tail)->lig = (char *) malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:872:36:  [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).
                            malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:876:36:  [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).
                            malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:895:36:  [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).
                            malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:899:36:  [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).
                            malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1006:36:  [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).
                            malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/gt1/parseAFM.c:1026: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).
                                malloc(strlen(keyword) + 1);
data/python-reportlab-3.5.55/src/rl_addons/renderPM/libart_lgpl/art_affine.c:119:7:  [1] (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 character.
      strcpy (str, "0");
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:338: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).
			l = (int)strlen(s)-1;
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/_rl_accel.c:388: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).
			pB = pB + strlen(pB);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:60: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).
  l = strlen (s);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:420:24:  [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 (k = 0; k < i - strlen (state_str); k++)
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/hyphen.c:446: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).
	  offset = i + 1 - strlen (match);
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/pyHnjmodule.c:120: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).
  buffer = malloc(sizeof(char) * (strlen(word)+BORDER+1));
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/pyHnjmodule.c:126: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).
  hnj_hyphen_hyphenate(self->hdict, word, strlen(word), buffer);  
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/pyHnjmodule.c:129:8:  [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(word) +  countHyphenIntegers(buffer) + 1));
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/pyHnjmodule.c:172: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).
  buffer = malloc(sizeof(char) * (strlen(word)+border+1));
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/pyHnjmodule.c:178: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).
  hnj_hyphen_hyphenate(self->hdict, word, strlen(word), buffer);  
data/python-reportlab-3.5.55/src/rl_addons/rl_accel/pyHnjmodule.c:179:10:  [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).
  buffer[strlen(word)] = '\0';

ANALYSIS SUMMARY:

Hits = 167
Lines analyzed = 27199 in approximately 0.73 seconds (37111 lines/second)
Physical Source Lines of Code (SLOC) = 19026
Hits@level = [0] 341 [1]  40 [2] 100 [3]   1 [4]  26 [5]   0
Hits@level+ = [0+] 508 [1+] 167 [2+] 127 [3+]  27 [4+]  26 [5+]   0
Hits/KSLOC@level+ = [0+] 26.7003 [1+] 8.77746 [2+] 6.67508 [3+] 1.41911 [4+] 1.36655 [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.