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/globus-gram-protocol-13.2/globus_gram_protocol_pack.c
Examining data/globus-gram-protocol-13.2/globus_gram_protocol.h
Examining data/globus-gram-protocol-13.2/globus_gram_protocol_constants.h
Examining data/globus-gram-protocol-13.2/test/delegation-test.c
Examining data/globus-gram-protocol-13.2/test/unpack-with-extensions-test.c
Examining data/globus-gram-protocol-13.2/test/pack-with-extensions-test.c
Examining data/globus-gram-protocol-13.2/test/create-extensions-test.c
Examining data/globus-gram-protocol-13.2/test/unpack-job-request-reply-with-extensions-test.c
Examining data/globus-gram-protocol-13.2/test/unpack-message-test.c
Examining data/globus-gram-protocol-13.2/test/io-test.c
Examining data/globus-gram-protocol-13.2/test/allow-attach-test.c
Examining data/globus-gram-protocol-13.2/test/pack-test.c
Examining data/globus-gram-protocol-13.2/test/unpack-status-reply-with-extensions-test.c
Examining data/globus-gram-protocol-13.2/test/error-test.c
Examining data/globus-gram-protocol-13.2/globus_gram_protocol_io.c
Examining data/globus-gram-protocol-13.2/globus_gram_protocol_error.c
Examining data/globus-gram-protocol-13.2/globus_i_gram_protocol.h
Examining data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c
Examining data/globus-gram-protocol-13.2/globus_gram_protocol.c

FINAL RESULTS:

