tron@Veritas.COM (Ronald S. Karr) (05/31/91)
Smail release 3.1.21 (patchlevel 21) is now available on uunet. This fixes most reported bugs in release 3.1.20, which was supposed to be a limited distribution. Release 3.1.21 is intended for unlimited distribution. I do not intend to post smail to the net, however, until smail has been modified to limit its resource utilization. I also would like to see it work better in an Internet environment (for example, using multiple MX and A records where possible). I am sorry that 3.1.21 took so long in coming out. The 3.1.20 release had a fair number of installation-related bugs, and it shouldn't have been left unpatched for as long as this. For those with the 3.1.19 or an earlier release, please get a new copy of the entire distribution. Patches from 3.1.19 to 3.1.21 are nearly half a megabyte (there were some organizational changes between 3.1.19 and 3.1.20). There is a 36K compressed patch file available on uunet that can be applied to release 3.1.20 to generate 3.1.21. I will also mail the patch to anyone who asks. The two files available on uunet are: ~ftp/mail/smail3.1.21.tar.Z - the complete distribution ~ftp/mail/smail-3.1.20-3.1.21.patch.Z - the patch from 3.1.20 to 3.1.21 Users on the Internet can ftp from uunet. Users with UUCP access in the U.S. can use UUCP to uunet. Uunet has a 1-900 number, with quite reasonable rates, that can be used with UUCP. If you want information, I can send it to you. Users outside of the U.S. should probably contact me if they do not have access to uunet. We should arrange some kind of distribution path for use in Europe. I will probably handle other continents and countries on an individual per-site basis. Here is a summary of the 3.1.21 release, from the README file. ---------------------------------------------------------------------- CHANGES IN THE 3.1.21 RELEASE Release 3.1.21 is a patch release to smail3.1.20, which was a limited release of smail. The 3.1.20 release included significant work on the OS-configuration aspects of smail. The 3.1.21 is primarily a bug fix release. All of the enhancements are limited in scope. Some changes in 3.1.21 are: 1. Smail now tries to preserve the access time for mailbox files. This allows programs to compare the access time and modification time of mailbox files to determine if mail has arrived. The usability of this depends upon your mail user interface. 2. Added some optimization options to the DNS router driver (bind) to prevent lookups for domains that are known not to be in the DNS, or for names that apparently are not domains. 3. Added support to the bind router for delivering mail only to those sites with MX records. This is useful for some local area networks, but is generally not advisable on the Internet. 4. Enhanced the /bin/mail "replacement" (in pd/binmail) to support options of the SVR3 and SVR4 versions of /bin/mail. 5. Added support for HP-UX 7.0 and A/UX 2.0. 6. Better debugging messages are now generated, including complete expanded headers, plus filenames (for appendfile) and shell commands (for the pipe driver). Use a debugging level of at least 6 to get all of the new debugging output. Some bugs that were fixed: 1. Fixed a bug in the bind router that was resulting in considering some MX entries for a host to be invalid. The problem fixed was that the GETSHORT macro was being called with a regular char * rather than an unsigned char *. On some machines that supply a GETSHORT macro, this resulted in inappropriate sign extensions. 2. One C compiler (pcc for microport/286) couldn't handle four HDREQ() macro calls in an if statement. These were broken up into two if statements. 3. The help message printed by SMTP was in a single, multi-line string which was too long for some compilers (Xenix/286). This was broken up into multiple strings. 4. Several people pointed out that their systems could not include both <sys/time.h> and <time.h>, as was done in src/main.c. Only one of these will now be included, based on os-type. 5. The fwdfile director driver was calling xprintf with the wrong number of arguments, if a parsing error was encountered in a mailing list or .forward file, sometimes causing a core dump, often generating less than meaningful error messages. 6. Some machines do not support the <<-EOF construct (indented here documents) in /bin/sh. Uses of this construct were removed. 7. Shell scripts in the util source directory were not having the X_UTIL_PATH_X replaced by a propper set of directories. This resulted from the changes to mkdefs.sh in release 3.1.20. This has been fixed. 8. On some systems (Motorola V.3.2), use of greater than 14 character file names results in failure rather than name truncation. This was a problem for the installation procedure which uses four- character suffixes (.OLD and .NEW). These suffixes have been changed to .O and .N. 9. When using the malloc library supplied with SVR3, a structure cannot be referenced after it is freed. One known use of a freed structure (in smtprecv.c) was modified. 10. I found another case where an @user@host address was being generated, in smtplib.c. 11. Smail for SunOS will not compile correctly if /usr/5bin is in your PATH before /bin. To compensate, the sun_os4 conf/os file sets CC to /bin/cc explicitly. 12. The gethostbyname router driver was returning a NULL rather than DB_NOMATCH in one case, causing occasionally incorrect behavior. 13. Fixed some problems with pathalias, including some problems with ANSI C compilers, and a potential loop in generated output which was exhibited at some sites by more recent postings of the USENET map database. 14. The handling of :include: files would occasionally result in inappropriate errors. This resulted from functions that were supposed to return a value but instead had implicit returns. The common symptom was an error message with a blank error. ---------------------------------------------------------------------- For users that are currently at the 3.1.18 or 3.1.19 release level, here are the changes that were introduced in release 3.1.20. ---------------------------------------------------------------------- CHANGES IN THE 3.1.20 RELEASE Release 3.1.20 is the first truly new release to come along in quite some time. The past two releases, 3.1.18 and 3.1.19 involved very little work. The 3.1.18 release fixed one bug, the 3.1.19 release was merely a re-release of 3.1.18 with some new sample files added. Some changes in 3.1.20 are: 1. The scripts for managing operating system configuration files have changed substantially. The new system is more generalized, and allows for much simpler addition of new parameters, as well as the ability to override os-file parameters in the EDITME file. However, older conf/os files are no longer compatible, and will need to be rewritten. 2. Support for SVR4.0 and POSIX. Smail now compiles under SVR4.0, and it also has some generic posix support, which the SVR4.0 and SunOS4.1 conf/os files use a base. 3. I put smail under a new source control system. The new system is SCCS-based, like the old one, but I was forced to reset the SCCS-ID sequence for all source files. Thus, all files are different, at least in their SCCS ID. 4. It should now be possible to compile smail with gcc, since the CC attribute is now tunable in the EDITME file. 5. Smail can now be used as the execmail program for SCO Xenix. 6. The LOGNAME and USER variables can now be supported. See the sender_env_variable attribute in the smail(5) man page. 7. The forwardfile driver now allows uid ranges to be specified, for the caution and unsecure attributes. This allows greater security, by forcing all low-numbered (1-10, though it is configurable) user-IDs to be handled through the "nobody" id. Some bugs that were fixed: 1. Outgoing SMTP messages will no longer generate the malformed address @user@host. 2. Invalid headers should no longer cause smail to abort and leave messages queued forever. 3. The bind router now includes resolv.h using the right path (at least on all systems I know about). 4. Smail should now run correctly under SunOS4.1. Previously, smail tried to reserve unlimited data and stack space (to prevent low limits from impacting smail's ability to operate). However, this prevented linking of shared libraries, for programs executed from smail. Smail now has a configurable limit which is less than unlimited for SunOS4.1 and SVR4.0. 5. A bug was fixed that several people reported, where long TZ strings could cause smail to dump core. 6. A bug was fixed where smail would try to free the sender variable in the SMTP code, even though the sender variable was not always allocated with malloc. This caused random core dumps on some machines. The sender variable is always allocated now. 7. The hashing functions were modified so they no longer require that a cast yield an lvalue. 8. Some compiler errors on the RS6000, relating to enums being used before being defined, should be fixed. ---------------------------------------------------------------------- -- tron |-<=>-| ARPAnet: veritas!tron@apple.com tron@veritas.com UUCPnet: {amdahl,apple,pyramid}!veritas!tron