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/abcm2ps-8.14.7/abcm2ps.c Examining data/abcm2ps-8.14.7/abcm2ps.h Examining data/abcm2ps-8.14.7/abcparse.c Examining data/abcm2ps-8.14.7/buffer.c Examining data/abcm2ps-8.14.7/deco.c Examining data/abcm2ps-8.14.7/draw.c Examining data/abcm2ps-8.14.7/format.c Examining data/abcm2ps-8.14.7/front.c Examining data/abcm2ps-8.14.7/glyph.c Examining data/abcm2ps-8.14.7/music.c Examining data/abcm2ps-8.14.7/parse.c Examining data/abcm2ps-8.14.7/subs.c Examining data/abcm2ps-8.14.7/svg.c Examining data/abcm2ps-8.14.7/syms.c FINAL RESULTS: data/abcm2ps-8.14.7/abcm2ps.c:510:11: [5] (race) readlink: This accepts filename arguments; if an attacker can move those files or change the link content, a race condition results. Also, it does not terminate with ASCII NUL. (CWE-362, CWE-20). Reconsider approach. if ((l = readlink("/proc/self/exe", exe, sizeof exe)) <= 0) data/abcm2ps-8.14.7/abcm2ps.c:99:2: [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(p, ext); data/abcm2ps-8.14.7/abcm2ps.c:119: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(&rfn[l], fn); data/abcm2ps-8.14.7/abcm2ps.c:125:2: [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(rfn, fn); data/abcm2ps-8.14.7/abcm2ps.c:134:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(rfn, "%s%s", styd, fn); data/abcm2ps-8.14.7/abcm2ps.c:136:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(rfn, "%s%c%s", styd, DIRSEP, fn); data/abcm2ps-8.14.7/abcm2ps.c:416:2: [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(p, ext); data/abcm2ps-8.14.7/abcm2ps.c:569:2: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. sprintf(tex_buf, /* this buffer is available */ data/abcm2ps-8.14.7/abcm2ps.c:669: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(outfn, aaa); data/abcm2ps-8.14.7/abcm2ps.c:1005:7: [4] (buffer) strcpy: Does not check for buffer overflows when copying to destination [MS-banned] (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy easily misused). strcpy(outfn, aaa); data/abcm2ps-8.14.7/abcm2ps.h:60:9: [4] (format) snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. #define snprintf _snprintf data/abcm2ps-8.14.7/abcm2ps.h:60:18: [4] (format) _snprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. #define snprintf _snprintf data/abcm2ps-8.14.7/abcm2ps.h:755:26: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. __attribute__ ((format (printf, 1, 2))) data/abcm2ps-8.14.7/abcm2ps.h:771:26: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. __attribute__ ((format (printf, 2, 3))) data/abcm2ps-8.14.7/abcm2ps.h:897:26: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. __attribute__ ((format (printf, 2, 3))) data/abcm2ps-8.14.7/abcparse.c:139: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(s->text, text); data/abcm2ps-8.14.7/abcparse.c:459: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(s->u.clef.name, str); data/abcm2ps-8.14.7/abcparse.c:1075: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(s->u.tempo.str1, str); data/abcm2ps-8.14.7/abcparse.c:1150: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(s->u.tempo.str2, str); data/abcm2ps-8.14.7/abcparse.c:1289: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(s->u.voice.id, voice_tb[voice].id); data/abcm2ps-8.14.7/abcparse.c:1328: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(s->u.voice.fname, tex_buf); data/abcm2ps-8.14.7/abcparse.c:1333: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(s->u.voice.nname, tex_buf); data/abcm2ps-8.14.7/abcparse.c:1523: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(s->text, repeat_value); data/abcm2ps-8.14.7/abcparse.c:1731: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(gch, is->text); data/abcm2ps-8.14.7/abcparse.c:1733: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(gch + n + 1, gchord); data/abcm2ps-8.14.7/abcparse.c:1776: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(gch, gchord); data/abcm2ps-8.14.7/buffer.c:51:26: [4] (format) printf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. __attribute__ ((format (printf, 2, 3))) data/abcm2ps-8.14.7/buffer.c:72:2: [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(fnm, outfn); data/abcm2ps-8.14.7/buffer.c:75: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(fnm, svg || epsf > 1 ? "Out.xhtml" : OUTPUTFILE); data/abcm2ps-8.14.7/buffer.c:84: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(&fnm[i], p); data/abcm2ps-8.14.7/buffer.c:87: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(&fnm[i + 1], data/abcm2ps-8.14.7/buffer.c:107:2: [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(outfnam, fnm); data/abcm2ps-8.14.7/buffer.c:124:2: [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(buf, tex_buf); data/abcm2ps-8.14.7/buffer.c:215:11: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. output = fprintf; data/abcm2ps-8.14.7/buffer.c:347:8: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. d += sprintf(d, "%s", p); data/abcm2ps-8.14.7/buffer.c:358:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. d += sprintf(d, "%s", tex_buf); data/abcm2ps-8.14.7/buffer.c:362:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. d += sprintf(d, "%s", in_fname); data/abcm2ps-8.14.7/buffer.c:385:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. d += sprintf(d, "%s", &info[*p - 'A']->text[2]); data/abcm2ps-8.14.7/buffer.c:414:9: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. d += sprintf(d, "%s", tex_buf); data/abcm2ps-8.14.7/buffer.c:417:9: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. d += sprintf(d,"abcm2ps-" VERSION); data/abcm2ps-8.14.7/buffer.c:477: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(tmp, tex_buf); data/abcm2ps-8.14.7/buffer.c:686: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(outfnam, outfn); data/abcm2ps-8.14.7/buffer.c:688: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(outfnam, OUTPUTFILE); data/abcm2ps-8.14.7/buffer.c:710:4: [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(outfnam, epsf == 1 ? ".eps" : ".svg"); data/abcm2ps-8.14.7/buffer.c:757:9: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. mbf += vsnprintf(mbf, outbuf + outbufsz - mbf, fmt, args); data/abcm2ps-8.14.7/buffer.c:934: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(outbuf, p); data/abcm2ps-8.14.7/deco.c:815:2: [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(d->text, s); data/abcm2ps-8.14.7/deco.c:943: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(name2, name); data/abcm2ps-8.14.7/deco.c:1595: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, dd->name); data/abcm2ps-8.14.7/draw.c:951:5: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(meter, "(\\%s)", data/abcm2ps-8.14.7/draw.c:1650:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(hd, "p%shd", acc_tb[acc & 0x07]); data/abcm2ps-8.14.7/format.c:352:2: [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(s->text, p); data/abcm2ps-8.14.7/format.c:1364: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(*((char **) fd->v), p); data/abcm2ps-8.14.7/front.c:615: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(prefix, prefix_sav); data/abcm2ps-8.14.7/front.c:852: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(prefix_sav, prefix); data/abcm2ps-8.14.7/parse.c:1352:15: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. new_txt += sprintf(new_txt, "%s", latin_names[i4]); data/abcm2ps-8.14.7/parse.c:1353:14: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. new_txt += sprintf(new_txt, "%s", acc_name[i1]); data/abcm2ps-8.14.7/parse.c:1379:15: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. new_txt += sprintf(new_txt, "%s", acc_name[i1]); data/abcm2ps-8.14.7/parse.c:1382:2: [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(new_txt, p); data/abcm2ps-8.14.7/parse.c:1420:3: [4] (format) sprintf: Potential format string problem (CWE-134). Make format string constant. sprintf(r + i + l, capo_txt, cfmt.capo); data/abcm2ps-8.14.7/parse.c:1424: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(r + i + l, q); // ending annotations data/abcm2ps-8.14.7/parse.c:1909: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(lyl->t, q); data/abcm2ps-8.14.7/parse.c:2079: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(p_voice3->id, p_voice2->id); data/abcm2ps-8.14.7/parse.c:2635: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(p, s->text); data/abcm2ps-8.14.7/parse.c:3774: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(s->u.clef.name, str); data/abcm2ps-8.14.7/parse.c:4720: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(r, op); data/abcm2ps-8.14.7/parse.c:4724:2: [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(r, fill ? " fill" : " stroke"); data/abcm2ps-8.14.7/parse.c:4732:2: [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(s->text, buf); data/abcm2ps-8.14.7/parse.c:5647: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(p, q); data/abcm2ps-8.14.7/subs.c:90:2: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stderr, sev == 0 ? "warning: " : "error: "); data/abcm2ps-8.14.7/subs.c:92:2: [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/abcm2ps-8.14.7/subs.c:353:10: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. p += sprintf(p, "%s", good_tb[i]); data/abcm2ps-8.14.7/subs.c:1443:8: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. b += sprintf(b, "%s. ", r); data/abcm2ps-8.14.7/subs.c:1451:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(b, "%s %.*s", q + 2, (int) (q - p), p); data/abcm2ps-8.14.7/subs.c:1453: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(b, p); data/abcm2ps-8.14.7/subs.c:1845:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(t->text, "%%svg %s", s); data/abcm2ps-8.14.7/subs.c:1848:3: [4] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. sprintf(t->text, "%c%s", use, s); data/abcm2ps-8.14.7/svg.c:870:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stderr, type == SEQ ? " {" : " ["); data/abcm2ps-8.14.7/svg.c:876:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(stderr, type == SEQ ? " }" : " ]"); data/abcm2ps-8.14.7/svg.c:1165:2: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(fout, svg_head1, w, h); data/abcm2ps-8.14.7/svg.c:1168:4: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(fout, svg_font_style_url, cfmt.musicfont); data/abcm2ps-8.14.7/svg.c:1170:4: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(fout, svg_font_style, cfmt.musicfont); data/abcm2ps-8.14.7/svg.c:1218:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(fout, svg_head3, "page", num); data/abcm2ps-8.14.7/svg.c:1235:3: [4] (format) fprintf: If format strings can be influenced by an attacker, they can be exploited (CWE-134). Use a constant for the format specification. fprintf(fout, svg_head3, epsf ? "tune" : "page", num); data/abcm2ps-8.14.7/svg.c:1428:2: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. vsnprintf(path_buf, sizeof path_buf, fmt, args); data/abcm2ps-8.14.7/svg.c:1441:2: [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(p, path_buf); data/abcm2ps-8.14.7/svg.c:4627:2: [4] (format) vsnprintf: If format strings can be influenced by an attacker, they can be exploited, and note that sprintf variations do not always \0-terminate (CWE-134). Use a constant for the format specification. vsnprintf(tmp, sizeof tmp, fmt, args); data/abcm2ps-8.14.7/abcm2ps.c:50:1: [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 outfn[FILENAME_MAX]; /* output file name */ data/abcm2ps-8.14.7/abcm2ps.c:81: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 str[2]; /* start of memory area */ data/abcm2ps-8.14.7/abcm2ps.c:92:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(fn, "rb")) != NULL) data/abcm2ps-8.14.7/abcm2ps.c:100:12: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fp = fopen(fn, "rb")) != NULL) data/abcm2ps-8.14.7/abcm2ps.c:149: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(tex_buf, "stdin"); data/abcm2ps-8.14.7/abcm2ps.c:191: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(&fmtime, &sbuf.st_mtime, sizeof fmtime); data/abcm2ps-8.14.7/abcm2ps.c:367: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(file_tmp, p, l2); data/abcm2ps-8.14.7/abcm2ps.c:506: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 exe[512], *p; data/abcm2ps-8.14.7/abcm2ps.c:516: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(p - 4, "share/abcm2ps/"); data/abcm2ps-8.14.7/abcm2ps.c:522:2: [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(p, "tight.fmt"); data/abcm2ps-8.14.7/abcm2ps.c:523:11: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((f = fopen(exe, "r")) == NULL) data/abcm2ps-8.14.7/abcm2ps.h:197: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. extern char *deco[256]; data/abcm2ps-8.14.7/abcm2ps.h:204: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. extern char *fontnames[MAXFONTS]; /* list of font names */ data/abcm2ps-8.14.7/abcm2ps.h:214: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 t[256]; /* word (dummy size) */ data/abcm2ps-8.14.7/abcm2ps.h:282: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. signed char pits[MAXHD]; /* pitches / clef */ data/abcm2ps-8.14.7/abcm2ps.h:401: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. signed char pits[8]; data/abcm2ps-8.14.7/abcm2ps.h:402:13: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. unsigned char accs[8]; data/abcm2ps-8.14.7/abcm2ps.h:413:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char top[8]; /* top value */ data/abcm2ps-8.14.7/abcm2ps.h:414:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char bot[2]; /* bottom value */ data/abcm2ps-8.14.7/abcm2ps.h:426:4: [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 id[VOICE_ID_SZ]; /* voice ID */ data/abcm2ps-8.14.7/abcm2ps.h:491: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 *deco_tb[DC_NAME_SZ]; /* decoration names */ data/abcm2ps-8.14.7/abcm2ps.h:589: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. extern char outfn[FILENAME_MAX]; /* output file name */ data/abcm2ps-8.14.7/abcm2ps.h:605: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 instr[2]; /* instrument pitch */ data/abcm2ps-8.14.7/abcm2ps.h:634: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 id[VOICE_ID_SZ]; /* voice id */ data/abcm2ps-8.14.7/abcparse.c:37: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. static char g_char_tb[128]; data/abcm2ps-8.14.7/abcparse.c:38: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. static char *g_deco_tb[128]; /* global decoration names */ data/abcm2ps-8.14.7/abcparse.c:72: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. static char char_tb[256] = { data/abcm2ps-8.14.7/abcparse.c:173: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(g_char_tb, char_tb, sizeof g_char_tb); data/abcm2ps-8.14.7/abcparse.c:174: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(g_deco_tb, parse.deco_tb, sizeof g_deco_tb); data/abcm2ps-8.14.7/abcparse.c:175: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(g_micro_tb, parse.micro_tb, sizeof g_micro_tb); data/abcm2ps-8.14.7/abcparse.c:186:3: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(char_tb, g_char_tb, sizeof g_char_tb); data/abcm2ps-8.14.7/abcparse.c:187: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(parse.deco_tb, g_deco_tb, sizeof parse.deco_tb); data/abcm2ps-8.14.7/abcparse.c:188: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(parse.micro_tb, g_micro_tb, sizeof parse.micro_tb); data/abcm2ps-8.14.7/abcparse.c:208:3: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(char_tb, g_char_tb, sizeof g_char_tb); data/abcm2ps-8.14.7/abcparse.c:283:8: [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). i = atoi(p); data/abcm2ps-8.14.7/abcparse.c:305:13: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). switch (atoi(p)) { data/abcm2ps-8.14.7/abcparse.c:401: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(*t, q, l); data/abcm2ps-8.14.7/abcparse.c:450: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 str[80]; data/abcm2ps-8.14.7/abcparse.c:563:16: [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 const char line_tb[7] = data/abcm2ps-8.14.7/abcparse.c:838: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(tex_buf, "%%voicemap "); data/abcm2ps-8.14.7/abcparse.c:1068: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 c, str[80]; data/abcm2ps-8.14.7/abcparse.c:1402: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(tex_buf, "%%voicemap "); data/abcm2ps-8.14.7/abcparse.c:1415: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 repeat_value[32]; data/abcm2ps-8.14.7/abcparse.c:1487: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(&s->u.bar.dc, &dc, sizeof s->u.bar.dc); data/abcm2ps-8.14.7/abcparse.c:1846: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 qtb[10] = {0, 1, 3, 2, 3, 0, 2, 0, 3, 0}; data/abcm2ps-8.14.7/abcparse.c:1990: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(&dc_sav, &dc, sizeof dc); data/abcm2ps-8.14.7/abcparse.c:2006: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(&dc, &dc_sav, sizeof dc); data/abcm2ps-8.14.7/abcparse.c:2291: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(&dc, &dc_sav, sizeof dc); data/abcm2ps-8.14.7/abcparse.c:2499: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(s->abc_type != ABC_T_MREST ? &s->u.note.dc data/abcm2ps-8.14.7/buffer.c:27: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. static char *ln_buf[BUFFLN]; /* buffer location of buffered lines */ data/abcm2ps-8.14.7/buffer.c:30:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static signed char ln_font[BUFFLN]; /* font of buffered lines */ data/abcm2ps-8.14.7/buffer.c:40: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. static char outfnam[FILENAME_MAX]; /* internal file name for open/close */ data/abcm2ps-8.14.7/buffer.c:70: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 fnm[FILENAME_MAX]; data/abcm2ps-8.14.7/buffer.c:101: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(&fnm[i + 1], "%03d.svg", ++nepsf); data/abcm2ps-8.14.7/buffer.c:109:15: [2] (misc) fopen: Check when opening files - can an attacker redirect it (via symlinks), force the opening of special file type (e.g., device files), move things around to create a race condition, control its ancestors, or change its contents? (CWE-362). if ((fout = fopen(fnm, "w")) == NULL) { data/abcm2ps-8.14.7/buffer.c:121: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[TEX_BUF_SZ]; data/abcm2ps-8.14.7/buffer.c:397:9: [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. d += sprintf(d, "%d", pagenum); data/abcm2ps-8.14.7/buffer.c:409:9: [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. d += sprintf(d, "%d", pagenum_nr); data/abcm2ps-8.14.7/buffer.c:432: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 tmp[2048], str[TEX_BUF_SZ + 512]; data/abcm2ps-8.14.7/buffer.c:457: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(&f_sav, &cfmt.font_tb[0], sizeof f_sav); data/abcm2ps-8.14.7/buffer.c:540: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(&cfmt.font_tb[0], &f_sav, sizeof cfmt.font_tb[0]); data/abcm2ps-8.14.7/buffer.c:677: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 *p, title[80]; data/abcm2ps-8.14.7/buffer.c:708:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(&outfnam[i + 1], "%03d", ++nepsf); data/abcm2ps-8.14.7/buffer.c:711: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). if ((fout = fopen(outfnam, "w")) == NULL) { data/abcm2ps-8.14.7/buffer.c:851:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char line[BSIZE], *p, *q; data/abcm2ps-8.14.7/buffer.c:860: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). if ((f = fopen(p, "r")) == NULL) { data/abcm2ps-8.14.7/buffer.c:898: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(outbuf, p_buf, strlen(p_buf) + 1); data/abcm2ps-8.14.7/deco.c:26:1: [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 *deco[256]; /* decoration names */ data/abcm2ps-8.14.7/deco.c:84: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. static char *ps_func_tb[128]; data/abcm2ps-8.14.7/deco.c:86: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. static char *str_tb[32]; data/abcm2ps-8.14.7/deco.c:195: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 text[256]; // dummy size data/abcm2ps-8.14.7/deco.c:839: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 name2[32]; data/abcm2ps-8.14.7/deco.c:840: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 ps_func[16]; data/abcm2ps-8.14.7/deco.c:902:6: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(str_tb[strx], text, l - 1); data/abcm2ps-8.14.7/deco.c:2408: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 tmp[16]; data/abcm2ps-8.14.7/draw.c:116: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(s, s_orig, sizeof *s); data/abcm2ps-8.14.7/draw.c:896: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 *f, meter[64]; data/abcm2ps-8.14.7/draw.c:909: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(meter, "(%.8s)(%.2s)", data/abcm2ps-8.14.7/draw.c:956:5: [2] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source has a constant maximum length. sprintf(meter, "(%.8s)", data/abcm2ps-8.14.7/draw.c:1281: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 *rest_tb[NFLAGS_SZ] = { data/abcm2ps-8.14.7/draw.c:1594: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 hd[32]; data/abcm2ps-8.14.7/draw.c:1727: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. signed char y_tb[MAXHD]; data/abcm2ps-8.14.7/draw.c:3134: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. unsigned char mhead1[MAXHD], mhead2[MAXHD], mhead3[MAXHD]; data/abcm2ps-8.14.7/draw.c:3326: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(&tie, rtie, sizeof tie); data/abcm2ps-8.14.7/draw.c:3617: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. unsigned char workmap[70]; /* sharps/flats - base: lowest 'C' */ data/abcm2ps-8.14.7/draw.c:3618: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. unsigned char basemap[7]; data/abcm2ps-8.14.7/draw.c:3625: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(&workmap[7 * j], basemap, 7); data/abcm2ps-8.14.7/draw.c:3643: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(&workmap[7 * j], basemap, 7); data/abcm2ps-8.14.7/draw.c:3649: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(&workmap[7 * j], basemap, 7); data/abcm2ps-8.14.7/draw.c:3903: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 above_tb[MAXVOICE]; data/abcm2ps-8.14.7/draw.c:3904: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 rv_tb[MAXVOICE]; data/abcm2ps-8.14.7/draw.c:4248: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 *v[8]; data/abcm2ps-8.14.7/draw.c:4338: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 empty[MAXSTAFF]; data/abcm2ps-8.14.7/draw.c:4712: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(&p_voice->key, &s->u.key, data/abcm2ps-8.14.7/draw.c:4786: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(&p_voice->meter, &s->u.meter, data/abcm2ps-8.14.7/draw.c:4801: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(&p_voice->key, &s->u.key, data/abcm2ps-8.14.7/format.c:23:1: [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 *fontnames[MAXFONTS]; /* list of font names */ data/abcm2ps-8.14.7/format.c:24: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. static char font_enc[MAXFONTS]; /* font encoding */ data/abcm2ps-8.14.7/format.c:25: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. static char def_font_enc[MAXFONTS]; /* default font encoding */ data/abcm2ps-8.14.7/format.c:26: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. static char used_font[MAXFONTS]; /* used fonts */ data/abcm2ps-8.14.7/format.c:227: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(&cfmt.font_tb[i], f, sizeof cfmt.font_tb[0]); data/abcm2ps-8.14.7/format.c:482: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. static char *yn[2] = {"no","yes"}; data/abcm2ps-8.14.7/format.c:522:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char tmp[16], *p; data/abcm2ps-8.14.7/format.c:735: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 fname[80]; data/abcm2ps-8.14.7/format.c:793:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const char pitch_tb[14] = {60, 62, 64, 65, 67, 69, 71, data/abcm2ps-8.14.7/format.c:1054:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char fname[80]; data/abcm2ps-8.14.7/front.c:31: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. static char prefix[4] = {'%'}; data/abcm2ps-8.14.7/front.c:97:17: [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 unsigned char *latin_tb[5] = { data/abcm2ps-8.14.7/front.c:117: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 + offset, s, sz); data/abcm2ps-8.14.7/front.c:125: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. unsigned char *p, c, tmp[4]; data/abcm2ps-8.14.7/front.c:460: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(tex_buf, s, ret); data/abcm2ps-8.14.7/front.c:480: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 prefix_sav[4]; data/abcm2ps-8.14.7/glyph.c:21: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. static char *c2[64] = { data/abcm2ps-8.14.7/glyph.c:35: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. static char *c3[64] = { data/abcm2ps-8.14.7/glyph.c:53: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. static char *c4[64] = { data/abcm2ps-8.14.7/glyph.c:71: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. static char *c5[64] = { data/abcm2ps-8.14.7/glyph.c:90: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. static char *ce[64] = { data/abcm2ps-8.14.7/glyph.c:101: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. static char *e299[64] = { data/abcm2ps-8.14.7/glyph.c:112: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. static char **e2[64] = { data/abcm2ps-8.14.7/glyph.c:123: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. static char *f09d84[64] = { data/abcm2ps-8.14.7/glyph.c:135: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. static char **f09d[64] = { data/abcm2ps-8.14.7/glyph.c:145: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. static char ***f0[64] = { data/abcm2ps-8.14.7/glyph.c:157: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. static char **utf_1[62] = { data/abcm2ps-8.14.7/glyph.c:190: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. g = (char **) utf_1[i1]; data/abcm2ps-8.14.7/glyph.c:192: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. g = (char **) g[i2]; data/abcm2ps-8.14.7/glyph.c:194: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. g = (char **) g[i3]; data/abcm2ps-8.14.7/glyph.c:196: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. g = (char **) g[i4]; data/abcm2ps-8.14.7/glyph.c:248:7: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. g = (char **) g1[i2]; data/abcm2ps-8.14.7/glyph.c:257: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. g1 = (char **) g[i3]; data/abcm2ps-8.14.7/music.c:41: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. static char rest_sp[NFLAGS_SZ][2] = { data/abcm2ps-8.14.7/music.c:449: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(&s->u.note.notes[nhd + 1], data/abcm2ps-8.14.7/music.c:452: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(&s->pits[nhd + 1], s2->pits, data/abcm2ps-8.14.7/music.c:501: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(&s->u.note.dc.tm[n], data/abcm2ps-8.14.7/music.c:1748: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(s, g, sizeof *s); data/abcm2ps-8.14.7/music.c:2619: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(p_voice->s_clef, data/abcm2ps-8.14.7/music.c:2726: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. signed char staff_delta[MAXSTAFF]; data/abcm2ps-8.14.7/music.c:2727: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. static const signed char delta_tb[4] = { data/abcm2ps-8.14.7/music.c:3246: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(&s->u.clef, &staff_tb[staff].s_clef->u.clef, data/abcm2ps-8.14.7/music.c:3297: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(&s->u.key, &p_voice->key, sizeof s->u.key); data/abcm2ps-8.14.7/music.c:3320: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(&s->u.meter, &p_voice->meter, data/abcm2ps-8.14.7/music.c:3512: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. static const signed char delpit[4] = {0, -7, -14, 0}; data/abcm2ps-8.14.7/music.c:4631: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 empty[MAXSTAFF], empty_gl[MAXSTAFF]; data/abcm2ps-8.14.7/parse.c:63: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. static char *deco_glob[256]; /* global decoration table */ data/abcm2ps-8.14.7/parse.c:90: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. static char w_tb[NSYMTYPES] = { /* !! index = symbol type !! */ data/abcm2ps-8.14.7/parse.c:110:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static signed char cde2fcg[7] = {0, 2, 4, -1, 1, 3, 5}; data/abcm2ps-8.14.7/parse.c:111: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. static char cgd2cde[7] = {0, 4, 1, 5, 2, 6, 3}; data/abcm2ps-8.14.7/parse.c:174: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(&dc, &s->u.bar.dc, sizeof dc); data/abcm2ps-8.14.7/parse.c:207: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(&s2->u.note.dc, &dc, sizeof s2->u.note.dc); data/abcm2ps-8.14.7/parse.c:219: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. signed char vn[MAXVOICE]; /* voice indexed by range */ data/abcm2ps-8.14.7/parse.c:521: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(s2, s, sizeof *s2); data/abcm2ps-8.14.7/parse.c:606: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(s2, s, sizeof *s2); data/abcm2ps-8.14.7/parse.c:629: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(g2, g, sizeof *g2); data/abcm2ps-8.14.7/parse.c:636: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(g2, g, sizeof *g2); data/abcm2ps-8.14.7/parse.c:679: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_sy, parsys, sizeof *new_sy); data/abcm2ps-8.14.7/parse.c:789: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(&voice_tb[s2->voice].key, &s2->u.key, data/abcm2ps-8.14.7/parse.c:793: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(&voice_tb[s2->voice].meter, &s2->u.meter, data/abcm2ps-8.14.7/parse.c:1128: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. static const signed char acc1[6] = {0, 1, 0, -1, 2, -2}; data/abcm2ps-8.14.7/parse.c:1129:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const char acc2[5] = {A_DF, A_FT, A_NT, A_SH, A_DS}; data/abcm2ps-8.14.7/parse.c:1265:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const char *latin_names[7] = data/abcm2ps-8.14.7/parse.c:1267:15: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. static const char *acc_name[5] = {"bb", "b", "", "#", "##"}; data/abcm2ps-8.14.7/parse.c:1328: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_txt, s->text, l); data/abcm2ps-8.14.7/parse.c:1723: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 word[128], *p, *q; data/abcm2ps-8.14.7/parse.c:2054: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(&p_voice2->key, &p_voice->key, data/abcm2ps-8.14.7/parse.c:2056: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(&p_voice2->ckey, &p_voice->ckey, data/abcm2ps-8.14.7/parse.c:2058: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(&p_voice2->okey, &p_voice->okey, data/abcm2ps-8.14.7/parse.c:2409: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(p_voice2, p_voice, sizeof *p_voice2); data/abcm2ps-8.14.7/parse.c:2696: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(s2, s1, sizeof *s2); data/abcm2ps-8.14.7/parse.c:2746: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(s2, s, sizeof *s2); data/abcm2ps-8.14.7/parse.c:2859: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(map, omap, sizeof *map); data/abcm2ps-8.14.7/parse.c:2864: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(notes, onotes, sizeof *notes); data/abcm2ps-8.14.7/parse.c:3111: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(&dfmt, &cfmt, sizeof dfmt); /* save global values */ data/abcm2ps-8.14.7/parse.c:3112: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(&info_glob, &info, sizeof info_glob); data/abcm2ps-8.14.7/parse.c:3113: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(deco_glob, deco, sizeof deco_glob); data/abcm2ps-8.14.7/parse.c:3648: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(&cfmt, &dfmt, sizeof cfmt); /* restore global values */ data/abcm2ps-8.14.7/parse.c:3649: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(&info, &info_glob, sizeof info); data/abcm2ps-8.14.7/parse.c:3650: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(deco, deco_glob, sizeof deco); data/abcm2ps-8.14.7/parse.c:3761: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 str[80]; data/abcm2ps-8.14.7/parse.c:3903: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 accs[8], pits[8]; data/abcm2ps-8.14.7/parse.c:3904: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 sharp_tb[8] = {26, 23, 27, 24, 21, 25, 22}; data/abcm2ps-8.14.7/parse.c:3905: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 flat_tb[8] = {22, 25, 21, 24, 20, 23, 26}; data/abcm2ps-8.14.7/parse.c:3971: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(&okey, &s->u.key, sizeof okey); data/abcm2ps-8.14.7/parse.c:3991: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(&voice.ckey, &s->u.key, sizeof voice.ckey); data/abcm2ps-8.14.7/parse.c:3996: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(note.u.note.pits, voice.ckey.pits, data/abcm2ps-8.14.7/parse.c:3998: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(note.u.note.accs, voice.ckey.accs, data/abcm2ps-8.14.7/parse.c:4004: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(s->u.key.pits, note.u.note.pits, data/abcm2ps-8.14.7/parse.c:4006: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(s->u.key.accs, note.u.note.accs, data/abcm2ps-8.14.7/parse.c:4021: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(&p_voice->key, &s->u.key, data/abcm2ps-8.14.7/parse.c:4023: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(&p_voice->ckey, &s->u.key, data/abcm2ps-8.14.7/parse.c:4025: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(&p_voice->okey, &okey, data/abcm2ps-8.14.7/parse.c:4044: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(&curvoice->key, &s->u.key, data/abcm2ps-8.14.7/parse.c:4046: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(&curvoice->ckey, &s->u.key, data/abcm2ps-8.14.7/parse.c:4048: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(&curvoice->okey, &okey, data/abcm2ps-8.14.7/parse.c:4081: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(&curvoice->ckey, &s->u.key, data/abcm2ps-8.14.7/parse.c:4083: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(&curvoice->okey, &okey, data/abcm2ps-8.14.7/parse.c:4117: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(&p_voice->meter, &s->u.meter, data/abcm2ps-8.14.7/parse.c:4125: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(&curvoice->meter, &s->u.meter, data/abcm2ps-8.14.7/parse.c:4264: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. unsigned char new_order[MAXHD], inv_order[MAXHD]; data/abcm2ps-8.14.7/parse.c:4273: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(&v_note, &s->u.note.notes[i], data/abcm2ps-8.14.7/parse.c:4275: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(&s->u.note.notes[i], &s->u.note.notes[i - 1], data/abcm2ps-8.14.7/parse.c:4277: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(&s->u.note.notes[i - 1], &v_note, data/abcm2ps-8.14.7/parse.c:4520: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 tmp[32], *r = tmp; data/abcm2ps-8.14.7/parse.c:4572:2: [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(r, "{gsave T "); data/abcm2ps-8.14.7/parse.c:4589:9: [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. r += sprintf(r, "%.2f %.2f T ", x, -y); data/abcm2ps-8.14.7/parse.c:4591:9: [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. r += sprintf(r, "%.2f %.2f scale ", x1, y1); data/abcm2ps-8.14.7/parse.c:4593:9: [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. r += sprintf(r, "%.2f %.2f T %.2f %.2f scale ", data/abcm2ps-8.14.7/parse.c:4596:9: [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. r += sprintf(r, "%.2f %.2f scale %.2f %.2f T ", data/abcm2ps-8.14.7/parse.c:4599:2: [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(r, "0 0 M\n"); data/abcm2ps-8.14.7/parse.c:4684:9: [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. r += sprintf(r, " %.2f %.2f %.2f %.2f", data/abcm2ps-8.14.7/parse.c:4695:9: [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. r += sprintf(r, " %.2f %.2f %.2f %.2f", data/abcm2ps-8.14.7/parse.c:4726:2: [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(r, "\ngrestore}!"); data/abcm2ps-8.14.7/parse.c:5161: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 w[32], *p, *q; data/abcm2ps-8.14.7/parse.c:5312:4: [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 fn[STRL1], line[STRL1]; data/abcm2ps-8.14.7/parse.c:5443:15: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). pagenum = atoi(p); data/abcm2ps-8.14.7/parse.c:5490:9: [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). n = atoi(p); data/abcm2ps-8.14.7/parse.c:5505:10: [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). k = atoi(p); data/abcm2ps-8.14.7/parse.c:5533:9: [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). n = atoi(p); data/abcm2ps-8.14.7/parse.c:5542: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(w, "measurefirst"); data/abcm2ps-8.14.7/parse.c:5593:32: [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). staff = curvoice->cstaff + atoi(p + 1); data/abcm2ps-8.14.7/parse.c:5595:32: [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). staff = curvoice->cstaff - atoi(p + 1); data/abcm2ps-8.14.7/parse.c:5597:13: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). staff = atoi(p) - 1; data/abcm2ps-8.14.7/parse.c:5627:13: [2] (integer) atoi: Unless checked, the resulting number can exceed the expected range (CWE-190). If source untrusted, check both minimum and maximum, even if the input had no minus sign (large numbers can roll over into negative number; consider saving to an unsigned value if that is intended). switch (atoi(p)) { data/abcm2ps-8.14.7/parse.c:5775:6: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&p_voice->key, &p_voice->okey, data/abcm2ps-8.14.7/parse.c:5778:6: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&p_voice->ckey, &p_voice->key, data/abcm2ps-8.14.7/parse.c:5789: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(&curvoice->key, &curvoice->okey, data/abcm2ps-8.14.7/parse.c:5792: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(&curvoice->ckey, &curvoice->key, data/abcm2ps-8.14.7/parse.c:5817: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(&s2->u.key, &curvoice->okey, data/abcm2ps-8.14.7/parse.c:5820: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(&curvoice->ckey, &s2->u.key, data/abcm2ps-8.14.7/subs.c:28:1: [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 tex_buf[TEX_BUF_SZ]; /* result of tex_str() */ data/abcm2ps-8.14.7/subs.c:63: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 text[2]; data/abcm2ps-8.14.7/subs.c:339: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 font_name[128], *p, *q; data/abcm2ps-8.14.7/subs.c:396: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 tmp[256]; data/abcm2ps-8.14.7/subs.c:584: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 tmp[256]; data/abcm2ps-8.14.7/subs.c:1002: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[256], *p, *q; data/abcm2ps-8.14.7/subs.c:1370: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 tmp[265]; data/abcm2ps-8.14.7/subs.c:1410: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. static char buf[STRL1]; data/abcm2ps-8.14.7/subs.c:1500: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 inf_nb[26]; data/abcm2ps-8.14.7/subs.c:1502: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 inf_ft[26]; data/abcm2ps-8.14.7/subs.c:1504: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 fmt[64]; data/abcm2ps-8.14.7/subs.c:1516: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(inf_s, info, sizeof inf_s); data/abcm2ps-8.14.7/subs.c:1626:5: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char buf[256], *r; data/abcm2ps-8.14.7/subs.c:1871:4: [2] (buffer) char: Statically-sized arrays can be improperly restricted, leading to potential overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length. char line[BSIZE]; data/abcm2ps-8.14.7/subs.c:1873: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). if ((f = fopen(p + 1, "r")) == NULL) { data/abcm2ps-8.14.7/svg.c:60: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. static char path_buf[256]; data/abcm2ps-8.14.7/svg.c:73: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 dash[64]; data/abcm2ps-8.14.7/svg.c:1251: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(&gold, &gcur, sizeof gold); data/abcm2ps-8.14.7/svg.c:1382: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(&gold, &gcur, sizeof gold); data/abcm2ps-8.14.7/svg.c:1674: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 tmp[4], *s, *p, *q; data/abcm2ps-8.14.7/svg.c:2784: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(&e->u.s[1], &s[n + 1], count); data/abcm2ps-8.14.7/svg.c:2826: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(&gcur, &gsave[--nsave], sizeof gcur); data/abcm2ps-8.14.7/svg.c:2840: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(&gsave[nsave++], &gcur, sizeof gsave[0]); data/abcm2ps-8.14.7/svg.c:3682: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(&e3->u.s[1], data/abcm2ps-8.14.7/svg.c:3753: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, " stroke-dashoffset=\"%d\"", n); data/abcm2ps-8.14.7/svg.c:3754:9: [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, " stroke-dasharray=\""); data/abcm2ps-8.14.7/svg.c:3766: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, "%d,", (int) e->u.v); data/abcm2ps-8.14.7/svg.c:4605: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(r, q, l); data/abcm2ps-8.14.7/svg.c:4624: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 tmp[128]; data/abcm2ps-8.14.7/abcm2ps.c:98:2: [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(p, "."); data/abcm2ps-8.14.7/abcm2ps.c:118:3: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(rfn, in_fname, l); data/abcm2ps-8.14.7/abcm2ps.c:132:6: [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(styd) - 1; data/abcm2ps-8.14.7/abcm2ps.c:229:6: [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(abc_fn); data/abcm2ps-8.14.7/abcm2ps.c:413:3: [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(p, "."); data/abcm2ps-8.14.7/abcm2ps.c:565:6: [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 (strlen(w) + strlen(v) >= TEX_BUF_SZ - 10) { data/abcm2ps-8.14.7/abcm2ps.c:565:18: [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 (strlen(w) + strlen(v) >= TEX_BUF_SZ - 10) { data/abcm2ps-8.14.7/abcm2ps.c:647: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). p += strlen(p) - 1; data/abcm2ps-8.14.7/abcm2ps.c:663: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). p += strlen(p) - 1; data/abcm2ps-8.14.7/abcm2ps.c:665: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). if (strlen(aaa) >= sizeof outfn) { data/abcm2ps-8.14.7/abcm2ps.c:677: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). p += strlen(p) - 1; /* skip */ data/abcm2ps-8.14.7/abcm2ps.c:730: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). i = strlen(p) - 1; data/abcm2ps-8.14.7/abcm2ps.c:933: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). p += strlen(p) - 1; /* stop */ data/abcm2ps-8.14.7/abcm2ps.c:937:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). for (j = 0; j < strlen(aaa); j++) { data/abcm2ps-8.14.7/abcm2ps.c:980:15: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (aaa[strlen(aaa) - 1] == 'b') data/abcm2ps-8.14.7/abcm2ps.c:1001: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). if (strlen(aaa) >= sizeof outfn) { data/abcm2ps-8.14.7/abcparse.c:138:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). s->text = getarena(strlen(text) + 1); data/abcm2ps-8.14.7/abcparse.c:325:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(*p_stlines, q, l); data/abcm2ps-8.14.7/abcparse.c:387: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). if (strlen(*t) == l data/abcm2ps-8.14.7/abcparse.c:458:30: [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). s->u.clef.name = getarena(strlen(str) + 1); data/abcm2ps-8.14.7/abcparse.c:1074:30: [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). s->u.tempo.str1 = getarena(strlen(str) + 1); data/abcm2ps-8.14.7/abcparse.c:1149:30: [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). s->u.tempo.str2 = getarena(strlen(str) + 1); data/abcm2ps-8.14.7/abcparse.c:1286:3: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(voice_tb[voice].id, id, sizeof voice_tb[voice].id - 1); data/abcm2ps-8.14.7/abcparse.c:1327:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). s->u.voice.fname = getarena(strlen(tex_buf) + 1); data/abcm2ps-8.14.7/abcparse.c:1332:32: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). s->u.voice.nname = getarena(strlen(tex_buf) + 1); data/abcm2ps-8.14.7/abcparse.c:1522:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). s->text = getarena(strlen(repeat_value) + 1); data/abcm2ps-8.14.7/abcparse.c:1729: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). n = strlen(is->text); data/abcm2ps-8.14.7/abcparse.c:1730: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). gch = getarena(n + strlen(gchord) + 2); data/abcm2ps-8.14.7/abcparse.c:1774: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). l2 = strlen(gchord); data/abcm2ps-8.14.7/abcparse.c:1778:3: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(&gch[l2], q, l); data/abcm2ps-8.14.7/abcparse.c:1783:3: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(gchord, q, l); data/abcm2ps-8.14.7/abcparse.c:1960: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). c = p[strlen(p) - 1]; data/abcm2ps-8.14.7/abcparse.c:2601: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). len = strlen(abc_line); data/abcm2ps-8.14.7/buffer.c:73:6: [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). i = strlen(fnm) - 1; data/abcm2ps-8.14.7/buffer.c:98: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). i = strlen(fnm) - 1; data/abcm2ps-8.14.7/buffer.c:196:18: [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 = 0; i < strlen(version); i++) { data/abcm2ps-8.14.7/buffer.c:491: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). svg_write(tmp, strlen(tmp)); data/abcm2ps-8.14.7/buffer.c:508:20: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). svg_write(tmp, strlen(tmp)); data/abcm2ps-8.14.7/buffer.c:523: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). svg_write(tmp, strlen(tmp)); data/abcm2ps-8.14.7/buffer.c:690: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). i = strlen(outfnam) - 1; data/abcm2ps-8.14.7/buffer.c:702:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(&outfnam[i], p, sizeof outfnam - i - 4); data/abcm2ps-8.14.7/buffer.c:870:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). svg_write(line, strlen(line)); data/abcm2ps-8.14.7/buffer.c:884:23: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). fwrite(line, 1, strlen(line), fout); data/abcm2ps-8.14.7/buffer.c:898: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). memcpy(outbuf, p_buf, strlen(p_buf) + 1); data/abcm2ps-8.14.7/buffer.c:899:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). mbf = &outbuf[strlen(outbuf)]; data/abcm2ps-8.14.7/deco.c:813:6: [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/abcm2ps-8.14.7/deco.c:843:6: [1] (buffer) sscanf: It's unclear if the %s limit in the format string is small enough (CWE-120). Check that the limit is sufficiently small, or use a different input function. if (sscanf(text, "%15s %d %15s %d %d %d%n", data/abcm2ps-8.14.7/deco.c:900: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). l = strlen(text); data/abcm2ps-8.14.7/deco.c:934:6: [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(name); data/abcm2ps-8.14.7/deco.c:1027:6: [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(name); data/abcm2ps-8.14.7/deco.c:1157: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). if (strlen(dd->name) >= 4 data/abcm2ps-8.14.7/deco.c:1191: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). if (strlen(dd->name) != 5) data/abcm2ps-8.14.7/deco.c:1221: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). if (strlen(dd->name) != 7 data/abcm2ps-8.14.7/deco.c:1237: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). n = strlen(dd->name); data/abcm2ps-8.14.7/deco.c:1250: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). if (strlen(dd->name) < 6) { data/abcm2ps-8.14.7/deco.c:1361: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). l = strlen(gl); data/abcm2ps-8.14.7/deco.c:1364: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). l = strlen(gl); data/abcm2ps-8.14.7/deco.c:1593: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). l = strlen(dd->name); data/abcm2ps-8.14.7/draw.c:857:6: [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(stafflines); data/abcm2ps-8.14.7/draw.c:905: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->u.meter.meter[i].top); data/abcm2ps-8.14.7/draw.c:913: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). l2 = strlen(s->u.meter.meter[i].bot); data/abcm2ps-8.14.7/draw.c:996:6: [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(stafflines); data/abcm2ps-8.14.7/draw.c:1345:6: [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(stafflines); data/abcm2ps-8.14.7/draw.c:3793: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(p) - 1; data/abcm2ps-8.14.7/format.c:351:30: [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). s->text = (char *) getarena(strlen(p) + 1); data/abcm2ps-8.14.7/format.c:961:6: [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(w); data/abcm2ps-8.14.7/format.c:1179:6: [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). i = strlen(p); data/abcm2ps-8.14.7/format.c:1359: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). i = strlen(p) + 1; data/abcm2ps-8.14.7/music.c:82: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). q = p + strlen(p); data/abcm2ps-8.14.7/music.c:929: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). } else if ((isdigit((unsigned char) *p) && strlen(p) > 2) data/abcm2ps-8.14.7/music.c:1196: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(s->text) < 4) data/abcm2ps-8.14.7/music.c:1255: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). l = strlen(s->u.meter.meter[i].top); data/abcm2ps-8.14.7/music.c:1265: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). l2 = strlen(s->u.meter.meter[i].bot); data/abcm2ps-8.14.7/music.c:2553:28: [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). staff_clef[staff].mid = (strlen(sy->staff[staff].stafflines) - 1) * 3; data/abcm2ps-8.14.7/music.c:2593: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(sy->staff[staff].stafflines) - 1) * 3; data/abcm2ps-8.14.7/music.c:4704: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(stafflines); data/abcm2ps-8.14.7/parse.c:1326: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). new_txt = getarena(strlen(s->text) + 6); data/abcm2ps-8.14.7/parse.c:1409: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(p); data/abcm2ps-8.14.7/parse.c:1412: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). li = strlen(capo_txt); data/abcm2ps-8.14.7/parse.c:1414: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). r = (char *) getarena(strlen(s->text) + l + li + 1); data/abcm2ps-8.14.7/parse.c:1416:2: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(r, s->text, i); // annotations + chord symbol data/abcm2ps-8.14.7/parse.c:1418:2: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(r + i, p, l); // capo data/abcm2ps-8.14.7/parse.c:1634: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). l = strlen(p); data/abcm2ps-8.14.7/parse.c:1905: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). + strlen(q) + 1); data/abcm2ps-8.14.7/parse.c:2625: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). len += strlen(s2->text) + 1; data/abcm2ps-8.14.7/parse.c:2636: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). p += strlen(p); data/abcm2ps-8.14.7/parse.c:3773:38: [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). s->u.clef.name = (char *) getarena(strlen(str) + 1); data/abcm2ps-8.14.7/parse.c:4570:2: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(r, id + 4, idsz); data/abcm2ps-8.14.7/parse.c:4573: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). r += strlen(r); data/abcm2ps-8.14.7/parse.c:4600: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). r += strlen(r); data/abcm2ps-8.14.7/parse.c:4721: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). r += strlen(r); data/abcm2ps-8.14.7/parse.c:4725: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). r += strlen(r); data/abcm2ps-8.14.7/parse.c:4727: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). r += strlen(r); data/abcm2ps-8.14.7/parse.c:4731: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). s->text = getarena(strlen(buf) + 1); data/abcm2ps-8.14.7/parse.c:4904:5: [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(col_tb[i].name)) == 0) data/abcm2ps-8.14.7/parse.c:4920: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). switch (p[strlen(p) - 1]) { data/abcm2ps-8.14.7/parse.c:5057:3: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(map->name, name, l); data/abcm2ps-8.14.7/parse.c:5116:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(note_map->heads, name, l); data/abcm2ps-8.14.7/parse.c:5134:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(note_map->heads, name, l); data/abcm2ps-8.14.7/parse.c:5167: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). q = p + strlen(p) - 5; data/abcm2ps-8.14.7/parse.c:5615: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). if (p[strlen(p) - 1] == 'f') data/abcm2ps-8.14.7/parse.c:5644: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). l = strlen(p); data/abcm2ps-8.14.7/parse.c:5992:31: [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). opt = malloc(sizeof *opt + strlen(p)); data/abcm2ps-8.14.7/subs.c:352:30: [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 (strncmp(q, bad_tb[i], strlen(bad_tb[i])) == 0) { data/abcm2ps-8.14.7/subs.c:354: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). q += strlen(bad_tb[i]); data/abcm2ps-8.14.7/subs.c:372:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). memmove(p + 1, p, strlen(p) + 1); data/abcm2ps-8.14.7/subs.c:377:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). memmove(p + 1, p, strlen(p) + 1); data/abcm2ps-8.14.7/subs.c:382:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). memmove(p + 1, p, strlen(p) + 1); data/abcm2ps-8.14.7/subs.c:1013:3: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf, p, sizeof buf - 1); data/abcm2ps-8.14.7/subs.c:1014: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). q = buf + strlen(buf); data/abcm2ps-8.14.7/subs.c:1019:4: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(q, p, buf + sizeof buf - 2 - q); data/abcm2ps-8.14.7/subs.c:1020: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). q += strlen(q); data/abcm2ps-8.14.7/subs.c:1293: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). if ((int) strlen(p) > max2col) { data/abcm2ps-8.14.7/subs.c:1419: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). if (strlen(q) > 7 /* word no more than 5 characters */ data/abcm2ps-8.14.7/subs.c:1423: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). if (strlen(q) > cfmt.titletrim - 2) data/abcm2ps-8.14.7/subs.c:1439: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). if (strlen(p) + strlen(r) + 3 >= sizeof buf) { data/abcm2ps-8.14.7/subs.c:1439:19: [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 (strlen(p) + strlen(r) + 3 >= sizeof buf) { data/abcm2ps-8.14.7/subs.c:1445: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). if (strlen(p) >= sizeof buf) { data/abcm2ps-8.14.7/subs.c:1635:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(buf, q, sizeof buf - 1); data/abcm2ps-8.14.7/subs.c:1637: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). j = strlen(buf); data/abcm2ps-8.14.7/subs.c:1650:15: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). r = buf + strlen(buf); data/abcm2ps-8.14.7/subs.c:1651:5: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(r, q, buf + sizeof buf - r - 1); data/abcm2ps-8.14.7/subs.c:1842:6: [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/abcm2ps-8.14.7/subs.c:1895:22: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). svg_write(p + 1, strlen(p + 1)); data/abcm2ps-8.14.7/subs.c:1904: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). svg_write(p + 1, strlen(&t->text[1])); data/abcm2ps-8.14.7/svg.c:1274:15: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). svg_write(s, strlen(s)); data/abcm2ps-8.14.7/svg.c:1431:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). path = malloc(strlen(path_buf) + 1); data/abcm2ps-8.14.7/svg.c:1434: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). path = realloc(path, strlen(path) + strlen(path_buf) + 1); data/abcm2ps-8.14.7/svg.c:1434:39: [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). path = realloc(path, strlen(path) + strlen(path_buf) + 1); data/abcm2ps-8.14.7/svg.c:1435: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). p = path + strlen(path); data/abcm2ps-8.14.7/svg.c:1506:6: [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). i = strlen(defs); data/abcm2ps-8.14.7/svg.c:1511:2: [1] (buffer) strncpy: Easily used incorrectly; doesn't always \0-terminate or check for invalid pointers [MS-banned] (CWE-120). strncpy(defs + i, id, idsz); data/abcm2ps-8.14.7/svg.c:1756: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). p = p + strlen(p) + 1; /* next string of gxshow */ data/abcm2ps-8.14.7/svg.c:2062: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). w = 7 * strlen(s); data/abcm2ps-8.14.7/svg.c:2324:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). svg_write(s, strlen(s)); data/abcm2ps-8.14.7/svg.c:2727: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 ((unsigned) n >= strlen(s) - 1) { data/abcm2ps-8.14.7/svg.c:2772: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). if ((unsigned) n >= strlen(s) data/abcm2ps-8.14.7/svg.c:2773:28: [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). || (unsigned) count >= strlen(s) - n) { data/abcm2ps-8.14.7/svg.c:3031: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). e->u.v = strlen(s + 1); data/abcm2ps-8.14.7/svg.c:3354: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). if ((unsigned) n >= strlen(s) - 1) { data/abcm2ps-8.14.7/svg.c:3674: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). l2 = strlen(e->u.s); data/abcm2ps-8.14.7/svg.c:3675: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). l3 = strlen(e2->u.s) - l2 - l1 + 2; data/abcm2ps-8.14.7/svg.c:3770:4: [1] (buffer) sprintf: Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or vsnprintf. Risk is low because the source is a constant character. sprintf(p, "\""); data/abcm2ps-8.14.7/svg.c:4355:30: [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 (s && s[-1] == '"' && s[strlen(op)] == '"') { data/abcm2ps-8.14.7/svg.c:4629:17: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). svg_write(tmp, strlen(tmp)); data/abcm2ps-8.14.7/syms.c:884: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). r = q + strlen(p) - 1; // ')' ANALYSIS SUMMARY: Hits = 489 Lines analyzed = 35038 in approximately 0.83 seconds (42196 lines/second) Physical Source Lines of Code (SLOC) = 30857 Hits@level = [0] 338 [1] 146 [2] 256 [3] 0 [4] 86 [5] 1 Hits@level+ = [0+] 827 [1+] 489 [2+] 343 [3+] 87 [4+] 87 [5+] 1 Hits/KSLOC@level+ = [0+] 26.8011 [1+] 15.8473 [2+] 11.1158 [3+] 2.81946 [4+] 2.81946 [5+] 0.0324076 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.