Created at 21:00 Sep 16, 2005 by mike, last modified at 21:00 Sep 16, 2005
A new weekly snapshot of CUPS 1.2svn (r4658) is now available on the download page:
http://www.cups.org/software.php
This snapshot contains pre-release software and should not be used on production systems.
Commit Log:
------------------------------------------------------------------------ r4658 | mike | 2005-09-16 23:48:43 -0400 (Fri, 16 Sep 2005) | 30 lines Added new cupsBackchannelRead() and cupsBackchannelWrite() functions, as well as backchannel support to the parallel, serial, socket, and USB backends (STR #1252) The parallel and USB backends now treat a "no space available" error as an out-of-paper condition (STR #1225) backend/ipp.c: - report_printer_state(): Cleanup printer status handling. backend/parallel.c: - main(): Add backchannel support, and check for ENOSPC error. backend/serial.c: - main(): Add backchannel support. backend/socket.c: - main(): Add backchannel support. backend/usb-unix.c: - print_device(): Add backchannel support, and check for ENOSPC error. cups/backchannel.c: - Add cupsBackchannelRead() and cupsBackchannelWrite() functions. cups/cups.h: - Add cupsBackchannelRead() and cupsBackchannelWrite() functions. ------------------------------------------------------------------------ r4657 | mike | 2005-09-16 17:50:48 -0400 (Fri, 16 Sep 2005) | 4 lines The "lpc" command now supports the "status all" command (STR #1004) ------------------------------------------------------------------------ r4656 | mike | 2005-09-16 17:46:06 -0400 (Fri, 16 Sep 2005) | 9 lines Add a workaround for Linux's buggy getaddrinfo() function. cups/http-addr.c: - httpGetHostByName(): Limit AF_INET addresses to 4 bytes, even if getaddrinfo() says the address length is 16 bytes. cups/testhttp.c: - main(): Add address function tests. ------------------------------------------------------------------------ r4655 | mike | 2005-09-16 17:11:16 -0400 (Fri, 16 Sep 2005) | 2 lines Allow IPv4 connections to IPv6 loopback and wildcard addresses. ------------------------------------------------------------------------ r4654 | mike | 2005-09-16 16:51:20 -0400 (Fri, 16 Sep 2005) | 2 lines OSX compile fixes. ------------------------------------------------------------------------ r4653 | mike | 2005-09-16 16:13:58 -0400 (Fri, 16 Sep 2005) | 70 lines Fix up IPv6 support, and remove remaining dirent checks. backend/lpd.c: - lpd_queue(): Use http_addr_t, httpAddrLoad(), and loop through addresses. backend/socket.c: - main(): Use http_addr_t, httpAddrLoad(), and loop through addresses. config.h.in: - Add HAVE_GETADDRINFO. - Replace HAVE_RRESVPORT with HAVE_RRESVPORT_AF. - Remove dirent defines. config-scripts/cups-common.m4: - Remove AC_DIRENT. config-scripts/cups-network.m4: - Add check for getaddrinfo. - Replace check for rresvport with check for rresvport_af. cups/http.c: - httpConnect(): Change "encrypt" to "encryption". - httpConnectEncrypt(): Change "encrypt" to "encryption". cups/http.h: - httpConnectEncrypt(): Change "encrypt" to "encryption". cups/http-addr.c: - httpAddrLocalhost(): Treat unspecified IPv6 address as local. - httpAddrString(): Change IPv6 address format to [x:x:x:x]. - httpAddrGetHostByName(): Support [x:x:x:x] format for IPv6 addresses and use getaddrinfo() if available. cups/http-support.c: - httpSeparate(): Change method to scheme. - httpSeparate2(): Change method to scheme, methodlen to schemelen, support IPv6 addresses using the [x:x:x:x] format, and decode all resources for the shortcut forms. pdftops/gfile.h: - Remove DIRENT checks. scheduler/auth.c: - CheckAuth(): Make IPv6 variables conditional. - cupsdIsAuthorized(): Load IPv4 address using 0:0:0 prefix. scheduler/client.c: - AcceptClient(): Only do lookup after checking localhost and server address. scheduler/conf.c: - get_address(): Support [x:x:x:x] format for IPv6 addresses, and load IPv4 addresses using 0:0:0 prefix. - get_addr_and_mask(): Support [x:x:x:x] format for IPv6 addresses, and load IPv4 addresses using 0:0:0 prefix. - read_configuration(): Add experimental code to double up IPv6 + IPv4 for wildcard address (commented, since it isn't needed for Linux, but we need to test other OS's...) scheduler/listen.c: - StartListening(): Automatically try binding IPv4 versions of IPv6 loopback and "any" addresses, in case the local system does not have IPv6 enabled at run time. ------------------------------------------------------------------------ r4652 | mike | 2005-09-16 10:44:00 -0400 (Fri, 16 Sep 2005) | 12 lines ippReadIO() did not read collections properly (STR #1249) cups/ipp.c: - ippReadIO(): Decrement attr->num_values when handling an IPP_TAG_MEMBERNAME attribute, since collection members are encoded differently than regular attributes. cups/testipp.c: - main(): Add more tests to confirm that attributes are read correctly, and separate file tests from memory tests. ------------------------------------------------------------------------ r4651 | mike | 2005-09-15 20:13:03 -0400 (Thu, 15 Sep 2005) | 4 lines The "make test" script now creates the test files in "/tmp/cups-$USER" instead of "/tmp/$USER" (STR #981) ------------------------------------------------------------------------ r4650 | mike | 2005-09-15 16:30:42 -0400 (Thu, 15 Sep 2005) | 5 lines All backends now abort on error when printing a job to a class - this allows the next printer in the class to print the job (STR #1084) ------------------------------------------------------------------------ r4649 | mike | 2005-09-15 16:16:59 -0400 (Thu, 15 Sep 2005) | 5 lines The scheduler now verifies that a printer supports Letter or A4 media sizes before setting them as the initial default (STR #1250) ------------------------------------------------------------------------ r4648 | mike | 2005-09-15 15:31:32 -0400 (Thu, 15 Sep 2005) | 4 lines The cupstestppd program now flags bad Resolution options (STR #1269) ------------------------------------------------------------------------ r4647 | mike | 2005-09-15 15:15:32 -0400 (Thu, 15 Sep 2005) | 4 lines The USB backend now retries printing when the printer is disconnected or turned off (STR #1267) ------------------------------------------------------------------------ r4646 | mike | 2005-09-15 15:10:34 -0400 (Thu, 15 Sep 2005) | 5 lines Added new httpGetHostname() function to CUPS API, and use it instead of gethostname() so that the web interface will work correctly on systems whose hostname is not the FQDN (STR #1266) ------------------------------------------------------------------------ r4645 | mike | 2005-09-15 14:56:05 -0400 (Thu, 15 Sep 2005) | 4 lines The scheduler now stops printers if the backend for the queue is missing on startup (STR #1265) ------------------------------------------------------------------------ r4644 | mike | 2005-09-15 14:43:06 -0400 (Thu, 15 Sep 2005) | 6 lines The configure script now supports "--disable-library" to disable particular image file format support libraries, even if they are available on the build system (STR #1248) Also fix spelling error for "Renew-Subscription" operation. ------------------------------------------------------------------------ r4643 | mike | 2005-09-15 14:09:46 -0400 (Thu, 15 Sep 2005) | 2 lines Fix address/count netmask problem in 1.2 (STR #1257) ------------------------------------------------------------------------ r4642 | mike | 2005-09-15 13:27:19 -0400 (Thu, 15 Sep 2005) | 4 lines The IPP backend did not always report on the total number of pages that were printed (STR #1251) ------------------------------------------------------------------------ r4641 | mike | 2005-09-15 13:23:36 -0400 (Thu, 15 Sep 2005) | 4 lines The lpstat program could display garbage date and time values for locales whose date format exceeded 31 characters (STR #1263) ------------------------------------------------------------------------ r4640 | mike | 2005-09-15 13:20:24 -0400 (Thu, 15 Sep 2005) | 4 lines The cupstestppd program would segfault when testing certain broken PPD files (STR #1268) ------------------------------------------------------------------------ r4639 | mike | 2005-09-15 12:01:32 -0400 (Thu, 15 Sep 2005) | 16 lines Fix inefficient class management issues. scheduler/classes.c: - AddPrinterToClass(): Don't call SetPrinterAttrs(), as it is called elsewhere as needed. scheduler/dirsvc.c: - ProcessBrowseData(): Log printer/class renames, send the appropriate events (delete old, add new), and track implicit class updates so that we don't call SetPrinterAttrs() more than once for the class. scheduler/printers.c: - SetPrinterAttrs(): Only add raw filter for real printers - classes and remote printers just need the "raw" flag set on the queue. ------------------------------------------------------------------------ r4638 | mike | 2005-09-15 10:13:19 -0400 (Thu, 15 Sep 2005) | 21 lines Change CUPS_PRINTER_SHARED to CUPS_PRINTER_NOT_SHARED so that we are still compatible with older CUPS servers. Also fix some logic problems with the browse checks. cups/cups.h: - CUPS_PRINTER_SHARED -> CUPS_PRINTER_NOT_SHARED. scheduler/cups-polld.c: - poll_server(): Check for CUPS_PRINTER_NOT_SHARED set to 0. scheduler/dirsvc.c: - UpdateCUPSBrowse(): Use the BrowseOrder setting to determine the default allowed/denied setting, and check both the hostname and port when determining whether to ignore the browse packet (this needs further updating to just use the Listen hosts and ports) scheduler/printers.c: - SetPrinterAttrs(): Invert handling for CUPS_PRINTER_NOT_SHARED (set when printer-is-shared is false) ------------------------------------------------------------------------ r4637 | mike | 2005-09-14 15:26:44 -0400 (Wed, 14 Sep 2005) | 4 lines Add httpGetDateString2() API to replace httpGetDateString(). The new API accepts a string buffer pointer and length instead of returning a value from static storage. ------------------------------------------------------------------------ r4636 | mike | 2005-09-14 15:21:51 -0400 (Wed, 14 Sep 2005) | 16 lines Rewrite httpGetDateTime() to not use mktime(), since that function uses the current timezone setting instead of UTC. cups/http.c: - Rename days[] and months[] to http_days[] and http_months[] to avoid namespace issues. - httpGetDateString(): Use new http_days[] and http_months[]. - httpGetDateTime(): Convert string to UTC using some relatively simple math instead of mktime(). cups/testhttp.c: - main(): Add tests for httpGetDateString() and httpGetDateTime() to verify that the new implementation works. ------------------------------------------------------------------------ r4635 | mike | 2005-09-14 10:50:49 -0400 (Wed, 14 Sep 2005) | 39 lines Drop CUPS-Add-Device and CUPS-Delete-Device, and clean up bad operation name code. cups/ipp.h: - Remove CUPS_ADD_DEVICE and CUPS_DELETE_DEVICE enumerations. cups/ipp-support.c: - Remove CUPS-Add-Device and CUPS-Delete-Device operation strings. - ippOpString(): Last CUPS operation is CUPS_MOVE_JOB now. scheduler/auth.c: - AddName(), AllowHost(), AllowIP(), DenyHost(), DenyIP(): New debug2 log message. - AllowIP(), DenyIP(): Copy all of address and netmask, not just the sizeof(pointer)... - cupsdIsAuthorized(): Cleanup and add debug2 log messages with constant names to simplify debugging. - cupsdIsAuthorized(): Don't special-case "no allow/deny lines" configuration - just use Order directive to allow/deny by default. - cupsdIsAuthorized(): Use DefaultAuthType when no AuthType is specified for a location. scheduler/auth.h: - Add DefaultAuthType (again) scheduler/client.c: - SendHeader(): Use DefaultAuthType when best authentication type is not available or undefined. scheduler/conf.c: - ReadConfiguration(): Set DefaultAuthType, remove CUPS_ADD_DEVICE and CUPS_DELETE_DEVICE from default policy. - read_configuration(): Add DefaultAuthType parsing code. scheduler/policy.c: - cupsdFindPolicyOp(): Add debug2 log messages. ------------------------------------------------------------------------ r4634 | mike | 2005-09-14 08:30:12 -0400 (Wed, 14 Sep 2005) | 2 lines Check for "All" operation in policy Limit separately. ------------------------------------------------------------------------ r4633 | mike | 2005-09-13 22:04:15 -0400 (Tue, 13 Sep 2005) | 14 lines Fix config files with leading spaces, and do testing for new auth/policy stuff. cups/file.c: - cupsFileGetConf(): Support leading whitespace on a line. scheduler/policy.c: - cupsdAddPolicyOp(): Fix AuthType inheritance. scheduler/auth.c: - cupsdIsAuthorized(): Add more debug stuff, and handle optional authentication for IPP operations. ------------------------------------------------------------------------ r4632 | mike | 2005-09-13 20:31:14 -0400 (Tue, 13 Sep 2005) | 2 lines Fix test suite to work with new policy stuff. ------------------------------------------------------------------------ r4631 | mike | 2005-09-13 20:12:05 -0400 (Tue, 13 Sep 2005) | 2 lines Finish policy update (now compiles... :) ------------------------------------------------------------------------ r4630 | mike | 2005-09-13 17:06:17 -0400 (Tue, 13 Sep 2005) | 3 lines Save work on upgraded policy stuff (warning, integration is not yet completed and will not compile...) ------------------------------------------------------------------------Download · Home Page · Listing