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/ninka-1.3.2/comments/dformat.cpp
Examining data/ninka-1.3.2/comments/dformat.h
Examining data/ninka-1.3.2/comments/func.cpp
Examining data/ninka-1.3.2/comments/func.h
Examining data/ninka-1.3.2/comments/io.cpp
Examining data/ninka-1.3.2/comments/io.h
Examining data/ninka-1.3.2/comments/main.h
Examining data/ninka-1.3.2/comments/main.cpp

FINAL RESULTS:

data/ninka-1.3.2/comments/dformat.cpp:91:5:  [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(temp,argv[current_arg]);
data/ninka-1.3.2/comments/dformat.cpp:92: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(temp,DEFAULT_MANGLED_POSTFIX);
data/ninka-1.3.2/comments/dformat.cpp:93:5:  [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(temp2,argv[current_arg]);
data/ninka-1.3.2/comments/dformat.cpp:94: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(temp2,DEFAULT_COMMENTS_POSTFIX);
data/ninka-1.3.2/comments/io.cpp:111:3:  [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(i_name,in);
data/ninka-1.3.2/comments/io.cpp:116:5:  [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(c_name,comments);
data/ninka-1.3.2/comments/io.cpp:117:5:  [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(o_name,out);
data/ninka-1.3.2/comments/dformat.cpp:53: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 temp[FILE_NAME_LENGTH]={"\0"};
data/ninka-1.3.2/comments/dformat.cpp:54: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 temp2[FILE_NAME_LENGTH]={"\0"};
data/ninka-1.3.2/comments/dformat.cpp:220:11:  [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 temp[256];
data/ninka-1.3.2/comments/dformat.cpp:235: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).
          io.regionsCount = atoi(temp);
data/ninka-1.3.2/comments/io.cpp:77:7:  [2] (misc) open:
  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).
    i.open(in/*, ios::nocreate*/);
data/ninka-1.3.2/comments/io.cpp:92:7:  [2] (misc) open:
  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).
    o.open(out);
data/ninka-1.3.2/comments/io.cpp:99:8:  [2] (misc) open:
  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).
    co.open(comments);
data/ninka-1.3.2/comments/io.h:36: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 i_name[FILE_NAME_LENGTH], o_name[FILE_NAME_LENGTH],c_name[FILE_NAME_LENGTH];
data/ninka-1.3.2/comments/io.h:37: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[BUF_LENGTH], last_written[LAST_WRITTEN_LENGTH],
data/ninka-1.3.2/comments/dformat.cpp:182:6:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
  if(strlen(str)==0)
data/ninka-1.3.2/comments/dformat.cpp:185: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).
  for(unsigned int x=1; x<strlen(str); x++)
data/ninka-1.3.2/comments/dformat.cpp:221: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).
          while ((x+i < strlen(str)) &&
data/ninka-1.3.2/comments/func.cpp:69: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).
  for(x=0; x<((signed)strlen(str)-DEFINE_SEARCH_PRECISION); x++)
data/ninka-1.3.2/comments/func.cpp:73: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).
      if(!strncasecmp((str+x),preprocessors[y],((strlen(str)-x)>strlen(preprocessors[y]) ? strlen(preprocessors[y]) : (strlen(str)-x))))
data/ninka-1.3.2/comments/func.cpp:73: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).
      if(!strncasecmp((str+x),preprocessors[y],((strlen(str)-x)>strlen(preprocessors[y]) ? strlen(preprocessors[y]) : (strlen(str)-x))))
data/ninka-1.3.2/comments/func.cpp:73:92:  [1] (buffer) strlen:
  Does not handle 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(!strncasecmp((str+x),preprocessors[y],((strlen(str)-x)>strlen(preprocessors[y]) ? strlen(preprocessors[y]) : (strlen(str)-x))))
data/ninka-1.3.2/comments/func.cpp:73:120:  [1] (buffer) strlen:
  Does not handle 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(!strncasecmp((str+x),preprocessors[y],((strlen(str)-x)>strlen(preprocessors[y]) ? strlen(preprocessors[y]) : (strlen(str)-x))))
data/ninka-1.3.2/comments/func.cpp:96: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).
    for(x=0; x<(signed)strlen(string); x++)
data/ninka-1.3.2/comments/io.cpp:113:5:  [1] (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 character.
    strcpy(o_name,"");
data/ninka-1.3.2/comments/io.cpp:114:5:  [1] (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 character.
    strcpy(c_name,"");

ANALYSIS SUMMARY:

Hits = 27
Lines analyzed = 1260 in approximately 0.09 seconds (14597 lines/second)
Physical Source Lines of Code (SLOC) = 936
Hits@level = [0]   0 [1]  11 [2]   9 [3]   0 [4]   7 [5]   0
Hits@level+ = [0+]  27 [1+]  27 [2+]  16 [3+]   7 [4+]   7 [5+]   0
Hits/KSLOC@level+ = [0+] 28.8462 [1+] 28.8462 [2+] 17.094 [3+] 7.47863 [4+] 7.47863 [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.