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/bolt-0.9/boltd/bolt-auth.c
Examining data/bolt-0.9/boltd/bolt-auth.h
Examining data/bolt-0.9/boltd/bolt-bouncer.c
Examining data/bolt-0.9/boltd/bolt-bouncer.h
Examining data/bolt-0.9/boltd/bolt-config.c
Examining data/bolt-0.9/boltd/bolt-config.h
Examining data/bolt-0.9/boltd/bolt-daemon.c
Examining data/bolt-0.9/boltd/bolt-device.c
Examining data/bolt-0.9/boltd/bolt-device.h
Examining data/bolt-0.9/boltd/bolt-domain.c
Examining data/bolt-0.9/boltd/bolt-domain.h
Examining data/bolt-0.9/boltd/bolt-exported.c
Examining data/bolt-0.9/boltd/bolt-exported.h
Examining data/bolt-0.9/boltd/bolt-guard.c
Examining data/bolt-0.9/boltd/bolt-guard.h
Examining data/bolt-0.9/boltd/bolt-journal.c
Examining data/bolt-0.9/boltd/bolt-journal.h
Examining data/bolt-0.9/boltd/bolt-key.c
Examining data/bolt-0.9/boltd/bolt-key.h
Examining data/bolt-0.9/boltd/bolt-log.c
Examining data/bolt-0.9/boltd/bolt-log.h
Examining data/bolt-0.9/boltd/bolt-manager.c
Examining data/bolt-0.9/boltd/bolt-manager.h
Examining data/bolt-0.9/boltd/bolt-power.c
Examining data/bolt-0.9/boltd/bolt-power.h
Examining data/bolt-0.9/boltd/bolt-reaper.c
Examining data/bolt-0.9/boltd/bolt-reaper.h
Examining data/bolt-0.9/boltd/bolt-store.c
Examining data/bolt-0.9/boltd/bolt-store.h
Examining data/bolt-0.9/boltd/bolt-sysfs.c
Examining data/bolt-0.9/boltd/bolt-sysfs.h
Examining data/bolt-0.9/boltd/bolt-udev.c
Examining data/bolt-0.9/boltd/bolt-udev.h
Examining data/bolt-0.9/boltd/bolt-watchdog.c
Examining data/bolt-0.9/boltd/bolt-watchdog.h
Examining data/bolt-0.9/cli/bolt-client.c
Examining data/bolt-0.9/cli/bolt-client.h
Examining data/bolt-0.9/cli/bolt-device.c
Examining data/bolt-0.9/cli/bolt-device.h
Examining data/bolt-0.9/cli/bolt-domain.c
Examining data/bolt-0.9/cli/bolt-domain.h
Examining data/bolt-0.9/cli/bolt-power.c
Examining data/bolt-0.9/cli/bolt-power.h
Examining data/bolt-0.9/cli/bolt-proxy.c
Examining data/bolt-0.9/cli/bolt-proxy.h
Examining data/bolt-0.9/cli/boltctl-authorize.c
Examining data/bolt-0.9/cli/boltctl-cmds.h
Examining data/bolt-0.9/cli/boltctl-config.c
Examining data/bolt-0.9/cli/boltctl-domains.c
Examining data/bolt-0.9/cli/boltctl-enroll.c
Examining data/bolt-0.9/cli/boltctl-forget.c
Examining data/bolt-0.9/cli/boltctl-info.c
Examining data/bolt-0.9/cli/boltctl-list.c
Examining data/bolt-0.9/cli/boltctl-monitor.c
Examining data/bolt-0.9/cli/boltctl-power.c
Examining data/bolt-0.9/cli/boltctl-uidfmt.c
Examining data/bolt-0.9/cli/boltctl-uidfmt.h
Examining data/bolt-0.9/cli/boltctl.c
Examining data/bolt-0.9/cli/boltctl.h
Examining data/bolt-0.9/common/bolt-dbus.c
Examining data/bolt-0.9/common/bolt-dbus.h
Examining data/bolt-0.9/common/bolt-enums.c
Examining data/bolt-0.9/common/bolt-enums.h
Examining data/bolt-0.9/common/bolt-error.c
Examining data/bolt-0.9/common/bolt-error.h
Examining data/bolt-0.9/common/bolt-fs.c
Examining data/bolt-0.9/common/bolt-fs.h
Examining data/bolt-0.9/common/bolt-glue.c
Examining data/bolt-0.9/common/bolt-glue.h
Examining data/bolt-0.9/common/bolt-io.c
Examining data/bolt-0.9/common/bolt-io.h
Examining data/bolt-0.9/common/bolt-list.h
Examining data/bolt-0.9/common/bolt-macros.h
Examining data/bolt-0.9/common/bolt-names.c
Examining data/bolt-0.9/common/bolt-names.h
Examining data/bolt-0.9/common/bolt-rnd.c
Examining data/bolt-0.9/common/bolt-rnd.h
Examining data/bolt-0.9/common/bolt-str.c
Examining data/bolt-0.9/common/bolt-str.h
Examining data/bolt-0.9/common/bolt-term.c
Examining data/bolt-0.9/common/bolt-term.h
Examining data/bolt-0.9/common/bolt-time.c
Examining data/bolt-0.9/common/bolt-time.h
Examining data/bolt-0.9/common/bolt-unix.c
Examining data/bolt-0.9/common/bolt-unix.h
Examining data/bolt-0.9/common/bolt-wire.c
Examining data/bolt-0.9/common/bolt-wire.h
Examining data/bolt-0.9/common/fix-coverity.h
Examining data/bolt-0.9/contrib/cov-model.c
Examining data/bolt-0.9/tests/bolt-test.c
Examining data/bolt-0.9/tests/bolt-test.h
Examining data/bolt-0.9/tests/mock-sysfs.c
Examining data/bolt-0.9/tests/mock-sysfs.h
Examining data/bolt-0.9/tests/test-auth.c
Examining data/bolt-0.9/tests/test-common.c
Examining data/bolt-0.9/tests/test-device.c
Examining data/bolt-0.9/tests/test-enums.h
Examining data/bolt-0.9/tests/test-exported.c
Examining data/bolt-0.9/tests/test-glue.c
Examining data/bolt-0.9/tests/test-guard.c
Examining data/bolt-0.9/tests/test-journal.c
Examining data/bolt-0.9/tests/test-logging.c
Examining data/bolt-0.9/tests/test-power.c
Examining data/bolt-0.9/tests/test-reaper.c
Examining data/bolt-0.9/tests/test-self.c
Examining data/bolt-0.9/tests/test-store.c
Examining data/bolt-0.9/tests/test-sysfs.c
Examining data/bolt-0.9/tests/test-udev.c
Examining data/bolt-0.9/tests/test-unix.c
Examining data/bolt-0.9/tests/test-watchdog.c
Examining data/bolt-0.9/tests/test-wire.c

