Changes in CUPS v1.0.1:
- Documentation updates.
- Fixed a bunch of possible buffer-overflow conditions.
- The scheduler now supports authentication using PAM.
- Updated the Italian message file.
- httpEncode64() didn't add an extra "=" if there was only one byte in the last three-byte group.
- Now drop any trailing character set from the locale string (e.g. "en_US.ISO_8859-1" becomes "en_US")
- Fixed "timezone" vs "tm_gmtoff" usage for BSD-based operating systems.
- Updated IPP security so that "get" operations can be done from any resource name; this allows the CGIs to work with printer authentication enabled so long as authentication isn't turned on for the whole "site".
- The IPP code didn't properly handle the "unsupported" group; this caused problems with the HP JetDirect since it doesn't seem to support the "copies" attribute.
- The HTTP chunking code was missing a CR LF pair at the end of a 0-length chunk.
- The httpSeparate() function didn't handle embedded usernames and passwords in the URI properly.
- Doing "lpadmin -p printer -E" didn't restart printing if there were pending jobs.
- The cancel-job operation now requires either a requesting-user-name attribute or an authenticated username.
- The add-printer code did not report errors if the interface script or PPD file could not be renamed.
- Request files are now created without world read permissions.
- Added a cupsLastError() function to the CUPS API to retrieve the IPP error code from the last request.
- Options are now case-insensitive.
- The lpq command now provides 10 characters for the username instead of the original (Berkeley standard) 7.
- The cancel command needed a local CUPS server to work (or the appropriate ServerName in cupsd.conf)
- The cancel and lprm commands didn't report the IPP error if the job could not be cancelled.
- The lp and lpr commands didn't intercept SIGTERM to remove temporary files when printing from stdin.
- The lp and lpr commands didn't report the IPP error if the job could not be printed.