Subject: total size of sendmail aliases prints incorrectly Index: usr.lib/sendmail/src/alias.c 2.11BSD Description: If the sendmail alias file exceeds 32kb of alias information the size prints out as a negative number. If the alias file contains more than 64kb of alias information then the size is truncated to the low 16 bits. Repeat-By: Either have a sendmail alias database with more than 32kb (64kb) or examine the code. Fix: It's another long vs. int problem. Apply the patch and recompile sendmail. Don't forget to install the new strings file (sendmail.sr) at the same time. If you are not using the strings file then you'll probably want to refreeze the config file. ------------------------------------------------------------------------ *** alias.c.old Fri Jul 21 16:39:46 1989 --- alias.c Thu Aug 22 11:00:39 1991 *************** *** 311,317 **** register char *p; char *rhs; bool skipping; ! int naliases, bytes, longest; FILE *af; int (*oldsigint)(); ADDRESS al, bl; --- 311,318 ---- register char *p; char *rhs; bool skipping; ! int naliases, longest; ! long bytes; FILE *af; int (*oldsigint)(); ADDRESS al, bl; *************** *** 540,550 **** (void) fclose(af); CurEnv->e_to = NULL; FileName = NULL; ! message(Arpa_Info, "%d aliases, longest %d bytes, %d bytes total", naliases, longest, bytes); # ifdef LOG if (LogLevel >= 8) ! syslog(LOG_INFO, "%d aliases, longest %d bytes, %d bytes total", naliases, longest, bytes); # endif LOG } --- 541,551 ---- (void) fclose(af); CurEnv->e_to = NULL; FileName = NULL; ! message(Arpa_Info, "%d aliases, longest %d bytes, %ld bytes total", naliases, longest, bytes); # ifdef LOG if (LogLevel >= 8) ! syslog(LOG_INFO, "%d aliases, longest %d bytes, %ld bytes total", naliases, longest, bytes); # endif LOG }