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/klavaro-3.11/src/plot.h
Examining data/klavaro-3.11/src/keyboard.c
Examining data/klavaro-3.11/src/velocity.h
Examining data/klavaro-3.11/src/auxiliar.c
Examining data/klavaro-3.11/src/basic.h
Examining data/klavaro-3.11/src/top10.h
Examining data/klavaro-3.11/src/cursor.h
Examining data/klavaro-3.11/src/translation.h
Examining data/klavaro-3.11/src/adaptability.h
Examining data/klavaro-3.11/src/callbacks.h
Examining data/klavaro-3.11/src/tutor.h
Examining data/klavaro-3.11/src/main.h
Examining data/klavaro-3.11/src/auxiliar.h
Examining data/klavaro-3.11/src/fluidness.h
Examining data/klavaro-3.11/src/fluidness.c
Examining data/klavaro-3.11/src/adaptability.c
Examining data/klavaro-3.11/src/callbacks.c
Examining data/klavaro-3.11/src/tutor.c
Examining data/klavaro-3.11/src/top10.c
Examining data/klavaro-3.11/src/main.c
Examining data/klavaro-3.11/src/keyboard.h
Examining data/klavaro-3.11/src/accuracy.h
Examining data/klavaro-3.11/src/plot.c
Examining data/klavaro-3.11/src/basic.c
Examining data/klavaro-3.11/src/cursor.c
Examining data/klavaro-3.11/src/velocity.c
Examining data/klavaro-3.11/src/accuracy.c
Examining data/klavaro-3.11/src/translation.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_ruler.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_graph.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_points.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_scale.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_marshal.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_grid.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_bars.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_points.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_lines.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_bars.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_grid.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_scale.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_xyc_graph.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_ruler.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_typedefs.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_marshal.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_lines.h
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_xyc_graph.c
Examining data/klavaro-3.11/gtkdatabox/gtkdatabox_graph.h

FINAL RESULTS:

data/klavaro-3.11/src/fluidness.c:220: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 (par.buffer, str_9000);
data/klavaro-3.11/src/plot.c:406:12:  [4] (buffer) fscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function.
			itens = fscanf (fh, "%f%f%f%s%s%s\t", &accur[i], &velo[i], &fluid[i],
data/klavaro-3.11/src/plot.c:412:12:  [4] (buffer) fscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function.
			itens = fscanf (fh, "%f%s%s%i\t", &score[i], date[i], hour[i], &nchars[i]);
data/klavaro-3.11/src/plot.c:462:12:  [4] (buffer) fscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function.
			itens = fscanf (fh, "%f%f%f%s%s%s\t", &accur[i], &velo[i], &fluid[i],
data/klavaro-3.11/src/plot.c:468:12:  [4] (buffer) fscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function.
			itens = fscanf (fh, "%f%s%s%i\t", &score[i], date[i], hour[i], &nchars[i]);
data/klavaro-3.11/src/plot.c:492: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 (date[i], date[i + 1]);
data/klavaro-3.11/src/plot.c:493: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 (hour[i], hour[i + 1]);
data/klavaro-3.11/src/plot.c:495: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 (date[i], date[i + 1]);
data/klavaro-3.11/src/plot.c:496: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 (hour[i], hour[i + 1]);
data/klavaro-3.11/src/top10.c:165: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 (top10[i].name, NOBODY);
data/klavaro-3.11/src/tutor.c:1773:17:  [4] (shell) system:
  This causes a new program to execute and is difficult to use safely
  (CWE-78). try using a library call that implements the same functionality
  if available.
		espeak_OK = ! system (command);
data/klavaro-3.11/src/tutor.c:1789:17:  [4] (shell) system:
  This causes a new program to execute and is difficult to use safely
  (CWE-78). try using a library call that implements the same functionality
  if available.
		espeak_OK = ! system (command);
data/klavaro-3.11/src/velocity.c:194: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 (par.text + par.i, word);
data/klavaro-3.11/src/main.c:301:2:  [3] (random) srand:
  This function is not sufficiently random for security-related functions
  such as key and nonce creation (CWE-327). Use a more secure technique for
  acquiring random values.
	srand (time (0));
data/klavaro-3.11/src/top10.c:966:51:  [3] (buffer) g_get_tmp_dir:
  This function is synonymous with 'getenv("TMP")';it returns untrustable
  input if the environment can beset by an attacker. It can have any content
  and length, and the same variable can be set more than once (CWE-807,
  CWE-20). Check environment variables carefully before using them.
			tmp = g_strdup_printf ("%s/klavaro_%03i.html", g_get_tmp_dir (), i++);
data/klavaro-3.11/src/fluidness.c:193: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 (par.name, "Default");
data/klavaro-3.11/src/keyboard.c:392: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 (keyb.lochars[i], uchs, (n_itens - 1) * sizeof (gunichar));
data/klavaro-3.11/src/keyboard.c:406: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 (keyb.upchars[i], uchs, (n_itens - 1) * sizeof (gunichar));
data/klavaro-3.11/src/keyboard.c:1915: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 (file_name, "hands_0.png");
data/klavaro-3.11/src/keyboard.c:1917: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 (file_name, "hands_9.png");
data/klavaro-3.11/src/keyboard.c:1919: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 (file_name, "hands_5.png");
data/klavaro-3.11/src/translation.c:195: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 (lang[i].cd, "en");
data/klavaro-3.11/src/tutor.c:1844: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 (ut8, _("space"));
data/klavaro-3.11/src/tutor.c:1849: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 (ut8, _("wye"));
data/klavaro-3.11/src/tutor.c:1853: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 (ut8, _("enter"));
data/klavaro-3.11/src/tutor.c:1859: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 (ut8, _("apostrophe"));
data/klavaro-3.11/src/tutor.c:1863: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 (ut8, _("quote"));
data/klavaro-3.11/src/tutor.c:1867: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 (ut8, _("ampersand"));
data/klavaro-3.11/gtkdatabox/gtkdatabox_ruler.c:1137: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 (strlen(format)>FORMAT_LENGTH) {
data/klavaro-3.11/gtkdatabox/gtkdatabox_ruler.c:1138:121:  [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).
            g_warning("maximum format length = %d chars exceeded, truncating to the maximum from %d",FORMAT_LENGTH,(int)strlen(format));
data/klavaro-3.11/gtkdatabox/gtkdatabox_ruler.c:1178: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 (strlen(format)>FORMAT_LENGTH) {
data/klavaro-3.11/gtkdatabox/gtkdatabox_ruler.c:1179:121:  [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).
            g_warning("maximum format length = %d chars exceeded, truncating to the maximum from %d",FORMAT_LENGTH,(int)strlen(format));
data/klavaro-3.11/src/accuracy.c:181:13:  [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 (3 != sscanf (dtp, "%6s\t%lu\t%lu\n", tmpchr, &wrong, &correct)) 
data/klavaro-3.11/src/accuracy.c:222:13:  [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 (3 != sscanf (dtp, "%6s\t%lf\t%lf\n", tmpchr, &dt, &dummy)) 
data/klavaro-3.11/src/adaptability.c:274:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_buffer_insert_at_cursor (buf, tmp_str, strlen (tmp_str));
data/klavaro-3.11/src/basic.c:242: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 (charset) < 2)
data/klavaro-3.11/src/basic.c:388:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_buffer_insert_at_cursor (buf, tmp_str, strlen (tmp_str));
data/klavaro-3.11/src/callbacks.c:588: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 (tmp_font) == 0)
data/klavaro-3.11/src/callbacks.c:1020: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 (tmp) == 0)
data/klavaro-3.11/src/callbacks.c:1718: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 (str) > 0)
data/klavaro-3.11/src/fluidness.c:101:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
		strncpy (par_i, par_1, size);
data/klavaro-3.11/src/fluidness.c:121: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).
	size = strlen (par_i);
data/klavaro-3.11/src/fluidness.c:184:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
		strncpy (par.name, list_name, 20);
data/klavaro-3.11/src/fluidness.c:209: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).
			len = strlen (str_9000);
data/klavaro-3.11/src/fluidness.c:212:48:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			memory_ok = g_try_renew (gchar, par.buffer, strlen (par.buffer) + len + 2);
data/klavaro-3.11/src/fluidness.c:222:5:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
				strcat (par.buffer, "\n");
data/klavaro-3.11/src/fluidness.c:332: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).
	raw.len = strlen (text);
data/klavaro-3.11/src/fluidness.c:452:41:  [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 (text_filtered, sizeof (gchar), strlen (text_filtered), fh_destiny);
data/klavaro-3.11/src/fluidness.c:508:41:  [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 (text_filtered, sizeof (gchar), strlen (text_filtered), fh_destiny);
data/klavaro-3.11/src/fluidness.c:560:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_buffer_insert_at_cursor (buf, tmp_str, strlen (tmp_str));
data/klavaro-3.11/src/keyboard.c:707: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).
		name_len = strlen (dentry);
data/klavaro-3.11/src/plot.c:416:26:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		if (language[i][len = (strlen(language[i])-1)] == '\n')
data/klavaro-3.11/src/plot.c:472:26:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		if (language[i][len = (strlen(language[i])-1)] == '\n')
data/klavaro-3.11/src/top10.c:164: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).
	top10[i].name_len = strlen (NOBODY);