FINAL RESULTS:

data/bolt-0.9/tests/mock-sysfs.c:901:7:  [5] (race) chmod:
  This accepts filename arguments; if an attacker can move those files, a
  race condition results. (CWE-362). Use fchmod( ) instead.
  r = chmod (path, 0644);
data/bolt-0.9/tests/mock-sysfs.c:922:11:  [5] (race) chmod:
  This accepts filename arguments; if an attacker can move those files, a
  race condition results. (CWE-362). Use fchmod( ) instead.
      r = chmod (path, 0000);
data/bolt-0.9/tests/test-common.c:692:7:  [5] (race) chmod:
  This accepts filename arguments; if an attacker can move those files, a
  race condition results. (CWE-362). Use fchmod( ) instead.
  r = chmod (rdonly, 0400);
data/bolt-0.9/tests/test-common.c:1143:7:  [5] (race) chmod:
  This accepts filename arguments; if an attacker can move those files, a
  race condition results. (CWE-362). Use fchmod( ) instead.
  r = chmod (tt->path, st.st_mode & (~00222));
data/bolt-0.9/tests/test-common.c:1152:7:  [5] (race) chmod:
  This accepts filename arguments; if an attacker can move those files, a
  race condition results. (CWE-362). Use fchmod( ) instead.
  r = chmod (tt->path, st.st_mode);
