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/httest-2.4.23/include/htt/dso.h
Examining data/httest-2.4.23/src/annotation_module.c
Examining data/httest-2.4.23/src/appender.c
Examining data/httest-2.4.23/src/appender.h
Examining data/httest-2.4.23/src/appender_simple.c
Examining data/httest-2.4.23/src/appender_simple.h
Examining data/httest-2.4.23/src/appender_std.c
Examining data/httest-2.4.23/src/appender_std.h
Examining data/httest-2.4.23/src/binary_module.c
Examining data/httest-2.4.23/src/body.h
Examining data/httest-2.4.23/src/charset_module.c
Examining data/httest-2.4.23/src/coder_module.c
Examining data/httest-2.4.23/src/conf.c
Examining data/httest-2.4.23/src/conf.h
Examining data/httest-2.4.23/src/date_module.c
Examining data/httest-2.4.23/src/dbg_module.c
Examining data/httest-2.4.23/src/defines.h
Examining data/httest-2.4.23/src/dso_module.c
Examining data/httest-2.4.23/src/eval.c
Examining data/httest-2.4.23/src/eval.h
Examining data/httest-2.4.23/src/file.c
Examining data/httest-2.4.23/src/file.h
Examining data/httest-2.4.23/src/foo.c
Examining data/httest-2.4.23/src/h2_module.c
Examining data/httest-2.4.23/src/html_module.c
Examining data/httest-2.4.23/src/htntlm.c
Examining data/httest-2.4.23/src/htproxy.c
Examining data/httest-2.4.23/src/htremote.c
Examining data/httest-2.4.23/src/js_module.c
Examining data/httest-2.4.23/src/logger.c
Examining data/httest-2.4.23/src/logger.h
Examining data/httest-2.4.23/src/lua_crypto.c
Examining data/httest-2.4.23/src/lua_crypto.h
Examining data/httest-2.4.23/src/lua_module.c
Examining data/httest-2.4.23/src/math_module.c
Examining data/httest-2.4.23/src/module.c
Examining data/httest-2.4.23/src/modules.c
Examining data/httest-2.4.23/src/perf_module.c
Examining data/httest-2.4.23/src/regex.h
Examining data/httest-2.4.23/src/replacer.c
Examining data/httest-2.4.23/src/replacer.h
Examining data/httest-2.4.23/src/skeleton_module.c
Examining data/httest-2.4.23/src/socket.c
Examining data/httest-2.4.23/src/socket.h
Examining data/httest-2.4.23/src/socks_module.c
Examining data/httest-2.4.23/src/ssl.c
Examining data/httest-2.4.23/src/ssl.h
Examining data/httest-2.4.23/src/ssl_module.c
Examining data/httest-2.4.23/src/ssl_module.h
Examining data/httest-2.4.23/src/store.c
Examining data/httest-2.4.23/src/store.h
Examining data/httest-2.4.23/src/sys_module.c
Examining data/httest-2.4.23/src/tcp_module.c
Examining data/httest-2.4.23/src/tcp_module.h
Examining data/httest-2.4.23/src/transport.c
Examining data/httest-2.4.23/src/transport.h
Examining data/httest-2.4.23/src/udp_module.c
Examining data/httest-2.4.23/src/util.c
Examining data/httest-2.4.23/src/util.h
Examining data/httest-2.4.23/src/websocket_module.c
Examining data/httest-2.4.23/src/worker.h
Examining data/httest-2.4.23/src/xml_module.c
Examining data/httest-2.4.23/src/body.c
Examining data/httest-2.4.23/src/httest.c
Examining data/httest-2.4.23/src/module.h
Examining data/httest-2.4.23/src/regex.c
Examining data/httest-2.4.23/src/worker.c
Examining data/httest-2.4.23/test/test_file.c
Examining data/httest-2.4.23/test/test_store.c

FINAL RESULTS:

data/httest-2.4.23/src/htntlm.c:1684:5:  [4] (buffer) sscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
    sscanf(c_chl_str, FMT_LLX, &hook->client_challenge);
data/httest-2.4.23/src/htntlm.c:1688:5:  [4] (buffer) sscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
    sscanf(chl_str, FMT_LLX, &hook->challenge);
data/httest-2.4.23/src/htntlm.c:1692:5:  [4] (buffer) sscanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
    sscanf(chl_str, FMT_LLX, &hook->context);
