CUPS 1.2svn Weekly Snapshot, r5083

Created at 21:01 Feb 05, 2006 by mike, last modified at 21:01 Feb 05, 2006

A new weekly snapshot of CUPS 1.2svn (r5083) 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:

------------------------------------------------------------------------
r5083 | mike | 2006-02-05 21:57:43 -0500 (Sun, 05 Feb 2006) | 13 lines

Update debug2 log messages to use function name prefix and debug
and higher to not use function names.

Add printer-specific document-format-supported attributes.

scheduler/printers.c:
    - cupsdAddPrinterFilter(): Renamed to static add_printer_filter().
    - cupsdCreateCommonData(): Remove document-format-supported.
    - cupsdSetPrinterAttrs(): Call add_printer_formats() for printer-
      specific formats.
    - add_printer_formats(): Added.


------------------------------------------------------------------------
r5082 | mike | 2006-02-05 16:58:58 -0500 (Sun, 05 Feb 2006) | 5 lines

Stick with mbr_uid_to_uuid() and mbr_gid_to_uuid() instead of name
versions
which are not always available.

Fix OSX compile problems with launchd code.

------------------------------------------------------------------------
r5081 | mike | 2006-02-05 14:24:01 -0500 (Sun, 05 Feb 2006) | 5 lines

scheduler/auth.c:
    - cupsdCheckGroup(): Use membership APIs to check group membership
      on MacOS X.


------------------------------------------------------------------------
r5080 | mike | 2006-02-05 13:28:27 -0500 (Sun, 05 Feb 2006) | 6 lines

scheduler/cert.c:
    - cupsdAddCert():
    - cupsdInitCerts():



------------------------------------------------------------------------
r5079 | mike | 2006-02-05 10:03:02 -0500 (Sun, 05 Feb 2006) | 2 lines

Do chgrp separate from install to avoid user-mode make install failures.

------------------------------------------------------------------------
r5078 | mike | 2006-02-04 22:36:35 -0500 (Sat, 04 Feb 2006) | 2 lines