data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:336:5:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    sprintf(*url, "https://%s:%hu/", hostnamebuf, port);
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:2121:10:  [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.
    rc = sscanf((const char *) buf,
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:2172:10:  [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.
    rc = sscanf( (char *) buf,
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:2186:7:  [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.
	rc = sscanf( (char *)buf + offset,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:139:11:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
    len = sprintf((char *) *query,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:150:5:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    sprintf((char *)(*query)+len, "%s", CRLF);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:595:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
        chrs = sprintf((char *)*reply,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:605:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
        chrs = sprintf((char *)*reply,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:616:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        chrs += sprintf(((char *) *reply) + chrs,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:926:10:  [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.
    rc = sscanf((char *) query,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1098:10:  [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.
    rc = sscanf( (char *) reply,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1232:12:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
    chrs = sprintf((char *)*reply,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1246:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        chrs += sprintf(((char *) *reply) + chrs,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1586:17:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        chrs += sprintf(((char *) *reply) + chrs,
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:2053:12:  [4] (format) vsnprintf:
  If format strings can be influenced by an attacker, they can be exploited,
  and note that sprintf variations do not always \0-terminate (CWE-134). Use
  a constant for the format specification.
    vlen = vsnprintf(NULL, 0, format, ap);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:2063:5:  [4] (format) vsnprintf:
  If format strings can be influenced by an attacker, they can be exploited,
  and note that sprintf variations do not always \0-terminate (CWE-134). Use
  a constant for the format specification.
    vsnprintf(extension->value, vlen + 1, format, ap);
data/globus-gram-protocol-13.2/test/create-extensions-test.c:8:9:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        printf message; \
data/globus-gram-protocol-13.2/test/pack-with-extensions-test.c:7:9:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        printf message; \
data/globus-gram-protocol-13.2/test/unpack-job-request-reply-with-extensions-test.c:8:9:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        printf message; \
data/globus-gram-protocol-13.2/test/unpack-message-test.c:7:9:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        printf message; \
data/globus-gram-protocol-13.2/test/unpack-message-test.c:153:5:  [4] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused).
    strcat(message, ext_text);
data/globus-gram-protocol-13.2/test/unpack-status-reply-with-extensions-test.c:7:9:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        printf message; \
data/globus-gram-protocol-13.2/test/unpack-with-extensions-test.c:8:9:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
        printf message; \
data/globus-gram-protocol-13.2/globus_gram_protocol.c:89:50:  [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).
        globus_i_gram_protocol_max_concurrency = atoi(max_concurrency);
data/globus-gram-protocol-13.2/globus_gram_protocol_error.c:36:8:  [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 char *
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:170:2:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
	memcpy(buf + tmp,
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:307:6:  [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 + tmp,
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:265: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				hostnamebuf[256];
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:2669:6:  [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(output_buffer+4, output_token.value, output_token.length);
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:2777:6:  [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(output_buffer+4, output_token.value, output_token.length);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:624:17:  [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.
        chrs += sprintf(((char *) *reply) + chrs, "\r\n");
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:747: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).
    *status = atoi(entry->value);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1254:17:  [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.
        chrs += sprintf(((char *) *reply) + chrs, "\r\n");
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1594:17:  [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.
        chrs += sprintf(((char *) *reply) + chrs, "\r\n");
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:2195:9:  [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(extension->attribute, "%.*s", (int) attr_len, attr_start);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:2402:14:  [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).
    *value = atoi(extension->value);
data/globus-gram-protocol-13.2/test/allow-attach-test.c:100: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 *				callback_contact[5];
data/globus-gram-protocol-13.2/test/allow-attach-test.c:158: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 *				callback_contact[5];
data/globus-gram-protocol-13.2/test/allow-attach-test.c:202:13:  [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).
	test_num = atoi(argv[1]);
data/globus-gram-protocol-13.2/test/io-test.c:26: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 *				status_request[2];
data/globus-gram-protocol-13.2/test/pack-test.c:30: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 *				callback_url[2];
data/globus-gram-protocol-13.2/test/pack-test.c:31: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 *				rsl[2];
data/globus-gram-protocol-13.2/test/pack-test.c:95: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 *				callback_url[2];
data/globus-gram-protocol-13.2/test/pack-test.c:96: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 *				rsl[2];
data/globus-gram-protocol-13.2/test/pack-test.c:159: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 *				job_contact[2];
data/globus-gram-protocol-13.2/test/pack-test.c:219: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 *				status[2];
data/globus-gram-protocol-13.2/test/pack-test.c:341: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 *				job_contact[2];
data/globus-gram-protocol-13.2/globus_gram_protocol.c:315:41:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    int                                 equal;
data/globus-gram-protocol-13.2/globus_gram_protocol.c:335:38:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
                                    &equal);
data/globus-gram-protocol-13.2/globus_gram_protocol.c:341:8:  [1] (buffer) equal:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
    if(equal)
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:141: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).
    framedlen  = strlen(GLOBUS_GRAM_HTTP_REQUEST_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:142: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).
    framedlen += strlen((char *) parsed.url_path);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:143: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).
    framedlen += strlen(GLOBUS_GRAM_HTTP_HOST_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:144: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).
    framedlen += strlen((char *) parsed.host);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:145: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).
    framedlen += strlen(GLOBUS_GRAM_HTTP_CONTENT_TYPE_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:146: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).
    framedlen += strlen(GLOBUS_GRAM_HTTP_CONTENT_LENGTH_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:255: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).
	framedlen += strlen(GLOBUS_GRAM_HTTP_REPLY_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:256: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).
	framedlen += strlen(reason);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:257: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).
	framedlen += strlen(GLOBUS_GRAM_HTTP_CONNECTION_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:283: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).
	framedlen += strlen(GLOBUS_GRAM_HTTP_REPLY_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:284: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).
	framedlen += strlen(reason);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:285: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).
	framedlen += strlen(GLOBUS_GRAM_HTTP_CONTENT_TYPE_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_frame.c:286: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).
	framedlen += strlen(GLOBUS_GRAM_HTTP_CONTENT_LENGTH_LINE);
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:330: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).
    (*url) = globus_libc_malloc(17 + strlen(hostnamebuf));
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:2117:43:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    tmp_uri = (char *) globus_libc_malloc(strlen((char *) buf));
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:2118: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).
    host = (char *) globus_libc_malloc(strlen((char *) buf));
data/globus-gram-protocol-13.2/globus_gram_protocol_io.c:2167: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).
    reason = (char *) globus_malloc(strlen((char *)buf));
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:133: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).
            strlen(GLOBUS_GRAM_HTTP_PACK_PROTOCOL_VERSION_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:134: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).
            strlen(GLOBUS_GRAM_HTTP_PACK_JOB_STATE_MASK_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:135: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).
            strlen(GLOBUS_GRAM_HTTP_PACK_CALLBACK_URL_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:136: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).
            ((callback_url) ? strlen(callback_url) : 2)
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:137: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).
            + 2*strlen(rsl) + 16);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:346:24:  [1] (buffer) strlen:
  Does not handle 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(GLOBUS_GRAM_HTTP_PACK_PROTOCOL_VERSION_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:347:24:  [1] (buffer) strlen:
  Does not handle 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(GLOBUS_GRAM_HTTP_PACK_STATUS_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:348:24:  [1] (buffer) strlen:
  Does not handle 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(GLOBUS_GRAM_HTTP_PACK_JOB_MANAGER_URL_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:349: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).
                       ((job_contact) ? strlen(job_contact) + 3 : 3));
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:370: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).
    *replysize = (globus_size_t)(strlen((char *) *reply) + 1);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:574: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).
        len += strlen(entry->attribute) + (2*strlen(entry->value)) + 4;
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:574: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).
        len += strlen(entry->attribute) + (2*strlen(entry->value)) + 4;
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:576: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(GLOBUS_GRAM_HTTP_PACK_PROTOCOL_VERSION_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:577: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).
           strlen(GLOBUS_GRAM_HTTP_PACK_STATUS_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:579: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).
            ? strlen(GLOBUS_GRAM_HTTP_PACK_JOB_MANAGER_URL_LINE)
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:582: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).
            ? strlen(job_contact) : 0) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:627: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).
    *replysize = (globus_size_t)(strlen((char *)*reply) + 1);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:833:24:  [1] (buffer) strlen:
  Does not handle 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(GLOBUS_GRAM_HTTP_PACK_PROTOCOL_VERSION_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:834:24:  [1] (buffer) strlen:
  Does not handle 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(GLOBUS_GRAM_HTTP_PACK_CLIENT_REQUEST_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:835: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).
                       2*strlen(status_request));
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:850: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).
    *querysize = (globus_size_t)(strlen((char*)*query) + 1);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1013:25:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        strlen(GLOBUS_GRAM_HTTP_PACK_PROTOCOL_VERSION_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1014:25:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        strlen(GLOBUS_GRAM_HTTP_PACK_STATUS_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1015:25:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        strlen(GLOBUS_GRAM_HTTP_PACK_FAILURE_CODE_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1016:25:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        strlen(GLOBUS_GRAM_HTTP_PACK_JOB_FAILURE_CODE_LINE)
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1033: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).
    *replysize = (globus_size_t)(strlen((char *)*reply) + 1);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1216: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).
        len += strlen(entry->attribute) + (2*strlen(entry->value)) + 4;
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1216: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).
        len += strlen(entry->attribute) + (2*strlen(entry->value)) + 4;
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1218: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(GLOBUS_GRAM_HTTP_PACK_PROTOCOL_VERSION_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1219: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).
           strlen(GLOBUS_GRAM_HTTP_PACK_STATUS_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1220: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).
           strlen(GLOBUS_GRAM_HTTP_PACK_FAILURE_CODE_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1221: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).
           strlen(GLOBUS_GRAM_HTTP_PACK_JOB_FAILURE_CODE_LINE)
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1257: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).
    *replysize = (globus_size_t)(strlen((char *)*reply) + 1);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1444: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).
        strlen(GLOBUS_GRAM_HTTP_PACK_PROTOCOL_VERSION_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1445: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).
        strlen(GLOBUS_GRAM_HTTP_PACK_JOB_MANAGER_URL_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1446: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).
        strlen(GLOBUS_GRAM_HTTP_PACK_STATUS_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1447: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).
        strlen(GLOBUS_GRAM_HTTP_PACK_FAILURE_CODE_LINE) +
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1448: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).
        strlen(job_contact) + 5 );
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1464: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).
    *replysize = (globus_size_t)(strlen((char *)*reply) + 1);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1549: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).
        len += strlen(entry->attribute) + (2*strlen(entry->value)) + 4;
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1549: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).
        len += strlen(entry->attribute) + (2*strlen(entry->value)) + 4;
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1568: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).
    chrs = strlen(tmp);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:1597: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).
    *replysize = (globus_size_t)(strlen(tmp) + 1);