data/httest-2.4.23/src/js_module.c:308:7:  [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(buf, e[i].val);
data/httest-2.4.23/src/lua_crypto.c:212:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(s, "%s %p", LUACRYPTO_EVP, (void *)c);
data/httest-2.4.23/src/lua_crypto.c:348:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(s, "%s %p", LUACRYPTO_HMAC, (void *)c);
data/httest-2.4.23/src/htntlm.c:1561:3:  [3] (random) srand:
  This function is not sufficiently random for security-related functions
  such as key and nonce creation (CWE-327). Use a more secure technique for
  acquiring random values.
  srand(apr_time_now()); 
data/httest-2.4.23/src/htproxy.c:1270:3:  [3] (random) srand:
  This function is not sufficiently random for security-related functions
  such as key and nonce creation (CWE-327). Use a more secure technique for
  acquiring random values.
  srand(apr_time_now()); 
data/httest-2.4.23/src/httest.c:2630:3:  [3] (random) srand:
  This function is not sufficiently random for security-related functions
  such as key and nonce creation (CWE-327). Use a more secure technique for
  acquiring random values.
  srand(apr_time_now()); 
data/httest-2.4.23/src/ssl.c:417:3:  [3] (random) srand:
  This function is not sufficiently random for security-related functions
  such as key and nonce creation (CWE-327). Use a more secure technique for
  acquiring random values.
  srand((unsigned int) time(NULL));
data/httest-2.4.23/src/binary_module.c:190: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 hex[3];
data/httest-2.4.23/src/body.c:132: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(*body, worker, sizeof(worker_t));
data/httest-2.4.23/src/coder_module.c:307:7:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
      sprintf(&inplace[d], "\\x%02x", string[i]);
data/httest-2.4.23/src/dso_module.c:150: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 buf[BLOCK_MAX+1];
data/httest-2.4.23/src/file.c:52: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[BLOCK_MAX + 1];
data/httest-2.4.23/src/foo.c:22: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(buf, str, *len);
data/httest-2.4.23/src/foo.c:30: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 str[1024];
data/httest-2.4.23/src/foo.c:32:3:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
  sprintf(str, "GET /%d HTTP/1.1 \r\n\r\n", i);
data/httest-2.4.23/src/foo.c:34: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(buf, str, *len);
data/httest-2.4.23/src/h2_module.c:201: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(*body, worker, sizeof(worker_t));
data/httest-2.4.23/src/h2_module.c:664:9:  [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(opaque_data, frame->ping.opaque_data, 8);
data/httest-2.4.23/src/h2_module.c:779: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(text, frame->ping.opaque_data, 8);
data/httest-2.4.23/src/h2_module.c:899: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(&stream->data_in[stream->data_in_read], data, len);
data/httest-2.4.23/src/h2_module.c:1106:5:  [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(buf, &stream->data[stream->data_sent], len);
data/httest-2.4.23/src/h2_module.c:1109:5:  [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(buf, &stream->data[stream->data_sent], length);
data/httest-2.4.23/src/h2_module.c:1209:9:  [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(&stream->data[data_len], line.buf, line.len);
data/httest-2.4.23/src/html_module.c:115:5:  [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(sax, &htmlDefaultSAXHandler, sizeof(xmlSAXHandlerV1));
data/httest-2.4.23/src/htntlm.c:483:5:  [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(dst, src, len);
data/httest-2.4.23/src/htntlm.c:631:12:  [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.
  unsigned char lmbuffer[21];
data/httest-2.4.23/src/htntlm.c:655:12:  [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.
  unsigned char ntlmbuffer[21];
data/httest-2.4.23/src/htntlm.c:705:12:  [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.
  unsigned char ntlm_hash[16];
data/httest-2.4.23/src/htntlm.c:706:12:  [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.
  unsigned char ntlm2_hash[16];
data/httest-2.4.23/src/htntlm.c:718:12:  [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.
  unsigned char challenges[16];
data/httest-2.4.23/src/htntlm.c:736: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(buf, uuser, uuser_len);
data/httest-2.4.23/src/htntlm.c:737: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(&buf[uuser_len], udomain, udomain_len);
data/httest-2.4.23/src/htntlm.c:754: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(challenges, &chl, 8);
data/httest-2.4.23/src/htntlm.c:755: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(&challenges[8], &hook->client_challenge, 8);
data/httest-2.4.23/src/htntlm.c:763: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(&lm2_hash[16], &hook->client_challenge, 8);
data/httest-2.4.23/src/htntlm.c:784:12:  [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.
  unsigned char ntlm_hash[16];
data/httest-2.4.23/src/htntlm.c:785:12:  [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.
  unsigned char ntlm2_hash[16];
data/httest-2.4.23/src/htntlm.c:786:12:  [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.
  unsigned char blob_hash[16];
data/httest-2.4.23/src/htntlm.c:813: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(part, uuser, uuser_len);
data/httest-2.4.23/src/htntlm.c:814: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(&part[uuser_len], udomain, udomain_len);
data/httest-2.4.23/src/htntlm.c:839:5:  [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(&blob[16], &hook->client_challenge, 8);
data/httest-2.4.23/src/htntlm.c:842:5:  [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(&blob[28], target_info, ti_len);
data/httest-2.4.23/src/htntlm.c:848:5:  [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(buf, &chl, 8);
data/httest-2.4.23/src/htntlm.c:850: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(&buf[8], blob, 28 + ti_len + 4);
data/httest-2.4.23/src/htntlm.c:859: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(buf, blob_hash, 16);
data/httest-2.4.23/src/htntlm.c:860: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(&buf[16], blob, 28 + ti_len + 4);
data/httest-2.4.23/src/htntlm.c:875: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 challenges[16];
data/httest-2.4.23/src/htntlm.c:876:12:  [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.
  unsigned char ntlm2_hash[16];
data/httest-2.4.23/src/htntlm.c:877:12:  [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.
  unsigned char ntlm_hash[21];
data/httest-2.4.23/src/htntlm.c:885: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(challenges, &chl, 8);
data/httest-2.4.23/src/htntlm.c:886: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(&challenges[8], &hook->client_challenge, 8);
data/httest-2.4.23/src/htntlm.c:1031:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy((char *)msg, "NTLMSSP");
data/httest-2.4.23/src/htntlm.c:1044:5:  [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(&msg[32 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1055:5:  [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(&msg[32 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1108:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy((char *)msg, "NTLMSSP");
data/httest-2.4.23/src/htntlm.c:1117:5:  [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(&msg[48 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1140: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(&msg[52 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1147: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(&msg[52 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1154: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(&msg[52 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1161: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(&msg[52 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1219:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy((char *)msg, "NTLMSSP");
data/httest-2.4.23/src/htntlm.c:1229:5:  [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(&msg[64 + offset], hook->lm.hash, len16);
data/httest-2.4.23/src/htntlm.c:1238:5:  [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(&msg[64 + offset], hook->ntlm.hash, len16);
data/httest-2.4.23/src/htntlm.c:1247:5:  [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(&msg[64 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1256:5:  [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(&msg[64 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1265:5:  [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(&msg[64 + offset], tmp, len16);
data/httest-2.4.23/src/htntlm.c:1274:5:  [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(&msg[64 + offset], hook->session_key, len16);
data/httest-2.4.23/src/htntlm.c:1431:5:  [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(hook->lm.hash, &msg[offset], len);
data/httest-2.4.23/src/htntlm.c:1439:5:  [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(hook->ntlm.hash, &msg[offset], len);
data/httest-2.4.23/src/htntlm.c:1716:5:  [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(hook->lm.hash, &hook->client_challenge, 8);
data/httest-2.4.23/src/htproxy.c:1161: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(this, self, sizeof(*this));
data/httest-2.4.23/src/htproxy.c:1205:5:  [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(this, self, sizeof(*this));
data/httest-2.4.23/src/htremote.c:144: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[512+1];
data/httest-2.4.23/src/htremote.c:181: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[512];
data/httest-2.4.23/src/httest.c:2626: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 time_str[256];
data/httest-2.4.23/src/lua_crypto.c:108: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[120];
data/httest-2.4.23/src/lua_crypto.c:180:12:  [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.
  unsigned char digest[EVP_MAX_MD_SIZE];
data/httest-2.4.23/src/lua_crypto.c:201:7:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
      sprintf(hex + 2*i, "%02x", digest[i]);
data/httest-2.4.23/src/lua_crypto.c:211: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 s[64];
data/httest-2.4.23/src/lua_crypto.c:228:12:  [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.
  unsigned char digest[EVP_MAX_MD_SIZE];
data/httest-2.4.23/src/lua_crypto.c:249:7:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
      sprintf(hex + 2*i, "%02x", digest[i]);
data/httest-2.4.23/src/lua_crypto.c:317:12:  [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.
  unsigned char digest[EVP_MAX_MD_SIZE];
data/httest-2.4.23/src/lua_crypto.c:336:7:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
      sprintf(hex + 2*i, "%02x", digest[i]);
data/httest-2.4.23/src/lua_crypto.c:347: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 s[64];
data/httest-2.4.23/src/lua_crypto.c:361:12:  [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.
  unsigned char digest[EVP_MAX_MD_SIZE];
data/httest-2.4.23/src/lua_crypto.c:386:7:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
      sprintf(hex + 2*i, "%02x", digest[i]);
data/httest-2.4.23/src/lua_crypto.c:400:12:  [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.
  unsigned char tmp[256], *buf = tmp;
data/httest-2.4.23/src/lua_crypto.c:441: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 tmp[256];
data/httest-2.4.23/src/lua_crypto.c:456: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 tmp[256];
data/httest-2.4.23/src/lua_crypto.c:720: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 s[1024];
data/httest-2.4.23/src/lua_module.c:198: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(call, worker, sizeof(*call));
data/httest-2.4.23/src/lua_module.c:201: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(buffer, string, len);
data/httest-2.4.23/src/socket.c:103:5:  [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((*sockreader)->buf, rest, len);
data/httest-2.4.23/src/socket.c:258: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(&block[i], &self->buf[self->i], min_len);
data/httest-2.4.23/src/socket.c:265:5:  [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(&block[i], &self->buf[self->i], min_len);
data/httest-2.4.23/src/socket.c:592: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(*buf, read, size);
data/httest-2.4.23/src/socket.c:593: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(&(*buf)[size], read2, size2);
data/httest-2.4.23/src/socks_module.c:75:12:  [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.
  unsigned char buf[10];
data/httest-2.4.23/src/socks_module.c:115:21:  [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).
      ip.digit[i] = atoi(digit);
data/httest-2.4.23/src/socks_module.c:144:15:  [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).
  port.port = atoi(portname);
data/httest-2.4.23/src/ssl.c:182:12:  [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.
  unsigned char stackdata[256];
data/httest-2.4.23/src/ssl.c:256:2:  [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/httest-2.4.23/src/ssl.c:379: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 unmapped[540];
data/httest-2.4.23/src/ssl.c:415: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[50];
data/httest-2.4.23/src/ssl.c:420:7:  [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).
  i = atoi(buf) + 1;
data/httest-2.4.23/src/ssl.c:583:15:  [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).
        idx = atoi(ptr + 1);
data/httest-2.4.23/src/ssl.c:798: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/httest-2.4.23/src/ssl_module.c:1736:5:  [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(clone_config, config, sizeof(*clone_config)); 
data/httest-2.4.23/src/util.c:355: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 xstr[5];
data/httest-2.4.23/src/websocket_module.c:98: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 hex[3];
data/httest-2.4.23/src/worker.c:398: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[BLOCK_MAX];
data/httest-2.4.23/src/worker.c:1372:5:  [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(call, worker, sizeof(*call));
data/httest-2.4.23/src/worker.c:1391:5:  [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(worker, call, sizeof(*worker));
data/httest-2.4.23/src/worker.h:62: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 peek[32];
data/httest-2.4.23/include/htt/dso.h:70:10:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  read_f read; 
data/httest-2.4.23/src/appender_simple.c:107: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(buf);
data/httest-2.4.23/src/appender_std.c:160: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(buf);
data/httest-2.4.23/src/binary_module.c:152: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(line->buf);
data/httest-2.4.23/src/body.c:95: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(commands[k].name);
data/httest-2.4.23/src/body.c:96:16:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    if (len <= strlen(line)
data/httest-2.4.23/src/body.c:129: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).
  end_len = strlen(end);
data/httest-2.4.23/src/body.c:148: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).
    if (ends == 1 && strlen(line) >= end_len && strncmp(line, end, end_len) == 0) {
data/httest-2.4.23/src/body.c:151: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).
    else if (strlen(line) >= end_len && strncmp(line, end, end_len) == 0) {
data/httest-2.4.23/src/body.c:158: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(line) < end_len || strncmp(line, end, end_len) != 0) {
data/httest-2.4.23/src/body.c:203: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).
  end_len = strlen(end);
data/httest-2.4.23/src/body.c:205: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).
  kind_len = strlen(kind);
data/httest-2.4.23/src/body.c:207: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).
  my_else_len = strlen(kind);
data/httest-2.4.23/src/body.c:214: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(line) >= kind_len && strncmp(line, kind, kind_len) == 0) {
data/httest-2.4.23/src/body.c:219: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).
    if (ends == 1 && strlen(line) >= my_else_len && strncmp(line, my_else, my_else_len) == 0) {
data/httest-2.4.23/src/body.c:226: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).
    else if (strlen(line) >= end_len && strncmp(line, end, end_len) == 0) {
data/httest-2.4.23/src/body.c:262: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(copy);
data/httest-2.4.23/src/body.c:313: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).
      len = strlen(left);
data/httest-2.4.23/src/body.c:751:41:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  if (htt_regexec(compiled, status_str, strlen(status_str), 0, NULL, 0) != 0) {
data/httest-2.4.23/src/charset_module.c:61: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).
  inbuf->len = strlen(string);
data/httest-2.4.23/src/charset_module.c:111: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).
  inbytes = strlen(string);
data/httest-2.4.23/src/coder_module.c:82: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((const char *)string);
data/httest-2.4.23/src/coder_module.c:98:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	  strncpy((char *)&result[j], apr_psprintf(ptmp, "%%%2X", string[i]), 3);
data/httest-2.4.23/src/coder_module.c:141: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(string);
data/httest-2.4.23/src/coder_module.c:199: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(string);
data/httest-2.4.23/src/coder_module.c:245:31:  [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 = apr_base64_encode_len(strlen(string));
data/httest-2.4.23/src/coder_module.c:247: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).
  apr_base64_encode(base64, string, strlen(string));
data/httest-2.4.23/src/coder_module.c:284: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(string);
data/httest-2.4.23/src/dso_module.c:102:25:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  return transport_dso->read(transport_dso->custom_handle(), buf, size);
data/httest-2.4.23/src/dso_module.c:153: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).
      worker_log_buf(worker, LOG_ERR, '+', buf, strlen(buf));
data/httest-2.4.23/src/eval.c:560: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).
  hook->len = strlen(line);
data/httest-2.4.23/src/file.c:204:9:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  char *read;
data/httest-2.4.23/src/file.c:219:41:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    status = bufreader_read_block(self, read, &block);
data/httest-2.4.23/src/file.c:221:34:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      b = apr_bucket_pool_create(read, block, self->pool, self->alloc);
data/httest-2.4.23/src/foo.c:21:10:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  *len = strlen(str);
data/httest-2.4.23/src/foo.c:33:10:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  *len = strlen(str);
data/httest-2.4.23/src/h2_module.c:199: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).
  end_len = strlen(end);
data/httest-2.4.23/src/h2_module.c:280:34:  [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).
      func(worker, copy, header, strlen(header));
data/httest-2.4.23/src/h2_module.c:1196:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        line.len = strlen(line.buf);
data/httest-2.4.23/src/h2_module.c:1203:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        line.len = strlen(line.buf);
data/httest-2.4.23/src/h2_module.c:1205:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        line.len = strlen(line.buf);
data/httest-2.4.23/src/h2_module.c:1346:54:  [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).
  nghttp2_nv meth_nv = MAKE_NV(":method", 7, method, strlen(method)); 
data/httest-2.4.23/src/h2_module.c:1347:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  nghttp2_nv path_nv = MAKE_NV(":path", 5, path, strlen(path));
data/httest-2.4.23/src/h2_module.c:1349:68:  [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).
  nghttp2_nv auth_nv = MAKE_NV(":authority", 10, sconf->authority, strlen(sconf->authority));
data/httest-2.4.23/src/h2_module.c:1364: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).
    nghttp2_nv hdr_nv = MAKE_NV(name, strlen(name), val, strlen(val));
data/httest-2.4.23/src/h2_module.c:1364:58:  [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).
    nghttp2_nv hdr_nv = MAKE_NV(name, strlen(name), val, strlen(val));
data/httest-2.4.23/src/h2_module.c:1469: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).
          data ? strlen(data) : 0) != 0) {
data/httest-2.4.23/src/h2_module.c:1552: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).
  for (; p + strlen(keyStr) <= end; p += *p + 1) {
data/httest-2.4.23/src/h2_module.c:1553: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 (strncmp(p, keyStr, strlen(keyStr)) == 0) {
data/httest-2.4.23/src/htntlm.c:413: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(src);
data/httest-2.4.23/src/htntlm.c:464: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).
    return strlen(src);
data/httest-2.4.23/src/htntlm.c:1021: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).
    len += strlen(hook->domain);
data/httest-2.4.23/src/htntlm.c:1025: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).
    len += strlen(hook->workstation);
data/httest-2.4.23/src/htntlm.c:1040: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).
    len16 = strlen(hook->domain);
data/httest-2.4.23/src/htntlm.c:1051: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).
    len16 = strlen(hook->workstation);
data/httest-2.4.23/src/htntlm.c:1095: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).
    tlen16 += 4 + strlen(hook->dns_server);
data/httest-2.4.23/src/htntlm.c:1213: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).
    len += strlen(hook->session_key);
data/httest-2.4.23/src/htntlm.c:1270: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).
    len16 = strlen(hook->session_key);
data/httest-2.4.23/src/htproxy.c:662: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).
	if ((status = worker_socket_send(worker, line, strlen(line))) != APR_SUCCESS) {
data/httest-2.4.23/src/htproxy.c:718:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    if ((htt_regexec(self->url_filter_regex, url, strlen(url), 0, NULL, 0) == 0)) {
data/httest-2.4.23/src/httest.c:662: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(commands[k].name);
data/httest-2.4.23/src/httest.c:663:16:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    if (len <= strlen(line)
data/httest-2.4.23/src/httest.c:729: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).
          j += strlen(command->name);
data/httest-2.4.23/src/httest.c:737: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).
          j += strlen(command->name);
data/httest-2.4.23/src/httest.c:2181: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).
        if ((strlen(line) >= 3 && strncmp(line, "END", 3) == 0)) { 
data/httest-2.4.23/src/httest.c:2208: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).
	  i += strlen(command->name);
data/httest-2.4.23/src/js_module.c:283: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).
    gconf->length += strlen((*line)) + 1;
data/httest-2.4.23/src/js_module.c:309: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).
      buf += strlen(e[i].val);
data/httest-2.4.23/src/js_module.c:354: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).
  wconf->length = strlen(buf);
data/httest-2.4.23/src/logger.c:198: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).
                 strlen(tmp));
data/httest-2.4.23/src/logger.c:238: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).
      len = strlen(buf);
data/httest-2.4.23/src/lua_crypto.c:171: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).
  EVP_DigestUpdate(c, s, strlen(s));
data/httest-2.4.23/src/lua_crypto.c:187: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).
    EVP_DigestUpdate(c, s, strlen(s));
data/httest-2.4.23/src/lua_crypto.c:240: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).
  EVP_DigestUpdate(c, s, strlen(s));
data/httest-2.4.23/src/lua_crypto.c:287: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).
  HMAC_Init_ex(c, k, strlen(k), type, NULL);
data/httest-2.4.23/src/lua_crypto.c:309: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).
  HMAC_Update(c, (unsigned char *)s, strlen(s));
data/httest-2.4.23/src/lua_crypto.c:325: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).
    HMAC_Update(c, (unsigned char *)s, strlen(s));
data/httest-2.4.23/src/lua_crypto.c:376: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).
  HMAC_Init_ex(&c, k, strlen(k), type, NULL);
data/httest-2.4.23/src/lua_crypto.c:377: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).
  HMAC_Update(&c, (unsigned char *)s, strlen(s));
data/httest-2.4.23/src/lua_module.c:137: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).
      *size = strlen(line);
data/httest-2.4.23/src/perf_module.c:220:31:  [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).
    wconf->stat.recv_bytes += strlen(line) + 2;
data/httest-2.4.23/src/perf_module.c:245:31:  [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).
    wconf->stat.recv_bytes += strlen(line) + 2;
data/httest-2.4.23/src/perf_module.c:515: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).
  transport_write(host->socket->transport, tmp, strlen(tmp));
data/httest-2.4.23/src/socket.c:175:20:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  apr_size_t len = strlen(line);
data/httest-2.4.23/src/socket.c:310:9:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  char *read;
data/httest-2.4.23/src/socket.c:324:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  sockreader_read_block(self, read, &len);
data/httest-2.4.23/src/socket.c:325:10:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  *buf = read;
data/httest-2.4.23/src/socket.c:385:42:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	  status = sockreader_read_block(self, &read[chunk_len], 
data/httest-2.4.23/src/socket.c:394:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	b = apr_bucket_pool_create(read, chunk_len, self->pool, 
data/httest-2.4.23/src/socket.c:469:9:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  char *read;
data/httest-2.4.23/src/socket.c:504:44:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      status = sockreader_read_block(self, read, &block);
data/httest-2.4.23/src/socket.c:507:34:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      b = apr_bucket_pool_create(read, block, self->pool, self->alloc);
data/httest-2.4.23/src/socket.c:541:9:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  char *read;
data/httest-2.4.23/src/socket.c:583:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  sockreader_read_block(self, read, &size);
data/httest-2.4.23/src/socket.c:592:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      memcpy(*buf, read, size);
data/httest-2.4.23/src/socket.c:599:12:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    *buf = read;
data/httest-2.4.23/src/socks_module.c:133: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).
    buf[4] = strlen(hostname);
data/httest-2.4.23/src/ssl.c:514: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).
    else if (strlen(var) > 5 && strcEQn(var, "S_DN_", 5)) {
data/httest-2.4.23/src/ssl.c:524: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).
    else if (strlen(var) > 5 && strcEQn(var, "I_DN_", 5)) {
data/httest-2.4.23/src/ssl.c:582: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).
    if (ptr != NULL && strspn(ptr + 1, "0123456789") == strlen(ptr + 1)) {
data/httest-2.4.23/src/ssl.c:586: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).
        varlen = strlen(var);
data/httest-2.4.23/src/ssl.c:593: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).
            && strlen(ssl_var_lookup_ssl_cert_dn_rec[i].name) == varlen) {
data/httest-2.4.23/src/ssl_module.c:309:48:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  worker_log_buf(worker, LOG_INFO, '+', entry, strlen(entry));
data/httest-2.4.23/src/ssl_module.c:612:48:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  worker_log_buf(worker, LOG_INFO, dir, entry, strlen(entry));
data/httest-2.4.23/src/ssl_module.c:676: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(certfile);
data/httest-2.4.23/src/ssl_module.c:1405:66:  [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).
    SSL_set_session_id_context(sconfig->ssl, (void *)ssl_module, strlen(ssl_module));
data/httest-2.4.23/src/ssl_module.c:1576:31:  [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).
  mem = BIO_new_mem_buf(copy, strlen(copy));
data/httest-2.4.23/src/ssl_module.c:1605:31:  [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).
  mem = BIO_new_mem_buf(copy, strlen(copy));
data/httest-2.4.23/src/ssl_module.c:2004: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).
      worker_match(worker, worker->match.dot, e[i].val, strlen(e[i].val));
data/httest-2.4.23/src/ssl_module.c:2005:61:  [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).
      worker_match(worker, worker->match.headers, e[i].val, strlen(e[i].val));
data/httest-2.4.23/src/ssl_module.c:2006: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).
      worker_match(worker, worker->grep.dot, e[i].val, strlen(e[i].val));
data/httest-2.4.23/src/ssl_module.c:2007: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).
      worker_match(worker, worker->grep.headers, e[i].val, strlen(e[i].val));
data/httest-2.4.23/src/ssl_module.c:2008:59:  [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).
      worker_expect(worker, worker->expect.dot, e[i].val, strlen(e[i].val));
data/httest-2.4.23/src/ssl_module.c:2009: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).
      worker_expect(worker, worker->expect.headers, e[i].val, strlen(e[i].val));
data/httest-2.4.23/src/store.c:141:41:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
	apr_size_t len = (value == NULL) ? 0 : strlen(value);
data/httest-2.4.23/src/tcp_module.c:257: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((hostname[0] == '[') && (hostname[strlen(hostname)-1] == ']')) {
data/httest-2.4.23/src/tcp_module.c:260: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).
    hostname[strlen(hostname)-1] = '\0';
data/httest-2.4.23/src/transport.c:57:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  transport_read_f read;
data/httest-2.4.23/src/transport.c:80:45:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
                           transport_read_f read, 
data/httest-2.4.23/src/transport.c:88:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  hook->read = read;
data/httest-2.4.23/src/transport.c:174:21:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (hook && hook->read) {
data/httest-2.4.23/src/transport.c:175:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    return hook->read(hook->data, buf, size);
data/httest-2.4.23/src/transport.h:86:45:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
                           transport_read_f read, 
data/httest-2.4.23/src/udp_module.c:215: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((hostname[0] == '[') && (hostname[strlen(hostname)-1] == ']')) {
data/httest-2.4.23/src/udp_module.c:218: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).
    hostname[strlen(hostname)-1] = '\0';
data/httest-2.4.23/src/util.c:174: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(string);
data/httest-2.4.23/src/websocket_module.c:86: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(payload);
data/httest-2.4.23/src/websocket_module.c:358: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).
        len = strlen(payload);
data/httest-2.4.23/src/worker.c:247: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).
  apr_size_t len = (val == NULL) ? 0 : strlen(val);
data/httest-2.4.23/src/worker.c:488: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).
    *len = strlen(*buf);
data/httest-2.4.23/src/worker.c:709:46:  [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(v[j].key, worker->match_seq, strlen(v[j].key)) == 0) {
data/httest-2.4.23/src/worker.c:923: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).
  worker_match(worker, worker->match.error, error, strlen(error));
data/httest-2.4.23/src/worker.c:924:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  worker_match(worker, worker->grep.error, error, strlen(error));
data/httest-2.4.23/src/worker.c:925:54:  [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).
  worker_expect(worker, worker->expect.error, error, strlen(error));
data/httest-2.4.23/src/worker.c:1204: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).
    apr_size_t len = strlen(var);
data/httest-2.4.23/src/worker.c:1471: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).
    worker_log_buf(worker, LOG_INFO, '<', line, strlen(line));
data/httest-2.4.23/src/worker.c:1472:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    worker_match(worker, worker->match.dot, line, strlen(line));
data/httest-2.4.23/src/worker.c:1473:55:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    worker_match(worker, worker->match.headers, line, strlen(line));
data/httest-2.4.23/src/worker.c:1474:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    worker_match(worker, worker->grep.dot, line, strlen(line));
data/httest-2.4.23/src/worker.c:1475:54:  [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).
    worker_match(worker, worker->grep.headers, line, strlen(line));
data/httest-2.4.23/src/worker.c:1476: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).
    worker_expect(worker, worker->expect.dot, line, strlen(line));
data/httest-2.4.23/src/worker.c:1477: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).
    worker_expect(worker, worker->expect.headers, line, strlen(line));
data/httest-2.4.23/src/worker.c:1613: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).
    worker_log_buf(worker, LOG_INFO, '<', line, strlen(line));
data/httest-2.4.23/src/worker.c:1614:51:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    worker_match(worker, worker->match.dot, line, strlen(line));
data/httest-2.4.23/src/worker.c:1615:55:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    worker_match(worker, worker->match.headers, line, strlen(line));
data/httest-2.4.23/src/worker.c:1616:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    worker_match(worker, worker->grep.dot, line, strlen(line));
data/httest-2.4.23/src/worker.c:1617:54:  [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).
    worker_match(worker, worker->grep.headers, line, strlen(line));
data/httest-2.4.23/src/worker.c:1618: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).
    worker_expect(worker, worker->expect.dot, line, strlen(line));
data/httest-2.4.23/src/worker.c:1619: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).
    worker_expect(worker, worker->expect.headers, line, strlen(line));
data/httest-2.4.23/src/worker.c:1629: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).
    worker_log_buf(worker, LOG_INFO, '<', line, strlen(line));
data/httest-2.4.23/src/worker.c:2092:45:  [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).
      worker_expect(worker, tmp_table, val, strlen(val));
data/httest-2.4.23/src/worker.c:2200: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).
      worker_match(worker, tmp_table, val, strlen(val));
data/httest-2.4.23/src/worker.c:2307: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).
      worker_match(worker, tmp_table, val, strlen(val));
data/httest-2.4.23/src/worker.c:2348: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(argv[0]);
data/httest-2.4.23/src/worker.c:3272: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(buf);
data/httest-2.4.23/src/worker.c:3438: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(copy);
data/httest-2.4.23/src/worker.c:4054: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).
    *len += strlen(line.buf);
data/httest-2.4.23/src/worker.c:4109: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).
      line.len = strlen(line.buf);
data/httest-2.4.23/src/worker.c:4119: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).
      line.len = strlen(line.buf);
data/httest-2.4.23/src/worker.c:4167: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).
    worker_log_buf(worker, LOG_INFO, '>', chunked, strlen(chunked));
data/httest-2.4.23/src/worker.c:4171: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(chunked);
data/httest-2.4.23/src/worker.c:4404: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(e[i].val);

ANALYSIS SUMMARY:

Hits = 279
Lines analyzed = 29637 in approximately 3.95 seconds (7506 lines/second)
Physical Source Lines of Code (SLOC) = 19551
Hits@level = [0] 163 [1] 162 [2] 107 [3]   4 [4]   6 [5]   0
Hits@level+ = [0+] 442 [1+] 279 [2+] 117 [3+]  10 [4+]   6 [5+]   0
Hits/KSLOC@level+ = [0+] 22.6075 [1+] 14.2704 [2+] 5.98435 [3+] 0.511483 [4+] 0.30689 [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.