github apple/cups release-1.1.20rc1
v1.1.20rc1
on GitHub

Changes in CUPS v1.1.20rc1:

  • The scheduler now waits up to 60 seconds before restarting to allow active jobs to complete printing and pending requests to be processed (Issue #226)
  • The web interface did not work on systems where time_t is 64 bits (Issue #262)
  • Added backend tweeks and content-length check from Red Hat (Issue #253)
  • The USB backend now uses the 8255 constants instead of the standard constants when reporting printer status bits on Linux (Issue #254)
  • Added new cupsDoAuthentication(), cupsGetFd(), cupsGetFile(), cupsPutFd(), and cupsPutFile() functions to the CUPS API (Issue #112)
  • The PDF filter always scaled and offset pages; this caused problems under MacOS X, so now the “fitplot” option controls whether PDF files are scaled to fit within the printable area of the page (Issue #250)
  • The LPD backend did not support the port number in a URI (Issue #247)
  • Some filters didn’t properly support boolean options (Issue #249)
  • Landscape PDF files were not always offset by the correct amount when rotating (Issue #243)
  • The scheduler could hang in a call to localtime() when logging messages from the signal handler (Issue #242)
  • The PDF filter no longer prints form widgets; this duplicates the behavior of Acrobat Reader (Issue #241)
  • cupsGetPPD() didn’t handle a late termination of a HTTP connection with the server (Issue #220)
  • ppdOpen() did not correctly check for “*PPD-Adobe-4.” on the first line of a PPD file. This caused incorrect PASS results for some PPD files (Issue #233)
  • cupsEncodeOptions() did not allow boolean options to use “yes” and “on” for true values (Issue #227)
  • The pstops filter only sent the TBCP exit sequence if it was defined in the JCLEnd attribute in the PPD file (Issue #224)
  • Support for more than 1024 files was broken on Solaris 9 (Issue #217)
  • The setgroups() calls now pass in 1 group (the configured group) instead of 0 for compatibility with BSD and Darwin (Issue #213)
  • The scheduler’s built-in broadcast throttling was ineffective since incoming packets would cause the next group of outgoing packets to be sent immediately rather than waiting for the next time slot (Issue #211)
  • Added a new ppdSetConformance() function to set the conformance requirements for PPD files. Currently only two levels are defined, PPD_CONFORM_RELAXED and PPD_CONFORM_STRICT, and the default is the relaxed level (Issue #212)
  • The IPP backend did not correctly execute the pictwpstops filter on OSX (Issue #210)
  • The LPD backend did not set the banner class when the “banner=yes” option was specified in the device URI (Issue #209)
  • The imagetoraster filter did not support all of the page device attributes (Issue #208)
  • The pdftops filter incorrectly auto-rotated pages when the user already had specified the proper orientation (Issue #207)
  • Fixed AIX shared library support (Issue #201)
  • Added support for live testing with Valgrind (Issue #193)
  • The CGI programs now collect the list of needed attributes for the class, job, and printer template files (Issue #192)
  • The scheduler now passes the first port that is bound to the local loopback or “any” addresses to the CGI programs rather than the port that the browser connected to (Issue #103)
  • The cupstestppd program now checks for bad JobPatchFile attributes and incorrect versions of the Manufacturer attribute for HP printers (Issue #155)
  • The filter makefile incorrectly installed libcupsimage.a in the filter directory (Issue #180)
  • The scheduler did not verify that the job history files define the job-priority and job-originating-user-name attributes (Issue #178)
  • The pstops filter didn’t handle poorly-formed binary PostScript files that had CTRL-D’s in them (Issue #156)
  • The ppdOpen*() and cupsLangGet() functions did not make a copy of the old locale strings when using the POSIX locale when reading files, which apparently caused problems with some implementations of the standard C library. (Issue #159)
  • The pdftops filter did not work properly with some embedded Type1C fonts (Issue #177)
  • Updated the pdftops filter to be based upon Xpdf 2.02pl1 (Issue #191)
  • The scheduler did not reset the group list when running CGI and filter processes (Issue #185)
  • The scheduler no longer calls malloc and free from the signal handlers (Issue #190)
  • The USB backend now uses the manufacturer and model strings if the description string is not available (Issue #174)
  • The ppdOpen functions still supported the VariablePaperSize attribute, which was removed in v4.0 of the PPD spec. This caused problems with PPD files that relocated the PageSize option to a non-standard group (Issue #158)
  • The cups.list file referenced MAN1EXT, MAN3EXT, and MAN5EXT, but none of those were actually defined (Issue #147)
  • Chunked requests could cause a Denial of Service if the connection is terminated before the first byte of chunk data is sent/received (Issue #143)
  • Printers with special characters in their names were not accessible from the web interface (Issue #120)
  • The lpstat command now shows the correct interface script or PPD file, if any, for a print queue (Issue #89)
  • The lpstat command now shows the printer-state-message and printer-state-reasons attributes whenever they are not blank (Issue #152)
  • The French and German option-conflict.tmpl template files did not get installed (Issue #148)
  • The cups.list.in file did not work when compiling without shared libraries (Issue #149)
  • The DSOFLAGS included the LDFLAGS, which causes problems on at least HP-UX (Issue #150)
  • The fax printer support did not keep track of the fax capability bit (Issue #144)
  • The appleLangDefault() function could leak a small amount of memory (Issue #145)
  • The ppdOpen() functions now mirror all normal attributes to the attribute list; previously only certain unassigned attributes would be added (Issue #139)
  • The ppdEmitJCL() function wrote JCL commands to stdout instead of the passed file pointer (Issue #142)
  • The httpGets() function could, in certain states, block waiting for data (Issue #132)
  • The cupsEmitJCL() function not outputs an empty @PJL command after the PJL language escape to work around bugs in certain PJL implementations (Issue #131)
  • The cupsEmit*() functions didn’t set the orientation value properly (Issue #127)
  • The cups.spec file didn’t list the rc2.d init directory or the cupstestppd file (Issue #134)
4 years ago