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/homebank-5.3.2/src/ui-payee.c
Examining data/homebank-5.3.2/src/gtk-chart-colors.h
Examining data/homebank-5.3.2/src/ui-tag.c
Examining data/homebank-5.3.2/src/ui-account.c
Examining data/homebank-5.3.2/src/ui-hbfile.h
Examining data/homebank-5.3.2/src/dsp-mainwindow.h
Examining data/homebank-5.3.2/src/hb-payee.h
Examining data/homebank-5.3.2/src/hb-hbfile.c
Examining data/homebank-5.3.2/src/rep-stats.c
Examining data/homebank-5.3.2/src/hb-import.h
Examining data/homebank-5.3.2/src/hb-filter.c
Examining data/homebank-5.3.2/src/hub-spending.h
Examining data/homebank-5.3.2/src/hb-export.h
Examining data/homebank-5.3.2/src/hb-xml.c
Examining data/homebank-5.3.2/src/hub-transaction.c
Examining data/homebank-5.3.2/src/ui-assist-start.c
Examining data/homebank-5.3.2/src/hb-preferences.h
Examining data/homebank-5.3.2/src/list-scheduled.c
Examining data/homebank-5.3.2/src/list-operation.c
Examining data/homebank-5.3.2/src/ui-widgets-data.c
Examining data/homebank-5.3.2/src/hub-transaction.h
Examining data/homebank-5.3.2/src/rep-stats.h
Examining data/homebank-5.3.2/src/dsp-mainwindow.c
Examining data/homebank-5.3.2/src/ui-txn-multi.c
Examining data/homebank-5.3.2/src/dsp-account.c
Examining data/homebank-5.3.2/src/ui-transaction.c
Examining data/homebank-5.3.2/src/ui-assist-import.c
Examining data/homebank-5.3.2/src/hb-tag.c
Examining data/homebank-5.3.2/src/hb-currency.h
Examining data/homebank-5.3.2/src/ui-currency.h
Examining data/homebank-5.3.2/src/rep-balance.h
Examining data/homebank-5.3.2/src/hb-category.h
Examining data/homebank-5.3.2/src/ui-assign.h
Examining data/homebank-5.3.2/src/hb-account.h
Examining data/homebank-5.3.2/src/ui-filter.h
Examining data/homebank-5.3.2/src/hb-report.c
Examining data/homebank-5.3.2/src/rep-time.c
Examining data/homebank-5.3.2/src/hb-archive.h
Examining data/homebank-5.3.2/src/rep-vehicle.h
Examining data/homebank-5.3.2/src/gtk-dateentry.c
Examining data/homebank-5.3.2/src/rep-budget.h
Examining data/homebank-5.3.2/src/ui-dialogs.c
Examining data/homebank-5.3.2/src/hb-import-qif.c
Examining data/homebank-5.3.2/src/hb-filter.h
Examining data/homebank-5.3.2/src/list-scheduled.h
Examining data/homebank-5.3.2/src/hb-import.c
Examining data/homebank-5.3.2/src/enums.h
Examining data/homebank-5.3.2/src/ui-currency.c
Examining data/homebank-5.3.2/src/ui-budget.c
Examining data/homebank-5.3.2/src/language.h
Examining data/homebank-5.3.2/src/hb-xml.h
Examining data/homebank-5.3.2/src/gtk-chart.c
Examining data/homebank-5.3.2/src/hb-hbfile.h
Examining data/homebank-5.3.2/src/ui-budget.h
Examining data/homebank-5.3.2/src/hb-tag.h
Examining data/homebank-5.3.2/src/ui-assist-start.h
Examining data/homebank-5.3.2/src/ui-hbfile.c
Examining data/homebank-5.3.2/src/ui-pref.c
Examining data/homebank-5.3.2/src/homebank.c
Examining data/homebank-5.3.2/src/rep-budget.c
Examining data/homebank-5.3.2/src/rep-time.h
Examining data/homebank-5.3.2/src/ui-pref.h
Examining data/homebank-5.3.2/src/hb-split.c
Examining data/homebank-5.3.2/src/ui-assign.c
Examining data/homebank-5.3.2/src/hb-preferences.c
Examining data/homebank-5.3.2/src/ui-txn-multi.h
Examining data/homebank-5.3.2/src/ui-assist-import.h
Examining data/homebank-5.3.2/src/ui-widgets.c
Examining data/homebank-5.3.2/src/dsp-account.h
Examining data/homebank-5.3.2/src/hub-spending.c
Examining data/homebank-5.3.2/src/ui-widgets.h
Examining data/homebank-5.3.2/src/hb-archive.c
Examining data/homebank-5.3.2/src/hb-account.c
Examining data/homebank-5.3.2/src/ui-tag.h
Examining data/homebank-5.3.2/src/ui-budget-tabview.h
Examining data/homebank-5.3.2/src/hb-transaction.h
Examining data/homebank-5.3.2/src/hb-group.c
Examining data/homebank-5.3.2/src/ui-account.h
Examining data/homebank-5.3.2/src/ui-archive.h
Examining data/homebank-5.3.2/src/ui-group.c
Examining data/homebank-5.3.2/src/ui-filter.c
Examining data/homebank-5.3.2/src/hb-misc.c
Examining data/homebank-5.3.2/src/hub-scheduled.h
Examining data/homebank-5.3.2/src/language.c
Examining data/homebank-5.3.2/src/ui-transaction.h
Examining data/homebank-5.3.2/src/rep-vehicle.c
Examining data/homebank-5.3.2/src/list-account.c
Examining data/homebank-5.3.2/src/hub-account.h
Examining data/homebank-5.3.2/src/hb-report.h
Examining data/homebank-5.3.2/src/hb-encoding.h
Examining data/homebank-5.3.2/src/rep-balance.c
Examining data/homebank-5.3.2/src/gtk-chart-progress.h
Examining data/homebank-5.3.2/src/hb-payee.c
Examining data/homebank-5.3.2/src/hb-currency.c
Examining data/homebank-5.3.2/src/ui-category.c
Examining data/homebank-5.3.2/src/gtk-chart-colors.c
Examining data/homebank-5.3.2/src/hb-transaction.c
Examining data/homebank-5.3.2/src/list-account.h
Examining data/homebank-5.3.2/src/homebank.h
Examining data/homebank-5.3.2/src/hb-group.h
Examining data/homebank-5.3.2/src/ui-category.h
Examining data/homebank-5.3.2/src/list-operation.h
Examining data/homebank-5.3.2/src/hb-misc.h
Examining data/homebank-5.3.2/src/hb-export.c
Examining data/homebank-5.3.2/src/gtk-chart-progress.c
Examining data/homebank-5.3.2/src/ui-group.h
Examining data/homebank-5.3.2/src/hb-split.h
Examining data/homebank-5.3.2/src/hub-scheduled.c
Examining data/homebank-5.3.2/src/ui-split.c
Examining data/homebank-5.3.2/src/gtk-dateentry.h
Examining data/homebank-5.3.2/src/ui-archive.c
Examining data/homebank-5.3.2/src/hb-import-ofx.c
Examining data/homebank-5.3.2/src/hb-import-csv.c
Examining data/homebank-5.3.2/src/ui-dialogs.h
Examining data/homebank-5.3.2/src/ui-payee.h
Examining data/homebank-5.3.2/src/hb-assign.h
Examining data/homebank-5.3.2/src/hb-assign.c
Examining data/homebank-5.3.2/src/hb-encoding.c
Examining data/homebank-5.3.2/src/ui-budget-tabview.c
Examining data/homebank-5.3.2/src/gtk-chart.h
Examining data/homebank-5.3.2/src/hb-category.c
Examining data/homebank-5.3.2/src/hub-account.c
Examining data/homebank-5.3.2/src/ui-split.h