ACL support for Linux (and possibly Solaris/*BSD)

------------------------------------------------------------------------
r5077 | mike | 2006-02-04 20:33:41 -0500 (Sat, 04 Feb 2006) | 4 lines

Update headers to include link to favicon.ico.

Add "CUPS" in front of version number in header.tmpl.

------------------------------------------------------------------------
r5076 | mike | 2006-02-04 20:02:52 -0500 (Sat, 04 Feb 2006) | 2 lines

Fix keyword substitution in spec file.

------------------------------------------------------------------------
r5075 | mike | 2006-02-04 20:00:29 -0500 (Sat, 04 Feb 2006) | 7 lines

Update configure script to generate system groups.

Update scheduler conf loading code to use default browse
protocols and system groups from configure script.

Fix some more bugs in the RPM spec file.

------------------------------------------------------------------------
r5074 | mike | 2006-02-04 12:47:21 -0500 (Sat, 04 Feb 2006) | 4 lines

"Satisfy any" now interacts with "Encryption" as expected: if connecting
from an allowed address, the encryption requirement will not be enforced.


------------------------------------------------------------------------
r5073 | mike | 2006-02-04 12:39:51 -0500 (Sat, 04 Feb 2006) | 5 lines

Messages from filters without a prefix are no displayed as errors, not
debug.

Don't put debug/debug2 messages in the printer-state-message.

------------------------------------------------------------------------
r5072 | mike | 2006-02-04 10:57:39 -0500 (Sat, 04 Feb 2006) | 2 lines

One more time, fix RPM upgrades...

------------------------------------------------------------------------
r5071 | mike | 2006-02-04 10:37:33 -0500 (Sat, 04 Feb 2006) | 2 lines

Still more fixing of RPM upgrades...

------------------------------------------------------------------------
r5070 | mike | 2006-02-04 10:06:40 -0500 (Sat, 04 Feb 2006) | 3 lines

Tweak RPM spec file template to better handle upgrades and to mark
/usr/share/doc/cups as a documentation directory.

------------------------------------------------------------------------
r5069 | mike | 2006-02-04 00:24:35 -0500 (Sat, 04 Feb 2006) | 2 lines

Use cupsArray for Clients and Listeners...

------------------------------------------------------------------------
r5068 | mike | 2006-02-03 22:15:38 -0500 (Fri, 03 Feb 2006) | 4 lines

Use cupsArray for Locations, and allocate location string instead of
using array.


------------------------------------------------------------------------
r5067 | mike | 2006-02-03 12:20:45 -0500 (Fri, 03 Feb 2006) | 3 lines

Add FINAL_CONTENT_TYPE environment variable to filter/backend interface
so the filter and backend can know the destination file type as needed.

------------------------------------------------------------------------
r5066 | mike | 2006-02-03 12:03:11 -0500 (Fri, 03 Feb 2006) | 2 lines

Output CTRL-D at the end of a job if there is no JCL stuff in the PPD.

------------------------------------------------------------------------
r5065 | mike | 2006-02-03 11:55:30 -0500 (Fri, 03 Feb 2006) | 2 lines

Always set directory permissions when creating.

------------------------------------------------------------------------
r5064 | mike | 2006-02-03 11:51:05 -0500 (Fri, 03 Feb 2006) | 13 lines

Pass original filename in document-name attribute, and use it as a further
hint when auto-typing.

cups/util.c:
    - cupsPrintFiles2(): Add document-name attribute to Print-Job
      or Send-Document request.

scheduler/ipp.c:
    - print_job(): Pass document-name value as filename to
      mimeFileType().
    - send_document(): Pass document-name value as filename to
      mimeFileType().

------------------------------------------------------------------------
r5063 | mike | 2006-02-03 11:44:00 -0500 (Fri, 03 Feb 2006) | 2 lines

Clear printer-state-reasons after job completes successfully.

------------------------------------------------------------------------
r5062 | mike | 2006-02-03 11:36:24 -0500 (Fri, 03 Feb 2006) | 2 lines

Allocate banner filename instead of using fixed size buffer.

------------------------------------------------------------------------
r5061 | mike | 2006-02-03 11:32:18 -0500 (Fri, 03 Feb 2006) | 3 lines

Drop "max_depth" argument to mimeFilter(), and implement via separate
helper function which maintains a linked list of source types instead.

------------------------------------------------------------------------
r5060 | mike | 2006-02-02 22:54:39 -0500 (Thu, 02 Feb 2006) | 2 lines

Fix mime_type_t structure definition...

------------------------------------------------------------------------
r5059 | mike | 2006-02-02 18:17:16 -0500 (Thu, 02 Feb 2006) | 2 lines

Set printer URI when loading remote printer cache.

------------------------------------------------------------------------
r5058 | mike | 2006-02-02 16:58:45 -0500 (Thu, 02 Feb 2006) | 2 lines

Reduce MIME_MAX_BUFFER to 4k.

------------------------------------------------------------------------
r5057 | mike | 2006-02-02 15:38:29 -0500 (Thu, 02 Feb 2006) | 6 lines

Add "executable" argument to cupsFileFind(), to only look for executable
files.

Add filter cache to mimeLoad/Merge().


------------------------------------------------------------------------
r5056 | mike | 2006-02-02 14:46:32 -0500 (Thu, 02 Feb 2006) | 3 lines

Only include ServiceIPC key as needed...


------------------------------------------------------------------------
r5055 | mike | 2006-02-02 13:25:38 -0500 (Thu, 02 Feb 2006) | 4 lines

Add missing SAMBA web interface templates.

Fix reference to the "exported" template.

------------------------------------------------------------------------
r5054 | mike | 2006-02-02 13:16:27 -0500 (Thu, 02 Feb 2006) | 2 lines

Add export-samba.gif button.

------------------------------------------------------------------------
r5053 | mike | 2006-02-02 13:14:38 -0500 (Thu, 02 Feb 2006) | 3 lines

Fix permission fixup of domain sockets and don't remove domain sockets
when using launchd.

------------------------------------------------------------------------
r5052 | mike | 2006-02-02 11:21:13 -0500 (Thu, 02 Feb 2006) | 2 lines

Cleanup wrapping, comments.

------------------------------------------------------------------------
r5051 | mike | 2006-02-02 11:13:16 -0500 (Thu, 02 Feb 2006) | 8 lines

Add filename argument to mimeFileType() so that we can pass in the
"original" filename as well as the on-disk pathname - future MIME type
matching on document-name attribute.

Also use shared file buffer structure for mimeFileType() - that yields
a 3-fold performance improvement in testmime.


------------------------------------------------------------------------
r5050 | mike | 2006-02-02 10:55:08 -0500 (Thu, 02 Feb 2006) | 4 lines

Add performance testing to MIME test program - basically type all of the
source files in the CUPS tree and figure out how to convert to
application/vnd.cups-postscript.

------------------------------------------------------------------------
r5049 | mike | 2006-02-02 09:50:57 -0500 (Thu, 02 Feb 2006) | 19 lines

MacOS X 10.2.x compile fixes.

cups/http-private.h:
    - socklen_t is not defined on 10.2.x.

scheduler/client.c:
    - errSSLBadConfiguration not defined on 10.2.x, use errSSLBadCert
      instead.

scheduler/cups-lpd.c:
    - Include <cups/http-private.h> to get socklen_t definition.

scheduler/process.c:
    - Include <libgen.h> on 10.2 and 10.3, and fix call to readlink().

scheduler/sysman.c:
    - Power-on message not defined on 10.2.x.


------------------------------------------------------------------------
r5048 | mike | 2006-02-02 07:52:28 -0500 (Thu, 02 Feb 2006) | 2 lines

Add socket backend (missed it in the last change)

------------------------------------------------------------------------
r5047 | mike | 2006-02-02 00:14:15 -0500 (Thu, 02 Feb 2006) | 34 lines

Add string pool code to optimize memory used for IPP attributes - seems
to reduce memory usage about 75%...

cups/globals.c:
    - Add call to _cups_sp_flush().

cups/globals.h:
    - Add stringpool array to _cups_globals_t.

cups/ipp.c:
    - Use _cups_sp_alloc() and _cups_sp_free() for name and text
      strings.

cups/string.c:
    - _cups_sp_alloc(), _cups_sp_flush(), _cups_sp_free(),
      _cups_sp_statistics(): Added.

cups/string.h:
    - _cups_sp_alloc(), _cups_sp_flush(), _cups_sp_free(),
      _cups_sp_statistics(): Added.

scheduler/ipp.c:
    - Use _cups_sp_alloc() and _cups_sp_free() for name and text
      strings.

scheduler/main.c:
    - Add debug logging of string pool usage (+ malloc usage, if
      we have a mallinfo() function...)

scheduler/printers.c:
    - Use _cups_sp_alloc() and _cups_sp_free() for name and text
      strings.


------------------------------------------------------------------------
r5046 | mike | 2006-02-01 17:11:58 -0500 (Wed, 01 Feb 2006) | 27 lines

Add CFProcessPath symlink handling for pre-10.4 MacOS X systems.

scheduler/client.c:
    - pipe_command(): Use MAX_ENV for envp array size.

scheduler/cupsd.h
    - Add MAX_ENV constant.

scheduler/env.c
    - Use MAX_ENV for common_env array size.
    - cupsdInitEnv(): Only add <CFProcessPath> string on MacOS X
      10.4 and higher.

scheduler/ipp.c
    - copy_model(): Use MAX_ENV for envp array size.

scheduler/job.c
    - cupsdStartJob(): Use MAX_ENV for envp array size.

scheduler/process.c
    - cupsdStartProcess(): Add CFProcessPath environment variable
      on MacOS X 10.3 and earlier.

scheduler/subscriptions.c
    - cupsd_start_notifier(): Use MAX_ENV for envp array size.


------------------------------------------------------------------------
r5045 | mike | 2006-02-01 16:48:01 -0500 (Wed, 01 Feb 2006) | 4 lines

Simplify the MacOS X install/package stuff by not autodetecting the
launchd stuff at install time.  Instead, rely on the build system info
since we'll need separate packages for 10.2/10.3 and 10.4 anyways.

------------------------------------------------------------------------
r5044 | mike | 2006-02-01 16:35:30 -0500 (Wed, 01 Feb 2006) | 40 lines

Update backend interface so that backends with mode 700 are executed as
root, all other backends are executed as the unprivileged User account.

Makedefs.in:
    - Don't strip executables with INSTALL_BIN command.

backend/Makefile
    - Install lpd backend mode 700, all others mode 755.

cups/dir.c
    - cupsDirRead(): Use lstat() instead of stat(), since we care
      about the permissions of the destination file, not the link
      itself.

packaging/cups.spec.in
    - Install the lpd backend mode 700.

scheduler/cups-deviced.c
    - main(): Add command-line argument for user ID and check the
      permissions of the backends before executing them (mode 700
      = root, anything else is the unprivileged user ID from the
      command-line)
    - main(): Return IPP "bad request" error if we get
      command-line errors.

scheduler/ipp.c
    - copy_model(): Free the select() buffer (memory leak)
    - get_devices(): Add the User value to the command-line
      passed to SendCommand().

scheduler/job.c
    - cupsdStartJob(): Only run backends that are not readable by
      ordinary users as root.

scheduler/process.c
    - cupsdStartProcess(): Call setgid() for non-root processes
      in addition to setgroups().



------------------------------------------------------------------------
r5043 | mike | 2006-02-01 13:55:16 -0500 (Wed, 01 Feb 2006) | 25 lines

Use cupsArray API to store network interface list, and allocate the
hostname
to save some memory.

scheduler/auth.c:
    - cupsdCheckAuth(): Use cupsArrayFirst/Next() to loop through
      interfaces.

scheduler/dirsvc.c:
    - cupsdSendCUPSBrowse(): Use cupsArrayFirst/Next() to loop
      through interfaces.
    - cupsdUpdateCUPSBrowse(): Use cupsArrayFirst/Next() to loop
      through interfaces.

scheduler/network.c:
    - Make local functions static.
    - compare_netif(): Added.
    - cupsdNetIFFree(): Use cupsArray functions for interfaces.
    - cupsdNetIFUpdate(): Use cupsArray functions for interfaces, allocate
      the cupsd_netif_t structure dynamically for the length of the
hostname.

scheduler/network.h:
    - Remove cupsdNetIFFree() from global functions.
    - Move hostname to end of cupsd_netif_t structure so it can
      be allocated.

------------------------------------------------------------------------
r5042 | mike | 2006-02-01 13:17:34 -0500 (Wed, 01 Feb 2006) | 2 lines

Use constants from launch.h whenever possible.

------------------------------------------------------------------------
r5041 | mike | 2006-02-01 11:54:50 -0500 (Wed, 01 Feb 2006) | 9 lines

Only use domain socket if we can access it, and clean up conditional code.

cups/usersys.c:
    - cupsServer(): Only use domain socket if it is rwx for others.

scheduler/listen.c:
    - cupsdStartListening(): Fix indentation of preprocessor
      directives (# must appear in column 0/1)

------------------------------------------------------------------------
r5040 | mike | 2006-02-01 11:41:17 -0500 (Wed, 01 Feb 2006) | 2 lines

Fix compile error on OSX.

------------------------------------------------------------------------
r5039 | mike | 2006-02-01 11:29:57 -0500 (Wed, 01 Feb 2006) | 20 lines

Add support for Apple recoverable:/recovered: messages and
com.apple.print.recoverable-message attribute.

scheduler/ipp.c:
    - copy_printer_attrs(): Copy com.apple.print.recoverable-message
      attribute as needed.

scheduler/job.c
    - cupsdUpdateJob(): Handle recoverable: and recovered: messages.

scheduler/printers.c
    - cupsdAddPrinterHistory(): Add com.apple.print.recoverable-message
      to history.
    - cupsdDeletePrinter(): Clear recoverable string as needed.

scheduler/printers.h
    - Add recoverable string to cupsd_printer_t structure.



------------------------------------------------------------------------
r5038 | mike | 2006-02-01 11:03:02 -0500 (Wed, 01 Feb 2006) | 23 lines

printer-state-message and other job handling updates.

doc/cups.css:
    - Add SPAN.message style for printer-state-message.

scheduler/job.c:
    - cupsdFinishJob(): Stop jobs when there are filter errors
      instead of cancelling them, clear the printer-state-message
      when a job completes successfully.
    - cupsdUpdateJob(): Copy normal messages to
      printer-state-message, and update the printer state history
      for state messages.

scheduler/statbuf.c:
    - cupsdStatBufUpdate(): Log ATTR:, PAGE:, and STATE: messages
      at log level debug2.

templates/classes.tmpl:
templates/printers.tmpl:
    - Move printer-state-message to the title area of the
      printer/class template so it is more prominent.


------------------------------------------------------------------------
r5037 | mike | 2006-02-01 10:19:59 -0500 (Wed, 01 Feb 2006) | 3 lines

Add "-v" option and support for multiple URI + test file combos, so that
quick testing is even easier.

------------------------------------------------------------------------
r5036 | mike | 2006-02-01 10:00:48 -0500 (Wed, 01 Feb 2006) | 2 lines

Add revision number to snapshots.

------------------------------------------------------------------------
r5035 | mike | 2006-02-01 09:58:46 -0500 (Wed, 01 Feb 2006) | 3 lines

Fix segfault in http_copy_decode() - wasn't checking for a NULL term
character.

------------------------------------------------------------------------
r5034 | mike | 2006-01-31 23:44:42 -0500 (Tue, 31 Jan 2006) | 3 lines

Update OSX packages to include both the launchd and non-launchd startup
scripts, with auto-detect at startup.

------------------------------------------------------------------------
r5033 | mike | 2006-01-30 23:41:01 -0500 (Mon, 30 Jan 2006) | 2 lines

Update dependencies.

------------------------------------------------------------------------
r5032 | mike | 2006-01-30 23:05:44 -0500 (Mon, 30 Jan 2006) | 3 lines

Add process name lookup array for better debugging, and log errors in
the printer-state-message attribute.

------------------------------------------------------------------------
r5031 | mike | 2006-01-30 22:05:32 -0500 (Mon, 30 Jan 2006) | 5 lines

Strip double quotes from printer-info, printer-location, and
printer-make-and-model attributes in CUPS browse packets.

Make process functions static to reduce the number of global symbols.

------------------------------------------------------------------------
r5030 | mike | 2006-01-30 21:11:47 -0500 (Mon, 30 Jan 2006) | 3 lines

Only restart a job if the device-uri, port-monitor, printer-state,
ppd-name,
member-uris, or PPD file is changed.

------------------------------------------------------------------------
r5029 | mike | 2006-01-30 20:49:40 -0500 (Mon, 30 Jan 2006) | 5 lines

Always log the most authenticated username.

Move most of the username checks into a new function called
"get_username()".


------------------------------------------------------------------------
r5028 | mike | 2006-01-30 20:16:43 -0500 (Mon, 30 Jan 2006) | 5 lines

Add UseNetworkDefault option and corresponding support code.

Fix printer-type values to dynamically generate the rejecting, not shared,
and default bits.

------------------------------------------------------------------------
r5027 | mike | 2006-01-30 17:12:09 -0500 (Mon, 30 Jan 2006) | 2 lines

Add mkdir when installing launchd workaround script.

------------------------------------------------------------------------
r5026 | mike | 2006-01-30 16:59:02 -0500 (Mon, 30 Jan 2006) | 3 lines

Fix unsigned char comparison to use "& 255" since the (unsigned char)
cast still generates a warning with some compilers.

------------------------------------------------------------------------
r5025 | mike | 2006-01-29 22:49:12 -0500 (Sun, 29 Jan 2006) | 6 lines

Add DBUS support to the scheduler.

Update event list to separate state changes from created, completed, and
stopped, to conform to RFC 3995.  Also add job started event in
cupsdStartJob().

------------------------------------------------------------------------
r5024 | mike | 2006-01-29 09:58:15 -0500 (Sun, 29 Jan 2006) | 2 lines

Add missing file...

------------------------------------------------------------------------
r5023 | mike | 2006-01-29 09:39:44 -0500 (Sun, 29 Jan 2006) | 19 lines

Update default cachedir to be /var/tmp/cups on Darwin.

Add coding enumeration and argument to the new httpAssembleURI,
httpAssembleURIf, and httpSeparateURI functions.

Add new cupsBackendDeviceURI() function to get the proper device
URI from a backend (DEVICE_URI env var or argv[0], whichever is
available first)

Add large file compatible httpRead2() and httpWrite2() functions.

Update the previously undocumented ippReadIO and ipp_iocb_t interfaces
to use large file compatible types.

Update the CUPS PPD spec.

Update the OSX test package script some more: don't update/make all, and
add the chmod stuff to the postflight script.

------------------------------------------------------------------------
r5020 | mike | 2006-01-28 08:36:15 -0500 (Sat, 28 Jan 2006) | 2 lines

Merge launchd branch into trunk.

------------------------------------------------------------------------
r5018 | mike | 2006-01-28 01:06:55 -0500 (Sat, 28 Jan 2006) | 2 lines

Fix misplaced #endif for Apple-specific code...

------------------------------------------------------------------------
Download  ·  Home Page  ·  Listing

Comments

Submit Comment