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/parafly-0.1.0/config.h
Examining data/parafly-0.1.0/src/ParaFly.cpp
Examining data/parafly-0.1.0/src/argProcessor.cpp
Examining data/parafly-0.1.0/src/argProcessor.hpp

FINAL RESULTS:

data/parafly-0.1.0/src/ParaFly.cpp:175:19:  [4] (shell) system:
  This causes a new program to execute and is difficult to use safely
  (CWE-78). try using a library call that implements the same functionality
  if available.
            ret = system(command.c_str());
data/parafly-0.1.0/src/ParaFly.cpp:179:17:  [4] (shell) system:
  This causes a new program to execute and is difficult to use safely
  (CWE-78). try using a library call that implements the same functionality
  if available.
                system("sleep 10"); // give the system a short break to recover
data/parafly-0.1.0/src/ParaFly.cpp:71: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).
    in.open(commands_file.c_str());  // Use it to read from a file named data.txt.
data/parafly-0.1.0/src/ParaFly.cpp:91:27:  [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).
        prev_completed_fh.open(completed_commands_filename.c_str());
data/parafly-0.1.0/src/ParaFly.cpp:105:35:  [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).
        successfully_completed_fh.open(completed_commands_filename.c_str(), ios_base::app); // open for append
data/parafly-0.1.0/src/argProcessor.cpp:41:10:  [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).
  return(atoi(argVal[arg].c_str()));
data/parafly-0.1.0/src/argProcessor.cpp:46:10:  [2] (integer) atol:
  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).
  return(atol(argVal[arg].c_str()));

ANALYSIS SUMMARY:

Hits = 7
Lines analyzed = 402 in approximately 0.02 seconds (21010 lines/second)
Physical Source Lines of Code (SLOC) = 273
Hits@level = [0]   0 [1]   0 [2]   5 [3]   0 [4]   2 [5]   0
Hits@level+ = [0+]   7 [1+]   7 [2+]   7 [3+]   2 [4+]   2 [5+]   0
Hits/KSLOC@level+ = [0+] 25.641 [1+] 25.641 [2+] 25.641 [3+] 7.32601 [4+] 7.32601 [5+]   0
Dot directories skipped = 2 (--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.