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/libyaml-syck-perl-1.34/syck_st.h
Examining data/libyaml-syck-perl-1.34/syck_st.c
Examining data/libyaml-syck-perl-1.34/bytecode.c
Examining data/libyaml-syck-perl-1.34/gram.h
Examining data/libyaml-syck-perl-1.34/syck_.c
Examining data/libyaml-syck-perl-1.34/perl_common.h
Examining data/libyaml-syck-perl-1.34/node.c
Examining data/libyaml-syck-perl-1.34/ppport_math.h
Examining data/libyaml-syck-perl-1.34/token.c
Examining data/libyaml-syck-perl-1.34/perl_syck.h
Examining data/libyaml-syck-perl-1.34/ppport.h
Examining data/libyaml-syck-perl-1.34/gram.c
Examining data/libyaml-syck-perl-1.34/ppport_sort.h
Examining data/libyaml-syck-perl-1.34/handler.c
Examining data/libyaml-syck-perl-1.34/emitter.c
Examining data/libyaml-syck-perl-1.34/implicit.c
Examining data/libyaml-syck-perl-1.34/syck.h

FINAL RESULTS:

data/libyaml-syck-perl-1.34/bytecode.c:344:21:  [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( sycklval->name, lvl->domain );
data/libyaml-syck-perl-1.34/bytecode.c:364:25:  [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( sycklval->name, lvl->domain );
data/libyaml-syck-perl-1.34/emitter.c:411:13:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
            sprintf( an, "&%s ", anchor_name );
data/libyaml-syck-perl-1.34/emitter.c:428:13:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
            sprintf( an, "*%s", anchor_name );
data/libyaml-syck-perl-1.34/emitter.c:1343:13:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
            sprintf( anchor_name, anc, idx );
data/libyaml-syck-perl-1.34/gram.c:666:21:  [4] (format) fprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
#  define YYFPRINTF fprintf
data/libyaml-syck-perl-1.34/handler.c:172: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( uri, domain );
data/libyaml-syck-perl-1.34/implicit.c:2281:21:  [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( domain, YAML_DOMAIN );
data/libyaml-syck-perl-1.34/perl_syck.h:907:9:  [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(tag, OBJECT_TAG);
data/libyaml-syck-perl-1.34/perl_syck.h:963:9:  [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(tag, ref);
data/libyaml-syck-perl-1.34/ppport.h:8892:14:  [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.
    retval = vsnprintf(buffer, len, format, ap);
data/libyaml-syck-perl-1.34/ppport.h:8894:14:  [4] (format) vsprintf:
  Potential format string problem (CWE-134). Make format string constant.
    retval = vsprintf(buffer, format, ap);
data/libyaml-syck-perl-1.34/ppport.h:8929:5:  [4] (format) vsprintf:
  Potential format string problem (CWE-134). Make format string constant.
    vsprintf(buffer, pat, args);
data/libyaml-syck-perl-1.34/token.c:2275:29:  [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( sycklval->name, lvl->domain );
data/libyaml-syck-perl-1.34/token.c:2295:33:  [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( sycklval->name, lvl->domain );
data/libyaml-syck-perl-1.34/emitter.c:379:13:  [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( header, "--- %%YAML:%d.%d ", SYCK_YAML_MAJOR, SYCK_YAML_MINOR );
data/libyaml-syck-perl-1.34/handler.c:161:5:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
    strcat( uri, "x-private:" );
data/libyaml-syck-perl-1.34/handler.c:171:5:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
    strcat( uri, "tag:" );
data/libyaml-syck-perl-1.34/node.c:116: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( n->data.str->ptr, str, len );
data/libyaml-syck-perl-1.34/node.c:140: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( n->data.str->ptr, str, len );
data/libyaml-syck-perl-1.34/perl_syck.h:910:30:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
            case SVt_PVAV: { strcat(tag, "array:");  break; }
data/libyaml-syck-perl-1.34/perl_syck.h:911:30:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
            case SVt_PVHV: { strcat(tag, "hash:");   break; }
data/libyaml-syck-perl-1.34/perl_syck.h:912:30:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
            case SVt_PVCV: { strcat(tag, "code:");   break; }
data/libyaml-syck-perl-1.34/perl_syck.h:913:30:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
            case SVt_PVGV: { strcat(tag, "glob:");   break; }
data/libyaml-syck-perl-1.34/perl_syck.h:917:21:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
                    strcat(tag, "regexp");
data/libyaml-syck-perl-1.34/perl_syck.h:920:21:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
                    strcat(tag, "regexp:");
data/libyaml-syck-perl-1.34/perl_syck.h:929:21:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
                    strcat(tag, "ref:");
data/libyaml-syck-perl-1.34/perl_syck.h:934:21:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
                    strcat(tag, "scalar:");
data/libyaml-syck-perl-1.34/perl_syck.h:944:29:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
                            strcat(tag, "regexp");
data/libyaml-syck-perl-1.34/perl_syck.h:948:29:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
                            strcat(tag, "regexp:");
data/libyaml-syck-perl-1.34/perl_syck.h:954:25:  [2] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant string.
                        strcat(tag, "scalar:");
data/libyaml-syck-perl-1.34/ppport.h:6788:42:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
#  define CopyD(s,d,n,t)                 memcpy((char*)(d),(char*)(s), (n) * sizeof(t))
data/libyaml-syck-perl-1.34/ppport.h:8745:38:  [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.
                && (xdigit = strchr((char *) PL_hexdigit, s[1])))
data/libyaml-syck-perl-1.34/ppport.h:8976: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(dst + used, src, copy);
data/libyaml-syck-perl-1.34/ppport.h:9006: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(dst, src, copy);
data/libyaml-syck-perl-1.34/ppport.h:9546: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 octbuf[32] = "%123456789ABCDF";
data/libyaml-syck-perl-1.34/ppport.h:9616:13:  [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[2];
data/libyaml-syck-perl-1.34/syck.h:75:32:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
#define S_MEMCPY(p1,p2,type,n) memcpy((p1), (p2), sizeof(type)*(n))
data/libyaml-syck-perl-1.34/syck_st.c:145:15:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    FILE *f = fopen("/tmp/col", "w");
data/libyaml-syck-perl-1.34/bytecode.c:328: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).
                int qidx = strlen( qstr );
data/libyaml-syck-perl-1.34/bytecode.c:342:62:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                    sycklval->name = S_ALLOC_N( char, qidx + strlen( lvl->domain ) );
data/libyaml-syck-perl-1.34/bytecode.c:345:21:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
                    strncat( sycklval->name, qstr + 2, qidx - 2 );
data/libyaml-syck-perl-1.34/bytecode.c:362:78:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        sycklval->name = S_ALLOC_N( char, ( qend - carat ) + strlen( lvl->domain ) );
data/libyaml-syck-perl-1.34/bytecode.c:365:25:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
                        strncat( sycklval->name, carat + 1, ( qend - carat ) - 1 );
data/libyaml-syck-perl-1.34/bytecode.c:370: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).
                        sycklval->name = S_ALLOC_N( char, strlen( qstr ) );
data/libyaml-syck-perl-1.34/bytecode.c:372:67:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                        S_MEMCPY( sycklval->name, qstr + 1, char, strlen( qstr ) );
data/libyaml-syck-perl-1.34/emitter.c:219:82:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    e->levels[e->lvl_idx].domain = syck_strndup( e->levels[e->lvl_idx-1].domain, strlen( e->levels[e->lvl_idx-1].domain ) );
data/libyaml-syck-perl-1.34/emitter.c:380: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).
            syck_emitter_write( e, header, strlen( header ) );
data/libyaml-syck-perl-1.34/emitter.c:410: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).
            char *an = S_ALLOC_N( char, strlen( anchor_name ) + 3 );
data/libyaml-syck-perl-1.34/emitter.c:419: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).
            syck_emitter_write( e, an, strlen( anchor_name ) + 2 );
data/libyaml-syck-perl-1.34/emitter.c:427: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).
            char *an = S_ALLOC_N( char, strlen( anchor_name ) + 2 );
data/libyaml-syck-perl-1.34/emitter.c:429: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).
            syck_emitter_write( e, an, strlen( anchor_name ) + 1 );
data/libyaml-syck-perl-1.34/emitter.c:461: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).
    if ( strlen( tag ) == 0 ) {
data/libyaml-syck-perl-1.34/emitter.c:466: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).
        int taglen = strlen( tag );
data/libyaml-syck-perl-1.34/emitter.c:468: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).
        if ( strncmp( tag + 4, YAML_DOMAIN, strlen( YAML_DOMAIN ) ) == 0 ) {
data/libyaml-syck-perl-1.34/emitter.c:469: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).
            int skip = 4 + strlen( YAML_DOMAIN ) + 1;
data/libyaml-syck-perl-1.34/emitter.c:475:37:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                if ( subd - tag > ( strlen( YAML_DOMAIN ) + 5 ) &&
data/libyaml-syck-perl-1.34/emitter.c:476: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).
                     strncmp( subd - strlen( YAML_DOMAIN ), YAML_DOMAIN, strlen( YAML_DOMAIN ) ) == 0 ) {
data/libyaml-syck-perl-1.34/emitter.c:476:74:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                     strncmp( subd - strlen( YAML_DOMAIN ), YAML_DOMAIN, strlen( YAML_DOMAIN ) ) == 0 ) {
data/libyaml-syck-perl-1.34/emitter.c:477: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).
                    syck_emitter_write( e, tag + 4, subd - strlen( YAML_DOMAIN ) - ( tag + 4 ) - 1 );
