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/multimon-ng-1.1.9+dfsg/BCHCode.h
Examining data/multimon-ng-1.1.9+dfsg/BCHCode_stub.c
Examining data/multimon-ng-1.1.9+dfsg/clip.c
Examining data/multimon-ng-1.1.9+dfsg/costabf.c
Examining data/multimon-ng-1.1.9+dfsg/costabi.c
Examining data/multimon-ng-1.1.9+dfsg/demod_afsk12.c
Examining data/multimon-ng-1.1.9+dfsg/demod_afsk24.c
Examining data/multimon-ng-1.1.9+dfsg/demod_afsk24_2.c
Examining data/multimon-ng-1.1.9+dfsg/demod_afsk24_3.c
Examining data/multimon-ng-1.1.9+dfsg/demod_ccir.c
Examining data/multimon-ng-1.1.9+dfsg/demod_clipfsk.c
Examining data/multimon-ng-1.1.9+dfsg/demod_display.c
Examining data/multimon-ng-1.1.9+dfsg/demod_dtmf.c
Examining data/multimon-ng-1.1.9+dfsg/demod_dumpcsv.c
Examining data/multimon-ng-1.1.9+dfsg/demod_dzvei.c
Examining data/multimon-ng-1.1.9+dfsg/demod_eas.c
Examining data/multimon-ng-1.1.9+dfsg/demod_eea.c
Examining data/multimon-ng-1.1.9+dfsg/demod_eia.c
Examining data/multimon-ng-1.1.9+dfsg/demod_flex.c
Examining data/multimon-ng-1.1.9+dfsg/demod_fmsfsk.c
Examining data/multimon-ng-1.1.9+dfsg/demod_fsk96.c
Examining data/multimon-ng-1.1.9+dfsg/demod_hapn48.c
Examining data/multimon-ng-1.1.9+dfsg/demod_morse.c
Examining data/multimon-ng-1.1.9+dfsg/demod_poc12.c
Examining data/multimon-ng-1.1.9+dfsg/demod_poc24.c
Examining data/multimon-ng-1.1.9+dfsg/demod_poc5.c
Examining data/multimon-ng-1.1.9+dfsg/demod_pzvei.c
Examining data/multimon-ng-1.1.9+dfsg/demod_ufsk12.c
Examining data/multimon-ng-1.1.9+dfsg/demod_x10.c
Examining data/multimon-ng-1.1.9+dfsg/demod_zvei1.c
Examining data/multimon-ng-1.1.9+dfsg/demod_zvei2.c
Examining data/multimon-ng-1.1.9+dfsg/demod_zvei3.c
Examining data/multimon-ng-1.1.9+dfsg/filter-i386.h
Examining data/multimon-ng-1.1.9+dfsg/filter.h
Examining data/multimon-ng-1.1.9+dfsg/fms.c
Examining data/multimon-ng-1.1.9+dfsg/gen.c
Examining data/multimon-ng-1.1.9+dfsg/gen.h
Examining data/multimon-ng-1.1.9+dfsg/gen_clipfsk.c
Examining data/multimon-ng-1.1.9+dfsg/gen_dtmf.c
Examining data/multimon-ng-1.1.9+dfsg/gen_hdlc.c
Examining data/multimon-ng-1.1.9+dfsg/gen_sin.c
Examining data/multimon-ng-1.1.9+dfsg/gen_uart.c
Examining data/multimon-ng-1.1.9+dfsg/gen_zvei.c
Examining data/multimon-ng-1.1.9+dfsg/hdlc.c
Examining data/multimon-ng-1.1.9+dfsg/mkcostab.c
Examining data/multimon-ng-1.1.9+dfsg/msvc_support.h
Examining data/multimon-ng-1.1.9+dfsg/multimon.h
Examining data/multimon-ng-1.1.9+dfsg/pocsag.c
Examining data/multimon-ng-1.1.9+dfsg/selcall.c
Examining data/multimon-ng-1.1.9+dfsg/uart.c
Examining data/multimon-ng-1.1.9+dfsg/unixinput.c
Examining data/multimon-ng-1.1.9+dfsg/win32_getopt.c
Examining data/multimon-ng-1.1.9+dfsg/win32_getopt.h
Examining data/multimon-ng-1.1.9+dfsg/win32_soundin.c
Examining data/multimon-ng-1.1.9+dfsg/xdisplay.c

FINAL RESULTS:

data/multimon-ng-1.1.9+dfsg/demod_flex.c:613:22:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
        pt_offset += sprintf(pt_out + pt_offset, "|ALN|%s\n", message);
data/multimon-ng-1.1.9+dfsg/gen.c:60:5:  [4] (format) snprintf:
  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.
