]>
Commit | Line | Data |
---|---|---|
1 | CHANGES - 2.3.1 - 2019-08-27 | |
2 | ============================ | |
3 | ||
4 | ||
5 | Changes in CUPS v2.3.1 | |
6 | ---------------------- | |
7 | ||
8 | - Fixed spelling of "fold-accordion". | |
9 | ||
10 | ||
11 | Changes in CUPS v2.3.0 | |
12 | ---------------------- | |
13 | ||
14 | - CVE-2019-8696 and CVE-2019-8675: Fixed SNMP buffer overflows (rdar://51685251) | |
15 | - Added a GPL2/LGPL2 exception to the new CUPS license terms. | |
16 | - Documentation updates (Issue #5604) | |
17 | - Localization updates (Issue #5637) | |
18 | - Fixed a bug in the scheduler job cleanup code (Issue #5588) | |
19 | - Fixed builds when there is no TLS library (Issue #5590) | |
20 | - Eliminated some new GCC compiler warnings (Issue #5591) | |
21 | - Removed dead code from the scheduler (Issue #5593) | |
22 | - "make" failed with GZIP options (Issue #5595) | |
23 | - Fixed potential excess logging from the scheduler when removing job files | |
24 | (Issue #5597) | |
25 | - Fixed a NULL pointer dereference bug in `httpGetSubField2` (Issue #5598) | |
26 | - Added FIPS-140 workarounds for GNU TLS (Issue #5601, Issue #5622) | |
27 | - The scheduler no longer provides a default value for the description | |
28 | (Issue #5603) | |
29 | - The scheduler now logs jobs held for authentication using the error level so | |
30 | it is clear what happened (Issue #5604) | |
31 | - The `lpadmin` command did not always update the PPD file for changes to the | |
32 | `cupsIPPSupplies` and `cupsSNMPSupplies` keywords (Issue #5610) | |
33 | - The scheduler now uses both the group's membership list as well as the | |
34 | various OS-specific membership functions to determine whether a user belongs | |
35 | to a named group (Issue #5613) | |
36 | - Added USB quirks rule for HP LaserJet 1015 (Issue #5617) | |
37 | - Fixed some PPD parser issues (Issue #5623, Issue #5624) | |
38 | - The IPP parser no longer allows invalid member attributes in collections | |
39 | (Issue #5630) | |
40 | - The configure script now treats the "wheel" group as a potential system | |
41 | group (Issue #5638) | |
42 | - Fixed a USB printing issue on macOS (rdar://31433931) | |
43 | - Fixed IPP buffer overflow (rdar://50035411) | |
44 | - Fixed memory disclosure issue in the scheduler (rdar://51373853) | |
45 | - Fixed DoS issues in the scheduler (rdar://51373929) | |
46 | - Fixed an issue with unsupported "sides" values in the IPP backend | |
47 | (rdar://51775322) | |
48 | - The scheduler would restart continuously when idle and printers were not | |
49 | shared (rdar://52561199) | |
50 | - Fixed an issue with `EXPECT !name WITH-VALUE ...` tests. | |
51 | - Fixed a command ordering issue in the Zebra ZPL driver. | |
52 | - Fixed a memory leak in `ppdOpen`. | |
53 | ||
54 | ||
55 | Changes in CUPS v2.3rc1 | |
56 | ----------------------- | |
57 | ||
58 | - The `cups-config` script no longer adds extra libraries when linking against | |
59 | shared libraries (Issue #5261) | |
60 | - The supplied example print documents have been optimized for size | |
61 | (Issue #5529) | |
62 | - The `cupsctl` command now prevents setting "cups-files.conf" directives | |
63 | (Issue #5530) | |
64 | - The "forbidden" message in the web interface is now explained (Issue #5547) | |
65 | - The footer in the web interface covered some content on small displays | |
66 | (Issue #5574) | |
67 | - The libusb-based USB backend now enforces read limits, improving print speed | |
68 | in many cases (Issue #5583) | |
69 | - The `ippeveprinter` command now looks for print commands in the "command" | |
70 | subdirectory. | |
71 | - The `ipptool` command now supports `$date-current` and `$date-start` variables | |
72 | to insert the current and starting date and time values, as well as ISO-8601 | |
73 | relative time values such as "PT30S" for 30 seconds in the future. | |
74 | ||
75 | ||
76 | Changes in CUPS v2.3b8 | |
77 | ---------------------- | |
78 | ||
79 | - Media size matching now uses a tolerance of 0.5mm (rdar://33822024) | |
80 | - The lpadmin command would hang with a bad PPD file (rdar://41495016) | |
81 | - Fixed a potential crash bug in cups-driverd (rdar://46625579) | |
82 | - Fixed a performance regression with large PPDs (rdar://47040759) | |
83 | - Fixed a memory reallocation bug in HTTP header value expansion | |
84 | (rdar://problem/50000749) | |
85 | - Timed out job submission now yields an error (Issue #5570) | |
86 | - Restored minimal support for the `Emulators` keyword in PPD files to allow | |
87 | old Samsung printer drivers to continue to work (Issue #5562) | |
88 | - The scheduler did not encode octetString values like "job-password" correctly | |
89 | for the print filters (Issue #5558) | |
90 | - The `cupsCheckDestSupported` function did not check octetString values | |
91 | correctly (Issue #5557) | |
92 | - Added support for `UserAgentTokens` directive in "client.conf" (Issue #5555) | |
93 | - Updated the systemd service file for cupsd (Issue #5551) | |
94 | - The `ippValidateAttribute` function did not catch all instances of invalid | |
95 | UTF-8 strings (Issue #5509) | |
96 | - Fixed an issue with the self-signed certificates generated by GNU TLS | |
97 | (Issue #5506) | |
98 | - Fixed a potential memory leak when reading at the end of a file (Issue #5473) | |
99 | - Fixed potential unaligned accesses in the string pool (Issue #5474) | |
100 | - Fixed a potential memory leak when loading a PPD file (Issue #5475) | |
101 | - Added a USB quirks rule for the Lexmark E120n (Issue #5478) | |
102 | - Updated the USB quirks rule for Zebra label printers (Issue #5395) | |
103 | - Fixed a compile error on Linux (Issue #5483) | |
104 | - The lpadmin command, web interface, and scheduler all queried an IPP | |
105 | Everywhere printer differently, resulting in different PPDs for the same | |
106 | printer (Issue #5484) | |
107 | - The web interface no longer provides access to the log files (Issue #5513) | |
108 | - Non-Kerberized printing to Windows via IPP was broken (Issue #5515) | |
109 | - Eliminated use of private headers and some deprecated macOS APIs (Issue #5516) | |
110 | - The scheduler no longer stops a printer if an error occurs when a job is | |
111 | canceled or aborted (Issue #5517) | |
112 | - Added a USB quirks rule for the DYMO 450 Turbo (Issue #5521) | |
113 | - Added a USB quirks rule for Xerox printers (Issue #5523) | |
114 | - The scheduler's self-signed certificate did not include all of the alternate | |
115 | names for the server when using GNU TLS (Issue #5525) | |
116 | - Fixed compiler warnings with newer versions of GCC (Issue #5532, Issue #5533) | |
117 | - Fixed some PPD caching and IPP Everywhere PPD accounting/password bugs | |
118 | (Issue #5535) | |
119 | - Fixed `PreserveJobHistory` bug with time values (Issue #5538) | |
120 | - The scheduler no longer advertises the HTTP methods it supports (Issue #5540) | |
121 | - Localization updates (Issue #5461, Issues #5471, Issue #5481, Issue #5486, | |
122 | Issue #5489, Issue #5491, Issue #5492, Issue #5493, Issue #5494, Issue #5495, | |
123 | Issue #5497, Issue #5499, Issue #5500, Issue #5501, Issue #5504) | |
124 | - The scheduler did not always idle exit as quickly as it could. | |
125 | - Added a new `ippeveprinter` command based on the old ippserver sample code. | |
126 | ||
127 | ||
128 | Changes in CUPS v2.3b7 | |
129 | ---------------------- | |
130 | ||
131 | - Fixed some build failures (Issue #5451, Issue #5463) | |
132 | - Running ppdmerge with the same input and output filenames did not work as | |
133 | advertised (Issue #5455) | |
134 | ||
135 | ||
136 | Changes in CUPS v2.3b6 | |
137 | ---------------------- | |
138 | ||
139 | - Localization update (Issue #5339, Issue #5348, Issue #5362, Issue #5408, | |
140 | Issue #5410) | |
141 | - Documentation updates (Issue #5369, Issue #5402, Issue #5403, Issue #5404) | |
142 | - CVE-2018-4300: Linux session cookies used a predictable random number seed. | |
143 | - All user commands now support the `--help` option (Issue #5326) | |
144 | - The `lpoptions` command now works with IPP Everywhere printers that have not | |
145 | yet been added as local queues (Issue #5045) | |
146 | - The lpadmin command would create a non-working printer in some error cases | |
147 | (Issue #5305) | |
148 | - The scheduler would crash if an empty `AccessLog` directive was specified | |
149 | (Issue #5309) | |
150 | - The scheduler did not idle-exit on some Linux distributions (Issue #5319) | |
151 | - Fixed a regression in the changes to ippValidateAttribute (Issue #5322, | |
152 | Issue #5330) | |
153 | - Fixed a crash bug in the Epson dot matrix driver (Issue #5323) | |
154 | - Automatic debug logging of job errors did not work with systemd (Issue #5337) | |
155 | - The web interface did not list the IPP Everywhere "driver" (Issue #5338) | |
156 | - The scheduler did not report all of the supported job options and values | |
157 | (Issue #5340) | |
158 | - The IPP Everywhere "driver" now properly supports face-up printers | |
159 | (Issue #5345) | |
160 | - Fixed some typos in the label printer drivers (Issue #5350) | |
161 | - Setting the `Community` name to the empty string in `snmp.conf` now disables | |
162 | SNMP supply level monitoring by all the standard network backends | |
163 | (Issue #5354) | |
164 | - Multi-file jobs could get stuck if the backend failed (Issue #5359, | |
165 | Issue #5413) | |
166 | - The IPP Everywhere "driver" no longer does local filtering when printing to | |
167 | a shared CUPS printer (Issue #5361) | |
168 | - The lpadmin command now correctly reports IPP errors when configuring an | |
169 | IPP Everywhere printer (Issue #5370) | |
170 | - Fixed some memory leaks discovered by Coverity (Issue #5375) | |
171 | - The PPD compiler incorrectly terminated JCL options (Issue #5379) | |
172 | - The cupstestppd utility did not generate errors for missing/mismatched | |
173 | CloseUI/JCLCloseUI keywords (Issue #5381) | |
174 | - The scheduler now reports the actual location of the log file (Issue #5398) | |
175 | - Added USB quirk rules (Issue #5395, Issue #5420, Issue #5443) | |
176 | - The generated PPD files for IPP Everywhere printers did not contain the | |
177 | cupsManualCopies keyword (Issue #5433) | |
178 | - Kerberos credentials might be truncated (Issue #5435) | |
179 | - The handling of `MaxJobTime 0` did not match the documentation (Issue #5438) | |
180 | - Fixed a bug adding a queue with the `-E` option (Issue #5440) | |
181 | - The `cupsaddsmb` program has been removed (Issue #5449) | |
182 | - The `cupstestdsc` program has been removed (Issue #5450) | |
183 | - The scheduler was being backgrounded on macOS, causing applications to spin | |
184 | (rdar://40436080) | |
185 | - The scheduler did not validate that required initial request attributes were | |
186 | in the operation group (rdar://41098178) | |
187 | - Authentication in the web interface did not work on macOS (rdar://41444473) | |
188 | - Fixed an issue with HTTP Digest authentication (rdar://41709086) | |
189 | - The scheduler could crash when job history was purged (rdar://42198057) | |
190 | - Fixed a crash bug when mapping PPD duplex options to IPP attributes | |
191 | (rdar://46183976) | |
192 | - Fixed a memory leak for some IPP (extension) syntaxes. | |
193 | - The `cupscgi`, `cupsmime`, and `cupsppdc` support libraries are no longer | |
194 | installed as shared libraries. | |
195 | - The `snmp` backend is now deprecated. | |
196 | ||
197 | ||
198 | Changes in CUPS v2.3b5 | |
199 | ---------------------- | |
200 | ||
201 | - The `ipptool` program no longer checks for duplicate attributes when running | |
202 | in list or CSV mode (Issue #5278) | |
203 | - The `cupsCreateJob`, `cupsPrintFile2`, and `cupsPrintFiles2` APIs did not use | |
204 | the supplied HTTP connection (Issue #5288) | |
205 | - Fixed another crash in the scheduler when adding an IPP Everywhere printer | |
206 | (Issue #5290) | |
207 | - Added a workaround for certain web browsers that do not support multiple | |
208 | authentication schemes in a single response header (Issue #5289) | |
209 | - Fixed policy limits containing the `All` operation (Issue #5296) | |
210 | - The scheduler was always restarted after idle-exit with systemd (Issue #5297) | |
211 | - Added a USB quirks rule for the HP LaserJet P1102 (Issue #5310) | |
212 | - The mailto notifier did not wait for the welcome message (Issue #5312) | |
213 | - Fixed a parsing bug in the pstops filter (Issue #5321) | |
214 | - Documentation updates (Issue #5299, Issue #5301, Issue #5306) | |
215 | - Localization updates (Issue #5317) | |
216 | - The scheduler allowed environment variables to be specified in the | |
217 | `cupsd.conf` file (rdar://37836779, rdar://37836995, rdar://37837252, | |
218 | rdar://37837581) | |
219 | - Fax queues did not support pause (p) or wait-for-dialtone (w) characters | |
220 | (rdar://39212256) | |
221 | - The scheduler did not validate notify-recipient-uri values properly | |
222 | (rdar://40068936) | |
223 | - The IPP parser allowed invalid group tags (rdar://40442124) | |
224 | - Fixed a parsing bug in the new authentication code. | |
225 | ||
226 | ||
227 | Changes in CUPS v2.3b4 | |
228 | ---------------------- | |
229 | ||
230 | - NOTICE: Printer drivers are now deprecated (Issue #5270) | |
231 | - Kerberized printing to another CUPS server did not work correctly | |
232 | (Issue #5233) | |
233 | - Fixed printing to some IPP Everywhere printers (Issue #5238) | |
234 | - Fixed installation of filters (Issue #5247) | |
235 | - The scheduler now supports using temporary print queues for older IPP/1.1 | |
236 | print queues like those shared by CUPS 1.3 and earlier (Issue #5241) | |
237 | - Star Micronics printers need the "unidir" USB quirk rule (Issue #5251) | |
238 | - Documentation fixes (Issue #5252) | |
239 | - Fixed a compile issue when PAM is not available (Issue #5253) | |
240 | - Label printers supported by the rastertolabel driver don't support SNMP, so | |
241 | don't delay printing to test it (Issue #5256) | |
242 | - The scheduler could crash while adding an IPP Everywhere printer (Issue #5258) | |
243 | - The Lexmark Optra E310 printer needs the "no-reattach" USB quirk rule | |
244 | (Issue #5259) | |
245 | - Systemd did not restart cupsd when configuration changes were made that | |
246 | required a restart (Issue #5263) | |
247 | - The IPP Everywhere PPD generator did not include the `cupsJobPassword` | |
248 | keyword, when supported (Issue #5265) | |
249 | - Fixed an Avahi crash bug in the scheduler (Issue #5268) | |
250 | - Raw print queues are now deprecated (Issue #5269) | |
251 | - Fixed an RPM packaging problem (Issue #5276) | |
252 | - The IPP backend did not properly detect failed PDF prints (rdar://34055474) | |
253 | - TLS connections now properly timeout (rdar://34938533) | |
254 | - Temp files could not be created in some sandboxed applications | |
255 | (rdar://37789645) | |
256 | - The ipptool `--ippserver` option did not encode out-of-band attributes | |
257 | correctly. | |
258 | - Added public `cupsEncodeOption` API for encoding a single option as an IPP | |
259 | attribute. | |
260 | - Removed support for the `-D_PPD_DEPRECATED=""` developer cheat - the PPD API | |
261 | should no longer be used. | |
262 | - Removed support for `-D_IPP_PRIVATE_STRUCTURES=1` developer cheat - the IPP | |
263 | accessor functions should be used instead. | |
264 | ||
265 | ||
266 | Changes in CUPS v2.3b3 | |
267 | ---------------------- | |
268 | ||
269 | - More fixes for printing to old CUPS servers (Issue #5211) | |
270 | - The IPP Everywhere PPD generator did not support deep grayscale or 8-bit per | |
271 | component AdobeRGB (Issue #5227) | |
272 | - Additional changes for the scheduler to substitute default values for invalid | |
273 | job attributes when running in "relaxed conformance" mode (Issue #5229) | |
274 | - Localization changes (Issue #5232, rdar://37068158) | |
275 | - The `cupsCopyDestInfo` function did not work with all print queues | |
276 | (Issue #5235) | |
277 | ||
278 | ||
279 | Changes in CUPS v2.3b2 | |
280 | ---------------------- | |
281 | ||
282 | - Localization changes (Issue #5210) | |
283 | - Build fixes (Issue #5217) | |
284 | - IPP Everywhere PPDs were not localized to English (Issue #5205) | |
285 | - The `cupsGetDests` and `cupsEnumDests` functions no longer filter out local | |
286 | print services like IPP USB devices (Issue #5206) | |
287 | - The `cupsCopyDest` function now correctly copies the `is_default` value | |
288 | (Issue #5208) | |
289 | - Printing to old CUPS servers has been fixed (Issue #5211) | |
290 | - The `ppdInstallableConflict` tested too many constraints (Issue #5213) | |
291 | - All HTTP field values can now be longer than `HTTP_MAX_VALUE` bytes | |
292 | (Issue #5216) | |
293 | - Added a USB quirk rule for Canon MP280 series printers (Issue #5221) | |
294 | - The `cupsRasterWritePixels` function did not correctly swap bytes for some | |
295 | formats (Issue #5225) | |
296 | - Fixed an issue with mapping finishing options (rdar://34250727) | |
297 | - The `ppdLocalizeIPPReason` function incorrectly returned a localized version | |
298 | of "none" (rdar://36566269) | |
299 | - The scheduler did not add ".local" to the default DNS-SD host name when | |
300 | needed. | |
301 | ||
302 | ||
303 | Changes in CUPS v2.3b1 | |
304 | ---------------------- | |
305 | ||
306 | - CUPS is now provided under the Apache License, Version 2.0. | |
307 | - Documentation updates (Issue #4580, Issue #5177, Issue #5192) | |
308 | - The `cupsCopyDestConflicts` function now handles collection attribute | |
309 | ("media-col", "finishings-col", etc.) constraints (Issue #4096) | |
310 | - The `lpoptions` command incorrectly saved default options (Issue #4717) | |
311 | - The `lpstat` command now reports when new jobs are being held (Issue #4761) | |
312 | - The `ippfind` command now supports finding printers whose name starts with an | |
313 | underscore (Issue #4833) | |
314 | - The CUPS library now supports the latest HTTP Digest authentication | |
315 | specification including support for SHA-256 (Issue #4862) | |
316 | - The scheduler now supports the "printer-id" attribute (Issue #4868) | |
317 | - No longer support backslash, question mark, or quotes in printer names | |
318 | (Issue #4966) | |
319 | - The scheduler no longer logs pages as they are printed, instead just logging | |
320 | a total of the pages printed at job completion (Issue #4991) | |
321 | - Dropped RSS subscription management from the web interface (Issue #5012) | |
322 | - Bonjour printer sharing now uses the DNS-SD hostname (or ServerName value if | |
323 | none is defined) when registering shared printers on the network (Issue #5071) | |
324 | - The `ipptool` command now supports writing `ippserver` attributes files | |
325 | (Issue #5093) | |
326 | - The `lp` and `lpr` commands now provide better error messages when the default | |
327 | printer cannot be found (Issue #5096) | |
328 | - The `lpadmin` command now provides a better error message when an unsupported | |
329 | System V interface script is used (Issue #5111) | |
330 | - The scheduler did not write out dirty configuration and state files if there | |
331 | were open client connections (Issue #5118) | |
332 | - The `SSLOptions` directive now supports `MinTLS` and `MaxTLS` options to | |
333 | control the minimum and maximum TLS versions that will be allowed, | |
334 | respectively (Issue #5119) | |
335 | - Dropped hard-coded CGI scripting language support (Issue #5124) | |
336 | - The `cupsEnumDests` function did not include options from the lpoptions | |
337 | files (Issue #5144) | |
338 | - Fixed the `ippserver` sample code when threading is disabled or unavailable | |
339 | (Issue #5154) | |
340 | - Added label markup to checkbox and radio button controls in the web interface | |
341 | templates (Issue #5161) | |
342 | - Fixed group validation on OpenBSD (Issue #5166) | |
343 | - Improved IPP Everywhere media support, including a new | |
344 | `cupsAddDestMediaOptions` function (Issue #5167) | |
345 | - IPP Everywhere PPDs now include localizations of printer-specific media types, | |
346 | when available (Issue #5168) | |
347 | - The cups-driverd program incorrectly stopped scanning PPDs as soon as a loop | |
348 | was seen (Issue #5170) | |
349 | - IPP Everywhere PPDs now support IPP job presets (Issue #5179) | |
350 | - IPP Everywhere PPDs now support finishing templates (Issue #5180) | |
351 | - Fixed a journald support bug in the scheduler (Issue #5181) | |
352 | - Fixed PAM module detection and added support for the common PAM definitions | |
353 | (Issue #5185) | |
354 | - The scheduler now substitutes default values for invalid job attributes when | |
355 | running in "relaxed conformance" mode (Issue #5186) | |
356 | - The scheduler did not work with older versions of uClibc (Issue #5188) | |
357 | - The scheduler now generates a strings file for localizing PPD options | |
358 | (Issue #5194) |