HYLAFAX CHANGE INFORMATION

Current Version: v4.0beta018
Previous Version: v4.0beta015
Master FTP Site: sgi.com (192.48.153.1), directory sgi/fax

Note that this is a major new distribution and lots of things have changed. Consult the general overview for a high-level description of the new functionality provided in the v4.0 software.

This document describes the changes made to the software between the previous and current versions (see above). If you don't find something listed here, then it was not done in this timeframe, or it was not considered important enough to be mentioned. The following information is located here:

- Changes in the software configuration
- Changes to faxq
- Changes to faxsend
- Changes to faxgetty
- Changes to faxqclean
- Changes to hfaxd
- Changes to sendfax
- Changes to faxmail
- Changes in miscellaneous stuff

CHANGES IN THE SOFTWARE CONFIGURATION:

- the zlib and regex packages that are included in the distribution (from elsewhere) have moved to top-level directories and their use is now optional; this makes it possible, for example, to link against a pre-built DSO
- configure now automatically purges any config.cache file if configuration parameters are specified on the command line or if a config.site or config.local file has been modified since config.cache was last written
- several fatal errors during configuration now elicit more verbose information from configure
- configure now aborts if the `strftime` or `socket` functions are not located in the expected places
- a bug was fixed where configure would inject diagnostic information in the port.h file if memory mapped files were not found to be supported in the expected way
- the `ZLIB`, `LIBZ` and `ZLIBINC` configuration parameters were added to specify the location of the zlib software
- the `REGEX`, `LIBREGEX` and `REGEXINC` configuration parameters were added to specify the location of the regex software
- several extraneous references to the math library (`-lm`) were removed from Makefiles

CHANGES TO FAXQ:

- a bug was fixed that caused active jobs to be terminated when they were to be suspended
- aborting outbound jobs is now handled better
- faxq now waits for sub-processes to terminate when a job is to be suspended or aborted; this corrects a race condition that caused clients to sometimes get incorrect results
- a bug was fixed where a reference to a job might be left on the active queue when faxq could not fork to startup a sub-process
- faxq now honors a job's state when initially scanning the job queue at startup; this means, in particular, that suspended jobs are no longer automatically submitted
- the scheduling algorithm was reorganized so that jobs are processed ``more aggressively''; this causes jobs to be dispatched in an order that more closely parallels the order in which they are submitted

CHANGES TO FAXSEND:

- the total number of pages to send--as seen by the client--is now properly maintained
- a bug was fixed that caused certain abort requests to be ignored

CHANGES TO PAGESEND:

- a bug was fixed that caused certain abort requests to be ignored
- a bug was fixed that caused non-default parity settings to not be handled properly

CHANGES TO FAXGETTY:

- a portability problem that caused core dumps on 68K systems was fixed

CHANGES TO FAXQCLEAN:

- malformed job files are now removed instead of being ignored

CHANGES TO HFAXD:

- `JPARM DOCUMENT` now returns the set of document files for a job
- `JPARM COVER` now returns any cover page document for a job
- `JPARM POLL` now returns any polling requests for a job
- `JPARM` now includeds document and polling information in the status information it returns
- the `%P` and `%y` job status format escapes now correctly return the total number of pages to be sent for a job
- the SNPP support now correctly resets state after each `PAGE` request (per the spec)
- the SNPP `SUBJ` command now properly parses multi-token arguments
- `JPARM COMMID` now returns the last communications identifier for a job
- `JPARM` requests now work correctly when a job's state is updated by an unrelated thread of control
- the setting of many job parameters that have side effects is now handled properly; in particular this fixes a problem where setting a job's scheduling priority had no effect
- a bug was fixed in the `%h` job status format escape
- a `%W` job status format escape was added for printing a job's communication identifier
- a `JINTR` command was added that acts just like `JSUSP` except that an active job is aborted before it is suspended
- a bug was fixed that caused `STOR` requests that created a new file to fail
- a bug was fixed the permited unprivileged users to create files in private directories
- a portability problem was fixed for DEC Alpha systems
- `RETP` is a new request that returns a single page from a TIFF document file; it can be used together with the `REST` request to selectively retrieve pages from a file
- a bug was fixed in the ZIP-compressed retrieval of files

CHANGES TO SENDFAX:

- the `CoverCmd` configuration parameter now specifies the absolute pathname for the program to use in generating cover pages
- strings passed as arguments to the `CoverCmd` program are no longer interpreted by the shell
- jobs are not submitted if a cover page cannot be created (jobs used to be submitted without a cover page)
- a bug was fixed that caused certain configuration parameters to be ignored
- the argument sent for the `USETAGLINE` job parameter is now properly typed as boolean

CHANGES TO SENDPAGE:

- the `-s` option is now correctly recognized
- a bug was fixed that caused reading messages from files to fail
- the `SNPPSERVER` environment variable is now correctly honored

CHANGES TO FAXMAIL:

- support was added to parse and specially format MIME-encoded messages
- support was added to directly deliver facsimile

CHANGES IN MISCELLANEOUS STUFF:

- faxalter now correctly handles ```-a now`''
- faxcover now properly escapes backslash characters in emitted PostScript strings
- the tiff2fax script now uses symbolic links instead of hard links when a processing request requires no work; this fixes a problem where document files were being created with multiple links to them, causing faxqclean to not remove the files even though they were unreferenced
- a bug in `killall` emulation function was fixed in the hylafax system startup script
- the ``at syntax'' support now properly converts times of the form ``120 minutes''
- boolean values in configuration files can now be specified as ``true'' and ``false''
- the ps2fax symbolic link that is installed for the default PostScript RIP now references Ghostscript and is only installed if no file exists
- the text to PostScript conversion support was extended and a bug was fixed in the handling of lines with trailing white space
- client support for retrieving files was extended to support restarting a previous retrieval request
- an apparent problem in the socket support in SINIX MIPS 5.42 was worked around

HylaFAX table of contents.