FINAL RESULTS:

data/homebank-5.3.2/src/hb-import-csv.c:75: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 (twoquote, twoquote+1);
data/homebank-5.3.2/src/hb-preferences.c:314:45:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';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.
	PREFS->path_hbfile = g_strdup_printf("%s", g_get_home_dir ());
data/homebank-5.3.2/src/hb-preferences.c:315:45:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';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.
	PREFS->path_hbbak  = g_strdup_printf("%s", g_get_home_dir ());
data/homebank-5.3.2/src/hb-preferences.c:316:45:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';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.
	PREFS->path_import = g_strdup_printf("%s", g_get_home_dir ());
data/homebank-5.3.2/src/hb-preferences.c:317:45:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';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.
	PREFS->path_export = g_strdup_printf("%s", g_get_home_dir ());
data/homebank-5.3.2/src/homebank.c:659:30:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';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.
		homedir = g_build_filename(g_get_home_dir (), ".homebank", NULL );
data/homebank-5.3.2/src/homebank.c:758:31:  [3] (buffer) g_get_home_dir:
  This function is synonymous with 'getenv("HOME")';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.
	g_print(" - home_dir: %s\n", g_get_home_dir ());
data/homebank-5.3.2/src/homebank.c:759:30:  [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.
	g_print(" - tmp_dir: %s\n", g_get_tmp_dir ());
data/homebank-5.3.2/src/dsp-mainwindow.c:1640: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 (newseldata, gtk_selection_data_get_data(selection_data), slen);
data/homebank-5.3.2/src/gtk-dateentry.c:114:33:  [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).
  pt->n[0] = pt->num_ints > 0 ? atoi (num[0]) : 0;
data/homebank-5.3.2/src/gtk-dateentry.c:115:33:  [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).
  pt->n[1] = pt->num_ints > 1 ? atoi (num[1]) : 0;
data/homebank-5.3.2/src/gtk-dateentry.c:116:33:  [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).
  pt->n[2] = pt->num_ints > 2 ? atoi (num[2]) : 0;
data/homebank-5.3.2/src/hb-currency.c:406: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 buffer[BUFFER_SIZE];
data/homebank-5.3.2/src/hb-currency.c:448:29:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
        item->frac_digits = atoi(buffer);
data/homebank-5.3.2/src/hb-export.c:47: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 amountbuf[G_ASCII_DTOSTR_BUF_SIZE];
data/homebank-5.3.2/src/hb-import-csv.c:332:26:  [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).
						newope->paymode		= atoi(str_array[1]);
data/homebank-5.3.2/src/hb-import.c:601: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(dgentxn, sgentxn, sizeof(GenTxn));
data/homebank-5.3.2/src/hb-misc.c:715: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).
			*n1 = atoi(str_array[0]);
