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/amtk-5.2.0/amtk/amtk.h
Examining data/amtk-5.2.0/amtk/amtk-action-info.h
Examining data/amtk-5.2.0/amtk/amtk-action-info-central-store.h
Examining data/amtk-5.2.0/amtk/amtk-action-info-store.h
Examining data/amtk-5.2.0/amtk/amtk-action-map.h
Examining data/amtk-5.2.0/amtk/amtk-application-window.h
Examining data/amtk-5.2.0/amtk/amtk-factory.h
Examining data/amtk-5.2.0/amtk/amtk-gmenu.h
Examining data/amtk-5.2.0/amtk/amtk-init.h
Examining data/amtk-5.2.0/amtk/amtk-menu-item.h
Examining data/amtk-5.2.0/amtk/amtk-menu-shell.h
Examining data/amtk-5.2.0/amtk/amtk-shortcuts.h
Examining data/amtk-5.2.0/amtk/amtk-types.h
Examining data/amtk-5.2.0/amtk/amtk-utils.h
Examining data/amtk-5.2.0/amtk/amtk-action-info.c
Examining data/amtk-5.2.0/amtk/amtk-action-info-central-store.c
Examining data/amtk-5.2.0/amtk/amtk-action-info-store.c
Examining data/amtk-5.2.0/amtk/amtk-action-map.c
Examining data/amtk-5.2.0/amtk/amtk-application-window.c
Examining data/amtk-5.2.0/amtk/amtk-factory.c
Examining data/amtk-5.2.0/amtk/amtk-gmenu.c
Examining data/amtk-5.2.0/amtk/amtk-init.c
Examining data/amtk-5.2.0/amtk/amtk-menu-item.c
Examining data/amtk-5.2.0/amtk/amtk-menu-shell.c
Examining data/amtk-5.2.0/amtk/amtk-shortcuts.c
Examining data/amtk-5.2.0/amtk/amtk-utils.c
Examining data/amtk-5.2.0/tests/test-headerbar.c
Examining data/amtk-5.2.0/tests/test-traditional-ui.c
Examining data/amtk-5.2.0/testsuite/test-action-info-store.c
Examining data/amtk-5.2.0/testsuite/test-action-map.c
Examining data/amtk-5.2.0/testsuite/test-utils.c

FINAL RESULTS:

data/amtk-5.2.0/amtk/amtk-utils.c:52:18:  [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.
	tmp = (gchar *) g_get_home_dir ();
data/amtk-5.2.0/amtk/amtk-utils.c:77: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).
		gchar *res = g_strdup_printf ("~/%s", filename + strlen (home));
data/amtk-5.2.0/amtk/amtk-utils.c:108: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).
	new_str = g_malloc (strlen (str) + 1);

ANALYSIS SUMMARY:

Hits = 3
Lines analyzed = 5733 in approximately 0.17 seconds (34512 lines/second)
Physical Source Lines of Code (SLOC) = 2958
Hits@level = [0]   0 [1]   2 [2]   0 [3]   1 [4]   0 [5]   0
Hits@level+ = [0+]   3 [1+]   3 [2+]   1 [3+]   1 [4+]   0 [5+]   0
Hits/KSLOC@level+ = [0+] 1.0142 [1+] 1.0142 [2+] 0.338066 [3+] 0.338066 [4+]   0 [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.