data/bolt-0.9/common/bolt-rnd.c:122:19:  [3] (random) g_random_int:
  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.
      guint32 r = g_random_int ();
data/bolt-0.9/common/bolt-rnd.c:128:19:  [3] (random) g_random_int:
  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.
      guint32 r = g_random_int ();
data/bolt-0.9/common/bolt-str.c:234:17:  [3] (random) g_random_int_range:
  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.
      gsize k = g_random_int_range (i, n);
data/bolt-0.9/boltd/bolt-daemon.c:82: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     session_id[33];
data/bolt-0.9/boltd/bolt-key.c:44: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     data[BOLT_KEY_CHARS + 1];
data/bolt-0.9/boltd/bolt-key.c:150: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 data[BOLT_KEY_BYTES];
data/bolt-0.9/boltd/bolt-log.c:379: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 message[1024] = {0, };
data/bolt-0.9/boltd/bolt-log.c:476: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 the_time[TIME_MAXFMT];
data/bolt-0.9/boltd/bolt-log.c:500:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char name[64];
data/bolt-0.9/boltd/bolt-log.c:509:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char ident[64];
data/bolt-0.9/boltd/bolt-log.c:581:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char name[64];
data/bolt-0.9/boltd/bolt-log.c:590:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char ident[64];
data/bolt-0.9/boltd/bolt-log.c:627: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 message[2048];
data/bolt-0.9/boltd/bolt-log.c:726:18:  [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.
bolt_log_gen_id (char id[BOLT_LOG_MSG_IDLEN])
data/bolt-0.9/boltd/bolt-log.c:729:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const char ch[16] = "0123456789abcdef";
data/bolt-0.9/boltd/bolt-log.h:148:37:  [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.
void               bolt_log_gen_id (char id[BOLT_LOG_MSG_IDLEN]);
data/bolt-0.9/cli/boltctl.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 buf[256];
data/bolt-0.9/common/bolt-io.c:405: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 line[LINE_MAX], *l;
data/bolt-0.9/common/bolt-rnd.c:123: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 (ptr + i, &r, sizeof (guint32));
data/bolt-0.9/common/bolt-rnd.c:129: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 (ptr + k, &r, l);
data/bolt-0.9/common/bolt-term.c:56:14:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
static const char *const ansi_glphys[BOLT_GLYPH_LAST] = {
data/bolt-0.9/common/bolt-term.c:69:14:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
static const char *const utf8_glphys[BOLT_GLYPH_LAST] = {
data/bolt-0.9/common/bolt-unix.c:41: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 path[256];
data/bolt-0.9/common/bolt-unix.c:93: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 (sau.sun_path + 1, env + 1, len);
data/bolt-0.9/common/bolt-unix.c:99: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 (sau.sun_path, env, len + 1);
data/bolt-0.9/tests/bolt-test.c:167: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 data[4096];
data/bolt-0.9/tests/mock-sysfs.c:239:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *props[25] = {NULL, };
data/bolt-0.9/tests/mock-sysfs.c:474:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *props[7] = {NULL, };
data/bolt-0.9/tests/test-common.c:540: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 buf[RNG_COUNT] = { 0, };
data/bolt-0.9/tests/test-common.c:582: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 buf[10] = {0, };
data/bolt-0.9/tests/test-common.c:673: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 buffer[256] = {0, };
data/bolt-0.9/tests/test-common.c:979: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 buf[4096];
data/bolt-0.9/tests/test-common.c:1291: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 buf[256] = {0, };
data/bolt-0.9/tests/test-logging.c:125:32:  [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.
      const char *val = (const char *) fields[i].value;
data/bolt-0.9/tests/test-logging.c:285: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 message[2048] = {0, };
data/bolt-0.9/tests/test-store.c:666:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *acl[16] = {
data/bolt-0.9/tests/test-sysfs.c:309:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *ids[5];
data/bolt-0.9/boltd/bolt-device.c:1002: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).
  else if (strlen (nick) > 255)
data/bolt-0.9/boltd/bolt-domain.c:597:35:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      const char *ptr = sysname + strlen ("domain");
data/bolt-0.9/boltd/bolt-domain.c:957:11:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      if (strlen (*iter))
data/bolt-0.9/boltd/bolt-journal.c:277:7:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  l = strlen (data);
data/bolt-0.9/boltd/bolt-log.c:534:11:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      if (strlen (message) == 0)
data/bolt-0.9/boltd/bolt-log.c:614:11:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
      if (strlen (m) == 0)
data/bolt-0.9/boltd/bolt-manager.c:1099:18:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  start = path + strlen ("/sys");
data/bolt-0.9/boltd/bolt-manager.c:1173: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).
      name += strlen (vendor);
data/bolt-0.9/boltd/bolt-sysfs.c:219: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).
  return strlen (str);
data/bolt-0.9/cli/boltctl.c:399: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).
    spacing = MAX (spacing, strlen (c->name));
data/bolt-0.9/cli/boltctl.c:405: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).
      int space = spacing - strlen (c->name);
data/bolt-0.9/common/bolt-io.c:134:11:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      n = read (fd, data, nbytes);
data/bolt-0.9/common/bolt-io.c:179: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).
    nbytes = strlen (data);
