apps/passwd.c:247: error: BUFFER_OVERRUN_L3
  Offset: 8 Size: [3, 9] by call to `do_passwd`.
Showing all 5 steps of the trace


apps/passwd.c:118:5: Assignment
116.   {
117.       BIO *in = NULL;
118.       char *infile = NULL, *salt = NULL, *passwd = NULL, **passwds = NULL;
           ^
119.       char *salt_malloc = NULL, *passwd_malloc = NULL, *prog;
120.       OPTION_CHOICE o;

apps/passwd.c:247:18: Call
245.           do {                    /* loop over list of passwords */
246.               passwd = *passwds++;
247.               if (!do_passwd(passed_salt, &salt, &salt_malloc, passwd, bio_out,
                        ^
248.                              quiet, table, reverse, pw_maxlen, usecrypt, use1,
249.                              useapr1))

apps/passwd.c:412:1: <Length trace>
410.   # endif
411.   
412. > static int do_passwd(int passed_salt, char **salt_p, char **salt_malloc_p,
413.                        char *passwd, BIO *out, int quiet, int table,
414.                        int reverse, size_t pw_maxlen, int usecrypt, int use1,

apps/passwd.c:412:1: Parameter `**salt_p`
  410.   # endif
  411.   
  412. > static int do_passwd(int passed_salt, char **salt_p, char **salt_malloc_p,
  413.                        char *passwd, BIO *out, int quiet, int table,
  414.                        int reverse, size_t pw_maxlen, int usecrypt, int use1,

apps/passwd.c:453:13: Array access: Offset: 8 Size: [3, 9] by call to `do_passwd` 
  451.               for (i = 0; i < 8; i++)
  452.                   (*salt_p)[i] = cov_2char[(*salt_p)[i] & 0x3f]; /* 6 bits */
  453.               (*salt_p)[8] = 0;
                     ^
  454.           }
  455.   # endif                         /* !NO_MD5CRYPT_1 */