data/libyaml-syck-perl-1.34/emitter.c:495:42:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
        syck_emitter_write( e, tag + 10, strlen( tag ) - 10 );
data/libyaml-syck-perl-1.34/emitter.c:1341: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).
            anchor_name = S_ALLOC_N( char, strlen( anc ) + 10 );
data/libyaml-syck-perl-1.34/emitter.c:1342: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).
            S_MEMZERO( anchor_name, char, strlen( anc ) + 10 );
data/libyaml-syck-perl-1.34/gram.c:787:21:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
#   define yystrlen strlen
data/libyaml-syck-perl-1.34/handler.c:162:5:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
    strncat( uri, type_id, type_len );
data/libyaml-syck-perl-1.34/handler.c:169: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).
    char *uri = S_ALLOC_N( char, strlen( domain ) + type_len + 14 );
data/libyaml-syck-perl-1.34/handler.c:173:5:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
    strcat( uri, ":" );
data/libyaml-syck-perl-1.34/handler.c:174:5:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
    strncat( uri, type_id, type_len );
data/libyaml-syck-perl-1.34/implicit.c:41: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).
        n->type_id = syck_taguri( YAML_DOMAIN, tid, strlen( tid ) );
data/libyaml-syck-perl-1.34/implicit.c:43: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).
        n->type_id = syck_strndup( tid, strlen( tid ) );
