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/libcryptui-3.12.2/libcryptui/cryptui-key-store.c
Examining data/libcryptui-3.12.2/libcryptui/cryptui-defines.h
Examining data/libcryptui-3.12.2/libcryptui/tests/cryptui-test-ui.c
Examining data/libcryptui-3.12.2/libcryptui/cryptui-marshal.c
Examining data/libcryptui-3.12.2/libcryptui/cryptui-key-combo.h
Examining data/libcryptui-3.12.2/libcryptui/cryptui-key-list.h
Examining data/libcryptui-3.12.2/libcryptui/cryptui-key-store.h
Examining data/libcryptui-3.12.2/libcryptui/cryptui-key-chooser.h
Examining data/libcryptui-3.12.2/libcryptui/cryptui-key-chooser.c
Examining data/libcryptui-3.12.2/libcryptui/cryptui-keyset.c
Examining data/libcryptui-3.12.2/libcryptui/cryptui.h
Examining data/libcryptui-3.12.2/libcryptui/cryptui-keyset.h
Examining data/libcryptui-3.12.2/libcryptui/cryptui-marshal.h
Examining data/libcryptui-3.12.2/libcryptui/cryptui-priv.h
Examining data/libcryptui-3.12.2/libcryptui/cryptui-key-list.c
Examining data/libcryptui-3.12.2/libcryptui/cryptui-key-combo.c
Examining data/libcryptui-3.12.2/libcryptui/cryptui.c
Examining data/libcryptui-3.12.2/libegg/eggsmclient.h
Examining data/libcryptui-3.12.2/libegg/egg-datetime.c
Examining data/libcryptui-3.12.2/libegg/eggsmclient-xsmp.c
Examining data/libcryptui-3.12.2/libegg/egg-datetime.h
Examining data/libcryptui-3.12.2/libegg/eggdesktopfile.h
Examining data/libcryptui-3.12.2/libegg/eggsmclient-private.h
Examining data/libcryptui-3.12.2/libegg/eggdesktopfile.c
Examining data/libcryptui-3.12.2/libegg/eggsmclient.c
Examining data/libcryptui-3.12.2/daemon/seahorse-service.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-key-op.c
Examining data/libcryptui-3.12.2/daemon/seahorse-notification.c
Examining data/libcryptui-3.12.2/daemon/seahorse-unknown-source.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-subkey.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-operation.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-operation.c
Examining data/libcryptui-3.12.2/daemon/seahorse-progress.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-source.h
Examining data/libcryptui-3.12.2/daemon/seahorse-operation.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-key.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-uid.c
Examining data/libcryptui-3.12.2/daemon/seahorse-passphrase.c
Examining data/libcryptui-3.12.2/daemon/seahorse-service-crypto-bindings.h
Examining data/libcryptui-3.12.2/daemon/seahorse-object.c
Examining data/libcryptui-3.12.2/daemon/seahorse-unknown-source.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gtkstock.h
Examining data/libcryptui-3.12.2/daemon/seahorse-set.h
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-subkey.c
Examining data/libcryptui-3.12.2/daemon/seahorse-service-keyset.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c
Examining data/libcryptui-3.12.2/daemon/seahorse-context.h
Examining data/libcryptui-3.12.2/daemon/seahorse-unix-signal.h
Examining data/libcryptui-3.12.2/daemon/seahorse-object-list.h
Examining data/libcryptui-3.12.2/daemon/seahorse-marshal.h
Examining data/libcryptui-3.12.2/daemon/seahorse-validity.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-subkey.h
Examining data/libcryptui-3.12.2/daemon/seahorse-widget.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-key-op.h
Examining data/libcryptui-3.12.2/daemon/seahorse-types.h
Examining data/libcryptui-3.12.2/daemon/seahorse-validity.h
Examining data/libcryptui-3.12.2/daemon/seahorse-progress.h
Examining data/libcryptui-3.12.2/daemon/seahorse-set.c
Examining data/libcryptui-3.12.2/daemon/seahorse-service.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme.h
Examining data/libcryptui-3.12.2/daemon/seahorse-secure-buffer.h
Examining data/libcryptui-3.12.2/daemon/seahorse-context.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-data.h
Examining data/libcryptui-3.12.2/daemon/seahorse-types.c
Examining data/libcryptui-3.12.2/daemon/seahorse-secure-memory.h
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-uid.c
Examining data/libcryptui-3.12.2/daemon/seahorse-service-crypto.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-generate.h
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-signature.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gpg-options.h
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-key.c
Examining data/libcryptui-3.12.2/daemon/seahorse-widget.h
Examining data/libcryptui-3.12.2/daemon/seahorse-service-bindings.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-generate.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-source.c
Examining data/libcryptui-3.12.2/daemon/seahorse-util.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpg-op.c
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-key.h
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-module.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-uid.h
Examining data/libcryptui-3.12.2/daemon/seahorse-source.c
Examining data/libcryptui-3.12.2/daemon/seahorse-object.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-key.h
Examining data/libcryptui-3.12.2/daemon/seahorse-source.h
Examining data/libcryptui-3.12.2/daemon/seahorse-transfer-operation.h
Examining data/libcryptui-3.12.2/daemon/seahorse-unknown.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gpg-op.h
Examining data/libcryptui-3.12.2/daemon/seahorse-object-list.c
Examining data/libcryptui-3.12.2/daemon/seahorse-passphrase.h
Examining data/libcryptui-3.12.2/daemon/seahorse-libdialogs.h
Examining data/libcryptui-3.12.2/daemon/seahorse-gtkstock.c
Examining data/libcryptui-3.12.2/daemon/seahorse-transfer-operation.c
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-uid.h
Examining data/libcryptui-3.12.2/daemon/seahorse-operation.c
Examining data/libcryptui-3.12.2/daemon/seahorse-daemon.c
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-module.c
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp.c
Examining data/libcryptui-3.12.2/daemon/seahorse-service-keyset-bindings.h
Examining data/libcryptui-3.12.2/daemon/seahorse-unix-signal.c
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-signature.c
Examining data/libcryptui-3.12.2/daemon/seahorse-unknown.c
Examining data/libcryptui-3.12.2/daemon/seahorse-util.h
Examining data/libcryptui-3.12.2/daemon/seahorse-dbus-server.c
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp-subkey.h
Examining data/libcryptui-3.12.2/daemon/seahorse-pgp.h
Examining data/libcryptui-3.12.2/daemon/seahorse-marshal.c
Examining data/libcryptui-3.12.2/daemon/seahorse-gpgme-data.c
Examining data/libcryptui-3.12.2/daemon/seahorse-daemon.h
Examining data/libcryptui-3.12.2/daemon/seahorse-secure-buffer.c
Examining data/libcryptui-3.12.2/daemon/seahorse-secure-memory.c

