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/up-imapproxy-1.2.8~svn20171105/src/icc.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/logging.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/config.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/becomenonroot.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/hash.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/main.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/request.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/select.c
Examining data/up-imapproxy-1.2.8~svn20171105/src/threads.c
Examining data/up-imapproxy-1.2.8~svn20171105/include/common.h
Examining data/up-imapproxy-1.2.8~svn20171105/include/imapproxy.h
Examining data/up-imapproxy-1.2.8~svn20171105/acconfig.h

FINAL RESULTS:

data/up-imapproxy-1.2.8~svn20171105/src/becomenonroot.c:141:10:  [5] (race) chown:
  This accepts filename arguments; if an attacker can move those files, a
  race condition results. (CWE-362). Use fchown( ) instead.
    if ( chown( PC_Struct.stat_filename, newuid, newgid ) < 0 )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:846:10:  [5] (race) chown:
  This accepts filename arguments; if an attacker can move those files, a
  race condition results. (CWE-362). Use fchown( ) instead.
    rc = chown( PC_Struct.protocol_log_filename, pw->pw_uid, pw->pw_gid );
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1193: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( fullResponse, tokenptr );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1138:5:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    sprintf( DestBuf, "%s", CP );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1263:2:  [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( DestBuf, CP );
data/up-imapproxy-1.2.8~svn20171105/src/becomenonroot.c:177:7:  [3] (misc) chroot:
  chroot can be very helpful, but is hard to use correctly (CWE-250, CWE-22).
  Make sure the program immediately chdir("/"), closes file descriptors, and
  drops root privileges, and that all necessary files (and no more!) are in
  the new root.
	if ( chroot( PC_Struct.chroot_directory ) < 0 || chdir( "/" ) < 0 ) 
data/up-imapproxy-1.2.8~svn20171105/src/main.c:326:18:  [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 (( i = getopt( argc, argv, "f:p:h" ) ) != EOF )
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:172:18:  [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 (( i = getopt( argc, argv, "f:ch" ) ) != EOF )
data/up-imapproxy-1.2.8~svn20171105/include/imapproxy.h:220: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 MailboxName[ MAXMAILBOXNAME ];
data/up-imapproxy-1.2.8~svn20171105/include/imapproxy.h:221: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 SelectString[ SELECT_BUF_SIZE ];
data/up-imapproxy-1.2.8~svn20171105/include/imapproxy.h:222: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 SelectStatus[ SELECT_STATUS_BUF_SIZE ];
data/up-imapproxy-1.2.8~svn20171105/include/imapproxy.h:249: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 ReadBuf[ BUFSIZE ];         /* Read Buffer                          */
data/up-imapproxy-1.2.8~svn20171105/include/imapproxy.h:266: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 username[MAXUSERNAMELEN];      /* username connected on this sd     */
data/up-imapproxy-1.2.8~svn20171105/include/imapproxy.h:267: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 hashedpw[16];                  /* md5 hash copy of password         */
data/up-imapproxy-1.2.8~svn20171105/src/config.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 Keyword[MAX_KEYWORD_LEN]; /* The configuration keyword */
data/up-imapproxy-1.2.8~svn20171105/src/config.c:194: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( *SavedString, String, Size );
data/up-imapproxy-1.2.8~svn20171105/src/config.c:230: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).
    *Value = atoi( (const char *)StringValue );
data/up-imapproxy-1.2.8~svn20171105/src/config.c:356: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 Buffer[1024];
data/up-imapproxy-1.2.8~svn20171105/src/config.c:481:10:  [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).
    FP = fopen( ConfigFile, "r" );
data/up-imapproxy-1.2.8~svn20171105/src/config.c:555:32:  [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.
	    if ( ! strcasecmp( (const char *)Keyword, ConfigTable[i].Keyword ) )
data/up-imapproxy-1.2.8~svn20171105/src/hash.c:67: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	Hash_Buffer[1024];
data/up-imapproxy-1.2.8~svn20171105/src/hash.c:78: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( Hash_Buffer, Input_Key, Size );
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:198: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.
    static char errbuf[32];
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:374: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:539: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:541: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 EncodedAuthBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:542: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 AuthBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:546: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 md5pw[MD5_DIGEST_LENGTH];
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:972: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( AuthBuf, ptr_username, username_size );
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1237:6:  [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( ICC_Active->hashedpw, md5pw, sizeof ICC_Active->hashedpw );
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1317: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/logging.c:59: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 FacilityString[ MAX_FACILITY_STRINGLEN ];
data/up-imapproxy-1.2.8~svn20171105/src/logging.c:65: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 PriorityString[ MAX_PRIORITY_STRINGLEN ];
data/up-imapproxy-1.2.8~svn20171105/src/main.c:241:1:  [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 Banner[BUFSIZE];                /* banner line returned from IMAP svr */
data/up-imapproxy-1.2.8~svn20171105/src/main.c:243:1:  [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 Capability[BUFSIZE];            /* IMAP capability line from server */
data/up-imapproxy-1.2.8~svn20171105/src/main.c:252:1:  [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 TraceUser[MAXUSERNAMELEN];      /* username we want to trace */
data/up-imapproxy-1.2.8~svn20171105/src/main.c:287: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 f_randfile[ PATH_MAX ];
data/up-imapproxy-1.2.8~svn20171105/src/main.c:303: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 ConfigFile[ MAXPATHLEN ];     /* path to our config file */
data/up-imapproxy-1.2.8~svn20171105/src/main.c:304: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 PidFile[ MAXPATHLEN ];		/* path to our pidfile */
data/up-imapproxy-1.2.8~svn20171105/src/main.c:625: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( &srvaddr, ai->ai_addr, ai->ai_addrlen );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:648:10:  [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).
    fd = open( PC_Struct.stat_filename, O_RDWR | O_CREAT, S_IREAD | S_IWRITE );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:829: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).
    Tracefd = open( PC_Struct.protocol_log_filename,
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1040:11:  [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 ( (fp=fopen(pidfile,"wt")) == NULL )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1059:9:  [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( (i=open("/dev/null",O_RDWR)) < 0 )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1165:6:  [2] (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). Risk is low because the
  source is a constant string.
	    strcat( DestBuf, " XIMAPPROXY]" );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1272:2:  [2] (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). Risk is low because the
  source is a constant string.
	strcat( DestBuf, " XIMAPPROXY" );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1275:5:  [2] (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). Risk is low because the
  source is a constant string.
    strcat( DestBuf, "\r\n" );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1561: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    buf[256];
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:145: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 ccc[DIGITS+1];  /* current client conns */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:146: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 pcc[DIGITS+1];  /* peak client conns */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:147: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 asc[DIGITS+1];  /* active server conns */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:148: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 psc[DIGITS+1];  /* peak server conns */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:149: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 rsc[DIGITS+1];  /* retained (cached) server conns */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:150: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 prsc[DIGITS+1]; /* peak retained (cached) server conns */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:151: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 tcca[DIGITS+1]; /* total client connections accepted */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:152: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 tcl[DIGITS+1];  /* total client logins */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.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 tscc[DIGITS+1]; /* total server conns created */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:154: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 tscr[DIGITS+1]; /* total server conns reused */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:155: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 ssrr[DIGITS+4]; /* server socket reuse ration */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:156: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 tsch[DIGITS+1]; /* total select cache hits */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:157: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 tscm[DIGITS+1]; /* total select cache misses */
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:159: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 stimebuf[64];
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:160: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 ctimebuf[64];
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:164: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 ConfigFile[ MAXPATHLEN ];
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:209:10:  [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).
    fd = open( PC_Struct.stat_filename, O_RDONLY );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:164:8:  [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.
extern char Banner[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:166:8:  [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.
extern char Capability[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:172:8:  [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.
extern char TraceUser[MAXUSERNAMELEN];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:215: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:303: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:362: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:432: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:486: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:587: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:620: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:654: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:694: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:695: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 Username[MAXUSERNAMELEN];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:696: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 EncodedUsername[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:697: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 Password[MAXPASSWDLEN];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:698: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 EncodedPassword[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:702: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 fullServerResponse[BUFSIZE] = "\0\0\0";
data/up-imapproxy-1.2.8~svn20171105/src/request.c:706: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 hostaddr[INET6_ADDRSTRLEN], portstr[NI_MAXSERV];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:766: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( (void *)EncodedUsername, (const void *)Client->ReadBuf, 
data/up-imapproxy-1.2.8~svn20171105/src/request.c:809: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( (void *)EncodedPassword, (const void *)Client->ReadBuf, 
data/up-imapproxy-1.2.8~svn20171105/src/request.c:879:2:  [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( SendBuf, "* OK [XPROXYREUSE] IMAP connection reused by imapproxy\r\n" );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:975: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:980: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 fullServerResponse[BUFSIZE] = "\0\0\0";
data/up-imapproxy-1.2.8~svn20171105/src/request.c:983: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 hostaddr[INET6_ADDRSTRLEN], portstr[NI_MAXSERV];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1050:2:  [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( SendBuf, "* OK [XPROXYREUSE] IMAP connection reused by imapproxy\r\n" );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1148: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 TraceBuf[ BUFSIZE ];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1149: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 SendBuf[ BUFSIZE ];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1608: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 SendBuf[BUFSIZE];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1609: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 S_QueuedPreauthCommand[BUFSIZE] = "";
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1613: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 S_UserName[MAXUSERNAMELEN];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1614: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 S_Tag[MAXTAGLEN];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1615: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 S_Password[MAXPASSWDLEN];
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2029:7:  [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( SendBuf, "+ go ahead\r\n" );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2055:7:  [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 ( (void *)CP, (const void *)Client.ReadBuf, BytesRead );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2108:7:  [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( SendBuf, "+ go ahead\r\n" );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2134:7:  [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 ( (void *)CP, (const void *)Client.ReadBuf, BytesRead );
data/up-imapproxy-1.2.8~svn20171105/src/select.c:124: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 Buf[ BUFSIZE ];
data/up-imapproxy-1.2.8~svn20171105/src/select.c:139: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( Buf, SelectCmd, SelectCmdLength );
data/up-imapproxy-1.2.8~svn20171105/src/select.c:328: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 SendBuf[ BUFSIZE ];
data/up-imapproxy-1.2.8~svn20171105/src/select.c:433: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( (void *)BufPtr, (const void *)Server->ReadBuf, rc );
data/up-imapproxy-1.2.8~svn20171105/src/config.c:140:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy( ConfigTable[ INDEX ].Keyword, KEYWORD, MAX_KEYWORD_LEN -1 ); \
data/up-imapproxy-1.2.8~svn20171105/src/config.c:174:12:  [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).
    Size = strlen( String ) + 1;
data/up-imapproxy-1.2.8~svn20171105/src/config.c:513:8:  [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( Buffer ) )
data/up-imapproxy-1.2.8~svn20171105/src/config.c:538:9:  [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).
	Value[ strlen( Value ) ] = ' ';
data/up-imapproxy-1.2.8~svn20171105/src/config.c:542: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).
	i = strlen( Value ) - 1;
data/up-imapproxy-1.2.8~svn20171105/src/config.c:550:13:  [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 ( i < ( strlen( Value ) - 1 ) )
data/up-imapproxy-1.2.8~svn20171105/src/hash.c:68:10:  [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).
  Size = strlen( Input_Key );
data/up-imapproxy-1.2.8~svn20171105/src/icc.c:142: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( "VIC20 LOGOUT\r\n" ) );
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:384:42:  [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 ( IMAP_Write( Server->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:424:4:  [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( tokenptr ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:572: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).
    EVP_DigestUpdate(mdctx, Password, strlen(Password));
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:813: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).
	if ( IMAP_Write( Server.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:860:62:  [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 ( memcmp( (const void *)tokenptr, (const void *)"P0001", strlen( tokenptr ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:934: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 ( *Password == '"' && *(Password + strlen( Password ) - 1) == '"' )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:935:64:  [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).
	    rc = strncmp( Password + 1, PC_Struct.auth_shared_secret, strlen( Password ) - 2 );
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:960:18:  [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).
	username_size = strlen( Username );
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:998: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).
	if ( IMAP_Write( Server.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1016: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).
		  Username, strlen( Password ) );
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1017: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).
	if ( IMAP_Write( Server.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1056: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).
	if ( IMAP_Write( Server.conn, SendBuf, strlen( SendBuf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1074: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).
	if ( IMAP_Write( Server.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1141:4:  [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( tokenptr ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1234:6:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	    strncpy( ICC_Active->username, Username, 
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1325: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( queued_preauth_command ) )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1330:42:  [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 ( IMAP_Write( Server->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1379:62:  [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 ( memcmp( (const void *)tokenptr, (const void *)SendBuf, strlen( tokenptr ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/imapcommon.c:1621:9:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	return read( ICD->sd, buf, count );
data/up-imapproxy-1.2.8~svn20171105/src/logging.c:83:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy( SyslogFacilityTable[ INDEX ].FacilityString, #FACILITY, MAX_FACILITY_STRINGLEN - 1 ); \
data/up-imapproxy-1.2.8~svn20171105/src/logging.c:98:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy( SyslogPriorityTable[ INDEX ].PriorityString, #PRIORITY, MAX_PRIORITY_STRINGLEN - 1 ); \
data/up-imapproxy-1.2.8~svn20171105/src/main.c:316:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy( PidFile, DEFAULT_PID_FILE, sizeof PidFile -1 );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:332:6:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	    strncpy( ConfigFile, optarg, sizeof ConfigFile -1 );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:340:13:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
            strncpy( PidFile, optarg, sizeof PidFile -1 );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:363:2:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	strncpy( ConfigFile, DEFAULT_CONFIG_FILE, sizeof ConfigFile -1 );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1180: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).
	       !strncasecmp( CP, "CAPABILITY", strlen( "CAPABILITY" ) ) ) ||
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1182:42:  [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).
	       !strncasecmp( CP, "[CAPABILITY", strlen( "[CAPABILITY" ) ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1197:11:  [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).
		CPlen = strlen( CP );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1207: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).
	    if ( !strncasecmp( CP, "UNSELECT", strlen( "UNSELECT" ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1216: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).
	    if ( ! strncasecmp( CP, "AUTH=", strlen( "AUTH=" ) ) &&
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1217:44:  [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).
	         ( strncasecmp( CP, "AUTH=LOGIN", strlen( "AUTH=LOGIN" ) ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1226: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).
	    if ( ! strncasecmp( CP, "SASL-IR", strlen( "SASL-IR" ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1235: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).
	    if ( ! strncasecmp( CP, "IDLE", strlen( "IDLE" ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1244:42:  [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( CP, "STARTTLS", strlen( "STARTTLS" ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1255:47:  [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( CP, "LOGINDISABLED", strlen( "LOGINDISABLED" ) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1262:2:  [1] (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). Risk is low because the
  source is a constant character.
	strcat( DestBuf, " ");
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1277:13:  [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).
    return( strlen( DestBuf ) );
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1366:49:  [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( Banner, IMAP_UNTAGGED_OK, strlen(IMAP_UNTAGGED_OK)) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1375:52:  [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 ( IMAP_Write( itd.conn, "1 CAPABILITY\r\n", strlen("1 CAPABILITY\r\n") ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1427:52:  [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( itd.ReadBuf, IMAP_TAGGED_OK, strlen(IMAP_TAGGED_OK) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1456: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 ( IMAP_Write( itd.conn, "1 CAPABILITY\r\n", strlen("1 CAPABILITY\r\n") ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1507: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( itd.ReadBuf, IMAP_TAGGED_OK, strlen(IMAP_TAGGED_OK) ) )
data/up-imapproxy-1.2.8~svn20171105/src/main.c:1532: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).
    if ( IMAP_Write( itd.conn, "2 LOGOUT\r\n", strlen("2 LOGOUT\r\n") ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:180:13:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
            strncpy( ConfigFile, optarg, sizeof ConfigFile -1 );
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:204:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy( ConfigFile, DEFAULT_CONFIG_FILE, sizeof ConfigFile -1 );
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:296:6:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	    strncpy( stimebuf, ctime( &IMAPCount->StartTime ),
data/up-imapproxy-1.2.8~svn20171105/src/pimpstat.c:298:6:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	    strncpy( ctimebuf, ctime( &IMAPCount->CountTime ),
data/up-imapproxy-1.2.8~svn20171105/src/request.c:224: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen( SendBuf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:240: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:259: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:270:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:311: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen( SendBuf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:334:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:372: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen( SendBuf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:391:43:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:404:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:440: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen( SendBuf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:449:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:456:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:494: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen( SendBuf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:518: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).
	write( Tracefd, SendBuf, strlen( SendBuf ) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:522: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:538: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).
	if ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:550:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy( TraceUser, Username, sizeof TraceUser - 1 );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:555:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:563:30:  [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).
    write( Tracefd, SendBuf, strlen( SendBuf ) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:593:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:627:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:660:42:  [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 ( IMAP_Write( itd->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:720:49:  [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).
    EVP_EncodeBlock( EncodedUsername, Username, strlen( Username ) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:724:45:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:777:49:  [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).
    EVP_EncodeBlock( EncodedPassword, Password, strlen( Password ) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:781:45:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:863:42:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:880:42:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:894:45:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen( SendBuf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1034:42:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1051:42:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1068:45:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1293:29:  [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).
		write( Tracefd, TraceBuf, strlen( TraceBuf ) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1339:33:  [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).
		    write( Tracefd, TraceBuf, strlen( TraceBuf ) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1369: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).
					strlen(SendBuf) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1501:33:  [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).
		    write( Tracefd, TraceBuf, strlen( TraceBuf ) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1536:33:  [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).
		    write( Tracefd, TraceBuf, strlen( TraceBuf ) );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1733:45:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1748:45:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1761:2:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	strncpy( S_Tag, Tag, MAXTAGLEN - 1 );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1829:42:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1851:4:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
			strncpy( S_Tag, Tag, MAXTAGLEN - 1 );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1868:42:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1882:42:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1979:42:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1987:6:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
	    strncpy( S_UserName, Username, sizeof S_UserName - 1 );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:1998: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).
	     && S_UserName[ 0 ] == '{' && S_UserName[ strlen( S_UserName ) - 1 ] == '}' )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2016:46:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2030:46:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2046:43:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2093:46:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2109:46:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2125:43:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2170:46:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2180:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
		strncpy( S_Password, Lasts, sizeof S_Password - 1 );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2212:7:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
		    strncpy( S_Tag, Tag, MAXTAGLEN - 1 );
data/up-imapproxy-1.2.8~svn20171105/src/request.c:2242:45:  [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 ( IMAP_Write( Client.conn, SendBuf, strlen(SendBuf) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/select.c:170:11:  [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( Tag ) + 1 ) );
data/up-imapproxy-1.2.8~svn20171105/src/select.c:178: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).
	if ( IMAP_Write( Client->conn, Buf, strlen( Buf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/select.c:217:42:  [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 ( IMAP_Write( Client->conn, Buf, strlen( Buf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/select.c:251:42:  [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 ( IMAP_Write( Client->conn, Buf, strlen( Buf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/select.c:287: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).
	if ( IMAP_Write( Client->conn, Buf, strlen( Buf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/select.c:331:8:  [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( ISC->SelectString ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/select.c:340:45:  [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 ( IMAP_Write( Client->conn, SendBuf, strlen( SendBuf ) ) == -1 )
data/up-imapproxy-1.2.8~svn20171105/src/select.c:473:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy( (char *)ISC->MailboxName, (const char *)MailboxName, MAXMAILBOXNAME - 1 );
data/up-imapproxy-1.2.8~svn20171105/src/select.c:542:8:  [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( SafeCommands[i] ) ) )

ANALYSIS SUMMARY:

Hits = 226
Lines analyzed = 9121 in approximately 0.28 seconds (32005 lines/second)
Physical Source Lines of Code (SLOC) = 4608
Hits@level = [0] 377 [1] 121 [2]  97 [3]   3 [4]   3 [5]   2
Hits@level+ = [0+] 603 [1+] 226 [2+] 105 [3+]   8 [4+]   5 [5+]   2
Hits/KSLOC@level+ = [0+] 130.859 [1+] 49.0451 [2+] 22.7865 [3+] 1.73611 [4+] 1.08507 [5+] 0.434028
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.