data/bolt-0.9/common/bolt-io.c:547: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).
  have_len = strlen (have);
data/bolt-0.9/common/bolt-io.c:548: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).
  want_len = strlen (want);
data/bolt-0.9/common/bolt-str.c:51: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).
  bolt_erase_n (str, strlen (str));
data/bolt-0.9/common/bolt-str.c:286:7:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  l = strlen (str);
data/bolt-0.9/common/bolt-str.c:308: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 (str) == 0)
data/bolt-0.9/common/bolt-unix.c:76: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 (env);
data/bolt-0.9/common/bolt-unix.c:113: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).
  iovec.iov_len = strlen (state);
data/bolt-0.9/tests/bolt-test.c:125:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy (sau.sun_path, ns->socket_path, sizeof (sau.sun_path) - 1);
data/bolt-0.9/tests/bolt-test.c:129:7:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    + strlen (sau.sun_path)
data/bolt-0.9/tests/mock-sysfs.c:896: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).
  n = strlen (data);
data/bolt-0.9/tests/test-common.c:357:18:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  g_assert_true (strlen (error->message) > 0);
data/bolt-0.9/tests/test-common.c:954:21:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  g_assert_cmpuint (strlen (ref), ==, len);
data/bolt-0.9/tests/test-common.c:1314: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).
  n = strlen (d1);
data/bolt-0.9/tests/test-common.c:1318:21:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  g_assert_cmpuint (strlen (d1), ==, 0);

ANALYSIS SUMMARY:

Hits = 69
Lines analyzed = 37944 in approximately 0.74 seconds (51204 lines/second)
Physical Source Lines of Code (SLOC) = 27043
Hits@level = [0]   4 [1]  27 [2]  34 [3]   3 [4]   0 [5]   5
Hits@level+ = [0+]  73 [1+]  69 [2+]  42 [3+]   8 [4+]   5 [5+]   5
Hits/KSLOC@level+ = [0+] 2.6994 [1+] 2.55149 [2+] 1.55308 [3+] 0.295825 [4+] 0.184891 [5+] 0.184891
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.