home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
World_Of_Computer_Software-02-387-Vol-3of3.iso
/
u
/
uupc08au.zip
/
CHANGES.DOC
< prev
next >
Wrap
Text File
|
1990-09-09
|
16KB
|
397 lines
September 9, 1990 UUPC/extended 1.08a changes summary
Revision:
This document applies to UUPC/extended version 1.08a, and was
formatted on September 9, 1990 at 19:24:38.
Introduction:
This file lists changes made to UUPC/extended since release 1.07g.
See UUPC107.DOC for changes made between UUPC 1.05 and UUPC/extended
1.07g.
Bugs Fixed in Version 1.08a:
1. Dates, including timezones, are now formatted by the C standard
library routine strftime. This requires the addition of the
environment variable TZ to the user's autoexec.bat file, such
as:
SET TZ=EST5EDT or
SET TZ=CST6CDT or
SET TZ=MST7MDT or
SET TZ=PST8PDT
and removing the tzoffset= and tzname= variables from the
configuration file. Once this conversion is done, the user need
not worry about changing the time zone in the configuration file
twice a year as was required with previous releases.
2. Modified importpath() to change file naming convention for local
spool files to correct problems with duplicate file names; UNIX
file names (which allow mixed case and more special characters)
are now converted to MS-DOS file names in subdirectories.
NOTE: This conversion means that UUPC/extended 1.08 generated
spool files will not be recongized by version 1.07, and
vice-versa. This means any mail queued for a remote host will be
lost (actually, left in the spool directory) when UUPC 1.08 is
installed. MORAL: Be sure your spool directory is empty before
installing UUPC 1.08.
3. Altered L_invoke_pager to use backslashes (\) in place of slashes
(/) to list files. Some external pagers can't handle the
latter.
4. If the incoming command line from another host exceded a fixed
buffer length, buffer overflow occurred and the results,
especially for rmail delivery, were unpredictable. Corrected
dcxqt() to use a BUFSIZ input buffer and to dynamically allocate
strings copied from the line buffer.
5. The fixed-length expect-string buffer made it difficult to login
to a host when incoming connect messages exceed the length of the
buffer, causing the login attempt to fail. Also, a very high
speed connection might have problems with the original algorithm,
- 1 -
September 9, 1990 UUPC/extended 1.08a changes summary
which seemed to do a complete search of the buffer every time a
character was read.
Corrected by modifying the expectstr() function of uupc to
eliminate to the fixed length buffer. The new code contains a
largely new expectstr() function and a circular buffer search
function. It does only one string-compare for each character
read, and can read an indefinite amount of input; the only
restriction is on the size of the expect string (set by MAXMATCH,
currently 64).
Problem description and new code provided by John DuBois
<spcecdt@deeptht.santa-cruz.ca.us).
6. Altered temporary file name generated for edited outgoing mail to
have extension of "TXT" instead of "TMP".
7. If both 'save' and 'purge' options are active and a read letter
is auto-saved, the system mailbox for the user is not deleted.
Changed UpdateMailbox() to detect this condition and delete the
system mail box.
Enhancements made in Version 1.08a:
1. Modified send/expect string processing to print up to the last
511 bytes of the received string; leading/trailing control
characters and spaces are trimmed before printing, and control
characters in the displayed string are printed as question marks
(?).
2. Made SYSTEMS file optional; however, the user's mail server must
still be listed in the PASSWD or SYSTEMS file.
3. Modified packet machine to count errors on a per packet basis;
this means that a file transfer will not fail because of errors
which slow but do not halt the transfer, but a file transfer
which is hung on a single bad packet will fail after MAXERR
retries.
4. Modified packet machine to report when it aborts a file transfer
because an excessive number of errors. Also added a message for
number of errors per packet.
5. Changed "Edit, Send, Abort?" prompt to "Abort, Continue, Edit,
List, or Send? ", adding support for the "Continue" option to
resume entering mail and "List" to display the body of the
message to be sent.
6. Added support for an alternate signature file (altsignature=) in
the configuration file. Code contributed by Philip Meese
<cornwall!pmeese@uunet.UU.NET>.
7. Added support for toggling whether or a signature file is
included via the options=autosign option. Note the changed
- 2 -
September 9, 1990 UUPC/extended 1.08a changes summary
default is noautosign to be compatible with selected UNIX
systems. Code contributed by Philip Meese
<cornwall!pmeese@uunet.UU.NET>.
8. Added Sendmail-like tilde (~) commands:
~e invoke editor on current message.\
~i include body of current message, indented.
~I include current message with headers, indented.
~m # include body of message #, indented.
~M # include message # with headers, indented.
~p print message entered so far.
~P print message entered so far using external pager.
~s insert standard signature file.
~S insert alternate signature file.
~? display this mail subcommand list.
Code contributed by Philip Meese <cornwall!pmeese@uunet.UU.NET>.
9. Converted sources to compile under Turbo C++ 1.0; this mostly
involved adding a few missing semi-colons. Also converted
project files to Turbo C++ 1.0 format, which are non-ASCII.
10. The *.LNK files have been dropped, replaced by files generated by
Turbo Make 3.0 and by Microsoft nmake.
11. Revised default aliases.txt file to include useful addresses.
12. Broke UUPCBUGS into three files: CHANGES, BUGS, and UUPC107.
13. Changed system connected messages to debug level 0.
14. The source files have been reorganized to a single directory.
15. The header file dcp.h has been been broken up into the files
dcp.h, dcpxfer.h, dcpgpkt.h, and dcpsys.h.
16. The file ulib.c has been broken into ulib.c and dcplib.c. This
aids creating an OS/2 version of ulib.c at a future date.
17. The file host.c has been broken into the files host.c and hlib.c,
with some function moved into timestmp.c.
18. UUPC/extended now compiles under Microsoft C 6.0; a makefile for
Microsoft's nmake program is included with the source. Note,
however, that the Microsoft version is not fully debugged, and
the following restrictions exist:
a. MAIL requires ANSI.SYS if compiled under Microsoft C.
b. UUIO doesn't include the Cntrl-Break handler if compiled
under Microsoft C.
c. UUPOLL doesn't issue a 'BREAK ON' if compiled under
- 3 -
September 9, 1990 UUPC/extended 1.08a changes summary
Microsoft C.
Bugs Fixed in Version 1.07j:
1. Specifying the -u (user mailbox) option after the -x (debug)
option would reset the debug level.
2. A transmit error (timeout, presumably, but maybe a NAK too) on a
short packet (like at the end of the file) will cause UUPC to
hang and eventually give up. The code in gspack() handles short
packets by inserting a length byte (actually an "unused space"
byte) at the beginning of the packet. If the packet needs to be
resent, it inserts the byte again!
Discovered and corrected by Jordan Brown.
3. If a duplicate entry exists in the PASSWD file, all other entries
in the PASSWD file are skipped.
Modified loadhost() to continue looping after a duplicate entry.
4. Output from loadhost() is incorrectly identified as coming from
checkname().
5. If a bad communication link exists between UUPC and the other
host, file transfers appear to permanently hang.
Reduced retry limit to 20 from 200. This doesn't fix the
underlying problem, but at least reduces its impact.
6. If the "-b" (Blind carbon copy flag) is used on mail, the "-b" is
handled as a local address and printed.
Corrected lmail() to suppress the delivery of mail to user '-b',
and corrected sendone() to suppress the header.
7. Aliases of systems in the local domain are not located by
checkname().
Added check for full system name before searching for name
without domain suffix.
8. If local system is not in the .UUCP domain, mail sent to it in
the .UUCP domain is not delivered locally.
Modified user_at_node() to use checkname() to determine if a
system routed via the local system is in the routing table.
9. UUCP "From " lines are interspersed with RFC-822 header lines.
Only one UUCP "From " line should exist, and it should be first.
Modified rmail() to examine incoming mail for UUCP "From" line
and replace it with Received: line.
- 4 -
September 9, 1990 UUPC/extended 1.08a changes summary
10. Temporary file names are now more unique, and UUPC doesn't
overwrite existing temporary files. Split mail.c into mail.c and
maillib.c to improve compile and edit response times.
Enhancements made in Version 1.07j:
1. Deleted the obsolete HOWTOGET.IT file.
2. Created options= configuration line in configuration file,
allowing the boolean options:
* askcc
* autoedit
* autoprint
* dot
* fromsep
* pager
* purge
* save
as listed or prefixed with "no" to set and unset options. This
allowed deleting the 'autoprint=' and 'fromsep=' option lines
from the configuration file. These new options are described in
detail in the sample configuration file.
NOTE: To make UUPC 1.07j behave the same as previous releases,
the 'askcc' and 'autoprint' options must be set. Otherwise,
Carbon copies wil not be prompted for, nor will messages
automatically print.
3. Added the options (o) command to set and reset options allowed on
the options line of the configuration file. Also added the 'O'
command to display the current setting of options.
4. Added the "purge", option, which, when true, causes mailboxes to
be automatically deleted when empty.
5. Added the "pager" option, which, when true, causes the meaning of
the "p" and "t" (print/type with external pager) commands to be
exchanged with the "P" and "T" (print/type with internal pager)
commands.
6. Added the "save" configuration option to automatically save any
read, answered, or forwarded message in "mbox" in the user's home
directory when reading new incoming mail.
7. Added the "dot" configuration option to allow message input to
terminated by a single period (.) followed by a carriage return.
8. Added the "askcc" configuration option to make prompting for
carbon copies ("Cc:") optional.
9. Added the "autoedit" configuration option to bypass prompting for
text in interactive line mode and go directly into the user's
- 5 -
September 9, 1990 UUPC/extended 1.08a changes summary
editor, if desired. This option is ignored if no editor is
defined or the mail is not being sent from the console.
Enhancements made in Version 1.07i:
1. Allow new keyword autoprint=NO in user configuration file to
suppress the automatic printing of messages. If autoprint=NO is
set, only one line message description is printed.
Note: Changed to part of options line in 1.07j.
2. Added the Toggle Autoprint (A) command. Toggles between
autoprint enabled and disabled.
Note: Deleted in 1.07j, replaced by 'o autoprint' command.
3. Moved prototype for FOPEN() from mlib.h into lib.h, where it
belongs.
4. Split router.c into hostable.c and router.c.
5. Allow ~filename in save (s) and write (w) commands to save into
another user's mailbox directly without know the configuration
directory name for unsaved mail.
Bugs Fixed in Version 1.07h:
1. If incoming mail with a quoted name is replied to, a second set
of quotes is added to the outgoing address. Modified
ExtractAddress to trim the incoming quotes as white space.
2. The COMMZ100 communications handler didn't work. Altered the
handler to never disable interrupts on reads by playing with the
input queue by hand; ZUUIO (Z-100 UUIO) now works at 1200 and
2400 bps.
3. Any alias which was actually a list of aliases was not properly
expanded. Corrected ExtractAddress() to use different selection
criteria as to whether or not the full name of the was found.
4. Once in a while, the "count of messages in mailbox" message
wasn't formatted properly to overlay the count of messages being
read like it was supposed to. Corrected by deleting conditional
that suppressed printing of "\b* " in CreateBox().
5. The 1.07g sample SYSTEMS file incorrectly showed the telephone
number twice.
Enhancements made in Version 1.07h:
1. Modified login to use spawnl() in place of system() to better
determine if a command fails and save memory.
- 6 -