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/libdbd-mysql-perl-4.050/constants.h
Examining data/libdbd-mysql-perl-4.050/dbdimp.h
Examining data/libdbd-mysql-perl-4.050/socket.c
Examining data/libdbd-mysql-perl-4.050/dbdimp.c

FINAL RESULTS:

data/libdbd-mysql-perl-4.050/dbdimp.c:1501: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(sock->net.sqlstate, "HY000");
data/libdbd-mysql-perl-4.050/dbdimp.c:1506: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(sock->net.last_error, prefix, prefix_len);
data/libdbd-mysql-perl-4.050/dbdimp.c:1513: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(sock->net.last_error + prefix_len, error, error_len);
data/libdbd-mysql-perl-4.050/dbdimp.c:1563:29:  [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).
  portNr= (port && *port) ? atoi(port) : 0;
data/libdbd-mysql-perl-4.050/dbdimp.c:2732: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[64];
data/libdbd-mysql-perl-4.050/dbdimp.c:3808: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 actual_row_num[64];
data/libdbd-mysql-perl-4.050/dbdimp.c:3931:5:  [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(actual_row_num, "%llu", imp_sth->row_num);
data/libdbd-mysql-perl-4.050/dbdimp.c:4932: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 key[100];
data/libdbd-mysql-perl-4.050/dbdimp.c:4936:25:  [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.
                keylen= sprintf(key, "%d", n);
data/libdbd-mysql-perl-4.050/dbdimp.c:5363: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 (imp_dbh->pmysql, &save_socket, sizeof(save_socket));
data/libdbd-mysql-perl-4.050/dbdimp.c:506:7:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
      strncpy(options_list[ind], options, len);
data/libdbd-mysql-perl-4.050/dbdimp.c:1503: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).
  prefix_len = strlen(prefix);
data/libdbd-mysql-perl-4.050/dbdimp.c:1508: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).
  error_len = strlen(error);
data/libdbd-mysql-perl-4.050/dbdimp.c:2766: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).
    if (kl == strlen("auto_reconnect") && strEQ(key, "auto_reconnect"))
data/libdbd-mysql-perl-4.050/dbdimp.c:2770: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).
    if (kl == strlen("bind_type_guessing") &&
data/libdbd-mysql-perl-4.050/dbdimp.c:2775: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).
    else if (kl == strlen("bind_comment_placeholders") &&
data/libdbd-mysql-perl-4.050/dbdimp.c:2786: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).
        sv_2mortal(newSVpvn(clientinfo, strlen(clientinfo))) : &PL_sv_undef;
data/libdbd-mysql-perl-4.050/dbdimp.c:2800: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).
      result= sv_2mortal(newSVpvn(msg, strlen(msg)));
data/libdbd-mysql-perl-4.050/dbdimp.c:2802: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).
    else if (kl == strlen("enable_utf8mb4") && strEQ(key, "enable_utf8mb4"))
data/libdbd-mysql-perl-4.050/dbdimp.c:2804: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).
    else if (kl == strlen("enable_utf8") && strEQ(key, "enable_utf8"))
data/libdbd-mysql-perl-4.050/dbdimp.c:2815: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("auto_reconnects_ok"),
data/libdbd-mysql-perl-4.050/dbdimp.c:2822: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("auto_reconnects_failed"),
data/libdbd-mysql-perl-4.050/dbdimp.c:2857: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).
        sv_2mortal(newSVpvn(hostinfo, strlen(hostinfo))) : &PL_sv_undef;
data/libdbd-mysql-perl-4.050/dbdimp.c:2865: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).
      result= info ? sv_2mortal(newSVpvn(info, strlen(info))) : &PL_sv_undef;
data/libdbd-mysql-perl-4.050/dbdimp.c:2872: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).
    if (kl == strlen("no_autocommit_cmd") &&
data/libdbd-mysql-perl-4.050/dbdimp.c:2886: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).
        sv_2mortal(newSVpvn(serverinfo, strlen(serverinfo))) : &PL_sv_undef;
data/libdbd-mysql-perl-4.050/dbdimp.c:2899: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).
        sv_2mortal(newSVpvn(stats, strlen(stats))) : &PL_sv_undef;
data/libdbd-mysql-perl-4.050/dbdimp.c:2906: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).
        sv_2mortal(newSVpvn(stats, strlen(stats))) : &PL_sv_undef;
data/libdbd-mysql-perl-4.050/dbdimp.c:3055: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).
    str_last_ptr = statement + strlen(statement);
data/libdbd-mysql-perl-4.050/dbdimp.c:3151: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).
                                       strlen(statement));
data/libdbd-mysql-perl-4.050/dbdimp.c:3582:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(table, sbuf, slen);
data/libdbd-mysql-perl-4.050/dbdimp.c:4789: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).
        sv= newSVpvn(curField->name, strlen(curField->name));
data/libdbd-mysql-perl-4.050/dbdimp.c:4793: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).
        sv= newSVpvn(curField->table, strlen(curField->table));
data/libdbd-mysql-perl-4.050/dbdimp.c:5441: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 (!hv_store(hv, (char*) cols[i], strlen(cols[i]), newSViv(i), 0))
data/libdbd-mysql-perl-4.050/dbdimp.c:5701: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).
        len= strlen(string);

ANALYSIS SUMMARY:

Hits = 35
Lines analyzed = 6336 in approximately 0.17 seconds (36235 lines/second)
Physical Source Lines of Code (SLOC) = 4761
Hits@level = [0]   1 [1]  25 [2]  10 [3]   0 [4]   0 [5]   0
Hits@level+ = [0+]  36 [1+]  35 [2+]  10 [3+]   0 [4+]   0 [5+]   0
Hits/KSLOC@level+ = [0+] 7.56144 [1+] 7.3514 [2+] 2.1004 [3+]   0 [4+]   0 [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.