data/homebank-5.3.2/src/hb-misc.c:716: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).
			*n2 = atoi(str_array[1]);
data/homebank-5.3.2/src/hb-misc.c:717: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).
			*n3 = atoi(str_array[2]);
data/homebank-5.3.2/src/hb-misc.c:834:11:  [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).
gint da = atoi( *a  + strlen(*a) - 12);
data/homebank-5.3.2/src/hb-misc.c:835:11:  [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).
gint db = atoi( *b  + strlen(*b) - 12);
data/homebank-5.3.2/src/hb-preferences.c:64: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 buffer[BUFFER_SIZE];
data/homebank-5.3.2/src/hb-preferences.c:478: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(storage, wg, 5*sizeof(gint));
data/homebank-5.3.2/src/hb-preferences.c:756: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(PREFS->lst_ope_columns, src, length*sizeof(gint));
data/homebank-5.3.2/src/hb-preferences.c:766:10:  [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(PREFS->lst_ope_columns, src, length*sizeof(gint));
data/homebank-5.3.2/src/hb-preferences.c:813:7:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
						memcpy(PREFS->lst_ope_col_width, src, length*sizeof(gint));
data/homebank-5.3.2/src/hb-split.c:213:18:  [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).
			split->kcat = atoi(cat_a[i]);
data/homebank-5.3.2/src/hb-split.c:236: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 buf[G_ASCII_DTOSTR_BUF_SIZE];
data/homebank-5.3.2/src/hb-transaction.c:1042:13:  [2] (integer) atol:
  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).
			cheque = atol(newope->info);