data/libyaml-syck-perl-1.34/implicit.c:1711: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).
        char *tmp1 = syck_strndup( (char*)tag1, strlen( tag1 ) );
data/libyaml-syck-perl-1.34/implicit.c:1712: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).
        char *tmp2 = syck_strndup( (char*)tag2, strlen( tag2 ) );
data/libyaml-syck-perl-1.34/implicit.c:1733: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).
    limit = type_id + strlen( type_id );
data/libyaml-syck-perl-1.34/implicit.c:1886: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).
	{   return syck_taguri( YAML_DOMAIN, type_id, strlen( type_id ) ); }
data/libyaml-syck-perl-1.34/implicit.c:1963: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).
	{   return syck_xprivate( type_id + 1, strlen( type_id ) - 1 ); }
data/libyaml-syck-perl-1.34/implicit.c:2279:21:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
                    strncat( domain, type_id, ( YYCURSOR - type_id ) - 1 );
data/libyaml-syck-perl-1.34/implicit.c:2280:21:  [1] (buffer) strcat:
  Does not check for buffer overflows when concatenating to destination
  [MS-banned] (CWE-120). Consider using strcat_s, strncat, strlcat, or
  snprintf (warning: strncat is easily misused). Risk is low because the
  source is a constant character.
                    strcat( domain, "." );