data/klavaro-3.11/src/top10.c:204:16:  [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).
	statnamelen = strlen (stat->name); 
data/klavaro-3.11/src/top10.c:211: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).
				statnamelen = strlen (stat->name); 
data/klavaro-3.11/src/top10.c:334:19:  [1] (buffer) getc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		top10.lang[0] = getc (fh);
data/klavaro-3.11/src/top10.c:342:19:  [1] (buffer) getc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		top10.lang[1] = getc (fh);
data/klavaro-3.11/src/top10.c:350:16:  [1] (buffer) getc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		top10.genv = getc (fh);
data/klavaro-3.11/src/top10.c:450:22:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		top10[i].lang[0] = fgetc (fh);
data/klavaro-3.11/src/top10.c:458:22:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		top10[i].lang[1] = fgetc (fh);
data/klavaro-3.11/src/top10.c:466:19:  [1] (buffer) fgetc:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		top10[i].genv = fgetc (fh);
data/klavaro-3.11/src/top10.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).
	if (strlen (username) == 0)
data/klavaro-3.11/src/top10.c:939: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 (username) == 0)
data/klavaro-3.11/src/translation.c:197:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy (lang[i].cd, lang[i].code, 2);
data/klavaro-3.11/src/translation.c:279:2:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	strncpy (aux_code_2, test, 2);
data/klavaro-3.11/src/translation.c:696: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).
	if (fh == NULL && strlen (tmp_code) > 1)
data/klavaro-3.11/src/tutor.c:1187: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).
			stat.name_len = strlen (tmp_name);
data/klavaro-3.11/src/tutor.c:1190:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy (stat.name, tmp_name, stat.name_len + 1);
data/klavaro-3.11/src/tutor.c:1267:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1272:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1276:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_iter_backward_cursor_positions (&start, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1285:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1292:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1297:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1301:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_text_iter_backward_cursor_positions (&start, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1310:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1315:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1320:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1324:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_text_iter_backward_cursor_positions (&start, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1333:52:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1340:53:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1345:53:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1349:53:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			gtk_text_iter_backward_cursor_positions (&start, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1360:53:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1367:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_buffer_insert_at_cursor (buf, tmp_str2, strlen (tmp_str2));
data/klavaro-3.11/src/tutor.c:1385:55:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			gtk_text_buffer_insert_at_cursor (buf, contest_ps, strlen (contest_ps));
data/klavaro-3.11/src/tutor.c:1633: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 (dentry) < 5)
data/klavaro-3.11/src/tutor.c:1728:64:  [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).
	gtk_editable_insert_text (GTK_EDITABLE (wg), g_strdup (mesg), strlen (mesg), &pos);
data/klavaro-3.11/src/tutor.c:1856:3:  [1] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant character.
		strcpy (ut8, "%");
data/klavaro-3.11/src/velocity.c:188:16:  [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 (par.i + strlen (word) + 8 > par.size) /* check for buffer sizing, some spare for paragraph ending */
data/klavaro-3.11/src/velocity.c:195: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).
			par.i += strlen (word);
data/klavaro-3.11/src/velocity.c:199:5:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
				strcat(par.text, "་");
data/klavaro-3.11/src/velocity.c:212:4:  [1] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant character.
			strcpy(par.text + par.i, "།");
data/klavaro-3.11/src/velocity.c:250: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).
	raw.len = strlen (text);
data/klavaro-3.11/src/velocity.c:352:41:  [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 (text_filtered, sizeof (gchar), strlen (text_filtered), fh_destiny);
data/klavaro-3.11/src/velocity.c:413:41:  [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 (text_filtered, sizeof (gchar), strlen (text_filtered), fh_destiny);
data/klavaro-3.11/src/velocity.c:480:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	gtk_text_buffer_insert_at_cursor (buf, tmp_str, strlen (tmp_str));

ANALYSIS SUMMARY:

Hits = 98
Lines analyzed = 20337 in approximately 1.35 seconds (15115 lines/second)
Physical Source Lines of Code (SLOC) = 14241
Hits@level = [0]  34 [1]  70 [2]  13 [3]   2 [4]  13 [5]   0
Hits@level+ = [0+] 132 [1+]  98 [2+]  28 [3+]  15 [4+]  13 [5+]   0
Hits/KSLOC@level+ = [0+] 9.26901 [1+] 6.88154 [2+] 1.96615 [3+] 1.0533 [4+] 0.912857 [5+]   0
Dot directories skipped = 1 (--followdotdir overrides)
Minimum risk level = 1
Not every hit is necessarily a security vulnerability.
There may be other security vulnerabilities; review your code!
See 'Secure Programming HOWTO'
(https://dwheeler.com/secure-programs) for more information.