FINAL RESULTS:

data/libcryptui-3.12.2/daemon/seahorse-util.c:670:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy (ret, uri);
data/libcryptui-3.12.2/daemon/seahorse-util.c:690:5:  [4] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused).
    strcat (ret, ext);
data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c:215:52:  [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.
                        gpg_homedir = g_strconcat (g_get_home_dir(), ++t, NULL);
data/libcryptui-3.12.2/daemon/seahorse-daemon.c:93:13:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
            open ("/dev/null", O_RDONLY, 0666);
data/libcryptui-3.12.2/daemon/seahorse-daemon.c:94:13:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
            open ("/dev/null", O_WRONLY, 0666);
data/libcryptui-3.12.2/daemon/seahorse-daemon.c:95:13:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
            open ("/dev/null", O_WRONLY, 0666);
data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c:52:15:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    if ((fd = open (file, O_CREAT | O_TRUNC | O_WRONLY, mode)) == -1) {
data/libcryptui-3.12.2/daemon/seahorse-secure-buffer.c:102: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 (pv->text + at, chars, n_bytes);
data/libcryptui-3.12.2/daemon/seahorse-util.c:1537:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
		char hex[3];
data/libcryptui-3.12.2/daemon/seahorse-util.c:1606:9:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
		tmp = atoi(tokens[i]);
data/libcryptui-3.12.2/libegg/egg-datetime.c:46:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy (result, tmp, sizeof (struct tm));
data/libcryptui-3.12.2/libegg/egg-datetime.c:61:3:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  memcpy (result, tmp, sizeof (struct tm));
data/libcryptui-3.12.2/libegg/eggsmclient-xsmp.c:206:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char pid_str[64];
data/libcryptui-3.12.2/libegg/eggsmclient-xsmp.c:317:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char error_string_ret[256];
data/libcryptui-3.12.2/libegg/eggsmclient-xsmp.c:869:12:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
      fd = open (state_file_path, O_WRONLY | O_CREAT | O_EXCL, 0644);
data/libcryptui-3.12.2/daemon/seahorse-gpg-op.c:84:44:  [1] (buffer) strlen:
  Does not handle 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 (gpgme_data_write (keydata, output, strlen (output)) == -1)
data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c:59: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 (write (fd, GPG_CONF_HEADER, strlen (GPG_CONF_HEADER)) == -1) {
data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c:70:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
find_config_file (gboolean read, GError **err)
data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c:104:10:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!read)
data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c:205: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).
                t += strlen (HOME_PREFIX);
data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c:359:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                    t = line + strlen (*opt);
data/libcryptui-3.12.2/daemon/seahorse-gpg-options.c:425:25:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                t = n + strlen (options[i]);
data/libcryptui-3.12.2/daemon/seahorse-gpgme-data.c:390: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 ((gchar*)text);
data/libcryptui-3.12.2/daemon/seahorse-gpgme-generate.c:200: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).
    g_return_if_fail (strlen(name) >= 5);