data/libyaml-syck-perl-1.34/implicit.c:2507:32:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
                               strncat( domain, type_id, ( YYCURSOR - type_id ) - 1 );
data/libyaml-syck-perl-1.34/implicit.c:2644:36:  [1] (buffer) strlen:
  Does not handle 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 syck_strndup( type_id, strlen( type_id ) ); }
data/libyaml-syck-perl-1.34/implicit.c:3116:36:  [1] (buffer) strlen:
  Does not handle 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 syck_strndup( type_id, strlen( type_id ) ); }
data/libyaml-syck-perl-1.34/node.c:104: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).
    return syck_new_str2( str, strlen( str ), style );
data/libyaml-syck-perl-1.34/node.c:125: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).
    syck_replace_str2( n, str, strlen( str ), style );
data/libyaml-syck-perl-1.34/perl_common.h:73: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).
        (SYMID)newSVpvn_share(a, strlen(a), 0)
data/libyaml-syck-perl-1.34/perl_syck.h:106: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).
    pref_av = hv_fetch(map, anchor, strlen(anchor), 0);
data/libyaml-syck-perl-1.34/perl_syck.h:109: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).
        hv_store(map, anchor, strlen(anchor), new_rvav, 0);
data/libyaml-syck-perl-1.34/perl_syck.h:128: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).
    pref_av = hv_fetch(map, anchor, strlen(anchor), 0);
data/libyaml-syck-perl-1.34/perl_syck.h:634: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 len = strlen(s);
data/libyaml-syck-perl-1.34/perl_syck.h:1047:101:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                    syck_emit_scalar(e, "tag:yaml.org,2002:binary", SCALAR_STRING, 0, 0, 0, base64, strlen(base64));
data/libyaml-syck-perl-1.34/perl_syck.h:1196: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).
                    reallen = strlen(SvPV_nolen(text));
data/libyaml-syck-perl-1.34/ppport.h:6023:79:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
#  define vnewSVpvf(pat, args) ({ SV *_sv = newSV(0); sv_vsetpvfn(_sv, (pat), strlen((pat)), (args), Null(SV**), 0, Null(bool*)); _sv; })
data/libyaml-syck-perl-1.34/ppport.h:6025:79:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
#  define vnewSVpvf(pat, args) ((PL_Sv = newSV(0)), sv_vsetpvfn(PL_Sv, (pat), strlen((pat)), (args), Null(SV**), 0, Null(bool*)), PL_Sv)
data/libyaml-syck-perl-1.34/ppport.h:6030: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).
#  define sv_vcatpvf(sv, pat, args)  sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*))
data/libyaml-syck-perl-1.34/ppport.h:6034: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).
#  define sv_vsetpvf(sv, pat, args)  sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*))
data/libyaml-syck-perl-1.34/ppport.h:6055: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).
  sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*));
data/libyaml-syck-perl-1.34/ppport.h:6084: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).
  sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*));
data/libyaml-syck-perl-1.34/ppport.h:6105:27:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
     sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*));  \
data/libyaml-syck-perl-1.34/ppport.h:6128: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).
  sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*));
data/libyaml-syck-perl-1.34/ppport.h:6157: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).
  sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*));
data/libyaml-syck-perl-1.34/ppport.h:6178:27:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
     sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*));  \
data/libyaml-syck-perl-1.34/ppport.h:7721:65:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
#  define HvNAMELEN_get(hv)              (HvNAME_get(hv) ? (I32)strlen(HvNAME_get(hv)) : 0)
data/libyaml-syck-perl-1.34/ppport.h:8336: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).
        STRLEN len = strlen(radix);
data/libyaml-syck-perl-1.34/ppport.h:8931: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(buffer);
data/libyaml-syck-perl-1.34/ppport.h:8972: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).
    used = strlen(dst);