data/globus-gram-protocol-13.2/globus_gram_protocol_pack.c:2284: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).
    *requestsize = strlen(*request) + 1;
data/globus-gram-protocol-13.2/test/pack-test.c:142:2:  [1] (buffer) strlen:
  Does not handle 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(callback_url[1]) != 0))
data/globus-gram-protocol-13.2/test/unpack-job-request-reply-with-extensions-test.c:223: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).
    message_size = strlen(message) + 1;
data/globus-gram-protocol-13.2/test/unpack-job-request-reply-with-extensions-test.c:280:24:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        message_size = strlen(message) + 1;
data/globus-gram-protocol-13.2/test/unpack-message-test.c:149:32:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    message = realloc(message, strlen(message) + strlen(ext_text) + 1);
data/globus-gram-protocol-13.2/test/unpack-message-test.c:149: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).
    message = realloc(message, strlen(message) + strlen(ext_text) + 1);
data/globus-gram-protocol-13.2/test/unpack-message-test.c:154: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).
    message_size = strlen((char *) message)+1;
data/globus-gram-protocol-13.2/test/unpack-status-reply-with-extensions-test.c:188: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).
    message_size = strlen(message) + 1;
data/globus-gram-protocol-13.2/test/unpack-status-reply-with-extensions-test.c:244:24:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        message_size = strlen(message) + 1;
data/globus-gram-protocol-13.2/test/unpack-with-extensions-test.c:189: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).
    message_size = strlen(message) + 1;
data/globus-gram-protocol-13.2/test/unpack-with-extensions-test.c:246:24:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        message_size = strlen(message) + 1;

ANALYSIS SUMMARY:

Hits = 121
Lines analyzed = 11282 in approximately 0.27 seconds (41110 lines/second)
Physical Source Lines of Code (SLOC) = 7500
Hits@level = [0]  90 [1]  74 [2]  24 [3]   0 [4]  23 [5]   0
Hits@level+ = [0+] 211 [1+] 121 [2+]  47 [3+]  23 [4+]  23 [5+]   0
Hits/KSLOC@level+ = [0+] 28.1333 [1+] 16.1333 [2+] 6.26667 [3+] 3.06667 [4+] 3.06667 [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.