1 CHANGES.txt - 2006-06-21
2 ------------------------
6 - Sending raw jobs from a client system could cause the
7 client's scheduler to eventually crash (STR #1786)
8 - The scheduler now checks that the notifier exists prior
9 to accepting a new subscription request.
10 - The scheduler now reports the supported
11 notify-recipient schemes based on the contents of the
12 ServerBin/notifier directory.
13 - Event notifications did not include the
14 notify-sequence-number or other required attributes
16 - Allow/Deny addresses of the form "11.22.33.*" did not
17 work on Linux (STR #1769)
18 - cupsGetPPD() did not work if the scheduler was only
19 listening on a domain socket (STR #1766)
20 - The scheduler could crash advertising a class (STR
22 - The scheduler could crash if the default printer was
24 - Added a new default CUPS raster format (v3) which does
25 not compress the raster stream in order to provide the
26 same cupsRasterReadPixels() and cupsRasterWritePixels()
27 performance as CUPS 1.1.x.
28 - The cupsaddsmb man page listed the wrong files for the
30 - Some configure --with options did not work (STR #1746)
31 - "Allow @IF(name)" didn't work if "name" wasn't the
32 first network interface (STR #1758)
33 - The lpstat command did not use the correct character
34 set when reporting the date and time (STR #1751)
35 - The cupsaddsmb command and web interface did not update
36 the Windows PPD files properly, resulting in corrupt
37 PPD files for the Windows client to use (STR #1750)
38 - The cupsd.conf man page didn't describe the Listen
39 domain socket syntax (STR #1753)
40 - The scheduler no longer tries to support more than
41 FD_SETSIZE file descriptors.
42 - CDSA (encryption) support fixes for MacOS X.
43 - The lppasswd program needs to be setuid to root to
44 create and update the /etc/cups/passwd.md5 file (STR
46 - 32/64-bit library installation was broken (STR #1741)
47 - The USB backend now reports a "no such device" error
48 when using the old filename-based USB URIs instead of
50 - Increased the HTTP and IPP read timeouts to 10 seconds,
51 as 1 second was too short on congested networks (STR
53 - The SNMP backend now uses the device description over
54 the printer-make-and-model attribute when the attribute
55 contains a generic name (STR #1728)
56 - Fixed another file descriptor leak when printing raw
58 - Raw queues were not shared via LDAP (STR #1739)
59 - The pstops filter didn't always embed PageSetup
60 commands from the PPD file (STR #1740)
61 - "make install" didn't work if you disabled all of the
63 - The scheduler didn't always choose the least costly
65 - Fixed parsing of IPv6 addresses in Allow, Deny,
66 BrowseAllow, BrowseDeny, and BrowseRelay directives
68 - Printers that were shared via LDAP did not get added to
69 the LDAP server properly (STR #1733)
70 - LDAP browsing would crash the scheduler if a required
71 value was missing (STR #1731)
72 - Special cases for the "localhost" hostname did not
73 work, causing printing to not work when the /etc/hosts
74 file did not contain a localhost entry (STR #1723)
75 - Updated the Spanish translation (STR #1720, STR #1770)
76 - Reverse-order page output was broken when N-up or
77 landscape orientations were used (STR #1725)
78 - The parallel, serial, socket, and USB backends needed
79 print data before they would report back-channel data,
80 causing problems with several new drivers (STR #1724)
83 CHANGES IN CUPS V1.2.1
85 - The web interface did not handle reloads properly for
87 - The configure script no longer adds linker rpath
88 options when they are unnecessary.
89 - The scheduler could crash printing a debug message on
91 - The --enable-32bit and --enable-64bit configure options
93 - The password prompt showed the domain socket address
94 instead of "localhost" for local authentication (STR
96 - The web interface filtered the list of printers even if
97 the user wasn't logged in (STR #1700)
98 - The IPP backend did not work reliably with some Xerox
100 - Trailing banners were not added when printing a single
102 - The web interface support programs crashed on Solaris
104 - cupstestppd incorrectly reported problems with
105 *1284DeviceID attributes (STR #1710)
106 - Browsing could get disabled after a restart (STR #1670)
107 - Custom page sizes were not parsed properly (STR #1709)
108 - The -U option wasn't supported by lpadmin (STR #1702)
109 - The -u option didn't work with lpadmin (STR #1703)
110 - The scheduler did not create non-blocking back-channel
111 pipes, which caused problems when the printer driver
112 did not read the back-channel data (STR #1705)
113 - The scheduler no longer uses chunking in responses to
114 clients - this caused problems with older versions of
115 CUPS like 1.1.17 (PR #6143)
116 - Automatic raw printing was broken (STR #1667)
117 - 6-up printing was broken (STR #1697)
118 - The pstops filter did not disable CTRL-D processing on
120 - ppdOpen*() did not load custom options properly (STR
122 - "Set Printer Options" in the web interface did not
123 update the DefaultImageableArea or
124 DefaultPaperDimension attributes in the PPD file (STR
126 - Fixed compile errors (STR #1682, STR #1684, STR #1685,
128 - The lpstat command displayed the wrong error message
129 for a missing destination (STR #1683)
130 - Revised and completed the Polish translation (STR
132 - Stopped jobs did not show up in the list of active jobs
134 - The configure script did not use the GNU TLS
135 "libgnutls-config" script to find the proper compiler
137 - The imagetoraster filter did not correctly generate
138 several 1, 2, and 4-bit color modes.
139 - cupsRasterWritePixels() could lose track of the current
141 - cupsRasterReadPixels() did not automatically swap
142 12/16-bit chunked pixel data.
143 - Moved the private _cups_raster_s structure out of the
145 - Updated the CUPS raster format specification to include
146 encoding rules and colorspace definitions.
147 - The Zebra PPD files had the wrong PostScript code for
148 the "default" option choices.
149 - The imagetoraster filter did not generate correct CIE
150 XYZ or Lab color data.
151 - The cups-config script did not work when invoked from a
152 source directory (STR #1673)
153 - The SNMP backend did not compile on systems that used
154 the getifaddrs emulation functions (STR #1668)
157 CHANGES IN CUPS V1.2.0
159 - Documentation updates (STR #1618, STR #1620, STR #1622,
161 - Static file copy buffers reduced from 64k to 32k to
162 work around bogus MallocDebug library assumptions (STR
164 - The scheduler did not decode the backend exit code
166 - The MacOS X USB backend did not report the 1284 device ID,
167 nor did it fix device IDs returned by HP printers.
168 - The scheduler started more slowly than 1.1.x with large
169 numbers of printers (STR #1653)
170 - cupsRasterInterpretPPD() didn't support the
171 cupsPreferredBitsPerColor attribute, and imagetoraster
172 didn't use the new API.
173 - The "make test" script did not create all of the necessary
174 subdirectories for testing (STR #1638)
175 - The scheduler did not prevent rotation of logs
176 redirected to /dev/null (STR #1651)
177 - "make test" did not include the SNMP backend in the
178 test environment (STR #1625)
179 - The EPM packaging files did not work (STR #1621)
180 - "Use Default Configuration" inserted a broken
181 configuration file (STR #1624)
182 - Redirects in the web interface did not always preserve
183 the encrypted status of a connection (STR #1603)
184 - Added the Apple "pap" backend.
185 - Added CUPS library to CUPS Image shared library
186 linkage to support Linux --as-needed linker option
188 - Fixed support for --enable-pie (STR #1609)
189 - The pdftops filter did not validate the length of the
190 encryption key (STR #1608)
191 - Updated the Polish localization.
192 - "Encryption Required" in the cupsd.conf file now only
193 requires encryption when the connection is not over the
194 loopback interface or domain socket.
195 - Printer names containing "+" were not quoted properly in
196 the web interface (STR #1600)
197 - The SNMP backend now reports the make and model in the
198 information string so that the auto-generated printer
199 name is more useful than just an IP address.
202 CHANGES IN CUPS V1.2rc3
204 - The cups-lpd program always did reverse lookups on the
205 client address, which could be a performance problem.
206 Added a "-n" option to disable lookups.
207 - When configured with SSL support, require encryption by
208 default when displaying the /admin location (STR #1592)
209 - The next job ID was not computed correctly if the job
210 cache file got out of sync with the spool directory
212 - The PNG image handling code used deprecated functions
213 from libpng (STR #1587)
214 - Added a Polish translation (STR #1584, STR #1586)
215 - More changes to the scheduler to improve battery life
216 on portable devices (STR #1583)
217 - Changed the default log level for status messages back
218 to "DEBUG" to be consistent with CUPS 1.1.x (STR #1579)
219 - The error string was not set properly when
220 cupsDoFileRequest() was given the name of a directory
222 - Fixed handling of job-hold-until (STR #1581)
223 - Added explicit notes to the cupsaddsmb man page
224 explaining that the driver filenames are case-sensitive
225 under UNIX and that they must be all lowercase (Windows
226 2000) or all UPPERCASE (Windows 95/98/Me) to work (STR
228 - The USB backend incorrectly split the manufacturer name
229 if it contained spaces (STR #1566)
230 - The scheduler would hang when listing PPD files for a
231 manufacturer whose name contained spaces (STR #1567)
232 - Added the SNMP backend for network printer discovery
234 - cupstestppd now fails PPD files with 1284DeviceId
235 instead of 1284DeviceID, and cups-driverd uses a
236 case-insensitive comparison when looking for it (STR
238 - cupsDoFileRequest() and cupsDoRequest() now work
239 properly with non-blocking HTTP connections.
240 - Added Swedish translation (STR #1569)
241 - "make install" now installs the MIME files with world
242 read permissions (STR #1565)
243 - More CDSA encryption support fixes (STR #1563)
244 - Updated the default mime.types file to support printing
245 of files that do not have a locally-recognized MIME
246 media type to raw or System V queues.
247 - Updated the serial port detection code on Linux (STR
249 - Added some more error checking to httpGetHostname()
251 - The title of some administration pages was not
252 localized (STR #1548)
253 - The edit-config.tmpl file was not generated or
254 installed for the Spanish or Japanese localizations
256 - The mimeDelete() function freed the types before the
257 filters, but the filters needed the type data (STR #1558)
258 - The scheduler didn't keep track of the status pipes
259 properly, leading to a bad select() for multi-file jobs
261 - The cupstestdsc program didn't validate the ordinal
262 page number value for %%Page: comments.
265 CHANGES IN CUPS V1.2rc2
267 - The scheduler was not always using the string pool,
268 causing random crashes.
269 - The lpmove and the web interface's Move Job button did
270 not work with stopped jobs (STR #1534)
271 - The PostScript filter did not handle the page-set
272 option properly with number-up printing (STR #1543)
273 - The scheduler now only warns about unsupported ACLs
275 - The "fitplot" option did not work with output from
277 - The imagetops filter did not work with Level 2 or 3
279 - The scheduler now recognizes PostScript files with PJL
280 commands that do not include an ENTER LANGUAGE command.
281 - Added --with-printcap configure option.
282 - 64-bit SSL fixes for MacOS X.
283 - The scheduler didn't send some printer state change
285 - The scheduler didn't send jobs to busy remote printers.
286 - Fixed some problems with the launchd support.
287 - Added new USB printer backend for MacOS X.
288 - The PostScript filter now handles files that start with
289 an incomplete PJL header (PR #6076)
290 - The web interface language selection code did not try
291 the generic language localization (STR #1531)
292 - The language cache, string pool, and transcoding caches
293 are now process global instead of per-thread to avoid
294 problems with GNOME and to allow for data sharing
295 between threads (STR #1530)
296 - Fixed a CUPS 1.1.x compatibility bug (STR #1528)
297 - The web interface redirection after certain printer
298 administration tasks was broken (STR #1516)
299 - Web interface authorization could get stuck (STR #1512)
300 - Localization updates (STR #1513, STR #1518, STR #1520)
301 - The pstops filter didn't work with some files (STR
303 - "./configure --enable-static" didn't work (STR #1522)
304 - The scheduler was not using the configured default
306 - The web interface still did not show the localized time
307 and date for some locales and systems (STR #1509)
308 - httpAddrGetList() would crash on systems without
310 - Socket URIs without a trailing slash would cause the
311 port number to not be accepted (STR #1519)
312 - Local raw and System V printers were not advertised as
313 such for printer browsing (STR #1502)
314 - The RPM spec file incorrectly put duplicate copies of
315 the Japanese and Spanish web interface templates in the
316 main cups package (STR #1517)
317 - cupsSetDests() did not explicitly set the permissions
318 of the /etc/cups/lpoptions file (STR #1508)
319 - The lpq command crashed with the -h option (STR #1515)
322 CHANGES IN CUPS V1.2rc1
324 - Documentation updates (STR #1497, STR #1498)
325 - The scheduler now redirects browsers to https: URLs
326 when encryption is required.
327 - The scheduler would crash when printing with a banner
329 - cups-driverd did not use the LanguageEncoding attribute
330 in PPD files to convert the NickName to UTF-8 (STR
332 - The lpadmin command could not set the
333 printer-error-policy attribute (STR #1504)
334 - The web interface did not show the time and date in the
335 correct format for the locale (STR #1505)
336 - CUPS no longer accepts print jobs if a printer does not
337 support the file format (STR #1501)
338 - Cleaned up the PostScript filter (pstops) so that it
339 properly supports %%IncludeFeature and page scaling
341 - Fixed the cupsFileRewind() and cupsFileSeek() functions
342 to work properly with uncompressed files.
343 - Added cupsFileGetLine(), cupsFileStderr(),
344 cupsFileStdin(), and cupsFileStdout() functions to the
346 - Added a new cupstestdsc program to test the DSC
347 conformance of PostScript files.
348 - Added KDE/GNOME icons and a Manage Printers menu item.
349 - Added --enable-image and --enable-pdftops configure
350 options to control whether the image and PDF filters
351 are built and installed (default = yes for all
352 platforms but MacOS X)
353 - Fixed a minor memory leak in the PPD API.
354 - Fixed transcoding issues (STR #1493)
355 - The scheduler now enforces a minimum job cost of 100
356 when doing FilterLimit checks.
357 - The scheduler would leak file descriptors when printing
358 to raw queues (STR #1491)
359 - The IPv6 support did not compile on Tru64 UNIX (STR
361 - ppdOpen2() now converts the NickName and all UI text to
363 - The Set Allowed Users web page did not work (STR #1486)
364 - When the default policy was not set or set to a non-
365 existing policy, the scheduler did not set the default
366 policy name to "default" (STR #1484)
367 - The Zebra CPCL driver did not use the correct righthand
368 margin for the 4" wide label sizes.
369 - Fixed a problem with the parsing of fractional real
370 numbers in PPD files.
371 - Added Spanish localization files (STR #1480)
372 - Fixed localization of a few scheduler messages (STR
374 - Fixed support for HEAD requests in the scheduler (STR
378 CHANGES IN CUPS V1.2b2
380 - Updated the CUPS design description.
381 - Added --enable-32bit and --enable-64bit configure
382 options to allow building of separate 32/64-bit
383 libraries on systems that support both environments
385 - Various compiler warning fixes.
386 - Fixes for Solaris 10 builds against old GNU TLS and
388 - Added a cupsArrayUserData() function to retrieve the
389 user data pointer for an array (useful for typing
391 - The ppdEmitString() function did not compute the
392 required buffer size properly, leading to dropped
393 characters on the end of the printer commands in pstops
394 and imagetops (STR #1470)
397 CHANGES IN CUPS V1.2b1
399 - The serial backend now supports Equinox 8-port serial
401 - The IPP backend now supports a compression option to
402 compress print files as they are sent to the remote
404 - The CUPS browse protocol now supports passing of
405 default options and browse timeout values from the
406 server to the clients (STR #800)
407 - Implicit classes that timed out could cause the
408 scheduler to crash (STR #1439)
409 - Added DragonFly support in local device backends (STR
411 - Added LDAP printer browsing support (STR #338)
412 - Added official support for printer maintenance commands
413 via the CUPS Command file format and hooks in the
414 printer-type and web interfaces (STR #932)
415 - The HP-GL/2 filter could get in an infinite loop trying
416 to convert HP-PCL files (STR #1415)
417 - CUPS now implements the HTTP/1.1 Expect header (STR
419 - Options in PPD files are no longer automatically put in
420 an "Extra" group; rather, all options that are not
421 inside an Open/CloseGroup will be placed in the
422 "General" group (STR #1385)
423 - The scheduler now creates a job-uuid attribute that
424 uniquely identifies a job on a network (STR #1410)
425 - The init script now unsets the TMPDIR environment
426 variable to prevent user temporary directories from
427 being used by cupsd accidentally (STR #1424)
428 - Added support for launchd on MacOS X.
429 - Added support for notify_post on MacOS X.
430 - Added support for DBUS on Linux.
431 - All of the Berkeley (except for lpc) and System V
432 commands now support specification of user, host, and
433 port (STR #1028, STR #1029, STR #1087)
434 - The lpmove command now allows you to move all jobs for
435 a given queue (STR #56)
436 - The web interface now supports moving of a job or jobs
437 to another queue (STR #56)
438 - The web interface now provides searching, paging, and
439 changing of the sort/display order of classes, jobs,
441 - cupsaddsmb now accepts a password on the command-line
442 and supports passwords with special characters (STR
444 - ppdLoad*() no longer tries to "fix" bad characters in
446 - Printer names can now (reliably) contain Unicode
447 characters (STR #896)
448 - The lpstat command now shows the time and date of the
449 last printer state change instead of the hardcoded "Jan
451 - The scheduler now adds a job-actual-printer-uri
452 attribute to job objects when printing to a class (STR
454 - The scheduler now logs log file open errors to the
455 system log (STR #1289)
456 - The scheduler now sets the job-originating-user-name to
457 the authenticated username, if available (STR #1318)
458 - The scheduler now only updates the permissions of SSL
459 keys and certificates when they are under the
460 ServerRoot directory (STR #1324)
461 - The rastertodymo driver has been renamed to
462 rastertolabel (a symlink is installed so that existing
463 queues continue to work) and now also supports Zebra's
465 - The lpstat command could show the wrong active job for
466 a printer (STR #1301)
467 - Fixed a potential crash problem in the scheduler when
468 aborting a CGI program (STR #1290)
469 - Added a "cancel all jobs" button to the class and
470 printer web interfaces (STR #1140)
471 - The add-printer web page now shows the
472 set-printer-options page after the printer has been
474 - The classes web page now provides links to each of the
475 member printers (STR #307)
476 - CUPS now handles HTTP request/response lines up to 32k
477 in length; this is mainly for better cookie support
479 - Added support for the Apache PassEnv and SetEnv
480 directives to cupsd.conf (STR #853)
481 - Added large file (64-bit) support (STR #541)
482 - Fixed a performance issue with the ippReadIO()
483 implementation (STR #1284)
484 - Fixed a performance issue with the scheduler's implicit
485 class implementation (STR #1283)
486 - The pdftops filter now adds the Title and Creator
487 fields from the PDF file to the PostScript document
488 comments section (STR #539, STR #830)
489 - Added a new cups_array_t and cupsArray*() functions to
490 the CUPS API to support sorted lists of data.
491 - Made the CUPS API library thread-safe (STR #1276)
492 - Added "media" option support for EFI EFMediaType option
494 - Added write buffering to the HTTP code to improve
495 performance (STR #547)
496 - The scheduler now uses the attributes-natural-language
497 attribute to localize banner pages (STR #386)
498 - The scheduler now returns the address that was used to
499 connect to it (STR #1076)
500 - Fixed a problem with N-up printing and OpenOffice (STR
502 - Added support for the GCC position independent
503 executable options (STR #1209)
504 - Added new BrowseLocalProtocols and
505 BrowseRemoteProtocols directives to cupsd.conf,
506 allowing for different browse protocols for local and
507 remote printers (STR #877)
508 - PPD files can now contain strings up to 256k in length
510 - The pstops filter now supports the IncludeFeature DSC
512 - The pstops filter now disables the setpagedevice
513 procedure when doing N-up printing (STR #1161)
514 - The serial backend now supports "stop=1", "stop=2",
515 "parity=space", and "parity=mark" options (STR #1155)
516 - "make install" no longer overwrites an existing PAM
517 configuration file (STR #1064)
518 - The scheduler now closes all files on startup when run
519 in daemon mode (STR #1009)
520 - Added a new RGBW colorspace to the CUPS raster format
522 - The pdftops filter now sets the page size based on the
523 media box when not scaling the output (STR #912)
524 - The pdftops filter now supports masked images (STR
526 - The pdftops filter produced large output when rendering
527 PDF files containing lot of repeated images (STR #327)
528 - The pdftops filter now minimizes print processing of
529 PDF files when using the page-ranges option (STR #273)
530 - Updated pdftops filter to Xpdf 3.01.
531 - Added new cupsBackchannelRead() and
532 cupsBackchannelWrite() functions, as well as
533 backchannel support to the parallel, serial, socket,
534 and USB backends (STR #1252)
535 - The parallel and USB backends now treat a "no space
536 available" error as an out-of-paper condition (STR
538 - The "lpc" command now supports the "status all" command
540 - ippReadIO() did not read collections properly (STR
542 - The "make test" script now creates the test files in
543 "/tmp/cups-$USER" instead of "/tmp/$USER" (STR #981)
544 - All backends now abort on error when printing a job to
545 a class - this allows the next printer in the class to
546 print the job (STR #1084)
547 - The scheduler now verifies that a printer supports
548 Letter or A4 media sizes before setting them as the
549 initial default (STR #1250)
550 - The cupstestppd program now flags bad Resolution
552 - The USB backend now retries printing when the printer
553 is disconnected or turned off (STR #1267)
554 - Added new httpGetHostname() function to CUPS API, and
555 use it instead of gethostname() so that the web
556 interface will work correctly on systems whose hostname
557 is not the FQDN (STR #1266)
558 - The scheduler now stops printers if the backend for the
559 queue is missing on startup (STR #1265)
560 - The configure script now supports "--disable-library"
561 to disable particular image file format support
562 libraries, even if they are available on the build
564 - The IPP backend did not always report on the total
565 number of pages that were printed (STR #1251)
566 - The lpstat program could display garbage date and time
567 values for locales whose date format exceeded 31
568 characters (STR #1263)
569 - The cupstestppd program would segfault when testing
570 certain broken PPD files (STR #1268)
571 - Dramatically reduced the overhead of implicit classes.
572 - Added new cupsDir*() functions to CUPS API.
573 - Printers can now be published individually for sharing.
574 - Fixed a bug in the scheduler's startup signalling code
575 which caused cupsd to send the SIGUSR1 signal to the
576 init process instead of the original parent process
578 - Added new on-line help CGI to web interface to provide
580 - Devices are now tracked dynamically, with each query
581 doing a new device scan. This eliminates a previous
582 startup delay caused by slow backends and allows new
583 printers to be seen without restarting the server,
584 however it limits the amount of device URI checking
585 that can be done (basically now the scheduler only
586 requires a URI with a method that is a listed backend)
587 - Added new printer auto-detection, server configuration,
588 and log file viewing to the administration web page.
589 - Added new "set allowed users" web interface to set the
590 list of allowed users for a printer or class.
591 - The scheduler, command-line, and web interfaces now
592 limit the list of printers and classes to those
593 accessible by a user.
594 - cupsMarkOptions() now handles more non-standard
595 duplexing options and choices (STR #915)
596 - cups-lpd now honors remote banner requests with the
597 "standard" banner whenever a printer does not have one
599 - The scheduler's denial-of-service checks did not work
600 properly with IPv6 addresses (STR #1134)
601 - The lp and lpr commands did not error out properly when
602 they were unable to write to a temporary file (STR
604 - The pstops filter did not handle Adobe-specific
605 comments in Windows NT driver output (STR #1085)
606 - "lpstat -l -p" incorrectly reported the printer
608 - The web interface now operates exclusively with the
609 UTF-8 encoding, and sends the appropriate character set
610 and header information to the web browser (STR #919,
612 - Added a "set allowed users" interface to the web
613 interface so that you can set the list of allowed or
614 denied users/groups for a printer or class.
615 - Disallow the "#" character in printer names, since it
616 has special meaning in the shell, config files, and in
617 URIs (STR #917, STR #1202)
618 - Added a new application/x-csource MIME type, and
619 support for it to the texttops filter so that you can
620 pretty print plain text files without the C/C++
621 keywords being highlighted.
622 - The pdftops filter did not compile with GCC 4.0 (STR
624 - The texttops filter did not highlight preprocessor
625 directives followed by a tab properly.
626 - HP PJL output now uses both JOB DISPLAY and RDYMSG
627 commands to show the current job on the printer's
629 - Local authentication certificates are now stored in
630 /var/run/cups/certs by default instead of
631 /etc/cups/certs (STR #1211)
632 - Backends now use "&" to separate options in device
633 URIs; "+" is still recognized but is deprecated (STR
635 - The USB backend no longer supports the usb:/dev/foo
636 format on systems that support device ID queries.
637 - Forced classification markings did not work when the
638 job-sheets parameters were "none,none".
639 - "lpstat -l -p" incorrectly showed all users as allowed,
640 even if the queue was restricted to certain users (STR
642 - The scheduler now automatically detects SSL/TLS clients
643 without using the SSLPort/SSLListen directives.
644 - The CUPS API and scheduler no longer support SSLv2-
645 encrypted connections.
646 - Updated the cupsaddsmb utility to correctly export the
647 CUPS driver for Windows.
648 - Fixed a signal-handling bug in httpRead() which
649 ultimately caused the server to print multiple copies
650 when it was busy (STR #1184)
651 - The cupsFile API now uses the O_APPEND option when
652 opening files in append mode (STR #990)
653 - The md5.h header and md5_* functions are now officially
654 private and have been renamed to avoid conflicts with
655 other implementations with the same name.
656 - The pdftops filter incorrectly embedded some Type1
658 - The scheduler didn't detect a closed connection in the
659 middle of an IPP request (STR #1153)
660 - The scheduler could block trying to read the job status
661 if there was input pending and the job was cancelled in
662 the same input cycle (STR #1157)
663 - The scheduler could crash when deleting a class due to
665 - Updated the Zebra ZPL label printer driver to use the
666 run-length encoding and support more options.
667 - Updated serial backend to scan for /dev/ttyC* as well
668 as /dev/ttyc* for Cyclades serial ports (STR #1049)
669 - The scheduler could hang reading the job status under
670 certain circumstances (STR #1068)
671 - The USB backend termination signal code was inverted
673 - Moved enable and disable commands to sbindir to be
675 - Added new cupsRasterInterpretPPD() function for RIP
676 filters to setup the raster page header from
677 PostScript commands in a PPD file.
678 - The CUPS browsing protocol now offers a "delete" bit
679 to remove printers as soon as they are deleted on the
680 server or as soon as the server shuts down gracefully
682 - The CUPS_SERVER and ServerName directives (client.conf
683 and ~/.cupsrc) may now contain names of the form
684 "server:port" and "/path/to/domain/socket".
685 - The "cancel -u user" command now works for ordinary
687 - Added test run support to "make test" target (STR #64)
688 - Added domain socket support (STR #656)
689 - Added BrowseLocalOptions directive to allow the
690 administrator to add printer URI options to the browse
691 URI, e.g. "encryption=required" (STR #732)
692 - Added BrowseRemoteOptions directive to allow the
693 administrator to add standard URI options to the
694 remote printer URI, e.g. "encryption=required" (STR
696 - Now put "-I.." compiler option in front of all others
697 to ensure that local CUPS headers are used before
698 installed headers (STR #437)
699 - New cupsLangPrintf() and cupsLangPuts() for localized
701 - Now support custom attributes and extended options in
703 - Now provide functions to save PPD files.
704 - New policy mechanism allows per-operation and
705 per-printer control over what users and groups are
706 allowed to do various IPP operations.
707 - New error policy mechanism to control how aborted
708 backend errors are handled by the scheduler
709 (abort-job, retry-job, requeue-job, stop-printer)
710 - Updated the printer test page with a better color
711 wheel and a separate grayscale ramp.
712 - A single backend process is now run to send all print
714 - Backends and filters can now send and receive
715 backchannel data over file descriptor 3.
716 - Updated the raster stream format to support more
717 user-defined attributes and to do compression of the