int snprintf(char *buf, size_t sz, const char *fmt, ...)
data/multimon-ng-1.1.9+dfsg/gen.c:66:6:  [4] (format) vsprintf:
  Potential format string problem (CWE-134). Make format string constant.
	i = vsprintf(buf, fmt, arg);
data/multimon-ng-1.1.9+dfsg/gen.c:337:4:  [4] (shell) execlp:
  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.
			execlp("sox", "sox", 
data/multimon-ng-1.1.9+dfsg/gen.c:537:9:  [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.
		(void)fprintf(stderr, usage_str);
data/multimon-ng-1.1.9+dfsg/unixinput.c:145:5:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    vfprintf(stdout, fmt, args);
data/multimon-ng-1.1.9+dfsg/unixinput.c:501:13:  [4] (shell) execlp:
  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.
            execlp("sox", "sox", repeatable_sox?"-R":"-V2", mute_sox?"-V1":"-V2",
data/multimon-ng-1.1.9+dfsg/unixinput.c:815:15:  [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.
        (void)fprintf(stderr, usage_str, argv[0]);
data/multimon-ng-1.1.9+dfsg/xdisplay.c:97:11:  [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.
    (void)fprintf(stderr, mesg, evt->request_code);
data/multimon-ng-1.1.9+dfsg/gen.c:396:14:  [3] (buffer) getopt:
  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.
	while ((c = getopt(argc, argv, "t:a:d:s:z:p:u:c:h")) != EOF) {
data/multimon-ng-1.1.9+dfsg/unixinput.c:624:17:  [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.
    while ((c = getopt_long(argc, argv, "t:a:s:v:f:b:C:o:d:g:cqhAmrnjeuipxy", long_options, NULL)) != EOF) {
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:533:5:  [3] (buffer) getopt:
  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.
int getopt (int argc, TCHAR *const *argv, const TCHAR *optstring) _GETOPT_THROW
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:538:5:  [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.
int getopt_long (int argc, TCHAR *const *argv, const TCHAR *options, const struct option *long_options, int *opt_index) _GETOPT_THROW
data/multimon-ng-1.1.9+dfsg/win32_getopt.h:116:24:  [3] (buffer) getopt:
  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.
extern _GETOPT_API int getopt(int argc, TCHAR *const *argv, const TCHAR *optstring) _GETOPT_THROW;
data/multimon-ng-1.1.9+dfsg/win32_getopt.h:117:24:  [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.
extern _GETOPT_API int getopt_long(int ___argc, TCHAR *const *___argv, const TCHAR *__shortopts, const struct option *__longopts, int *__longind) _GETOPT_THROW;
data/multimon-ng-1.1.9+dfsg/demod_display.c:75:2:  [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, i*sizeof(s->l1.scope.data[0]));
data/multimon-ng-1.1.9+dfsg/demod_flex.c:523:9:  [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 message[1024];
data/multimon-ng-1.1.9+dfsg/demod_flex.c:592:16:  [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.
        static char pt_out[4096] = { 0 };
data/multimon-ng-1.1.9+dfsg/demod_flex.c:593: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.
        int pt_offset = sprintf(pt_out, "FLEX|%04i-%02i-%02i %02i:%02i:%02i|%i/%i/%c/%c|%02i.%03i|%09lld",
data/multimon-ng-1.1.9+dfsg/demod_flex.c:605:38:  [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.
                        pt_offset += sprintf(pt_out + pt_offset, " %09lld", flex->GroupHandler.GroupCodes[groupbit][g]);
data/multimon-ng-1.1.9+dfsg/demod_flex.c:619:18:  [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 const char flex_bcd[17] = "0123456789 U -][";
data/multimon-ng-1.1.9+dfsg/demod_flex.c:683:18:  [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 const char flex_bcd[17] = "0123456789 U -][";
data/multimon-ng-1.1.9+dfsg/demod_morse.c:153: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 string[32 + 3]; //32 dit/dahs + 2 brackets and 0
data/multimon-ng-1.1.9+dfsg/fms.c:180:27:  [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.
static void fms_print_crc(char crc[7]) {
data/multimon-ng-1.1.9+dfsg/fms.c:206: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 crc[7];
data/multimon-ng-1.1.9+dfsg/gen.c:133:12:  [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).
	if ((fd = open(ifname ? ifname : "/dev/audio", O_WRONLY)) < 0) {
data/multimon-ng-1.1.9+dfsg/gen.c:196: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 b[8192];
data/multimon-ng-1.1.9+dfsg/gen.c:203:12:  [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).
	if ((fd = open(ifname ? ifname : "/dev/dsp", O_WRONLY)) < 0) {
data/multimon-ng-1.1.9+dfsg/gen.c:312:13:  [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).
		if ((fd = open(fname, O_WRONLY|O_CREAT|O_EXCL, 0777)) < 0) {
data/multimon-ng-1.1.9+dfsg/gen.c:326:4:  [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 srate[8];
data/multimon-ng-1.1.9+dfsg/gen.h:40:4:  [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 str[256];
data/multimon-ng-1.1.9+dfsg/gen.h:49:4:  [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 str[256];
data/multimon-ng-1.1.9+dfsg/gen.h:55: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.
			unsigned char pkt[256];
data/multimon-ng-1.1.9+dfsg/gen.h:61: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.
			unsigned char pkt[256];
data/multimon-ng-1.1.9+dfsg/gen.h:67: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.
			unsigned char pkt[256];
data/multimon-ng-1.1.9+dfsg/gen.h:92: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.
			unsigned char data[512];
data/multimon-ng-1.1.9+dfsg/gen.h:98: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.
			unsigned char data[512];
data/multimon-ng-1.1.9+dfsg/gen.h:105: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.
			unsigned char data[512];
data/multimon-ng-1.1.9+dfsg/mkcostab.c:40:13:  [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).
	if (!(fi = fopen("costabi.c", "w")))
data/multimon-ng-1.1.9+dfsg/mkcostab.c:42:13:  [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).
	if (!(ff = fopen("costabf.c", "w")))
data/multimon-ng-1.1.9+dfsg/multimon.h:71:14:  [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 rxbuf[512];
data/multimon-ng-1.1.9+dfsg/multimon.h:79:14:  [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 rxbuf[512];
data/multimon-ng-1.1.9+dfsg/multimon.h:92:22:  [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 rxbuf[8192];
data/multimon-ng-1.1.9+dfsg/multimon.h:100:22:  [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 rxbuf[512];
data/multimon-ng-1.1.9+dfsg/multimon.h:108: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 last_message[269];
data/multimon-ng-1.1.9+dfsg/multimon.h:109: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 msg_buf[4][269];
data/multimon-ng-1.1.9+dfsg/multimon.h:110: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 head_buf[4];
data/multimon-ng-1.1.9+dfsg/multimon.h:124:22:  [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 buffer[512];
data/multimon-ng-1.1.9+dfsg/multimon.h:252: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 b[4];
data/multimon-ng-1.1.9+dfsg/multimon.h:254: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 bstring[42];
data/multimon-ng-1.1.9+dfsg/pocsag.c:129: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 *trtab[128] = {
data/multimon-ng-1.1.9+dfsg/pocsag.c:490:17:  [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(cp, tstr, tlen);
data/multimon-ng-1.1.9+dfsg/pocsag.c:544:17:  [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(cp, tstr, tlen);
data/multimon-ng-1.1.9+dfsg/pocsag.c:577: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 num_string[1024];
data/multimon-ng-1.1.9+dfsg/pocsag.c:578: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 alpha_string[1024];
data/multimon-ng-1.1.9+dfsg/pocsag.c:579: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 skyper_string[1024];
data/multimon-ng-1.1.9+dfsg/pocsag.c:830:21:  [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(in, xpose, sizeof(uint32_t)*32);
data/multimon-ng-1.1.9+dfsg/pocsag.c:860:13:  [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(in, xpose, sizeof(uint32_t)*32);
data/multimon-ng-1.1.9+dfsg/unixinput.c:119:2:  [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 time_buf[20];
data/multimon-ng-1.1.9+dfsg/unixinput.c:179:15:  [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).
    if ((fd = open(ifname ? ifname : "/dev/audio", O_RDONLY)) < 0) {
data/multimon-ng-1.1.9+dfsg/unixinput.c:324:18:  [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 b[8192];
data/multimon-ng-1.1.9+dfsg/unixinput.c:333:15:  [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).
    if ((fd = open(ifname ? ifname : "/dev/dsp", O_RDONLY)) < 0) {
data/multimon-ng-1.1.9+dfsg/unixinput.c:470:19:  [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).
        if ((fd = open(fname, O_RDONLY | O_BINARY)) < 0) {
data/multimon-ng-1.1.9+dfsg/unixinput.c:472:19:  [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).
        if ((fd = open(fname, O_RDONLY)) < 0) {
data/multimon-ng-1.1.9+dfsg/unixinput.c:490: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 srate[8];
data/multimon-ng-1.1.9+dfsg/unixinput.c:495: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(srate, "%d", sample_rate);
data/multimon-ng-1.1.9+dfsg/win32_soundin.c: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(&fbuf[0],&fbuf[SAMPLES_PER_BUFFER],sizeof(float)*Overlap);
data/multimon-ng-1.1.9+dfsg/xdisplay.c:49: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.
	unsigned char b[0];
data/multimon-ng-1.1.9+dfsg/xdisplay.c:90: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 err_buf[256], mesg[256], number[256];
data/multimon-ng-1.1.9+dfsg/xdisplay.c:98:11:  [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.
    (void)sprintf(number, "%d", evt->request_code);
data/multimon-ng-1.1.9+dfsg/xdisplay.c:112:9:  [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.
	static char kbuf[32];
data/multimon-ng-1.1.9+dfsg/demod_eas.c:225:19:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
                  strncpy(s->l2.eas.last_message, s->l2.eas.msg_buf[j],
data/multimon-ng-1.1.9+dfsg/gen.c:444:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy(params[num_gen-1].p.dtmf.str, optarg, sizeof(params[num_gen-1].p.dtmf.str));
data/multimon-ng-1.1.9+dfsg/gen.c:471:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy(params[num_gen-1].p.zvei.str, optarg, sizeof(params[num_gen-1].p.dtmf.str));
data/multimon-ng-1.1.9+dfsg/gen.c:484:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy(params[num_gen-1].p.uart.pkt, optarg, sizeof(params[num_gen-1].p.uart.pkt));
data/multimon-ng-1.1.9+dfsg/gen.c:485: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).
			params[num_gen-1].p.uart.pktlen = strlen(params[num_gen-1].p.uart.pkt);
data/multimon-ng-1.1.9+dfsg/gen.c:498:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy(params[num_gen-1].p.clipfsk.pkt, optarg, sizeof(params[num_gen-1].p.clipfsk.pkt));
data/multimon-ng-1.1.9+dfsg/gen.c:499: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).
			params[num_gen-1].p.clipfsk.pktlen = strlen(params[num_gen-1].p.clipfsk.pkt);
data/multimon-ng-1.1.9+dfsg/gen.c:529:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy(params[num_gen-1].p.hdlc.pkt+16, optarg, 
data/multimon-ng-1.1.9+dfsg/gen.c:532:5:  [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(params[num_gen-1].p.hdlc.pkt+16);
data/multimon-ng-1.1.9+dfsg/pocsag.c:487: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).
            int tlen = strlen(tstr);
data/multimon-ng-1.1.9+dfsg/pocsag.c:542: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).
            int tlen = strlen(tstr);
data/multimon-ng-1.1.9+dfsg/unixinput.c:211:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        i = read(fd, sp = buffer, sizeof(buffer));
data/multimon-ng-1.1.9+dfsg/unixinput.c:409:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
            i = read(fd, sp = b.s, sizeof(b.s));
data/multimon-ng-1.1.9+dfsg/unixinput.c:521:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        i = read(fd, sp = buffer, sizeof(buffer));
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:241:66:  [1] (buffer) _tcslen:
  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 ((unsigned int)(nameend - d->__nextchar) == (unsigned int)_tcslen(p->name))
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:264:22:  [1] (buffer) _tcslen:
  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).
				d->__nextchar += _tcslen(d->__nextchar);
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:293:24:  [1] (buffer) _tcslen:
  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).
						d->__nextchar += _tcslen(d->__nextchar);
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:309:24:  [1] (buffer) _tcslen:
  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).
						d->__nextchar += _tcslen(d->__nextchar);
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:314:22:  [1] (buffer) _tcslen:
  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).
				d->__nextchar += _tcslen(d->__nextchar);
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:401:54:  [1] (buffer) _tcslen:
  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 ((unsigned int) (nameend - d->__nextchar) == _tcslen(p->name))
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:423:23:  [1] (buffer) _tcslen:
  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).
					d->__nextchar += _tcslen(d->__nextchar);
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:443:25:  [1] (buffer) _tcslen:
  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).
							d->__nextchar += _tcslen(d->__nextchar);
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:459:25:  [1] (buffer) _tcslen:
  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).
							d->__nextchar += _tcslen(d->__nextchar);
data/multimon-ng-1.1.9+dfsg/win32_getopt.c:465:23:  [1] (buffer) _tcslen:
  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).
					d->__nextchar += _tcslen(d->__nextchar);
data/multimon-ng-1.1.9+dfsg/xdisplay.c:271:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			i = read(datapipe[0], bp, j);
data/multimon-ng-1.1.9+dfsg/xdisplay.c:407:6:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	i = read(cli[cnum].cmdfd, &c, 1);

ANALYSIS SUMMARY:

Hits = 97
Lines analyzed = 11834 in approximately 0.38 seconds (30982 lines/second)
Physical Source Lines of Code (SLOC) = 8345
Hits@level = [0]  93 [1]  26 [2]  56 [3]   6 [4]   9 [5]   0
Hits@level+ = [0+] 190 [1+]  97 [2+]  71 [3+]  15 [4+]   9 [5+]   0
Hits/KSLOC@level+ = [0+] 22.7681 [1+] 11.6237 [2+] 8.50809 [3+] 1.79748 [4+] 1.07849 [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.