Revert manifest to default one
[external/cups.git] / CHANGES-1.3.txt
1 CHANGES-1.3.txt
2 ---------------
3
4 CHANGES IN CUPS V1.3.11
5
6         - The scheduler did not prevent nested classes (STR #3211)
7         - The scheduler did not reprint processing jobs that were moved to
8           another destination (STR #3222)
9         - The scheduler did not reset the current job file when stopping a
10           printer (STR #3226)
11         - The scheduler did not handle POSTs to custom CGIs properly (STR #3221)
12         - The pdftops filter did not print landscape PDF pages properly
13           (STR #2881)
14         - The scheduler did not handle partial header lines properly from CGI
15           programs (STR #3194)
16         - The web interface could hang on OpenBSD (STR #3176, STR #3196)
17         - The scheduler and cupsfilter utility did not handle rules starting
18           with a negation operator properly (STR #3160)
19         - The scheduler and cupsfilter utility would crash with certain MIME
20           .types rules (STR #3159)
21         - httpSetField wasn't bracketing IPv6 numeric addresses for the Host:
22           field (STR #3164)
23         - The ServerName, if specified, was not treated as a valid alias for the
24           local system (STR #3167)
25         - "make epm" did not work (STR #3166)
26         - "lpstat -h server" showed non-shared printers (STR #3147)
27         - "make check" did not work on Linux (STR #3161)
28
29
30 CHANGES IN CUPS V1.3.10
31
32         - Documentation fixes (STR #2994, STR #2995, STR #3008, STR #3056,
33           STR #3057)
34         - SECURITY: The scheduler now protects against DNS rebinding attacks
35           (STR #3118)
36         - SECURITY: Fixed TIFF integer overflow in image filters (STR #3031)
37         - The scheduler did not support the job-hold-until attribute with the
38           Restart-Job operation (STR #3130)
39         - SECURITY: The PNG image reading code did not validate the
40           image size properly, leading to a potential buffer overflow
41           (STR #2974)
42         - The rastertohp driver did not set the 1-sided printing mode when
43           needed (STR #3131)
44         - Now use a wrapper program instead of our fork of the Xpdf code to
45           support printing of PDF files. The new wrapper supports using Xpdf,
46           poppler, or Ghostscript to convert PDF files to PostScript (STR #3129)
47         - Long job names caused problems with some PJL printers (STR #3125)
48         - The lpq command did not work when showing all destinations (STR #3117)
49         - The scheduler used a codeset name of UTF8 which is not supported on
50           Solaris (STR #3113)
51         - cupsGetJobs() did not work with a NULL destination (STR #3107)
52         - Fixed a localization problem for option choices (incorrectly) named
53           "Custom" (STR #3106)
54         - The fallback OpenSSL random number seeding would not work (STR #3079)
55         - The scheduler might miss a child signal, causing high CPU usage.
56         - The scheduler did not enforce quotas after the job history was
57           unloaded (STR #3078)
58         - The job-k-limit, job-page-limit, and job-quota-period attributes
59           could not be set using the lpadmin command (STR #3077)
60         - httpSeparateURI() did not error out on URIs with a missing port
61           number after a colon.
62         - Fixed a Valgrind-detected initialization error when creating a
63           missing directory on startup.
64         - The scheduler did not always read all of the HTTP headers from a
65           CGI script/program.
66         - The scheduler did not always set the "air" property in Bonjour/DNS-SD
67           registrations.
68         - The scheduler incorrectly compared Mac OS X UUIDs for access
69           control, preventing access in certain configurations.
70         - The IPP backend incorrectly reset the required authentication
71           to Kerberos when authentication failed.
72         - The scheduler no longer looks up the local hostname by default;
73           turn on hostname lookups to restore the previous behavior.
74         - The scheduler did not always load MIME type rules correctly
75           (STR #3059)
76         - The test page did not format correctly on A4 paper (STR #3060)
77         - The web interface sometimes incorrectly redirected users to
78           127.0.0.1 (STR #3022)
79         - cupsPrintFile*() did not send the document filename for single
80           file submissions (STR #3055)
81         - The scheduler did not update the member-names attribute when
82           removing the last printer from a class.
83         - The scheduler did not report PPD Products with parenthesis
84           in them properly (STR #3046)
85         - The wrong italic fonts were listed in the UTF-8 charset file
86           for the text filter.
87         - The backends did not return an OK status for the
88           CUPS_SC_CMD_GET_BIDI side-channel command (STR #3029)
89         - The scheduler did not purge jobs that were missing a
90           time-at-creation attribute, indicating a bad job control file
91           (STR #3030)
92         - The "-o job-hold-until=week-end" option did not work properly
93           (STR #3025)
94         - The Solaris USB printer device does not support select or poll
95           (STR #3028)
96         - The scheduler would crash if you exceeded the MaxSubscriptions
97           limit.
98         - The lp "-H immediate" option did not specify that the job
99           should not be held (STR #3013)
100         - The scheduler did not support the "Connection: close"
101           HTTP header (STR #3010)
102         - The mailto notifier didn't terminate messages properly
103           (STR #3011)
104         - Backends could spin trying to read back-channel data
105           (STR #3001)
106         - The HP-GL/2 filter was using the wrong default colors
107           (STR #2966)
108         - The scheduler incorrectly allowed Get-Jobs operations without a
109           printer-uri (STR #2996)
110         - The compression option was not being encoded properly
111           (STR #2997)
112         - Added a missing character map for JIS-X0213/ShiftJIS.
113         - The scheduler now rejects ATTR: messages with empty values.
114         - The scheduler could consume all CPU handling closed connections
115           (STR #2988)
116         - Fixed some configure script bugs with rc/xinetd directories
117           (STR #2970)
118         - The Epson sample driver PPDs contained errors (STR #2979)
119
120
121 CHANGES IN CUPS V1.3.9
122
123         - SECURITY: The HP-GL/2 filter did not range check pen numbers
124           (STR #2911)
125         - SECURITY: The SGI image file reader did not range check
126           16-bit run lengths (STR #2918)
127         - SECURITY: The text filter did not range check cpi, lpi, or
128           column values (STR #2919)
129         - Documentation updates (STR #2904, STR #2944)
130         - The French web admin page was never updated (STR #2963)
131         - The IPP backend did not retry print jobs when the printer
132           reported itself as busy or unavailable (STR #2951)
133         - The "Set Allowed Users" web interface did not handle trailing
134           whitespace correctly (STR #2956)
135         - The PostScript filter did not work with Adobe applications
136           using custom page sizes (STR #2968)
137         - The Mac OS X USB backend did not work with some printers
138           that reported a bad 1284 device ID.
139         - The scheduler incorrectly resolved the client connection
140           address when HostNameLookups was set to Off (STR #2946)
141         - The IPP backend incorrectly stopped the local queue if
142           the remote server reported the "paused" state.
143         - The cupsGetDests() function did not catch all types of
144           request errors.
145         - The scheduler did not always log "job queued" messages
146           (STR #2943)
147         - The scheduler did not support destination filtering using
148           the printer-location attribute properly (STR #2945)
149         - The scheduler did not send the server-started,
150           server-restarted, or server-stopped events (STR #2927)
151         - The scheduler no longer enforces configuration file
152           permissions on symlinked files (STR #2937)
153         - CUPS now reinitializes the DNS resolver on failures
154           (STR #2920)
155         - The CUPS desktop menu item was broken (STR #2924)
156         - The PPD parser was too strict about missing keyword
157           values in "relaxed" mode.
158         - The PostScript filter incorrectly mirrored landscape
159           documents.
160         - The scheduler did not correctly update the
161           auth-info-required value(s) if the AuthType was Default.
162         - The scheduler required Kerberos authentication for
163           all operations on remote Kerberized printers instead
164           of just for the operations that needed it.
165         - The socket backend could wait indefinitely for back-
166           channel data with some devices.
167         - PJL panel messages were not reset correctly on older
168           printers (STR #2909)
169         - cupsfilter used the wrong default path (STR #2908)
170         - Fixed address matching for "BrowseAddress @IF(name)"
171           (STR #2910)
172         - Fixed compiles on AIX.
173         - Firefox 3 did not work with the CUPS web interface in SSL
174           mode (STR #2892)
175         - Custom options with multiple parameters were not emitted
176           correctly.
177         - Refined the cupstestppd utility.
178         - ppdEmit*() did not support custom JCL options (STR #2889)
179         - The cupstestppd utility incorrectly reported missing
180           "en" base translations (STR #2887)
181
182
183 CHANGES IN CUPS V1.3.8
184
185         - Documentation updates (STR #2785, STR #2861, STR #2862)
186         - The scheduler did not add the ending job sheet when the
187           job was released.
188         - The IPP backend did not relay marker-* attributes.
189         - The CUPS GNOME/KDE menu item was not localized for
190           Chinese (STR #2880)
191         - The CUPS GNOME/KDE menu item was not localized for
192           Japanese (STR #2876)
193         - The cupstestppd utility reported mixed line endings for
194           Mac OS and Windows PPD files (STR #2874)
195         - The pdftops filter did not print landscape orientation PDF
196           pages correctly on all printers (STR #2850)
197         - The scheduler did not handle expiring of implicit classes
198           or their members properly, leading to a configuration where
199           one of the members would have a short name (STR #2766)
200         - The scheduler and cupstestppd utilities did not support
201           cupsFilter and cupsPreFilter programs with spaces in their
202           names (STR #2866)
203         - Removed unused variables and assignments found by the
204           LLVM "clang" tool.
205         - Added NULL checks recommended by the LLVM "clang" tool.
206         - The scheduler would crash if you started a printer that
207           pointed to a backend that did not exist (STR #2865)
208         - The ppdLocalize functions incorrectly mapped all generic
209           locales to country-specific locales.
210         - The cups-driverd program did not support Simplified Chinese
211           or Traditional Chinese language version strings (STR #2851)
212         - Added an Indonesian translation (STR #2792)
213         - Fixed a timing issue in the backends that could cause data
214           corruption with the CUPS_SC_CMD_DRAIN_OUTPUT side-channel
215           command (STR #2858)
216         - The scheduler did not support "HostNameLookups" with all of
217           the boolean names (STR #2861)
218         - Fixed a compile problem with glibc 2.8 (STR #2860)
219         - The scheduler incorrectly filtered out queues with ACLs and
220           authentication.
221         - The PostScript filter did not support %%IncludeFeature lines
222           in the page setup section of each page (STR #2831)
223         - The scheduler did not generate printer-state events when the
224           default printer was changed (STR #2764)
225         - cupstestppd incorrectly reported a warning about the PPD format
226           version in some locales (STR #2854)
227         - cupsGetPPD() and friends incorrectly returned a PPD file for
228           a class with no printers.
229         - The member-uris values for local printers in a class returned
230           by the scheduler did not reflect the connected hostname or
231           port.
232         - The CUPS PHP extension was not thread-safe (STR #2828)
233         - The scheduler incorrectly added the document-format-default
234           attribute to the list of "common" printer attributes, which
235           over time would slow down the printing system (STR #2755,
236           STR #2836)
237         - The cups-deviced and cups-driverd helper programs did not set
238           the CFProcessPath environment variable on Mac OS X (STR #2837)
239         - "lpstat -p" could report the wrong job as printing (STR #2845)
240         - The scheduler would crash when some cupsd.conf directives
241           were missing values (STR #2849)
242         - The web interface "move jobs" operation redirected users to
243           the wrong URL (STR #2815)
244         - The Polish web interface translation contained errors
245           (STR #2815)
246         - The scheduler did not report PostScript printer PPDs with
247           filters as PostScript devices.
248         - The scheduler did not set the job document-format attribute
249           for jobs submitted using Create-Job and Send-Document.
250         - cupsFileTell() did not work for log files opened in append
251           mode (STR #2810)
252         - The scheduler did not set QUERY_STRING all of the time
253           for CGI scripts (STR #2781, STR #2816)
254         - The scheduler now returns an error for bad job-sheets
255           values (STR #2775)
256         - Authenticated remote printing did not work over domain
257           sockets (STR #2750)
258         - The scheduler incorrectly logged errors for print filters
259           when a job was canceled (STR #2806, #2808)
260         - The scheduler no longer allows multiple RSS subscriptions
261           with the same URI (STR #2789)
262         - The scheduler now supports Kerberized printing with
263           multiple server names (STR #2783)
264         - "Satisfy any" did not work in IPP policies (STR #2782)
265         - The CUPS imaging library would crash with very large
266           images - more than 16Mx16M pixels (STR #2805)
267         - The PNG image loading code would crash with large images
268           (STR #2790)
269         - The scheduler did not limit the total number of filters.
270         - The scheduler now ensures that the RSS directory has
271           the correct permissions.
272         - The RSS notifier did not quote the feed URL in the RSS
273           file it created (STR #2801)
274         - The web interface allowed the creation and cancellation
275           of RSS subscriptions without a username (STR #2774)
276         - Increased the default MaxCopies value on Mac OS X to
277           9999 to match the limit imposed by the print dialog.
278         - The scheduler did not reject requests with an empty
279           Content-Length field (STR #2787)
280         - The scheduler did not log the current date and time and
281           did not escape special characters in request URIs when
282           logging bad requests to the access_log file (STR #2788)
283
284
285 CHANGES IN CUPS V1.3.7
286
287         - CVE-2008-0047: cgiCompileSearch buffer overflow (STR #2729)
288         - CVE-2008-1373: CUPS GIF image filter overflow (STR #2765)
289         - Updated the "make check" tests to do a more thorough
290           automated test.
291         - cups-driverd complained about missing directories (STR
292           #2777)
293         - cupsaddsmb would leave the Samba username and password on
294           disk if no Windows drivers were installed (STR #2779)
295         - The Linux USB backend used 100% CPU when a printer was
296           disconnected (STR #2769)
297         - The sample raster drivers did not properly handle SIGTERM
298           (STR #2770)
299         - The scheduler sent notify_post() messages too often on
300           Mac OS X.
301         - Kerberos access to the web interface did not work
302           (STR #2748)
303         - The scheduler did not support "AuthType Default" in IPP
304           policies (STR #2749)
305         - The scheduler did not support the "HideImplicitMembers"
306           directive as documented (STR #2760)
307         - "make check" didn't return a non-zero exit code on
308           error (STR #2758)
309         - The scheduler incorrectly logged AUTH_foo environment
310           variables in debug mode (STR #2751)
311         - The image filters inverted PBM files (STR #2746)
312         - cupsctl would crash if the scheduler was not running
313           (STR #2741)
314         - The scheduler could crash when printing using a port
315           monitor (STR #2742)
316         - The scheduler would crash if PAM was broken (STR #2734)
317         - The image filters did not work with some CMYK JPEG files
318           produced by Adobe applications (STR #2727)
319         - The Mac OS X USB backend did not work with printers that
320           did not report a make or model.
321         - The job-sheets option was not encoded properly (STR #2715)
322         - The scheduler incorrectly complained about missing LSB
323           PPD directories.
324
325
326 CHANGES IN CUPS V1.3.6
327
328         - Documentation updates (STR #2646, STR #2647, STR #2649)
329         - Fixed a problem with the web interface "Use Kerberos
330           Authentication" check box (STR #2703)
331         - The scheduler unconditionally overwrote the printer-state-
332           message with "process-name failed" when a filter or backend
333           failed, preventing a useful error message from being shown
334           to the user.
335         - Policies on CUPS-Move-Job didn't work as expected (STR
336           #2699)
337         - The configure script only supported D-BUS on Linux
338           (STR #2702)
339         - The scheduler did not support </LimitExcept> (STR #2701)
340         - The scheduler did not reset the job-hold-until attribute
341           after a job's hold time was reached.
342         - The scheduler did not support printer supply attributes
343           (STR #1307)
344         - The Kerberos credentials provided by some Windows KDCs
345           were still too large - now use a dynamic buffer to
346           support credentials up to 64k in size (STR #2695)
347         - Printing a test page from the web interface incorrectly
348           defaulted to the "guest" user (STR #2688)
349         - The cupsEncodeOptions2() function did not parse multiple-
350           value attribute values properly (STR #2690)
351         - The scheduler incorrectly sent printer-stopped events for
352           status updates from the print filters (STR #2680)
353         - The IPP backend could crash when handling printer errors
354           (STR #2667)
355         - Multi-file jobs did not print to remote CUPS servers
356           (STR #2673)
357         - The scheduler did not provide the Apple language ID to
358           job filters.
359         - Kerberos authentication did not work with the web
360           interface (STR #2606, STR #2669)
361         - The requesing-user-name-allowed and -denied functionality
362           did not work for Kerberos-authenticated usernames (STR
363           #2670)
364         - CUPS didn't compile on HP-UX 11i (STR #2679)
365         - cupsEncodeOptions2() did not handle option values like
366           "What's up, doc?" properly.
367         - Added lots of memory allocation checks (Fortify)
368         - The scheduler would crash if it was unable to add a job
369           file (Fortify)
370         - ppdOpen*() did not check all memory allocations (Coverity)
371         - ippReadIO() did not check all memory allocations (Coverity)
372         - The PostScript filter did not detect read errors (Coverity)
373         - The scheduler did not check for a missing job-sheets-completed
374           attribute when sending an event notification (Coverity)
375         - "Set Printer Options" might not work with raw queues (Coverity)
376         - cupsRasterInterpretPPD() could crash on certain PostScript
377           errors (Coverity)
378         - The USB backend did not check for back-channel support
379           properly on all systems (Coverity)
380         - Fixed memory leaks in the GIF and PNM image loading code
381           (Coverity)
382         - Removed some dead code in the CUPS API and scheduler (Coverity)
383         - Fixed two overflow bugs in the HP-GL/2 filter (Coverity)
384         - Fixed another ASN1 string parsing bug (STR #2665)
385         - The RSS notifier directory was not installed with the
386           correct permissions.
387         - The standard CUPS backends could use 100% CPU while waiting
388           for print data (STR #2664)
389         - Filename-based MIME rules did not work (STR #2659)
390         - The cups-polld program did not exit if the scheduler crashed
391           (STR #2640)
392         - The scheduler would crash if you tried to set the port-monitor
393           on a raw queue (STR #2639)
394         - The scheduler could crash if a polled remote printer was
395           converted to a class (STR #2656)
396         - The web interface and cupsctl did not correctly reflect
397           the "allow printing from the Internet" state (STR #2650)
398         - The scheduler incorrectly treated MIME types as case-
399           sensitive (STR #2657)
400         - The Java support classes did not send UTF-8 strings to
401           the scheduler (STR #2651)
402         - The CGI code did not handle interrupted POST requests
403           properly (STR #2652)
404         - The PostScript filter incorrectly handled number-up when
405           the number of pages was evenly divisible by the number-up
406           value.
407         - The PDF filter incorrectly filtered pages when page-ranges
408           and number-up were both specified (STR #2643)
409         - The IPP backend did not handle printing of pictwps files
410           to a non-Mac CUPS server properly.
411         - The scheduler did not detect network interface changes
412           on operating systems other than Mac OS X (STR #2631)
413         - The scheduler now logs the UNIX error message when it
414           is unable to create a request file such as a print job.
415         - Added support for --enable-pie on Mac OS X.
416
417
418 CHANGES IN CUPS V1.3.5
419
420         - The SNMP backend did not check for negative string
421           lengths (STR #2589)
422         - The scheduler incorrectly removed auth-info attributes,
423           potentially leading to a loss of all options for a job.
424         - The scheduler stopped sending CUPS browse packets on a
425           restart when using fixed addresses (STR #2618)
426         - Fixed PDF filter security issues (CVE-2007-4352
427           CVE-2007-5392 CVE-2007-5393)
428         - Changing settings would always change the DefaultAuthType
429           and Allow lines (STR #2580)
430         - The scheduler would crash when submitting an undefined
431           format file from Samba with LogLevel debug2 (STR #2600)
432         - The scheduler did not use poll() when epoll() was not
433           supported by the running kernel (STR #2582)
434         - Fixed a compile problem with Heimdal Kerberos (STR #2592)
435         - The USB backend now retries connections to a printer
436           indefinitely rather than stopping the queue.
437         - Printers with untranslated JCL options were not exported
438           to Samba correctly (STR #2570)
439         - The USB backend did not work with some Minolta USB
440           printers (STR #2604)
441         - The strcasecmp() emulation code did not compile (STR
442           #2612)
443         - The scheduler would crash if a job was sent to an empty
444           class (STR #2605)
445         - The lpc command did not work in non-UTF-8 locales (STR
446           #2595)
447         - Subscriptions for printer-stopped events also received
448           other state changes (STR #2572)
449         - cupstestppd incorrectly reported translation errors for
450           the "en" locale.
451         - ppdOpen() did not handle custom options properly when the
452           Custom attribute appeared before the OpenUI for that
453           option.
454         - The scheduler could crash when deleting a printer or
455           listing old jobs.
456         - The Mac OS X USB backend did not allow for requeuing of
457           jobs submitted to a class.
458         - lpmove didn't accept a job ID by itself.
459         - The scheduler incorrectly removed job history information
460           for remote print jobs.
461         - The scheduler incorrectly sent the
462           "com.apple.printerListChanged" message for printer state
463           changes.
464         - The PostScript filter drew the page borders (when enabled)
465           outside the imageable area.
466         - The LPD and IPP backends did not default to the correct
467           port numbers when using alternate scheme names.
468         - The scheduler incorrectly deleted hardwired remote
469           printers on system sleep.
470         - The scheduler would abort if a bad browse protocol name
471           was listed in the cupsd.conf file.
472         - The online cupsd.conf help file incorrectly showed
473           "dns-sd" instead of "dnssd" for Bonjour sharing.
474         - The scheduler could crash changing the port-monitor value.
475         - The scheduler generated CoreFoundation errors when run as
476           a background process.
477         - When printing with number-up > 1, it was possible to get
478           an extra blank page.
479
480
481 CHANGES IN CUPS V1.3.4
482
483         - Documentation updates (STR #2560, STR #2563, STR #2569)
484         - CUPS now maps the "nb" locale to "no" on all platforms
485           (STR #2575)
486         - CUPS did not work with a Windows 2003 R2 KDC (STR #2568)
487         - ippReadIO() could read past the end of a buffer (STR
488           #2561)
489         - The scheduler would crash on shutdown if it was unable
490           to create a Kerberos context.
491         - Multiple AuthTypes in cupsd.conf did not work (STR
492           #2545)
493         - The snmp.conf file referenced the wrong man page (STR
494           #2564)
495         - The cupsaddsmb program didn't handle domain sockets
496           properly (STR #2556)
497         - The scheduler now validates device URIs when adding
498           printers.
499         - Updated httpSeparateURI() to support hostnames with
500           the backslash character.
501         - Updated the Japanese localization (STR #2546)
502         - The parallel backend now gets the current IEEE-1284
503           device ID string on Linux (STR #2553)
504         - The IPP backend now checks the job status at
505           variable intervals (from 1 to 10 seconds) instead
506           of every 10 seconds for faster remote printing
507           (STR #2548)
508         - "lpr -p" and "lpr -l" did not work (STR #2544)
509         - Compilation failed when a previous version of CUPS
510           was installed and was included in the SSL include
511           path (STR #2538)
512         - The scheduler did not reject requests with charsets
513           other than US-ASCII or UTF-8, and the CUPS API
514           incorrectly passed the locale charset to the scheduler
515           instead of UTF-8 (STR #2537)
516         - cups-deviced did not filter out duplicate devices.
517         - The AppleTalk backend incorrectly added a scheme
518           listing when AppleTalk was disabled or no printers
519           were found.
520         - The PostScript filter generated N^2 copies when the
521           printer supported collated copies and user requested
522           reverse-order output.
523         - The scheduler did not reprint all of the files in a
524           job that was held.
525         - The scheduler did not update the printcap file after
526           removing stale remote queues.
527         - The cupsd.conf man page incorrectly referenced
528           "AuthType Kerberos" instead of "AuthType Negotiate".
529
530
531 CHANGES IN CUPS V1.3.3
532
533         - The scheduler did not use the attributes-natural-language
534           attribute when passing the LANG environment variable to
535           cups-deviced or cups-driverd.
536         - The scheduler did not use the printer-op-policy when
537           modifying classes or printers (STR #2525)
538         - The auth-info-required attribute was not always updated
539           for remote queues that required authentication.
540         - The German web interface localization contained errors
541           (STR #2523)
542         - The Swedish localization contained errors (STR #2522)
543
544
545 CHANGES IN CUPS V1.3.2
546
547         - The 1.3.1 release was incorrectly created from the
548           1.4.x source tree (STR #2519)
549         - Added support for 32/64-bit libraries on HP-UX
550           (STR #2520)
551         - The scheduler incorrectly used portrait as the default
552           orientation (STR #2513)
553         - The scheduler no longer writes the printcap file for
554           every remote printer update (STR #2512)
555         - Remote raw printing with multiple copies did not work
556           (STR #2518)
557         - Updated the configure script to require at least autoconf
558           2.60 (STR #2515)
559         - Some gzip'd PPD files were not read in their entirety
560           (STR #2510)
561
562
563 CHANGES IN CUPS V1.3.1
564
565         - Documentation updates.
566         - The USB backend on Mac OS X could hang if the driver and
567           printer did not match.
568         - Delegated Kerberos credentials were not working.
569         - "make distclean" incorrectly removed the edit-config.tmpl
570           files (STR #2508)
571         - Fix compile problem on HP-UX (STR #2501)
572         - The cupstestppd utility now tests for resolutions greater
573           than 99999 DPI to detect a missing  "x" between the X and Y
574           resolutions.
575         - Fixed many problems in the various translations and added
576           a new "checkpo" utility to validate them.
577         - The cupstestppd utility now tests the custom page size code
578           for CUPS raster drivers.
579         - cupsLangDefault() did not attempt to return a language that
580           was supported by the calling application.
581         - If a remote printer stopped while a job was being sent, the
582           local queue would also get stopped and the job re-queued,
583           resulting in duplicate prints in some cases.
584         - A few Apple-specific job options needed to be omitted when
585           printing a banner page.
586         - The new peer credential support did not compile on FreeBSD
587           (STR #2495)
588         - Direct links to help files did not set the current section
589           so the table-of-contents was not shown.
590         - The configure script did not support --localedir=foo (STR #2488)
591         - The backends were not displaying their localized messages.
592         - CUPS-Authenticate-Job did not require Kerberos authentication
593           on queues protected by Kerberos.
594         - The Zebra ZPL driver did not work with Brady label printers
595           (STR #2487)
596         - Norwegian wasn't localized on Mac OS X.
597         - getnameinfo() returns an error on some systems when DNS is
598           not available, leading to numerous problems (STR #2486)
599         - The cupsfilter command did not work properly on Mac OS X.
600         - The scheduler makefile contained a typo (STR #2483)
601         - The TBCP and BCP port monitors did not handle the trailing
602           CTRL-D in some PostScript output properly.
603         - Fixed the localization instructions and German template for
604           the "Find New Printers" button (STR #2478)
605         - The web interface did not work with the Chinese localization
606           (STR #2477)
607         - The web interface home page did not work for languages that
608           were only partially localized (STR #2472)
609         - Updated the Spanish web interface localization (STR #2473)
610         - ppdLocalize() did not work for country-specific localizations.
611
612
613 CHANGES IN CUPS V1.3.0
614
615         - The scheduler did not handle out-of-file conditions
616           gracefully when accepting new connections, leading to
617           heavy CPU usage.
618         - The scheduler did not detect ServerBin misconfigurations
619           (STR #2470)
620         - "AuthType Default" did not work as expected when the
621           "DefaultAuthType foo" line appeared after it in the
622           cupsd.conf file.
623         - The on-line help did not describe many common printing
624           options (STR #1846)
625         - The IPP backend did not return the "auth required" status
626           when printing to a Kerberos-protected queue.
627         - The scheduler was not looking in the correct directories
628           for LSB PPD files (STR #2464)
629         - Changed references to ESP Ghostscript to GPL Ghostscript
630           (STR #2463)
631         - The PostScript filter did not cleanly terminate when
632           the job was canceled or stopped.
633         - Fixed generation of Kerberos credentials for remote
634           printing.  Note that this requires a recent version of
635           MIT Kerberos with a working krb5_cc_new_unique()
636           function or Heimdal Kerberos.
637         - Added Portuguese and updated Italian message catalogs.
638
639
640 CHANGES IN CUPS V1.3rc2
641
642         - Added more range checking to the pdftops filter. 
643         - The scheduler would crash if a remote IPP queue was stopped
644           (STR #2460)
645         - The scheduler did not allow "DefaultAuthType None".
646
647
648 CHANGES IN CUPS V1.3rc1
649
650         - Updated the German localization (STR #2443)
651         - cupsAdminGetServerSettings() did not handle </Foo> properly.
652         - When lprm and cancel are run with no job ID, they now will
653           cancel the first stopped job if no pending or processing
654           jobs are left in the queue.
655         - The scheduler now logs successful print jobs, filter
656           failures, and the job file types at the default log
657           level (STR #2458)
658         - The scheduler now logs the usernames it is using for
659           authorization at LogLevel debug instead of debug2 (STR #2448)
660         - Added Intellitech Intellibar and Zebra CPCL PPDs to the list
661           of installed PPDs.
662         - Added 6" and 8" wide label sizes for the Zebra ZPL Label
663           Printer driver (STR #2442)
664         - The cupsaddsmb program and web interface now support
665           exporting of 64-bit Windows drivers, when available
666           (STR #2439)
667         - Moving a job that was printing did not stop the job on the
668           original printer (STR #2262)
669         - The cups-lpd mini-daemon did not work on Mac OS X server.
670         - Added httpGetAuthString() and httpSetAuthString() APIs to get
671           and set the current (cached) authorization string to use for
672           HTTP requests.
673         - Updated the default cupsd.conf policy to list the
674           "administrative" operations separately from the "printer
675           control" operations so that it is easier to define a
676           group of users that are "printer operators".
677         - The web interface now pulls the default cupsd.conf file
678           from cupsd.conf.default in the CUPS config directory.
679         - Added a help file for using Kerberos with CUPS.
680         - The scheduler now strips the "@KDC" portion of Kerberos
681           usernames since those usernames typically do not appear in
682           the group membership lists used by CUPS.
683         - cupsMarkOptions() could (incorrectly) leave multiple option
684           choices marked.
685         - Backends could (incorrectly) run as root during discovery
686           (STR #2454)
687         - Avahi is now supported for DNS-SD (Bonjour) printer sharing
688           (STR #2455)
689         - The default cupsd.conf file had typos and old operation names
690           (STR #2450)
691         - The scheduler now erases authentication cache files using the
692           7-pass US DoD algorithm.
693         - Delegated Kerberos credentials (proxy authentication) did not
694           work.
695         - The filter makefile did not optimize the libcupsimage.2.dylib
696           with a sectorder file.
697         - The IPP backend incorrectly wrote an empty printer message
698           when processing the "none" state reason.
699         - The USB backend could deadlock on Mac OS X while performing
700           a side-channel command.
701         - The scheduler did not prevent remote queues from being
702           shared/published.
703         - The scheduler did not remove the temporary request file on
704           authentication errors.
705         - ppdLocalizeIPPReason() did not handle "scheme:" schemes or
706           "file" URLs.
707         - ppdLocalizeIPPReason() was not exported on Mac OS X.
708
709
710 CHANGES IN CUPS V1.3b1
711
712         - Copyright updates - CUPS is now owned by Apple Inc.
713         - Documentation updates (STR #1775, STR #2027, STR #2130,
714           STR #2131, STR #2263, STR #2356, STR #2397)
715         - Added new cupsfilter utility (STR #1734)
716         - Added new job-printer-state-message and
717           job-printer-state-reasons attributes to jobs (STR #2418)
718         - Added LDAP+SSL support (STR #1967)
719         - CUPS now supports authentication via peer credentials
720           over domain sockets (STR #2242, STR #2277)
721         - The CUPS sample driver PPDs are now generated by the PPD
722           compiler and include all of the localized languages by
723           default (STR #2164)
724         - You can now specify "AuthType Default" in the cupsd.conf
725           file to use the default authentication defined by the
726           DefaultAuthType directive.
727         - The SNMP backend no longer adds a default Address line
728           when none is specified in the snmp.conf file; this allows
729           the backend to be easily disabled as needed (STR #2434)
730         - Added a new cupsctl command for doing basic changes to
731           the cupsd.conf file (STR #1777)
732         - Added a new ppdLocalizeIPPReason() function to get the
733           localized text/URI for a given IPP reason keyword for a
734           driver.
735         - Removed the deskjet2.ppd driver, as it only worked with
736           a very small subset of HP DeskJet printers and was
737           confusing to users.  The rastertohp driver still
738           supports the deskjet2.ppd options for existing queues.
739         - The scheduler did not add a trailing banner page if a
740           client did not specify the last document in a job (STR
741           #1711)
742         - The scheduler did not report Bonjour shared printers as
743           remote printers (STR #2384)
744         - Added new -R and -W options to the cupstestppd program
745           for greater control over the testing of PPDs.
746         - Added a new cupsGetServerPPD() function for getting
747           an available PPD from the server (STR #2334)
748         - Added a new cupsDoIORequest() function for reading
749           and writing files via IPP requests (STR #2334)
750         - Added a new CUPS_GET_PPD operation for getting an
751           available PPD file on the server (STR #2334) 
752         - CUPS_GET_PPDS now reports multiple ppd-product values
753           based on the PPD ModelName and Product strings (STR
754           #2334, STR #2383)
755         - CUPS_GET_PPDS now reports the PSVersion attributes
756           from a PPD file in the ppd-psversion attribute
757           (STR #2334)
758         - CUPS_GET_PPDS now reports the cupsModelNumber attribute
759           from a PPD file in the ppd-model-number attribute (STR
760           #2383)
761         - CUPS_GET_PPDS now reports a driver type string in the
762           ppd-type attribute based on the cupsFax and cupsFilter
763           attributes in a PPD file (STR #2383)
764         - Added a new printer attribute called "cups-version"
765           which reports the version of CUPS that is running
766           (STR #2240)
767         - backendRunLoop() now aborts immediately on SIGTERM
768           if no data has been written yet (STR #2103)
769         - Due to poor IPP support from the vendors, the SNMP
770           backend no longer tries IPP connections; instead,
771           it now uses a lookup file with fallback to port 9100
772           (socket://address) and 515 (lpd://address) printing
773           (STR #2035, STR #2354) 
774         - The scheduler now recreates the CUPS log directory as
775           needed (STR #2353)
776         - cupsLangDefault() now maps new-style Apple locale names
777           to the traditional ll_CC form (STR #2357)
778         - Add new cupsArrayNew2() API to support hashed lookups
779           of array elements (STR #2358)
780         - ppdConflicts() optimizations (STR #2358)
781         - The cupstestppd program now tests for existing filters,
782           icons, profiles, and dialog extensions (STR #2326)
783         - The web interface no longer lists new printers on the
784           main administration page.  Instead, a new "List Available
785           Printers" button is provided that shows a separate page
786           with the list of printers.
787         - The web interface now supports setting the banner and
788           policy options on raw printers and classes (STR #2238)
789         - The socket backend now reads any pending back-channel
790           data before shutting down the socket (STR #2325)
791         - Added a new ErrorPolicy directive in the cupsd.conf
792           file (STR #1871)
793         - Printers that use JCL options are now exported to Samba
794           correctly (STR #1985)
795         - The IPP backend now relays printer-state-message values
796           from the server to the client (STR #2109)
797         - Added support for the PWG printer-alert and
798           printer-alert-description attributes (STR #2088)
799         - Added support for LPD "stream" mode (STR #2036)
800         - The scheduler now reports the PostScript product string
801           from PPD files in CUPS-Get-PPDs responses (STR #1900)
802         - Raw printing with queues pointing to the file pseudo-
803           device and multiple files and/or banners now works (STR
804           #1933)
805         - Added new public cupsAdminGetServerSettings() and
806           cupsAdminSetServerSettings() APIs.
807         - Added new "makebuttons" script in the "tools" directory
808           for creating web interface buttons (STR #2231)
809         - Added support for DNS-SD (aka "Bonjour") printer sharing
810           (STR #1171)
811         - Job operations (cancel, hold, release, etc.) from the
812           web interface now return back to the original page (STR
813           #2239)
814         - The classes or printers list is now shown after a
815           successful deletion from the web interface (STR #1999)
816         - The default configuration now allows browse packets from
817           any address (STR #2008)
818         - The web interface now provides an "allow printing from the
819           Internet" check box (STR #1897)
820         - The notify-events-default and
821           notify-lease-duration-default attributes can now be set
822           (STR #1671)
823         - Server-side default options are now sent to clients when
824           the "printer-defaults" attribute group is requested (STR
825           #1923)
826         - Added support for Linux "relro" linker option (STR #1614)
827         - CUPS now validates the number-up option value (STR #1329)
828         - The on-line help now provides better search capabilities
829           (STR #1701)
830         - The web interface "Add This Printer" button now allows you
831           to change the printer name, description,  and location
832           (STR #1646)
833         - Added support for Mac OS X authorization services
834           (STR #2206)
835         - Added support for driver-specific pre-filters (STR #2108)
836         - Added a new side-channel API for drivers and backends
837           for basic device control and information queries (STR
838           #1898)
839         - The scheduler now uses poll(), epoll(), or /dev/kqueue
840           instead of select() when possible (STR #1261)
841         - Added new cupsArrayGetIndex() and cupsArrayGetInsert()
842           functions to get the current index and insertion
843           positions of an array.
844         - Added a new --with-max-copies configure option (STR
845           #2090)
846         - Added new cupsRemoveDest() and cupsSetDefaultDest()
847           functions.
848         - Added support for cupsPJLCharset attribute in PPD files
849           which specifies the character set that is used in PJL
850           strings (STR #1969)
851         - Moved the definition of the (private) _http_s structure
852           to http-private.h; code that directly accesses the
853           http_t members will no longer compile!
854         - Added support for setting the document-format-default
855           attribute on a per-printer basis.
856         - Added support for IntelliBar label printers.