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/pktanon-2~git20160407.0.2bde4f2+dfsg/tests/anonprimitives/AnonTester.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/tests/anonprimitives/AnonTester.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/LinuxCookedCaptureTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/EthernetPacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/UdpPacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/UdpLitePacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/IPv4PacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/PayloadTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/UdpLitePacketConfigurator.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/PseudoheaderAwareTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/Addresses.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/IPv4PacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/UdpPacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/PayloadTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/IcmpPacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/VlanTagTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/ArpPacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/ErrorCodes.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/VlanTagTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/IPv6PacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/UdpLitePacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/EthernetPacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/UdpLitePacketConfigurator.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/IPv6PacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/ICMPv6PacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/ErrorCodes.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/IcmpPacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/DefaultTransformationsConfigurator.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/TcpPacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/TransformationsConfigurator.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/LinuxCookedCaptureTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/Transformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/ArpPacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/TransformationsConfigurator.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/TcpPacketTransformation.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/Transformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/ICMPv6PacketTransformation.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/transformations/DefaultTransformationsConfigurator.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonConstOverwriteRange.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonCryptoPan.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashSha256_Nettle.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBroadcastHandler.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashSha1.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonContinuousChar.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonConstOverwriteRange.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBytewiseHashSha1.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBytewiseHashHmacSha1.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBytewiseHashHmacSha1.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonContinuousChar.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBytewise.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonKnownProtocolHandler.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonRandomize.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonKnownEthertypeHandler.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonKnownEthertypeHandler.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonWhitenoise.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBytewiseHashSha1.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonConstOverwrite.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonShuffle.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashSha1_Nettle.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonIdentity.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBroadcastHandler.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonRandomize.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonShorten.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashHmacSha1_Nettle.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonPrimitive.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashSha256.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashHmacSha1.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonConstOverwrite.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonIdentity.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonKnownProtocolHandler.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonShuffle.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonCryptoPan.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonWhitenoise.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBytewise.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonPrimitive.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonShorten.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/PktAnon.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/RandomNumberGenerator.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/PktAnonConfig.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/optmacros.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/RandomNumberGenerator.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/PHF.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/AnonFactory.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/PktAnonConfig.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/PHT.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/HardCodedConfig.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/ProtocolUtils.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/Checksum.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/log.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/AnonFactory.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/debug.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/Checksum.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/HardCodedConfig.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/ConfigSAXParser.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/PktAnonC.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/ConfigSAXParser.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/Params.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapOutputSource.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/chronometer.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/SocketOutput.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/OutputSource.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/console_utils.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/includes.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/RuntimeFactory.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/IstreamRecordsHandler.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/PktAnonRuntime.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/SocketOutput.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/OstreamOutput.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/Stats.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/OstreamOutput.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/globals.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/Main.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/PcapUtils.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/console_utils.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapInjectOutput.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/IstreamRecordsHandler.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/PktAnonRuntime.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapDumpOutput.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/RawSocketRecordsHandler.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapRecordsHandler.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapRecordsHandler.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapInjectOutput.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/PcapHeaders.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/RecordsHandler.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/RawSocketRecordsHandler.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapDumpOutput.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/RuntimeConfig.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/RuntimeConfig.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/RuntimeFactory.cpp
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/Utils.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/include/PktAnon.h
Examining data/pktanon-2~git20160407.0.2bde4f2+dfsg/include/PktAnonC.h

FINAL RESULTS:

data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashHmacSha1_Nettle.cpp:30: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 ( ( char* ) key, hmackey.c_str () );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashHmacSha1_Nettle.cpp:32: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 ( ( char* ) key, hmackey.c_str() );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/RawSocketRecordsHandler.cpp:86: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 ( ethreq.ifr_name, ifname );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/console_utils.cpp:82:13:  [3] (buffer) getopt_long:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
    opt = ::getopt_long ( argc, argv, short_options, long_options, &option_index );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBroadcastHandler.cpp:37: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(dst_buff, src_buff, len);
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBytewise.cpp:21: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 ( anonbytes, other.anonbytes, 256*sizeof ( unsigned char ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonBytewise.h:23:12:  [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.
  unsigned char anonbytes[256];
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonConstOverwriteRange.cpp:53: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(dst_buff, src_buff, len);
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonCryptoPan.cpp:39: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(&orig, buf, sizeof(UINT32));
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonCryptoPan.cpp:42: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(buf, &orig, sizeof(UINT32));
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashHmacSha1_Nettle.cpp:62: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 ( ( unsigned char* ) buf + pos, buf, std::min ( remaining, SHA1_DIGEST_SIZE ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashHmacSha1_Nettle.cpp:90: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 ( ( unsigned char* ) dst_buff + pos, dst_buff, std::min ( remaining, SHA1_DIGEST_SIZE ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashSha1_Nettle.cpp:42: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 ( (unsigned char*) buf + pos, buf, std::min (remaining, SHA1_DIGEST_SIZE));
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashSha1_Nettle.cpp:68: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 ( (unsigned char*) dst_buff + pos, dst_buff, std::min (remaining, SHA1_DIGEST_SIZE));
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashSha256_Nettle.cpp:38: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 ( ( unsigned char* ) buf + pos, buf, std::min ( remaining, SHA256_DIGEST_SIZE ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonHashSha256_Nettle.cpp:64: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 ( ( unsigned char* ) dst_buff + pos, dst_buff, std::min ( remaining, SHA256_DIGEST_SIZE ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonIdentity.cpp:26: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(dst_buff, src_buff, len);
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonKnownEthertypeHandler.cpp:20: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(dst_buff, src_buff, len);
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonKnownProtocolHandler.cpp:20: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(dst_buff, src_buff, len);
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonPrimitive.cpp:51: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(dst_buff, src_buff, len);
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonShorten.cpp:52: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 ( dst_buff, src_buff, std::min ( newlen, len ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonShuffle.cpp:31: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 ( dst_buff, src_buff, len );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/libpktanon/anonprimitives/AnonWhitenoise.cpp:76: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(dst_buff, src_buff, len);
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapDumpOutput.cpp:22: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 errbuf[PCAP_ERRBUF_SIZE];
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapInjectOutput.cpp:20: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 errbuf[PCAP_ERRBUF_SIZE];
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapRecordsHandler.cpp:39: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 errbuf[PCAP_ERRBUF_SIZE];
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/LibpcapRecordsHandler.cpp:150: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 ( &transformed_packet->pkt_header, pkt_header, sizeof ( struct pcap_pkthdr ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/SocketOutput.cpp:74: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 ( &s_addr.sin6_addr,  &sock_addr.ip6_addr,  sizeof ( struct in6_addr ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/console_utils.cpp:93:24:  [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).
        snaplen = std::atoi ( optarg );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/tests/anonprimitives/AnonTester.cpp:45: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).
      return atoi ( &c );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/tests/anonprimitives/AnonTester.cpp:103: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 dst_buff[src_len +1];
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/IstreamRecordsHandler.cpp:67:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  input_stream->read ( ( char* ) file_header,  sizeof ( PCAP_FILE_HEADER ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/IstreamRecordsHandler.cpp:98:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    input_stream->read ( ( char* ) &record_header,  sizeof ( PCAP_REC_HEADER ) );
data/pktanon-2~git20160407.0.2bde4f2+dfsg/src/IstreamRecordsHandler.cpp:106:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    input_stream->read ( ( char* ) original_packet, pkt_snaplen );

ANALYSIS SUMMARY:

Hits = 34
Lines analyzed = 8815 in approximately 0.23 seconds (38959 lines/second)
Physical Source Lines of Code (SLOC) = 5520
Hits@level = [0]   2 [1]   3 [2]  27 [3]   1 [4]   3 [5]   0
Hits@level+ = [0+]  36 [1+]  34 [2+]  31 [3+]   4 [4+]   3 [5+]   0
Hits/KSLOC@level+ = [0+] 6.52174 [1+] 6.15942 [2+] 5.61594 [3+] 0.724638 [4+] 0.543478 [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.