data/libcryptui-3.12.2/daemon/seahorse-gpgme-generate.c:275: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).
    gtk_widget_set_sensitive (widget, name && strlen (g_strstrip (name)) >= 5);
data/libcryptui-3.12.2/daemon/seahorse-gpgme-key-op.c:98: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 (name) < 5)
data/libcryptui-3.12.2/daemon/seahorse-gpgme-key-op.c:129: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 (email != NULL && strlen (email) > 0)
data/libcryptui-3.12.2/daemon/seahorse-gpgme-key-op.c:131:28:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    if (comment != NULL && strlen (comment) > 0)
data/libcryptui-3.12.2/daemon/seahorse-gpgme-source.c:86:28:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    if (passphrase_info && strlen(passphrase_info) < 16) {
data/libcryptui-3.12.2/daemon/seahorse-notification.c:201: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).
    ret = g_markup_parse_context_parse (ctx, outer, strlen (outer), &err);
data/libcryptui-3.12.2/daemon/seahorse-notification.c:511:60:  [1] (buffer) strlen:
  Does not handle 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((ret = g_markup_parse_context_parse (ctx, osummary, strlen (osummary), &err)))
data/libcryptui-3.12.2/daemon/seahorse-notification.c:512:57:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        ret = g_markup_parse_context_parse (ctx, obody, strlen (obody), &err);
data/libcryptui-3.12.2/daemon/seahorse-object.c:255: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/libcryptui-3.12.2/daemon/seahorse-pgp-key.c:388:8:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	len = strlen (keyid);
data/libcryptui-3.12.2/daemon/seahorse-pgp-key.c:421:8:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	len = strlen (keyid);
data/libcryptui-3.12.2/daemon/seahorse-pgp-key.c:600: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).
	n_match = strlen (match);
data/libcryptui-3.12.2/daemon/seahorse-pgp-key.c:605: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).
		n_keyid = strlen (keyid);
data/libcryptui-3.12.2/daemon/seahorse-pgp-subkey.c:383:8:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	len = strlen (raw);
data/libcryptui-3.12.2/daemon/seahorse-service-crypto.c:534:57:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                                      flags, cleartext, strlen(cleartext),
data/libcryptui-3.12.2/daemon/seahorse-service-crypto.c:684:56:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    gerr = gpgme_data_new_from_mem (&plain, cleartext, strlen (cleartext), FALSE);
data/libcryptui-3.12.2/daemon/seahorse-service-crypto.c:730: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).
                                   crypttext, strlen(crypttext),