data/libyaml-syck-perl-1.34/ppport.h:8973: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).
    length = strlen(src);
data/libyaml-syck-perl-1.34/ppport.h:9003: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).
    length = strlen(src);
data/libyaml-syck-perl-1.34/syck.h:218:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    SyckIoFileRead read;
data/libyaml-syck-perl-1.34/syck.h:225:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    SyckIoStrRead read;
data/libyaml-syck-perl-1.34/syck_.c:296:59:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
syck_parser_file( SyckParser *p, FILE *fp, SyckIoFileRead read )
data/libyaml-syck-perl-1.34/syck_.c:304:10:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if ( read != NULL )
data/libyaml-syck-perl-1.34/syck_.c:306:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        p->io.file->read = read;
data/libyaml-syck-perl-1.34/syck_.c:315:68:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
syck_parser_str( SyckParser *p, char *ptr, long len, SyckIoStrRead read )
data/libyaml-syck-perl-1.34/syck_.c:325:10:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if ( read != NULL )
data/libyaml-syck-perl-1.34/syck_.c:327:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        p->io.str->read = read;
data/libyaml-syck-perl-1.34/syck_.c:336:63:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
syck_parser_str_auto( SyckParser *p, char *ptr, SyckIoStrRead read )
data/libyaml-syck-perl-1.34/syck_.c:338:30:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    syck_parser_str( p, ptr, strlen( ptr ), read );
data/libyaml-syck-perl-1.34/syck_.c:338:45:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    syck_parser_str( p, ptr, strlen( ptr ), read );
data/libyaml-syck-perl-1.34/syck_.c:372:82:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
    p->levels[p->lvl_idx].domain = syck_strndup( p->levels[p->lvl_idx-1].domain, strlen( p->levels[p->lvl_idx-1].domain ) );
data/libyaml-syck-perl-1.34/syck_.c:451:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
            len = (p->io.str->read)( p->buffer, p->io.str, SYCK_BUFFERSIZE - 1, skip );
data/libyaml-syck-perl-1.34/syck_.c:456:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
            len = (p->io.file->read)( p->buffer, p->io.file, SYCK_BUFFERSIZE - 1, skip );
data/libyaml-syck-perl-1.34/syck_.c:473:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
            len = (p->io.str->read)( p->buffer, p->io.str, max_size, skip );
data/libyaml-syck-perl-1.34/syck_.c:478:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
            len = (p->io.file->read)( p->buffer, p->io.file, max_size, skip );
data/libyaml-syck-perl-1.34/token.c:2273:70:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                            sycklval->name = S_ALLOC_N( char, qidx + strlen( lvl->domain ) );
data/libyaml-syck-perl-1.34/token.c:2276:29:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
                            strncat( sycklval->name, qstr + 1, qidx - 1 );
data/libyaml-syck-perl-1.34/token.c:2293:86:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
                                sycklval->name = S_ALLOC_N( char, ( qend - carat ) + strlen( lvl->domain ) );
data/libyaml-syck-perl-1.34/token.c:2296:33:  [1] (buffer) strncat:
  Easily used incorrectly (e.g., incorrectly computing the correct maximum
  size to add) [MS-banned] (CWE-120). Consider strcat_s, strlcat, snprintf,
  or automatically resizing strings.
                                strncat( sycklval->name, carat + 1, ( qend - carat ) - 1 );

ANALYSIS SUMMARY:

Hits = 125
Lines analyzed = 24068 in approximately 0.56 seconds (42963 lines/second)
Physical Source Lines of Code (SLOC) = 16632
Hits@level = [0]   4 [1]  86 [2]  24 [3]   0 [4]  15 [5]   0
Hits@level+ = [0+] 129 [1+] 125 [2+]  39 [3+]  15 [4+]  15 [5+]   0
Hits/KSLOC@level+ = [0+] 7.75613 [1+] 7.51563 [2+] 2.34488 [3+] 0.901876 [4+] 0.901876 [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.