data/homebank-5.3.2/src/hb-xml.c:518:70:  [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).
		     if(!strcmp (attribute_names[i], "key"     )) { entry->key   = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:519:70:  [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).
		else if(!strcmp (attribute_names[i], "flags"   )) { entry->flags = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:520:70:  [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).
		else if(!strcmp (attribute_names[i], "pos"     )) { entry->pos   = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:521:69:  [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).
		else if(!strcmp (attribute_names[i], "type"    )) { entry->type = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:522:69:  [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).
		else if(!strcmp (attribute_names[i], "curr"    )) { entry->kcur = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:529:72:  [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).
		else if(!strcmp (attribute_names[i], "cheque1" )) { entry->cheque1 = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:530:72:  [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).
		else if(!strcmp (attribute_names[i], "cheque2" )) { entry->cheque2 = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:532:69:  [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).
		else if(!strcmp (attribute_names[i], "tpl"     )) { entry->karc = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:533:69:  [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).
		else if(!strcmp (attribute_names[i], "grp"     )) { entry->kgrp = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:551:70:  [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).
		     if(!strcmp (attribute_names[i], "key"     )) { entry->key   = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:552:70:  [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).
		else if(!strcmp (attribute_names[i], "flags"   )) { entry->flags = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:553:70:  [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).
		else if(!strcmp (attribute_names[i], "pos"     )) { entry->pos   = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:554:70:  [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).
		else if(!strcmp (attribute_names[i], "field"   )) { entry->field = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:557:69:  [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).
		else if(!strcmp (attribute_names[i], "payee"   )) { entry->kpay = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:558:69:  [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).
		else if(!strcmp (attribute_names[i], "category")) { entry->kcat = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:559:72:  [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).
		else if(!strcmp (attribute_names[i], "paymode" )) { entry->paymode = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:561:61:  [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).
		else if(!strcmp (attribute_names[i], "exact" )) { exact = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:587:62:  [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).
			 if(!strcmp (attribute_names[i], "key"  )) { entry->key = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:590:69:  [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).
		else if(!strcmp (attribute_names[i], "category")) { entry->kcat = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:591:72:  [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).
		else if(!strcmp (attribute_names[i], "paymode" )) { entry->paymode = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:606:75:  [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).
		else if(!strcmp (attribute_names[i], "curr"        )) { GLOBALS->kcur = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:607:87:  [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).
		else if(!strcmp (attribute_names[i], "car_category")) { GLOBALS->vehicle_category = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:608:81:  [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).
		else if(!strcmp (attribute_names[i], "auto_smode"  )) { GLOBALS->auto_smode = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:609:83:  [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).
		else if(!strcmp (attribute_names[i], "auto_weekday")) { GLOBALS->auto_weekday = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:610:82:  [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).
		else if(!strcmp (attribute_names[i], "auto_nbdays" )) { GLOBALS->auto_nbdays = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:625:66:  [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).
		     if(!strcmp (attribute_names[i], "key"   )) { entry->key = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:626:69:  [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).
		else if(!strcmp (attribute_names[i], "parent")) { entry->parent = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:627:68:  [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).
		else if(!strcmp (attribute_names[i], "flags" )) { entry->flags = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:660:63:  [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).
			 if(!strcmp (attribute_names[i], "key"   )) { entry->key = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:661:68:  [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).
		else if(!strcmp (attribute_names[i], "flags" )) { entry->flags = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:665:73:  [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).
		else if(!strcmp (attribute_names[i], "syprf" )) { entry->sym_prefix = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:668:74:  [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).
		else if(!strcmp (attribute_names[i], "frac"  )) { entry->frac_digits = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:670:68:  [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).
		else if(!strcmp (attribute_names[i], "mdate ")) { entry->mdate = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:688:65:  [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).
		     if(!strcmp (attribute_names[i], "key"  )) { entry->key = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:731:71:  [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).
		     if(!strcmp (attribute_names[i], "key"        )) { entry->key = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:733:72:  [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).
		else if(!strcmp (attribute_names[i], "account"    )) { entry->kacc = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:734:76:  [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).
		else if(!strcmp (attribute_names[i], "dst_account")) { entry->kxferacc = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:735:75:  [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).
		else if(!strcmp (attribute_names[i], "paymode"    )) { entry->paymode = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:736:74:  [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).
		else if(!strcmp (attribute_names[i], "st"         )) { entry->status = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:737:73:  [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).
		else if(!strcmp (attribute_names[i], "flags"      )) { entry->flags = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:738:72:  [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).
		else if(!strcmp (attribute_names[i], "payee"      )) { entry->kpay = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:739:72:  [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).
		else if(!strcmp (attribute_names[i], "category"   )) { entry->kcat = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:749:76:  [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).
		else if(!strcmp (attribute_names[i], "nextdate"   )) { entry->nextdate = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:750:73:  [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).
		else if(!strcmp (attribute_names[i], "every"      )) { entry->every = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:751:72:  [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).
		else if(!strcmp (attribute_names[i], "unit"       )) { entry->unit = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:752:73:  [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).
		else if(!strcmp (attribute_names[i], "limit"      )) { entry->limit = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:753:75:  [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).
		else if(!strcmp (attribute_names[i], "weekend"    )) { entry->weekend = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:754:74:  [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).
		else if(!strcmp (attribute_names[i], "gap"        )) { entry->daygap = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:789:72:  [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).
		     if(!strcmp (attribute_names[i], "date"       )) { entry->date = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:791:72:  [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).
		else if(!strcmp (attribute_names[i], "account"    )) { entry->kacc = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:792:76:  [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).
		else if(!strcmp (attribute_names[i], "dst_account")) { entry->kxferacc = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:793:75:  [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).
		else if(!strcmp (attribute_names[i], "paymode"    )) { entry->paymode = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:794:74:  [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).
		else if(!strcmp (attribute_names[i], "st"         )) { entry->status = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:795:73:  [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).
		else if(!strcmp (attribute_names[i], "flags"      )) { entry->flags = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:796:72:  [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).
		else if(!strcmp (attribute_names[i], "payee"      )) { entry->kpay = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:797:72:  [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).
		else if(!strcmp (attribute_names[i], "category"   )) { entry->kcat = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:807:71:  [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).
		else if(!strcmp (attribute_names[i], "kxfer"    )) { entry->kxfer = atoi(attribute_values[i]); }
data/homebank-5.3.2/src/hb-xml.c:978:23:  [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).
		ctx->data_version = atoi(v_buffer+3);
data/homebank-5.3.2/src/hb-xml.c:1251: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 buf[G_ASCII_DTOSTR_BUF_SIZE];
data/homebank-5.3.2/src/hb-xml.c:1307: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 buf1[G_ASCII_DTOSTR_BUF_SIZE];
data/homebank-5.3.2/src/hb-xml.c:1448: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 buf[G_ASCII_DTOSTR_BUF_SIZE];
data/homebank-5.3.2/src/hb-xml.c:1796: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 buf1[G_ASCII_DTOSTR_BUF_SIZE];
data/homebank-5.3.2/src/list-operation.c:615: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 amountbuf[G_ASCII_DTOSTR_BUF_SIZE];
data/homebank-5.3.2/src/rep-vehicle.c:156:18:  [2] (integer) atol:
  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).
			item->meter	= atol(d+2);
data/homebank-5.3.2/src/ui-assist-import.c:568: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 (newseldata, gtk_selection_data_get_data(selection_data), slen);
data/homebank-5.3.2/src/ui-budget.c:283: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 buf[G_ASCII_DTOSTR_BUF_SIZE];
data/homebank-5.3.2/src/ui-widgets.c:983:25:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
	retval = buf != NULL ? atoi(buf) : 0;
data/homebank-5.3.2/src/ui-widgets.c:1334: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 *nainex_iconnames[NUM_NAINEX_MAX] =
data/homebank-5.3.2/src/hb-account.c:225: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(stripname) > 0 )
data/homebank-5.3.2/src/hb-account.c:429: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(stripname) > 0 )
data/homebank-5.3.2/src/hb-category.c:328: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(partstr[0]) == 0 )
data/homebank-5.3.2/src/hb-category.c:334: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(partstr[1]) == 0 )
data/homebank-5.3.2/src/hb-currency.c:572:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy(strbuf, p+8, 10);
data/homebank-5.3.2/src/hb-currency.c:586:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
				strncpy(isocode, strbuf, 3);
data/homebank-5.3.2/src/hb-currency.c:627:40:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		if( (item->key != GLOBALS->kcur) && (strlen(item->iso_code) == 3) )
data/homebank-5.3.2/src/hb-export.c:562:27:  [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(txn->info != NULL && strlen(txn->info) > 0)
data/homebank-5.3.2/src/hb-group.c:163: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(stripname) > 0 )
data/homebank-5.3.2/src/hb-import-csv.c:69:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
		strncpy (new_str, str, n);
data/homebank-5.3.2/src/hb-import-ofx.c:300: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).
			g_print(" len info %d %ld\n", (int)strlen(gentxn->rawinfo) , g_utf8_strlen(gentxn->rawinfo, -1));
data/homebank-5.3.2/src/hb-import-ofx.c:302: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).
			g_print(" len memo %d %ld\n", (int)strlen(gentxn->rawmemo) , g_utf8_strlen(gentxn->rawmemo, -1));
data/homebank-5.3.2/src/hb-import-ofx.c:304: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).
			g_print(" len name %d %ld\n", (int)strlen(gentxn->rawpayee), g_utf8_strlen(gentxn->rawpayee, -1));
data/homebank-5.3.2/src/hb-import-qif.c:74: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(string) - 1;
data/homebank-5.3.2/src/hb-import.c:413: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).
		if(number != NULL && acc->number && strlen(acc->number) )
data/homebank-5.3.2/src/hb-import.c:630: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).
	str_len = strlen(*str);
data/homebank-5.3.2/src/hb-misc.c:187:36:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	if( cur->grouping_char != NULL && strlen(cur->grouping_char) > 0 )
data/homebank-5.3.2/src/hb-misc.c:484:9:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		len = strlen(str);
data/homebank-5.3.2/src/hb-misc.c:519: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).
	str_len = strlen (str);
data/homebank-5.3.2/src/hb-misc.c:613: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).
      length = strlen (str) + 1;
data/homebank-5.3.2/src/hb-misc.c:667: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(string);
data/homebank-5.3.2/src/hb-misc.c:797: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).
	str_len = strlen(filepath);
data/homebank-5.3.2/src/hb-misc.c:826: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).
		return g_strndup(filename, strlen(filename) - strlen(lastdot));
data/homebank-5.3.2/src/hb-misc.c:826:49:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		return g_strndup(filename, strlen(filename) - strlen(lastdot));
data/homebank-5.3.2/src/hb-misc.c:834: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).
gint da = atoi( *a  + strlen(*a) - 12);
data/homebank-5.3.2/src/hb-misc.c:835: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).
gint db = atoi( *b  + strlen(*b) - 12);
data/homebank-5.3.2/src/hb-payee.c:255: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(stripname) == 0 )
data/homebank-5.3.2/src/hb-preferences.c:599:27:  [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( (prefix != NULL) && (strlen(prefix) > 0) )
data/homebank-5.3.2/src/hb-tag.c:295: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(str_array[i]) == 0 )
data/homebank-5.3.2/src/hb-xml.c:744: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).
			if(attribute_values[i] != NULL && strlen(attribute_values[i]) > 0 && strcmp(attribute_values[i],"(null)") != 0 )
data/homebank-5.3.2/src/hb-xml.c:802: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).
			if(attribute_values[i] != NULL && strlen(attribute_values[i]) > 0 && strcmp(attribute_values[i],"(null)") != 0 )
data/homebank-5.3.2/src/hb-xml.c:1228: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).
		length = strlen (value);
data/homebank-5.3.2/src/hub-account.c:131:37:  [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( (acc->bankname != NULL) && strlen(acc->bankname) > 0 ) 
data/homebank-5.3.2/src/rep-vehicle.c:150:9:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		len = strlen(text);
data/homebank-5.3.2/src/ui-account.c:1381: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(item->name) > 0 )
data/homebank-5.3.2/src/ui-assist-start.c:202: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(text) > 0)
data/homebank-5.3.2/src/ui-budget-tabview.c:2021: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(new_name) > 0)
data/homebank-5.3.2/src/ui-budget.c:191:63:  [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 (case_normalized_key, case_normalized_string, strlen (case_normalized_key)) == 0)
data/homebank-5.3.2/src/ui-category.c:319: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).
          if (g_strstr_len (case_normalized_string, strlen (case_normalized_string), key ))
data/homebank-5.3.2/src/ui-category.c:823: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).
          if (g_strstr_len (case_normalized_string, strlen (case_normalized_string), key ))
data/homebank-5.3.2/src/ui-category.c:1343:63:  [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 (case_normalized_key, case_normalized_string, strlen (case_normalized_key)) == 0)
data/homebank-5.3.2/src/ui-category.c:1611: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(item->name) > 0 )
data/homebank-5.3.2/src/ui-category.c:1660:77:  [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_dialog_set_response_sensitive(GTK_DIALOG(window), GTK_RESPONSE_ACCEPT, strlen(buffer) > 0 ? TRUE : FALSE);
data/homebank-5.3.2/src/ui-category.c:1796:73:  [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_dialog_set_response_sensitive(GTK_DIALOG(window), GTK_RESPONSE_OK, strlen(buffer) > 0 ? TRUE : FALSE);
data/homebank-5.3.2/src/ui-currency.c:1051:47:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		DB( g_print(" name='%d', iso='%d'\n", (gint)strlen(name), len) );
data/homebank-5.3.2/src/ui-currency.c:1053: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( (len==0 || len==3) && (strlen(name) >= 3 ) )
data/homebank-5.3.2/src/ui-group.c:67: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(stripname) > 0 )
data/homebank-5.3.2/src/ui-payee.c:885: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).
		hastext = (strlen(context->needle) >= 2) ? TRUE : FALSE;
data/homebank-5.3.2/src/ui-payee.c:951:63:  [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 (case_normalized_key, case_normalized_string, strlen (case_normalized_key)) == 0)
data/homebank-5.3.2/src/ui-payee.c:1200: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(item->name) > 0 )
data/homebank-5.3.2/src/ui-payee.c:1221:77:  [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_dialog_set_response_sensitive(GTK_DIALOG(window), GTK_RESPONSE_ACCEPT, strlen(buffer) > 0 ? TRUE : FALSE);
data/homebank-5.3.2/src/ui-payee.c:1372:73:  [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_dialog_set_response_sensitive(GTK_DIALOG(window), GTK_RESPONSE_OK, strlen(buffer) > 0 ? TRUE : FALSE);
data/homebank-5.3.2/src/ui-tag.c:449: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(item->name) > 0 )
data/homebank-5.3.2/src/ui-tag.c:470:77:  [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_dialog_set_response_sensitive(GTK_DIALOG(window), GTK_RESPONSE_ACCEPT, strlen(buffer) > 0 ? TRUE : FALSE);
data/homebank-5.3.2/src/ui-transaction.c:137:49:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
		gtk_label_set_label(GTK_LABEL(data->LB_curr), strlen(cur->iso_code) == 3 ? cur->iso_code : cur->symbol );
data/homebank-5.3.2/src/ui-widgets.c:579: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).
		count = strlen(clntxt);

ANALYSIS SUMMARY:

Hits = 154
Lines analyzed = 76184 in approximately 1.59 seconds (47924 lines/second)
Physical Source Lines of Code (SLOC) = 49028
Hits@level = [0]   0 [1]  56 [2]  90 [3]   7 [4]   1 [5]   0
Hits@level+ = [0+] 154 [1+] 154 [2+]  98 [3+]   8 [4+]   1 [5+]   0
Hits/KSLOC@level+ = [0+] 3.14106 [1+] 3.14106 [2+] 1.99886 [3+] 0.163172 [4+] 0.0203965 [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.