data/libcryptui-3.12.2/daemon/seahorse-service-crypto.c:866:57:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    gerr = gpgme_data_new_from_mem (&cipher, crypttext, strlen (crypttext), FALSE);
data/libcryptui-3.12.2/daemon/seahorse-service.c:269: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).
	input = g_memory_input_stream_new_from_data (data, strlen (data), NULL);
data/libcryptui-3.12.2/daemon/seahorse-unix-signal.c:64:11:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    gsize read;
data/libcryptui-3.12.2/daemon/seahorse-unix-signal.c:68:44:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
                                          &read, &err)) == G_IO_STATUS_NORMAL) {
data/libcryptui-3.12.2/daemon/seahorse-unix-signal.c:71:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        if (read != 1)
data/libcryptui-3.12.2/daemon/seahorse-util.c:334:11:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    gsize read;
data/libcryptui-3.12.2/daemon/seahorse-util.c:338:53:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    while (g_input_stream_read_all (input, &ch, 1, &read, NULL, NULL) && read == 1) {
data/libcryptui-3.12.2/daemon/seahorse-util.c:347: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).
            copied += strlen (start);
data/libcryptui-3.12.2/daemon/seahorse-util.c:354:53:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    while (g_input_stream_read_all (input, &ch, 1, &read, NULL, NULL) && read == 1) {
data/libcryptui-3.12.2/daemon/seahorse-util.c:434: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).
    int r, l = strlen (s);
data/libcryptui-3.12.2/daemon/seahorse-util.c:535:15:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    t = uri + strlen (uri);
data/libcryptui-3.12.2/daemon/seahorse-util.c:616:11:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    len = strlen (prefix); 
data/libcryptui-3.12.2/daemon/seahorse-util.c:668:11:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    len = strlen (uri);
data/libcryptui-3.12.2/daemon/seahorse-util.c:669:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    ret = g_new0 (gchar, len + strlen(ext) + 16);
data/libcryptui-3.12.2/daemon/seahorse-util.c:687:9:  [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 (ret, ".");
data/libcryptui-3.12.2/daemon/seahorse-util.c:870:19:  [1] (access) umask:
  Ensure that umask is given most restrictive possible setting (e.g., 066 or
  077) (CWE-732).
    mode_t mask = umask (0077);
data/libcryptui-3.12.2/daemon/seahorse-util.c:872:5:  [1] (access) umask:
  Ensure that umask is given most restrictive possible setting (e.g., 066 or
  077) (CWE-732).
    umask (mask);
data/libcryptui-3.12.2/daemon/seahorse-util.c:1187:29:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    uri =  g_strndup (path, strlen (path) - 4);
data/libcryptui-3.12.2/daemon/seahorse-util.c:1503:17:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    n = e = b + strlen (b);
data/libcryptui-3.12.2/libegg/egg-datetime.c:1255: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).
   len1 = strlen (_("AM"));
data/libcryptui-3.12.2/libegg/egg-datetime.c:1256: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).
   len2 = strlen (_("PM"));
data/libcryptui-3.12.2/libegg/egg-datetime.c:1257: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).
   len3 = strlen (scp);
data/libcryptui-3.12.2/libegg/eggsmclient-xsmp.c:1147: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).
      pv.length = strlen (value);
data/libcryptui-3.12.2/libegg/eggsmclient-xsmp.c:1180: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).
      pv.length = strlen (values->pdata[i]);
data/libcryptui-3.12.2/libegg/eggsmclient-xsmp.c:1209: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).
  prop->vals[0].length = strlen (value);

ANALYSIS SUMMARY:

Hits = 66
Lines analyzed = 33414 in approximately 0.90 seconds (37306 lines/second)
Physical Source Lines of Code (SLOC) = 20168
Hits@level = [0]   7 [1]  51 [2]  12 [3]   1 [4]   2 [5]   0
Hits@level+ = [0+]  73 [1+]  66 [2+]  15 [3+]   3 [4+]   2 [5+]   0
Hits/KSLOC@level+ = [0+] 3.6196 [1+] 3.27251 [2+] 0.743752 [3+] 0.14875 [4+] 0.099167 [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.