From f3c17241a42a0845eae2099e6970b5aca9bbd836 Mon Sep 17 00:00:00 2001 From: msweet Date: Mon, 23 Apr 2012 22:44:16 +0000 Subject: [PATCH] Merge changes from CUPS 1.6svn-r10437. git-svn-id: svn+ssh://src.apple.com/svn/cups/easysw/current@3794 a1ca3aef-8c08-0410-bb20-df032aa958be --- CHANGES-1.5.txt | 3 +- CHANGES.txt | 3 +- INSTALL.txt | 6 +- LICENSE.txt | 12 +- README.txt | 4 +- backend/Dependencies | 116 +- backend/Makefile | 6 + backend/dnssd.c | 768 ++++++++---- backend/ipp.c | 55 +- backend/lpd.c | 10 +- backend/runloop.c | 14 +- backend/socket.c | 6 +- backend/usb-darwin.c | 12 +- backend/usb-unix.c | 14 +- berkeley/Dependencies | 53 +- cgi-bin/admin.c | 56 +- cgi-bin/classes.c | 8 +- cgi-bin/ipp-var.c | 2 +- cgi-bin/jobs.c | 4 +- cgi-bin/printers.c | 8 +- config-scripts/cups-common.m4 | 3 +- config-scripts/cups-defaults.m4 | 8 +- config-scripts/cups-directories.m4 | 4 +- config-scripts/cups-gssapi.m4 | 4 +- config-scripts/cups-manpages.m4 | 4 +- config-scripts/cups-pam.m4 | 4 +- config.h.in | 21 +- configure.in | 1 + cups/Dependencies | 430 +++---- cups/adminutil.c | 10 +- cups/api-filter.shtml | 8 +- cups/api-ppd.header | 4 +- cups/api-ppd.shtml | 4 +- cups/array.c | 48 +- cups/attr.c | 6 +- cups/auth.c | 4 +- cups/backchannel.c | 10 +- cups/backend.c | 15 +- cups/conflicts.c | 8 +- cups/cups.h | 42 +- cups/custom.c | 10 +- cups/dest-job.c | 10 +- cups/dest-localization.c | 4 +- cups/dest-options.c | 10 +- cups/dest.c | 24 +- cups/dir.c | 18 +- cups/emit.c | 8 +- cups/encode.c | 2 +- cups/file.c | 56 +- cups/getdevices.c | 4 +- cups/getputfile.c | 10 +- cups/globals.c | 6 + cups/http-addr.c | 16 +- cups/http-addrlist.c | 8 +- cups/http-private.h | 3 +- cups/http-support.c | 489 +++++++- cups/http.c | 40 +- cups/http.h | 20 +- cups/ipp-support.c | 12 +- cups/ipp.c | 92 +- cups/ipp.h | 53 +- cups/localize.c | 12 +- cups/mark.c | 6 +- cups/notify.c | 6 +- cups/options.c | 4 +- cups/page.c | 4 +- cups/ppd.c | 14 +- cups/ppd.h | 60 +- cups/pwg-media.c | 26 +- cups/raster-private.h | 5 +- cups/raster.h | 64 +- cups/request.c | 14 +- cups/sidechannel.c | 10 +- cups/sidechannel.h | 8 +- cups/snmp-private.h | 4 +- cups/snmp.c | 2 +- cups/tempfile.c | 4 +- cups/testpwg.c | 30 +- cups/thread-private.h | 5 +- cups/thread.c | 25 +- cups/usersys.c | 12 +- cups/util.c | 24 +- cups/versioning.h | 6 +- data/media.defs | 2 +- doc/Makefile | 2 +- doc/help/api-array.html | 44 +- doc/help/api-cups.html | 96 +- doc/help/api-filedir.html | 62 +- doc/help/api-filter.html | 32 +- doc/help/api-httpipp.html | 262 ++-- doc/help/api-ppd.html | 90 +- doc/help/api-raster.html | 80 +- doc/help/kerberos.html | 2 +- doc/help/license.html | 11 +- doc/help/man-ipptool.html | 15 +- doc/help/network.html | 10 +- doc/help/postscript-driver.html | 14 +- doc/help/ppd-compiler.html | 2 +- doc/help/raster-driver.html | 14 +- doc/help/ref-classes-conf.html | 11 +- doc/help/ref-client-conf.html | 6 +- doc/help/ref-cupsd-conf.html.in | 46 +- doc/help/ref-ppdcfile.html | 24 +- doc/help/ref-printers-conf.html | 13 +- doc/help/ref-snmp-conf.html | 5 +- doc/help/sharing.html | 107 +- doc/help/spec-cmp.html | 10 +- doc/help/spec-ipp.html | 104 +- doc/help/spec-postscript.html | 4 +- doc/help/spec-ppd.html | 106 +- filter/Dependencies | 44 +- filter/api-raster.shtml | 10 +- filter/commandtops.c | 2 +- filter/error.c | 4 +- filter/gziptoany.c | 4 +- filter/interpret.c | 6 +- filter/postscript-driver.header | 4 +- filter/postscript-driver.shtml | 8 +- filter/ppd-compiler.shtml | 2 +- filter/pstops.c | 2 +- filter/raster-driver.header | 4 +- filter/raster-driver.shtml | 8 +- filter/raster.c | 6 +- filter/rastertoepson.c | 5 +- filter/rastertohp.c | 5 +- filter/rastertolabel.c | 5 +- filter/spec-ppd.shtml | 102 +- locale/Dependencies | 42 +- locale/Makefile | 6 +- locale/cups.pot | 1735 ++++++++++++-------------- locale/cups.strings | 138 +- man/Makefile | 1 + man/backend.man | 156 +-- man/cancel.man | 4 +- man/classes.conf.man | 4 +- man/client.conf.man.in | 4 +- man/cups-config.man | 4 +- man/cups-deviced.man.in | 4 +- man/cups-driverd.man.in | 4 +- man/cups-lpd.man.in | 4 +- man/cups-polld.man | 4 +- man/cups-snmp.conf.man | 63 +- man/cups-snmp.man.in | 59 + man/cupsaccept.man | 4 +- man/cupsaddsmb.man.in | 4 +- man/cupsctl.man | 4 +- man/cupsd.man.in | 4 +- man/cupsenable.man | 4 +- man/cupsfilter.man | 6 +- man/cupstestdsc.man | 4 +- man/cupstestppd.man | 4 +- man/filter.man | 57 +- man/ipptool.man | 17 +- man/lp.man | 4 +- man/lpadmin.man | 4 +- man/lpc.man | 4 +- man/lpinfo.man | 4 +- man/lpmove.man | 4 +- man/lpoptions.man.in | 4 +- man/lppasswd.man | 4 +- man/lpq.man | 4 +- man/lpr.man | 4 +- man/lprm.man | 4 +- man/lpstat.man | 4 +- man/mailto.conf.man | 4 +- man/mime.convs.man | 4 +- man/mime.types.man | 4 +- man/notifier.man | 4 +- man/ppdcfile.man | 4 +- man/ppdhtml.man | 4 +- man/ppdi.man | 4 +- man/ppdmerge.man | 4 +- man/ppdpo.man | 10 +- man/printers.conf.man | 4 +- man/subscriptions.conf.man | 4 +- monitor/Dependencies | 27 +- notifier/Dependencies | 28 +- packaging/InstallationCheck | 10 +- packaging/cups.list.in | 123 +- packaging/cups.spec.in | 17 +- ppdc/Dependencies | 340 +++-- ppdc/ppdc-catalog.cxx | 8 +- ppdc/ppdc.cxx | 7 +- ppdc/ppdpo.cxx | 5 +- ppdc/sample.drv | 11 +- scheduler/Dependencies | 534 ++++---- scheduler/Makefile | 2 - scheduler/avahi.c | 441 ------- scheduler/avahi.h | 69 - scheduler/client.c | 2 +- scheduler/conf.c | 4 +- scheduler/conf.h | 4 +- scheduler/cups-driverd.cxx | 30 +- scheduler/cups-exec.c | 2 +- scheduler/cupsd.h | 28 - scheduler/cupsfilter.c | 135 +- scheduler/dirsvc.c | 1158 ++++++++++------- scheduler/dirsvc.h | 25 +- scheduler/job.c | 13 +- scheduler/main.c | 56 +- scheduler/printers.c | 9 +- scheduler/printers.h | 40 +- scheduler/process.c | 8 +- scheduler/timeout.c | 249 ---- scheduler/util.c | 4 +- systemv/Dependencies | 185 +-- systemv/cupsaddsmb.c | 14 +- systemv/cupsctl.c | 4 +- systemv/cupstestppd.c | 88 +- templates/error.tmpl | 2 +- test/Dependencies | 29 +- test/ipp-1.1.test | 30 + test/ipptool.c | 18 +- test/run-stp-tests.sh | 2 +- vcnet/config.h | 4 +- xcode/CUPS.xcodeproj/project.pbxproj | 301 +---- 216 files changed, 5398 insertions(+), 5535 deletions(-) create mode 100644 man/cups-snmp.man.in delete mode 100644 scheduler/avahi.c delete mode 100644 scheduler/avahi.h delete mode 100644 scheduler/timeout.c diff --git a/CHANGES-1.5.txt b/CHANGES-1.5.txt index 344c5eda2..c8dcb991e 100644 --- a/CHANGES-1.5.txt +++ b/CHANGES-1.5.txt @@ -3,6 +3,7 @@ CHANGES-1.5.txt CHANGES IN CUPS V1.5.3 + - Compiling without threading support failed (STR #4060) - Fixed compile problem with old versions of OpenSSL (STR #4036) - The network backends did not check SNMP supply levels regularly (STR #4040) @@ -37,7 +38,7 @@ CHANGES IN CUPS V1.5.3 for printers (STR #3985) - The IPP backend no longer re-queues print jobs that are too large for the printer/server (STR #3977) - - The RPM spec file did not work (STR #4021) + - The RPM spec file did not work (STR #4021, STR #4057) - Encryption did not work when the server name ended with "." (STR #4011) - The multi-purpose tray is now mapped to the IPP "by-pass-tray" diff --git a/CHANGES.txt b/CHANGES.txt index 658c462ff..33aa961dc 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,9 +1,10 @@ -CHANGES.txt - 1.6b1 - 2012-03-16 +CHANGES.txt - 1.6b1 - 2012-04-17 -------------------------------- CHANGES IN CUPS V1.6b1 - Documentation updates (STR #3927, STR #3980, STR #4010) + - CUPS now supports Bonjour using Avahi (STR #3066) - The PreserveJobFiles and PreserveJobHistory directives now support specification of a time interval (STR #3143) - PPD files can now be archived in (gzip'd) tar files to further reduce diff --git a/INSTALL.txt b/INSTALL.txt index a7b5a5869..dc623d075 100644 --- a/INSTALL.txt +++ b/INSTALL.txt @@ -1,4 +1,4 @@ -INSTALL - CUPS v1.5.0 - 2011-07-25 +INSTALL - CUPS v1.6.0 - 2012-04-23 ---------------------------------- This file describes how to compile and install CUPS from source code. For more @@ -6,7 +6,7 @@ information on CUPS see the file called "README.txt". A complete change log can be found in "CHANGES.txt". **** IF YOU HAVE A NON-POSTSCRIPT PRINTER AND ARE NOT **** -**** RUNNING MAC OS X, YOU WILL ALSO NEED TO INSTALL GPL **** +**** RUNNING OS X, YOU WILL ALSO NEED TO INSTALL GPL **** **** GHOSTSCRIPT WITH THE "cups" DRIVER AFTER YOU INSTALL **** **** CUPS. **** @@ -34,7 +34,7 @@ BEFORE YOU BEGIN PostScript filter needed by non-PostScript printers. You *must* download GPL Ghostscript separately from the CUPS web site if you want to print PostScript files to non-PostScript printers on operating systems other than - Mac OS X. + OS X. COMPILING THE SUBVERSION REPOSITORY CODE diff --git a/LICENSE.txt b/LICENSE.txt index 7d80518a3..75c4a376f 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,6 +1,6 @@ CUPS License Agreement - Copyright 2007-2011 by Apple Inc. + Copyright 2007-2012 by Apple Inc. 1 Infinite Loop Cupertino, CA 95014 USA @@ -68,11 +68,11 @@ the following special exceptions: source code of the Apple OS-Developed Software. b. An Apple Operating System means any operating system - software developed and/or marketed by Apple Computer, - Inc., including but not limited to all existing - releases and versions of Apple's Darwin, Mac OS X, - and Mac OS X Server products and all follow-on - releases and future versions thereof. + software developed and/or marketed by Apple Inc., + including but not limited to all existing releases and + versions of Apple's Darwin, OS X, and OS X Server + products and all follow-on releases and future + versions thereof. c. This exception is only available for Apple OS-Developed Software and does not apply to software diff --git a/README.txt b/README.txt index f278e4dec..944fb67e7 100644 --- a/README.txt +++ b/README.txt @@ -1,4 +1,4 @@ -README - CUPS v1.5.0 - 2011-07-25 +README - CUPS v1.6.0 - 2012-04-23 ---------------------------------- Looking for compile instructions? Read the file "INSTALL.txt" @@ -150,7 +150,7 @@ PRINTING FILES LEGAL STUFF - CUPS is Copyright 2007-2011 by Apple Inc. CUPS and the CUPS logo are + CUPS is Copyright 2007-2012 by Apple Inc. CUPS and the CUPS logo are trademarks of Apple Inc. The MD5 Digest code is Copyright 1999 Aladdin Enterprises. diff --git a/backend/Dependencies b/backend/Dependencies index 4c2047977..eeb231a2e 100644 --- a/backend/Dependencies +++ b/backend/Dependencies @@ -1,72 +1,70 @@ -ipp.o: ipp.c backend-private.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/snmp-private.h \ - ../cups/backend.h ../cups/sidechannel.h ../cups/array-private.h +ipp.o: ipp.c backend-private.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h \ + ../cups/array-private.h lpd.o: lpd.c ../cups/http-private.h ../config.h ../cups/http.h \ ../cups/versioning.h ../cups/array.h ../cups/md5-private.h \ ../cups/ipp-private.h ../cups/ipp.h backend-private.h \ - ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/language.h ../cups/string-private.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h \ - ../cups/sidechannel.h -dnssd.o: dnssd.c backend-private.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/snmp-private.h \ - ../cups/backend.h ../cups/sidechannel.h -snmp.o: snmp.c backend-private.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/snmp-private.h \ - ../cups/backend.h ../cups/sidechannel.h + ../cups/cups-private.h ../cups/string-private.h \ + ../cups/debug-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h +dnssd.o: dnssd.c backend-private.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h +snmp.o: snmp.c backend-private.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h socket.o: socket.c ../cups/http-private.h ../config.h ../cups/http.h \ ../cups/versioning.h ../cups/array.h ../cups/md5-private.h \ ../cups/ipp-private.h ../cups/ipp.h backend-private.h \ - ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/language.h ../cups/string-private.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h \ - ../cups/sidechannel.h + ../cups/cups-private.h ../cups/string-private.h \ + ../cups/debug-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h test1284.o: test1284.c ../cups/string-private.h ../config.h ieee1284.c \ - backend-private.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/snmp-private.h \ - ../cups/backend.h ../cups/sidechannel.h + backend-private.h ../cups/cups-private.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h testbackend.o: testbackend.c ../cups/string-private.h ../config.h \ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \ ../cups/http.h ../cups/array.h ../cups/language.h \ ../cups/sidechannel.h testsupplies.o: testsupplies.c backend-private.h ../cups/cups-private.h \ - ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \ - ../cups/http.h ../cups/array.h ../cups/language.h \ ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/snmp-private.h ../cups/backend.h \ - ../cups/sidechannel.h -usb.o: usb.c backend-private.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/snmp-private.h \ - ../cups/backend.h ../cups/sidechannel.h usb-darwin.c \ - ../cups/file-private.h + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h +usb.o: usb.c backend-private.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/snmp-private.h ../cups/backend.h ../cups/sidechannel.h \ + usb-darwin.c ../cups/file-private.h diff --git a/backend/Makefile b/backend/Makefile index a7e2b99d6..625e337d7 100644 --- a/backend/Makefile +++ b/backend/Makefile @@ -21,6 +21,12 @@ include ../Makedefs # Object files... # +# RBACKENDS are installed mode 0700 so cupsd will run them as root... +# +# UBACKENDS are installed mode 0755 so cupsd will run them as an unprivileged +# user... +# +# See http://www.cups.org/documentation.php/api-filter.html for more info... RBACKENDS = \ ipp \ lpd \ diff --git a/backend/dnssd.c b/backend/dnssd.c index 35c44e30d..2984407df 100644 --- a/backend/dnssd.c +++ b/backend/dnssd.c @@ -15,16 +15,19 @@ * * Contents: * - * main() - Browse for printers. - * browse_callback() - Browse devices. + * main() - Browse for printers. + * browse_callback() - Browse devices. * browse_local_callback() - Browse local devices. - * compare_devices() - Compare two devices. - * exec_backend() - Execute the backend that corresponds to the - * resolved service name. - * get_device() - Create or update a device. - * query_callback() - Process query data. - * sigterm_handler() - Handle termination signals... - * unquote() - Unquote a name string. + * client_callback() - Avahi client callback function. + * compare_devices() - Compare two devices. + * exec_backend() - Execute the backend that corresponds to the + * resolved service name. + * device_type() - Get DNS-SD type enumeration from string. + * get_device() - Create or update a device. + * query_callback() - Process query data. + * find_device() - Find a device from its name and domain. + * sigterm_handler() - Handle termination signals. + * unquote() - Unquote a name string. */ /* @@ -33,7 +36,18 @@ #include "backend-private.h" #include -#include +#ifdef HAVE_DNSSD +# include +#endif /* HAVE_DNSSD */ +#ifdef HAVE_AVAHI +# include +# include +# include +# include +# include +# include +#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX +#endif /* HAVE_AVAHI */ /* @@ -53,7 +67,12 @@ typedef enum typedef struct { - DNSServiceRef ref; /* Service reference for resolve */ +#ifdef HAVE_DNSSD + DNSServiceRef ref; /* Service reference for query */ +#endif /* HAVE_DNSSD */ +#ifdef HAVE_AVAHI + AvahiRecordBrowser *ref; /* Browser for query */ +#endif /* HAVE_AVAHI */ char *name, /* Service name */ *domain, /* Domain name */ *fullName, /* Full name */ @@ -72,12 +91,18 @@ typedef struct static int job_canceled = 0; /* Set to 1 on SIGTERM */ +#ifdef HAVE_AVAHI +static AvahiSimplePoll *simple_poll = NULL; + /* Poll information */ +static int got_data = 0; /* Got data from poll? */ +#endif /* HAVE_AVAHI */ /* * Local functions... */ +#ifdef HAVE_DNSSD static void browse_callback(DNSServiceRef sdRef, DNSServiceFlags flags, uint32_t interfaceIndex, @@ -95,6 +120,22 @@ static void browse_local_callback(DNSServiceRef sdRef, const char *replyDomain, void *context) __attribute__((nonnull(1,5,6,7,8))); +#endif /* HAVE_DNSSD */ +#ifdef HAVE_AVAHI +static void browse_callback(AvahiServiceBrowser *browser, + AvahiIfIndex interface, + AvahiProtocol protocol, + AvahiBrowserEvent event, + const char *serviceName, + const char *regtype, + const char *replyDomain, + AvahiLookupResultFlags flags, + void *context); +static void client_callback(AvahiClient *client, + AvahiClientState state, + void *context); +#endif /* HAVE_AVAHI */ + static int compare_devices(cups_device_t *a, cups_device_t *b); static void exec_backend(char **argv); static cups_device_t *get_device(cups_array_t *devices, @@ -102,6 +143,7 @@ static cups_device_t *get_device(cups_array_t *devices, const char *regtype, const char *replyDomain) __attribute__((nonnull(1,2,3,4))); +#ifdef HAVE_DNSSD static void query_callback(DNSServiceRef sdRef, DNSServiceFlags flags, uint32_t interfaceIndex, @@ -111,6 +153,20 @@ static void query_callback(DNSServiceRef sdRef, const void *rdata, uint32_t ttl, void *context) __attribute__((nonnull(1,5,9,11))); +#elif defined(HAVE_AVAHI) +static int poll_callback(struct pollfd *pollfds, + unsigned int num_pollfds, int timeout, + void *context); +static void query_callback(AvahiRecordBrowser *browser, + AvahiIfIndex interface, + AvahiProtocol protocol, + AvahiBrowserEvent event, + const char *name, uint16_t rrclass, + uint16_t rrtype, const void *rdata, + size_t rdlen, + AvahiLookupResultFlags flags, + void *context); +#endif /* HAVE_DNSSD */ static void sigterm_handler(int sig); static void unquote(char *dst, const char *src, size_t dstsize) __attribute__((nonnull(1,2))); @@ -125,6 +181,13 @@ main(int argc, /* I - Number of command-line args */ char *argv[]) /* I - Command-line arguments */ { const char *name; /* Backend name */ + cups_array_t *devices; /* Device array */ + cups_device_t *device; /* Current device */ + char uriName[1024]; /* Unquoted fullName for URI */ +#ifdef HAVE_DNSSD + int fd; /* Main file descriptor */ + fd_set input; /* Input set for select() */ + struct timeval timeout; /* Timeout for select() */ DNSServiceRef main_ref, /* Main service reference */ fax_ipp_ref, /* IPP fax service reference */ ipp_ref, /* IPP service reference */ @@ -138,12 +201,11 @@ main(int argc, /* I - Number of command-line args */ pdl_datastream_ref, /* AppSocket service reference */ printer_ref, /* LPD service reference */ riousbprint_ref; /* Remote IO service reference */ - int fd; /* Main file descriptor */ - fd_set input; /* Input set for select() */ - struct timeval timeout; /* Timeout for select() */ - cups_array_t *devices; /* Device array */ - cups_device_t *device; /* Current device */ - char uriName[1024]; /* Unquoted fullName for URI */ +#endif /* HAVE_DNSSD */ +#ifdef HAVE_AVAHI + AvahiClient *client; /* Client information */ + int error; /* Error code, if any */ +#endif /* HAVE_AVAHI */ #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET) struct sigaction action; /* Actions for POSIX signals */ #endif /* HAVE_SIGACTION && !HAVE_SIGSET */ @@ -203,6 +265,7 @@ main(int argc, /* I - Number of command-line args */ * Browse for different kinds of printers... */ +#ifdef HAVE_DNSSD if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError) { perror("ERROR: Unable to create service connection"); @@ -263,6 +326,52 @@ main(int argc, /* I - Number of command-line args */ riousbprint_ref = main_ref; DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0, "_riousbprint._tcp", NULL, browse_callback, devices); +#endif /* HAVE_DNSSD */ + +#ifdef HAVE_AVAHI + if ((simple_poll = avahi_simple_poll_new()) == NULL) + { + fputs("DEBUG: Unable to create avahi simple poll object.\n", stderr); + return (1); + } + + avahi_simple_poll_set_func(simple_poll, poll_callback, NULL); + + client = avahi_client_new(avahi_simple_poll_get(simple_poll), + 0, client_callback, simple_poll, &error); + if (!client) + { + fputs("DEBUG: Unable to create avahi client.\n", stderr); + return (1); + } + + avahi_service_browser_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, + "_fax-ipp._tcp", NULL, 0, + browse_callback, devices); + avahi_service_browser_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, + "_ipp._tcp", NULL, 0, + browse_callback, devices); + avahi_service_browser_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, + "_ipp-tls._tcp", NULL, 0, + browse_callback, devices); + avahi_service_browser_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, + "_ipps._tcp", NULL, 0, + browse_callback, devices); + avahi_service_browser_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, + "_pdl-datastream._tcp", + NULL, 0, + browse_callback, + devices); + avahi_service_browser_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, + "_printer._tcp", NULL, 0, + browse_callback, devices); +#endif /* HAVE_AVAHI */ /* * Loop until we are killed... @@ -270,11 +379,14 @@ main(int argc, /* I - Number of command-line args */ while (!job_canceled) { + int announce = 0; /* Announce printers? */ + +#ifdef HAVE_DNSSD FD_ZERO(&input); FD_SET(fd, &input); timeout.tv_sec = 0; - timeout.tv_usec = 250000; + timeout.tv_usec = 500000; if (select(fd + 1, &input, NULL, NULL, &timeout) < 0) continue; @@ -288,12 +400,36 @@ main(int argc, /* I - Number of command-line args */ DNSServiceProcessResult(main_ref); } else + announce = 1; + +#elif defined(HAVE_AVAHI) + got_data = 0; + + if ((error = avahi_simple_poll_iterate(simple_poll, 500)) > 0) + { + /* + * We've been told to exit the loop. Perhaps the connection to + * Avahi failed. + */ + + break; + } + + if (!got_data) + announce = 1; +#endif /* HAVE_DNSSD */ + +/* fprintf(stderr, "DEBUG: announce=%d\n", announce);*/ + + if (announce) { /* * Announce any devices we've found... */ +#ifdef HAVE_DNSSD DNSServiceErrorType status; /* DNS query status */ +#endif /* HAVE_DNSSD */ cups_device_t *best; /* Best matching device */ char device_uri[1024]; /* Device URI */ int count; /* Number of queries */ @@ -316,36 +452,59 @@ main(int argc, /* I - Number of command-line args */ * Found the device, now get the TXT record(s) for it... */ - if (count < 20) + if (count < 50) { - device->ref = main_ref; - fprintf(stderr, "DEBUG: Querying \"%s\"...\n", device->fullName); +#ifdef HAVE_DNSSD + device->ref = main_ref; + status = DNSServiceQueryRecord(&(device->ref), kDNSServiceFlagsShareConnection, 0, device->fullName, kDNSServiceType_TXT, kDNSServiceClass_IN, query_callback, - devices); + device); if (status != kDNSServiceErr_NoError) - { - fputs("ERROR: Unable to query for TXT records!\n", stderr); - fprintf(stderr, "DEBUG: DNSServiceQueryRecord returned %d\n", - status); - } + fprintf(stderr, + "ERROR: Unable to query \"%s\" for TXT records: %d\n", + device->fullName, status); + /* Users never see this */ else count ++; + +#else + if ((device->ref = avahi_record_browser_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, + device->fullName, + AVAHI_DNS_CLASS_IN, + AVAHI_DNS_TYPE_TXT, + 0, + query_callback, + device)) == NULL) + fprintf(stderr, + "ERROR: Unable to query \"%s\" for TXT records: %s\n", + device->fullName, + avahi_strerror(avahi_client_errno(client))); + /* Users never see this */ + else + count ++; +#endif /* HAVE_AVAHI */ } } else if (!device->sent) { +#ifdef HAVE_DNSSD /* * Got the TXT records, now report the device... */ DNSServiceRefDeallocate(device->ref); - device->ref = 0; +#else + avahi_record_browser_free(device->ref); +#endif /* HAVE_DNSSD */ + + device->ref = NULL; if (!best) best = device; @@ -397,6 +556,8 @@ main(int argc, /* I - Number of command-line args */ sent ++; } + fprintf(stderr, "DEBUG: sent=%d, count=%d\n", sent, count); + if (sent == cupsArrayCount(devices)) break; } @@ -406,6 +567,7 @@ main(int argc, /* I - Number of command-line args */ } +#ifdef HAVE_DNSSD /* * 'browse_callback()' - Browse devices. */ @@ -494,6 +656,97 @@ browse_local_callback( device->fullName); device->sent = 1; } +#endif /* HAVE_DNSSD */ + + +#ifdef HAVE_AVAHI +/* + * 'browse_callback()' - Browse devices. + */ + +static void +browse_callback( + AvahiServiceBrowser *browser, /* I - Browser */ + AvahiIfIndex interface, /* I - Interface index (unused) */ + AvahiProtocol protocol, /* I - Network protocol (unused) */ + AvahiBrowserEvent event, /* I - What happened */ + const char *name, /* I - Service name */ + const char *type, /* I - Registration type */ + const char *domain, /* I - Domain */ + AvahiLookupResultFlags flags, /* I - Flags */ + void *context) /* I - Devices array */ +{ + AvahiClient *client = avahi_service_browser_get_client(browser); + /* Client information */ + + + (void)interface; + (void)protocol; + (void)context; + + switch (event) + { + case AVAHI_BROWSER_FAILURE: + fprintf(stderr, "DEBUG: browse_callback: %s\n", + avahi_strerror(avahi_client_errno(client))); + avahi_simple_poll_quit(simple_poll); + break; + + case AVAHI_BROWSER_NEW: + /* + * This object is new on the network. + */ + + if (flags & AVAHI_LOOKUP_RESULT_LOCAL) + { + /* + * This comes from the local machine so ignore it. + */ + + fprintf(stderr, "DEBUG: Ignoring local service %s.\n", name); + } + else + { + /* + * Create a device entry for it if it doesn't yet exist. + */ + + get_device((cups_array_t *)context, name, type, domain); + } + break; + + case AVAHI_BROWSER_REMOVE: + case AVAHI_BROWSER_ALL_FOR_NOW: + case AVAHI_BROWSER_CACHE_EXHAUSTED: + break; + } +} + + +/* + * 'client_callback()' - Avahi client callback function. + */ + +static void +client_callback( + AvahiClient *client, /* I - Client information (unused) */ + AvahiClientState state, /* I - Current state */ + void *context) /* I - User data (unused) */ +{ + (void)client; + (void)context; + + /* + * If the connection drops, quit. + */ + + if (state == AVAHI_CLIENT_FAILURE) + { + fputs("DEBUG: Avahi connection failed.\n", stderr); + avahi_simple_poll_quit(simple_poll); + } +} +#endif /* HAVE_AVAHI */ /* @@ -573,6 +826,41 @@ exec_backend(char **argv) /* I - Command-line arguments */ } +/* + * 'device_type()' - Get DNS-SD type enumeration from string. + */ + +static int +device_type(const char *regtype) +{ +#ifdef HAVE_AVAHI + if (!strcmp(regtype, "_ipp._tcp")) + return (CUPS_DEVICE_IPP); + else if (!strcmp(regtype, "_ipps._tcp") || + !strcmp(regtype, "_ipp-tls._tcp")) + return (CUPS_DEVICE_IPPS); + else if (!strcmp(regtype, "_fax-ipp._tcp")) + return (CUPS_DEVICE_FAX_IPP); + else if (!strcmp(regtype, "_printer._tcp")) + return (CUPS_DEVICE_PDL_DATASTREAM); +#else + if (!strcmp(regtype, "_ipp._tcp.")) + return (CUPS_DEVICE_IPP); + else if (!strcmp(regtype, "_ipps._tcp.") || + !strcmp(regtype, "_ipp-tls._tcp.")) + return (CUPS_DEVICE_IPPS); + else if (!strcmp(regtype, "_fax-ipp._tcp.")) + return (CUPS_DEVICE_FAX_IPP); + else if (!strcmp(regtype, "_printer._tcp.")) + return (CUPS_DEVICE_PRINTER); + else if (!strcmp(regtype, "_pdl-datastream._tcp.")) + return (CUPS_DEVICE_PDL_DATASTREAM); +#endif /* HAVE_AVAHI */ + + return (CUPS_DEVICE_RIOUSBPRINT); +} + + /* * 'get_device()' - Create or update a device. */ @@ -594,20 +882,7 @@ get_device(cups_array_t *devices, /* I - Device array */ */ key.name = (char *)serviceName; - - if (!strcmp(regtype, "_ipp._tcp.")) - key.type = CUPS_DEVICE_IPP; - else if (!strcmp(regtype, "_ipps._tcp.") || - !strcmp(regtype, "_ipp-tls._tcp.")) - key.type = CUPS_DEVICE_IPPS; - else if (!strcmp(regtype, "_fax-ipp._tcp.")) - key.type = CUPS_DEVICE_FAX_IPP; - else if (!strcmp(regtype, "_printer._tcp.")) - key.type = CUPS_DEVICE_PRINTER; - else if (!strcmp(regtype, "_pdl-datastream._tcp.")) - key.type = CUPS_DEVICE_PDL_DATASTREAM; - else - key.type = CUPS_DEVICE_RIOUSBPRINT; + key.type = device_type(regtype); for (device = cupsArrayFind(devices, &key); device; @@ -627,8 +902,14 @@ get_device(cups_array_t *devices, /* I - Device array */ free(device->domain); device->domain = strdup(replyDomain); +#ifdef HAVE_DNSSD DNSServiceConstructFullName(fullName, device->name, regtype, replyDomain); +#else /* HAVE_AVAHI */ + avahi_service_name_join(fullName, kDNSServiceMaxDomainName, + serviceName, regtype, replyDomain); +#endif /* HAVE_DNSSD */ + free(device->fullName); device->fullName = strdup(fullName); } @@ -655,13 +936,55 @@ get_device(cups_array_t *devices, /* I - Device array */ * Set the "full name" of this service, which is used for queries... */ +#ifdef HAVE_DNSSD DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain); +#else /* HAVE_AVAHI */ + avahi_service_name_join(fullName, kDNSServiceMaxDomainName, + serviceName, regtype, replyDomain); +#endif /* HAVE_DNSSD */ + device->fullName = strdup(fullName); return (device); } +#ifdef HAVE_AVAHI +/* + * 'poll_callback()' - Wait for input on the specified file descriptors. + * + * Note: This function is needed because avahi_simple_poll_iterate is broken + * and always uses a timeout of 0 (!) milliseconds. + * (Avahi Ticket #364) + */ + +static int /* O - Number of file descriptors matching */ +poll_callback( + struct pollfd *pollfds, /* I - File descriptors */ + unsigned int num_pollfds, /* I - Number of file descriptors */ + int timeout, /* I - Timeout in milliseconds (unused) */ + void *context) /* I - User data (unused) */ +{ + int val; /* Return value */ + + + (void)timeout; + (void)context; + + val = poll(pollfds, num_pollfds, 500); + + if (val < 0) + fprintf(stderr, "DEBUG: poll_callback: %s\n", strerror(errno)); + else if (val > 0) + got_data = 1; + + return (val); +} +#endif /* HAVE_AVAHI */ + + +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) +# ifdef HAVE_DNSSD /* * 'query_callback()' - Process query data. */ @@ -678,15 +1001,46 @@ query_callback( uint16_t rdlen, /* I - Length of record data */ const void *rdata, /* I - Record data */ uint32_t ttl, /* I - Time-to-live */ - void *context) /* I - Devices array */ + void *context) /* I - Device */ { - cups_array_t *devices; /* Device array */ - char name[1024], /* Service name */ - *ptr; /* Pointer into string */ - cups_device_t dkey, /* Search key */ - *device; /* Device */ - +# else +/* + * 'query_callback()' - Process query data. + */ +static void +query_callback( + AvahiRecordBrowser *browser, /* I - Record browser */ + AvahiIfIndex interfaceIndex, + /* I - Interface index (unused) */ + AvahiProtocol protocol, /* I - Network protocol (unused) */ + AvahiBrowserEvent event, /* I - What happened? */ + const char *fullName, /* I - Service name */ + uint16_t rrclass, /* I - Record class */ + uint16_t rrtype, /* I - Record type */ + const void *rdata, /* I - TXT record */ + size_t rdlen, /* I - Length of TXT record */ + AvahiLookupResultFlags flags, /* I - Flags */ + void *context) /* I - Device */ +{ + AvahiClient *client = avahi_record_browser_get_client(browser); + /* Client information */ +# endif /* HAVE_DNSSD */ + char *ptr; /* Pointer into string */ + cups_device_t *device = (cups_device_t *)context; + /* Device */ + const uint8_t *data, /* Pointer into data */ + *datanext, /* Next key/value pair */ + *dataend; /* End of entire TXT record */ + uint8_t datalen; /* Length of current key/value pair */ + char key[256], /* Key string */ + value[256], /* Value string */ + make_and_model[512], /* Manufacturer and model */ + model[256], /* Model */ + device_id[2048]; /* 1284 device ID */ + + +# ifdef HAVE_DNSSD fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, " "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", " "rrtype=%u, rrclass=%u, rdlen=%u, rdata=%p, ttl=%u, " @@ -702,221 +1056,183 @@ query_callback( if (errorCode != kDNSServiceErr_NoError || !(flags & kDNSServiceFlagsAdd)) return; +# else + fprintf(stderr, "DEBUG2: query_callback(browser=%p, interfaceIndex=%d, " + "protocol=%d, event=%d, fullName=\"%s\", rrclass=%u, " + "rrtype=%u, rdata=%p, rdlen=%u, flags=%x, context=%p)\n", + browser, interfaceIndex, protocol, event, + fullName ? fullName : "(null)", rrclass, rrtype, rdata, + (unsigned)rdlen, flags, context); + /* - * Lookup the service in the devices array. + * Only process "add" data... */ - devices = (cups_array_t *)context; - dkey.name = name; + if (event != AVAHI_BROWSER_NEW) + { + if (event == AVAHI_BROWSER_FAILURE) + fprintf(stderr, "ERROR: %s\n", + avahi_strerror(avahi_client_errno(client))); - unquote(name, fullName, sizeof(name)); + return; + } +# endif /* HAVE_DNSSD */ - if ((dkey.domain = strstr(name, "._tcp.")) != NULL) - dkey.domain += 6; - else - dkey.domain = (char *)"local."; + /* + * Pull out the priority and make and model from the TXT + * record and save it... + */ - if ((ptr = strstr(name, "._")) != NULL) - *ptr = '\0'; + device_id[0] = '\0'; + make_and_model[0] = '\0'; - if (strstr(fullName, "_ipp._tcp.")) - dkey.type = CUPS_DEVICE_IPP; - else if (strstr(fullName, "_ipps._tcp.") || - strstr(fullName, "_ipp-tls._tcp.")) - dkey.type = CUPS_DEVICE_IPPS; - else if (strstr(fullName, "_fax-ipp._tcp.")) - dkey.type = CUPS_DEVICE_FAX_IPP; - else if (strstr(fullName, "_printer._tcp.")) - dkey.type = CUPS_DEVICE_PRINTER; - else if (strstr(fullName, "_pdl-datastream._tcp.")) - dkey.type = CUPS_DEVICE_PDL_DATASTREAM; - else - dkey.type = CUPS_DEVICE_RIOUSBPRINT; + strcpy(model, "Unknown"); - for (device = cupsArrayFind(devices, &dkey); - device; - device = cupsArrayNext(devices)) + for (data = rdata, dataend = data + rdlen; + data < dataend; + data = datanext) { - if (_cups_strcasecmp(device->name, dkey.name) || - _cups_strcasecmp(device->domain, dkey.domain)) - { - device = NULL; + /* + * Read a key/value pair starting with an 8-bit length. Since the + * length is 8 bits and the size of the key/value buffers is 256, we + * don't need to check for overflow... + */ + + datalen = *data++; + + if (!datalen || (data + datalen) > dataend) break; - } - else if (device->type == dkey.type) + + datanext = data + datalen; + + for (ptr = key; data < datanext && *data != '='; data ++) + *ptr++ = *data; + *ptr = '\0'; + + if (data < datanext && *data == '=') { - /* - * Found it, pull out the priority and make and model from the TXT - * record and save it... - */ + data ++; - const uint8_t *data, /* Pointer into data */ - *datanext, /* Next key/value pair */ - *dataend; /* End of entire TXT record */ - uint8_t datalen; /* Length of current key/value pair */ - char key[256], /* Key string */ - value[256], /* Value string */ - make_and_model[512], - /* Manufacturer and model */ - model[256], /* Model */ - device_id[2048];/* 1284 device ID */ + if (data < datanext) + memcpy(value, data, datanext - data); + value[datanext - data] = '\0'; + fprintf(stderr, "DEBUG2: query_callback: \"%s=%s\".\n", + key, value); + } + else + { + fprintf(stderr, "DEBUG2: query_callback: \"%s\" with no value.\n", + key); + continue; + } - device_id[0] = '\0'; - make_and_model[0] = '\0'; + if (!_cups_strncasecmp(key, "usb_", 4)) + { + /* + * Add USB device ID information... + */ - strcpy(model, "Unknown"); + ptr = device_id + strlen(device_id); + snprintf(ptr, sizeof(device_id) - (ptr - device_id), "%s:%s;", + key + 4, value); + } - for (data = rdata, dataend = data + rdlen; - data < dataend; - data = datanext) + if (!_cups_strcasecmp(key, "usb_MFG") || !_cups_strcasecmp(key, "usb_MANU") || + !_cups_strcasecmp(key, "usb_MANUFACTURER")) + strcpy(make_and_model, value); + else if (!_cups_strcasecmp(key, "usb_MDL") || !_cups_strcasecmp(key, "usb_MODEL")) + strcpy(model, value); + else if (!_cups_strcasecmp(key, "product") && !strstr(value, "Ghostscript")) + { + if (value[0] == '(') { /* - * Read a key/value pair starting with an 8-bit length. Since the - * length is 8 bits and the size of the key/value buffers is 256, we - * don't need to check for overflow... + * Strip parenthesis... */ - datalen = *data++; + if ((ptr = value + strlen(value) - 1) > value && *ptr == ')') + *ptr = '\0'; - if (!datalen || (data + datalen) > dataend) - break; - - datanext = data + datalen; + strcpy(model, value + 1); + } + else + strcpy(model, value); + } + else if (!_cups_strcasecmp(key, "ty")) + { + strcpy(model, value); - for (ptr = key; data < datanext && *data != '='; data ++) - *ptr++ = *data; + if ((ptr = strchr(model, ',')) != NULL) *ptr = '\0'; + } + else if (!_cups_strcasecmp(key, "priority")) + device->priority = atoi(value); + else if ((device->type == CUPS_DEVICE_IPP || + device->type == CUPS_DEVICE_IPPS || + device->type == CUPS_DEVICE_PRINTER) && + !_cups_strcasecmp(key, "printer-type")) + { + /* + * This is a CUPS printer! + */ - if (data < datanext && *data == '=') - { - data ++; - - if (data < datanext) - memcpy(value, data, datanext - data); - value[datanext - data] = '\0'; - - fprintf(stderr, "DEBUG2: query_callback: \"%s=%s\".\n", - key, value); - } - else - { - fprintf(stderr, "DEBUG2: query_callback: \"%s\" with no value.\n", - key); - continue; - } - - if (!_cups_strncasecmp(key, "usb_", 4)) - { - /* - * Add USB device ID information... - */ - - ptr = device_id + strlen(device_id); - snprintf(ptr, sizeof(device_id) - (ptr - device_id), "%s:%s;", - key + 4, value); - } - - if (!_cups_strcasecmp(key, "usb_MFG") || !_cups_strcasecmp(key, "usb_MANU") || - !_cups_strcasecmp(key, "usb_MANUFACTURER")) - strcpy(make_and_model, value); - else if (!_cups_strcasecmp(key, "usb_MDL") || !_cups_strcasecmp(key, "usb_MODEL")) - strcpy(model, value); - else if (!_cups_strcasecmp(key, "product") && !strstr(value, "Ghostscript")) - { - if (value[0] == '(') - { - /* - * Strip parenthesis... - */ - - if ((ptr = value + strlen(value) - 1) > value && *ptr == ')') - *ptr = '\0'; - - strcpy(model, value + 1); - } - else - strcpy(model, value); - } - else if (!_cups_strcasecmp(key, "ty")) - { - strcpy(model, value); - - if ((ptr = strchr(model, ',')) != NULL) - *ptr = '\0'; - } - else if (!_cups_strcasecmp(key, "priority")) - device->priority = atoi(value); - else if ((device->type == CUPS_DEVICE_IPP || - device->type == CUPS_DEVICE_IPPS || - device->type == CUPS_DEVICE_PRINTER) && - !_cups_strcasecmp(key, "printer-type")) - { - /* - * This is a CUPS printer! - */ - - device->cups_shared = 1; + device->cups_shared = 1; - if (device->type == CUPS_DEVICE_PRINTER) - device->sent = 1; - } - } + if (device->type == CUPS_DEVICE_PRINTER) + device->sent = 1; + } + } - if (device->device_id) - free(device->device_id); + if (device->device_id) + free(device->device_id); - if (!device_id[0] && strcmp(model, "Unknown")) - { - if (make_and_model[0]) - snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s;", - make_and_model, model); - else if (!_cups_strncasecmp(model, "designjet ", 10)) - snprintf(device_id, sizeof(device_id), "MFG:HP;MDL:%s", model + 10); - else if (!_cups_strncasecmp(model, "stylus ", 7)) - snprintf(device_id, sizeof(device_id), "MFG:EPSON;MDL:%s", model + 7); - else if ((ptr = strchr(model, ' ')) != NULL) - { - /* - * Assume the first word is the make... - */ + if (!device_id[0] && strcmp(model, "Unknown")) + { + if (make_and_model[0]) + snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s;", + make_and_model, model); + else if (!_cups_strncasecmp(model, "designjet ", 10)) + snprintf(device_id, sizeof(device_id), "MFG:HP;MDL:%s", model + 10); + else if (!_cups_strncasecmp(model, "stylus ", 7)) + snprintf(device_id, sizeof(device_id), "MFG:EPSON;MDL:%s", model + 7); + else if ((ptr = strchr(model, ' ')) != NULL) + { + /* + * Assume the first word is the make... + */ - memcpy(make_and_model, model, ptr - model); - make_and_model[ptr - model] = '\0'; + memcpy(make_and_model, model, ptr - model); + make_and_model[ptr - model] = '\0'; - snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s", - make_and_model, ptr + 1); - } - } + snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s", + make_and_model, ptr + 1); + } + } - if (device_id[0]) - device->device_id = strdup(device_id); - else - device->device_id = NULL; + if (device_id[0]) + device->device_id = strdup(device_id); + else + device->device_id = NULL; - if (device->make_and_model) - free(device->make_and_model); + if (device->make_and_model) + free(device->make_and_model); - if (make_and_model[0]) - { - strlcat(make_and_model, " ", sizeof(make_and_model)); - strlcat(make_and_model, model, sizeof(make_and_model)); + if (make_and_model[0]) + { + strlcat(make_and_model, " ", sizeof(make_and_model)); + strlcat(make_and_model, model, sizeof(make_and_model)); - device->make_and_model = strdup(make_and_model); - } - else - device->make_and_model = strdup(model); - break; - } + device->make_and_model = strdup(make_and_model); } - - if (!device) - fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); + else + device->make_and_model = strdup(model); } +#endif /* HAVE_DNSSD || HAVE_AVAHI */ /* - * 'sigterm_handler()' - Handle termination signals... + * 'sigterm_handler()' - Handle termination signals. */ static void diff --git a/backend/ipp.c b/backend/ipp.c index 826d5b8a8..73491452d 100644 --- a/backend/ipp.c +++ b/backend/ipp.c @@ -645,6 +645,9 @@ main(int argc, /* I - Number of command-line args */ update_reasons(NULL, "-connecting-to-device"); return (CUPS_BACKEND_STOP); } + + if (job_canceled) + return (CUPS_BACKEND_OK); } http = _httpCreate(hostname, port, addrlist, cupsEncryption(), AF_UNSPEC); @@ -749,7 +752,7 @@ main(int argc, /* I - Number of command-line args */ case ECONNREFUSED : default : _cupsLangPrintFilter(stderr, "WARNING", - _("The printer is busy.")); + _("The printer is in use.")); break; } @@ -772,7 +775,9 @@ main(int argc, /* I - Number of command-line args */ } while (http->fd < 0); - if (job_canceled || !http) + if (job_canceled) + return (CUPS_BACKEND_OK); + else if (!http) return (CUPS_BACKEND_FAILED); update_reasons(NULL, "-connecting-to-device"); @@ -864,7 +869,7 @@ main(int argc, /* I - Number of command-line args */ return (CUPS_BACKEND_FAILED); } - _cupsLangPrintFilter(stderr, "INFO", _("The printer is busy.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use.")); report_printer_state(supported); @@ -882,14 +887,14 @@ main(int argc, /* I - Number of command-line args */ if (version >= 20) { _cupsLangPrintFilter(stderr, "INFO", - _("Printer does not support IPP/%d.%d, trying " + _("The printer does not support IPP/%d.%d, trying " "IPP/%s."), version / 10, version % 10, "1.1"); version = 11; } else { _cupsLangPrintFilter(stderr, "INFO", - _("Printer does not support IPP/%d.%d, trying " + _("The printer does not support IPP/%d.%d, trying " "IPP/%s."), version / 10, version % 10, "1.0"); version = 10; } @@ -970,7 +975,7 @@ main(int argc, /* I - Number of command-line args */ if (busy) { - _cupsLangPrintFilter(stderr, "INFO", _("The printer is busy.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use.")); report_printer_state(supported); @@ -1092,7 +1097,10 @@ main(int argc, /* I - Number of command-line args */ report_printer_state(supported); } - while (ipp_status > IPP_OK_CONFLICT); + while (!job_canceled && ipp_status > IPP_OK_CONFLICT); + + if (job_canceled) + return (CUPS_BACKEND_OK); /* * See if the printer is accepting jobs and is not stopped; if either @@ -1294,7 +1302,7 @@ main(int argc, /* I - Number of command-line args */ if (ipp_status == IPP_SERVICE_UNAVAILABLE || ipp_status == IPP_PRINTER_BUSY) { - _cupsLangPrintFilter(stderr, "INFO", _("The printer is busy.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use.")); sleep(10); } else if (ipp_status == IPP_FORBIDDEN || @@ -1442,7 +1450,7 @@ main(int argc, /* I - Number of command-line args */ ipp_status == IPP_NOT_POSSIBLE || ipp_status == IPP_PRINTER_BUSY) { - _cupsLangPrintFilter(stderr, "INFO", _("The printer is busy.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use.")); sleep(10); if (num_files == 0) @@ -1794,7 +1802,7 @@ main(int argc, /* I - Number of command-line args */ * Cancel the job as needed... */ - if (job_canceled && job_id) + if (job_canceled > 0 && job_id > 0) cancel_job(http, uri, job_id, resource, argv[2], version); /* @@ -1866,18 +1874,19 @@ main(int argc, /* I - Number of command-line args */ else if (ipp_status == IPP_DOCUMENT_FORMAT || ipp_status == IPP_CONFLICT) return (CUPS_BACKEND_FAILED); - else if (ipp_status == IPP_REQUEST_VALUE) + else if (ipp_status == IPP_REQUEST_VALUE || job_canceled < 0) { - _cupsLangPrintFilter(stderr, "ERROR", _("Print job too large.")); + if (ipp_status == IPP_REQUEST_VALUE) + _cupsLangPrintFilter(stderr, "ERROR", _("Print job too large.")); + else + _cupsLangPrintFilter(stderr, "ERROR", _("Print job canceled at printer.")); + return (CUPS_BACKEND_CANCEL); } else if (ipp_status > IPP_OK_CONFLICT && ipp_status != IPP_ERROR_JOB_CANCELED) return (CUPS_BACKEND_RETRY_CURRENT); else - { - _cupsLangPrintFilter(stderr, "INFO", _("Ready to print.")); return (CUPS_BACKEND_OK); - } } @@ -2139,7 +2148,7 @@ monitor_printer( response = cupsDoRequest(http, request, monitor->resource); - fprintf(stderr, "DEBUG: %s: %s (%s)\n", ippOpString(job_op), + fprintf(stderr, "DEBUG: (monitor) %s: %s (%s)\n", ippOpString(job_op), ippErrorString(cupsLastError()), cupsLastErrorString()); if (cupsLastError() <= IPP_OK_CONFLICT) @@ -2203,6 +2212,14 @@ monitor_printer( ippDelete(response); + fprintf(stderr, "DEBUG: (monitor) job-state=%s\n", + ippEnumString("job-state", monitor->job_state)); + + if (!job_canceled && + (monitor->job_state == IPP_JOB_CANCELED || + monitor->job_state == IPP_JOB_ABORTED)) + job_canceled = -1; + /* * Disconnect from the printer - we'll reconnect on the next poll... */ @@ -2223,7 +2240,7 @@ monitor_printer( * Cancel the job if necessary... */ - if (job_canceled && monitor->job_id > 0) + if (job_canceled > 0 && monitor->job_id > 0) if (!httpReconnect(http)) cancel_job(http, monitor->uri, monitor->job_id, monitor->resource, monitor->user, monitor->version); @@ -3000,6 +3017,8 @@ sigterm_handler(int sig) /* I - Signal */ { (void)sig; /* remove compiler warnings... */ + write(2, "DEBUG: Got SIGTERM.\n", 20); + #if defined(HAVE_GSSAPI) && defined(HAVE_XPC) if (child_pid) { @@ -3014,6 +3033,8 @@ sigterm_handler(int sig) /* I - Signal */ * Flag that the job should be canceled... */ + write(2, "DEBUG: job_canceled = 1.\n", 25); + job_canceled = 1; return; } diff --git a/backend/lpd.c b/backend/lpd.c index 3e3cbfc90..874606fe9 100644 --- a/backend/lpd.c +++ b/backend/lpd.c @@ -616,7 +616,7 @@ lpd_command(int fd, /* I - Socket connection to LPD host */ if (recv(fd, &status, 1, 0) < 1) { - _cupsLangPrintFilter(stderr, "WARNING", _("Printer did not respond.")); + _cupsLangPrintFilter(stderr, "WARNING", _("The printer did not respond.")); status = errno; } @@ -825,7 +825,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */ case ECONNREFUSED : default : _cupsLangPrintFilter(stderr, "WARNING", - _("The printer is busy.")); + _("The printer is in use.")); break; } @@ -1006,7 +1006,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */ if (read(fd, &status, 1) < 1) { _cupsLangPrintFilter(stderr, "WARNING", - _("Printer did not respond.")); + _("The printer did not respond.")); status = errno; } } @@ -1088,7 +1088,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */ if (recv(fd, &status, 1, 0) < 1) { _cupsLangPrintFilter(stderr, "WARNING", - _("Printer did not respond.")); + _("The printer did not respond.")); status = 0; } } @@ -1138,7 +1138,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */ if (read(fd, &status, 1) < 1) { _cupsLangPrintFilter(stderr, "WARNING", - _("Printer did not respond.")); + _("The printer did not respond.")); status = errno; } } diff --git a/backend/runloop.c b/backend/runloop.c index 777b04801..0b3f65f78 100644 --- a/backend/runloop.c +++ b/backend/runloop.c @@ -92,7 +92,8 @@ backendDrainOutput(int print_fd, /* I - Print file descriptor */ if (errno != EAGAIN || errno != EINTR) { - _cupsLangPrintError("ERROR", _("Unable to read print data")); + fprintf(stderr, "DEBUG: Read failed: %s\n", strerror(errno)); + _cupsLangPrintFilter(stderr, "ERROR", _("Unable to read print data.")); return (-1); } @@ -250,7 +251,7 @@ backendRunLoop( { fputs("STATE: +offline-report\n", stderr); _cupsLangPrintFilter(stderr, "INFO", - _("Printer is not currently connected.")); + _("The printer is not connected.")); offline = 1; } else if (errno == EINTR && total_bytes == 0) @@ -319,7 +320,9 @@ backendRunLoop( if (errno != EAGAIN || errno != EINTR) { - _cupsLangPrintError("ERROR", _("Unable to read print data")); + fprintf(stderr, "DEBUG: Read failed: %s\n", strerror(errno)); + _cupsLangPrintFilter(stderr, "ERROR", + _("Unable to read print data.")); return (-1); } @@ -368,7 +371,7 @@ backendRunLoop( { fputs("STATE: +offline-report\n", stderr); _cupsLangPrintFilter(stderr, "INFO", - _("Printer is not currently connected.")); + _("The printer is not connected.")); offline = 1; } } @@ -389,7 +392,8 @@ backendRunLoop( if (offline && update_state) { fputs("STATE: -offline-report\n", stderr); - _cupsLangPrintFilter(stderr, "INFO", _("Printer is now connected.")); + _cupsLangPrintFilter(stderr, "INFO", + _("The printer is now connected.")); offline = 0; } diff --git a/backend/socket.c b/backend/socket.c index 366a655e5..f40d837fb 100644 --- a/backend/socket.c +++ b/backend/socket.c @@ -3,7 +3,7 @@ * * AppSocket backend for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -371,7 +371,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */ case ECONNREFUSED : default : _cupsLangPrintFilter(stderr, "WARNING", - _("The printer is busy.")); + _("The printer is in use.")); break; } @@ -472,8 +472,6 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */ if (print_fd != 0) close(print_fd); - _cupsLangPrintFilter(stderr, "INFO", _("Ready to print.")); - return (CUPS_BACKEND_OK); } diff --git a/backend/usb-darwin.c b/backend/usb-darwin.c index 44a14ba0b..187bf3f54 100644 --- a/backend/usb-darwin.c +++ b/backend/usb-darwin.c @@ -1,7 +1,7 @@ /* * "$Id: usb-darwin.c 7953 2008-09-17 01:43:19Z mike $" * -* Copyright 2005-2011 Apple Inc. All rights reserved. +* Copyright 2005-2012 Apple Inc. All rights reserved. * * IMPORTANT: This Apple software is supplied to you by Apple Computer, * Inc. ("Apple") in consideration of your agreement to the following @@ -820,10 +820,10 @@ print_device(const char *uri, /* I - Device URI */ /* * If it didn't exit abort the pending read and wait an additional second... */ - + if (!g.read_thread_done) { - fputs("DEBUG: Read thread still active, aborting the pending read...\n", + fputs("DEBUG: Read thread still active, aborting the pending read...\n", stderr); g.wait_eof = 0; @@ -833,7 +833,7 @@ print_device(const char *uri, /* I - Device URI */ gettimeofday(&tv, NULL); cond_timeout.tv_sec = tv.tv_sec + 1; cond_timeout.tv_nsec = tv.tv_usec * 1000; - + while (!g.read_thread_done) { if (pthread_cond_timedwait(&g.read_thread_cond, &g.read_thread_mutex, @@ -1283,7 +1283,7 @@ static Boolean find_device_cb(void *refcon, if (!keepLooking && g.status_timer != NULL) { fputs("STATE: -offline-report\n", stderr); - _cupsLangPrintFilter(stderr, "INFO", _("Printer is now online.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is now online.")); CFRunLoopRemoveTimer(CFRunLoopGetCurrent(), g.status_timer, kCFRunLoopDefaultMode); CFRelease(g.status_timer); g.status_timer = NULL; @@ -1304,7 +1304,7 @@ static void status_timer_cb(CFRunLoopTimerRef timer, (void)info; fputs("STATE: +offline-report\n", stderr); - _cupsLangPrintFilter(stderr, "INFO", _("Printer is offline.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is offline.")); if (getenv("CLASS") != NULL) { diff --git a/backend/usb-unix.c b/backend/usb-unix.c index 92d63bfd2..b06825f78 100644 --- a/backend/usb-unix.c +++ b/backend/usb-unix.c @@ -5,7 +5,7 @@ * * This file is included from "usb.c" when compiled on UNIX/Linux. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -128,16 +128,12 @@ print_device(const char *uri, /* I - Device URI */ if (errno == EBUSY) { - _cupsLangPrintFilter(stderr, "INFO", - _("Printer busy, will retry in 10 seconds.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use.")); sleep(10); } else if (errno == ENXIO || errno == EIO || errno == ENOENT || errno == ENODEV) { - _cupsLangPrintFilter(stderr, "INFO", - _("Printer not connected, will retry in 30 " - "seconds.")); sleep(30); } else @@ -425,8 +421,7 @@ open_device(const char *uri, /* I - Device URI */ */ if (busy) - _cupsLangPrintFilter(stderr, "INFO", - _("Printer is busy, will retry in 5 seconds.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use.")); sleep(5); } @@ -509,8 +504,7 @@ open_device(const char *uri, /* I - Device URI */ if (busy) { - _cupsLangPrintFilter(stderr, "INFO", - _("Printer is busy, will retry in 5 seconds.")); + _cupsLangPrintFilter(stderr, "INFO", _("The printer is in use.")); sleep(5); } } diff --git a/berkeley/Dependencies b/berkeley/Dependencies index 9beac1b39..46b71d924 100644 --- a/berkeley/Dependencies +++ b/berkeley/Dependencies @@ -1,28 +1,25 @@ -lpc.o: lpc.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -lpq.o: lpq.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -lpr.o: lpr.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -lprm.o: lprm.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h +lpc.o: lpc.c ../cups/cups-private.h ../cups/string-private.h ../config.h \ + ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lpq.o: lpq.c ../cups/cups-private.h ../cups/string-private.h ../config.h \ + ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lpr.o: lpr.c ../cups/cups-private.h ../cups/string-private.h ../config.h \ + ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lprm.o: lprm.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c index dcfc2dc47..d0f488e5a 100644 --- a/cgi-bin/admin.c +++ b/cgi-bin/admin.c @@ -3,7 +3,7 @@ * * Administration CGI for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -523,7 +523,7 @@ do_add_rss_subscription(http_t *http) /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(_("Add RSS Subscription")); - cgiShowIPPError(_("Unable to add RSS subscription:")); + cgiShowIPPError(_("Unable to add RSS subscription")); } else { @@ -810,8 +810,8 @@ do_am_class(http_t *http, /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(title); - cgiShowIPPError(modify ? _("Unable to modify class:") : - _("Unable to add class:")); + cgiShowIPPError(modify ? _("Unable to modify class") : + _("Unable to add class")); } else { @@ -1055,8 +1055,8 @@ do_am_printer(http_t *http, /* I - HTTP connection */ else { cgiStartHTML(title); - cgiShowIPPError(modify ? _("Unable to modify printer:") : - _("Unable to add printer:")); + cgiShowIPPError(modify ? _("Unable to modify printer") : + _("Unable to add printer")); cgiEndHTML(); return; } @@ -1317,7 +1317,7 @@ do_am_printer(http_t *http, /* I - HTTP connection */ else { cgiStartHTML(title); - cgiShowIPPError(_("Unable to get list of printer drivers:")); + cgiShowIPPError(_("Unable to get list of printer drivers")); cgiCopyTemplateLang("error.tmpl"); cgiEndHTML(); } @@ -1415,8 +1415,8 @@ do_am_printer(http_t *http, /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(title); - cgiShowIPPError(modify ? _("Unable to modify printer:") : - _("Unable to add printer:")); + cgiShowIPPError(modify ? _("Unable to modify printer") : + _("Unable to add printer")); } else if (modify) { @@ -1522,7 +1522,7 @@ do_cancel_subscription(http_t *http)/* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(_("Cancel RSS Subscription")); - cgiShowIPPError(_("Unable to cancel RSS subscription:")); + cgiShowIPPError(_("Unable to cancel RSS subscription")); } else { @@ -1654,7 +1654,7 @@ do_config_server(http_t *http) /* I - HTTP connection */ { cgiStartHTML(cgiText(_("Change Settings"))); cgiSetVariable("MESSAGE", - cgiText(_("Unable to change server settings:"))); + cgiText(_("Unable to change server settings"))); cgiSetVariable("ERROR", cupsLastErrorString()); cgiCopyTemplateLang("error.tmpl"); cgiEndHTML(); @@ -1796,7 +1796,7 @@ do_config_server(http_t *http) /* I - HTTP connection */ cgiStartHTML(cgiText(_("Change Settings"))); cgiSetVariable("MESSAGE", - cgiText(_("Unable to change server settings:"))); + cgiText(_("Unable to change server settings"))); cgiSetVariable("ERROR", cupsLastErrorString()); cgiCopyTemplateLang("error.tmpl"); } @@ -1847,7 +1847,7 @@ do_config_server(http_t *http) /* I - HTTP connection */ if ((tempfd = cupsTempFd(tempfile, sizeof(tempfile))) < 0) { cgiStartHTML(cgiText(_("Edit Configuration File"))); - cgiSetVariable("MESSAGE", cgiText(_("Unable to create temporary file:"))); + cgiSetVariable("MESSAGE", cgiText(_("Unable to create temporary file"))); cgiSetVariable("ERROR", strerror(errno)); cgiCopyTemplateLang("error.tmpl"); cgiEndHTML(); @@ -1859,7 +1859,7 @@ do_config_server(http_t *http) /* I - HTTP connection */ if ((temp = cupsFileOpenFd(tempfd, "w")) == NULL) { cgiStartHTML(cgiText(_("Edit Configuration File"))); - cgiSetVariable("MESSAGE", cgiText(_("Unable to create temporary file:"))); + cgiSetVariable("MESSAGE", cgiText(_("Unable to create temporary file"))); cgiSetVariable("ERROR", strerror(errno)); cgiCopyTemplateLang("error.tmpl"); cgiEndHTML(); @@ -1909,7 +1909,7 @@ do_config_server(http_t *http) /* I - HTTP connection */ else if (status != HTTP_CREATED) { cgiSetVariable("MESSAGE", - cgiText(_("Unable to upload cupsd.conf file:"))); + cgiText(_("Unable to upload cupsd.conf file"))); cgiSetVariable("ERROR", httpStatus(status)); cgiStartHTML(cgiText(_("Edit Configuration File"))); @@ -1956,7 +1956,7 @@ do_config_server(http_t *http) /* I - HTTP connection */ { cgiStartHTML(cgiText(_("Edit Configuration File"))); cgiSetVariable("MESSAGE", - cgiText(_("Unable to access cupsd.conf file:"))); + cgiText(_("Unable to access cupsd.conf file"))); cgiSetVariable("ERROR", strerror(errno)); cgiCopyTemplateLang("error.tmpl"); cgiEndHTML(); @@ -1969,7 +1969,7 @@ do_config_server(http_t *http) /* I - HTTP connection */ { cgiStartHTML(cgiText(_("Edit Configuration File"))); cgiSetVariable("MESSAGE", - cgiText(_("Unable to access cupsd.conf file:"))); + cgiText(_("Unable to access cupsd.conf file"))); cgiSetVariable("ERROR", cgiText(_("Unable to edit cupsd.conf files larger than " "1MB"))); @@ -1993,7 +1993,7 @@ do_config_server(http_t *http) /* I - HTTP connection */ cgiStartHTML(cgiText(_("Edit Configuration File"))); cgiSetVariable("MESSAGE", - cgiText(_("Unable to access cupsd.conf file:"))); + cgiText(_("Unable to access cupsd.conf file"))); cgiSetVariable("ERROR", strerror(errno)); cgiCopyTemplateLang("error.tmpl"); cgiEndHTML(); @@ -2150,7 +2150,7 @@ do_delete_class(http_t *http) /* I - HTTP connection */ cgiStartHTML(cgiText(_("Delete Class"))); if (cupsLastError() > IPP_OK_CONFLICT) - cgiShowIPPError(_("Unable to delete class:")); + cgiShowIPPError(_("Unable to delete class")); else cgiCopyTemplateLang("class-deleted.tmpl"); @@ -2235,7 +2235,7 @@ do_delete_printer(http_t *http) /* I - HTTP connection */ cgiStartHTML(cgiText(_("Delete Printer"))); if (cupsLastError() > IPP_OK_CONFLICT) - cgiShowIPPError(_("Unable to delete printer:")); + cgiShowIPPError(_("Unable to delete printer")); else cgiCopyTemplateLang("printer-deleted.tmpl"); @@ -2639,10 +2639,6 @@ do_menu(http_t *http) /* I - HTTP connection */ #endif /* HAVE_GSSAPI */ cgiSetVariable("KERBEROS", ""); -#ifdef HAVE_DNSSD - cgiSetVariable("HAVE_DNSSD", "1"); -#endif /* HAVE_DNSSD */ - if ((val = cupsGetOption("BrowseWebIF", num_settings, settings)) == NULL) val = "No"; @@ -2841,7 +2837,7 @@ do_set_allowed_users(http_t *http) /* I - HTTP connection */ exit(0); } else if (cupsLastError() > IPP_OK_CONFLICT) - cgiShowIPPError(_("Unable to get printer attributes:")); + cgiShowIPPError(_("Unable to get printer attributes")); else cgiCopyTemplateLang("users.tmpl"); @@ -2991,7 +2987,7 @@ do_set_allowed_users(http_t *http) /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(cgiText(_("Set Allowed Users"))); - cgiShowIPPError(_("Unable to change printer:")); + cgiShowIPPError(_("Unable to change printer")); } else { @@ -3078,7 +3074,7 @@ do_set_default(http_t *http) /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(title); - cgiShowIPPError(_("Unable to set server default:")); + cgiShowIPPError(_("Unable to set server default")); } else { @@ -3187,7 +3183,7 @@ do_set_options(http_t *http, /* I - HTTP connection */ if ((ppd = ppdOpenFile(filename)) == NULL) { cgiSetVariable("ERROR", ppdErrorString(ppdLastError(&i))); - cgiSetVariable("MESSAGE", cgiText(_("Unable to open PPD file:"))); + cgiSetVariable("MESSAGE", cgiText(_("Unable to open PPD file"))); cgiStartHTML(title); cgiCopyTemplateLang("error.tmpl"); cgiEndHTML(); @@ -3808,7 +3804,7 @@ do_set_options(http_t *http, /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(title); - cgiShowIPPError(_("Unable to set options:")); + cgiShowIPPError(_("Unable to set options")); } else { @@ -3907,7 +3903,7 @@ do_set_sharing(http_t *http) /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(cgiText(_("Set Publishing"))); - cgiShowIPPError(_("Unable to change printer-is-shared attribute:")); + cgiShowIPPError(_("Unable to change printer-is-shared attribute")); } else { diff --git a/cgi-bin/classes.c b/cgi-bin/classes.c index 4b1d02f53..1be7664ca 100644 --- a/cgi-bin/classes.c +++ b/cgi-bin/classes.c @@ -3,7 +3,7 @@ * * Class status CGI for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -257,7 +257,7 @@ do_class_op(http_t *http, /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(title); - cgiShowIPPError(_("Unable to do maintenance command:")); + cgiShowIPPError(_("Unable to do maintenance command")); } else { @@ -447,7 +447,7 @@ show_all_classes(http_t *http, /* I - Connection to server */ * Show the error... */ - cgiShowIPPError(_("Unable to get class list:")); + cgiShowIPPError(_("Unable to get class list")); } cgiEndHTML(); @@ -546,7 +546,7 @@ show_class(http_t *http, /* I - Connection to server */ */ cgiStartHTML(pclass); - cgiShowIPPError(_("Unable to get class status:")); + cgiShowIPPError(_("Unable to get class status")); } cgiEndHTML(); diff --git a/cgi-bin/ipp-var.c b/cgi-bin/ipp-var.c index 6c432a9d6..1251e89a6 100644 --- a/cgi-bin/ipp-var.c +++ b/cgi-bin/ipp-var.c @@ -792,7 +792,7 @@ cgiPrintTestPage(http_t *http, /* I - Connection to server */ cgiStartHTML(cgiText(_("Print Test Page"))); if (cupsLastError() > IPP_OK_CONFLICT) - cgiShowIPPError(_("Unable to print test page:")); + cgiShowIPPError(_("Unable to print test page")); else { cgiSetVariable("PRINTER_NAME", dest); diff --git a/cgi-bin/jobs.c b/cgi-bin/jobs.c index dc79aec70..30aefa667 100644 --- a/cgi-bin/jobs.c +++ b/cgi-bin/jobs.c @@ -3,7 +3,7 @@ * * Job status CGI for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -195,7 +195,7 @@ do_job_op(http_t *http, /* I - HTTP connection */ cgiStartHTML(cgiText(_("Jobs"))); if (cupsLastError() > IPP_OK_CONFLICT) - cgiShowIPPError(_("Job operation failed:")); + cgiShowIPPError(_("Job operation failed")); else if (op == IPP_CANCEL_JOB) cgiCopyTemplateLang("job-cancel.tmpl"); else if (op == IPP_HOLD_JOB) diff --git a/cgi-bin/printers.c b/cgi-bin/printers.c index ff379ff99..4230eec19 100644 --- a/cgi-bin/printers.c +++ b/cgi-bin/printers.c @@ -3,7 +3,7 @@ * * Printer status CGI for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -266,7 +266,7 @@ do_printer_op(http_t *http, /* I - HTTP connection */ else if (cupsLastError() > IPP_OK_CONFLICT) { cgiStartHTML(title); - cgiShowIPPError(_("Unable to do maintenance command:")); + cgiShowIPPError(_("Unable to do maintenance command")); } else { @@ -464,7 +464,7 @@ show_all_printers(http_t *http, /* I - Connection to server */ * Show the error... */ - cgiShowIPPError(_("Unable to get printer list:")); + cgiShowIPPError(_("Unable to get printer list")); } cgiEndHTML(); @@ -566,7 +566,7 @@ show_printer(http_t *http, /* I - Connection to server */ */ cgiStartHTML(printer); - cgiShowIPPError(_("Unable to get printer status:")); + cgiShowIPPError(_("Unable to get printer status")); } cgiEndHTML(); diff --git a/config-scripts/cups-common.m4 b/config-scripts/cups-common.m4 index 592e253bb..de6996d47 100644 --- a/config-scripts/cups-common.m4 +++ b/config-scripts/cups-common.m4 @@ -93,8 +93,9 @@ dnl Check for pkg-config, which is used for some other tests later on... AC_PATH_PROG(PKGCONFIG, pkg-config) dnl Check for libraries... -AC_SEARCH_LIBS(fmod, m) +AC_SEARCH_LIBS(abs, m, AC_DEFINE(HAVE_ABS)) AC_SEARCH_LIBS(crypt, crypt) +AC_SEARCH_LIBS(fmod, m) AC_SEARCH_LIBS(getspent, sec gen) LIBMALLOC="" diff --git a/config-scripts/cups-defaults.m4 b/config-scripts/cups-defaults.m4 index 69699fb85..d236a344a 100644 --- a/config-scripts/cups-defaults.m4 +++ b/config-scripts/cups-defaults.m4 @@ -24,8 +24,8 @@ AC_ARG_WITH(languages, [ --with-languages set installed languages, defau esac]) AC_SUBST(LANGUAGES) -dnl Mac OS X bundle-based localization support -AC_ARG_WITH(bundledir, [ --with-bundledir set Mac OS X localization bundle directory ], +dnl OS X bundle-based localization support +AC_ARG_WITH(bundledir, [ --with-bundledir set OS X localization bundle directory ], CUPS_BUNDLEDIR="$withval", if test "x$uname" = xDarwin -a $uversion -ge 100; then CUPS_BUNDLEDIR="/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A" @@ -102,7 +102,7 @@ AC_ARG_WITH(local_protocols, [ --with-local-protocols set default BrowseLocalP if test x$with_local_protocols != xno; then if test "x$default_local_protocols" = "xdefault"; then - if test "x$DNSSDLIBS" != "x"; then + if test "x$DNSSD_BACKEND" != "x"; then CUPS_BROWSE_LOCAL_PROTOCOLS="dnssd" else CUPS_BROWSE_LOCAL_PROTOCOLS="" @@ -373,7 +373,7 @@ AC_SUBST(DEFAULT_IPP_PORT) AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT) dnl Web interface... -AC_ARG_ENABLE(webif, [ --enable-webif enable the web interface by default, default=no for Mac OS X]) +AC_ARG_ENABLE(webif, [ --enable-webif enable the web interface by default, default=no for OS X]) case "x$enable_webif" in xno) CUPS_WEBIF=No diff --git a/config-scripts/cups-directories.m4 b/config-scripts/cups-directories.m4 index 5b1d89b7b..010e5f5d7 100644 --- a/config-scripts/cups-directories.m4 +++ b/config-scripts/cups-directories.m4 @@ -3,7 +3,7 @@ dnl "$Id: cups-directories.m4 7799 2008-07-25 20:06:08Z mike $" dnl dnl Directory stuff for CUPS. dnl -dnl Copyright 2007-2011 by Apple Inc. +dnl Copyright 2007-2012 by Apple Inc. dnl Copyright 1997-2007 by Easy Software Products, all rights reserved. dnl dnl These coded instructions, statements, and computer programs are the @@ -424,7 +424,7 @@ AC_SUBST(CUPS_SERVERROOT) # Transient run-time state case "$uname" in Darwin*) - # Darwin (Mac OS X) + # Darwin (OS X) CUPS_STATEDIR="$CUPS_SERVERROOT" ;; *) diff --git a/config-scripts/cups-gssapi.m4 b/config-scripts/cups-gssapi.m4 index 5e70be5ef..36c878cf0 100644 --- a/config-scripts/cups-gssapi.m4 +++ b/config-scripts/cups-gssapi.m4 @@ -3,7 +3,7 @@ dnl "$Id$" dnl dnl GSSAPI/Kerberos library detection for CUPS. dnl -dnl Copyright 2007-2011 by Apple Inc. +dnl Copyright 2007-2012 by Apple Inc. dnl Copyright 2006-2007 by Easy Software Products. dnl dnl This file contains Kerberos support code, copyright 2006 by @@ -26,7 +26,7 @@ if test x$enable_gssapi != xno; then if test "x$KRB5CONFIG" != x; then case "$uname" in Darwin) - # Mac OS X weak-links to the Kerberos framework... + # OS X weak-links to the Kerberos framework... LIBGSSAPI="-weak_framework Kerberos" AC_MSG_CHECKING(for GSS framework) if test -d /System/Library/Frameworks/GSS.framework; then diff --git a/config-scripts/cups-manpages.m4 b/config-scripts/cups-manpages.m4 index a40fb5651..7420433c5 100644 --- a/config-scripts/cups-manpages.m4 +++ b/config-scripts/cups-manpages.m4 @@ -3,7 +3,7 @@ dnl "$Id: cups-manpages.m4 6649 2007-07-11 21:46:42Z mike $" dnl dnl Manpage stuff for CUPS. dnl -dnl Copyright 2007-2011 by Apple Inc. +dnl Copyright 2007-2012 by Apple Inc. dnl Copyright 1997-2006 by Easy Software Products, all rights reserved. dnl dnl These coded instructions, statements, and computer programs are the @@ -68,7 +68,7 @@ case "$uname" in MAN8DIR=1m ;; Linux* | GNU* | Darwin*) - # Linux, GNU Hurd, and Mac OS X + # Linux, GNU Hurd, and OS X MAN1EXT=1.gz MAN5EXT=5.gz MAN7EXT=7.gz diff --git a/config-scripts/cups-pam.m4 b/config-scripts/cups-pam.m4 index 9a281e785..72bf32fc3 100644 --- a/config-scripts/cups-pam.m4 +++ b/config-scripts/cups-pam.m4 @@ -3,7 +3,7 @@ dnl "$Id: cups-pam.m4 7960 2008-09-17 19:42:02Z mike $" dnl dnl PAM stuff for CUPS. dnl -dnl Copyright 2007-2011 by Apple Inc. +dnl Copyright 2007-2012 by Apple Inc. dnl Copyright 1997-2005 by Easy Software Products, all rights reserved. dnl dnl These coded instructions, statements, and computer programs are the @@ -61,7 +61,7 @@ if test x$enable_pam != xno; then case "$uname" in Darwin*) - # Darwin/Mac OS X + # Darwin/OS X if test "x$with_pam_module" != x; then PAMFILE="pam.$with_pam_module" elif test -f /usr/lib/pam/pam_opendirectory.so.2; then diff --git a/config.h.in b/config.h.in index 4081f7db8..32a2d715c 100644 --- a/config.h.in +++ b/config.h.in @@ -569,7 +569,7 @@ /* - * Do we have Mac OS X 10.4's mbr_XXX functions? + * Do we have OS X 10.4's mbr_XXX functions? */ #undef HAVE_MEMBERSHIP_H @@ -731,7 +731,7 @@ /* - * Location of Mac OS X localization bundle, if any. + * Location of OS X localization bundle, if any. */ #undef CUPS_BUNDLEDIR @@ -752,6 +752,23 @@ #undef HAVE_MXML_H +/* + * Do we have the C99 abs() function? + */ + +#undef HAVE_ABS +#if !defined(HAVE_ABS) && !defined(abs) +# if defined(__GNUC__) || __STDC_VERSION__ >= 199901L +# define abs(x) _cups_abs(x) +static inline int _cups_abs(int i) { return (i < 0 ? -i : i); } +# elif defined(_MSC_VER) +# define abs(x) _cups_abs(x) +static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); } +# else +# define abs(x) ((x) < 0 ? -(x) : (x)) +# endif /* __GNUC__ || __STDC_VERSION__ */ +#endif /* !HAVE_ABS && !abs */ + #endif /* !_CUPS_CONFIG_H_ */ /* diff --git a/configure.in b/configure.in index 6e3977bea..e7c8cd00f 100644 --- a/configure.in +++ b/configure.in @@ -74,6 +74,7 @@ AC_OUTPUT(Makedefs man/cups-deviced.man man/cups-driverd.man man/cups-lpd.man + man/cups-snmp.man man/cupsaddsmb.man man/cupsd.conf.man man/cupsd.man diff --git a/cups/Dependencies b/cups/Dependencies index 276dd90c6..10beea26b 100644 --- a/cups/Dependencies +++ b/cups/Dependencies @@ -1,211 +1,221 @@ -adminutil.o: adminutil.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h adminutil.h +adminutil.o: adminutil.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h adminutil.h array.o: array.c string-private.h ../config.h debug-private.h \ ../cups/versioning.h array-private.h ../cups/array.h -attr.o: attr.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h -auth.o: auth.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h +attr.o: attr.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +auth.o: auth.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h backchannel.o: backchannel.c cups.h file.h versioning.h ipp.h http.h \ array.h language.h -backend.o: backend.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h backend.h -conflicts.o: conflicts.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -custom.o: custom.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -debug.o: debug.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h -dest.o: dest.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h -dest-job.o: dest-job.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -dest-localization.o: dest-localization.c cups-private.h ../cups/cups.h \ - file.h versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -dest-options.o: dest-options.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h +backend.o: backend.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h backend.h +conflicts.o: conflicts.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +custom.o: custom.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +debug.o: debug.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +dest.o: dest.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +dest-job.o: dest-job.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +dest-localization.o: dest-localization.c cups-private.h string-private.h \ + ../config.h debug-private.h ../cups/versioning.h ipp-private.h \ + ../cups/ipp.h http.h array.h http-private.h md5-private.h \ + language-private.h ../cups/transcode.h language.h pwg-private.h \ + ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h +dest-options.o: dest-options.c cups-private.h string-private.h \ + ../config.h debug-private.h ../cups/versioning.h ipp-private.h \ + ../cups/ipp.h http.h array.h http-private.h md5-private.h \ + language-private.h ../cups/transcode.h language.h pwg-private.h \ + ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h dir.o: dir.c string-private.h ../config.h debug-private.h \ ../cups/versioning.h dir.h -emit.o: emit.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h -encode.o: encode.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -file.o: file.c file-private.h cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -getdevices.o: getdevices.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h +emit.o: emit.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +encode.o: encode.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +file.o: file.c file-private.h cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +getdevices.o: getdevices.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h getifaddrs.o: getifaddrs.c http-private.h ../config.h ../cups/http.h \ versioning.h array.h md5-private.h ipp-private.h ../cups/ipp.h -getputfile.o: getputfile.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -globals.o: globals.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -http.o: http.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h -http-addr.o: http-addr.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -http-addrlist.o: http-addrlist.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -http-support.o: http-support.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -ipp.o: ipp.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h -ipp-support.o: ipp-support.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -langprintf.o: langprintf.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -language.o: language.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -localize.o: localize.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -mark.o: mark.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h +getputfile.o: getputfile.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +globals.o: globals.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +http.o: http.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +http-addr.o: http-addr.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +http-addrlist.o: http-addrlist.c cups-private.h string-private.h \ + ../config.h debug-private.h ../cups/versioning.h ipp-private.h \ + ../cups/ipp.h http.h array.h http-private.h md5-private.h \ + language-private.h ../cups/transcode.h language.h pwg-private.h \ + ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h +http-support.o: http-support.c cups-private.h string-private.h \ + ../config.h debug-private.h ../cups/versioning.h ipp-private.h \ + ../cups/ipp.h http.h array.h http-private.h md5-private.h \ + language-private.h ../cups/transcode.h language.h pwg-private.h \ + ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h +ipp.o: ipp.c cups-private.h string-private.h ../config.h debug-private.h \ + ../cups/versioning.h ipp-private.h ../cups/ipp.h http.h array.h \ + http-private.h md5-private.h language-private.h ../cups/transcode.h \ + language.h pwg-private.h ../cups/cups.h file.h ppd-private.h \ + ../cups/ppd.h thread-private.h +ipp-support.o: ipp-support.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +langprintf.o: langprintf.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +language.o: language.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +localize.o: localize.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +mark.o: mark.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h md5.o: md5.c md5-private.h string-private.h ../config.h md5passwd.o: md5passwd.c http-private.h ../config.h ../cups/http.h \ versioning.h array.h md5-private.h ipp-private.h ../cups/ipp.h \ string-private.h -notify.o: notify.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -options.o: options.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h +notify.o: notify.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +options.o: options.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h page.o: page.c string-private.h ../config.h debug-private.h \ ../cups/versioning.h ppd.h cups.h file.h ipp.h http.h array.h \ language.h -ppd.o: ppd.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h -ppd-cache.o: ppd-cache.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -pwg-media.o: pwg-media.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -request.o: request.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h +ppd.o: ppd.c cups-private.h string-private.h ../config.h debug-private.h \ + ../cups/versioning.h ipp-private.h ../cups/ipp.h http.h array.h \ + http-private.h md5-private.h language-private.h ../cups/transcode.h \ + language.h pwg-private.h ../cups/cups.h file.h ppd-private.h \ + ../cups/ppd.h thread-private.h +ppd-cache.o: ppd-cache.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +pwg-media.o: pwg-media.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +request.o: request.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h sidechannel.o: sidechannel.c sidechannel.h versioning.h cups-private.h \ - ../cups/cups.h file.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -snmp.o: snmp.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h \ - snmp-private.h + string-private.h ../config.h debug-private.h ipp-private.h \ + ../cups/ipp.h http.h array.h http-private.h md5-private.h \ + language-private.h ../cups/transcode.h language.h pwg-private.h \ + ../cups/cups.h file.h ppd-private.h ../cups/ppd.h thread-private.h +snmp.o: snmp.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h snmp-private.h snprintf.o: snprintf.c string-private.h ../config.h string.o: string.c string-private.h ../config.h debug-private.h \ ../cups/versioning.h thread-private.h array.h -tempfile.o: tempfile.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -thread.o: thread.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -transcode.o: transcode.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -usersys.o: usersys.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -util.o: util.c cups-private.h ../cups/cups.h file.h versioning.h ipp.h \ - http.h array.h language.h string-private.h ../config.h debug-private.h \ - ppd-private.h ../cups/ppd.h pwg-private.h http-private.h md5-private.h \ - ipp-private.h language-private.h ../cups/transcode.h thread-private.h +tempfile.o: tempfile.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +thread.o: thread.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +transcode.o: transcode.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +usersys.o: usersys.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +util.o: util.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h testadmin.o: testadmin.c adminutil.h cups.h file.h versioning.h ipp.h \ http.h array.h language.h string-private.h ../config.h testarray.o: testarray.c string-private.h ../config.h debug-private.h \ @@ -223,28 +233,28 @@ testi18n.o: testi18n.c string-private.h ../config.h language-private.h \ ../cups/transcode.h language.h array.h versioning.h testipp.o: testipp.c file.h versioning.h string-private.h ../config.h \ ipp-private.h ../cups/ipp.h http.h array.h -testoptions.o: testoptions.c cups-private.h ../cups/cups.h file.h \ - versioning.h ipp.h http.h array.h language.h string-private.h \ - ../config.h debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -testlang.o: testlang.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h -testppd.o: testppd.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h +testoptions.o: testoptions.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +testlang.o: testlang.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h +testppd.o: testppd.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h testpwg.o: testpwg.c ppd-private.h ../cups/cups.h file.h versioning.h \ ipp.h http.h array.h language.h ../cups/ppd.h pwg-private.h \ file-private.h cups-private.h string-private.h ../config.h \ - debug-private.h http-private.h md5-private.h ipp-private.h \ + debug-private.h ipp-private.h http-private.h md5-private.h \ language-private.h ../cups/transcode.h thread-private.h -testsnmp.o: testsnmp.c cups-private.h ../cups/cups.h file.h versioning.h \ - ipp.h http.h array.h language.h string-private.h ../config.h \ - debug-private.h ppd-private.h ../cups/ppd.h pwg-private.h \ - http-private.h md5-private.h ipp-private.h language-private.h \ - ../cups/transcode.h thread-private.h snmp-private.h +testsnmp.o: testsnmp.c cups-private.h string-private.h ../config.h \ + debug-private.h ../cups/versioning.h ipp-private.h ../cups/ipp.h \ + http.h array.h http-private.h md5-private.h language-private.h \ + ../cups/transcode.h language.h pwg-private.h ../cups/cups.h file.h \ + ppd-private.h ../cups/ppd.h thread-private.h snmp-private.h diff --git a/cups/adminutil.c b/cups/adminutil.c index ee6f47ea3..803d2203c 100644 --- a/cups/adminutil.c +++ b/cups/adminutil.c @@ -3,7 +3,7 @@ * * Administration utility API definitions for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 2001-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -65,7 +65,7 @@ static void write_option(cups_file_t *dstfp, int order, /* * 'cupsAdminCreateWindowsPPD()' - Create the Windows PPD file for a printer. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - PPD file or NULL */ @@ -393,7 +393,7 @@ cupsAdminCreateWindowsPPD( /* * 'cupsAdminExportSamba()' - Export a printer to Samba. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 on success, 0 on failure */ @@ -843,7 +843,7 @@ cupsAdminExportSamba( * The returned settings should be freed with cupsFreeOptions() when * you are done with them. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ int /* O - 1 on success, 0 on failure */ @@ -1159,7 +1159,7 @@ cupsAdminGetServerSettings( /* * 'cupsAdminSetServerSettings()' - Set settings on the server. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ int /* O - 1 on success, 0 on failure */ diff --git a/cups/api-filter.shtml b/cups/api-filter.shtml index e81159e6e..e95c8d08f 100644 --- a/cups/api-filter.shtml +++ b/cups/api-filter.shtml @@ -3,7 +3,7 @@ Filter and backend programming introduction for CUPS. - Copyright 2007-2011 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the @@ -81,7 +81,7 @@ directory to write to.

In addition, some operating systems provide additional security mechanisms that further limit file system access, even for backends running as root. On -Mac OS X, for example, no backend may write to a user's home directory.

+OS X, for example, no backend may write to a user's home directory.

Canceled Jobs and Signal Handling

@@ -153,7 +153,7 @@ when running print filters and backends:

APPLE_LANGUAGE
The Apple language identifier associated with the job - (Mac OS X only).
+ (OS X only).
CHARSET
The job character set, typically "utf-8".
@@ -474,7 +474,7 @@ sub-state and not an issue that applies when a job is not printing.

Note:

"STATE:" messages often provide visible alerts to the user. For example, -on Mac OS X setting a printer-state-reason value with an "-error" or +on OS X setting a printer-state-reason value with an "-error" or "-warning" suffix will cause the printer's dock item to bounce if the corresponding reason is localized with a cupsIPPReason keyword in the printer's PPD file.

diff --git a/cups/api-ppd.header b/cups/api-ppd.header index 9eae26b48..ef0d05122 100644 --- a/cups/api-ppd.header +++ b/cups/api-ppd.header @@ -3,7 +3,7 @@ PPD API header for CUPS. - Copyright 2008-2011 by Apple Inc. + Copyright 2008-2012 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright @@ -14,7 +14,7 @@

PPD API (DEPRECATED)

-
The PPD API is deprecated starting in CUPS 1.6. Please use the new Job Ticket APIs in the CUPS API documentation. These functions will be removed in a future release of CUPS.
+
The PPD API is deprecated starting in CUPS 1.6/OS X 10.8. Please use the new Job Ticket APIs in the CUPS API documentation. These functions will be removed in a future release of CUPS.
diff --git a/cups/api-ppd.shtml b/cups/api-ppd.shtml index a8ecc095c..6319f23f1 100644 --- a/cups/api-ppd.shtml +++ b/cups/api-ppd.shtml @@ -3,7 +3,7 @@ PPD API introduction for CUPS. - Copyright 2007-2011 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the @@ -15,7 +15,7 @@

Overview

-
The PPD API is deprecated starting in CUPS 1.6. Please use the new Job Ticket APIs in the CUPS API documentation. These functions will be removed in a future release of CUPS.
+
The PPD API is deprecated starting in CUPS 1.6/OS X 10.8. Please use the new Job Ticket APIs in the CUPS API documentation. These functions will be removed in a future release of CUPS.

The CUPS PPD API provides read-only access the data in PostScript Printer Description ("PPD") files which are used for all printers with a driver. With diff --git a/cups/array.c b/cups/array.c index b2b4679b1..2fb7701c0 100644 --- a/cups/array.c +++ b/cups/array.c @@ -3,7 +3,7 @@ * * Sorted array routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -110,7 +110,7 @@ static int cups_array_find(cups_array_t *a, void *e, int prev, int *rdiff); * appended at the end of the run of identical elements. For unsorted arrays, * the element is appended to the end of the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 on success, 0 on failure */ @@ -202,7 +202,7 @@ _cupsArrayAddStrings(cups_array_t *a, /* I - Array */ * The caller is responsible for freeing the memory used by the * elements themselves. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void @@ -244,7 +244,7 @@ cupsArrayClear(cups_array_t *a) /* I - Array */ /* * 'cupsArrayCount()' - Get the number of elements in the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - Number of elements */ @@ -271,7 +271,7 @@ cupsArrayCount(cups_array_t *a) /* I - Array */ * The current element is undefined until you call @link cupsArrayFind@, * @link cupsArrayFirst@, or @link cupsArrayIndex@, or @link cupsArrayLast@. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - Element */ @@ -301,7 +301,7 @@ cupsArrayCurrent(cups_array_t *a) /* I - Array */ * The caller is responsible for freeing the memory used by the * elements themselves. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void @@ -345,7 +345,7 @@ cupsArrayDelete(cups_array_t *a) /* I - Array */ /* * 'cupsArrayDup()' - Duplicate the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_array_t * /* O - Duplicate array */ @@ -430,7 +430,7 @@ cupsArrayDup(cups_array_t *a) /* I - Array */ /* * 'cupsArrayFind()' - Find an element in the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - Element found or @code NULL@ */ @@ -525,7 +525,7 @@ cupsArrayFind(cups_array_t *a, /* I - Array */ /* * 'cupsArrayFirst()' - Get the first element in the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - First element or @code NULL@ if the array is empty */ @@ -554,7 +554,7 @@ cupsArrayFirst(cups_array_t *a) /* I - Array */ * The current element is undefined until you call @link cupsArrayFind@, * @link cupsArrayFirst@, or @link cupsArrayIndex@, or @link cupsArrayLast@. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ int /* O - Index of the current element, starting at 0 */ @@ -570,7 +570,7 @@ cupsArrayGetIndex(cups_array_t *a) /* I - Array */ /* * 'cupsArrayGetInsert()' - Get the index of the last inserted element. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ int /* O - Index of the last inserted element, starting at 0 */ @@ -586,7 +586,7 @@ cupsArrayGetInsert(cups_array_t *a) /* I - Array */ /* * 'cupsArrayIndex()' - Get the N-th element in the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - N-th element or @code NULL@ */ @@ -609,7 +609,7 @@ cupsArrayIndex(cups_array_t *a, /* I - Array */ * inserted at the beginning of the run of identical elements. For unsorted * arrays, the element is inserted at the beginning of the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on failure, 1 on success */ @@ -639,7 +639,7 @@ cupsArrayInsert(cups_array_t *a, /* I - Array */ /* * 'cupsArrayLast()' - Get the last element in the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - Last element or @code NULL@ if the array is empty */ @@ -670,7 +670,7 @@ cupsArrayLast(cups_array_t *a) /* I - Array */ * data pointer argument can safely be omitted when not required so functions * like @code strcmp@ can be used for sorted string arrays. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_array_t * /* O - Array */ @@ -692,7 +692,7 @@ cupsArrayNew(cups_array_func_t f, /* I - Comparison function or @code NULL@ for * The hash function ("h") is used to implement cached lookups with the * specified hash size ("hsize"). * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ cups_array_t * /* O - Array */ @@ -722,7 +722,7 @@ cupsArrayNew2(cups_array_func_t f, /* I - Comparison function or @code NULL@ fo * The free function ("cf") is used to automatically free/release elements when * removed or the array is deleted. * - * @since CUPS 1.5/Mac OS X 10.7@ + * @since CUPS 1.5/OS X 10.7@ */ cups_array_t * /* O - Array */ @@ -805,7 +805,7 @@ _cupsArrayNewStrings(const char *s) /* I - Comma-delimited strings or NULL */ * @link cupsArrayFirst@, or @link cupsArrayIndex@, or @link cupsArrayLast@ * to set the current element. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - Next element or @code NULL@ */ @@ -838,7 +838,7 @@ cupsArrayNext(cups_array_t *a) /* I - Array */ * @link cupsArrayFirst@, or @link cupsArrayIndex@, or @link cupsArrayLast@ * to set the current element. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - Previous element or @code NULL@ */ @@ -871,7 +871,7 @@ cupsArrayPrev(cups_array_t *a) /* I - Array */ * The caller is responsible for freeing the memory used by the * removed element. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 on success, 0 on failure */ @@ -936,7 +936,7 @@ cupsArrayRemove(cups_array_t *a, /* I - Array */ /* * 'cupsArrayRestore()' - Reset the current element to the last @link cupsArraySave@. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - New current element */ @@ -967,7 +967,7 @@ cupsArrayRestore(cups_array_t *a) /* I - Array */ * * The save/restore stack is guaranteed to be at least 32 elements deep. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 on success, 0 on failure */ @@ -989,7 +989,7 @@ cupsArraySave(cups_array_t *a) /* I - Array */ /* * 'cupsArrayUserData()' - Return the user data for an array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void * /* O - User data */ @@ -1005,7 +1005,7 @@ cupsArrayUserData(cups_array_t *a) /* I - Array */ /* * 'cups_array_add()' - Insert or append an element to the array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ static int /* O - 1 on success, 0 on failure */ diff --git a/cups/attr.c b/cups/attr.c index 19c27d582..da7a72537 100644 --- a/cups/attr.c +++ b/cups/attr.c @@ -3,7 +3,7 @@ * * PPD model-specific attribute routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -30,7 +30,7 @@ /* * 'ppdFindAttr()' - Find the first matching attribute. * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ ppd_attr_t * /* O - Attribute or @code NULL@ if not found */ @@ -87,7 +87,7 @@ ppdFindAttr(ppd_file_t *ppd, /* I - PPD file data */ /* * 'ppdFindNextAttr()' - Find the next matching attribute. * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ ppd_attr_t * /* O - Attribute or @code NULL@ if not found */ diff --git a/cups/auth.c b/cups/auth.c index 7e091bee0..4b0856ade 100644 --- a/cups/auth.c +++ b/cups/auth.c @@ -3,7 +3,7 @@ * * Authentication functions for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products. * * This file contains Kerberos support code, copyright 2006 by @@ -115,7 +115,7 @@ static int cups_local_auth(http_t *http); * This function should be called in response to a @code HTTP_UNAUTHORIZED@ * status, prior to resubmitting your request. * - * @since CUPS 1.1.20/Mac OS X 10.4@ + * @since CUPS 1.1.20/OS X 10.4@ */ int /* O - 0 on success, -1 on error */ diff --git a/cups/backchannel.c b/cups/backchannel.c index 496b1f768..3ee1dbc97 100644 --- a/cups/backchannel.c +++ b/cups/backchannel.c @@ -3,7 +3,7 @@ * * Backchannel functions for CUPS. * - * Copyright 2007-2010 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -18,7 +18,7 @@ * * cupsBackChannelRead() - Read data from the backchannel. * cupsBackChannelWrite() - Write data to the backchannel. - * cups_setup() - Setup select() + * cups_setup() - Setup select() */ /* @@ -50,7 +50,7 @@ static void cups_setup(fd_set *set, struct timeval *tval, * parameter controls how many seconds to wait for the data - use 0.0 to * return immediately if there is no data, -1.0 to wait for data indefinitely. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ssize_t /* O - Bytes read or -1 on error */ @@ -101,7 +101,7 @@ cupsBackChannelRead(char *buffer, /* I - Buffer to read into */ * 0.0 to return immediately if the data cannot be written, -1.0 to wait * indefinitely. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ssize_t /* O - Bytes written or -1 on error */ @@ -178,7 +178,7 @@ cupsBackChannelWrite( /* - * 'cups_setup()' - Setup select() + * 'cups_setup()' - Setup select() */ static void diff --git a/cups/backend.c b/cups/backend.c index 6a5e078ec..bed23f464 100644 --- a/cups/backend.c +++ b/cups/backend.c @@ -44,7 +44,7 @@ static void quote_string(const char *s); * variable or the device URI passed in argv[0], whichever is found * first. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ const char * /* O - Device URI or @code NULL@ */ @@ -54,6 +54,8 @@ cupsBackendDeviceURI(char **argv) /* I - Command-line arguments */ *auth_info_required; /* AUTH_INFO_REQUIRED env var */ _cups_globals_t *cg = _cupsGlobals(); /* Global info */ int options; /* Resolve options */ + ppd_file_t *ppd; /* PPD file */ + ppd_attr_t *ppdattr; /* PPD attribute */ if ((device_uri = getenv("DEVICE_URI")) == NULL) @@ -69,6 +71,15 @@ cupsBackendDeviceURI(char **argv) /* I - Command-line arguments */ !strcmp(auth_info_required, "negotiate")) options |= _HTTP_RESOLVE_FQDN; + if ((ppd = ppdOpenFile(getenv("PPD"))) != NULL) + { + if ((ppdattr = ppdFindAttr(ppd, "cupsIPPFaxOut", NULL)) != NULL && + !_cups_strcasecmp(ppdattr->value, "true")) + options |= _HTTP_RESOLVE_FAXOUT; + + ppdClose(ppd); + } + return (_httpResolveURI(device_uri, cg->resolved_uri, sizeof(cg->resolved_uri), options, NULL, NULL)); } @@ -81,7 +92,7 @@ cupsBackendDeviceURI(char **argv) /* I - Command-line arguments */ * It handles quoting of special characters in the device-make-and-model, * device-info, device-id, and device-location strings. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ void diff --git a/cups/conflicts.c b/cups/conflicts.c index cded4585e..456f69053 100644 --- a/cups/conflicts.c +++ b/cups/conflicts.c @@ -3,7 +3,7 @@ * * Option marking routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -79,7 +79,7 @@ static cups_array_t *ppd_test_constraints(ppd_file_t *ppd, * the conflicting options. The returned option array must be freed using * @link cupsFreeOptions@. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ int /* O - Number of conflicting options */ @@ -178,7 +178,7 @@ cupsGetConflicts( * choice for the conflicting option, then iterating over all possible choices * until a non-conflicting option choice is found. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ int /* O - 1 on success, 0 on failure */ @@ -650,7 +650,7 @@ ppdConflicts(ppd_file_t *ppd) /* I - PPD to check */ * This function tests whether a particular option choice is available based * on constraints against options in the "InstallableOptions" group. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ int /* O - 1 if conflicting, 0 if not conflicting */ diff --git a/cups/cups.h b/cups/cups.h index 7425ce16e..8d19651d6 100644 --- a/cups/cups.h +++ b/cups/cups.h @@ -52,10 +52,10 @@ extern "C" { * Constants... */ -# define CUPS_VERSION 1.0599 +# define CUPS_VERSION 1.0600 # define CUPS_VERSION_MAJOR 1 # define CUPS_VERSION_MINOR 6 -# define CUPS_VERSION_PATCH -1 +# define CUPS_VERSION_PATCH 0 # define CUPS_BC_FD 3 /* Back-channel file descriptor for @@ -230,20 +230,20 @@ enum cups_ptype_e /* Printer type/capability bit CUPS_PRINTER_FAX = 0x40000, /* Fax queue */ CUPS_PRINTER_REJECTING = 0x80000, /* Printer is rejecting jobs */ CUPS_PRINTER_DELETE = 0x100000, /* Delete printer - * @since CUPS 1.2/Mac OS X 10.5@ */ + * @since CUPS 1.2/OS X 10.5@ */ CUPS_PRINTER_NOT_SHARED = 0x200000, /* Printer is not shared - * @since CUPS 1.2/Mac OS X 10.5@ */ + * @since CUPS 1.2/OS X 10.5@ */ CUPS_PRINTER_AUTHENTICATED = 0x400000,/* Printer requires authentication - * @since CUPS 1.2/Mac OS X 10.5@ */ + * @since CUPS 1.2/OS X 10.5@ */ CUPS_PRINTER_COMMANDS = 0x800000, /* Printer supports maintenance commands - * @since CUPS 1.2/Mac OS X 10.5@ */ + * @since CUPS 1.2/OS X 10.5@ */ CUPS_PRINTER_DISCOVERED = 0x1000000, /* Printer was automatically discovered * and added @private@ * @since Deprecated@ */ CUPS_PRINTER_SCANNER = 0x2000000, /* Scanner-only device - * @since CUPS 1.4/Mac OS X 10.6@ */ + * @since CUPS 1.4/OS X 10.6@ */ CUPS_PRINTER_MFP = 0x4000000, /* Printer with scanning capabilities - * @since CUPS 1.4/Mac OS X 10.6@ */ + * @since CUPS 1.4/OS X 10.6@ */ CUPS_PRINTER_OPTIONS = 0x6fffc /* ~(CLASS | REMOTE | IMPLICIT | * DEFAULT | FAX | REJECTING | DELETE | * NOT_SHARED | AUTHENTICATED | @@ -267,7 +267,7 @@ typedef struct cups_dest_s /**** Destination ****/ typedef struct _cups_dinfo_s cups_dinfo_t; /* Destination capability and status - * information @since CUPS 1.6@ */ + * information @since CUPS 1.6/OS X 10.8@ */ typedef struct cups_job_s /**** Job ****/ { @@ -284,7 +284,7 @@ typedef struct cups_job_s /**** Job ****/ time_t processing_time; /* Time the job was processed */ } cups_job_t; -typedef struct cups_size_s /**** Media Size @since CUPS 1.6@ ****/ +typedef struct cups_size_s /**** Media Size @since CUPS 1.6/OS X 10.8@ ****/ { char media[128]; /* Media name to use */ int width, /* Width in hundredths of millimeters */ @@ -304,17 +304,17 @@ typedef int (*cups_client_cert_cb_t)(http_t *http, void *tls, cups_array_t *distinguished_names, void *user_data); /* Client credentials callback - * @since CUPS 1.5/Mac OS X 10.7@ */ + * @since CUPS 1.5/OS X 10.7@ */ typedef int (*cups_dest_cb_t)(void *user_data, unsigned flags, cups_dest_t *dest); /* Destination enumeration callback - * @since CUPS 1.6@ */ + * @since CUPS 1.6/OS X 10.8@ */ # ifdef __BLOCKS__ typedef int (^cups_dest_block_t)(unsigned flags, cups_dest_t *dest); /* Destination enumeration block - * @since CUPS 1.6@ */ + * @since CUPS 1.6/OS X 10.8@ */ # endif /* __BLOCKS__ */ typedef void (*cups_device_cb_t)(const char *device_class, @@ -323,7 +323,7 @@ typedef void (*cups_device_cb_t)(const char *device_class, const char *device_uri, const char *device_location, void *user_data); /* Device callback - * @since CUPS 1.4/Mac OS X 10.6@ */ + * @since CUPS 1.4/OS X 10.6@ */ typedef const char *(*cups_password_cb_t)(const char *prompt); /* Password callback */ @@ -333,12 +333,12 @@ typedef const char *(*cups_password_cb2_t)(const char *prompt, http_t *http, const char *resource, void *user_data); /* New password callback - * @since CUPS 1.4/Mac OS X 10.6@ */ + * @since CUPS 1.4/OS X 10.6@ */ typedef int (*cups_server_cert_cb_t)(http_t *http, void *tls, cups_array_t *certs, void *user_data); /* Server credentials callback - * @since CUPS 1.5/Mac OS X 10.7@ */ + * @since CUPS 1.5/OS X 10.7@ */ /* @@ -429,7 +429,7 @@ extern int cupsPrintFiles2(http_t *http, const char *name, extern int cupsSetDests2(http_t *http, int num_dests, cups_dest_t *dests) _CUPS_API_1_1_21; -/**** New in CUPS 1.2/Mac OS X 10.5 ****/ +/**** New in CUPS 1.2/OS X 10.5 ****/ extern ssize_t cupsBackChannelRead(char *buffer, size_t bytes, double timeout) _CUPS_API_1_2; extern ssize_t cupsBackChannelWrite(const char *buffer, size_t bytes, @@ -446,7 +446,7 @@ extern int cupsRemoveOption(const char *name, int num_options, cups_option_t **options) _CUPS_API_1_2; extern cups_file_t *cupsTempFile2(char *filename, int len) _CUPS_API_1_2; -/**** New in CUPS 1.3/Mac OS X 10.5 ****/ +/**** New in CUPS 1.3/OS X 10.5 ****/ extern ipp_t *cupsDoIORequest(http_t *http, ipp_t *request, const char *resource, int infile, int outfile) _CUPS_API_1_3; @@ -461,7 +461,7 @@ extern void cupsSetDefaultDest(const char *name, int num_dests, cups_dest_t *dests) _CUPS_API_1_3; -/**** New in CUPS 1.4/Mac OS X 10.6 ****/ +/**** New in CUPS 1.4/OS X 10.6 ****/ extern ipp_status_t cupsCancelJob2(http_t *http, const char *name, int job_id, int purge) _CUPS_API_1_4; extern int cupsCreateJob(http_t *http, const char *name, @@ -498,14 +498,14 @@ extern http_status_t cupsStartDocument(http_t *http, const char *name, extern http_status_t cupsWriteRequestData(http_t *http, const char *buffer, size_t length) _CUPS_API_1_4; -/**** New in CUPS 1.5 ****/ +/**** New in CUPS 1.5/OS X 10.7 ****/ extern void cupsSetClientCertCB(cups_client_cert_cb_t cb, void *user_data) _CUPS_API_1_5; extern int cupsSetCredentials(cups_array_t *certs) _CUPS_API_1_5; extern void cupsSetServerCertCB(cups_server_cert_cb_t cb, void *user_data) _CUPS_API_1_5; -/**** New in CUPS 1.6 ****/ +/**** New in CUPS 1.6/OS X 10.8 ****/ extern ipp_status_t cupsCancelDestJob(http_t *http, cups_dest_t *dest, int job_id) _CUPS_API_1_6; extern int cupsCheckDestSupported(http_t *http, cups_dest_t *dest, diff --git a/cups/custom.c b/cups/custom.c index 471361cc4..4c4cc8ace 100644 --- a/cups/custom.c +++ b/cups/custom.c @@ -3,7 +3,7 @@ * * PPD custom option routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -41,7 +41,7 @@ /* * 'ppdFindCustomOption()' - Find a custom option. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ppd_coption_t * /* O - Custom option or NULL */ @@ -62,7 +62,7 @@ ppdFindCustomOption(ppd_file_t *ppd, /* I - PPD file */ /* * 'ppdFindCustomParam()' - Find a parameter for a custom option. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ppd_cparam_t * /* O - Custom parameter or NULL */ @@ -88,7 +88,7 @@ ppdFindCustomParam(ppd_coption_t *opt, /* I - Custom option */ /* * 'ppdFirstCustomParam()' - Return the first parameter for a custom option. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ppd_cparam_t * /* O - Custom parameter or NULL */ @@ -104,7 +104,7 @@ ppdFirstCustomParam(ppd_coption_t *opt) /* I - Custom option */ /* * 'ppdNextCustomParam()' - Return the next parameter for a custom option. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ppd_cparam_t * /* O - Custom parameter or NULL */ diff --git a/cups/dest-job.c b/cups/dest-job.c index 01f8578e0..dc4f0879b 100644 --- a/cups/dest-job.c +++ b/cups/dest-job.c @@ -37,7 +37,7 @@ * Returns IPP_OK on success and IPP_NOT_AUTHORIZED or IPP_FORBIDDEN on * failure. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_status_t @@ -56,7 +56,7 @@ cupsCancelDestJob(http_t *http, /* I - Connection to destination */ * "job_id" is the job ID returned by cupsCreateDestJob. Returns @code IPP_OK@ * on success. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_status_t /* O - IPP status code */ @@ -140,7 +140,7 @@ cupsCloseDestJob( * Returns @code IPP_OK@ or @code IPP_OK_SUBST@ on success, saving the job ID * in the variable pointed to by "job_id". * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_status_t /* O - IPP status code */ @@ -228,7 +228,7 @@ cupsCreateDestJob( * * Returns @code IPP_OK@ or @code IPP_OK_SUBST@ on success. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_status_t /* O - Status of document submission */ @@ -275,7 +275,7 @@ cupsFinishDestDocument( * if this is the last document to be submitted in the job. Returns * @code HTTP_CONTINUE@ on success. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ http_status_t /* O - Status of document creation */ diff --git a/cups/dest-localization.c b/cups/dest-localization.c index 9d0d8b1d7..375386909 100644 --- a/cups/dest-localization.c +++ b/cups/dest-localization.c @@ -35,7 +35,7 @@ * The returned string is stored in the localization array and will become * invalid if the localization array is deleted. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ const char * /* O - Localized string */ @@ -56,7 +56,7 @@ cupsLocalizeDestOption( * The returned string is stored in the localization array and will become * invalid if the localization array is deleted. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ const char * /* O - Localized string */ diff --git a/cups/dest-options.c b/cups/dest-options.c index a36b5334e..cfdf6077e 100644 --- a/cups/dest-options.c +++ b/cups/dest-options.c @@ -62,7 +62,7 @@ static int cups_is_close_media_db(_cups_media_db_t *a, * * Returns 1 if supported, 0 otherwise. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 if supported, 0 otherwise */ @@ -249,7 +249,7 @@ cupsCheckDestSupported( * If cupsCopyDestConflicts returns 1 but "num_resolved" and "resolved" are set * to 0 and NULL, respectively, then the conflict cannot be resolved. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 if there is a conflict */ @@ -308,7 +308,7 @@ cupsCopyDestConflicts( * The caller is responsible for calling @link cupsFreeDestInfo@ on the return * value. @code NULL@ is returned on error. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ cups_dinfo_t * /* O - Destination information */ @@ -459,7 +459,7 @@ cupsFreeDestInfo(cups_dinfo_t *dinfo) /* I - Destination information */ * * Returns 1 when there is a match and 0 if there is not a match. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on match, 0 on failure */ @@ -525,7 +525,7 @@ cupsGetDestMediaByName( * * Returns 1 when there is a match and 0 if there is not a match. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on match, 0 on failure */ diff --git a/cups/dest.c b/cups/dest.c index bf9a0dcc4..ee9d57208 100644 --- a/cups/dest.c +++ b/cups/dest.c @@ -544,7 +544,7 @@ _cupsAppleSetUseLastPrinter( * to by "cancel" is non-zero, or the callback function (or block) returns 0, * The caller is responsible for calling httpClose() on the returned object. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ http_t * /* O - Connection to server or @code NULL@ */ @@ -710,7 +710,7 @@ cupsConnectDest( * to by "cancel" is non-zero, or the callback function (or block) returns 0, * The caller is responsible for calling httpClose() on the returned object. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ http_t * /* O - Connection to server or @code NULL@ */ @@ -736,7 +736,7 @@ cupsConnectDestBlock( * copy) - for use with the cupsEnumDests* functions. The caller is responsible * for calling cupsFreeDests() on the returned object(s). * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int @@ -816,7 +816,7 @@ cupsCopyDest(cups_dest_t *dest, * Enumeration happens on the current thread and does not return until all * destinations have been enumerated or the callback function returns 0. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -860,6 +860,8 @@ cupsEnumDests( * Range check input... */ + (void)flags; + if (!cb) return (0); @@ -1028,7 +1030,7 @@ cupsEnumDests( * Enumeration happens on the current thread and does not return until all * destinations have been enumerated or the block returns 0. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -1208,7 +1210,7 @@ _cupsGetDestResource( * Free the memory used by the destination array using the @link cupsFreeDests@ * function. * - * Note: On Mac OS X this function also gets the default paper from the system + * Note: On OS X this function also gets the default paper from the system * preferences (~/L/P/org.cups.PrintingPrefs.plist) and includes it in the * options array for each destination that supports it. */ @@ -1501,7 +1503,7 @@ cupsGetDests(cups_dest_t **dests) /* O - Destinations */ * Use the @link cupsFreeDests@ function to free the destination list and * the @link cupsGetDest@ function to find a particular destination. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ int /* O - Number of destinations */ @@ -1684,7 +1686,7 @@ cupsGetDests2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_ * The returned destination must be freed using @link cupsFreeDests@ with a * "num_dests" value of 1. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ cups_dest_t * /* O - Destination or @code NULL@ */ @@ -1809,7 +1811,7 @@ cupsGetNamedDest(http_t *http, /* I - Connection to server or @code CUPS_HTT * @link cupsSetDests@ or @link cupsSetDests2@ functions to save the new * options for the user. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ int /* O - New number of destinations */ @@ -1855,7 +1857,7 @@ cupsRemoveDest(const char *name, /* I - Destination name */ /* * 'cupsSetDefaultDest()' - Set the default destination. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ void @@ -1910,7 +1912,7 @@ cupsSetDests(int num_dests, /* I - Number of destinations */ * This function saves the destinations to /etc/cups/lpoptions when run * as root and ~/.cups/lpoptions when run as a normal user. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ int /* O - 0 on success, -1 on error */ diff --git a/cups/dir.c b/cups/dir.c index 94a2a9b5b..b98f07c85 100644 --- a/cups/dir.c +++ b/cups/dir.c @@ -5,7 +5,7 @@ * * This set of APIs abstracts enumeration of directory entries. * - * Copyright 2007-2010 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2005 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -79,7 +79,7 @@ _cups_dir_time(FILETIME ft) /* I - File time */ /* * 'cupsDirClose()' - Close a directory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void @@ -110,7 +110,7 @@ cupsDirClose(cups_dir_t *dp) /* I - Directory pointer */ /* * 'cupsDirOpen()' - Open a directory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_dir_t * /* O - Directory pointer or @code NULL@ if the directory could not be opened. */ @@ -153,7 +153,7 @@ cupsDirOpen(const char *directory) /* I - Directory name */ /* * 'cupsDirRead()' - Read the next directory entry. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_dentry_t * /* O - Directory entry or @code NULL@ if there are no more */ @@ -213,7 +213,7 @@ cupsDirRead(cups_dir_t *dp) /* I - Directory pointer */ /* * 'cupsDirRewind()' - Rewind to the start of the directory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void @@ -263,7 +263,7 @@ struct _cups_dir_s /**** Directory data structure ****/ /* * 'cupsDirClose()' - Close a directory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void @@ -290,7 +290,7 @@ cupsDirClose(cups_dir_t *dp) /* I - Directory pointer */ /* * 'cupsDirOpen()' - Open a directory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_dir_t * /* O - Directory pointer or @code NULL@ if the directory could not be opened. */ @@ -344,7 +344,7 @@ cupsDirOpen(const char *directory) /* I - Directory name */ /* * 'cupsDirRead()' - Read the next directory entry. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_dentry_t * /* O - Directory entry or @code NULL@ when there are no more */ @@ -442,7 +442,7 @@ cupsDirRead(cups_dir_t *dp) /* I - Directory pointer */ /* * 'cupsDirRewind()' - Rewind to the start of the directory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void diff --git a/cups/emit.c b/cups/emit.c index e322bfe1a..650e8479b 100644 --- a/cups/emit.c +++ b/cups/emit.c @@ -87,7 +87,7 @@ ppdCollect(ppd_file_t *ppd, /* I - PPD file data */ * The choices array should be freed using @code free@ when you are * finished with it. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - Number of options marked */ @@ -260,7 +260,7 @@ ppdEmit(ppd_file_t *ppd, /* I - PPD file record */ * * When "limit" is zero, this function is identical to ppdEmit(). * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on failure */ @@ -554,7 +554,7 @@ ppdEmitJCL(ppd_file_t *ppd, /* I - PPD file record */ /* * 'ppdEmitJCLEnd()' - Emit JCLEnd code to a file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on failure */ @@ -613,7 +613,7 @@ ppdEmitJCLEnd(ppd_file_t *ppd, /* I - PPD file record */ * The return string is allocated on the heap and should be freed using * @code free@ when you are done with it. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - String containing option code or @code NULL@ if there is no option code */ diff --git a/cups/encode.c b/cups/encode.c index 2226e1950..b417fe164 100644 --- a/cups/encode.c +++ b/cups/encode.c @@ -227,7 +227,7 @@ cupsEncodeOptions(ipp_t *ipp, /* I - Request to add to */ * function multiple times for each group, or use cupsEncodeOptions() * to add the standard groups. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void diff --git a/cups/file.c b/cups/file.c index 2711e5680..1918ec5be 100644 --- a/cups/file.c +++ b/cups/file.c @@ -8,7 +8,7 @@ * our own file functions allows us to provide transparent support of * gzip'd print files, PPD files, etc. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -352,7 +352,7 @@ _cupsFileCheckFilter( /* * 'cupsFileClose()' - Close a CUPS file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on error */ @@ -484,7 +484,7 @@ cupsFileClose(cups_file_t *fp) /* I - CUPS file */ /* * 'cupsFileCompression()' - Return whether a file is compressed. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - @code CUPS_FILE_NONE@ or @code CUPS_FILE_GZIP@ */ @@ -497,7 +497,7 @@ cupsFileCompression(cups_file_t *fp) /* I - CUPS file */ /* * 'cupsFileEOF()' - Return the end-of-file status. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 on end of file, 0 otherwise */ @@ -516,7 +516,7 @@ cupsFileEOF(cups_file_t *fp) /* I - CUPS file */ * the supplied paths, @code NULL@ is returned. A @code NULL@ path only * matches the current directory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ const char * /* O - Full path to file or @code NULL@ if not found */ @@ -619,7 +619,7 @@ cupsFileFind(const char *filename, /* I - File to find */ /* * 'cupsFileFlush()' - Flush pending output. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on error */ @@ -667,7 +667,7 @@ cupsFileFlush(cups_file_t *fp) /* I - CUPS file */ /* * 'cupsFileGetChar()' - Get a single character from a file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - Character or -1 on end of file */ @@ -711,7 +711,7 @@ cupsFileGetChar(cups_file_t *fp) /* I - CUPS file */ /* * 'cupsFileGetConf()' - Get a line from a configuration file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - Line read or @code NULL@ on end of file or error */ @@ -855,7 +855,7 @@ cupsFileGetConf(cups_file_t *fp, /* I - CUPS file */ * nul-terminated, however you should use the returned length to determine * the number of bytes on the line. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ size_t /* O - Number of bytes on line or 0 on end of file */ @@ -930,7 +930,7 @@ cupsFileGetLine(cups_file_t *fp, /* I - File to read from */ /* * 'cupsFileGets()' - Get a CR and/or LF-terminated line. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - Line read or @code NULL@ on end of file or error */ @@ -1012,7 +1012,7 @@ cupsFileGets(cups_file_t *fp, /* I - CUPS file */ /* * 'cupsFileLock()' - Temporarily lock access to a file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on error */ @@ -1041,7 +1041,7 @@ cupsFileLock(cups_file_t *fp, /* I - CUPS file */ /* * 'cupsFileNumber()' - Return the file descriptor associated with a CUPS file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - File descriptor */ @@ -1070,7 +1070,7 @@ cupsFileNumber(cups_file_t *fp) /* I - CUPS file */ * connection as needed, generally preferring IPv6 connections when there is * a choice. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_file_t * /* O - CUPS file or @code NULL@ if the file or socket cannot be opened */ @@ -1192,7 +1192,7 @@ cupsFileOpen(const char *filename, /* I - Name of file */ * supplied which enables Flate compression of the file. Compression is * not supported for the "a" (append) mode. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_file_t * /* O - CUPS file or @code NULL@ if the file could not be opened */ @@ -1304,7 +1304,7 @@ cupsFileOpenFd(int fd, /* I - File descriptor */ /* * 'cupsFilePeekChar()' - Peek at the next character from a file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - Character or -1 on end of file */ @@ -1336,7 +1336,7 @@ cupsFilePeekChar(cups_file_t *fp) /* I - CUPS file */ /* * 'cupsFilePrintf()' - Write a formatted string. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - Number of bytes written or -1 on error */ @@ -1433,7 +1433,7 @@ cupsFilePrintf(cups_file_t *fp, /* I - CUPS file */ /* * 'cupsFilePutChar()' - Write a character. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on error */ @@ -1487,7 +1487,7 @@ cupsFilePutChar(cups_file_t *fp, /* I - CUPS file */ * * This function handles any comment escaping of the value. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ ssize_t /* O - Number of bytes written or -1 on error */ @@ -1548,7 +1548,7 @@ cupsFilePutConf(cups_file_t *fp, /* I - CUPS file */ * * Like the @code fputs@ function, no newline is appended to the string. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - Number of bytes written or -1 on error */ @@ -1612,7 +1612,7 @@ cupsFilePuts(cups_file_t *fp, /* I - CUPS file */ /* * 'cupsFileRead()' - Read from a file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ssize_t /* O - Number of bytes read or -1 on error */ @@ -1689,7 +1689,7 @@ cupsFileRead(cups_file_t *fp, /* I - CUPS file */ * 'cupsFileRewind()' - Set the current file position to the beginning of the * file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ off_t /* O - New file position or -1 on error */ @@ -1761,7 +1761,7 @@ cupsFileRewind(cups_file_t *fp) /* I - CUPS file */ /* * 'cupsFileSeek()' - Seek in a file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ off_t /* O - New file position or -1 on error */ @@ -1914,7 +1914,7 @@ cupsFileSeek(cups_file_t *fp, /* I - CUPS file */ /* * 'cupsFileStderr()' - Return a CUPS file associated with stderr. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_file_t * /* O - CUPS file */ @@ -1950,7 +1950,7 @@ cupsFileStderr(void) /* * 'cupsFileStdin()' - Return a CUPS file associated with stdin. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_file_t * /* O - CUPS file */ @@ -1980,7 +1980,7 @@ cupsFileStdin(void) /* * 'cupsFileStdout()' - Return a CUPS file associated with stdout. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_file_t * /* O - CUPS file */ @@ -2016,7 +2016,7 @@ cupsFileStdout(void) /* * 'cupsFileTell()' - Return the current file position. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ off_t /* O - File position */ @@ -2033,7 +2033,7 @@ cupsFileTell(cups_file_t *fp) /* I - CUPS file */ /* * 'cupsFileUnlock()' - Unlock access to a file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on error */ @@ -2063,7 +2063,7 @@ cupsFileUnlock(cups_file_t *fp) /* I - CUPS file */ /* * 'cupsFileWrite()' - Write to a file. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ssize_t /* O - Number of bytes written or -1 on error */ diff --git a/cups/getdevices.c b/cups/getdevices.c index a0744ac89..c1f5a294a 100644 --- a/cups/getdevices.c +++ b/cups/getdevices.c @@ -3,7 +3,7 @@ * * cupsGetDevices implementation for CUPS. * - * Copyright 2008-2011 by Apple Inc. + * Copyright 2008-2012 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -34,7 +34,7 @@ * parameters provide comma-delimited lists of backends to include or omit from * the request respectively. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ ipp_status_t /* O - Request status - @code IPP_OK@ on success. */ diff --git a/cups/getputfile.c b/cups/getputfile.c index 5104abdd8..7e12fe9fc 100644 --- a/cups/getputfile.c +++ b/cups/getputfile.c @@ -3,7 +3,7 @@ * * Get/put file functions for CUPS. * - * Copyright 2007-2010 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -41,7 +41,7 @@ * * This function returns @code HTTP_OK@ when the file is successfully retrieved. * - * @since CUPS 1.1.20/Mac OS X 10.4@ + * @since CUPS 1.1.20/OS X 10.4@ */ http_status_t /* O - HTTP status */ @@ -187,7 +187,7 @@ cupsGetFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA * * This function returns @code HTTP_OK@ when the file is successfully retrieved. * - * @since CUPS 1.1.20/Mac OS X 10.4@ + * @since CUPS 1.1.20/OS X 10.4@ */ http_status_t /* O - HTTP status */ @@ -255,7 +255,7 @@ cupsGetFile(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DE * This function returns @code HTTP_CREATED@ when the file is stored * successfully. * - * @since CUPS 1.1.20/Mac OS X 10.4@ + * @since CUPS 1.1.20/OS X 10.4@ */ http_status_t /* O - HTTP status */ @@ -446,7 +446,7 @@ cupsPutFd(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DEFA * This function returns @code HTTP_CREATED@ when the file is stored * successfully. * - * @since CUPS 1.1.20/Mac OS X 10.4@ + * @since CUPS 1.1.20/OS X 10.4@ */ http_status_t /* O - HTTP status */ diff --git a/cups/globals.c b/cups/globals.c index 86375ea5c..bc4191c1d 100644 --- a/cups/globals.c +++ b/cups/globals.c @@ -44,8 +44,10 @@ static _cups_threadkey_t cups_globals_key = _CUPS_THREADKEY_INITIALIZER; static pthread_once_t cups_globals_key_once = PTHREAD_ONCE_INIT; /* One-time initialization object */ #endif /* HAVE_PTHREAD_H */ +#if defined(HAVE_PTHREAD_H) || defined(WIN32) static _cups_mutex_t cups_global_mutex = _CUPS_MUTEX_INITIALIZER; /* Global critical section */ +#endif /* HAVE_PTHREAD_H || WIN32 */ /* @@ -56,7 +58,9 @@ static _cups_mutex_t cups_global_mutex = _CUPS_MUTEX_INITIALIZER; static void cups_fix_path(char *path); #endif /* WIN32 */ static _cups_globals_t *cups_globals_alloc(void); +#if defined(HAVE_PTHREAD_H) || defined(WIN32) static void cups_globals_free(_cups_globals_t *g); +#endif /* HAVE_PTHREAD_H || WIN32 */ #ifdef HAVE_PTHREAD_H static void cups_globals_init(void); #endif /* HAVE_PTHREAD_H */ @@ -322,6 +326,7 @@ cups_globals_alloc(void) * 'cups_globals_free()' - Free global data. */ +#if defined(HAVE_PTHREAD_H) || defined(WIN32) static void cups_globals_free(_cups_globals_t *cg) /* I - Pointer to global data */ { @@ -354,6 +359,7 @@ cups_globals_free(_cups_globals_t *cg) /* I - Pointer to global data */ free(cg); } +#endif /* HAVE_PTHREAD_H || WIN32 */ #ifdef HAVE_PTHREAD_H diff --git a/cups/http-addr.c b/cups/http-addr.c index faf7348d2..9e1ef660f 100644 --- a/cups/http-addr.c +++ b/cups/http-addr.c @@ -3,7 +3,7 @@ * * HTTP address routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -45,7 +45,7 @@ /* * 'httpAddrAny()' - Check for the "any" address. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 if "any", 0 otherwise */ @@ -71,7 +71,7 @@ httpAddrAny(const http_addr_t *addr) /* I - Address to check */ /* * 'httpAddrEqual()' - Compare two addresses. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 if equal, 0 if not */ @@ -104,7 +104,7 @@ httpAddrEqual(const http_addr_t *addr1, /* I - First address */ /* * 'httpAddrLength()' - Return the length of the address in bytes. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - Length in bytes */ @@ -135,7 +135,7 @@ httpAddrLength(const http_addr_t *addr) /* I - Address */ /* * 'httpAddrLocalhost()' - Check for the local loopback address. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 if local host, 0 otherwise */ @@ -174,7 +174,7 @@ httpAddrLocalhost( /* * 'httpAddrLookup()' - Lookup the hostname associated with the address. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - Host name */ @@ -342,7 +342,7 @@ _httpAddrSetPort(http_addr_t *addr, /* I - Address */ /* * 'httpAddrString()' - Convert an address to a numeric string. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - Numeric address string */ @@ -616,7 +616,7 @@ httpGetHostByName(const char *name) /* I - Hostname or IP address */ * Otherwise, return the FQDN for the local system using both gethostname() * and gethostbyname() to get the local hostname with domain. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ const char * /* O - FQDN for connection or system */ diff --git a/cups/http-addrlist.c b/cups/http-addrlist.c index 93e4df58f..223a68695 100644 --- a/cups/http-addrlist.c +++ b/cups/http-addrlist.c @@ -40,7 +40,7 @@ /* * 'httpAddrConnect()' - Connect to any of the addresses in the list. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ http_addrlist_t * /* O - Connected address or NULL on failure */ @@ -58,7 +58,7 @@ httpAddrConnect( * 'httpAddrConnect2()' - Connect to any of the addresses in the list with a * timeout and optional cancel. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ http_addrlist_t * /* O - Connected address or NULL on failure */ @@ -330,7 +330,7 @@ httpAddrConnect2( /* * 'httpAddrFreeList()' - Free an address list. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void @@ -358,7 +358,7 @@ httpAddrFreeList( /* * 'httpAddrGetList()' - Get a list of addresses for a hostname. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ http_addrlist_t * /* O - List of addresses or NULL */ diff --git a/cups/http-private.h b/cups/http-private.h index ab98b5ab3..3cfeff7f6 100644 --- a/cups/http-private.h +++ b/cups/http-private.h @@ -3,7 +3,7 @@ * * Private HTTP definitions for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -154,6 +154,7 @@ extern "C" { #define _HTTP_RESOLVE_DEFAULT 0 /* Just resolve with default options */ #define _HTTP_RESOLVE_STDERR 1 /* Log resolve progress to stderr */ #define _HTTP_RESOLVE_FQDN 2 /* Resolve to a FQDN */ +#define _HTTP_RESOLVE_FAXOUT 4 /* Resolve FaxOut service? */ /* diff --git a/cups/http-support.c b/cups/http-support.c index 40c69826f..19538941d 100644 --- a/cups/http-support.c +++ b/cups/http-support.c @@ -3,7 +3,7 @@ * * HTTP support routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -16,33 +16,37 @@ * * Contents: * - * httpAssembleURI() - Assemble a uniform resource identifier from its - * components. + * httpAssembleURI() - Assemble a uniform resource identifier from its + * components. * httpAssembleURIf() - Assemble a uniform resource identifier from its - * components with a formatted resource. + * components with a formatted resource. * _httpAssembleUUID() - Make a UUID URI conforming to RFC 4122. - * httpDecode64() - Base64-decode a string. - * httpDecode64_2() - Base64-decode a string. - * httpEncode64() - Base64-encode a string. - * httpEncode64_2() - Base64-encode a string. + * httpDecode64() - Base64-decode a string. + * httpDecode64_2() - Base64-decode a string. + * httpEncode64() - Base64-encode a string. + * httpEncode64_2() - Base64-encode a string. * httpGetDateString() - Get a formatted date/time string from a time value. * httpGetDateString2() - Get a formatted date/time string from a time value. - * httpGetDateTime() - Get a time value from a formatted date/time string. - * httpSeparate() - Separate a Universal Resource Identifier into its - * components. - * httpSeparate2() - Separate a Universal Resource Identifier into its - * components. - * httpSeparateURI() - Separate a Universal Resource Identifier into its - * components. - * httpStatus() - Return a short string describing a HTTP status code. - * _cups_hstrerror() - hstrerror() emulation function for Solaris and - * others. - * _httpDecodeURI() - Percent-decode a HTTP request URI. - * _httpEncodeURI() - Percent-encode a HTTP request URI. - * _httpResolveURI() - Resolve a DNS-SD URI. + * httpGetDateTime() - Get a time value from a formatted date/time string. + * httpSeparate() - Separate a Universal Resource Identifier into its + * components. + * httpSeparate2() - Separate a Universal Resource Identifier into its + * components. + * httpSeparateURI() - Separate a Universal Resource Identifier into its + * components. + * httpStatus() - Return a short string describing a HTTP status + * code. + * _cups_hstrerror() - hstrerror() emulation function for Solaris and + * others. + * _httpDecodeURI() - Percent-decode a HTTP request URI. + * _httpEncodeURI() - Percent-encode a HTTP request URI. + * _httpResolveURI() - Resolve a DNS-SD URI. + * http_client_cb() - Client callback for resolving URI. * http_copy_decode() - Copy and decode a URI. * http_copy_encode() - Copy and encode a URI. - * http_resolve_cb() - Build a device URI for the given service name. + * http_poll_cb() - Wait for input on the specified file descriptors. + * http_resolve_cb() - Build a device URI for the given service name. + * http_resolve_cb() - Build a device URI for the given service name. */ /* @@ -59,6 +63,10 @@ # else # include # endif /* WIN32 */ +#elif defined(HAVE_AVAHI) +# include +# include +# include #endif /* HAVE_DNSSD */ @@ -68,9 +76,12 @@ typedef struct _http_uribuf_s /* URI buffer */ { - char *buffer; /* Pointer to buffer */ - size_t bufsize; /* Size of buffer */ - int options; /* Options passed to _httpResolveURI */ +#ifdef HAVE_AVAHI + AvahiSimplePoll *poll; /* Poll state */ +#endif /* HAVE_AVAHI */ + char *buffer; /* Pointer to buffer */ + size_t bufsize; /* Size of buffer */ + int options; /* Options passed to _httpResolveURI */ } _http_uribuf_t; @@ -127,6 +138,22 @@ static void DNSSD_API http_resolve_cb(DNSServiceRef sdRef, void *context); #endif /* HAVE_DNSSD */ +#ifdef HAVE_AVAHI +static void http_client_cb(AvahiClient *client, + AvahiClientState state, void *simple_poll); +static int http_poll_cb(struct pollfd *pollfds, unsigned int num_pollfds, + int timeout, void *context); +static void http_resolve_cb(AvahiServiceResolver *resolver, + AvahiIfIndex interface, + AvahiProtocol protocol, + AvahiResolverEvent event, + const char *name, const char *type, + const char *domain, const char *host_name, + const AvahiAddress *address, uint16_t port, + AvahiStringList *txt, + AvahiLookupResultFlags flags, void *context); +#endif /* HAVE_AVAHI */ + /* * 'httpAssembleURI()' - Assemble a uniform resource identifier from its @@ -137,7 +164,7 @@ static void DNSSD_API http_resolve_cb(DNSServiceRef sdRef, * place of traditional string functions whenever you need to create a * URI string. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ http_uri_status_t /* O - URI status */ @@ -387,7 +414,7 @@ httpAssembleURI( * this function in place of traditional string functions whenever * you need to create a URI string. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ http_uri_status_t /* O - URI status */ @@ -517,7 +544,7 @@ httpDecode64(char *out, /* I - String to write to */ /* * 'httpDecode64_2()' - Base64-decode a string. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ char * /* O - Decoded string */ @@ -636,7 +663,7 @@ httpEncode64(char *out, /* I - String to write to */ /* * 'httpEncode64_2()' - Base64-encode a string. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ char * /* O - Encoded string */ @@ -745,7 +772,7 @@ httpGetDateString(time_t t) /* I - UNIX time */ /* * 'httpGetDateString2()' - Get a formatted date/time string from a time value. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ const char * /* O - Date/time string */ @@ -865,7 +892,7 @@ httpSeparate(const char *uri, /* I - Universal Resource Identifier */ * * This function is deprecated; use the httpSeparateURI() function instead. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ * @deprecated@ */ @@ -890,7 +917,7 @@ httpSeparate2(const char *uri, /* I - Universal Resource Identifier */ * 'httpSeparateURI()' - Separate a Universal Resource Identifier into its * components. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ http_uri_status_t /* O - Result of separation */ @@ -1434,24 +1461,29 @@ _httpResolveURI( if (strstr(hostname, "._tcp")) { -#ifdef HAVE_DNSSD -# ifdef WIN32 -# pragma comment(lib, "dnssd.lib") -# endif /* WIN32 */ - DNSServiceRef ref, /* DNS-SD master service reference */ - domainref, /* DNS-SD service reference for domain */ - localref; /* DNS-SD service reference for .local */ - int domainsent = 0, /* Send the domain resolve? */ - offline = 0; /* offline-report state set? */ +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) char *regtype, /* Pointer to type in hostname */ *domain; /* Pointer to domain in hostname */ _http_uribuf_t uribuf; /* URI buffer */ -#ifdef HAVE_POLL + int offline = 0; /* offline-report state set? */ +# ifdef HAVE_DNSSD +# ifdef WIN32 +# pragma comment(lib, "dnssd.lib") +# endif /* WIN32 */ + DNSServiceRef ref, /* DNS-SD master service reference */ + domainref, /* DNS-SD service reference for domain */ + localref; /* DNS-SD service reference for .local */ + int domainsent = 0; /* Send the domain resolve? */ +# ifdef HAVE_POLL struct pollfd polldata; /* Polling data */ -#else /* select() */ +# else /* select() */ fd_set input_set; /* Input set for select() */ struct timeval stimeout; /* Timeout value for select() */ -#endif /* HAVE_POLL */ +# endif /* HAVE_POLL */ +# elif defined(HAVE_AVAHI) + AvahiClient *client; /* Client information */ + int error; /* Status */ +# endif /* HAVE_DNSSD */ if (options & _HTTP_RESOLVE_STDERR) fprintf(stderr, "DEBUG: Resolving \"%s\"...\n", hostname); @@ -1491,6 +1523,7 @@ _httpResolveURI( uribuf.buffer = resolved_uri; uribuf.bufsize = resolved_size; uribuf.options = options; + resolved_uri[0] = '\0'; DEBUG_printf(("6_httpResolveURI: Resolving hostname=\"%s\", regtype=\"%s\", " @@ -1504,6 +1537,7 @@ _httpResolveURI( uri = NULL; +# ifdef HAVE_DNSSD if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError) { localref = ref; @@ -1536,26 +1570,26 @@ _httpResolveURI( if ((timeout = end_time - time(NULL)) > 2) timeout = 2; -#ifdef HAVE_POLL +# ifdef HAVE_POLL polldata.fd = DNSServiceRefSockFD(ref); polldata.events = POLLIN; fds = poll(&polldata, 1, 1000 * timeout); -#else /* select() */ +# else /* select() */ FD_ZERO(&input_set); FD_SET(DNSServiceRefSockFD(ref), &input_set); -#ifdef WIN32 +# ifdef WIN32 stimeout.tv_sec = (long)timeout; -#else +# else stimeout.tv_sec = timeout; -#endif /* WIN32 */ +# endif /* WIN32 */ stimeout.tv_usec = 0; fds = select(DNSServiceRefSockFD(ref)+1, &input_set, NULL, NULL, &stimeout); -#endif /* HAVE_POLL */ +# endif /* HAVE_POLL */ if (fds < 0) { @@ -1619,6 +1653,74 @@ _httpResolveURI( DNSServiceRefDeallocate(ref); } +# else /* HAVE_AVAHI */ + if ((uribuf.poll = avahi_simple_poll_new()) != NULL) + { + avahi_simple_poll_set_func(uribuf.poll, http_poll_cb, NULL); + + if ((client = avahi_client_new(avahi_simple_poll_get(uribuf.poll), + 0, http_client_cb, + &uribuf, &error)) != NULL) + { + if (avahi_service_resolver_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, hostname, + regtype, "local.", AVAHI_PROTO_UNSPEC, 0, + http_resolve_cb, &uribuf) != NULL) + { + time_t start_time = time(NULL), + /* Start time */ + end_time = start_time + 90; + /* End time */ + int pstatus; /* Poll status */ + + pstatus = avahi_simple_poll_iterate(uribuf.poll, 2000); + + if (pstatus == 0 && !resolved_uri[0] && domain && + _cups_strcasecmp(domain, "local.")) + { + /* + * Resolve for .local hasn't returned anything, try the listed + * domain... + */ + + avahi_service_resolver_new(client, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, hostname, + regtype, domain, AVAHI_PROTO_UNSPEC, 0, + http_resolve_cb, &uribuf); + } + + while (!pstatus && !resolved_uri[0] && time(NULL) < end_time) + { + if ((pstatus = avahi_simple_poll_iterate(uribuf.poll, 2000)) != 0) + break; + + /* + * If it hasn't resolved within 5 seconds set the offline-report + * printer-state-reason... + */ + + if ((options & _HTTP_RESOLVE_STDERR) && offline == 0 && + time(NULL) > (start_time + 5)) + { + fputs("STATE: +offline-report\n", stderr); + offline = 1; + } + } + + /* + * Collect the result (if we got one). + */ + + if (resolved_uri[0]) + uri = resolved_uri; + } + + avahi_client_free(client); + } + + avahi_simple_poll_free(uribuf.poll); + } +# endif /* HAVE_DNSSD */ if (options & _HTTP_RESOLVE_STDERR) { @@ -1634,13 +1736,13 @@ _httpResolveURI( } } -#else +#else /* HAVE_DNSSD || HAVE_AVAHI */ /* * No DNS-SD support... */ uri = NULL; -#endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ if ((options & _HTTP_RESOLVE_STDERR) && !uri) _cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer.")); @@ -1661,6 +1763,35 @@ _httpResolveURI( } +#ifdef HAVE_AVAHI +/* + * 'http_client_cb()' - Client callback for resolving URI. + */ + +static void +http_client_cb( + AvahiClient *client, /* I - Client information */ + AvahiClientState state, /* I - Current state */ + void *context) /* I - Pointer to URI buffer */ +{ + DEBUG_printf(("7http_client_cb(client=%p, state=%d, context=%p)", client, + state, context)); + + /* + * If the connection drops, quit. + */ + + if (state == AVAHI_CLIENT_FAILURE) + { + _http_uribuf_t *uribuf = (_http_uribuf_t *)context; + /* URI buffer */ + + avahi_simple_poll_quit(uribuf->poll); + } +} +#endif /* HAVE_AVAHI */ + + /* * 'http_copy_decode()' - Copy and decode a URI. */ @@ -1796,13 +1927,16 @@ http_resolve_cb( const unsigned char *txtRecord, /* I - TXT record data */ void *context) /* I - Pointer to URI buffer */ { + _http_uribuf_t *uribuf = (_http_uribuf_t *)context; + /* URI buffer */ const char *scheme, /* URI scheme */ - *hostptr; /* Pointer into hostTarget */ - char rp[257], /* Remote printer */ + *hostptr, /* Pointer into hostTarget */ + *reskey, /* "rp" or "rfo" */ + *resdefault; /* Default path */ + char resource[257], /* Remote path */ fqdn[256]; /* FQDN of the .local name */ const void *value; /* Value from TXT record */ uint8_t valueLen; /* Length of value */ - _http_uribuf_t *uribuf; /* URI buffer */ DEBUG_printf(("7http_resolve_cb(sdRef=%p, flags=%x, interfaceIndex=%u, " @@ -1811,8 +1945,6 @@ http_resolve_cb( interfaceIndex, errorCode, fullName, hostTarget, port, txtLen, txtRecord, context)); - uribuf = (_http_uribuf_t *)context; - /* * Figure out the scheme from the full name... */ @@ -1836,17 +1968,29 @@ http_resolve_cb( * Extract the "remote printer" key from the TXT record... */ - if ((value = TXTRecordGetValuePtr(txtLen, txtRecord, "rp", + if ((uribuf->options & _HTTP_RESOLVE_FAXOUT) && + (!strcmp(scheme, "ipp") || !strcmp(scheme, "ipps"))) + { + reskey = "rfo"; + resdefault = "/ipp/faxout"; + } + else + { + reskey = "rp"; + resdefault = "/"; + } + + if ((value = TXTRecordGetValuePtr(txtLen, txtRecord, reskey, &valueLen)) != NULL) { if (((char *)value)[0] == '/') { /* - * "rp" value (incorrectly) has a leading slash already... + * Value (incorrectly) has a leading slash already... */ - memcpy(rp, value, valueLen); - rp[valueLen] = '\0'; + memcpy(resource, value, valueLen); + resource[valueLen] = '\0'; } else { @@ -1854,19 +1998,18 @@ http_resolve_cb( * Convert to resource by concatenating with a leading "/"... */ - rp[0] = '/'; - memcpy(rp + 1, value, valueLen); - rp[valueLen + 1] = '\0'; + resource[0] = '/'; + memcpy(resource + 1, value, valueLen); + resource[valueLen + 1] = '\0'; } } else { /* - * Default "rp" value is blank, mapping to a path of "/"... + * Use the default value... */ - rp[0] = '/'; - rp[1] = '\0'; + strlcpy(resource, resdefault, sizeof(resource)); } /* @@ -1922,10 +2065,220 @@ http_resolve_cb( */ httpAssembleURI(HTTP_URI_CODING_ALL, uribuf->buffer, uribuf->bufsize, scheme, - NULL, hostTarget, ntohs(port), rp); + NULL, hostTarget, ntohs(port), resource); DEBUG_printf(("8http_resolve_cb: Resolved URI is \"%s\"...", uribuf->buffer)); } + +#elif defined(HAVE_AVAHI) +/* + * 'http_poll_cb()' - Wait for input on the specified file descriptors. + * + * Note: This function is needed because avahi_simple_poll_iterate is broken + * and always uses a timeout of 0 (!) milliseconds. + * (Avahi Ticket #364) + */ + +static int /* O - Number of file descriptors matching */ +http_poll_cb( + struct pollfd *pollfds, /* I - File descriptors */ + unsigned int num_pollfds, /* I - Number of file descriptors */ + int timeout, /* I - Timeout in milliseconds (used) */ + void *context) /* I - User data (unused) */ +{ + (void)timeout; + (void)context; + + return (poll(pollfds, num_pollfds, 2000)); +} + + +/* + * 'http_resolve_cb()' - Build a device URI for the given service name. + */ + +static void +http_resolve_cb( + AvahiServiceResolver *resolver, /* I - Resolver (unused) */ + AvahiIfIndex interface, /* I - Interface index (unused) */ + AvahiProtocol protocol, /* I - Network protocol (unused) */ + AvahiResolverEvent event, /* I - Event (found, etc.) */ + const char *name, /* I - Service name */ + const char *type, /* I - Registration type */ + const char *domain, /* I - Domain (unused) */ + const char *hostTarget, /* I - Hostname */ + const AvahiAddress *address, /* I - Address (unused) */ + uint16_t port, /* I - Port number */ + AvahiStringList *txt, /* I - TXT record */ + AvahiLookupResultFlags flags, /* I - Lookup flags (unused) */ + void *context) /* I - Pointer to URI buffer */ +{ + _http_uribuf_t *uribuf = (_http_uribuf_t *)context; + /* URI buffer */ + const char *scheme, /* URI scheme */ + *hostptr, /* Pointer into hostTarget */ + *reskey, /* "rp" or "rfo" */ + *resdefault; /* Default path */ + char resource[257], /* Remote path */ + fqdn[256]; /* FQDN of the .local name */ + AvahiStringList *pair; /* Current TXT record key/value pair */ + char *value; /* Value for "rp" key */ + size_t valueLen = 0; /* Length of "rp" key */ + + + DEBUG_printf(("7http_resolve_cb(resolver=%p, " + "interface=%d, protocol=%d, event=%d, name=\"%s\", " + "type=\"%s\", domain=\"%s\", hostTarget=\"%s\", address=%p, " + "port=%d, txt=%p, flags=%d, context=%p)", + resolver, interface, protocol, event, name, type, domain, + hostTarget, address, port, txt, flags, context)); + + if (event != AVAHI_RESOLVER_FOUND) + { + avahi_service_resolver_free(resolver); + avahi_simple_poll_quit(uribuf->poll); + return; + } + + /* + * Figure out the scheme from the full name... + */ + + if (strstr(type, "_ipp.")) + scheme = "ipp"; + else if (strstr(type, "_printer.")) + scheme = "lpd"; + else if (strstr(type, "_pdl-datastream.")) + scheme = "socket"; + else + scheme = "riousbprint"; + + if (!strncmp(type, "_ipps.", 6) || !strncmp(type, "_ipp-tls.", 9)) + scheme = "ipps"; + else if (!strncmp(type, "_ipp.", 5) || !strncmp(type, "_fax-ipp.", 9)) + scheme = "ipp"; + else if (!strncmp(type, "_http.", 6)) + scheme = "http"; + else if (!strncmp(type, "_https.", 7)) + scheme = "https"; + else if (!strncmp(type, "_printer.", 9)) + scheme = "lpd"; + else if (!strncmp(type, "_pdl-datastream.", 16)) + scheme = "socket"; + else + { + avahi_service_resolver_free(resolver); + avahi_simple_poll_quit(uribuf->poll); + return; + } + + /* + * Extract the remote resource key from the TXT record... + */ + + if ((uribuf->options & _HTTP_RESOLVE_FAXOUT) && + (!strcmp(scheme, "ipp") || !strcmp(scheme, "ipps"))) + { + reskey = "rfo"; + resdefault = "/ipp/faxout"; + } + else + { + reskey = "rp"; + resdefault = "/"; + } + + if ((pair = avahi_string_list_find(txt, reskey)) != NULL) + { + avahi_string_list_get_pair(pair, NULL, &value, &valueLen); + + if (value[0] == '/') + { + /* + * Value (incorrectly) has a leading slash already... + */ + + memcpy(resource, value, valueLen); + resource[valueLen] = '\0'; + } + else + { + /* + * Convert to resource by concatenating with a leading "/"... + */ + + resource[0] = '/'; + memcpy(resource + 1, value, valueLen); + resource[valueLen + 1] = '\0'; + } + } + else + { + /* + * Use the default value... + */ + + strlcpy(resource, resdefault, sizeof(resource)); + } + + /* + * Lookup the FQDN if needed... + */ + + if ((uribuf->options & _HTTP_RESOLVE_FQDN) && + (hostptr = hostTarget + strlen(hostTarget) - 6) > hostTarget && + !_cups_strcasecmp(hostptr, ".local")) + { + /* + * OK, we got a .local name but the caller needs a real domain. Start by + * getting the IP address of the .local name and then do reverse-lookups... + */ + + http_addrlist_t *addrlist, /* List of addresses */ + *addr; /* Current address */ + + DEBUG_printf(("8http_resolve_cb: Looking up \"%s\".", hostTarget)); + + snprintf(fqdn, sizeof(fqdn), "%d", ntohs(port)); + if ((addrlist = httpAddrGetList(hostTarget, AF_UNSPEC, fqdn)) != NULL) + { + for (addr = addrlist; addr; addr = addr->next) + { + int error = getnameinfo(&(addr->addr.addr), + httpAddrLength(&(addr->addr)), + fqdn, sizeof(fqdn), NULL, 0, NI_NAMEREQD); + + if (!error) + { + DEBUG_printf(("8http_resolve_cb: Found \"%s\".", fqdn)); + + if ((hostptr = fqdn + strlen(fqdn) - 6) <= fqdn || + _cups_strcasecmp(hostptr, ".local")) + { + hostTarget = fqdn; + break; + } + } +#ifdef DEBUG + else + DEBUG_printf(("8http_resolve_cb: \"%s\" did not resolve: %d", + httpAddrString(&(addr->addr), fqdn, sizeof(fqdn)), + error)); +#endif /* DEBUG */ + } + } + } + + /* + * Assemble the final device URI using the resolved hostname... + */ + + httpAssembleURI(HTTP_URI_CODING_ALL, uribuf->buffer, uribuf->bufsize, scheme, + NULL, hostTarget, port, resource); + DEBUG_printf(("8http_resolve_cb: Resolved URI is \"%s\".", uribuf->buffer)); + + avahi_simple_poll_quit(uribuf->poll); +} #endif /* HAVE_DNSSD */ diff --git a/cups/http.c b/cups/http.c index b95baa9d0..945404cdd 100644 --- a/cups/http.c +++ b/cups/http.c @@ -258,7 +258,7 @@ static BIO_METHOD http_bio_methods = * * Use @code cupsArrayNew(NULL, NULL)@ to create a credentials array. * - * @since CUPS 1.5/Mac OS X 10.7@ + * @since CUPS 1.5/OS X 10.7@ */ int /* O - 0 on success, -1 on error */ @@ -331,7 +331,7 @@ httpCheck(http_t *http) /* I - Connection to server */ /* * 'httpClearCookie()' - Clear the cookie value(s). * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ void @@ -494,7 +494,7 @@ httpConnectEncrypt( * 'httpCopyCredentials()' - Copy the credentials associated with an encrypted * connection. * - * @since CUPS 1.5/Mac OS X 10.7@ + * @since CUPS 1.5/OS X 10.7@ */ int /* O - Status of call (0 = success) */ @@ -835,7 +835,7 @@ httpFlush(http_t *http) /* I - Connection to server */ /* * 'httpFlushWrite()' - Flush data in write buffer. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - Bytes written or -1 on error */ @@ -937,7 +937,7 @@ httpGet(http_t *http, /* I - Connection to server */ * string to use with httpSetField() for the HTTP_FIELD_AUTHORIZATION * value. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ char * /* O - Authorization string */ @@ -953,7 +953,7 @@ httpGetAuthString(http_t *http) /* I - Connection to server */ /* * 'httpGetBlocking()' - Get the blocking/non-block state of a connection. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 1 if blocking, 0 if non-blocking */ @@ -966,7 +966,7 @@ httpGetBlocking(http_t *http) /* I - Connection to server */ /* * 'httpGetCookie()' - Get any cookie data from the response. * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ const char * /* O - Cookie data or NULL */ @@ -979,7 +979,7 @@ httpGetCookie(http_t *http) /* I - HTTP connecion */ /* * 'httpGetFd()' - Get the file descriptor associated with a connection. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - File descriptor or -1 if none */ @@ -1049,7 +1049,7 @@ httpGetLength(http_t *http) /* I - Connection to server */ * This function returns the complete content length, even for * content larger than 2^31 - 1. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ off_t /* O - Content length */ @@ -1307,7 +1307,7 @@ httpGetState(http_t *http) /* I - Connection to server */ /* * 'httpGetStatus()' - Get the status of the last HTTP request. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ http_status_t /* O - HTTP status */ @@ -1336,7 +1336,7 @@ httpGetSubField(http_t *http, /* I - Connection to server */ /* * 'httpGetSubField2()' - Get a sub-field value. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - Value or NULL */ @@ -1877,7 +1877,7 @@ httpRead(http_t *http, /* I - Connection to server */ /* * 'httpRead2()' - Read data from a HTTP connection. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ssize_t /* O - Number of bytes read */ @@ -2435,7 +2435,7 @@ httpReconnect2(http_t *http, /* I - Connection to server */ * HTTP_FIELD_AUTHORIZATION prior to issuing a HTTP request using httpGet(), * httpHead(), httpOptions(), httpPost, or httpPut(). * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ void @@ -2492,7 +2492,7 @@ httpSetAuthString(http_t *http, /* I - Connection to server */ * 'httpSetCredentials()' - Set the credentials associated with an encrypted * connection. * - * @since CUPS 1.5/Mac OS X 10.7@ + * @since CUPS 1.5/OS X 10.7@ */ int /* O - Status of call (0 = success) */ @@ -2513,7 +2513,7 @@ httpSetCredentials(http_t *http, /* I - Connection to server */ /* * 'httpSetCookie()' - Set the cookie value(s). * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ void @@ -2538,7 +2538,7 @@ httpSetCookie(http_t *http, /* I - Connection */ * * Currently only HTTP_CONTINUE is supported for the "expect" argument. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void @@ -2623,7 +2623,7 @@ httpSetField(http_t *http, /* I - Connection to server */ /* * 'httpSetLength()' - Set the content-length and content-encoding. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ void @@ -2653,7 +2653,7 @@ httpSetLength(http_t *http, /* I - Connection to server */ * The optional timeout callback receives both the HTTP connection and a user * data pointer and must return 1 to continue or 0 to error (time) out. * - * @since CUPS 1.5/Mac OS X 10.7@ + * @since CUPS 1.5/OS X 10.7@ */ void @@ -3021,7 +3021,7 @@ _httpWait(http_t *http, /* I - Connection to server */ /* * 'httpWait()' - Wait for data available on a connection. * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ int /* O - 1 if data is available, 0 otherwise */ @@ -3084,7 +3084,7 @@ httpWrite(http_t *http, /* I - Connection to server */ /* * 'httpWrite2()' - Write data to a HTTP connection. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ssize_t /* O - Number of bytes written */ diff --git a/cups/http.h b/cups/http.h index fc83209d9..f6ef45b99 100644 --- a/cups/http.h +++ b/cups/http.h @@ -124,7 +124,7 @@ typedef enum http_auth_e /**** HTTP authentication types ****/ HTTP_AUTH_MD5_SESS, /* MD5-session authentication in use */ HTTP_AUTH_MD5_INT, /* Digest authentication in use for body */ HTTP_AUTH_MD5_SESS_INT, /* MD5-session authentication in use for body */ - HTTP_AUTH_NEGOTIATE /* GSSAPI authentication in use @since CUPS 1.3/Mac OS X 10.5@ */ + HTTP_AUTH_NEGOTIATE /* GSSAPI authentication in use @since CUPS 1.3/OS X 10.5@ */ } http_auth_t; typedef enum http_encoding_e /**** HTTP transfer encoding values ****/ @@ -251,7 +251,7 @@ typedef enum http_status_e /**** HTTP status codes ****/ HTTP_NOT_SUPPORTED, /* HTTP version not supported */ HTTP_AUTHORIZATION_CANCELED = 1000, /* User canceled authorization @since CUPS 1.4@ */ - HTTP_PKI_ERROR, /* Error negotiating a secure connection @since CUPS 1.5/Mac OS X 10.7@ */ + HTTP_PKI_ERROR, /* Error negotiating a secure connection @since CUPS 1.5/OS X 10.7@ */ HTTP_WEBIF_DISABLED /* Web interface is disabled @private@ */ } http_status_t; @@ -292,7 +292,7 @@ typedef enum http_version_e /**** HTTP version numbers ****/ typedef union _http_addr_u /**** Socket address union, which **** makes using IPv6 and other **** address types easier and - **** more portable. @since CUPS 1.2/Mac OS X 10.5@ + **** more portable. @since CUPS 1.2/OS X 10.5@ ****/ { struct sockaddr addr; /* Base structure for family value */ @@ -309,7 +309,7 @@ typedef union _http_addr_u /**** Socket address union, which typedef struct http_addrlist_s /**** Socket address list, which is **** used to enumerate all of the **** addresses that are associated - **** with a hostname. @since CUPS 1.2/Mac OS X 10.5@ + **** with a hostname. @since CUPS 1.2/OS X 10.5@ ****/ { struct http_addrlist_s *next; /* Pointer to next address in list */ @@ -318,14 +318,14 @@ typedef struct http_addrlist_s /**** Socket address list, which is typedef struct _http_s http_t; /**** HTTP connection type ****/ -typedef struct http_credential_s /**** HTTP credential data @since CUPS 1.5/Mac OS X 10.7@ ****/ +typedef struct http_credential_s /**** HTTP credential data @since CUPS 1.5/OS X 10.7@ ****/ { void *data; /* Pointer to credential data */ size_t datalen; /* Credential length */ } http_credential_t; typedef int (*http_timeout_cb_t)(http_t *http, void *user_data); - /**** HTTP timeout callback @since CUPS 1.5/Mac OS X 10.7@ ****/ + /**** HTTP timeout callback @since CUPS 1.5/OS X 10.7@ ****/ @@ -395,7 +395,7 @@ extern void httpSeparate2(const char *uri, char *host, int hostlen, int *port, char *resource, int resourcelen) _CUPS_DEPRECATED; -/**** New in CUPS 1.2/Mac OS X 10.5 ****/ +/**** New in CUPS 1.2/OS X 10.5 ****/ extern int httpAddrAny(const http_addr_t *addr) _CUPS_API_1_2; extern http_addrlist_t *httpAddrConnect(http_addrlist_t *addrlist, int *sock) _CUPS_API_1_2; extern int httpAddrEqual(const http_addr_t *addr1, @@ -443,12 +443,12 @@ extern void httpSetLength(http_t *http, size_t length) _CUPS_API_1_2; extern ssize_t httpWrite2(http_t *http, const char *buffer, size_t length) _CUPS_API_1_2; -/**** New in CUPS 1.3/Mac OS X 10.5 ****/ +/**** New in CUPS 1.3/OS X 10.5 ****/ extern char *httpGetAuthString(http_t *http) _CUPS_API_1_3; extern void httpSetAuthString(http_t *http, const char *scheme, const char *data) _CUPS_API_1_3; -/**** New in CUPS 1.5/Mac OS X 10.7 ****/ +/**** New in CUPS 1.5/OS X 10.7 ****/ extern int httpAddCredential(cups_array_t *credentials, const void *data, size_t datalen) _CUPS_API_1_5; @@ -462,7 +462,7 @@ extern void httpSetTimeout(http_t *http, double timeout, http_timeout_cb_t cb, void *user_data) _CUPS_API_1_5; -/**** New in CUPS 1.6 ****/ +/**** New in CUPS 1.6/OS X 10.8 ****/ extern http_addrlist_t *httpAddrConnect2(http_addrlist_t *addrlist, int *sock, int msec, int *cancel) _CUPS_API_1_6; diff --git a/cups/ipp-support.c b/cups/ipp-support.c index c20c11043..8ad921dd5 100644 --- a/cups/ipp-support.c +++ b/cups/ipp-support.c @@ -411,7 +411,7 @@ static size_t ipp_col_string(ipp_t *col, char *buffer, size_t bufsize); * trailing nul. The buffer pointer can be NULL to get the required length, * just like (v)snprintf. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ size_t /* O - Number of bytes less nul */ @@ -821,7 +821,7 @@ ippErrorString(ipp_status_t error) /* I - Error status */ /* * 'ippErrorValue()' - Return a status code for the given name. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ipp_status_t /* O - IPP status code */ @@ -859,7 +859,7 @@ ippErrorValue(const char *name) /* I - Name */ /* * 'ippOpString()' - Return a name for the given operation id. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ const char * /* O - Name */ @@ -894,7 +894,7 @@ ippOpString(ipp_op_t op) /* I - Operation ID */ /* * 'ippOpValue()' - Return an operation id for the given name. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ipp_op_t /* O - Operation ID */ @@ -970,7 +970,7 @@ ippSetPort(int p) /* I - Port number to use */ * * The returned names are defined in RFC 2911 and 3382. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ const char * /* O - Tag name */ @@ -990,7 +990,7 @@ ippTagString(ipp_tag_t tag) /* I - Tag value */ * * The tag names are defined in RFC 2911 and 3382. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ ipp_tag_t /* O - Tag value */ diff --git a/cups/ipp.c b/cups/ipp.c index ab5303c72..dd3e4e0d4 100644 --- a/cups/ipp.c +++ b/cups/ipp.c @@ -308,7 +308,7 @@ ippAddBooleans(ipp_t *ipp, /* I - IPP message */ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@). * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ ipp_attribute_t * /* O - New attribute */ @@ -359,7 +359,7 @@ ippAddCollection(ipp_t *ipp, /* I - IPP message */ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@). * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ ipp_attribute_t * /* O - New attribute */ @@ -609,7 +609,7 @@ ippAddIntegers(ipp_t *ipp, /* I - IPP message */ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@). * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ipp_attribute_t * /* O - New attribute */ @@ -672,7 +672,7 @@ ippAddOctetString(ipp_t *ipp, /* I - IPP message */ * (@code IPP_TAG_NOTSETTABLE@), delete-attribute (@code IPP_TAG_DELETEATTR@), and * admin-define (@code IPP_TAG_ADMINDEFINE@). * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_attribute_t * /* O - New attribute */ @@ -1231,7 +1231,7 @@ ippAddStrings( * created - this should only be done as long as the original source IPP message will * not be freed for the life of the destination. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ @@ -1482,7 +1482,7 @@ ippCopyAttribute( * 0 to skip it. The function may also choose to do a partial copy of the source attribute * itself. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on error */ @@ -1610,7 +1610,7 @@ ippDelete(ipp_t *ipp) /* I - IPP message */ /* * 'ippDeleteAttribute()' - Delete a single attribute in an IPP message. * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ void @@ -1685,7 +1685,7 @@ ippDeleteAttribute( * * Deleting all values in an attribute deletes the attribute. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -1812,7 +1812,7 @@ ippFindNextAttribute(ipp_t *ipp, /* I - IPP message */ /* * 'ippFirstAttribute()' - Return the first attribute in the message. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_attribute_t * /* O - First attribute or @code NULL@ if none */ @@ -1839,7 +1839,7 @@ ippFirstAttribute(ipp_t *ipp) /* I - IPP message */ * The @code element@ parameter specifies which value to get from 0 to * @link ippGetCount(attr)@ - 1. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - Boolean value or -1 on error */ @@ -1868,7 +1868,7 @@ ippGetBoolean(ipp_attribute_t *attr, /* I - IPP attribute */ * The @code element@ parameter specifies which value to get from 0 to * @link ippGetCount(attr)@ - 1. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_t * /* O - Collection value or @code NULL@ on error */ @@ -1895,7 +1895,7 @@ ippGetCollection( /* * 'ippGetCount()' - Get the number of values in an attribute. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - Number of values or -1 on error */ @@ -1922,7 +1922,7 @@ ippGetCount(ipp_attribute_t *attr) /* I - IPP attribute */ * The @code element@ parameter specifies which value to get from 0 to * @link ippGetCount(attr)@ - 1. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ const ipp_uchar_t * /* O - Date value or @code NULL@ */ @@ -1948,7 +1948,7 @@ ippGetDate(ipp_attribute_t *attr, /* I - IPP attribute */ /* * 'ippGetGroupTag()' - Get the group associated with an attribute. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_tag_t /* O - Group tag or @code IPP_TAG_ZERO@ on error */ @@ -1975,7 +1975,7 @@ ippGetGroupTag(ipp_attribute_t *attr) /* I - IPP attribute */ * The @code element@ parameter specifies which value to get from 0 to * @link ippGetCount(attr)@ - 1. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - Value or -1 on error */ @@ -2001,7 +2001,7 @@ ippGetInteger(ipp_attribute_t *attr, /* I - IPP attribute */ /* * 'ippGetName()' - Get the attribute name. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ const char * /* O - Attribute name or @code NULL@ for separators */ @@ -2025,7 +2025,7 @@ ippGetName(ipp_attribute_t *attr) /* I - IPP attribute */ /* * 'ippGetOperation()' - Get the operation ID in an IPP message. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_op_t /* O - Operation ID or -1 on error */ @@ -2052,7 +2052,7 @@ ippGetOperation(ipp_t *ipp) /* I - IPP request message */ * The @code element@ parameter specifies which value to get from 0 to * @link ippGetCount(attr)@ - 1. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - Lower value of range or -1 */ @@ -2087,7 +2087,7 @@ ippGetRange(ipp_attribute_t *attr, /* I - IPP attribute */ /* * 'ippGetRequestId()' - Get the request ID from an IPP message. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - Request ID or -1 on error */ @@ -2114,7 +2114,7 @@ ippGetRequestId(ipp_t *ipp) /* I - IPP message */ * The @code element@ parameter specifies which value to get from 0 to * @link ippGetCount(attr)@ - 1. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - Horizontal/cross feed resolution or -1 */ @@ -2149,7 +2149,7 @@ ippGetResolution( /* * 'ippGetState()' - Get the IPP message state. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_state_t /* O - IPP message state value */ @@ -2173,7 +2173,7 @@ ippGetState(ipp_t *ipp) /* I - IPP message */ /* * 'ippGetStatusCode()' - Get the status code from an IPP response or event message. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_status_t /* O - Status code in IPP message */ @@ -2200,7 +2200,7 @@ ippGetStatusCode(ipp_t *ipp) /* I - IPP response or event message */ * The @code element@ parameter specifies which value to get from 0 to * @link ippGetCount(attr)@ - 1. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ const char * @@ -2231,7 +2231,7 @@ ippGetString(ipp_attribute_t *attr, /* I - IPP attribute */ /* * 'ippGetValueTag()' - Get the value tag for an attribute. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_tag_t /* O - Value tag or @code IPP_TAG_ZERO@ on error */ @@ -2255,7 +2255,7 @@ ippGetValueTag(ipp_attribute_t *attr) /* I - IPP attribute */ /* * 'ippGetVersion()' - Get the major and minor version number from an IPP message. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - Major version number or -1 on error */ @@ -2299,7 +2299,7 @@ ippLength(ipp_t *ipp) /* I - IPP message */ /* * 'ippNextAttribute()' - Return the next attribute in the message. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ ipp_attribute_t * /* O - Next attribute or @code NULL@ if none */ @@ -2356,7 +2356,7 @@ ippNew(void) * attributes-natural-language attributes added. The * attributes-natural-language value is derived from the current locale. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ipp_t * /* O - IPP request message */ @@ -2438,7 +2438,7 @@ ippRead(http_t *http, /* I - HTTP connection */ /* * 'ippReadFile()' - Read data for an IPP message from a file. * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ ipp_state_t /* O - Current state */ @@ -2454,7 +2454,7 @@ ippReadFile(int fd, /* I - HTTP data */ /* * 'ippReadIO()' - Read data for an IPP message. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ipp_state_t /* O - Current state */ @@ -3189,7 +3189,7 @@ ippReadIO(void *src, /* I - Data source */ * The @code element@ parameter specifies which value to set from 0 to * @link ippGetCount(attr)@. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3231,7 +3231,7 @@ ippSetBoolean(ipp_t *ipp, /* IO - IPP message */ * The @code element@ parameter specifies which value to set from 0 to * @link ippGetCount(attr)@. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3280,7 +3280,7 @@ ippSetCollection( * The @code element@ parameter specifies which value to set from 0 to * @link ippGetCount(attr)@. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3325,7 +3325,7 @@ ippSetDate(ipp_t *ipp, /* IO - IPP message */ * (@code IPP_TAG_OPERATION@), printer (@code IPP_TAG_PRINTER@), subscription * (@code IPP_TAG_SUBSCRIPTION@), or unsupported (@code IPP_TAG_UNSUPPORTED_GROUP@). * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3363,7 +3363,7 @@ ippSetGroupTag( * The @code element@ parameter specifies which value to set from 0 to * @link ippGetCount(attr)@. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3403,7 +3403,7 @@ ippSetInteger(ipp_t *ipp, /* IO - IPP message */ * * The @code attr@ parameter may be modified as a result of setting the value. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3443,7 +3443,7 @@ ippSetName(ipp_t *ipp, /* IO - IPP message */ * The @code ipp@ parameter refers to an IPP message previously created using the * @link ippNew@ or @link ippNewRequest@ functions. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3478,7 +3478,7 @@ ippSetOperation(ipp_t *ipp, /* I - IPP request message */ * The @code element@ parameter specifies which value to set from 0 to * @link ippGetCount(attr)@. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3521,7 +3521,7 @@ ippSetRange(ipp_t *ipp, /* IO - IPP message */ * * The @code request_id@ parameter must be greater than 0. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3558,7 +3558,7 @@ ippSetRequestId(ipp_t *ipp, /* I - IPP message */ * The @code element@ parameter specifies which value to set from 0 to * @link ippGetCount(attr)@. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3600,7 +3600,7 @@ ippSetResolution( /* * 'ippSetState()' - Set the current state of the IPP message. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3631,7 +3631,7 @@ ippSetState(ipp_t *ipp, /* I - IPP message */ * The @code ipp@ parameter refers to an IPP message previously created using the * @link ippNew@ or @link ippNewRequest@ functions. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3666,7 +3666,7 @@ ippSetStatusCode(ipp_t *ipp, /* I - IPP response or event message */ * The @code element@ parameter specifies which value to set from 0 to * @link ippGetCount(attr)@. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3737,7 +3737,7 @@ ippSetString(ipp_t *ipp, /* IO - IPP message */ * code in the "attributes-natural-language" attribute or, if not present, the language * code for the current locale. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3894,7 +3894,7 @@ ippSetValueTag( * * The valid version numbers are currently 1.0, 1.1, 2.0, 2.1, and 2.2. * - * @since CUPS 1.6@ + * @since CUPS 1.6/OS X 10.8@ */ int /* O - 1 on success, 0 on failure */ @@ -3988,7 +3988,7 @@ ippWrite(http_t *http, /* I - HTTP connection */ /* * 'ippWriteFile()' - Write data for an IPP message to a file. * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ ipp_state_t /* O - Current state */ @@ -4006,7 +4006,7 @@ ippWriteFile(int fd, /* I - HTTP data */ /* * 'ippWriteIO()' - Write data for an IPP message. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ipp_state_t /* O - Current state */ diff --git a/cups/ipp.h b/cups/ipp.h index d0556d363..2fb1995e3 100644 --- a/cups/ipp.h +++ b/cups/ipp.h @@ -150,13 +150,13 @@ typedef enum ipp_op_e /**** IPP operations ****/ IPP_SET_PRINTER_ATTRIBUTES, /* Set printer attributes @private@ */ IPP_SET_JOB_ATTRIBUTES, /* Set job attributes */ IPP_GET_PRINTER_SUPPORTED_VALUES, /* Get supported attribute values */ - IPP_CREATE_PRINTER_SUBSCRIPTION, /* Create a printer subscription @since CUPS 1.2/Mac OS X 10.5@ */ - IPP_CREATE_JOB_SUBSCRIPTION, /* Create a job subscription @since CUPS 1.2/Mac OS X 10.5@ */ - IPP_GET_SUBSCRIPTION_ATTRIBUTES, /* Get subscription attributes @since CUPS 1.2/Mac OS X 10.5@ */ - IPP_GET_SUBSCRIPTIONS, /* Get list of subscriptions @since CUPS 1.2/Mac OS X 10.5@ */ - IPP_RENEW_SUBSCRIPTION, /* Renew a printer subscription @since CUPS 1.2/Mac OS X 10.5@ */ - IPP_CANCEL_SUBSCRIPTION, /* Cancel a subscription @since CUPS 1.2/Mac OS X 10.5@ */ - IPP_GET_NOTIFICATIONS, /* Get notification events @since CUPS 1.2/Mac OS X 10.5@ */ + IPP_CREATE_PRINTER_SUBSCRIPTION, /* Create a printer subscription @since CUPS 1.2/OS X 10.5@ */ + IPP_CREATE_JOB_SUBSCRIPTION, /* Create a job subscription @since CUPS 1.2/OS X 10.5@ */ + IPP_GET_SUBSCRIPTION_ATTRIBUTES, /* Get subscription attributes @since CUPS 1.2/OS X 10.5@ */ + IPP_GET_SUBSCRIPTIONS, /* Get list of subscriptions @since CUPS 1.2/OS X 10.5@ */ + IPP_RENEW_SUBSCRIPTION, /* Renew a printer subscription @since CUPS 1.2/OS X 10.5@ */ + IPP_CANCEL_SUBSCRIPTION, /* Cancel a subscription @since CUPS 1.2/OS X 10.5@ */ + IPP_GET_NOTIFICATIONS, /* Get notification events @since CUPS 1.2/OS X 10.5@ */ IPP_SEND_NOTIFICATIONS, /* Send notification events @private@ */ IPP_GET_RESOURCE_ATTRIBUTES, /* Get resource attributes @private@ */ IPP_GET_RESOURCE_DATA, /* Get resource data @private@ */ @@ -203,9 +203,9 @@ typedef enum ipp_op_e /**** IPP operations ****/ CUPS_GET_DEVICES, /* Get a list of supported devices */ CUPS_GET_PPDS, /* Get a list of supported drivers */ CUPS_MOVE_JOB, /* Move a job to a different printer */ - CUPS_AUTHENTICATE_JOB, /* Authenticate a job @since CUPS 1.2/Mac OS X 10.5@ */ - CUPS_GET_PPD, /* Get a PPD file @since CUPS 1.3/Mac OS X 10.5@ */ - CUPS_GET_DOCUMENT = 0x4027 /* Get a document file @since CUPS 1.4/Mac OS X 10.6@ */ + CUPS_AUTHENTICATE_JOB, /* Authenticate a job @since CUPS 1.2/OS X 10.5@ */ + CUPS_GET_PPD, /* Get a PPD file @since CUPS 1.3/OS X 10.5@ */ + CUPS_GET_DOCUMENT = 0x4027 /* Get a document file @since CUPS 1.4/OS X 10.6@ */ /* Legacy names for the add operations */ #define CUPS_ADD_PRINTER CUPS_ADD_MODIFY_PRINTER @@ -305,8 +305,8 @@ typedef enum ipp_status_e /**** IPP status codes ****/ IPP_TOO_MANY_JOBS, /* server-error-too-many-jobs */ IPP_TOO_MANY_DOCUMENTS, /* server-error-too-many-documents */ - IPP_AUTHENTICATION_CANCELED = 0x1000, /* Authentication canceled by user @since CUPS 1.5/Mac OS X 10.7@ */ - IPP_PKI_ERROR, /* Error negotiating a secure connection @since CUPS 1.5/Mac OS X 10.7@ */ + IPP_AUTHENTICATION_CANCELED = 0x1000, /* Authentication canceled by user @since CUPS 1.5/OS X 10.7@ */ + IPP_PKI_ERROR, /* Error negotiating a secure connection @since CUPS 1.5/OS X 10.7@ */ IPP_UPGRADE_REQUIRED /* TLS upgrade required */ /* Legacy name for canceled status */ @@ -366,21 +366,22 @@ typedef struct _ipp_s ipp_t; /**** IPP request/response data ****/ typedef struct _ipp_attribute_s ipp_attribute_t; /**** IPP attribute ****/ -/**** New in CUPS 1.2 ****/ +/**** New in CUPS 1.2/OS X 10.5 ****/ typedef ssize_t (*ipp_iocb_t)(void *context, ipp_uchar_t *buffer, size_t bytes); - /**** IPP IO Callback Function @since CUPS 1.2/Mac OS X 10.5@ ****/ + /**** IPP IO Callback Function @since CUPS 1.2/OS X 10.5@ ****/ -/**** New in CUPS 1.6 ****/ +/**** New in CUPS 1.6/OS X 10.8 ****/ typedef int (*ipp_copycb_t)(void *context, ipp_t *dst, ipp_attribute_t *attr); /* - * The following structures are PRIVATE starting with CUPS 1.6. Please use the - * new accessor functions available in CUPS 1.6 and later, as these definitions - * will be moved to a private header file in a future release. + * The following structures are PRIVATE starting with CUPS 1.6/OS X 10.8. + * Please use the new accessor functions available in CUPS 1.6 and later, as + * these definitions will be moved to a private header file in a future release. * * Define _IPP_PRIVATE_STRUCTURES to cause the private IPP structures to be - * exposed in CUPS 1.6. + * exposed in CUPS 1.6. This happens automatically on OS X when compiling for + * a deployment target of 10.7 or earlier. */ # if defined(_CUPS_SOURCE) || defined(_CUPS_IPP_PRIVATE_H_) @@ -421,7 +422,7 @@ typedef union _ipp_request_u /**** Request Header ****/ } status; /**** New in CUPS 1.1.19 ****/ - struct /* Event Header @since CUPS 1.1.19/Mac OS X 10.3@ */ + struct /* Event Header @since CUPS 1.1.19/OS X 10.3@ */ { ipp_uchar_t version[2]; /* Protocol version number */ ipp_status_t status_code; /* Status code */ @@ -465,7 +466,7 @@ typedef union _ipp_value_u /**** Attribute Value ****/ } unknown; /* Unknown attribute type */ /**** New in CUPS 1.1.19 ****/ - ipp_t *collection; /* Collection value @since CUPS 1.1.19/Mac OS X 10.3@ */ + ipp_t *collection; /* Collection value @since CUPS 1.1.19/OS X 10.3@ */ } _ipp_value_t; typedef _ipp_value_t ipp_value_t; /**** Convenience typedef that will be removed @private@ ****/ @@ -489,10 +490,10 @@ struct _ipp_s /**** IPP Request/Response/Notification ****/ ipp_tag_t curtag; /* Current attribute group tag */ /**** New in CUPS 1.2 ****/ - ipp_attribute_t *prev; /* Previous attribute (for read) @since CUPS 1.2/Mac OS X 10.5@ */ + ipp_attribute_t *prev; /* Previous attribute (for read) @since CUPS 1.2/OS X 10.5@ */ /**** New in CUPS 1.4.4 ****/ - int use; /* Use count @since CUPS 1.4.4/Mac OS X 10.6.?@ */ + int use; /* Use count @since CUPS 1.4.4/OS X 10.6.?@ */ }; # endif /* _IPP_PRIVATE_STRUCTURES */ @@ -559,7 +560,7 @@ extern void ippDeleteAttribute(ipp_t *ipp, ipp_attribute_t *attr) _CUPS_API_1_1 extern ipp_state_t ippReadFile(int fd, ipp_t *ipp) _CUPS_API_1_1_19; extern ipp_state_t ippWriteFile(int fd, ipp_t *ipp) _CUPS_API_1_1_19; -/**** New in CUPS 1.2/Mac OS X 10.5 ****/ +/**** New in CUPS 1.2/OS X 10.5 ****/ extern ipp_attribute_t *ippAddOctetString(ipp_t *ipp, ipp_tag_t group, const char *name, const void *data, int datalen) _CUPS_API_1_2; @@ -572,11 +573,11 @@ extern ipp_state_t ippReadIO(void *src, ipp_iocb_t cb, int blocking, extern ipp_state_t ippWriteIO(void *dst, ipp_iocb_t cb, int blocking, ipp_t *parent, ipp_t *ipp) _CUPS_API_1_2; -/**** New in CUPS 1.4/Mac OS X 10.6 ****/ +/**** New in CUPS 1.4/OS X 10.6 ****/ extern const char *ippTagString(ipp_tag_t tag) _CUPS_API_1_4; extern ipp_tag_t ippTagValue(const char *name) _CUPS_API_1_4; -/**** New in CUPS 1.6 ****/ +/**** New in CUPS 1.6/OS X 10.8 ****/ extern ipp_attribute_t *ippAddOutOfBand(ipp_t *ipp, ipp_tag_t group, ipp_tag_t value_tag, const char *name) _CUPS_API_1_6; diff --git a/cups/localize.c b/cups/localize.c index 0dd682abb..7bb0fedd0 100644 --- a/cups/localize.c +++ b/cups/localize.c @@ -61,7 +61,7 @@ static cups_lang_t *ppd_ll_CC(char *ll_CC, int ll_CC_size); * descriptions, printer presets, and custom option parameters. Each * localized string uses the UTF-8 character encoding. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on error */ @@ -246,7 +246,7 @@ ppdLocalizeAttr(ppd_file_t *ppd, /* I - PPD file */ * * If no value of the requested scheme can be found, NULL is returned. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ const char * /* O - Value or NULL if not found */ @@ -332,7 +332,7 @@ ppdLocalizeIPPReason( else if (!strncmp(reason, "output-area-full", 16)) message = _("The output bin is full."); else if (!strncmp(reason, "marker-supply-low", 17)) - message = _("The printer is running low on ink."); + message = _("The printer is running low on ink."); else if (!strncmp(reason, "marker-supply-empty", 19)) message = _("The printer may be out of ink."); else if (!strncmp(reason, "marker-waste-almost-full", 24)) @@ -351,7 +351,7 @@ ppdLocalizeIPPReason( message = _("The developer unit will need to be replaced soon."); else if (!strncmp(reason, "developer-empty", 15)) message = _("The developer unit needs to be replaced."); - + if (message) { strlcpy(buffer, _cupsLangString(lang, message), bufsize); @@ -499,7 +499,7 @@ ppdLocalizeIPPReason( * text from the attribute value. If no localized text for the requested * name can be found, @code NULL@ is returned. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ const char * /* O - Value or @code NULL@ if not found */ @@ -637,7 +637,7 @@ _ppdGetLanguages(ppd_file_t *ppd) /* I - PPD file */ /* * '_ppdHashName()' - Generate a hash value for a device or profile name. * - * This function is primarily used on Mac OS X, but is generally accessible + * This function is primarily used on OS X, but is generally accessible * since cupstestppd needs to check for profile name collisions in PPD files... */ diff --git a/cups/mark.c b/cups/mark.c index 44fc54d68..dc2257f39 100644 --- a/cups/mark.c +++ b/cups/mark.c @@ -3,7 +3,7 @@ * * Option marking routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -575,7 +575,7 @@ ppdMarkOption(ppd_file_t *ppd, /* I - PPD file record */ * * Options are returned from all groups in ascending alphanumeric order. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ppd_option_t * /* O - First option or @code NULL@ */ @@ -593,7 +593,7 @@ ppdFirstOption(ppd_file_t *ppd) /* I - PPD file */ * * Options are returned from all groups in ascending alphanumeric order. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ppd_option_t * /* O - Next option or @code NULL@ */ diff --git a/cups/notify.c b/cups/notify.c index b514c7db3..9d520f17d 100644 --- a/cups/notify.c +++ b/cups/notify.c @@ -3,7 +3,7 @@ * * Notification routines for CUPS. * - * Copyright 2007-2010 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 2005-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -33,7 +33,7 @@ * * The returned string must be freed by the caller using @code free@. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - Subject string or @code NULL@ */ @@ -164,7 +164,7 @@ cupsNotifySubject(cups_lang_t *lang, /* I - Language data */ * * The returned string must be freed by the caller using @code free@. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ char * /* O - Message text or @code NULL@ */ diff --git a/cups/options.c b/cups/options.c index e2b0c397d..8efe0b495 100644 --- a/cups/options.c +++ b/cups/options.c @@ -3,7 +3,7 @@ * * Option routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -438,7 +438,7 @@ cupsParseOptions( /* * 'cupsRemoveOption()' - Remove an option from an option array. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - New number of options */ diff --git a/cups/page.c b/cups/page.c index 8e79889ab..fb5841ca5 100644 --- a/cups/page.c +++ b/cups/page.c @@ -3,7 +3,7 @@ * * Page size functions for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -198,7 +198,7 @@ ppdPageSize(ppd_file_t *ppd, /* I - PPD file record */ * If the specified PPD file does not support custom page sizes, both * "minimum" and "maximum" are filled with zeroes. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ int /* O - 1 if custom sizes are supported, 0 otherwise */ diff --git a/cups/ppd.c b/cups/ppd.c index 2c826ff1b..1ff51b244 100644 --- a/cups/ppd.c +++ b/cups/ppd.c @@ -3,7 +3,7 @@ * * PPD file routines for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -327,7 +327,7 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */ /* * 'ppdErrorString()' - Returns the text assocated with a status. * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ const char * /* O - Status string */ @@ -397,7 +397,7 @@ _ppdGetEncoding(const char *name) /* I - LanguageEncoding string */ /* * 'ppdLastError()' - Return the status from the last ppdOpen*(). * - * @since CUPS 1.1.19/Mac OS X 10.3@ + * @since CUPS 1.1.19/OS X 10.3@ */ ppd_status_t /* O - Status code */ @@ -417,7 +417,7 @@ ppdLastError(int *line) /* O - Line number */ /* * '_ppdOpen()' - Read a PPD file into memory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ppd_file_t * /* O - PPD file record or @code NULL@ if the PPD file could not be opened. */ @@ -2106,7 +2106,7 @@ ppdOpen(FILE *fp) /* I - File to read from */ /* * 'ppdOpen2()' - Read a PPD file into memory. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ ppd_file_t * /* O - PPD file record or @code NULL@ if the PPD file could not be opened. */ @@ -2231,7 +2231,7 @@ ppdOpenFile(const char *filename) /* I - File to read from */ /* * 'ppdSetConformance()' - Set the conformance level for PPD files. * - * @since CUPS 1.1.20/Mac OS X 10.4@ + * @since CUPS 1.1.20/OS X 10.4@ */ void @@ -3062,7 +3062,7 @@ ppd_read(cups_file_t *fp, /* I - File to read from */ DEBUG_printf(("9ppd_read: LINE=\"%s\"", line->buffer)); /* - * The dynamically created PPDs for older style Mac OS X + * The dynamically created PPDs for older style OS X * drivers include a large blob of data inserted as comments * at the end of the file. As an optimization we can stop * reading the PPD when we get to the start of this data. diff --git a/cups/ppd.h b/cups/ppd.h index 049340efc..3e281bd42 100644 --- a/cups/ppd.h +++ b/cups/ppd.h @@ -58,10 +58,10 @@ extern "C" { # ifndef _PPD_DEPRECATED # if defined(__APPLE__) # if defined(MAC_OS_X_VERSION_10_8) && MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_8 - /* Building for 10.7 and earlier */ + /* Building for OS X 10.7 and earlier */ # define _PPD_DEPRECATED # elif !defined(MAC_OS_X_VERSION_10_8) - /* Building for 10.7 and earlier */ + /* Building for OS X 10.7 and earlier */ # define _PPD_DEPRECATED # else # define _PPD_DEPRECATED _CUPS_DEPRECATED @@ -119,7 +119,7 @@ typedef enum ppd_cs_e /**** Colorspaces ****/ PPD_CS_N /* DeviceN colorspace */ } ppd_cs_t; -typedef enum ppd_status_e /**** Status Codes @since CUPS 1.1.19/Mac OS X 10.3@ ****/ +typedef enum ppd_status_e /**** Status Codes @since CUPS 1.1.19/OS X 10.3@ ****/ { PPD_OK = 0, /* OK */ PPD_FILE_OPEN_ERROR, /* Unable to open PPD file */ @@ -148,16 +148,16 @@ typedef enum ppd_status_e /**** Status Codes @since CUPS 1.1.19/Mac OS X 10.3@ PPD_MAX_STATUS /* @private@ */ } ppd_status_t; -enum ppd_conform_e /**** Conformance Levels @since CUPS 1.1.19/Mac OS X 10.3@ ****/ +enum ppd_conform_e /**** Conformance Levels @since CUPS 1.1.19/OS X 10.3@ ****/ { PPD_CONFORM_RELAXED, /* Relax whitespace and control char */ PPD_CONFORM_STRICT /* Require strict conformance */ }; typedef enum ppd_conform_e ppd_conform_t; - /**** Conformance Levels @since CUPS 1.1.19/Mac OS X 10.3@ ****/ + /**** Conformance Levels @since CUPS 1.1.19/OS X 10.3@ ****/ -typedef struct ppd_attr_s /**** PPD Attribute Structure @since CUPS 1.1.19/Mac OS X 10.3@ ****/ +typedef struct ppd_attr_s /**** PPD Attribute Structure @since CUPS 1.1.19/OS X 10.3@ ****/ { char name[PPD_MAX_NAME]; /* Name of attribute (cupsXYZ) */ char spec[PPD_MAX_NAME]; /* Specifier string, if any */ @@ -198,7 +198,7 @@ typedef struct ppd_group_s /**** Groups ****/ ****/ char text[PPD_MAX_TEXT - PPD_MAX_NAME]; /* Human-readable group name */ - char name[PPD_MAX_NAME]; /* Group name @since CUPS 1.1.18/Mac OS X 10.3@ */ + char name[PPD_MAX_NAME]; /* Group name @since CUPS 1.1.18/OS X 10.3@ */ int num_options; /* Number of options */ ppd_option_t *options; /* Options */ int num_subgroups; /* Number of sub-groups */ @@ -243,8 +243,8 @@ typedef struct ppd_profile_s /**** sRGB Color Profiles ****/ float matrix[3][3]; /* Transform matrix */ } ppd_profile_t; -/**** New in CUPS 1.2/Mac OS X 10.5 ****/ -typedef enum ppd_cptype_e /**** Custom Parameter Type @since CUPS 1.2/Mac OS X 10.5@ ****/ +/**** New in CUPS 1.2/OS X 10.5 ****/ +typedef enum ppd_cptype_e /**** Custom Parameter Type @since CUPS 1.2/OS X 10.5@ ****/ { PPD_CUSTOM_CURVE, /* Curve value for f(x) = x^value */ PPD_CUSTOM_INT, /* Integer number value */ @@ -256,7 +256,7 @@ typedef enum ppd_cptype_e /**** Custom Parameter Type @since CUPS 1.2/Mac OS X PPD_CUSTOM_STRING /* String of characters */ } ppd_cptype_t; -typedef union ppd_cplimit_u /**** Custom Parameter Limit @since CUPS 1.2/Mac OS X 10.5@ ****/ +typedef union ppd_cplimit_u /**** Custom Parameter Limit @since CUPS 1.2/OS X 10.5@ ****/ { float custom_curve; /* Gamma value */ int custom_int; /* Integer value */ @@ -268,7 +268,7 @@ typedef union ppd_cplimit_u /**** Custom Parameter Limit @since CUPS 1.2/Mac OS int custom_string; /* String length */ } ppd_cplimit_t; -typedef union ppd_cpvalue_u /**** Custom Parameter Value @since CUPS 1.2/Mac OS X 10.5@ ****/ +typedef union ppd_cpvalue_u /**** Custom Parameter Value @since CUPS 1.2/OS X 10.5@ ****/ { float custom_curve; /* Gamma value */ int custom_int; /* Integer value */ @@ -280,7 +280,7 @@ typedef union ppd_cpvalue_u /**** Custom Parameter Value @since CUPS 1.2/Mac OS char *custom_string; /* String value */ } ppd_cpvalue_t; -typedef struct ppd_cparam_s /**** Custom Parameter @since CUPS 1.2/Mac OS X 10.5@ ****/ +typedef struct ppd_cparam_s /**** Custom Parameter @since CUPS 1.2/OS X 10.5@ ****/ { char name[PPD_MAX_NAME]; /* Parameter name */ char text[PPD_MAX_TEXT]; /* Human-readable text */ @@ -291,7 +291,7 @@ typedef struct ppd_cparam_s /**** Custom Parameter @since CUPS 1.2/Mac OS X 10. ppd_cpvalue_t current; /* Current value */ } ppd_cparam_t; -typedef struct ppd_coption_s /**** Custom Option @since CUPS 1.2/Mac OS X 10.5@ ****/ +typedef struct ppd_coption_s /**** Custom Option @since CUPS 1.2/OS X 10.5@ ****/ { char keyword[PPD_MAX_NAME]; /* Name of option that is being extended... */ ppd_option_t *option; /* Option that is being extended... */ @@ -300,7 +300,7 @@ typedef struct ppd_coption_s /**** Custom Option @since CUPS 1.2/Mac OS X 10.5@ } ppd_coption_t; typedef struct _ppd_cache_s _ppd_cache_t; - /**** PPD cache and mapping data @since CUPS 1.5/Mac OS X 10.7@ @private@ ****/ + /**** PPD cache and mapping data @since CUPS 1.5/OS X 10.7@ @private@ ****/ typedef struct ppd_file_s /**** PPD File ****/ { @@ -348,25 +348,25 @@ typedef struct ppd_file_s /**** PPD File ****/ int flip_duplex; /* 1 = Flip page for back sides @deprecated@ */ /**** New in CUPS 1.1.19 ****/ - char *protocols; /* Protocols (BCP, TBCP) string @since CUPS 1.1.19/Mac OS X 10.3@ */ - char *pcfilename; /* PCFileName string @since CUPS 1.1.19/Mac OS X 10.3@ */ - int num_attrs; /* Number of attributes @since CUPS 1.1.19/Mac OS X 10.3@ @private@ */ - int cur_attr; /* Current attribute @since CUPS 1.1.19/Mac OS X 10.3@ @private@ */ - ppd_attr_t **attrs; /* Attributes @since CUPS 1.1.19/Mac OS X 10.3@ @private@ */ + char *protocols; /* Protocols (BCP, TBCP) string @since CUPS 1.1.19/OS X 10.3@ */ + char *pcfilename; /* PCFileName string @since CUPS 1.1.19/OS X 10.3@ */ + int num_attrs; /* Number of attributes @since CUPS 1.1.19/OS X 10.3@ @private@ */ + int cur_attr; /* Current attribute @since CUPS 1.1.19/OS X 10.3@ @private@ */ + ppd_attr_t **attrs; /* Attributes @since CUPS 1.1.19/OS X 10.3@ @private@ */ - /**** New in CUPS 1.2/Mac OS X 10.5 ****/ - cups_array_t *sorted_attrs; /* Attribute lookup array @since CUPS 1.2/Mac OS X 10.5@ @private@ */ - cups_array_t *options; /* Option lookup array @since CUPS 1.2/Mac OS X 10.5@ @private@ */ - cups_array_t *coptions; /* Custom options array @since CUPS 1.2/Mac OS X 10.5@ @private@ */ + /**** New in CUPS 1.2/OS X 10.5 ****/ + cups_array_t *sorted_attrs; /* Attribute lookup array @since CUPS 1.2/OS X 10.5@ @private@ */ + cups_array_t *options; /* Option lookup array @since CUPS 1.2/OS X 10.5@ @private@ */ + cups_array_t *coptions; /* Custom options array @since CUPS 1.2/OS X 10.5@ @private@ */ - /**** New in CUPS 1.3/Mac OS X 10.5 ****/ - cups_array_t *marked; /* Marked choices @since CUPS 1.3/Mac OS X 10.5@ @private@ */ + /**** New in CUPS 1.3/OS X 10.5 ****/ + cups_array_t *marked; /* Marked choices @since CUPS 1.3/OS X 10.5@ @private@ */ - /**** New in CUPS 1.4/Mac OS X 10.6 ****/ - cups_array_t *cups_uiconstraints; /* cupsUIConstraints @since CUPS 1.4/Mac OS X 10.6@ @private@ */ + /**** New in CUPS 1.4/OS X 10.6 ****/ + cups_array_t *cups_uiconstraints; /* cupsUIConstraints @since CUPS 1.4/OS X 10.6@ @private@ */ /**** New in CUPS 1.5 ****/ - _ppd_cache_t *cache; /* PPD cache and mapping data @since CUPS 1.5/Mac OS X 10.7@ @private@ */ + _ppd_cache_t *cache; /* PPD cache and mapping data @since CUPS 1.5/OS X 10.7@ @private@ */ } ppd_file_t; @@ -434,14 +434,14 @@ extern ppd_option_t *ppdNextOption(ppd_file_t *ppd) _PPD_DEPRECATED; extern int ppdLocalize(ppd_file_t *ppd) _PPD_DEPRECATED; extern ppd_file_t *ppdOpen2(cups_file_t *fp) _PPD_DEPRECATED; -/**** New in CUPS 1.3/Mac OS X 10.5 ****/ +/**** New in CUPS 1.3/OS X 10.5 ****/ extern const char *ppdLocalizeIPPReason(ppd_file_t *ppd, const char *reason, const char *scheme, char *buffer, size_t bufsize) _PPD_DEPRECATED; -/**** New in CUPS 1.4/Mac OS X 10.6 ****/ +/**** New in CUPS 1.4/OS X 10.6 ****/ extern int cupsGetConflicts(ppd_file_t *ppd, const char *option, const char *choice, cups_option_t **options) diff --git a/cups/pwg-media.c b/cups/pwg-media.c index 24528868c..9e811054e 100644 --- a/cups/pwg-media.c +++ b/cups/pwg-media.c @@ -204,6 +204,7 @@ static _pwg_media_t const cups_pwg_media[] = _PWG_MEDIA_MM("jpn_chou4_90x205mm", NULL, "EnvChou4", 90, 205), _PWG_MEDIA_MM("jpn_hagaki_100x148mm", NULL, "Postcard", 100, 148), _PWG_MEDIA_MM("jpn_you4_105x235mm", NULL, "EnvYou4", 105, 235), + _PWG_MEDIA_MM("jpn_you6_98x190mm", NULL, "EnvYou6", 98, 190), _PWG_MEDIA_MM("jpn_chou2_111.1x146mm", NULL, NULL, 111.1, 146), _PWG_MEDIA_MM("jpn_chou3_120x235mm", NULL, "EnvChou3", 120, 235), _PWG_MEDIA_MM("jpn_oufuku_148x200mm", NULL, "DoublePostcardRotated", 148, 200), @@ -760,8 +761,11 @@ _pwgMediaForSize(int width, /* I - Width in 2540ths */ int length) /* I - Length in 2540ths */ { int i; /* Looping var */ - _pwg_media_t *media; /* Current media */ - int dw, dl; /* Difference in width and length */ + _pwg_media_t *media, /* Current media */ + *best_media = NULL; /* Best match */ + int dw, dl, /* Difference in width and length */ + best_dw = 999, /* Best difference in width and length */ + best_dl = 999; _cups_globals_t *cg = _cupsGlobals(); /* Global data */ @@ -786,13 +790,25 @@ _pwgMediaForSize(int width, /* I - Width in 2540ths */ * is just about 176/2540ths... */ - dw = media->width - width; - dl = media->length - length; + dw = abs(media->width - width); + dl = abs(media->length - length); - if (dw > -176 && dw < 176 && dl > -176 && dl < 176) + if (!dw && !dl) return (media); + else if (dw < 176 && dl < 176) + { + if (dw <= best_dw && dl <= best_dl) + { + best_media = media; + best_dw = dw; + best_dl = dl; + } + } } + if (best_media) + return (best_media); + /* * Not a standard size; convert it to a PWG custom name of the form: * diff --git a/cups/raster-private.h b/cups/raster-private.h index 169631e68..0e9118fcb 100644 --- a/cups/raster-private.h +++ b/cups/raster-private.h @@ -36,7 +36,7 @@ /* - * min/max/abs macros... + * min/max macros... */ # ifndef max @@ -45,9 +45,6 @@ # ifndef min # define min(a,b) ((a) < (b) ? (a) : (b)) # endif /* !min */ -# ifndef abs -# define abs(a) ((a) < 0 ? -(a) : (a)) -# endif /* !abs */ /* diff --git a/cups/raster.h b/cups/raster.h index 1510df2d6..c83d0bf7b 100644 --- a/cups/raster.h +++ b/cups/raster.h @@ -3,7 +3,7 @@ * * Raster file definitions for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * This file is part of the CUPS Imaging library. @@ -117,28 +117,28 @@ typedef enum cups_cspace_e /**** cupsColorSpace attribute values ****/ CUPS_CSPACE_GOLD = 13, /* Gold foil @deprecated@ */ CUPS_CSPACE_SILVER = 14, /* Silver foil @deprecated@ */ - CUPS_CSPACE_CIEXYZ = 15, /* CIE XYZ @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_CIELab = 16, /* CIE Lab @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_RGBW = 17, /* Red, green, blue, white (DeviceRGB, sRGB by default) @since CUPS 1.2/Mac OS X 10.5@ */ + CUPS_CSPACE_CIEXYZ = 15, /* CIE XYZ @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_CIELab = 16, /* CIE Lab @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_RGBW = 17, /* Red, green, blue, white (DeviceRGB, sRGB by default) @since CUPS 1.2/OS X 10.5@ */ CUPS_CSPACE_SW = 18, /* Luminance (gamma 2.2) @since CUPS 1.4.5@ */ CUPS_CSPACE_SRGB = 19, /* Red, green, blue (sRGB) @since CUPS 1.4.5@ */ CUPS_CSPACE_ADOBERGB = 20, /* Red, green, blue (Adobe RGB) @since CUPS 1.4.5@ */ - CUPS_CSPACE_ICC1 = 32, /* ICC-based, 1 color @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICC2 = 33, /* ICC-based, 2 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICC3 = 34, /* ICC-based, 3 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICC4 = 35, /* ICC-based, 4 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICC5 = 36, /* ICC-based, 5 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICC6 = 37, /* ICC-based, 6 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICC7 = 38, /* ICC-based, 7 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICC8 = 39, /* ICC-based, 8 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICC9 = 40, /* ICC-based, 9 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICCA = 41, /* ICC-based, 10 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICCB = 42, /* ICC-based, 11 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICCC = 43, /* ICC-based, 12 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICCD = 44, /* ICC-based, 13 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICCE = 45, /* ICC-based, 14 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ - CUPS_CSPACE_ICCF = 46, /* ICC-based, 15 colors @since CUPS 1.1.19/Mac OS X 10.3@ */ + CUPS_CSPACE_ICC1 = 32, /* ICC-based, 1 color @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICC2 = 33, /* ICC-based, 2 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICC3 = 34, /* ICC-based, 3 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICC4 = 35, /* ICC-based, 4 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICC5 = 36, /* ICC-based, 5 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICC6 = 37, /* ICC-based, 6 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICC7 = 38, /* ICC-based, 7 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICC8 = 39, /* ICC-based, 8 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICC9 = 40, /* ICC-based, 9 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICCA = 41, /* ICC-based, 10 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICCB = 42, /* ICC-based, 11 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICCC = 43, /* ICC-based, 12 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICCD = 44, /* ICC-based, 13 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICCE = 45, /* ICC-based, 14 colors @since CUPS 1.1.19/OS X 10.3@ */ + CUPS_CSPACE_ICCF = 46, /* ICC-based, 15 colors @since CUPS 1.1.19/OS X 10.3@ */ CUPS_CSPACE_DEVICE1 = 48, /* DeviceN, 1 color @since CUPS 1.4.5@ */ CUPS_CSPACE_DEVICE2 = 49, /* DeviceN, 2 colors @since CUPS 1.4.5@ */ @@ -186,8 +186,8 @@ enum cups_mode_e /**** cupsRasterOpen modes ****/ { CUPS_RASTER_READ = 0, /* Open stream for reading */ CUPS_RASTER_WRITE = 1, /* Open stream for writing */ - CUPS_RASTER_WRITE_COMPRESSED = 2, /* Open stream for compressed writing @since CUPS 1.3/Mac OS X 10.5@ */ - CUPS_RASTER_WRITE_PWG = 3 /* Open stream for compressed writing in PWG mode @since CUPS 1.5/Mac OS X 10.7@ */ + CUPS_RASTER_WRITE_COMPRESSED = 2, /* Open stream for compressed writing @since CUPS 1.3/OS X 10.5@ */ + CUPS_RASTER_WRITE_PWG = 3 /* Open stream for compressed writing in PWG mode @since CUPS 1.5/OS X 10.7@ */ }; typedef enum cups_mode_e cups_mode_t; /**** cupsRasterOpen modes ****/ @@ -266,7 +266,7 @@ typedef struct cups_page_header_s /**** Version 1 page header @deprecated@ ****/ } cups_page_header_t; /**** New in CUPS 1.2 ****/ -typedef struct cups_page_header2_s /**** Version 2 page header @since CUPS 1.2/Mac OS X 10.5@ ****/ +typedef struct cups_page_header2_s /**** Version 2 page header @since CUPS 1.2/OS X 10.5@ ****/ { /**** Standard Page Device Dictionary String Values ****/ char MediaClass[64]; /* MediaClass string */ @@ -314,20 +314,20 @@ typedef struct cups_page_header2_s /**** Version 2 page header @since CUPS 1.2/M unsigned cupsRowStep; /* Spacing between lines */ /**** Version 2 Dictionary Values ****/ - unsigned cupsNumColors; /* Number of color compoents @since CUPS 1.2/Mac OS X 10.5@ */ + unsigned cupsNumColors; /* Number of color compoents @since CUPS 1.2/OS X 10.5@ */ float cupsBorderlessScalingFactor; - /* Scaling that was applied to page data @since CUPS 1.2/Mac OS X 10.5@ */ + /* Scaling that was applied to page data @since CUPS 1.2/OS X 10.5@ */ float cupsPageSize[2]; /* Floating point PageSize (scaling * - * factor not applied) @since CUPS 1.2/Mac OS X 10.5@ */ + * factor not applied) @since CUPS 1.2/OS X 10.5@ */ float cupsImagingBBox[4]; /* Floating point ImagingBoundingBox * (scaling factor not applied, left, - * bottom, right, top) @since CUPS 1.2/Mac OS X 10.5@ */ - unsigned cupsInteger[16]; /* User-defined integer values @since CUPS 1.2/Mac OS X 10.5@ */ - float cupsReal[16]; /* User-defined floating-point values @since CUPS 1.2/Mac OS X 10.5@ */ - char cupsString[16][64]; /* User-defined string values @since CUPS 1.2/Mac OS X 10.5@ */ - char cupsMarkerType[64]; /* Ink/toner type @since CUPS 1.2/Mac OS X 10.5@ */ - char cupsRenderingIntent[64];/* Color rendering intent @since CUPS 1.2/Mac OS X 10.5@ */ - char cupsPageSizeName[64]; /* PageSize name @since CUPS 1.2/Mac OS X 10.5@ */ + * bottom, right, top) @since CUPS 1.2/OS X 10.5@ */ + unsigned cupsInteger[16]; /* User-defined integer values @since CUPS 1.2/OS X 10.5@ */ + float cupsReal[16]; /* User-defined floating-point values @since CUPS 1.2/OS X 10.5@ */ + char cupsString[16][64]; /* User-defined string values @since CUPS 1.2/OS X 10.5@ */ + char cupsMarkerType[64]; /* Ink/toner type @since CUPS 1.2/OS X 10.5@ */ + char cupsRenderingIntent[64];/* Color rendering intent @since CUPS 1.2/OS X 10.5@ */ + char cupsPageSizeName[64]; /* PageSize name @since CUPS 1.2/OS X 10.5@ */ } cups_page_header2_t; typedef struct _cups_raster_s cups_raster_t; diff --git a/cups/request.c b/cups/request.c index b71f7ffb0..34591e374 100644 --- a/cups/request.c +++ b/cups/request.c @@ -3,7 +3,7 @@ * * IPP utilities for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -112,7 +112,7 @@ cupsDoFileRequest(http_t *http, /* I - Connection to server or @code CUPS_HT * If "outfile" is a valid file descriptor, cupsDoIORequest() copies * all of the data after the IPP response message to the file. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ ipp_t * /* O - Response data */ @@ -335,7 +335,7 @@ cupsDoRequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP_ * additional data, use httpRead() after getting a successful response, * otherwise call httpFlush() to complete the response processing. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ ipp_t * /* O - Response or @code NULL@ on HTTP error */ @@ -499,7 +499,7 @@ cupsLastError(void) /* * 'cupsLastErrorString()' - Return the last IPP status-message. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ const char * /* O - status-message text from last request */ @@ -545,7 +545,7 @@ _cupsNextDelay(int current, /* I - Current delay value or 0 */ * This function is used after cupsGetResponse() to read the PPD or document * files for CUPS_GET_PPD and CUPS_GET_DOCUMENT requests, respectively. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ ssize_t /* O - Bytes read, 0 on EOF, -1 on error */ @@ -592,7 +592,7 @@ cupsReadResponseData( * Unlike cupsDoFileRequest(), cupsDoIORequest(), and cupsDoRequest(), the * request is not freed. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ http_status_t /* O - Initial HTTP status */ @@ -884,7 +884,7 @@ cupsSendRequest(http_t *http, /* I - Connection to server or @code CUPS_HTTP * This function is used after @link cupsSendRequest@ to provide a PPD and * after @link cupsStartDocument@ to provide a document file. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ http_status_t /* O - @code HTTP_CONTINUE@ if OK or HTTP status on error */ diff --git a/cups/sidechannel.c b/cups/sidechannel.c index 40091deca..7bd626eaf 100644 --- a/cups/sidechannel.c +++ b/cups/sidechannel.c @@ -69,7 +69,7 @@ * pointed to by the "data" parameter. cupsSideChannelDoRequest() will * update the value to contain the number of data bytes in the buffer. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ cups_sc_status_t /* O - Status of command */ @@ -108,7 +108,7 @@ cupsSideChannelDoRequest( * pointed to by the "data" parameter. cupsSideChannelDoRequest() will * update the value to contain the number of data bytes in the buffer. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ int /* O - 0 on success, -1 on error */ @@ -308,7 +308,7 @@ cupsSideChannelRead( * support SNMP queries. @code CUPS_SC_STATUS_NO_RESPONSE@ is returned when * the printer does not respond to the SNMP query. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ cups_sc_status_t /* O - Query status */ @@ -414,7 +414,7 @@ cupsSideChannelSNMPGet( * support SNMP queries. @code CUPS_SC_STATUS_NO_RESPONSE@ is returned when * the printer does not respond to the first SNMP query. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ cups_sc_status_t /* O - Status of first query of @code CUPS_SC_STATUS_OK@ on success */ @@ -533,7 +533,7 @@ cupsSideChannelSNMPWalk( * This function is normally only called by backend programs to send * responses to a filter, driver, or port monitor program. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ int /* O - 0 on success, -1 on error */ diff --git a/cups/sidechannel.h b/cups/sidechannel.h index ced5edd31..5f97257e0 100644 --- a/cups/sidechannel.h +++ b/cups/sidechannel.h @@ -3,7 +3,7 @@ * * Side-channel API definitions for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -61,9 +61,9 @@ enum cups_sc_command_e /**** Request command codes ****/ CUPS_SC_CMD_GET_BIDI = 3, /* Return bidirectional capabilities */ CUPS_SC_CMD_GET_DEVICE_ID = 4, /* Return the IEEE-1284 device ID */ CUPS_SC_CMD_GET_STATE = 5, /* Return the device state */ - CUPS_SC_CMD_SNMP_GET = 6, /* Query an SNMP OID @since CUPS 1.4/Mac OS X 10.6@ */ - CUPS_SC_CMD_SNMP_GET_NEXT = 7, /* Query the next SNMP OID @since CUPS 1.4/Mac OS X 10.6@ */ - CUPS_SC_CMD_GET_CONNECTED = 8, /* Return whether the backend is "connected" to the printer @since CUPS 1.5/Mac OS X 10.7@ */ + CUPS_SC_CMD_SNMP_GET = 6, /* Query an SNMP OID @since CUPS 1.4/OS X 10.6@ */ + CUPS_SC_CMD_SNMP_GET_NEXT = 7, /* Query the next SNMP OID @since CUPS 1.4/OS X 10.6@ */ + CUPS_SC_CMD_GET_CONNECTED = 8, /* Return whether the backend is "connected" to the printer @since CUPS 1.5/OS X 10.7@ */ CUPS_SC_CMD_MAX /* End of valid values @private@ */ }; typedef enum cups_sc_command_e cups_sc_command_t; diff --git a/cups/snmp-private.h b/cups/snmp-private.h index fbd5467ab..49f5b60fa 100644 --- a/cups/snmp-private.h +++ b/cups/snmp-private.h @@ -3,7 +3,7 @@ * * Private SNMP definitions for CUPS. * - * Copyright 2007-2010 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 2006-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -34,7 +34,7 @@ #define CUPS_SNMP_MAX_COMMUNITY 512 /* Maximum size of community name */ #define CUPS_SNMP_MAX_OID 128 /* Maximum number of OID numbers */ #define CUPS_SNMP_MAX_PACKET 1472 /* Maximum size of SNMP packet */ -#define CUPS_SNMP_MAX_STRING 65536 /* Maximum size of string */ +#define CUPS_SNMP_MAX_STRING 1024 /* Maximum size of string */ #define CUPS_SNMP_VERSION_1 0 /* SNMPv1 */ diff --git a/cups/snmp.c b/cups/snmp.c index 29b47d77e..33dd1d4ea 100644 --- a/cups/snmp.c +++ b/cups/snmp.c @@ -1085,7 +1085,7 @@ asn1_decode_snmp(unsigned char *buffer, /* I - Buffer */ packet->object_value.string.num_bytes = length; asn1_get_string(&bufptr, bufend, length, (char *)packet->object_value.string.bytes, - CUPS_SNMP_MAX_STRING); + sizeof(packet->object_value.string.bytes)); break; case CUPS_ASN1_OID : diff --git a/cups/tempfile.c b/cups/tempfile.c index facd5242a..ac59d9f8c 100644 --- a/cups/tempfile.c +++ b/cups/tempfile.c @@ -3,7 +3,7 @@ * * Temp file utilities for CUPS. * - * Copyright 2007-2010 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -204,7 +204,7 @@ cupsTempFile(char *filename, /* I - Pointer to buffer */ * The temporary filename is returned in the filename buffer. * The temporary file is opened for writing. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ cups_file_t * /* O - CUPS file or @code NULL@ on error */ diff --git a/cups/testpwg.c b/cups/testpwg.c index 756baf0d8..a352f9ffc 100644 --- a/cups/testpwg.c +++ b/cups/testpwg.c @@ -3,7 +3,7 @@ * * PWG test program for CUPS. * - * Copyright 2009-2011 by Apple Inc. + * Copyright 2009-2012 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -260,6 +260,34 @@ main(int argc, /* I - Number of command-line args */ else puts("PASS"); + fputs("_pwgMediaForSize(9842, 19050): ", stdout); + if ((pwgmedia = _pwgMediaForSize(9842, 19050)) == NULL) + { + puts("FAIL (not found)"); + status ++; + } + else if (strcmp(pwgmedia->pwg, "na_monarch_3.875x7.5in")) + { + printf("FAIL (%s)\n", pwgmedia->pwg); + status ++; + } + else + printf("PASS (%s)\n", pwgmedia->pwg); + + fputs("_pwgMediaForSize(9800, 19000): ", stdout); + if ((pwgmedia = _pwgMediaForSize(9800, 19000)) == NULL) + { + puts("FAIL (not found)"); + status ++; + } + else if (strcmp(pwgmedia->pwg, "jpn_you6_98x190mm")) + { + printf("FAIL (%s)\n", pwgmedia->pwg); + status ++; + } + else + printf("PASS (%s)\n", pwgmedia->pwg); + return (status); } diff --git a/cups/thread-private.h b/cups/thread-private.h index 48f8a39a6..b16eec187 100644 --- a/cups/thread-private.h +++ b/cups/thread-private.h @@ -3,7 +3,7 @@ * * Private threading definitions for CUPS. * - * Copyright 2009-2010 by Apple Inc. + * Copyright 2009-2012 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -49,7 +49,7 @@ typedef pthread_key_t _cups_threadkey_t; typedef void *(__stdcall *_cups_thread_func_t)(void *arg); typedef struct _cups_mutex_s { - int m_init; /* Flag for on-demand initialization */ + int m_init; /* Flag for on-demand initialization */ CRITICAL_SECTION m_criticalSection; /* Win32 Critical Section */ } _cups_mutex_t; @@ -62,6 +62,7 @@ typedef DWORD _cups_threadkey_t; # define _cupsThreadSetData(k,p) TlsSetValue(k,p) # else +typedef void *(*_cups_thread_func_t)(void *arg); typedef char _cups_mutex_t; typedef char _cups_rwlock_t; typedef void *_cups_threadkey_t; diff --git a/cups/thread.c b/cups/thread.c index 7574298fa..da1882e9d 100644 --- a/cups/thread.c +++ b/cups/thread.c @@ -3,7 +3,7 @@ * * Threading primitives for CUPS. * - * Copyright 2009-2010 by Apple Inc. + * Copyright 2009-2012 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -113,7 +113,7 @@ _cupsRWUnlock(_cups_rwlock_t *rwlock) /* I - Reader/writer lock */ * '_cupsThreadCreate()' - Create a thread. */ -int /* O - 0 on failure, 1 on success */ +int /* O - 0 on failure, 1 on success */ _cupsThreadCreate( _cups_thread_func_t func, /* I - Entry point */ void *arg) /* I - Entry point context */ @@ -223,7 +223,7 @@ _cupsRWUnlock(_cups_rwlock_t *rwlock) /* I - Reader/writer lock */ * '_cupsThreadCreate()' - Create a thread. */ -int /* O - 0 on failure, 1 on success */ +int /* O - 0 on failure, 1 on success */ _cupsThreadCreate( _cups_thread_func_t func, /* I - Entry point */ void *arg) /* I - Entry point context */ @@ -309,6 +309,25 @@ _cupsRWUnlock(_cups_rwlock_t *rwlock) /* I - Reader/writer lock */ { (void)rwlock; } + + +/* + * '_cupsThreadCreate()' - Create a thread. + */ + +int /* O - 0 on failure, 1 on success */ +_cupsThreadCreate( + _cups_thread_func_t func, /* I - Entry point */ + void *arg) /* I - Entry point context */ +{ + fputs("DEBUG: CUPS was compiled without threading support, no thread " + "created.\n", stderr); + + (void)func; + (void)arg; + + return (0); +} #endif /* HAVE_PTHREAD_H */ diff --git a/cups/usersys.c b/cups/usersys.c index 0fcd86e57..7aee0007f 100644 --- a/cups/usersys.c +++ b/cups/usersys.c @@ -136,7 +136,7 @@ cupsGetPassword(const char *prompt) /* I - Prompt string */ * the @link cupsSetPasswordCB@ or @link cupsSetPasswordCB2@ functions need to * do so in each thread for the same function to be used. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ const char * /* O - Password */ @@ -194,7 +194,7 @@ cupsServer(void) * in a program. Multi-threaded programs that override the callback need to do * so in each thread for the same callback to be used. * - * @since CUPS 1.5/Mac OS X 10.7@ + * @since CUPS 1.5/OS X 10.7@ */ void @@ -218,7 +218,7 @@ cupsSetClientCertCB( * program. Multi-threaded programs that override the setting need to do so in * each thread for the same setting to be used. * - * @since CUPS 1.5/Mac OS X 10.7@ + * @since CUPS 1.5/OS X 10.7@ */ int /* O - Status of call (0 = success) */ @@ -304,7 +304,7 @@ cupsSetPasswordCB(cups_password_cb_t cb)/* I - Callback function */ * in a program. Multi-threaded programs that override the callback need to do * so in each thread for the same callback to be used. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ void @@ -385,7 +385,7 @@ cupsSetServer(const char *server) /* I - Server name */ * in a program. Multi-threaded programs that override the callback need to do * so in each thread for the same callback to be used. * - * @since CUPS 1.5/Mac OS X 10.7@ + * @since CUPS 1.5/OS X 10.7@ */ void @@ -874,7 +874,7 @@ cups_read_client_conf( } #ifndef __APPLE__ /* - * The Server directive is not supported on Mac OS X due to app sandboxing + * The Server directive is not supported on OS X due to app sandboxing * restrictions, i.e. not all apps request network access. */ else if (!cups_server && (!cg->server[0] || !cg->ipp_port) && diff --git a/cups/util.c b/cups/util.c index e6fb06d0a..4c5b4c43d 100644 --- a/cups/util.c +++ b/cups/util.c @@ -3,7 +3,7 @@ * * Printing utilities for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -106,7 +106,7 @@ cupsCancelJob(const char *name, /* I - Name of printer or class */ * Use the @link cupsLastError@ and @link cupsLastErrorString@ functions to get * the cause of any failure. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ ipp_status_t /* O - IPP status */ @@ -194,7 +194,7 @@ cupsCancelJob2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_ * print, use the @link cupsPrintFile2@ or @link cupsPrintFiles2@ function * instead. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ int /* O - Job ID or 0 on error */ @@ -274,7 +274,7 @@ cupsCreateJob( * * The document must have been started using @link cupsStartDocument@. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ ipp_status_t /* O - Status of document submission */ @@ -443,7 +443,7 @@ cupsGetDefault(void) * functions to get the user-defined default printer, as this function does * not support the lpoptions-defined default printer. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ const char * /* O - Default printer or @code NULL@ */ @@ -534,7 +534,7 @@ cupsGetJobs(cups_job_t **jobs, /* O - Job data */ * pending, processing, or held and @code CUPS_WHICHJOBS_COMPLETED@ returns * jobs that are stopped, canceled, aborted, or completed. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ int /* O - Number of jobs */ @@ -838,7 +838,7 @@ cupsGetPPD(const char *name) /* I - Destination name */ * each call to @link cupsGetPPD@ or @code cupsGetPPD2@. The caller "owns" the * file that is created and must @code unlink@ the returned filename. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ const char * /* O - Filename for PPD file */ @@ -879,7 +879,7 @@ cupsGetPPD2(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DE * For classes, @code cupsGetPPD3@ returns the PPD file for the first printer * in the class. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ http_status_t /* O - HTTP status */ @@ -1275,7 +1275,7 @@ cupsGetPrinters(char ***printers) /* O - Printers */ * overwritten on the next call to @link cupsGetPPD@, @link cupsGetPPD2@, * or @link cupsGetServerPPD@. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ char * /* O - Name of PPD file or @code NULL@ on error */ @@ -1364,7 +1364,7 @@ cupsPrintFile(const char *name, /* I - Destination name */ * 'cupsPrintFile2()' - Print a file to a printer or class on the specified * server. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ int /* O - Job ID or 0 on error */ @@ -1416,7 +1416,7 @@ cupsPrintFiles( * 'cupsPrintFiles2()' - Print one or more files to a printer or class on the * specified server. * - * @since CUPS 1.1.21/Mac OS X 10.4@ + * @since CUPS 1.1.21/OS X 10.4@ */ int /* O - Job ID or 0 on error */ @@ -1548,7 +1548,7 @@ cupsPrintFiles2( * @code CUPS_FORMAT_TEXT@ are provided for the "format" argument, although * any supported MIME type string can be supplied. * - * @since CUPS 1.4/Mac OS X 10.6@ + * @since CUPS 1.4/OS X 10.6@ */ http_status_t /* O - HTTP status of request */ diff --git a/cups/versioning.h b/cups/versioning.h index 2e6447af5..38bfddbeb 100644 --- a/cups/versioning.h +++ b/cups/versioning.h @@ -3,7 +3,7 @@ * * API versioning definitions for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -24,11 +24,9 @@ * which add compiler-specific attributes that flag functions that are * deprecated or added in particular releases. * - * On Mac OS X, the _CUPS_API_* constants are defined based on the values of + * On OS X, the _CUPS_API_* constants are defined based on the values of * the MAC_OS_X_VERSION_MIN_ALLOWED and MAC_OS_X_VERSION_MAX_ALLOWED constants * provided by the compiler. - * - * */ # if defined(__APPLE__) && !defined(_CUPS_SOURCE) diff --git a/data/media.defs b/data/media.defs index 43b48c352..6f0be82e8 100644 --- a/data/media.defs +++ b/data/media.defs @@ -198,7 +198,7 @@ #media "w167h288/Shipping Address" 167 288 #media "w162h540/Internet Postage 2-Part" 162 540 #media "w162h504/Internet Postage 3-Part" 162 504 -#media "w41h248/File Folder" 41 248 +#media "w41h248/File Folder " 41 248 #media "w41h144/Hanging Folder" 41 144 #media "w153h198/3.5\" Disk" 153 198 diff --git a/doc/Makefile b/doc/Makefile index 0e4688474..33c1e1d01 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -66,7 +66,7 @@ HELPFILES = \ help/man-cancel.html \ help/man-cups-config.html \ help/man-cups-lpd.html \ - help/man-cups-polld.html \ + help/man-cups-snmp.html \ help/man-cupsaddsmb.html \ help/man-cupsd.html \ help/man-cupsenable.html \ diff --git a/doc/help/api-array.html b/doc/help/api-array.html index 147251ebd..c5ab8f773 100644 --- a/doc/help/api-array.html +++ b/doc/help/api-array.html @@ -609,7 +609,7 @@ for (s = (char *)cupsArrayFirst(array); s != NULL; puts(s);

Functions

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayAdd

+

 CUPS 1.2/OS X 10.5 cupsArrayAdd

Add an element to the array.

int cupsArrayAdd (
@@ -631,7 +631,7 @@ appended at the end of the run of identical elements. For unsorted arrays, the element is appended to the end of the array.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayClear

+

 CUPS 1.2/OS X 10.5 cupsArrayClear

Clear the array.

void cupsArrayClear (
@@ -648,7 +648,7 @@ The caller is responsible for freeing the memory used by the elements themselves.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayCount

+

 CUPS 1.2/OS X 10.5 cupsArrayCount

Get the number of elements in the array.

int cupsArrayCount (
@@ -661,7 +661,7 @@ int cupsArrayCount (

Return Value

Number of elements

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayCurrent

+

 CUPS 1.2/OS X 10.5 cupsArrayCurrent

Return the current element in the array.

void *cupsArrayCurrent (
@@ -679,7 +679,7 @@ void *cupsArrayCurrent (
cupsArrayFirst, or cupsArrayIndex, or cupsArrayLast.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayDelete

+

 CUPS 1.2/OS X 10.5 cupsArrayDelete

Free all memory used by the array.

void cupsArrayDelete (
@@ -695,7 +695,7 @@ void cupsArrayDelete (
elements themselves.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayDup

+

 CUPS 1.2/OS X 10.5 cupsArrayDup

Duplicate the array.

cups_array_t *cupsArrayDup (
@@ -708,7 +708,7 @@ elements themselves.

Return Value

Duplicate array

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayFind

+

 CUPS 1.2/OS X 10.5 cupsArrayFind

Find an element in the array.

void *cupsArrayFind (
@@ -724,7 +724,7 @@ void *cupsArrayFind (

Return Value

Element found or NULL

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayFirst

+

 CUPS 1.2/OS X 10.5 cupsArrayFirst

Get the first element in the array.

void *cupsArrayFirst (
@@ -737,7 +737,7 @@ void *cupsArrayFirst (

Return Value

First element or NULL if the array is empty

-

 CUPS 1.3/Mac OS X 10.5 cupsArrayGetIndex

+

 CUPS 1.3/OS X 10.5 cupsArrayGetIndex

Get the index of the current element.

int cupsArrayGetIndex (
@@ -755,7 +755,7 @@ int cupsArrayGetIndex (
cupsArrayFirst, or cupsArrayIndex, or cupsArrayLast.

-

 CUPS 1.3/Mac OS X 10.5 cupsArrayGetInsert

+

 CUPS 1.3/OS X 10.5 cupsArrayGetInsert

Get the index of the last inserted element.

int cupsArrayGetInsert (
@@ -768,7 +768,7 @@ int cupsArrayGetInsert (

Return Value

Index of the last inserted element, starting at 0

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayIndex

+

 CUPS 1.2/OS X 10.5 cupsArrayIndex

Get the N-th element in the array.

void *cupsArrayIndex (
@@ -784,7 +784,7 @@ void *cupsArrayIndex (

Return Value

N-th element or NULL

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayInsert

+

 CUPS 1.2/OS X 10.5 cupsArrayInsert

Insert an element in the array.

int cupsArrayInsert (
@@ -806,7 +806,7 @@ inserted at the beginning of the run of identical elements. For unsorted arrays, the element is inserted at the beginning of the array.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayLast

+

 CUPS 1.2/OS X 10.5 cupsArrayLast

Get the last element in the array.

void *cupsArrayLast (
@@ -819,7 +819,7 @@ void *cupsArrayLast (

Return Value

Last element or NULL if the array is empty

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayNew

+

 CUPS 1.2/OS X 10.5 cupsArrayNew

Create a new array.

cups_array_t *cupsArrayNew (
@@ -842,7 +842,7 @@ data pointer argument can safely be omitted when not required so functions like strcmp can be used for sorted string arrays.

-

 CUPS 1.3/Mac OS X 10.5 cupsArrayNew2

+

 CUPS 1.3/OS X 10.5 cupsArrayNew2

Create a new array with hash.

cups_array_t *cupsArrayNew2 (
@@ -874,7 +874,7 @@ The hash function ("h") is used to implement cached lookups with the specified hash size ("hsize").

-

 CUPS 1.5/Mac OS X 10.7 cupsArrayNew3

+

 CUPS 1.5/OS X 10.7 cupsArrayNew3

Create a new array with hash and/or free function.

cups_array_t *cupsArrayNew3 (
@@ -918,7 +918,7 @@ The free function ("cf") is used to automatically free/release element removed or the array is deleted.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayNext

+

 CUPS 1.2/OS X 10.5 cupsArrayNext

Get the next element in the array.

void *cupsArrayNext (
@@ -939,7 +939,7 @@ The next element is undefined until you call cups to set the current element.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayPrev

+

 CUPS 1.2/OS X 10.5 cupsArrayPrev

Get the previous element in the array.

void *cupsArrayPrev (
@@ -960,7 +960,7 @@ The previous element is undefined until you call to set the current element.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayRemove

+

 CUPS 1.2/OS X 10.5 cupsArrayRemove

Remove an element from the array.

int cupsArrayRemove (
@@ -984,7 +984,7 @@ The caller is responsible for freeing the memory used by the removed element.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayRestore

+

 CUPS 1.2/OS X 10.5 cupsArrayRestore

Reset the current element to the last cupsArraySave.

void *cupsArrayRestore (
@@ -997,7 +997,7 @@ void *cupsArrayRestore (

Return Value

New current element

-

 CUPS 1.2/Mac OS X 10.5 cupsArraySave

+

 CUPS 1.2/OS X 10.5 cupsArraySave

Mark the current element for a later cupsArrayRestore.

int cupsArraySave (
@@ -1018,7 +1018,7 @@ to set the current element.
The save/restore stack is guaranteed to be at least 32 elements deep.

-

 CUPS 1.2/Mac OS X 10.5 cupsArrayUserData

+

 CUPS 1.2/OS X 10.5 cupsArrayUserData

Return the user data for an array.

void *cupsArrayUserData (
diff --git a/doc/help/api-cups.html b/doc/help/api-cups.html index bda8ad661..8555764f9 100644 --- a/doc/help/api-cups.html +++ b/doc/help/api-cups.html @@ -1022,7 +1022,7 @@ int cupsAddOption (

Discussion

New option arrays can be initialized simply by passing 0 for the "num_options" parameter.

-

 CUPS 1.2/Mac OS X 10.5 cupsAdminCreateWindowsPPD

+

 CUPS 1.2/OS X 10.5 cupsAdminCreateWindowsPPD

Create the Windows PPD file for a printer.

char *cupsAdminCreateWindowsPPD (
@@ -1044,7 +1044,7 @@ char *cupsAdminCreateWindowsPPD (

Return Value

PPD file or NULL

-

 CUPS 1.2/Mac OS X 10.5 cupsAdminExportSamba

+

 CUPS 1.2/OS X 10.5 cupsAdminExportSamba

Export a printer to Samba.

int cupsAdminExportSamba (
@@ -1072,7 +1072,7 @@ int cupsAdminExportSamba (

Return Value

1 on success, 0 on failure

-

 CUPS 1.3/Mac OS X 10.5 cupsAdminGetServerSettings

+

 CUPS 1.3/OS X 10.5 cupsAdminGetServerSettings

Get settings from the server.

int cupsAdminGetServerSettings (
@@ -1096,7 +1096,7 @@ int cupsAdminGetServerSettings (
you are done with them.

-

 CUPS 1.3/Mac OS X 10.5 cupsAdminSetServerSettings

+

 CUPS 1.3/OS X 10.5 cupsAdminSetServerSettings

Set settings on the server.

int cupsAdminSetServerSettings (
@@ -1137,7 +1137,7 @@ to cancel the current job on the named destination.

Use the cupsLastError and cupsLastErrorString functions to get the cause of any failure.

-

 CUPS 1.4/Mac OS X 10.6 cupsCancelJob2

+

 CUPS 1.4/OS X 10.6 cupsCancelJob2

Cancel or purge a print job.

ipp_status_t cupsCancelJob2 (
@@ -1170,7 +1170,7 @@ Use the cupsLastError and  CUPS 1.6 cupsConnectDest +

 CUPS 1.6/OS X 10.8 cupsConnectDest

Connect to the server for a destination.

http_t *cupsConnectDest (
@@ -1212,7 +1212,7 @@ to by "cancel" is non-zero, or the callback function (or block) return The caller is responsible for calling httpClose() on the returned object.

-

 CUPS 1.6 cupsConnectDestBlock

+

 CUPS 1.6/OS X 10.8 cupsConnectDestBlock

Connect to the server for a destination.

http_t *cupsConnectDestBlock (
@@ -1272,7 +1272,7 @@ copy) - for use with the cupsEnumDests* functions. The caller is responsible for calling cupsFreeDests() on the returned object(s).

-

 CUPS 1.4/Mac OS X 10.6 cupsCreateJob

+

 CUPS 1.4/OS X 10.6 cupsCreateJob

Create an empty job for streaming.

int cupsCreateJob (
@@ -1321,7 +1321,7 @@ Note: The current encryption setting is tracked separately for each thread in a program. Multi-threaded programs that override the setting via the cupsSetEncryption function need to do so in each thread for the same setting to be used.

-

 CUPS 1.6 cupsEnumDests

+

 CUPS 1.6/OS X 10.8 cupsEnumDests

Enumerate available destinations with a callback function.

int cupsEnumDests (
@@ -1363,7 +1363,7 @@ Enumeration happens on the current thread and does not return until all destinations have been enumerated or the callback function returns 0.

-

 CUPS 1.6 cupsEnumDestsBlock

+

 CUPS 1.6/OS X 10.8 cupsEnumDestsBlock

Enumerate available destinations with a block.

int cupsEnumDestsBlock (
@@ -1401,7 +1401,7 @@ Enumeration happens on the current thread and does not return until all destinations have been enumerated or the block returns 0.

-

 CUPS 1.4/Mac OS X 10.6 cupsFinishDocument

+

 CUPS 1.4/OS X 10.6 cupsFinishDocument

Finish sending a document.

ipp_status_t cupsFinishDocument (
@@ -1493,7 +1493,7 @@ variables are not set, the server default destination is returned. Applications should use the cupsGetDests and cupsGetDest functions to get the user-defined default printer, as this function does not support the lpoptions-defined default printer.

-

 CUPS 1.1.21/Mac OS X 10.4 cupsGetDefault2

+

 CUPS 1.1.21/OS X 10.4 cupsGetDefault2

Get the default printer or class for the specified server.

const char *cupsGetDefault2 (
@@ -1564,7 +1564,7 @@ marker-types, and printer-commands attributes as well.

Use the cupsFreeDests function to free the destination list and the cupsGetDest function to find a particular destination.

-

 CUPS 1.1.21/Mac OS X 10.4 cupsGetDests2

+

 CUPS 1.1.21/OS X 10.4 cupsGetDests2

Get the list of destinations from the specified server.

int cupsGetDests2 (
@@ -1620,7 +1620,7 @@ int cupsGetJobs (
of state, while CUPS_WHICHJOBS_ACTIVE returns jobs that are pending, processing, or held and CUPS_WHICHJOBS_COMPLETED returns jobs that are stopped, canceled, aborted, or completed.

-

 CUPS 1.1.21/Mac OS X 10.4 cupsGetJobs2

+

 CUPS 1.1.21/OS X 10.4 cupsGetJobs2

Get the jobs from the specified server.

int cupsGetJobs2 (
@@ -1652,7 +1652,7 @@ pending, processing, or held and CUPS_WHICHJOBS_COMPLETED returns jobs that are stopped, canceled, aborted, or completed.

-

 CUPS 1.4/Mac OS X 10.6 cupsGetNamedDest

+

 CUPS 1.4/OS X 10.6 cupsGetNamedDest

Get options for the named destination.

cups_dest_t *cupsGetNamedDest (
@@ -1727,7 +1727,7 @@ in the class.
The returned filename is stored in a static buffer and is overwritten with each call to cupsGetPPD or cupsGetPPD2. The caller "owns" the file that is created and must unlink the returned filename.

-

 CUPS 1.1.21/Mac OS X 10.4 cupsGetPPD2

+

 CUPS 1.1.21/OS X 10.4 cupsGetPPD2

Get the PPD file for a printer from the specified server.

const char *cupsGetPPD2 (
@@ -1752,7 +1752,7 @@ each call to cupsGetPPD or cupsGetP file that is created and must unlink the returned filename.

-

 CUPS 1.4/Mac OS X 10.6 cupsGetPPD3

+

 CUPS 1.4/OS X 10.6 cupsGetPPD3

Get the PPD file for a printer on the specified server if it has changed.

@@ -1817,7 +1817,7 @@ Note: The current password callback function is tracked separately for each thread in a program. Multi-threaded programs that override the setting via the cupsSetPasswordCB or cupsSetPasswordCB2 functions need to do so in each thread for the same function to be used.

-

 CUPS 1.4/Mac OS X 10.6 cupsGetPassword2

+

 CUPS 1.4/OS X 10.6 cupsGetPassword2

Get a password from the user using the advanced password callback.

@@ -1867,7 +1867,7 @@ int cupsGetPrinters (

This function is deprecated - use cupsGetDests instead.

-

 CUPS 1.3/Mac OS X 10.5 cupsGetServerPPD

+

 CUPS 1.3/OS X 10.5 cupsGetServerPPD

Get an available PPD file from the server.

char *cupsGetServerPPD (
@@ -1944,7 +1944,7 @@ cups_lang_t *cupsLangGet (

Return Value

Language data

-

 CUPS 1.2/Mac OS X 10.5 cupsNotifySubject

+

 CUPS 1.2/OS X 10.5 cupsNotifySubject

Return the subject for the given notification message.

char *cupsNotifySubject (
@@ -1964,7 +1964,7 @@ char *cupsNotifySubject (

The returned string must be freed by the caller using free.

-

 CUPS 1.2/Mac OS X 10.5 cupsNotifyText

+

 CUPS 1.2/OS X 10.5 cupsNotifyText

Return the text for the given notification message.

char *cupsNotifyText (
@@ -2034,7 +2034,7 @@ int cupsPrintFile (

Return Value

Job ID or 0 on error

-

 CUPS 1.1.21/Mac OS X 10.4 cupsPrintFile2

+

 CUPS 1.1.21/OS X 10.4 cupsPrintFile2

Print a file to a printer or class on the specified server.

@@ -2092,7 +2092,7 @@ int cupsPrintFiles (

Return Value

Job ID or 0 on error

-

 CUPS 1.1.21/Mac OS X 10.4 cupsPrintFiles2

+

 CUPS 1.1.21/OS X 10.4 cupsPrintFiles2

Print one or more files to a printer or class on the specified server.

@@ -2124,7 +2124,7 @@ int cupsPrintFiles2 (

Return Value

Job ID or 0 on error

-

 CUPS 1.3/Mac OS X 10.5 cupsRemoveDest

+

 CUPS 1.3/OS X 10.5 cupsRemoveDest

Remove a destination from the destination list.

int cupsRemoveDest (
@@ -2153,7 +2153,7 @@ queue, merely the lpoptions for that destination/instance. Use the options for the user.

-

 CUPS 1.2/Mac OS X 10.5 cupsRemoveOption

+

 CUPS 1.2/OS X 10.5 cupsRemoveOption

Remove an option from an option array.

int cupsRemoveOption (
@@ -2191,7 +2191,7 @@ Note: The current server is tracked separately for each thread in a program. Multi-threaded programs that override the server via the cupsSetServer function need to do so in each thread for the same server to be used.

-

 CUPS 1.5/Mac OS X 10.7 cupsSetClientCertCB

+

 CUPS 1.5/OS X 10.7 cupsSetClientCertCB

Set the client certificate callback.

void cupsSetClientCertCB (
@@ -2213,7 +2213,7 @@ in a program. Multi-threaded programs that override the callback need to do so in each thread for the same callback to be used.

-

 CUPS 1.5/Mac OS X 10.7 cupsSetCredentials

+

 CUPS 1.5/OS X 10.7 cupsSetCredentials

Set the default credentials to be used for SSL/TLS connections.

@@ -2233,7 +2233,7 @@ program. Multi-threaded programs that override the setting need to do so in each thread for the same setting to be used.

-

 CUPS 1.3/Mac OS X 10.5 cupsSetDefaultDest

+

 CUPS 1.3/OS X 10.5 cupsSetDefaultDest

Set the default destination.

void cupsSetDefaultDest (
@@ -2270,7 +2270,7 @@ void cupsSetDests (

Discussion

This function saves the destinations to /etc/cups/lpoptions when run as root and ~/.cups/lpoptions when run as a normal user.

-

 CUPS 1.1.21/Mac OS X 10.4 cupsSetDests2

+

 CUPS 1.1.21/OS X 10.4 cupsSetDests2

Save the list of destinations for the specified server.

int cupsSetDests2 (
@@ -2334,7 +2334,7 @@ by a program per thread.
Note: The current password callback is tracked separately for each thread in a program. Multi-threaded programs that override the callback need to do so in each thread for the same callback to be used.

-

 CUPS 1.4/Mac OS X 10.6 cupsSetPasswordCB2

+

 CUPS 1.4/OS X 10.6 cupsSetPasswordCB2

Set the advanced password callback for CUPS.

void cupsSetPasswordCB2 (
@@ -2380,7 +2380,7 @@ default server name and port.
Note: The current server is tracked separately for each thread in a program. Multi-threaded programs that override the server need to do so in each thread for the same server to be used.

-

 CUPS 1.5/Mac OS X 10.7 cupsSetServerCertCB

+

 CUPS 1.5/OS X 10.7 cupsSetServerCertCB

Set the server certificate callback.

void cupsSetServerCertCB (
@@ -2419,7 +2419,7 @@ void cupsSetUser (
Note: The current user name is tracked separately for each thread in a program. Multi-threaded programs that override the user name need to do so in each thread for the same user name to be used.

-

 CUPS 1.4/Mac OS X 10.6 cupsStartDocument

+

 CUPS 1.4/OS X 10.6 cupsStartDocument

Add a document to a job created with cupsCreateJob().

http_status_t cupsStartDocument (
@@ -2498,7 +2498,7 @@ This function is deprecated - use cupsTempFd< cupsTempFile2 instead.

-

 CUPS 1.2/Mac OS X 10.5 cupsTempFile2

+

 CUPS 1.2/OS X 10.5 cupsTempFile2

Creates a temporary CUPS file.

cups_file_t *cupsTempFile2 (
@@ -2531,19 +2531,19 @@ program. Multi-threaded programs that override the user name with the cupsSetUser function need to do so in each thread for the same user name to be used.

Data Types

-

 CUPS 1.5/Mac OS X 10.7 cups_client_cert_cb_t

+

 CUPS 1.5/OS X 10.7 cups_client_cert_cb_t

Client credentials callback

typedef int (*cups_client_cert_cb_t)(http_t *http, void *tls, cups_array_t *distinguished_names, void *user_data);

-

 CUPS 1.6 cups_dest_block_t

+

 CUPS 1.6/OS X 10.8 cups_dest_block_t

Destination enumeration block

typedef int (*cups_dest_block_t(unsigned flags, cups_dest_t *dest);

-

 CUPS 1.6 cups_dest_cb_t

+

 CUPS 1.6/OS X 10.8 cups_dest_cb_t

Destination enumeration callback

@@ -2554,13 +2554,13 @@ typedef int (*cups_dest_cb_t)(void *user_data, unsigned flags, typedef struct cups_dest_s cups_dest_t;

-

 CUPS 1.4/Mac OS X 10.6 cups_device_cb_t

+

 CUPS 1.4/OS X 10.6 cups_device_cb_t

Device callback

typedef void (*cups_device_cb_t)(const char *device_class, const char *device_id, const char *device_info, const char *device_make_and_model, const char *device_uri, const char *device_location, void *user_data);

-

 CUPS 1.6 cups_dinfo_t

+

 CUPS 1.6/OS X 10.8 cups_dinfo_t

Destination capability and status information

@@ -2576,7 +2576,7 @@ typedef struct cups_job_s cups_job_t;

typedef struct cups_option_s cups_option_t;

-

 CUPS 1.4/Mac OS X 10.6 cups_password_cb2_t

+

 CUPS 1.4/OS X 10.6 cups_password_cb2_t

New password callback

@@ -2592,13 +2592,13 @@ typedef const char *(*cups_password_cb_t)(const char *prompt);

typedef unsigned cups_ptype_t;

-

 CUPS 1.5/Mac OS X 10.7 cups_server_cert_cb_t

+

 CUPS 1.5/OS X 10.7 cups_server_cert_cb_t

Server credentials callback

typedef int (*cups_server_cert_cb_t)(http_t *http, void *tls, cups_array_t *certs, void *user_data);

-

 CUPS 1.6 cups_size_t

+

 CUPS 1.6/OS X 10.8 cups_size_t

Media Size

typedef struct cups_size_s cups_size_t; @@ -2676,7 +2676,7 @@ typedef struct cups_size_s cups_size_t;

value
Value of option
-

 CUPS 1.6 cups_size_s

+

 CUPS 1.6/OS X 10.8 cups_size_s

Media Size

struct cups_size_s {
    char media[128];
@@ -2701,7 +2701,7 @@ locale ID.

constants

Constants

-
CUPS_PRINTER_AUTHENTICATED  CUPS 1.2/Mac OS X 10.5 
+
CUPS_PRINTER_AUTHENTICATED  CUPS 1.2/OS X 10.5 
Printer requires authentication
CUPS_PRINTER_BIND
@@ -2714,7 +2714,7 @@ constants

Can collage copies
CUPS_PRINTER_COLOR
Can do color printing
-
CUPS_PRINTER_COMMANDS  CUPS 1.2/Mac OS X 10.5 
+
CUPS_PRINTER_COMMANDS  CUPS 1.2/OS X 10.5 
Printer supports maintenance commands
CUPS_PRINTER_COPIES
@@ -2723,7 +2723,7 @@ constants

Can cover output
CUPS_PRINTER_DEFAULT
Default printer on network
-
CUPS_PRINTER_DELETE  CUPS 1.2/Mac OS X 10.5 
+
CUPS_PRINTER_DELETE  CUPS 1.2/OS X 10.5 
Delete printer
CUPS_PRINTER_DUPLEX
@@ -2736,10 +2736,10 @@ constants

Local printer or class
CUPS_PRINTER_MEDIUM
Can do Tabloid/B/C/A3/A2
-
CUPS_PRINTER_MFP  CUPS 1.4/Mac OS X 10.6 
+
CUPS_PRINTER_MFP  CUPS 1.4/OS X 10.6 
Printer with scanning capabilities
-
CUPS_PRINTER_NOT_SHARED  CUPS 1.2/Mac OS X 10.5 
+
CUPS_PRINTER_NOT_SHARED  CUPS 1.2/OS X 10.5 
Printer is not shared
CUPS_PRINTER_PUNCH
@@ -2748,7 +2748,7 @@ constants

Printer is rejecting jobs
CUPS_PRINTER_REMOTE
Remote printer or class
-
CUPS_PRINTER_SCANNER  CUPS 1.4/Mac OS X 10.6 
+
CUPS_PRINTER_SCANNER  CUPS 1.4/OS X 10.6 
Scanner-only device
CUPS_PRINTER_SMALL
diff --git a/doc/help/api-filedir.html b/doc/help/api-filedir.html index cca4bd94e..a25588686 100644 --- a/doc/help/api-filedir.html +++ b/doc/help/api-filedir.html @@ -455,7 +455,7 @@ details of directory access/listing and provide a convenient way to get both a list of files and the information (permissions, size, timestamp, etc.) for each of those files.

Functions

-

 CUPS 1.2/Mac OS X 10.5 cupsDirClose

+

 CUPS 1.2/OS X 10.5 cupsDirClose

Close a directory.

void cupsDirClose (
@@ -466,7 +466,7 @@ void cupsDirClose (

dp
Directory pointer
-

 CUPS 1.2/Mac OS X 10.5 cupsDirOpen

+

 CUPS 1.2/OS X 10.5 cupsDirOpen

Open a directory.

cups_dir_t *cupsDirOpen (
@@ -479,7 +479,7 @@ void cupsDirClose (

Return Value

Directory pointer or NULL if the directory could not be opened.

-

 CUPS 1.2/Mac OS X 10.5 cupsDirRead

+

 CUPS 1.2/OS X 10.5 cupsDirRead

Read the next directory entry.

cups_dentry_t *cupsDirRead (
@@ -492,7 +492,7 @@ void cupsDirClose (

Return Value

Directory entry or NULL when there are no more

-

 CUPS 1.2/Mac OS X 10.5 cupsDirRewind

+

 CUPS 1.2/OS X 10.5 cupsDirRewind

Rewind to the start of the directory.

void cupsDirRewind (
@@ -503,7 +503,7 @@ void cupsDirRewind (

dp
Directory pointer
-

 CUPS 1.2/Mac OS X 10.5 cupsFileClose

+

 CUPS 1.2/OS X 10.5 cupsFileClose

Close a CUPS file.

int cupsFileClose (
@@ -516,7 +516,7 @@ int cupsFileClose (

Return Value

0 on success, -1 on error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileCompression

+

 CUPS 1.2/OS X 10.5 cupsFileCompression

Return whether a file is compressed.

int cupsFileCompression (
@@ -529,7 +529,7 @@ int cupsFileCompression (

Return Value

CUPS_FILE_NONE or CUPS_FILE_GZIP

-

 CUPS 1.2/Mac OS X 10.5 cupsFileEOF

+

 CUPS 1.2/OS X 10.5 cupsFileEOF

Return the end-of-file status.

int cupsFileEOF (
@@ -542,7 +542,7 @@ int cupsFileEOF (

Return Value

1 on end of file, 0 otherwise

-

 CUPS 1.2/Mac OS X 10.5 cupsFileFind

+

 CUPS 1.2/OS X 10.5 cupsFileFind

Find a file using the specified path.

const char *cupsFileFind (
@@ -575,7 +575,7 @@ the supplied paths, NULL is returned. A NULL path only matches the current directory.

-

 CUPS 1.2/Mac OS X 10.5 cupsFileFlush

+

 CUPS 1.2/OS X 10.5 cupsFileFlush

Flush pending output.

int cupsFileFlush (
@@ -588,7 +588,7 @@ int cupsFileFlush (

Return Value

0 on success, -1 on error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileGetChar

+

 CUPS 1.2/OS X 10.5 cupsFileGetChar

Get a single character from a file.

int cupsFileGetChar (
@@ -601,7 +601,7 @@ int cupsFileGetChar (

Return Value

Character or -1 on end of file

-

 CUPS 1.2/Mac OS X 10.5 cupsFileGetConf

+

 CUPS 1.2/OS X 10.5 cupsFileGetConf

Get a line from a configuration file.

char *cupsFileGetConf (
@@ -626,7 +626,7 @@ char *cupsFileGetConf (

Return Value

Line read or NULL on end of file or error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileGetLine

+

 CUPS 1.2/OS X 10.5 cupsFileGetLine

Get a CR and/or LF-terminated line that may contain binary data.

@@ -653,7 +653,7 @@ nul-terminated, however you should use the returned length to determine the number of bytes on the line.

-

 CUPS 1.2/Mac OS X 10.5 cupsFileGets

+

 CUPS 1.2/OS X 10.5 cupsFileGets

Get a CR and/or LF-terminated line.

char *cupsFileGets (
@@ -672,7 +672,7 @@ char *cupsFileGets (

Return Value

Line read or NULL on end of file or error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileLock

+

 CUPS 1.2/OS X 10.5 cupsFileLock

Temporarily lock access to a file.

int cupsFileLock (
@@ -688,7 +688,7 @@ int cupsFileLock (

Return Value

0 on success, -1 on error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileNumber

+

 CUPS 1.2/OS X 10.5 cupsFileNumber

Return the file descriptor associated with a CUPS file.

int cupsFileNumber (
@@ -701,7 +701,7 @@ int cupsFileNumber (

Return Value

File descriptor

-

 CUPS 1.2/Mac OS X 10.5 cupsFileOpen

+

 CUPS 1.2/OS X 10.5 cupsFileOpen

Open a CUPS file.

cups_file_t *cupsFileOpen (
@@ -732,7 +732,7 @@ connection as needed, generally preferring IPv6 connections when there is a choice.

-

 CUPS 1.2/Mac OS X 10.5 cupsFileOpenFd

+

 CUPS 1.2/OS X 10.5 cupsFileOpenFd

Open a CUPS file using a file descriptor.

cups_file_t *cupsFileOpenFd (
@@ -757,7 +757,7 @@ supplied which enables Flate compression of the file. Compression is not supported for the "a" (append) mode.

-

 CUPS 1.2/Mac OS X 10.5 cupsFilePeekChar

+

 CUPS 1.2/OS X 10.5 cupsFilePeekChar

Peek at the next character from a file.

int cupsFilePeekChar (
@@ -770,7 +770,7 @@ int cupsFilePeekChar (

Return Value

Character or -1 on end of file

-

 CUPS 1.2/Mac OS X 10.5 cupsFilePrintf

+

 CUPS 1.2/OS X 10.5 cupsFilePrintf

Write a formatted string.

int cupsFilePrintf (
@@ -789,7 +789,7 @@ int cupsFilePrintf (

Return Value

Number of bytes written or -1 on error

-

 CUPS 1.2/Mac OS X 10.5 cupsFilePutChar

+

 CUPS 1.2/OS X 10.5 cupsFilePutChar

Write a character.

int cupsFilePutChar (
@@ -805,7 +805,7 @@ int cupsFilePutChar (

Return Value

0 on success, -1 on error

-

 CUPS 1.4/Mac OS X 10.6 cupsFilePutConf

+

 CUPS 1.4/OS X 10.6 cupsFilePutConf

Write a configuration line.

ssize_t cupsFilePutConf (
@@ -828,7 +828,7 @@ ssize_t cupsFilePutConf (

This function handles any comment escaping of the value.

-

 CUPS 1.2/Mac OS X 10.5 cupsFilePuts

+

 CUPS 1.2/OS X 10.5 cupsFilePuts

Write a string.

int cupsFilePuts (
@@ -848,7 +848,7 @@ int cupsFilePuts (

Like the fputs function, no newline is appended to the string.

-

 CUPS 1.2/Mac OS X 10.5 cupsFileRead

+

 CUPS 1.2/OS X 10.5 cupsFileRead

Read from a file.

ssize_t cupsFileRead (
@@ -867,7 +867,7 @@ ssize_t cupsFileRead (

Return Value

Number of bytes read or -1 on error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileRewind

+

 CUPS 1.2/OS X 10.5 cupsFileRewind

Set the current file position to the beginning of the file.

@@ -881,7 +881,7 @@ off_t cupsFileRewind (

Return Value

New file position or -1 on error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileSeek

+

 CUPS 1.2/OS X 10.5 cupsFileSeek

Seek in a file.

off_t cupsFileSeek (
@@ -897,25 +897,25 @@ off_t cupsFileSeek (

Return Value

New file position or -1 on error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileStderr

+

 CUPS 1.2/OS X 10.5 cupsFileStderr

Return a CUPS file associated with stderr.

cups_file_t *cupsFileStderr (void);

Return Value

CUPS file

-

 CUPS 1.2/Mac OS X 10.5 cupsFileStdin

+

 CUPS 1.2/OS X 10.5 cupsFileStdin

Return a CUPS file associated with stdin.

cups_file_t *cupsFileStdin (void);

Return Value

CUPS file

-

 CUPS 1.2/Mac OS X 10.5 cupsFileStdout

+

 CUPS 1.2/OS X 10.5 cupsFileStdout

Return a CUPS file associated with stdout.

cups_file_t *cupsFileStdout (void);

Return Value

CUPS file

-

 CUPS 1.2/Mac OS X 10.5 cupsFileTell

+

 CUPS 1.2/OS X 10.5 cupsFileTell

Return the current file position.

off_t cupsFileTell (
@@ -928,7 +928,7 @@ off_t cupsFileTell (

Return Value

File position

-

 CUPS 1.2/Mac OS X 10.5 cupsFileUnlock

+

 CUPS 1.2/OS X 10.5 cupsFileUnlock

Unlock access to a file.

int cupsFileUnlock (
@@ -941,7 +941,7 @@ int cupsFileUnlock (

Return Value

0 on success, -1 on error

-

 CUPS 1.2/Mac OS X 10.5 cupsFileWrite

+

 CUPS 1.2/OS X 10.5 cupsFileWrite

Write to a file.

ssize_t cupsFileWrite (
diff --git a/doc/help/api-filter.html b/doc/help/api-filter.html index 4e18d2ef0..38e6291d0 100644 --- a/doc/help/api-filter.html +++ b/doc/help/api-filter.html @@ -430,7 +430,7 @@ div.contents ul.subcontents li { Filter and backend programming introduction for CUPS. - Copyright 2007-2011 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the @@ -508,7 +508,7 @@ directory to write to.

In addition, some operating systems provide additional security mechanisms that further limit file system access, even for backends running as root. On -Mac OS X, for example, no backend may write to a user's home directory.

+OS X, for example, no backend may write to a user's home directory.

Canceled Jobs and Signal Handling

@@ -580,7 +580,7 @@ when running print filters and backends:

APPLE_LANGUAGE
The Apple language identifier associated with the job - (Mac OS X only).
+ (OS X only).
CHARSET
The job character set, typically "utf-8".
@@ -901,7 +901,7 @@ sub-state and not an issue that applies when a job is not printing.

Note:

"STATE:" messages often provide visible alerts to the user. For example, -on Mac OS X setting a printer-state-reason value with an "-error" or +on OS X setting a printer-state-reason value with an "-error" or "-warning" suffix will cause the printer's dock item to bounce if the corresponding reason is localized with a cupsIPPReason keyword in the printer's PPD file.

@@ -1191,7 +1191,7 @@ void *my_data; cupsSNMPSideChannelWalk(".1.3.6.1.2.1.43", 5.0, my_callback, my_data);

Functions

-

 CUPS 1.2/Mac OS X 10.5 cupsBackChannelRead

+

 CUPS 1.2/OS X 10.5 cupsBackChannelRead

Read data from the backchannel.

ssize_t cupsBackChannelRead (
@@ -1216,7 +1216,7 @@ parameter controls how many seconds to wait for the data - use 0.0 to return immediately if there is no data, -1.0 to wait for data indefinitely.

-

 CUPS 1.2/Mac OS X 10.5 cupsBackChannelWrite

+

 CUPS 1.2/OS X 10.5 cupsBackChannelWrite

Write data to the backchannel.

ssize_t cupsBackChannelWrite (
@@ -1242,7 +1242,7 @@ controls how many seconds to wait for the data to be written - use indefinitely.

-

 CUPS 1.2/Mac OS X 10.5 cupsBackendDeviceURI

+

 CUPS 1.2/OS X 10.5 cupsBackendDeviceURI

Get the device URI for a backend.

const char *cupsBackendDeviceURI (
@@ -1262,7 +1262,7 @@ variable or the device URI passed in argv[0], whichever is found first.

-

 CUPS 1.4/Mac OS X 10.6 cupsBackendReport

+

 CUPS 1.4/OS X 10.6 cupsBackendReport

Write a device line from a backend.

void cupsBackendReport (
@@ -1294,7 +1294,7 @@ It handles quoting of special characters in the device-make-and-model, device-info, device-id, and device-location strings.

-

 CUPS 1.3/Mac OS X 10.5 cupsSideChannelDoRequest

+

 CUPS 1.3/OS X 10.5 cupsSideChannelDoRequest

Send a side-channel command to a backend and wait for a response.

cups_sc_status_t cupsSideChannelDoRequest (
@@ -1328,7 +1328,7 @@ pointed to by the "data" parameter. cupsSideChannelDoRequest() will update the value to contain the number of data bytes in the buffer.

-

 CUPS 1.3/Mac OS X 10.5 cupsSideChannelRead

+

 CUPS 1.3/OS X 10.5 cupsSideChannelRead

Read a side-channel message.

int cupsSideChannelRead (
@@ -1364,7 +1364,7 @@ pointed to by the "data" parameter. cupsSideChannelDoRequest() will update the value to contain the number of data bytes in the buffer.

-

 CUPS 1.4/Mac OS X 10.6 cupsSideChannelSNMPGet

+

 CUPS 1.4/OS X 10.6 cupsSideChannelSNMPGet

Query a SNMP OID's value.

cups_sc_status_t cupsSideChannelSNMPGet (
@@ -1405,7 +1405,7 @@ support SNMP queries. CUPS_SC_STATUS_NO_RESPONSE is returned when the printer does not respond to the SNMP query.

-

 CUPS 1.4/Mac OS X 10.6 cupsSideChannelSNMPWalk

+

 CUPS 1.4/OS X 10.6 cupsSideChannelSNMPWalk

Query multiple SNMP OID values.

cups_sc_status_t cupsSideChannelSNMPWalk (
@@ -1451,7 +1451,7 @@ support SNMP queries. CUPS_SC_STATUS_NO_RESPONSE is returned when the printer does not respond to the first SNMP query.

-

 CUPS 1.3/Mac OS X 10.5 cupsSideChannelWrite

+

 CUPS 1.3/OS X 10.5 cupsSideChannelWrite

Write a side-channel message.

int cupsSideChannelWrite (
@@ -1556,15 +1556,15 @@ typedef void (*cups_sc_walk_func_t)(const char *oid, const char *data, int datal

Drain all pending output
CUPS_SC_CMD_GET_BIDI
Return bidirectional capabilities
-
CUPS_SC_CMD_GET_CONNECTED  CUPS 1.5/Mac OS X 10.7 
+
CUPS_SC_CMD_GET_CONNECTED  CUPS 1.5/OS X 10.7 
Return whether the backend is "connected" to the printer
CUPS_SC_CMD_GET_DEVICE_ID
Return the IEEE-1284 device ID
CUPS_SC_CMD_GET_STATE
Return the device state
-
CUPS_SC_CMD_SNMP_GET  CUPS 1.4/Mac OS X 10.6 
+
CUPS_SC_CMD_SNMP_GET  CUPS 1.4/OS X 10.6 
Query an SNMP OID
-
CUPS_SC_CMD_SNMP_GET_NEXT  CUPS 1.4/Mac OS X 10.6 
+
CUPS_SC_CMD_SNMP_GET_NEXT  CUPS 1.4/OS X 10.6 
Query the next SNMP OID
CUPS_SC_CMD_SOFT_RESET
Do a soft reset
diff --git a/doc/help/api-httpipp.html b/doc/help/api-httpipp.html index 394be16cd..33e1672af 100644 --- a/doc/help/api-httpipp.html +++ b/doc/help/api-httpipp.html @@ -595,9 +595,9 @@ are server-oriented...">http_state_t
  • http_uri_status_t
  • http_version_t
  • ipp_attribute_t
  • -
  • ipp_copycb_t
  • +
  • ipp_copycb_t
  • ipp_dstate_t
  • ipp_finish_t
  • ipp_iocb_t
  • @@ -617,6 +617,7 @@ used to enumerate all of the addresses that are associated with a hostname. ">http_addrlist_s
  • http_credential_s
  • +
  • pollfd
  • Constants
    • http_auth_e
    • @@ -962,7 +963,7 @@ if (status == HTTP_CONTINUE) ippDelete(request);

      Functions

      -

       CUPS 1.1.20/Mac OS X 10.4 cupsDoAuthentication

      +

       CUPS 1.1.20/OS X 10.4 cupsDoAuthentication

      Authenticate a request.

      int cupsDoAuthentication (
      @@ -1012,7 +1013,7 @@ status, prior to resubmitting your request.

      This function sends the IPP request to the specified server, retrying and authenticating as necessary. The request is freed with ippDelete after receiving a valid IPP response.

      -

       CUPS 1.3/Mac OS X 10.5 cupsDoIORequest

      +

       CUPS 1.3/OS X 10.5 cupsDoIORequest

      Do an IPP request with file descriptors.

      ipp_t *cupsDoIORequest (
      @@ -1093,7 +1094,7 @@ void cupsEncodeOptions (

      This function adds operation, job, and then subscription attributes, in that order. Use the cupsEncodeOptions2() function to add attributes for a single group.

      -

       CUPS 1.2/Mac OS X 10.5 cupsEncodeOptions2

      +

       CUPS 1.2/OS X 10.5 cupsEncodeOptions2

      Encode printer options into IPP attributes for a group.

      void cupsEncodeOptions2 (
      @@ -1119,7 +1120,7 @@ function multiple times for each group, or use cupsEncodeOptions() to add the standard groups.

      -

       CUPS 1.4/Mac OS X 10.6 cupsGetDevices

      +

       CUPS 1.4/OS X 10.6 cupsGetDevices

      Get available printer devices.

      ipp_status_t cupsGetDevices (
      @@ -1155,7 +1156,7 @@ parameters provide comma-delimited lists of backends to include or omit from the request respectively.

      -

       CUPS 1.1.20/Mac OS X 10.4 cupsGetFd

      +

       CUPS 1.1.20/OS X 10.4 cupsGetFd

      Get a file from the server.

      http_status_t cupsGetFd (
      @@ -1178,7 +1179,7 @@ the request respectively.

      This function returns HTTP_OK when the file is successfully retrieved.

      -

       CUPS 1.1.20/Mac OS X 10.4 cupsGetFile

      +

       CUPS 1.1.20/OS X 10.4 cupsGetFile

      Get a file from the server.

      http_status_t cupsGetFile (
      @@ -1201,7 +1202,7 @@ the request respectively.

      This function returns HTTP_OK when the file is successfully retrieved.

      -

       CUPS 1.4/Mac OS X 10.6 cupsGetResponse

      +

       CUPS 1.4/OS X 10.6 cupsGetResponse

      Get a response to an IPP request.

      ipp_t *cupsGetResponse (
      @@ -1230,13 +1231,13 @@ otherwise call httpFlush() to complete the response processing. ipp_status_t cupsLastError (void);

      Return Value

      IPP status code from last request

      -

       CUPS 1.2/Mac OS X 10.5 cupsLastErrorString

      +

       CUPS 1.2/OS X 10.5 cupsLastErrorString

      Return the last IPP status-message.

      const char *cupsLastErrorString (void);

      Return Value

      status-message text from last request

      -

       CUPS 1.1.20/Mac OS X 10.4 cupsPutFd

      +

       CUPS 1.1.20/OS X 10.4 cupsPutFd

      Put a file on the server.

      http_status_t cupsPutFd (
      @@ -1260,7 +1261,7 @@ const char *cupsLastErrorString (void);

      successfully.

      -

       CUPS 1.1.20/Mac OS X 10.4 cupsPutFile

      +

       CUPS 1.1.20/OS X 10.4 cupsPutFile

      Put a file on the server.

      http_status_t cupsPutFile (
      @@ -1284,7 +1285,7 @@ successfully. successfully.

      -

       CUPS 1.4/Mac OS X 10.6 cupsReadResponseData

      +

       CUPS 1.4/OS X 10.6 cupsReadResponseData

      Read additional data after the IPP response.

      ssize_t cupsReadResponseData (
      @@ -1308,7 +1309,7 @@ ssize_t cupsReadResponseData (
      files for CUPS_GET_PPD and CUPS_GET_DOCUMENT requests, respectively.

      -

       CUPS 1.4/Mac OS X 10.6 cupsSendRequest

      +

       CUPS 1.4/OS X 10.6 cupsSendRequest

      Send an IPP request.

      http_status_t cupsSendRequest (
      @@ -1340,7 +1341,7 @@ Unlike cupsDoFileRequest(), cupsDoIORequest(), and cupsDoRequest(), the request is not freed.

      -

       CUPS 1.4/Mac OS X 10.6 cupsWriteRequestData

      +

       CUPS 1.4/OS X 10.6 cupsWriteRequestData

      Write additional data after an IPP request.

      http_status_t cupsWriteRequestData (
      @@ -1364,7 +1365,7 @@ request is not freed. after cupsStartDocument to provide a document file.

      -

       CUPS 1.5/Mac OS X 10.7 httpAddCredential

      +

       CUPS 1.5/OS X 10.7 httpAddCredential

      Allocates and adds a single credential to an array.

      int httpAddCredential (
      @@ -1387,7 +1388,7 @@ int httpAddCredential (

      Use cupsArrayNew(NULL, NULL) to create a credentials array.

      -

       CUPS 1.2/Mac OS X 10.5 httpAddrAny

      +

       CUPS 1.2/OS X 10.5 httpAddrAny

      Check for the "any" address.

      int httpAddrAny (
      @@ -1400,7 +1401,7 @@ int httpAddrAny (

      Return Value

      1 if "any", 0 otherwise

      -

       CUPS 1.2/Mac OS X 10.5 httpAddrEqual

      +

       CUPS 1.2/OS X 10.5 httpAddrEqual

      Compare two addresses.

      int httpAddrEqual (
      @@ -1416,7 +1417,7 @@ int httpAddrEqual (

      Return Value

      1 if equal, 0 if not

      -

       CUPS 1.2/Mac OS X 10.5 httpAddrLength

      +

       CUPS 1.2/OS X 10.5 httpAddrLength

      Return the length of the address in bytes.

      int httpAddrLength (
      @@ -1429,7 +1430,7 @@ int httpAddrLength (

      Return Value

      Length in bytes

      -

       CUPS 1.2/Mac OS X 10.5 httpAddrLocalhost

      +

       CUPS 1.2/OS X 10.5 httpAddrLocalhost

      Check for the local loopback address.

      int httpAddrLocalhost (
      @@ -1442,7 +1443,7 @@ int httpAddrLocalhost (

      Return Value

      1 if local host, 0 otherwise

      -

       CUPS 1.2/Mac OS X 10.5 httpAddrLookup

      +

       CUPS 1.2/OS X 10.5 httpAddrLookup

      Lookup the hostname associated with the address.

      char *httpAddrLookup (
      @@ -1461,7 +1462,7 @@ char *httpAddrLookup (

      Return Value

      Host name

      -

       CUPS 1.2/Mac OS X 10.5 httpAddrString

      +

       CUPS 1.2/OS X 10.5 httpAddrString

      Convert an address to a numeric string.

      char *httpAddrString (
      @@ -1480,7 +1481,7 @@ char *httpAddrString (

      Return Value

      Numeric address string

      -

       CUPS 1.2/Mac OS X 10.5 httpAssembleURI

      +

       CUPS 1.2/OS X 10.5 httpAssembleURI

      Assemble a uniform resource identifier from its components.

      @@ -1522,7 +1523,7 @@ place of traditional string functions whenever you need to create a URI string.

      -

       CUPS 1.2/Mac OS X 10.5 httpAssembleURIf

      +

       CUPS 1.2/OS X 10.5 httpAssembleURIf

      Assemble a uniform resource identifier from its components with a formatted resource.

      @@ -1595,7 +1596,7 @@ int httpCheck (

      Return Value

      0 = no data, 1 = data available

      -

       CUPS 1.1.19/Mac OS X 10.3 httpClearCookie

      +

       CUPS 1.1.19/OS X 10.3 httpClearCookie

      Clear the cookie value(s).

      void httpClearCookie (
      @@ -1667,7 +1668,7 @@ void httpClose (

      Return Value

      New HTTP connection

      -

       CUPS 1.5/Mac OS X 10.7 httpCopyCredentials

      +

       CUPS 1.5/OS X 10.7 httpCopyCredentials

      Copy the credentials associated with an encrypted connection.

      @@ -1705,7 +1706,7 @@ char *httpDecode64 (
      which provides buffer length arguments.

      -

       CUPS 1.1.21/Mac OS X 10.4 httpDecode64_2

      +

       CUPS 1.1.21/OS X 10.4 httpDecode64_2

      Base64-decode a string.

      char *httpDecode64_2 (
      @@ -1761,7 +1762,7 @@ char *httpEncode64 (
      which provides buffer length arguments.

      -

       CUPS 1.1.21/Mac OS X 10.4 httpEncode64_2

      +

       CUPS 1.1.21/OS X 10.4 httpEncode64_2

      Base64-encode a string.

      char *httpEncode64_2 (
      @@ -1823,7 +1824,7 @@ void httpFlush (

      http
      Connection to server
      -

       CUPS 1.2/Mac OS X 10.5 httpFlushWrite

      +

       CUPS 1.2/OS X 10.5 httpFlushWrite

      Flush data in write buffer.

      int httpFlushWrite (
      @@ -1863,7 +1864,7 @@ int httpGet (

      Return Value

      Status of call (0 = success)

      -

       CUPS 1.3/Mac OS X 10.5 httpGetAuthString

      +

       CUPS 1.3/OS X 10.5 httpGetAuthString

      Get the current authorization string.

      char *httpGetAuthString (
      @@ -1883,7 +1884,7 @@ string to use with httpSetField() for the HTTP_FIELD_AUTHORIZATION value.

      -

       CUPS 1.2/Mac OS X 10.5 httpGetBlocking

      +

       CUPS 1.2/OS X 10.5 httpGetBlocking

      Get the blocking/non-block state of a connection.

      int httpGetBlocking (
      @@ -1896,7 +1897,7 @@ int httpGetBlocking (

      Return Value

      1 if blocking, 0 if non-blocking

      -

       CUPS 1.1.19/Mac OS X 10.3 httpGetCookie

      +

       CUPS 1.1.19/OS X 10.3 httpGetCookie

      Get any cookie data from the response.

      const char *httpGetCookie (
      @@ -1922,7 +1923,7 @@ const char *httpGetDateString (

      Return Value

      Date/time string

      -

       CUPS 1.2/Mac OS X 10.5 httpGetDateString2

      +

       CUPS 1.2/OS X 10.5 httpGetDateString2

      Get a formatted date/time string from a time value.

      const char *httpGetDateString2 (
      @@ -1954,7 +1955,7 @@ time_t httpGetDateTime (

      Return Value

      UNIX time

      -

       CUPS 1.2/Mac OS X 10.5 httpGetFd

      +

       CUPS 1.2/OS X 10.5 httpGetFd

      Get the file descriptor associated with a connection.

      int httpGetFd (
      @@ -1997,7 +1998,7 @@ struct hostent *httpGetHostByName (

      Return Value

      Host entry

      -

       CUPS 1.2/Mac OS X 10.5 httpGetHostname

      +

       CUPS 1.2/OS X 10.5 httpGetHostname

      Get the FQDN for the connection or local system.

      const char *httpGetHostname (
      @@ -2042,7 +2043,7 @@ int httpGetLength (
      2^31 - 1; use httpGetLength2() instead.

      -

       CUPS 1.2/Mac OS X 10.5 httpGetLength2

      +

       CUPS 1.2/OS X 10.5 httpGetLength2

      Get the amount of data remaining from the content-length or transfer-encoding fields.

      @@ -2074,7 +2075,7 @@ content larger than 2^31 - 1.

      Return Value

      HTTP state

      -

       CUPS 1.2/Mac OS X 10.5 httpGetStatus

      +

       CUPS 1.2/OS X 10.5 httpGetStatus

      Get the status of the last HTTP request.

      http_status_t httpGetStatus (
      @@ -2109,7 +2110,7 @@ char *httpGetSubField (

      Return Value

      Value or NULL

      -

       CUPS 1.2/Mac OS X 10.5 httpGetSubField2

      +

       CUPS 1.2/OS X 10.5 httpGetSubField2

      Get a sub-field value.

      char *httpGetSubField2 (
      @@ -2321,7 +2322,7 @@ int httpRead (
      read more than 2GB of data.

      -

       CUPS 1.2/Mac OS X 10.5 httpRead2

      +

       CUPS 1.2/OS X 10.5 httpRead2

      Read data from a HTTP connection.

      ssize_t httpRead2 (
      @@ -2404,7 +2405,7 @@ void httpSeparate (

      This function is deprecated; use the httpSeparateURI() function instead.

      -

       CUPS 1.1.21/Mac OS X 10.4 httpSeparate2

      +

       CUPS 1.1.21/OS X 10.4 httpSeparate2

      Separate a Universal Resource Identifier into its components.

      @@ -2448,7 +2449,7 @@ void httpSeparate2 (

      -

       CUPS 1.2/Mac OS X 10.5 httpSeparateURI

      +

       CUPS 1.2/OS X 10.5 httpSeparateURI

      Separate a Universal Resource Identifier into its components.

      @@ -2492,7 +2493,7 @@ components.

      Return Value

      Result of separation

      -

       CUPS 1.3/Mac OS X 10.5 httpSetAuthString

      +

       CUPS 1.3/OS X 10.5 httpSetAuthString

      Set the current authorization string.

      void httpSetAuthString (
      @@ -2516,7 +2517,7 @@ HTTP_FIELD_AUTHORIZATION prior to issuing a HTTP request using httpGet(), httpHead(), httpOptions(), httpPost, or httpPut().

      -

       CUPS 1.1.19/Mac OS X 10.3 httpSetCookie

      +

       CUPS 1.1.19/OS X 10.3 httpSetCookie

      Set the cookie value(s).

      void httpSetCookie (
      @@ -2530,7 +2531,7 @@ void httpSetCookie (

      cookie
      Cookie string
      -

       CUPS 1.5/Mac OS X 10.7 httpSetCredentials

      +

       CUPS 1.5/OS X 10.7 httpSetCredentials

      Set the credentials associated with an encrypted connection.

      @@ -2547,7 +2548,7 @@ int httpSetCredentials (

      Return Value

      Status of call (0 = success)

      -

       CUPS 1.2/Mac OS X 10.5 httpSetExpect

      +

       CUPS 1.2/OS X 10.5 httpSetExpect

      Set the Expect: header in a request.

      void httpSetExpect (
      @@ -2582,7 +2583,7 @@ void httpSetField (

      value
      Value
      -

       CUPS 1.2/Mac OS X 10.5 httpSetLength

      +

       CUPS 1.2/OS X 10.5 httpSetLength

      Set the content-length and content-encoding.

      void httpSetLength (
      @@ -2596,7 +2597,7 @@ void httpSetLength (

      length
      Length (0 for chunked)
      -

       CUPS 1.5/Mac OS X 10.7 httpSetTimeout

      +

       CUPS 1.5/OS X 10.7 httpSetTimeout

      Set read/write timeouts and an optional callback.

      void httpSetTimeout (
      @@ -2667,7 +2668,7 @@ int httpTrace (

      Return Value

      HTTP status

      -

       CUPS 1.1.19/Mac OS X 10.3 httpWait

      +

       CUPS 1.1.19/OS X 10.3 httpWait

      Wait for data available on a connection.

      int httpWait (
      @@ -2707,7 +2708,7 @@ int httpWrite (
      write more than 2GB of data.

      -

       CUPS 1.2/Mac OS X 10.5 httpWrite2

      +

       CUPS 1.2/OS X 10.5 httpWrite2

      Write data to a HTTP connection.

      ssize_t httpWrite2 (
      @@ -2791,7 +2792,7 @@ The group parameter specifies the IPP attribute group tag: none event notification (IPP_TAG_EVENT_NOTIFICATION), operation (IPP_TAG_OPERATION), printer (IPP_TAG_PRINTER), subscription (IPP_TAG_SUBSCRIPTION), or unsupported (IPP_TAG_UNSUPPORTED_GROUP).

      -

       CUPS 1.1.19/Mac OS X 10.3 ippAddCollection

      +

       CUPS 1.1.19/OS X 10.3 ippAddCollection

      Add a collection value.

      ipp_attribute_t *ippAddCollection (
      @@ -2824,7 +2825,7 @@ event notification (IPP_TAG_EVENT_NOTIFICATION), operation (IPP_TAG_SUBSCRIPTION), or unsupported (IPP_TAG_UNSUPPORTED_GROUP).

      -

       CUPS 1.1.19/Mac OS X 10.3 ippAddCollections

      +

       CUPS 1.1.19/OS X 10.3 ippAddCollections

      Add an array of collection values.

      ipp_attribute_t *ippAddCollections (
      @@ -2968,7 +2969,7 @@ event notification (IPP_TAG_EVENT_NOTIFICATION), operation
      Supported values include enum (IPP_TAG_ENUM) and integer (IPP_TAG_INTEGER).

      -

       CUPS 1.2/Mac OS X 10.5 ippAddOctetString

      +

       CUPS 1.2/OS X 10.5 ippAddOctetString

      Add an octetString value to an IPP message.

      ipp_attribute_t *ippAddOctetString (
      @@ -3004,7 +3005,7 @@ event notification (IPP_TAG_EVENT_NOTIFICATION), operation (IPP_TAG_SUBSCRIPTION), or unsupported (IPP_TAG_UNSUPPORTED_GROUP).

      -

       CUPS 1.6 ippAddOutOfBand

      +

       CUPS 1.6/OS X 10.8 ippAddOutOfBand

      Add an out-of-band value to an IPP message.

      ipp_attribute_t *ippAddOutOfBand (
      @@ -3306,7 +3307,7 @@ Supported string values include charset (IPP_TAG_CHARSET), keyword
      The language parameter must be non-NULL for nameWithLanguage and textWithLanguage string values and must be NULL for all other string values.

      -

       CUPS 1.6 ippAttributeString

      +

       CUPS 1.6/OS X 10.8 ippAttributeString

      Convert the attribute's value to a string.

      size_t ippAttributeString (
      @@ -3331,7 +3332,7 @@ trailing nul. The buffer pointer can be NULL to get the required length, just like (v)snprintf.

      -

       CUPS 1.6 ippCopyAttribute

      +

       CUPS 1.6/OS X 10.8 ippCopyAttribute

      Copy an attribute.

      ipp_attribute_t *ippCopyAttribute (
      @@ -3357,7 +3358,7 @@ created - this should only be done as long as the original source IPP message wi not be freed for the life of the destination.

      -

       CUPS 1.6 ippCopyAttributes

      +

       CUPS 1.6/OS X 10.8 ippCopyAttributes

      Copy attributes from one IPP message to another.

      int ippCopyAttributes (
      @@ -3419,7 +3420,7 @@ void ippDelete (

      ipp
      IPP message
      -

       CUPS 1.1.19/Mac OS X 10.3 ippDeleteAttribute

      +

       CUPS 1.1.19/OS X 10.3 ippDeleteAttribute

      Delete a single attribute in an IPP message.

      void ippDeleteAttribute (
      @@ -3433,7 +3434,7 @@ void ippDeleteAttribute (

      attr
      Attribute to delete
      -

       CUPS 1.6 ippDeleteValues

      +

       CUPS 1.6/OS X 10.8 ippDeleteValues

      Delete values in an attribute.

      int ippDeleteValues (
      @@ -3509,7 +3510,7 @@ const char *ippErrorString (

      Return Value

      Text string

      -

       CUPS 1.2/Mac OS X 10.5 ippErrorValue

      +

       CUPS 1.2/OS X 10.5 ippErrorValue

      Return a status code for the given name.

      ipp_status_t ippErrorValue (
      @@ -3560,7 +3561,7 @@ ipp_status_t ippErrorValue (

      Return Value

      Matching attribute

      -

       CUPS 1.6 ippFirstAttribute

      +

       CUPS 1.6/OS X 10.8 ippFirstAttribute

      Return the first attribute in the message.

      ipp_attribute_t *ippFirstAttribute (
      @@ -3573,7 +3574,7 @@ ipp_status_t ippErrorValue (

      Return Value

      First attribute or NULL if none

      -

       CUPS 1.6 ippGetBoolean

      +

       CUPS 1.6/OS X 10.8 ippGetBoolean

      Get a boolean value for an attribute.

      int ippGetBoolean (
      @@ -3594,7 +3595,7 @@ int ippGetBoolean (
      ippGetCount(attr) - 1.

      -

       CUPS 1.6 ippGetCollection

      +

       CUPS 1.6/OS X 10.8 ippGetCollection

      Get a collection value for an attribute.

      ipp_t *ippGetCollection (
      @@ -3615,7 +3616,7 @@ int ippGetBoolean (
      ippGetCount(attr) - 1.

      -

       CUPS 1.6 ippGetCount

      +

       CUPS 1.6/OS X 10.8 ippGetCount

      Get the number of values in an attribute.

      int ippGetCount (
      @@ -3628,7 +3629,7 @@ int ippGetCount (

      Return Value

      Number of values or -1 on error

      -

       CUPS 1.6 ippGetDate

      +

       CUPS 1.6/OS X 10.8 ippGetDate

      Get a date value for an attribute.

      const ipp_uchar_t *ippGetDate (
      @@ -3649,7 +3650,7 @@ const ipp_uchar_t *ippGetDate (
      ippGetCount(attr) - 1.

      -

       CUPS 1.6 ippGetGroupTag

      +

       CUPS 1.6/OS X 10.8 ippGetGroupTag

      Get the group associated with an attribute.

      ipp_tag_t ippGetGroupTag (
      @@ -3662,7 +3663,7 @@ ipp_tag_t ippGetGroupTag (

      Return Value

      Group tag or IPP_TAG_ZERO on error

      -

       CUPS 1.6 ippGetInteger

      +

       CUPS 1.6/OS X 10.8 ippGetInteger

      Get the integer/enum value for an attribute.

      int ippGetInteger (
      @@ -3683,7 +3684,7 @@ int ippGetInteger (
      ippGetCount(attr) - 1.

      -

       CUPS 1.6 ippGetName

      +

       CUPS 1.6/OS X 10.8 ippGetName

      Get the attribute name.

      const char *ippGetName (
      @@ -3696,7 +3697,7 @@ const char *ippGetName (

      Return Value

      Attribute name or NULL for separators

      -

       CUPS 1.6 ippGetOperation

      +

       CUPS 1.6/OS X 10.8 ippGetOperation

      Get the operation ID in an IPP message.

      ipp_op_t ippGetOperation (
      @@ -3709,7 +3710,7 @@ ipp_op_t ippGetOperation (

      Return Value

      Operation ID or -1 on error

      -

       CUPS 1.6 ippGetRange

      +

       CUPS 1.6/OS X 10.8 ippGetRange

      Get a rangeOfInteger value from an attribute.

      int ippGetRange (
      @@ -3733,7 +3734,7 @@ int ippGetRange (
      ippGetCount(attr) - 1.

      -

       CUPS 1.6 ippGetRequestId

      +

       CUPS 1.6/OS X 10.8 ippGetRequestId

      Get the request ID from an IPP message.

      int ippGetRequestId (
      @@ -3746,7 +3747,7 @@ int ippGetRequestId (

      Return Value

      Request ID or -1 on error

      -

       CUPS 1.6 ippGetResolution

      +

       CUPS 1.6/OS X 10.8 ippGetResolution

      Get a resolution value for an attribute.

      int ippGetResolution (
      @@ -3773,7 +3774,7 @@ int ippGetResolution (
      ippGetCount(attr) - 1.

      -

       CUPS 1.6 ippGetState

      +

       CUPS 1.6/OS X 10.8 ippGetState

      Get the IPP message state.

      ipp_state_t ippGetState (
      @@ -3786,7 +3787,7 @@ int ippGetResolution (

      Return Value

      IPP message state value

      -

       CUPS 1.6 ippGetStatusCode

      +

       CUPS 1.6/OS X 10.8 ippGetStatusCode

      Get the status code from an IPP response or event message.

      ipp_status_t ippGetStatusCode (
      @@ -3822,7 +3823,7 @@ const char *ippGetString (
      ippGetCount(attr) - 1.

      -

       CUPS 1.6 ippGetValueTag

      +

       CUPS 1.6/OS X 10.8 ippGetValueTag

      Get the value tag for an attribute.

      ipp_tag_t ippGetValueTag (
      @@ -3835,7 +3836,7 @@ ipp_tag_t ippGetValueTag (

      Return Value

      Value tag or IPP_TAG_ZERO on error

      -

       CUPS 1.6 ippGetVersion

      +

       CUPS 1.6/OS X 10.8 ippGetVersion

      Get the major and minor version number from an IPP message.

      int ippGetVersion (
      @@ -3870,7 +3871,7 @@ size_t ippLength (
      ipp_t *ippNew (void);

      Return Value

      New IPP message

      -

       CUPS 1.2/Mac OS X 10.5 ippNewRequest

      +

       CUPS 1.2/OS X 10.5 ippNewRequest

      Allocate a new IPP request message.

      ipp_t *ippNewRequest (
      @@ -3889,7 +3890,7 @@ attributes-natural-language attributes added. The attributes-natural-language value is derived from the current locale.

      -

       CUPS 1.6 ippNextAttribute

      +

       CUPS 1.6/OS X 10.8 ippNextAttribute

      Return the next attribute in the message.

      ipp_attribute_t *ippNextAttribute (
      @@ -3902,7 +3903,7 @@ attributes-natural-language value is derived from the current locale.

      Return Value

      Next attribute or NULL if none

      -

       CUPS 1.2/Mac OS X 10.5 ippOpString

      +

       CUPS 1.2/OS X 10.5 ippOpString

      Return a name for the given operation id.

      const char *ippOpString (
      @@ -3915,7 +3916,7 @@ const char *ippOpString (

      Return Value

      Name

      -

       CUPS 1.2/Mac OS X 10.5 ippOpValue

      +

       CUPS 1.2/OS X 10.5 ippOpValue

      Return an operation id for the given name.

      ipp_op_t ippOpValue (
      @@ -3950,7 +3951,7 @@ int ippPort (void);

      Return Value

      Current state

      -

       CUPS 1.1.19/Mac OS X 10.3 ippReadFile

      +

       CUPS 1.1.19/OS X 10.3 ippReadFile

      Read data for an IPP message from a file.

      ipp_state_t ippReadFile (
      @@ -3966,7 +3967,7 @@ int ippPort (void);

      Return Value

      Current state

      -

       CUPS 1.2/Mac OS X 10.5 ippReadIO

      +

       CUPS 1.2/OS X 10.5 ippReadIO

      Read data for an IPP message.

      ipp_state_t ippReadIO (
      @@ -3991,7 +3992,7 @@ int ippPort (void);

      Return Value

      Current state

      -

       CUPS 1.6 ippSetBoolean

      +

       CUPS 1.6/OS X 10.8 ippSetBoolean

      Set a boolean value in an attribute.

      int ippSetBoolean (
      @@ -4023,7 +4024,7 @@ The element parameter specifies which value to set from 0 to ippGetCount(attr).

      -

       CUPS 1.6 ippSetCollection

      +

       CUPS 1.6/OS X 10.8 ippSetCollection

      Set a collection value in an attribute.

      int ippSetCollection (
      @@ -4055,7 +4056,7 @@ The element parameter specifies which value to set from 0 to ippGetCount(attr).

      -

       CUPS 1.6 ippSetDate

      +

       CUPS 1.6/OS X 10.8 ippSetDate

      Set a date value in an attribute.

      int ippSetDate (
      @@ -4087,7 +4088,7 @@ The element parameter specifies which value to set from 0 to ippGetCount(attr).

      -

       CUPS 1.6 ippSetGroupTag

      +

       CUPS 1.6/OS X 10.8 ippSetGroupTag

      Set the group tag of an attribute.

      int ippSetGroupTag (
      @@ -4119,7 +4120,7 @@ event notification (IPP_TAG_EVENT_NOTIFICATION), operation (IPP_TAG_SUBSCRIPTION), or unsupported (IPP_TAG_UNSUPPORTED_GROUP).

      -

       CUPS 1.6 ippSetInteger

      +

       CUPS 1.6/OS X 10.8 ippSetInteger

      Set an integer or enum value in an attribute.

      int ippSetInteger (
      @@ -4151,7 +4152,7 @@ The element parameter specifies which value to set from 0 to ippGetCount(attr).

      -

       CUPS 1.6 ippSetName

      +

       CUPS 1.6/OS X 10.8 ippSetName

      Set the name of an attribute.

      int ippSetName (
      @@ -4177,7 +4178,7 @@ previously created using the ippNew or attr
      parameter may be modified as a result of setting the value.

      -

       CUPS 1.6 ippSetOperation

      +

       CUPS 1.6/OS X 10.8 ippSetOperation

      Set the operation ID in an IPP request message.

      int ippSetOperation (
      @@ -4209,7 +4210,7 @@ void ippSetPort (

      p
      Port number to use
      -

       CUPS 1.6 ippSetRange

      +

       CUPS 1.6/OS X 10.8 ippSetRange

      Set a rangeOfInteger value in an attribute.

      int ippSetRange (
      @@ -4244,7 +4245,7 @@ The element parameter specifies which value to set from 0 to ippGetCount(attr).

      -

       CUPS 1.6 ippSetRequestId

      +

       CUPS 1.6/OS X 10.8 ippSetRequestId

      Set the request ID in an IPP message.

      int ippSetRequestId (
      @@ -4267,7 +4268,7 @@ int ippSetRequestId (
      The request_id parameter must be greater than 0.

      -

       CUPS 1.6 ippSetResolution

      +

       CUPS 1.6/OS X 10.8 ippSetResolution

      Set a resolution value in an attribute.

      int ippSetResolution (
      @@ -4305,7 +4306,7 @@ The element parameter specifies which value to set from 0 to ippGetCount(attr).

      -

       CUPS 1.6 ippSetState

      +

       CUPS 1.6/OS X 10.8 ippSetState

      Set the current state of the IPP message.

      int ippSetState (
      @@ -4321,7 +4322,7 @@ int ippSetState (

      Return Value

      1 on success, 0 on failure

      -

       CUPS 1.6 ippSetStatusCode

      +

       CUPS 1.6/OS X 10.8 ippSetStatusCode

      Set the status code in an IPP response or event message.

      int ippSetStatusCode (
      @@ -4342,7 +4343,7 @@ int ippSetStatusCode (
      ippNew or ippNewRequest functions.

      -

       CUPS 1.6 ippSetString

      +

       CUPS 1.6/OS X 10.8 ippSetString

      Set a string value in an attribute.

      int ippSetString (
      @@ -4374,7 +4375,7 @@ The element parameter specifies which value to set from 0 to ippGetCount(attr).

      -

       CUPS 1.6 ippSetValueTag

      +

       CUPS 1.6/OS X 10.8 ippSetValueTag

      Set the value tag of an attribute.

      int ippSetValueTag (
      @@ -4412,7 +4413,7 @@ code in the "attributes-natural-language" attribute or, if not present code for the current locale.

      -

       CUPS 1.6 ippSetVersion

      +

       CUPS 1.6/OS X 10.8 ippSetVersion

      Set the version number in an IPP message.

      int ippSetVersion (
      @@ -4438,7 +4439,7 @@ int ippSetVersion (
      The valid version numbers are currently 1.0, 1.1, 2.0, 2.1, and 2.2.

      -

       CUPS 1.4/Mac OS X 10.6 ippTagString

      +

       CUPS 1.4/OS X 10.6 ippTagString

      Return the tag name corresponding to a tag value.

      const char *ippTagString (
      @@ -4455,7 +4456,7 @@ const char *ippTagString (

      The returned names are defined in RFC 2911 and 3382.

      -

       CUPS 1.4/Mac OS X 10.6 ippTagValue

      +

       CUPS 1.4/OS X 10.6 ippTagValue

      Return the tag value corresponding to a tag name.

      ipp_tag_t ippTagValue (
      @@ -4501,7 +4502,7 @@ const ipp_uchar_t *ippTimeToDate (

      Return Value

      Current state

      -

       CUPS 1.1.19/Mac OS X 10.3 ippWriteFile

      +

       CUPS 1.1.19/OS X 10.3 ippWriteFile

      Write data for an IPP message to a file.

      ipp_state_t ippWriteFile (
      @@ -4517,7 +4518,7 @@ const ipp_uchar_t *ippTimeToDate (

      Return Value

      Current state

      -

       CUPS 1.2/Mac OS X 10.5 ippWriteIO

      +

       CUPS 1.2/OS X 10.5 ippWriteIO

      Write data for an IPP message.

      ipp_state_t ippWriteIO (
      @@ -4548,7 +4549,7 @@ const ipp_uchar_t *ippTimeToDate (

      typedef struct gss_auth_identity gss_auth_identity_desc;

      -

       CUPS 1.2/Mac OS X 10.5 http_addr_t

      +

       CUPS 1.2/OS X 10.5 http_addr_t

      Socket address union, which makes using IPv6 and other address types easier and @@ -4556,7 +4557,7 @@ more portable.

      typedef union _http_addr_u / http_addr_t;

      -

       CUPS 1.2/Mac OS X 10.5 http_addrlist_t

      +

       CUPS 1.2/OS X 10.5 http_addrlist_t

      Socket address list, which is used to enumerate all of the addresses that are associated @@ -4569,7 +4570,7 @@ typedef struct http_addrlist_s / http_addrlist_t;

      typedef enum http_auth_e http_auth_t;

      -

       CUPS 1.5/Mac OS X 10.7 http_credential_t

      +

       CUPS 1.5/OS X 10.7 http_credential_t

      HTTP credential data

      typedef struct http_credential_s http_credential_t; @@ -4610,7 +4611,7 @@ typedef enum http_status_e http_status_t;

      typedef struct _http_s http_t;

      -

       CUPS 1.5/Mac OS X 10.7 http_timeout_cb_t

      +

       CUPS 1.5/OS X 10.7 http_timeout_cb_t

      HTTP timeout callback

      typedef int (*http_timeout_cb_t)(http_t *http, void *user_data); @@ -4636,9 +4637,9 @@ typedef enum http_version_e http_version_t; typedef struct _ipp_attribute_s ipp_attribute_t;

      ipp_copycb_t

      -

      The following structures are PRIVATE starting with CUPS 1.6. Please use the -new accessor functions available in CUPS 1.6 and later, as these definitions -will be moved to a private header file in a future release.

      +

      The following structures are PRIVATE starting with CUPS 1.6/OS X 10.8. +Please use the new accessor functions available in CUPS 1.6 and later, as +these definitions will be moved to a private header file in a future release.

      typedef int (*ipp_copycb_t)(void *context, ipp_t *dst, ipp_attribute_t *attr);

      @@ -4652,7 +4653,7 @@ typedef enum ipp_dstate_e ipp_dstate_t;

      typedef enum ipp_finish_e ipp_finish_t;

      -

       CUPS 1.2/Mac OS X 10.5 ipp_iocb_t

      +

       CUPS 1.2/OS X 10.5 ipp_iocb_t

      IPP IO Callback Function

      typedef ssize_t (*ipp_iocb_t)(void *context, ipp_uchar_t *buffer, size_t bytes); @@ -4717,7 +4718,7 @@ typedef unsigned char ipp_uchar_t;

      type
      username
      -

       CUPS 1.2/Mac OS X 10.5 http_addrlist_s

      +

       CUPS 1.2/OS X 10.5 http_addrlist_s

      Socket address list, which is used to enumerate all of the addresses that are associated @@ -4733,7 +4734,7 @@ with a hostname.

      next
      Pointer to next address in list
      -

       CUPS 1.5/Mac OS X 10.7 http_credential_s

      +

       CUPS 1.5/OS X 10.7 http_credential_s

      HTTP credential data

      struct http_credential_s {
          void *data;
      @@ -4746,6 +4747,17 @@ with a hostname.

      datalen
      Credential length
      +

      pollfd

      +

      User data (unused)

      +

      struct pollfd *pollfds, unsigned int num_pollfds, int timeout, void *context) {
      +    void) context;
      +    void) timeout;
      +};

      +

      Members

      +
      +
      context
      +
      timeout
      +

      Constants

      http_auth_e

      HTTP authentication types

      @@ -4761,7 +4773,7 @@ with a hostname.

      MD5-session authentication in use
      HTTP_AUTH_MD5_SESS_INT
      MD5-session authentication in use for body
      -
      HTTP_AUTH_NEGOTIATE  CUPS 1.3/Mac OS X 10.5 
      +
      HTTP_AUTH_NEGOTIATE  CUPS 1.3/OS X 10.5 
      GSSAPI authentication in use
      HTTP_AUTH_NONE
      No authentication in use
      @@ -4954,7 +4966,7 @@ are server-oriented...

      Only a partial file was recieved/sent
      HTTP_PAYMENT_REQUIRED
      Payment required
      -
      HTTP_PKI_ERROR  CUPS 1.5/Mac OS X 10.7 
      +
      HTTP_PKI_ERROR  CUPS 1.5/OS X 10.7 
      Error negotiating a secure connection
      HTTP_PRECONDITION
      Precondition failed
      @@ -5162,7 +5174,7 @@ are server-oriented...

      Add or modify a class
      CUPS_ADD_MODIFY_PRINTER
      Add or modify a printer
      -
      CUPS_AUTHENTICATE_JOB  CUPS 1.2/Mac OS X 10.5 
      +
      CUPS_AUTHENTICATE_JOB  CUPS 1.2/OS X 10.5 
      Authenticate a job
      CUPS_DELETE_CLASS
      Delete a class
      @@ -5174,9 +5186,9 @@ are server-oriented...

      Get the default printer
      CUPS_GET_DEVICES
      Get a list of supported devices
      -
      CUPS_GET_DOCUMENT  CUPS 1.4/Mac OS X 10.6 
      +
      CUPS_GET_DOCUMENT  CUPS 1.4/OS X 10.6 
      Get a document file
      -
      CUPS_GET_PPD  CUPS 1.3/Mac OS X 10.5 
      +
      CUPS_GET_PPD  CUPS 1.3/OS X 10.5 
      Get a PPD file
      CUPS_GET_PPDS
      Get a list of supported drivers
      @@ -5194,15 +5206,15 @@ are server-oriented...

      Cancel-Jobs
      IPP_CANCEL_MY_JOBS
      Cancel-My-Jobs
      -
      IPP_CANCEL_SUBSCRIPTION  CUPS 1.2/Mac OS X 10.5 
      +
      IPP_CANCEL_SUBSCRIPTION  CUPS 1.2/OS X 10.5 
      Cancel a subscription
      IPP_CLOSE_JOB
      Close-Job
      IPP_CREATE_JOB
      Create an empty print job
      -
      IPP_CREATE_JOB_SUBSCRIPTION  CUPS 1.2/Mac OS X 10.5 
      +
      IPP_CREATE_JOB_SUBSCRIPTION  CUPS 1.2/OS X 10.5 
      Create a job subscription
      -
      IPP_CREATE_PRINTER_SUBSCRIPTION  CUPS 1.2/Mac OS X 10.5 
      +
      IPP_CREATE_PRINTER_SUBSCRIPTION  CUPS 1.2/OS X 10.5 
      Create a printer subscription
      IPP_DISABLE_PRINTER
      Stop a printer
      @@ -5212,15 +5224,15 @@ are server-oriented...

      Get a list of jobs
      IPP_GET_JOB_ATTRIBUTES
      Get job attributes
      -
      IPP_GET_NOTIFICATIONS  CUPS 1.2/Mac OS X 10.5 
      +
      IPP_GET_NOTIFICATIONS  CUPS 1.2/OS X 10.5 
      Get notification events
      IPP_GET_PRINTER_ATTRIBUTES
      Get printer attributes
      IPP_GET_PRINTER_SUPPORTED_VALUES
      Get supported attribute values
      -
      IPP_GET_SUBSCRIPTIONS  CUPS 1.2/Mac OS X 10.5 
      +
      IPP_GET_SUBSCRIPTIONS  CUPS 1.2/OS X 10.5 
      Get list of subscriptions
      -
      IPP_GET_SUBSCRIPTION_ATTRIBUTES  CUPS 1.2/Mac OS X 10.5 
      +
      IPP_GET_SUBSCRIPTION_ATTRIBUTES  CUPS 1.2/OS X 10.5 
      Get subscription attributes
      IPP_HOLD_JOB
      Hold a job for printing
      @@ -5236,7 +5248,7 @@ are server-oriented...

      Cancel all jobs
      IPP_RELEASE_JOB
      Release a job for printing
      -
      IPP_RENEW_SUBSCRIPTION  CUPS 1.2/Mac OS X 10.5 
      +
      IPP_RENEW_SUBSCRIPTION  CUPS 1.2/OS X 10.5 
      Renew a printer subscription
      IPP_RESTART_JOB
      Reprint a job
      @@ -5322,7 +5334,7 @@ are server-oriented...

      client-error-attributes-or-values-not-supported
      IPP_ATTRIBUTES_NOT_SETTABLE
      client-error-attributes-not-settable
      -
      IPP_AUTHENTICATION_CANCELED  CUPS 1.5/Mac OS X 10.7 
      +
      IPP_AUTHENTICATION_CANCELED  CUPS 1.5/OS X 10.7 
      Authentication canceled by user
      IPP_BAD_REQUEST
      client-error-bad-request
      @@ -5386,7 +5398,7 @@ are server-oriented...

      successful-ok-too-many-events
      IPP_OPERATION_NOT_SUPPORTED
      server-error-operation-not-supported
      -
      IPP_PKI_ERROR  CUPS 1.5/Mac OS X 10.7 
      +
      IPP_PKI_ERROR  CUPS 1.5/OS X 10.7 
      Error negotiating a secure connection
      IPP_PRINTER_BUSY
      server-error-busy
      diff --git a/doc/help/api-ppd.html b/doc/help/api-ppd.html index 574640692..d01626182 100644 --- a/doc/help/api-ppd.html +++ b/doc/help/api-ppd.html @@ -345,7 +345,7 @@ div.contents ul.subcontents li { PPD API header for CUPS. - Copyright 2008-2011 by Apple Inc. + Copyright 2008-2012 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright @@ -356,7 +356,7 @@ div.contents ul.subcontents li {

      PPD API (DEPRECATED)

      -
      The PPD API is deprecated starting in CUPS 1.6. Please use the new Job Ticket APIs in the CUPS API documentation. These functions will be removed in a future release of CUPS.
      +
      The PPD API is deprecated starting in CUPS 1.6/OS X 10.8. Please use the new Job Ticket APIs in the CUPS API documentation. These functions will be removed in a future release of CUPS.
  • @@ -490,7 +490,7 @@ conflicts.">ppdMarkOption PPD API introduction for CUPS. - Copyright 2007-2011 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the @@ -502,7 +502,7 @@ conflicts.">ppdMarkOption

    Overview

    -
    The PPD API is deprecated starting in CUPS 1.6. Please use the new Job Ticket APIs in the CUPS API documentation. These functions will be removed in a future release of CUPS.
    +
    The PPD API is deprecated starting in CUPS 1.6/OS X 10.8. Please use the new Job Ticket APIs in the CUPS API documentation. These functions will be removed in a future release of CUPS.

    The CUPS PPD API provides read-only access the data in PostScript Printer Description ("PPD") files which are used for all printers with a driver. With @@ -705,7 +705,7 @@ for (attr = ppdFindAttr(ppd, "Product", NULL); puts(attr->value);

    Functions

    -

     CUPS 1.4/Mac OS X 10.6 cupsGetConflicts

    +

     CUPS 1.4/OS X 10.6 cupsGetConflicts

    Get a list of conflicting options in a marked PPD.

    int cupsGetConflicts (
    @@ -762,7 +762,7 @@ int cupsMarkOptions (
    "multiple-document-handling", "output-bin", "print-color-mode", "print-quality", "printer-resolution", and "sides" attributes to their corresponding PPD options and choices.

    -

     CUPS 1.4/Mac OS X 10.6 cupsResolveConflicts

    +

     CUPS 1.4/OS X 10.6 cupsResolveConflicts

    Resolve conflicts in a marked PPD.

    int cupsResolveConflicts (
    @@ -854,7 +854,7 @@ int ppdCollect (

    Discussion

    The choices array should be freed using free when you are finished with it.

    -

     CUPS 1.2/Mac OS X 10.5 ppdCollect2

    +

     CUPS 1.2/OS X 10.5 ppdCollect2

    Collect all marked options that reside in the specified section and minimum order.

    @@ -917,7 +917,7 @@ int ppdEmit (

    Return Value

    0 on success, -1 on failure

    -

     CUPS 1.2/Mac OS X 10.5 ppdEmitAfterOrder

    +

     CUPS 1.2/OS X 10.5 ppdEmitAfterOrder

    Emit a subset of the code for marked options to a file.

    int ppdEmitAfterOrder (
    @@ -993,7 +993,7 @@ int ppdEmitJCL (

    Return Value

    0 on success, -1 on failure

    -

     CUPS 1.2/Mac OS X 10.5 ppdEmitJCLEnd

    +

     CUPS 1.2/OS X 10.5 ppdEmitJCLEnd

    Emit JCLEnd code to a file.

    int ppdEmitJCLEnd (
    @@ -1009,7 +1009,7 @@ int ppdEmitJCLEnd (

    Return Value

    0 on success, -1 on failure

    -

     CUPS 1.2/Mac OS X 10.5 ppdEmitString

    +

     CUPS 1.2/OS X 10.5 ppdEmitString

    Get a string containing the code for marked options.

    char *ppdEmitString (
    @@ -1038,7 +1038,7 @@ The return string is allocated on the heap and should be freed using free when you are done with it.

    -

     CUPS 1.1.19/Mac OS X 10.3 ppdErrorString

    +

     CUPS 1.1.19/OS X 10.3 ppdErrorString

    Returns the text assocated with a status.

    const char *ppdErrorString (
    @@ -1051,7 +1051,7 @@ const char *ppdErrorString (

    Return Value

    Status string

    -

     CUPS 1.1.19/Mac OS X 10.3 ppdFindAttr

    +

     CUPS 1.1.19/OS X 10.3 ppdFindAttr

    Find the first matching attribute.

    ppd_attr_t *ppdFindAttr (
    @@ -1086,7 +1086,7 @@ const char *ppdErrorString (

    Return Value

    Choice pointer or NULL

    -

     CUPS 1.2/Mac OS X 10.5 ppdFindCustomOption

    +

     CUPS 1.2/OS X 10.5 ppdFindCustomOption

    Find a custom option.

    ppd_coption_t *ppdFindCustomOption (
    @@ -1102,7 +1102,7 @@ const char *ppdErrorString (

    Return Value

    Custom option or NULL

    -

     CUPS 1.2/Mac OS X 10.5 ppdFindCustomParam

    +

     CUPS 1.2/OS X 10.5 ppdFindCustomParam

    Find a parameter for a custom option.

    ppd_cparam_t *ppdFindCustomParam (
    @@ -1134,7 +1134,7 @@ const char *ppdErrorString (

    Return Value

    Pointer to choice or NULL

    -

     CUPS 1.1.19/Mac OS X 10.3 ppdFindNextAttr

    +

     CUPS 1.1.19/OS X 10.3 ppdFindNextAttr

    Find the next matching attribute.

    ppd_attr_t *ppdFindNextAttr (
    @@ -1169,7 +1169,7 @@ const char *ppdErrorString (

    Return Value

    Pointer to option or NULL

    -

     CUPS 1.2/Mac OS X 10.5 ppdFirstCustomParam

    +

     CUPS 1.2/OS X 10.5 ppdFirstCustomParam

    Return the first parameter for a custom option.

    ppd_cparam_t *ppdFirstCustomParam (
    @@ -1182,7 +1182,7 @@ const char *ppdErrorString (

    Return Value

    Custom parameter or NULL

    -

     CUPS 1.2/Mac OS X 10.5 ppdFirstOption

    +

     CUPS 1.2/OS X 10.5 ppdFirstOption

    Return the first option in the PPD file.

    ppd_option_t *ppdFirstOption (
    @@ -1199,7 +1199,7 @@ const char *ppdErrorString (

    Options are returned from all groups in ascending alphanumeric order.

    -

     CUPS 1.4/Mac OS X 10.6 ppdInstallableConflict

    +

     CUPS 1.4/OS X 10.6 ppdInstallableConflict

    Test whether an option choice conflicts with an installable option.

    @@ -1243,7 +1243,7 @@ int ppdIsMarked (

    Return Value

    Non-zero if option is marked

    -

     CUPS 1.1.19/Mac OS X 10.3 ppdLastError

    +

     CUPS 1.1.19/OS X 10.3 ppdLastError

    Return the status from the last ppdOpen*().

    ppd_status_t ppdLastError (
    @@ -1256,7 +1256,7 @@ int ppdIsMarked (

    Return Value

    Status code

    -

     CUPS 1.2/Mac OS X 10.5 ppdLocalize

    +

     CUPS 1.2/OS X 10.5 ppdLocalize

    Localize the PPD file to the current locale.

    int ppdLocalize (
    @@ -1298,7 +1298,7 @@ localized string uses the UTF-8 character encoding.

    This function uses the current locale to find the localized attribute for the given main and option keywords. If no localized version of the attribute exists for the current locale, the unlocalized version is returned.

    -

     CUPS 1.3/Mac OS X 10.5 ppdLocalizeIPPReason

    +

     CUPS 1.3/OS X 10.5 ppdLocalizeIPPReason

    Get the localized version of a cupsIPPReason attribute.

    @@ -1333,7 +1333,7 @@ string or attribute value. Otherwise the corresponding URI is returned.
    If no value of the requested scheme can be found, NULL is returned.

    -

     CUPS 1.4/Mac OS X 10.6 ppdLocalizeMarkerName

    +

     CUPS 1.4/OS X 10.6 ppdLocalizeMarkerName

    Get the localized version of a marker-names attribute value.

    @@ -1387,7 +1387,7 @@ int ppdMarkOption (

    Return Value

    Number of conflicts

    -

     CUPS 1.2/Mac OS X 10.5 ppdNextCustomParam

    +

     CUPS 1.2/OS X 10.5 ppdNextCustomParam

    Return the next parameter for a custom option.

    ppd_cparam_t *ppdNextCustomParam (
    @@ -1400,7 +1400,7 @@ int ppdMarkOption (

    Return Value

    Custom parameter or NULL

    -

     CUPS 1.2/Mac OS X 10.5 ppdNextOption

    +

     CUPS 1.2/OS X 10.5 ppdNextOption

    Return the next option in the PPD file.

    ppd_option_t *ppdNextOption (
    @@ -1430,7 +1430,7 @@ int ppdMarkOption (

    Return Value

    PPD file record

    -

     CUPS 1.2/Mac OS X 10.5 ppdOpen2

    +

     CUPS 1.2/OS X 10.5 ppdOpen2

    Read a PPD file into memory.

    ppd_file_t *ppdOpen2 (
    @@ -1501,7 +1501,7 @@ float ppdPageLength (

    Return Value

    Size record for page or NULL

    -

     CUPS 1.4/Mac OS X 10.6 ppdPageSizeLimits

    +

     CUPS 1.4/OS X 10.6 ppdPageSizeLimits

    Return the custom page size limits.

    int ppdPageSizeLimits (
    @@ -1544,7 +1544,7 @@ float ppdPageWidth (

    Return Value

    Width of page in points or 0.0

    -

     CUPS 1.1.20/Mac OS X 10.4 ppdSetConformance

    +

     CUPS 1.1.20/OS X 10.4 ppdSetConformance

    Set the conformance level for PPD files.

    void ppdSetConformance (
    @@ -1556,7 +1556,7 @@ void ppdSetConformance (

    Conformance level

    Data Types

    -

     CUPS 1.1.19/Mac OS X 10.3 ppd_attr_t

    +

     CUPS 1.1.19/OS X 10.3 ppd_attr_t

    PPD Attribute Structure

    typedef struct ppd_attr_s ppd_attr_t; @@ -1566,7 +1566,7 @@ typedef struct ppd_attr_s ppd_attr_t;

    typedef struct ppd_choice_s ppd_choice_t;

    -

     CUPS 1.1.19/Mac OS X 10.3 ppd_conform_t

    +

     CUPS 1.1.19/OS X 10.3 ppd_conform_t

    Conformance Levels

    typedef enum ppd_conform_e ppd_conform_t; @@ -1576,27 +1576,27 @@ typedef enum ppd_conform_e ppd_conform_t;

    typedef struct ppd_const_s ppd_const_t;

    -

     CUPS 1.2/Mac OS X 10.5 ppd_coption_t

    +

     CUPS 1.2/OS X 10.5 ppd_coption_t

    Custom Option

    typedef struct ppd_coption_s ppd_coption_t;

    -

     CUPS 1.2/Mac OS X 10.5 ppd_cparam_t

    +

     CUPS 1.2/OS X 10.5 ppd_cparam_t

    Custom Parameter

    typedef struct ppd_cparam_s ppd_cparam_t;

    -

     CUPS 1.2/Mac OS X 10.5 ppd_cplimit_t

    +

     CUPS 1.2/OS X 10.5 ppd_cplimit_t

    Custom Parameter Limit

    typedef union ppd_cplimit_u ppd_cplimit_t;

    -

     CUPS 1.2/Mac OS X 10.5 ppd_cptype_t

    +

     CUPS 1.2/OS X 10.5 ppd_cptype_t

    Custom Parameter Type

    typedef enum ppd_cptype_e ppd_cptype_t;

    -

     CUPS 1.2/Mac OS X 10.5 ppd_cpvalue_t

    +

     CUPS 1.2/OS X 10.5 ppd_cpvalue_t

    Custom Parameter Value

    typedef union ppd_cpvalue_u ppd_cpvalue_t; @@ -1641,7 +1641,7 @@ typedef enum ppd_section_e ppd_section_t;

    typedef struct ppd_size_s ppd_size_t;

    -

     CUPS 1.1.19/Mac OS X 10.3 ppd_status_t

    +

     CUPS 1.1.19/OS X 10.3 ppd_status_t

    Status Codes

    typedef enum ppd_status_e ppd_status_t; @@ -1652,7 +1652,7 @@ typedef enum ppd_status_e ppd_status_t; typedef enum ppd_ui_e ppd_ui_t;

    Structures

    -

     CUPS 1.1.19/Mac OS X 10.3 ppd_attr_s

    +

     CUPS 1.1.19/OS X 10.3 ppd_attr_s

    PPD Attribute Structure

    struct ppd_attr_s {
        char name[PPD_MAX_NAME];
    @@ -1712,7 +1712,7 @@ typedef enum ppd_ui_e ppd_ui_t;

    option2[PPD_MAX_NAME]
    Second keyword
    -

     CUPS 1.2/Mac OS X 10.5 ppd_coption_s

    +

     CUPS 1.2/OS X 10.5 ppd_coption_s

    Custom Option

    struct ppd_coption_s {
        char keyword[PPD_MAX_NAME];
    @@ -1731,7 +1731,7 @@ typedef enum ppd_ui_e ppd_ui_t;

    params
    Parameters
    -

     CUPS 1.2/Mac OS X 10.5 ppd_cparam_s

    +

     CUPS 1.2/OS X 10.5 ppd_cparam_s

    Custom Parameter

    struct ppd_cparam_s {
        ppd_cpvalue_t current;
    @@ -1886,13 +1886,13 @@ typedef enum ppd_ui_e ppd_ui_t;

    Number of page sizes
    patches
    Patch commands to be sent to printer
    -
    pcfilename  CUPS 1.1.19/Mac OS X 10.3 
    +
    pcfilename  CUPS 1.1.19/OS X 10.3 
    PCFileName string
    product
    Product name (from PS RIP/interpreter)
    profiles  DEPRECATED 
    sRGB color profiles
    -
    protocols  CUPS 1.1.19/Mac OS X 10.3 
    +
    protocols  CUPS 1.1.19/OS X 10.3 
    Protocols (BCP, TBCP) string
    shortnickname
    Short version of nickname
    @@ -1919,7 +1919,7 @@ typedef enum ppd_ui_e ppd_ui_t;
    PPD_MAX_NAME]
    Human-readable group name
    -
    name[PPD_MAX_NAME]  CUPS 1.1.18/Mac OS X 10.3 
    +
    name[PPD_MAX_NAME]  CUPS 1.1.18/OS X 10.3 
    Group name
    num_options
    Number of options
    @@ -2018,7 +2018,7 @@ typedef enum ppd_ui_e ppd_ui_t;
    Width of media in points

    Unions

    -

     CUPS 1.2/Mac OS X 10.5 ppd_cplimit_u

    +

     CUPS 1.2/OS X 10.5 ppd_cplimit_u

    Custom Parameter Limit

    union ppd_cplimit_u {
        float custom_curve;
    @@ -2049,7 +2049,7 @@ typedef enum ppd_ui_e ppd_ui_t;

    custom_string
    String length
    -

     CUPS 1.2/Mac OS X 10.5 ppd_cpvalue_u

    +

     CUPS 1.2/OS X 10.5 ppd_cpvalue_u

    Custom Parameter Value

    union ppd_cpvalue_u {
        float custom_curve;
    @@ -2081,7 +2081,7 @@ typedef enum ppd_ui_e ppd_ui_t;

    String value

    Constants

    -

     CUPS 1.1.19/Mac OS X 10.3 ppd_conform_e

    +

     CUPS 1.1.19/OS X 10.3 ppd_conform_e

    Conformance Levels

    Constants

    @@ -2124,7 +2124,7 @@ typedef enum ppd_ui_e ppd_ui_t;
    PPD_ORDER_PROLOG
    ... must be in the Prolog section
    -

     CUPS 1.1.19/Mac OS X 10.3 ppd_status_e

    +

     CUPS 1.1.19/OS X 10.3 ppd_status_e

    Status Codes

    Constants

    diff --git a/doc/help/api-raster.html b/doc/help/api-raster.html index ebeb8d829..706d1eb02 100644 --- a/doc/help/api-raster.html +++ b/doc/help/api-raster.html @@ -438,7 +438,7 @@ page header structure.">cupsRasterWriteHeader2 Raster API introduction for CUPS. - Copyright 2007-2011 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the @@ -457,7 +457,7 @@ avoid incompatibilities with newer versions of CUPS.

    Two kinds of CUPS filters use the CUPS raster API - raster image processor (RIP) filters such as pstoraster and cgpdftoraster -(Mac OS X) that produce CUPS raster files and printer driver filters that +(OS X) that produce CUPS raster files and printer driver filters that convert CUPS raster files into a format usable by the printer. Printer driver filters are by far the most common.

    @@ -577,7 +577,7 @@ the memory used to read the raster file:

      -
    • cupsRasterReadHeader Deprecated in CUPS 1.2/Mac OS X 10.5
    • +
    • cupsRasterReadHeader Deprecated in CUPS 1.2/OS X 10.5
    • cupsRasterReadHeader2
    • cupsRasterReadPixels
    • @@ -588,10 +588,10 @@ the memory used to read the raster file:

      Functions

      cupsRasterClose

      @@ -608,7 +608,7 @@ void cupsRasterClose (

      Discussion

      The file descriptor associated with the raster stream must be closed separately as needed.

      -

       CUPS 1.2/Mac OS X 10.5 cupsRasterInterpretPPD

      +

       CUPS 1.2/OS X 10.5 cupsRasterInterpretPPD

      Interpret PPD commands to create a page header.

      int cupsRasterInterpretPPD (
      @@ -743,7 +743,7 @@ of the version 2 page header data. This function handles reading version 2 page headers and copying only the version 1 data into the provided buffer.

      -

       CUPS 1.2/Mac OS X 10.5 cupsRasterReadHeader2

      +

       CUPS 1.2/OS X 10.5 cupsRasterReadHeader2

      Read a raster page header and store it in a version 2 page header structure.

      @@ -804,7 +804,7 @@ unsigned cupsRasterWriteHeader (

      This function is deprecated. Use cupsRasterWriteHeader2 instead.

      -

       CUPS 1.2/Mac OS X 10.5 cupsRasterWriteHeader2

      +

       CUPS 1.2/OS X 10.5 cupsRasterWriteHeader2

      Write a raster page header from a version 2 page header structure.

      @@ -899,7 +899,7 @@ typedef enum cups_order_e cups_order_t;

      typedef enum cups_orient_e cups_orient_t;

      -

       CUPS 1.2/Mac OS X 10.5 cups_page_header2_t

      +

       CUPS 1.2/OS X 10.5 cups_page_header2_t

      Version 2 page header

      typedef struct cups_page_header2_s cups_page_header2_t; @@ -920,7 +920,7 @@ typedef ssize_t (*cups_raster_iocb_t)(void *ctx, unsigned char *buffer, size_t l typedef struct _cups_raster_s cups_raster_t;

      Structures

      -

       CUPS 1.2/Mac OS X 10.5 cups_page_header2_s

      +

       CUPS 1.2/OS X 10.5 cups_page_header2_s

      Version 2 page header

      struct cups_page_header2_s {
          unsigned AdvanceDistance;
      @@ -1033,7 +1033,7 @@ typedef struct _cups_raster_s cups_raster_t;

      Number of bits for each color
      cupsBitsPerPixel
      Number of bits for each pixel
      -
      cupsBorderlessScalingFactor  CUPS 1.2/Mac OS X 10.5 
      +
      cupsBorderlessScalingFactor  CUPS 1.2/OS X 10.5 
      Scaling that was applied to page data
      cupsBytesPerLine
      Number of bytes per line
      @@ -1045,26 +1045,26 @@ typedef struct _cups_raster_s cups_raster_t;
      Device compression to use
      cupsHeight
      Height of page image in pixels
      -
      cupsImagingBBox[4]  CUPS 1.2/Mac OS X 10.5 
      +
      cupsImagingBBox[4]  CUPS 1.2/OS X 10.5 
      Floating point ImagingBoundingBox (scaling factor not applied, left, bottom, right, top)
      -
      cupsInteger[16]  CUPS 1.2/Mac OS X 10.5 
      +
      cupsInteger[16]  CUPS 1.2/OS X 10.5 
      User-defined integer values
      -
      cupsMarkerType[64]  CUPS 1.2/Mac OS X 10.5 
      +
      cupsMarkerType[64]  CUPS 1.2/OS X 10.5 
      Ink/toner type
      cupsMediaType
      Media type code
      -
      cupsNumColors  CUPS 1.2/Mac OS X 10.5 
      +
      cupsNumColors  CUPS 1.2/OS X 10.5 
      Number of color compoents
      -
      cupsPageSizeName[64]  CUPS 1.2/Mac OS X 10.5 
      +
      cupsPageSizeName[64]  CUPS 1.2/OS X 10.5 
      PageSize name
      -
      cupsPageSize[2]  CUPS 1.2/Mac OS X 10.5 
      +
      cupsPageSize[2]  CUPS 1.2/OS X 10.5 
      Floating point PageSize (scaling * factor not applied)
      -
      cupsReal[16]  CUPS 1.2/Mac OS X 10.5 
      +
      cupsReal[16]  CUPS 1.2/OS X 10.5 
      User-defined floating-point values
      -
      cupsRenderingIntent[64]  CUPS 1.2/Mac OS X 10.5 
      +
      cupsRenderingIntent[64]  CUPS 1.2/OS X 10.5 
      Color rendering intent
      cupsRowCount
      Rows per band
      @@ -1072,7 +1072,7 @@ factor not applied)
      Feed between bands
      cupsRowStep
      Spacing between lines
      -
      cupsString[16][64]  CUPS 1.2/Mac OS X 10.5 
      +
      cupsString[16][64]  CUPS 1.2/OS X 10.5 
      User-defined string values
      cupsWidth
      Width of page image in pixels
      @@ -1232,9 +1232,9 @@ factor not applied)
      CUPS_CSPACE_ADOBERGB  CUPS 1.4.5 
      Red, green, blue (Adobe RGB)
      -
      CUPS_CSPACE_CIELab  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_CIELab  CUPS 1.1.19/OS X 10.3 
      CIE Lab
      -
      CUPS_CSPACE_CIEXYZ  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_CIEXYZ  CUPS 1.1.19/OS X 10.3 
      CIE XYZ
      CUPS_CSPACE_CMY
      Cyan, magenta, yellow (DeviceCMY)
      @@ -1276,35 +1276,35 @@ factor not applied)
      Gold, magenta, yellow, silver
      CUPS_CSPACE_GOLD  DEPRECATED 
      Gold foil
      -
      CUPS_CSPACE_ICC1  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC1  CUPS 1.1.19/OS X 10.3 
      ICC-based, 1 color
      -
      CUPS_CSPACE_ICC2  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC2  CUPS 1.1.19/OS X 10.3 
      ICC-based, 2 colors
      -
      CUPS_CSPACE_ICC3  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC3  CUPS 1.1.19/OS X 10.3 
      ICC-based, 3 colors
      -
      CUPS_CSPACE_ICC4  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC4  CUPS 1.1.19/OS X 10.3 
      ICC-based, 4 colors
      -
      CUPS_CSPACE_ICC5  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC5  CUPS 1.1.19/OS X 10.3 
      ICC-based, 5 colors
      -
      CUPS_CSPACE_ICC6  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC6  CUPS 1.1.19/OS X 10.3 
      ICC-based, 6 colors
      -
      CUPS_CSPACE_ICC7  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC7  CUPS 1.1.19/OS X 10.3 
      ICC-based, 7 colors
      -
      CUPS_CSPACE_ICC8  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC8  CUPS 1.1.19/OS X 10.3 
      ICC-based, 8 colors
      -
      CUPS_CSPACE_ICC9  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICC9  CUPS 1.1.19/OS X 10.3 
      ICC-based, 9 colors
      -
      CUPS_CSPACE_ICCA  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICCA  CUPS 1.1.19/OS X 10.3 
      ICC-based, 10 colors
      -
      CUPS_CSPACE_ICCB  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICCB  CUPS 1.1.19/OS X 10.3 
      ICC-based, 11 colors
      -
      CUPS_CSPACE_ICCC  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICCC  CUPS 1.1.19/OS X 10.3 
      ICC-based, 12 colors
      -
      CUPS_CSPACE_ICCD  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICCD  CUPS 1.1.19/OS X 10.3 
      ICC-based, 13 colors
      -
      CUPS_CSPACE_ICCE  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICCE  CUPS 1.1.19/OS X 10.3 
      ICC-based, 14 colors
      -
      CUPS_CSPACE_ICCF  CUPS 1.1.19/Mac OS X 10.3 
      +
      CUPS_CSPACE_ICCF  CUPS 1.1.19/OS X 10.3 
      ICC-based, 15 colors
      CUPS_CSPACE_K
      Black (DeviceK)
      @@ -1316,7 +1316,7 @@ factor not applied)
      Red, green, blue (DeviceRGB, sRGB by default)
      CUPS_CSPACE_RGBA
      Red, green, blue, alpha (DeviceRGB, sRGB by default)
      -
      CUPS_CSPACE_RGBW  CUPS 1.2/Mac OS X 10.5 
      +
      CUPS_CSPACE_RGBW  CUPS 1.2/OS X 10.5 
      Red, green, blue, white (DeviceRGB, sRGB by default)
      CUPS_CSPACE_SILVER  DEPRECATED 
      Silver foil
      @@ -1382,9 +1382,9 @@ factor not applied)
      Open stream for reading
      CUPS_RASTER_WRITE
      Open stream for writing
      -
      CUPS_RASTER_WRITE_COMPRESSED  CUPS 1.3/Mac OS X 10.5 
      +
      CUPS_RASTER_WRITE_COMPRESSED  CUPS 1.3/OS X 10.5 
      Open stream for compressed writing
      -
      CUPS_RASTER_WRITE_PWG  CUPS 1.5/Mac OS X 10.7 
      +
      CUPS_RASTER_WRITE_PWG  CUPS 1.5/OS X 10.7 
      Open stream for compressed writing in PWG mode

      cups_order_e

      diff --git a/doc/help/kerberos.html b/doc/help/kerberos.html index cb8b88c29..30fb53364 100644 --- a/doc/help/kerberos.html +++ b/doc/help/kerberos.html @@ -46,7 +46,7 @@ DNS server(s).
    • Kerberos: The Network Authentication Protocol
    • Kerberos - on Mac OS X Frequently Asked Questions
    • + on OS X Frequently Asked Questions
    diff --git a/doc/help/license.html b/doc/help/license.html index 2b7c2460f..9bbc729ed 100644 --- a/doc/help/license.html +++ b/doc/help/license.html @@ -8,7 +8,7 @@

    Software License Agreement

    -

    Copyright 2007-2011 by Apple Inc.
    +

    Copyright 2007-2012 by Apple Inc.
    1 Infinite Loop
    Cupertino, CA 95014 USA

    @@ -91,11 +91,10 @@ the following special exceptions:

  • An Apple Operating System means any operating system software developed and/or - marketed by Apple Computer, Inc., including but - not limited to all existing releases and - versions of Apple's Darwin, Mac OS X, and Mac OS - X Server products and all follow-on releases and - future versions thereof.
  • + marketed by Apple Inc., including but not limited + to all existing releases and versions of Apple's + Darwin, OS X, and OS X Server products and all + follow-on releases and future versions thereof.
  • This exception is only available for Apple OS-Developed Software and does not apply to diff --git a/doc/help/man-ipptool.html b/doc/help/man-ipptool.html index ce090951d..1b523c537 100644 --- a/doc/help/man-ipptool.html +++ b/doc/help/man-ipptool.html @@ -122,12 +122,25 @@ Get a list of completed jobs for "myprinter":

    Standard Files

    The following standard files are available:
    +    color.jpg
         create-printer-subscription.test
    +    document-a4.pdf
    +    document-a4.ps
    +    document-letter.pdf
    +    document-letter.ps
         get-completed-jobs.test
         get-jobs.test
    +    get-printer-attributes.test
    +    gray.jpg
         ipp-1.1.test
         ipp-2.0.test
         ipp-2.1.test
    +    ipp-2.2.test
    +    onepage-a4.pdf
    +    onepage-a4.ps
    +    onepage-letter.pdf
    +    onepage-letter.ps
    +    print-job.test
         testfile.jpg
         testfile.pdf
         testfile.ps
    @@ -138,7 +151,7 @@ The following standard files are available:
     
    http://localhost:631/help

    Copyright

    -Copyright 2007-2010 by Apple Inc. +Copyright 2007-2012 by Apple Inc. diff --git a/doc/help/network.html b/doc/help/network.html index d02d4f403..6743651f7 100644 --- a/doc/help/network.html +++ b/doc/help/network.html @@ -397,21 +397,19 @@ lpd://username@ip-address-or-hostname/queue?option=value&option

    Troubleshooting SNMP Discovery Problems

    -

    Whenever you view the administration web page or a list of supported device URIs, the snmp backend will probe the local network(s) using Simple Network Management Protocol (SNMP) broadcasts. Printers that respond to these broadcasts are then interrogated for the make and model and supported protocols, yielding a device URI that can be used to add the printer.

    +

    Whenever you view the administration web page or a list of supported device URIs, the snmp backend can probe the local network(s) using Simple Network Management Protocol (SNMP) v1 broadcasts. Printers that respond to these broadcasts are then interrogated for the make, model, and supported protocols, yielding a device URI that can be used to add the printer.

    -

    That said, the SNMP requests sometimes expose problems in vendor SNMP or IPP implementations. If you are experiencing long delays in loading the CUPS web interface administration page, or if you don't see your printer listed, the following instructions will help you to diagnose those problems and/or provide important feedback to the CUPS developers so that we can correct problems and improve the SNMP backend in future releases.

    +

    That said, the SNMP requests sometimes expose problems in vendor implementations. If you are experiencing long delays in loading the CUPS web interface administration page, or if you don't see your printer listed, the following instructions will help you to diagnose those problems and/or provide important feedback to the CUPS developers so that we can correct problems and improve the SNMP backend in future releases.

    Quick Fixes

    -

    If you don't use "public" as your community name, create a text file called /etc/cups/snmp.conf and put the following line in it:

    +

    If you don't use "public" as your community name, edit or create (as needed) a text file called /etc/cups/snmp.conf and put the following line in it:

     Community your community name
     
    -

    If you have more than one community name, list them all on separate lines.

    - -

    If you don't support SNMP v1 on your network, you are currently "out of luck". That said, we will be adding v2, v2c, and v3 support in future CUPS releases once we have a handle on the actual requirements people have for such things. Please file or update an SNMP enhancement request with specific requirements you have - what you need supported, why you need it supported, and how you would like to see the functionality provided/exposed - so that we can do it "right" the first time.

    +

    The SNMP backend will not be able to find any printers on your network if SNMP v1 or broadcasting are not supported on your network.

    Basic Debugging

    diff --git a/doc/help/postscript-driver.html b/doc/help/postscript-driver.html index bef1a18af..fde5890be 100644 --- a/doc/help/postscript-driver.html +++ b/doc/help/postscript-driver.html @@ -345,7 +345,7 @@ div.contents ul.subcontents li { PostScript printer driver documentation for CUPS. - Copyright 2007-2010 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the @@ -357,7 +357,7 @@ div.contents ul.subcontents li {

    Developing PostScript Printer Drivers

    -

    This document describes how to develop printer drivers for PostScript printers. Topics include: printer driver basics, creating new PPD files, importing existing PPD files, using custom filters, implementing color management, and adding Mac OS X features.

    +

    This document describes how to develop printer drivers for PostScript printers. Topics include: printer driver basics, creating new PPD files, importing existing PPD files, using custom filters, implementing color management, and adding OS X features.

  • @@ -380,7 +380,7 @@ div.contents ul.subcontents li {
  • Using Custom Filters
  • Implementing Color Management
  • -
  • Adding Mac OS X Features
  • +
  • Adding OS X Features
  • Printer Driver Basics

    @@ -453,7 +453,7 @@ div.contents ul.subcontents li { dup [612 792] (Letter) put dup [612 1008] (Legal) put dup [595 842] (A4) put - {exch aload pop 4 index sub abs 5 le exch + {exch aload pop 4 index sub abs 5 le exch 5 index sub abs 5 le and {exch pop exit} {pop} ifelse } bind forall = flush pop pop @@ -550,7 +550,7 @@ div.contents ul.subcontents li { dup [612 792] (Letter) put dup [612 1008] (Legal) put dup [595 842] (A4) put - {exch aload pop 4 index sub abs 5 le exch + {exch aload pop 4 index sub abs 5 le exch 5 index sub abs 5 le and {exch pop exit} {pop} ifelse } bind forall = flush pop pop @@ -648,9 +648,9 @@ information file.

    The options used for profile selection can be customized using the cupsICCQualifier2 and cupsICCQualifier3 attributes.

    -

    Adding Mac OS X Features

    +

    Adding OS X Features

    -

    Mac OS X printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:

    +

    OS X printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:

     Attribute APDialogExtension "" /Library/Printers/Vendor/filename.plugin
    diff --git a/doc/help/ppd-compiler.html b/doc/help/ppd-compiler.html
    index b946ff652..27decdbbb 100644
    --- a/doc/help/ppd-compiler.html
    +++ b/doc/help/ppd-compiler.html
    @@ -604,7 +604,7 @@ follows:

  • Bits per color. In the example file, we define 8 bits per color, for a continuous-tone grayscale output. All versions of CUPS support 1 and - 8 bits per color. CUPS 1.2 and higher (Mac OS X 10.5 and higher) also + 8 bits per color. CUPS 1.2 and higher (OS X 10.5 and higher) also supports 16 bits per color.
  • Rows per band. In the example file, we define 0 rows per band to diff --git a/doc/help/raster-driver.html b/doc/help/raster-driver.html index 5264c1453..0399f057c 100644 --- a/doc/help/raster-driver.html +++ b/doc/help/raster-driver.html @@ -345,7 +345,7 @@ div.contents ul.subcontents li { Raster printer driver documentation for CUPS. - Copyright 2007-2010 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the @@ -357,7 +357,7 @@ div.contents ul.subcontents li {

    Developing Raster Printer Drivers

    -

    This document describes how to develop printer drivers for raster printers. Topics include: printer driver basics, creating new PPD files, using filters, implementing color management, and adding Mac OS X features.

    +

    This document describes how to develop printer drivers for raster printers. Topics include: printer driver basics, creating new PPD files, using filters, implementing color management, and adding OS X features.

  • @@ -378,7 +378,7 @@ div.contents ul.subcontents li {
  • Creating New PPD Files
  • Using Filters
  • Implementing Color Management
  • -
  • Adding Mac OS X Features
  • +
  • Adding OS X Features
  • Printer Driver Basics

    @@ -554,9 +554,9 @@ div.contents ul.subcontents li {

    The options used for profile selection can be customized using the cupsICCQualifier2 and cupsICCQualifier3 attributes.

    -

    Since Mac OS X 10.5Custom Color Matching Support

    +

    Since OS X 10.5Custom Color Matching Support

    -

    Mac OS X printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The APSupportsCustomColorMatching and APDefaultCustomColorMatchingProfile attributes can be used to enable this mode:

    +

    OS X printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The APSupportsCustomColorMatching and APDefaultCustomColorMatchingProfile attributes can be used to enable this mode:

     Attribute APSupportsCustomColorMatching "" true
    @@ -564,9 +564,9 @@ div.contents ul.subcontents li {
     
    -

    Adding Mac OS X Features

    +

    Adding OS X Features

    -

    Mac OS X printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:

    +

    OS X printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:

     Attribute APDialogExtension "" /Library/Printers/Vendor/filename.plugin
    diff --git a/doc/help/ref-classes-conf.html b/doc/help/ref-classes-conf.html
    index 40bc3d5e2..4171bb26d 100644
    --- a/doc/help/ref-classes-conf.html
    +++ b/doc/help/ref-classes-conf.html
    @@ -171,7 +171,7 @@ HREF="#AllowUser">AllowUser

    Description

    -

    The Info directive defines the string for the +

    The Info directive defines the string for the printer-info attribute. It is normally set using the lpadmin(8) command:

    @@ -260,7 +260,7 @@ section.

    Description

    -

    The KLimit directive defines the value of the +

    The KLimit directive defines the value of the job-k-limit attribute. It is normally set using the lpadmin(8) command:

    @@ -287,7 +287,7 @@ section.

    Description

    -

    The Location directive defines the string for the +

    The Location directive defines the string for the printer-location attribute. It is normally set using the lpadmin(8) command:

    @@ -372,7 +372,7 @@ section.

    Description

    -

    The PageLimit directive defines the value of the +

    The PageLimit directive defines the value of the job-page-limit attribute. It can be set using the lpadmin(8) command:

    @@ -511,7 +511,7 @@ section.

     <Class name>
       ...
    -  StateMessage Ready to print.
    +  StateMessage Class is lonely.
     </Class>
     
    @@ -528,7 +528,6 @@ StateMessage Network host host_name is busy; will retry in 30 seconds... StateMessage Class busy; will retry in 10 seconds... StateMessage Class is busy; retrying print job... StateMessage Print file accepted - job ID id_number. -StateMessage Ready to print. StateMessage Waiting for job to complete
    diff --git a/doc/help/ref-client-conf.html b/doc/help/ref-client-conf.html index a69b568d3..f17d54074 100644 --- a/doc/help/ref-client-conf.html +++ b/doc/help/ref-client-conf.html @@ -34,7 +34,7 @@ encryption settings for the client.

    The default setting is IfRequested.

    -

    CUPS 1.6GSSServiceName

    +

    CUPS 1.6/OS X 10.8GSSServiceName

    Examples

    @@ -68,11 +68,11 @@ ServerName foo.bar.com:8631
    Note:

    Only one ServerName directive may appear. If multiple names are -present, only the last one is used. This directive is not supported on Mac OS X 10.7 or later.

    +present, only the last one is used. This directive is not supported on OS X 10.7 or later.

    -

    CUPS 1.6User

    +

    CUPS 1.6/OS X 10.8User

    Examples

    diff --git a/doc/help/ref-cupsd-conf.html.in b/doc/help/ref-cupsd-conf.html.in index ef666f32d..ef697d5d1 100644 --- a/doc/help/ref-cupsd-conf.html.in +++ b/doc/help/ref-cupsd-conf.html.in @@ -44,7 +44,7 @@ automatically handles restarting the scheduler.

    Note: -

    The specification of time units ("w" for weeks, "h" for hours, etc.) in the various time interval directives is new in CUPS 1.6. Prior releases of CUPS only supported time intervals in seconds.

    +

    The specification of time units ("w" for weeks, "h" for hours, etc.) in the various time interval directives is new in CUPS 1.6/OS X 10.8. Prior releases of CUPS only supported time intervals in seconds.

    @@ -341,7 +341,7 @@ quotas. This option has no effect if quotas are not enabled. The default setting is No.

    -

    CUPS 1.2/Mac OS X 10.5BrowseLocalProtocols

    +

    CUPS 1.2/OS X 10.5BrowseLocalProtocols

    Examples

    @@ -470,7 +470,7 @@ DataDir /usr/share/cups for data files.

    -

    CUPS 1.2/Mac OS X 10.5DefaultAuthType

    +

    CUPS 1.2/OS X 10.5DefaultAuthType

    Examples

    @@ -488,7 +488,7 @@ of authentication to use for IPP operations that require a username. The default is Basic.

    -

    CUPS 1.2/Mac OS X 10.5DefaultEncryption

    +

    CUPS 1.2/OS X 10.5DefaultEncryption

    Examples

    @@ -526,7 +526,7 @@ language localization file exists for it. The default language is "en" for English.

    -

    CUPS 1.4/Mac OS X 10.6DefaultPaperSize

    +

    CUPS 1.4/OS X 10.6DefaultPaperSize

    Examples

    @@ -546,7 +546,7 @@ of None tells the scheduler to not set the default paper size.

    -

    CUPS 1.2/Mac OS X 10.5DefaultPolicy

    +

    CUPS 1.2/OS X 10.5DefaultPolicy

    Examples

    @@ -565,7 +565,7 @@ policy to use for IPP operation. The default is and other job operations.

    -

    CUPS 1.2/Mac OS X 10.5DefaultShared

    +

    CUPS 1.2/OS X 10.5DefaultShared

    Examples

    @@ -633,7 +633,7 @@ HREF="#Location">Location or Limit section.

    -

    CUPS 1.4/Mac OS X 10.6DirtyCleanInterval

    +

    CUPS 1.4/OS X 10.6DirtyCleanInterval

    Examples

    @@ -726,7 +726,7 @@ default error log file is @CUPS_LOGDIR@/error_log.

    information to the system log instead of a plain file.

    -

    CUPS 1.3/Mac OS X 10.5ErrorPolicy

    +

    CUPS 1.3/OS X 10.5ErrorPolicy

    Examples

    @@ -765,7 +765,7 @@ printer.

    -

    CUPS 1.4/Mac OS X 10.6FatalErrors

    +

    CUPS 1.4/OS X 10.6FatalErrors

    Examples

    @@ -926,7 +926,7 @@ system-specific but is usually lp or nobody.

    -

    CUPS 1.6GSSServiceName

    +

    CUPS 1.6/OS X 10.8GSSServiceName

    Examples

    @@ -1025,7 +1025,7 @@ to make private. The "default" values are "job-name", HREF="#Policy">Policy section.

    -

    CUPS 1.2/Mac OS X 10.5JobRetryInterval

    +

    CUPS 1.2/OS X 10.5JobRetryInterval

    Examples

    @@ -1044,7 +1044,7 @@ JobRetryInterval 30

    The default is 30 (30 seconds).

    -

    CUPS 1.4/Mac OS X 10.6JobKillDelay

    +

    CUPS 1.4/OS X 10.6JobKillDelay

    Examples

    @@ -1063,7 +1063,7 @@ JobKillDelay 30

    The default is 30 (30 seconds).

    -

    CUPS 1.2/Mac OS X 10.5JobRetryLimit

    +

    CUPS 1.2/OS X 10.5JobRetryLimit

    Examples

    @@ -1150,7 +1150,7 @@ The request type names are case-sensitive for compatibility with Apache.

    -

    CUPS 1.2/Mac OS X 10.5Limit (Policy)

    +

    CUPS 1.2/OS X 10.5Limit (Policy)

    Examples

    @@ -1690,7 +1690,7 @@ copies to 100.

    -

    CUPS 1.6MaxHoldTime

    +

    CUPS 1.6/OS X 10.8MaxHoldTime

    Examples

    @@ -1774,7 +1774,7 @@ active jobs is completed, stopped, aborted, or canceled.

    default setting is 0.

    -

    CUPS 1.6MaxJobTime

    +

    CUPS 1.6/OS X 10.8MaxJobTime

    Examples

    @@ -1838,7 +1838,7 @@ HREF="#LimitRequestBody">LimitRequestBody directive instead.

    -

    CUPS 1.4/Mac OS X 10.6MultipleOperationTimeout

    +

    CUPS 1.4/OS X 10.6MultipleOperationTimeout

    Examples

    @@ -1960,7 +1960,7 @@ recognized:

    The default is "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".

    -

    CUPS 1.2/Mac OS X 10.5PassEnv

    +

    CUPS 1.2/OS X 10.5PassEnv

    Examples

    @@ -1979,7 +1979,7 @@ scheduler only passes the DYLD_LIBRARY_PATH, environment variables to child processes.

    -

    CUPS 1.2/Mac OS X 10.5Policy

    +

    CUPS 1.2/OS X 10.5Policy

    Examples

    @@ -2135,7 +2135,7 @@ PrintcapFormat plist

    Description

    The PrintcapFormat directive controls the output format of the -printcap file. The default is to generate the plist format on Mac OS X, the +printcap file. The default is to generate the plist format on OS X, the Solaris format on Solaris, and the BSD format on other operating systems.

    @@ -2516,7 +2516,7 @@ the text that is returned. The default is
    -

    CUPS 1.2/Mac OS X 10.5SetEnv

    +

    CUPS 1.2/OS X 10.5SetEnv

    Examples

    @@ -2695,7 +2695,7 @@ to wait before an active HTTP or IPP request times out in seconds (no suffix), m

    The default timeout is 5m (five minutes).

    -

    CUPS 1.2/Mac OS X 10.5UseNetworkDefault

    +

    CUPS 1.2/OS X 10.5UseNetworkDefault

    Examples

    diff --git a/doc/help/ref-ppdcfile.html b/doc/help/ref-ppdcfile.html index c3967f1c2..1c77a7356 100644 --- a/doc/help/ref-ppdcfile.html +++ b/doc/help/ref-ppdcfile.html @@ -148,7 +148,7 @@ and the underscore. The value can be any valid expression.

    ... #else ... -#endif +#endif

    Description

    @@ -181,7 +181,7 @@ corresponding #if directive.

    ... #else ... -#endif +#endif

    Description

    @@ -215,7 +215,7 @@ expressions are non-zero.

    ... #else ... -#endif +#endif

    Description

    @@ -302,7 +302,7 @@ defining the standard raster fonts in the ... #else ... -#endif +#endif

    Description

    @@ -405,7 +405,7 @@ suffixes:

    -

    Points are assumed if no units are specified. +

    Points are assumed if no units are specified.

    See Also

    @@ -434,7 +434,7 @@ suffixes:

    The #po directive defines a message catalog to use for the given POSIX language abbreviation. Multiple #po directives can be specified to list multiple catalogs. The filename can be an absolute path or -relative to the driver information file. GNU gettext and Mac OS X .strings +relative to the driver information file. GNU gettext and OS X .strings files are supported.

    @@ -1111,7 +1111,7 @@ Adobe PPD file specification.

    either the word ROM or Disk.

    Device fonts differ from fonts defined using the #font directive in that they are +href='#_font'>#font directive in that they are automatically associated with the current driver. Fonts defined using #font may be imported into the current driver using the Font * form of this directive.

    @@ -1597,7 +1597,7 @@ Option "name/text" type section order
     Option Punch Boolean AnySetup 10
    -Option "fooFinish/Finishing Option" PickOne DocumentSetup 10 
    +Option "fooFinish/Finishing Option" PickOne DocumentSetup 10
     

    Description

    @@ -1798,7 +1798,7 @@ SimpleColorProfile 720dpi/Glossy 100 90 120 1.5 -5 5 10

    Description

    The SimpleColorProfile directive creates a -matrix-based ColorProfile. +matrix-based ColorProfile. The resolution and mediatype arguments specify the Resolution and MediaType choices which use the profile; the hyphen (-) is used to specify that any @@ -2414,8 +2414,8 @@ supported keywords for each type.


      -
    * = This colorspace is not supported on Mac OS X prior to 10.4. -
    ** = This colorspace is not supported on Mac OS X. +
    * = This colorspace is not supported on OS X prior to 10.4. +
    ** = This colorspace is not supported on OS X. @@ -2441,7 +2441,7 @@ supported keywords for each type.


    * = This color order is not supported by the current Apple RIP filters and should not be used when developing printer drivers for - Mac OS X. + OS X. diff --git a/doc/help/ref-printers-conf.html b/doc/help/ref-printers-conf.html index 9568fc7c8..bb44c4c68 100644 --- a/doc/help/ref-printers-conf.html +++ b/doc/help/ref-printers-conf.html @@ -151,7 +151,7 @@ HREF="#AllowUser">AllowUser

    Description

    -

    The DeviceURI directive defines the value of the +

    The DeviceURI directive defines the value of the device-uri-attribute attribute. It is normally set using the lpadmin(8) command:

    @@ -248,7 +248,7 @@ in the printer's PPD file.

    Description

    -

    The Info directive defines the string for the +

    The Info directive defines the string for the printer-info attribute. It is normally set using the lpadmin(8) command:

    @@ -337,7 +337,7 @@ section.

    Description

    -

    The KLimit directive defines the value of the +

    The KLimit directive defines the value of the job-k-limit attribute. It is normally set using the lpadmin(8) command:

    @@ -364,7 +364,7 @@ section.

    Description

    -

    The Location directive defines the string for the +

    The Location directive defines the string for the printer-location attribute. It is normally set using the lpadmin(8) command:

    @@ -449,7 +449,7 @@ section.

    Description

    -

    The PageLimit directive defines the value of the +

    The PageLimit directive defines the value of the job-page-limit attribute. It can be set using the lpadmin(8) command:

    @@ -665,7 +665,7 @@ section.

     <Printer name>
       ...
    -  StateMessage Ready to print.
    +  StateMessage Printer is lonely.
     </Printer>
     
    @@ -682,7 +682,6 @@ StateMessage Network host host_name is busy; will retry in 30 seconds... StateMessage Printer busy; will retry in 10 seconds... StateMessage Printer is busy; retrying print job... StateMessage Print file accepted - job ID id_number. -StateMessage Ready to print. StateMessage Waiting for job to complete diff --git a/doc/help/ref-snmp-conf.html b/doc/help/ref-snmp-conf.html index db4aacee5..4cab237e8 100644 --- a/doc/help/ref-snmp-conf.html +++ b/doc/help/ref-snmp-conf.html @@ -55,9 +55,8 @@ Community BigCorp

    Description

    The Community directive specifies a community -name to use when discovering printers. Multiple -Community lines can be provided to scan different -SNMP communities.

    +name to use when discovering printers and reporting status and supply +levels for network printers.

    The default community is "public".

    diff --git a/doc/help/sharing.html b/doc/help/sharing.html index 00ccb6fe8..e13cfed47 100644 --- a/doc/help/sharing.html +++ b/doc/help/sharing.html @@ -12,123 +12,46 @@

    The Basics

    -

    A "server" is any machine that communicates directly to a printer. A "client" -is any machine that sends print jobs to a server for final printing. Clients can -also be servers if they communicate directly with any printers of their own.

    +

    A "server" is any machine that communicates directly to a printer. A "client" is any machine that sends print jobs to a server for final printing. Clients can also be servers if they communicate directly with any printers of their own.

    -

    By default, CUPS uses the Internet Printing Protocol (IPP) to send jobs from -a client to a server. When printing to legacy print servers you may also use the -Line Printer Daemon (LPD) when printing to older UNIX-based servers or Server -Message Block (SMB) when printing to Windows® servers.

    +

    By default, CUPS uses the Internet Printing Protocol (IPP) to send jobs from a client to a server. When printing to legacy print servers you may also use the Line Printer Daemon (LPD) protocol when printing to older UNIX-based servers or Server Message Block (SMB) when printing to Windows® servers.

    -

    Clients can automatically discover and access shared printers via CUPS -browsing, IPP, Service Location Protocol (SLP), and Lightweight Directory Access -Protocol (LDAP). DNS Service Discovery (DNS-SD a.k.a. Bonjour®) -and SMB browsing can also be used to manually discover and access shared -printers.

    +

    Clients can automatically discover and access shared printers via DNS Service Discovery (DNS-SD a.k.a. Bonjour®). SMB browsing can also be used to manually discover and access shared printers when Samba is installed.

    Configuring the Server

    -

    You must enable printer sharing on the server before clients can print -through it. The simplest way to do this is to use the -cupsctl(8) command on the server:

    +

    You must enable printer sharing on the server before clients can print through it. The simplest way to do this is to use the cupsctl(8) command on the server:

     cupsctl --share-printers
     
    -

    By default, the above command will allow printing from other clients on the -same subnet as your server. To allow printing from any subnet, use the following -command instead:

    +

    By default, the above command will allow printing from other clients on the same subnet as your server. To allow printing from any subnet, use the following command instead:

     cupsctl --share-printers --remote-any
     
    -

    Next, you need to choose which protocols to use for printer sharing. The -default is CUPS browsing and DNS-SD on Mac OS X and CUPS browsing alone on -other platforms. To set the sharing protocols, run the cupsctl command -to set the -BrowseLocalProtocols -value. For example, run the following command to allow shared printing via -CUPS, DNS-SD, LPD, and SMB:

    +

    Next, tag each printer that you want to share using the lpadmin(8) command on the server, for example:

    -cupsctl 'BrowseLocalProtocols="cups dnssd lpd smb"'
    +lpadmin -p printer -o printer-is-shared=true
     
    - -

    Automatic Configuration using CUPS Browsing

    - -

    CUPS browsing works by periodically broadcasting information about printers -that are being shared to client systems on the same subnet. Each client -maintains its own list of shared printers, and when more than one server shares -the same printer (or the same kind of printer) the client uses all of the -servers and printers to provide high-availability and failsafe printing.

    - -

    To configure printers on the same subnet, do nothing. Each client -should see the available printers within 30 seconds automatically. The printer -and class lists are updated automatically as printers and servers are added or -removed.

    - -
    Note: - -

    Due to user interface changes in Mac OS X 10.5, CUPS shared printers will not -automatically appear in the print dialog. Instead, you must first run the -following command to enable CUPS browsing on your system:

    - -
    -cupsctl BrowseRemoteProtocols=cups
    -
    - -

    Then choose each of the CUPS shared printers you want to see in the print -dialog by adding them, either from the Add Printer... item in the -print dialog or from the Print & Fax preference pane in the -System Preferences window.

    - -
    - -

    Seeing Printers on Other Subnets

    - -

    You can automatically access printers on other subnets by adding -BrowsePoll lines -to the cupsd.conf file on your local system. For a single -server you can use the cupsctl command:

    +

    You can require authentication for shared printing by setting the policy on each printer, for example:

    -cupsctl BrowsePoll=server:port
    -
    - -

    For multiple servers, use the CUPS web interface (http://localhost:631/admin) -to edit the configuration file instead. Enter one BrowsePoll line -per server at the bottom of the file, as follows:

    - -
    -BrowsePoll server1:port
    -BrowsePoll server2:port
    -BrowsePoll server3:port
    -
    - -

    If you have more than one client on your subnet that wants to see the -printers on those servers, add a -BrowseRely line -to the cupsd.conf file on your local system using the cupsctl -command:

    - -
    -cupsctl 'BrowseRelay="127.0.0.1 @LOCAL"'
    -
    - -

    or CUPS web interface (again, at the bottom of the file):

    - -
    -BrowseRelay 127.0.0.1 @LOCAL
    +lpadmin -p printer -o printer-op-policy=authenticated
     

    Automatic Configuration using IPP

    +
    Note: +

    This method of configuration does not work on OS X 10.7 or later because sandboxed applications do not always have direct network access.

    +
    +

    CUPS can be configured to run without a local spooler and send all jobs to a single server. However, if that server goes down then all printing will be disabled. Use this configuration only as absolutely necessary.

    @@ -167,6 +90,10 @@ port. The environment variable overrides both the user and system

    Manual Configuration of Print Queues

    +
    Note: +

    This method of configuration does not work on OS X 10.7 or later because sandboxed applications do not always have direct network access.

    +
    +

    The most tedious method of configuring client machines is to configure each remote queue by hand using the lpadmin(8) command:

    diff --git a/doc/help/spec-cmp.html b/doc/help/spec-cmp.html index 47f56d31d..e253e3c48 100644 --- a/doc/help/spec-cmp.html +++ b/doc/help/spec-cmp.html @@ -260,7 +260,7 @@ created for developer snapshots.

    File and directory names may not exceed 16 characters in length to ensure compatibility with older UNIX filesystems. In -addition, to avoid problems with case-insensitive filesystems, +addition, to avoid problems with case-insensitive filesystems, you may not use names which differ only by case, for example "ReadMe" and "README" are not allowed in the same directory.

    @@ -315,7 +315,7 @@ exports that tag, creating the files

    Binary packages are not generally distributed by the CUPS team, however the packaging/cups.spec and packaging/cups.list files may be used to create binary -packages on Linux, Mac OS X, and UNIX. The +packages on Linux, OS X, and UNIX. The packaging/cups.spec file produces a binary package using the rpmbuild(8) software:

    @@ -361,7 +361,7 @@ are available for each type of binary package:

    osx - Mac OS X Install + OS X Install pkg @@ -392,7 +392,7 @@ are available for each type of binary package:

    Finally, the tools/testrpm and tools/testosx scripts can be used to create binary packages from the current working copy for testing on Linux and -Mac OS X, respectively:

    +OS X, respectively:

     tools/testrpm
    @@ -947,7 +947,7 @@ name=value
  • $(name); substitutes the value of "name",
  • ($name:.old=.new); substitutes the value of "name" with the filename extensions ".old" changed to ".new",
  • -
  • $(MAKEFLAGS); substitutes the +
  • $(MAKEFLAGS); substitutes the command-line options passed to the program without the leading hyphen (-),
  • $$; substitutes a single $ character,
  • diff --git a/doc/help/spec-ipp.html b/doc/help/spec-ipp.html index 2b6c7a3d0..e06270c18 100644 --- a/doc/help/spec-ipp.html +++ b/doc/help/spec-ipp.html @@ -365,7 +365,7 @@ Print-Job request:
    -
    "auth-info" (1setOf text(MAX)):CUPS 1.3/Mac OS X 10.5 +
    "auth-info" (1setOf text(MAX)):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute. @@ -472,7 +472,7 @@ Create-Job request:
    -
    "auth-info" (1setOf text(MAX)):CUPS 1.3/Mac OS X 10.5 +
    "auth-info" (1setOf text(MAX)):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute. @@ -577,7 +577,7 @@ Cancel-Job request:
    The client MUST supply a URI for the specified printer and a job ID number, or the job URI. -
    CUPS 1.4/Mac OS X 10.6"purge-job" (boolean): +
    CUPS 1.4/OS X 10.6"purge-job" (boolean):
    The client OPTIONALLY supplies this attribute. When true, all job files (history and document) are purged. The default @@ -632,18 +632,18 @@ Purge-Jobs request:
    The client MUST supply a URI for the specified printer or "ipp://.../printers" for all printers and classes. -
    CUPS 1.2/Mac OS X 10.5"requesting-user-name" (name(MAX)): +
    CUPS 1.2/OS X 10.5"requesting-user-name" (name(MAX)):
    The client OPTIONALLY supplies this attribute to specify whose jobs jobs are purged or canceled. -
    CUPS 1.2/Mac OS X 10.5"my-jobs" (boolean): +
    CUPS 1.2/OS X 10.5"my-jobs" (boolean):
    The client OPTIONALLY supplies this attribute to specify that only the jobs owned by the requesting user are purged or canceled. The default is false. -
    CUPS 1.2/Mac OS X 10.5"purge-jobs" (boolean): +
    CUPS 1.2/OS X 10.5"purge-jobs" (boolean):
    The client OPTIONALLY supplies this attribute to specify whether the jobs are purged (true) or just canceled (false). @@ -754,7 +754,7 @@ Response:
    -

    CUPS 1.2/Mac OS X 10.5CUPS 1.2/OS X 10.5Create-Printer-Subscription

    The Create-Printer-Subscription operation (0x0016) creates a @@ -926,7 +926,7 @@ CUPS-Get-Printers request: attributes as described in section 3.1.4.1 of the IPP Model and Semantics document. -

    "first-printer-name" (name(127)):CUPS 1.2/Mac OS X 10.5 +
    "first-printer-name" (name(127)):CUPS 1.2/OS X 10.5
    The client OPTIONALLY supplies this attribute to select the first printer that is returned. @@ -960,7 +960,7 @@ CUPS-Get-Printers request: responds as if this attribute had been supplied with a value of 'all'. -
    "requested-user-name" (name(127)) : CUPS 1.2/Mac OS X 10.5 +
    "requested-user-name" (name(127)) : CUPS 1.2/OS X 10.5
    The client OPTIONALLY supplies a user name that is used to filter the returned printers. @@ -1027,7 +1027,7 @@ CUPS-Add-Modify-Printer request:
    -
    "auth-info-required" (1setOf type2 keyword):CUPS 1.3/Mac OS X 10.5 +
    "auth-info-required" (1setOf type2 keyword):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue. @@ -1190,7 +1190,7 @@ CUPS-Get-Classes request: attributes as described in section 3.1.4.1 of the IPP Model and Semantics document. -
    "first-printer-name" (name(127)):CUPS 1.2/Mac OS X 10.5 +
    "first-printer-name" (name(127)):CUPS 1.2/OS X 10.5
    The client OPTIONALLY supplies this attribute to select the first printer that is returned. @@ -1220,7 +1220,7 @@ CUPS-Get-Classes request: interested. If the client omits this attribute, the server responds as if this attribute had been supplied with a value of 'all'. -
    "requested-user-name" (name(127)) : CUPS 1.2/Mac OS X 10.5 +
    "requested-user-name" (name(127)) : CUPS 1.2/OS X 10.5
    The client OPTIONALLY supplies a user name that is used to filter the returned printers. @@ -1287,7 +1287,7 @@ CUPS-Add-Modify-Class request:
    -
    "auth-info-required" (1setOf type2 keyword):CUPS 1.3/Mac OS X 10.5 +
    "auth-info-required" (1setOf type2 keyword):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue. @@ -1586,14 +1586,14 @@ CUPS-Get-Devices request:
    The client OPTIONALLY supplies a device class keyword to select which devices are returned. -
    "exclude-schemes" (1setOf name) :CUPS 1.4/Mac OS X 10.6 +
    "exclude-schemes" (1setOf name) :CUPS 1.4/OS X 10.6
    The client OPTIONALLY supplies a set of scheme names that the requestor does not want to discover. If the client omits this attribute, the server responds with devices of all schemes specified by the "include-schemes" attribute. -
    "include-schemes" (1setOf name) :CUPS 1.4/Mac OS X 10.6 +
    "include-schemes" (1setOf name) :CUPS 1.4/OS X 10.6
    The client OPTIONALLY supplies a set of scheme names that the requestor wants to discover. If the client omits this attribute, @@ -1612,7 +1612,7 @@ CUPS-Get-Devices request: the client omits this attribute, the server responds as if this attribute had been supplied with a value of 'all'. -
    "timeout" (integer (1:MAX)) :CUPS 1.4/Mac OS X 10.6 +
    "timeout" (integer (1:MAX)) :CUPS 1.4/OS X 10.6
    The client OPTIONALLY supplies this attribute to limit the duration of the lookup. The default timeout is 15 seconds. @@ -1669,14 +1669,14 @@ CUPS-Get-PPDs request: attributes as described in section 3.1.4.1 of the IPP Model and Semantics document. -
    "exclude-schemes" (1setOf name) :CUPS 1.4/Mac OS X 10.6 +
    "exclude-schemes" (1setOf name) :CUPS 1.4/OS X 10.6
    The client OPTIONALLY supplies a set of scheme names that the requestor does not want to list. If the client omits this attribute, the server responds with PPDs of all schemes specified by the "include-schemes" attribute. -
    "include-schemes" (1setOf name) :CUPS 1.4/Mac OS X 10.6 +
    "include-schemes" (1setOf name) :CUPS 1.4/OS X 10.6
    The client OPTIONALLY supplies a set of scheme names that the requestor wants to list. If the client omits this attribute, the server @@ -1691,27 +1691,27 @@ CUPS-Get-PPDs request:
    The client OPTIONALLY supplies a printer manufacturer to select which PPDs are returned. -
    "ppd-make-and-model" (text(127)):CUPS 1.3/Mac OS X 10.5 +
    "ppd-make-and-model" (text(127)):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies a make and model to select which PPDs are returned. -
    "ppd-model-number" (integer):CUPS 1.3/Mac OS X 10.5 +
    "ppd-model-number" (integer):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies a model number to select which PPDs are returned. -
    "ppd-natural-language" (naturalLanguage):CUPS 1.3/Mac OS X 10.5 +
    "ppd-natural-language" (naturalLanguage):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies a language to select which PPDs are returned. -
    "ppd-product" (text(127)):CUPS 1.3/Mac OS X 10.5 +
    "ppd-product" (text(127)):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies a PostScript product string to select which PPDs are returned. -
    "ppd-psversion" (text(127)):CUPS 1.3/Mac OS X 10.5 +
    "ppd-psversion" (text(127)):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies a PostScript version string to select which PPDs are returned. -
    "ppd-type" (type1 keyword):CUPS 1.3/Mac OS X 10.5 +
    "ppd-type" (type1 keyword):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies a driver type to select which PPDs are returned. @@ -1813,7 +1813,7 @@ CUPS-Move-Job Response:
    -

    CUPS 1.2/Mac OS X 10.5CUPS-Authenticate-Job Operation

    +

    CUPS 1.2/OS X 10.5CUPS-Authenticate-Job Operation

    The CUPS-Authenticate-Job operation (0x400E) authenticates a print job for printing, releasing the job if it is held. Typically this is used when printing @@ -1848,11 +1848,11 @@ CUPS-Authenticate-Job request:

    -
    "auth-info" (1setOf text(MAX)):CUPS 1.3/Mac OS X 10.5 +
    "auth-info" (1setOf text(MAX)):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute. -
    "job-hold-until" (keyword | name(MAX)):CUPS 1.3/Mac OS X 10.5 +
    "job-hold-until" (keyword | name(MAX)):CUPS 1.3/OS X 10.5
    The client OPTIONALLY supplies a new job-hold-until value for the job. If specified and not the "no-hold" value, the job is held instead @@ -1891,7 +1891,7 @@ CUPS-Authenticate-Job Response:
    -

    CUPS 1.3/Mac OS X 10.5CUPS-Get-PPD Operation

    +

    CUPS 1.3/OS X 10.5CUPS-Get-PPD Operation

    The CUPS-Get-PPD operation (0x400F) gets a PPD file from the server. The PPD file can be specified using a ppd-name @@ -1961,7 +1961,7 @@ CUPS-Get-PPD Response:

    If the status code is successful-ok, the PPD file follows the end of the IPP response.

    -

    CUPS 1.4/Mac OS X 10.6CUPS-Get-Document Operation

    +

    CUPS 1.4/OS X 10.6CUPS-Get-Document Operation

    The CUPS-Get-Document operation (0x4027) gets a document file from a job on the server. The document file is specified using the @@ -2078,7 +2078,7 @@ one of the following: -

    device-id (text(127))CUPS 1.2/Mac OS X 10.5

    +

    device-id (text(127))CUPS 1.2/OS X 10.5

    The device-id attribute specifies the IEEE-1284 device ID string for the device.

    @@ -2088,7 +2088,7 @@ string for the device.

    The device-info attribute specifies a human-readable string describing the device, e.g. "Parallel Port #1". -

    device-location (text(127))CUPS 1.4/Mac OS X 10.6

    +

    device-location (text(127))CUPS 1.4/OS X 10.6

    The device-location attribute specifies the physical location of the printer. @@ -2148,7 +2148,7 @@ of the device-class attribute:

    Job Template Attributes

    -

    auth-info (1setOf text(MAX))CUPS 1.3/Mac OS X 10.5

    +

    auth-info (1setOf text(MAX))CUPS 1.3/OS X 10.5

    The auth-info attribute specifies the authentication information to use when printing to a remote device. The order and content of each text value is specifed by the auth-info-required printer attribute. @@ -2158,7 +2158,7 @@ of the device-class attribute: printing text files. Only the values 10, 12, and 17 are currently supported. The default value is 10. -

    fit-to-page (boolean)CUPS 1.4/Mac OS X 10.6

    +

    fit-to-page (boolean)CUPS 1.4/OS X 10.6

    The fit-to-page attribute specifies whether to scale documents to fit on the selected media (fit-to-page=true) or use the physical size specified in the @@ -2178,17 +2178,17 @@ Universal Coordinated Time (UTC) and not in the local time zone. If the specified time is less than the current time, the job is held until the next day. -

    job-media-progress (integer(0:100))CUPS 1.4/Mac OS X 10.6

    +

    job-media-progress (integer(0:100))CUPS 1.4/OS X 10.6

    The job-media-progress attribute specifies the percentage of completion of the current page. It is only valid when the job-state attribute has the "processing" value (5).

    -

    job-printer-state-message (text(MAX))CUPS 1.3/Mac OS X 10.5

    +

    job-printer-state-message (text(MAX))CUPS 1.3/OS X 10.5

    The job-printer-state-message attribute provides the last known value of the printer-state-message attribute for the printer that processed (or is processing) the job.

    -

    job-printer-state-reasons (1setOf type2 keyword)CUPS 1.3/Mac OS X 10.5

    +

    job-printer-state-reasons (1setOf type2 keyword)CUPS 1.3/OS X 10.5

    The job-printer-state-reasons attribute provides the last known value of the printer-state-reasons attribute for the printer that processed (or is processing) the job.

    @@ -2342,7 +2342,7 @@ name of the PPD file (the NickName attribute in the PPD file). If the make and model is not specified in the PPD file then the ModelName or ShortNickName attributes are used instead. -

    ppd-model-number (integer)CUPS 1.3/Mac OS X 10.5

    +

    ppd-model-number (integer)CUPS 1.3/OS X 10.5

    The ppd-model-number attribute provides the cupsModelNumber value from the PPD file. @@ -2360,11 +2360,11 @@ language is unknown or undefined then "en" (English) is assumed.

    The ppd-product attribute specifies the Product attribute values in the PPD file. -

    ppd-psversion (1setOf text(127))CUPS 1.3/Mac OS X 10.5

    +

    ppd-psversion (1setOf text(127))CUPS 1.3/OS X 10.5

    The ppd-product attribute specifies the PSVersion attribute values in the PPD file. -

    ppd-type (type1 keyword)CUPS 1.3/Mac OS X 10.5

    +

    ppd-type (type1 keyword)CUPS 1.3/OS X 10.5

    The ppd-type attribute specifies the type of driver described by the PPD file:

    @@ -2385,7 +2385,7 @@ language is unknown or undefined then "en" (English) is assumed.

    Printer Attributes

    -

    auth-info-required (1setOf type2 keyword)CUPS 1.3/Mac OS X 10.5

    +

    auth-info-required (1setOf type2 keyword)CUPS 1.3/OS X 10.5

    The auth-info-required attribute specifies the authentication information that is required for printing a job. The following keywords are recognized:

    @@ -2425,26 +2425,26 @@ the system.

    The job-sheets-supported attribute specifies the available banner files. There will always be at least one banner file available called "none". -

    marker-change-time (integer)CUPS 1.3/Mac OS X 10.5

    +

    marker-change-time (integer)CUPS 1.3/OS X 10.5

    The marker-change-time attribute specifies the printer-up-time value when the last change to the marker-colors, marker-levels, marker-message, marker-names, or marker-types attributes was made.

    -

    marker-colors (1setof name(MAX))CUPS 1.3/Mac OS X 10.5

    +

    marker-colors (1setof name(MAX))CUPS 1.3/OS X 10.5

    The marker-colors attribute specifies the color(s) for each supply in the printer. It is only available when the driver provides supply levels. The color is either "none" or one or more hex-encoded sRGB colors of the form "#RRGGBB".

    -

    marker-high-levels (1setof integer(0:100))CUPS 1.4/Mac OS X 10.6

    +

    marker-high-levels (1setof integer(0:100))CUPS 1.4/OS X 10.6

    The marker-high-levels attribute specifies the supply levels that indicate a near-full condition. A value of 100 should be used for supplies that are consumed/emptied, e.g. ink cartridges.

    -

    marker-levels (1setof integer(-3:100))CUPS 1.3/Mac OS X 10.5

    +

    marker-levels (1setof integer(-3:100))CUPS 1.3/OS X 10.5

    The marker-levels attribute specifies the current supply levels for the printer. It is only available when the driver provides supply levels. A @@ -2452,24 +2452,24 @@ value of -1 indicates the level is unavailable, -2 indicates unknown, and -3 indicates the level is unknown but has not yet reached capacity. Values from 0 to 100 indicate the corresponding percentage.

    -

    marker-low-levels (1setof integer(0:100))CUPS 1.4/Mac OS X 10.6

    +

    marker-low-levels (1setof integer(0:100))CUPS 1.4/OS X 10.6

    The marker-low-levels attribute specifies the supply levels that indicate a near-empty condition. A value of 0 should be used for supplies that are filled, e.g. waste ink tanks.

    -

    marker-message (text(MAX))CUPS 1.4/Mac OS X 10.6

    +

    marker-message (text(MAX))CUPS 1.4/OS X 10.6

    The marker-message attribute provides a human-readable status message for the current supply levels, e.g. "12 pages of ink remaining." It is only available when the driver provides supply levels.

    -

    marker-names (1setof name(MAX))CUPS 1.3/Mac OS X 10.5

    +

    marker-names (1setof name(MAX))CUPS 1.3/OS X 10.5

    The marker-names attribute specifies the name(s) for each supply in the printer. It is only available when the driver provides supply levels.

    -

    marker-types (1setof type3 keyword)CUPS 1.3/Mac OS X 10.5

    +

    marker-types (1setof type3 keyword)CUPS 1.3/OS X 10.5

    The marker-types attribute specifies the type(s) of each supply in the printer. It is only available when the driver provides supply levels. The @@ -2548,13 +2548,13 @@ to this printer. The default port monitor is "none".

    The port-monitor-supported attribute specifies the available port monitors. -

    printer-commands (1setOf Type3 keyword)CUPS 1.4/Mac OS X 10.6

    +

    printer-commands (1setOf Type3 keyword)CUPS 1.4/OS X 10.6

    The printer-commands attribute specifies the commands that are supported by the CUPS command file filter. The keyword "none" indicates that no commands are supported.

    -

    printer-dns-sd-name (name(MAX) | noValue)CUPS 1.4/Mac OS X 10.6

    +

    printer-dns-sd-name (name(MAX) | noValue)CUPS 1.4/OS X 10.6

    The printer-dns-sd-name attribute specifies the registered DNS-SD service name for the printer. If the printer is not being shared using this protocol, @@ -2574,10 +2574,10 @@ and the following CUPS-specific keywords:

    permissions. CUPS will not execute programs with world write permissions or setuid programs. When run as root (the default), CUPS also does not execute programs that are not owned by root. - CUPS 1.4/Mac OS X 10.6 + CUPS 1.4/OS X 10.6
  • cups-missing-filter-warning - a filter or backend is not - installed. CUPS 1.4/Mac OS X 10.6
  • + installed. CUPS 1.4/OS X 10.6 diff --git a/doc/help/spec-postscript.html b/doc/help/spec-postscript.html index af64b7a9e..110c5a3ca 100644 --- a/doc/help/spec-postscript.html +++ b/doc/help/spec-postscript.html @@ -12,7 +12,7 @@ CUPS PostScript file specification for CUPS. - Copyright 2007-2011 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 2006 by Easy Software Products. These coded instructions, statements, and computer programs are the @@ -39,7 +39,7 @@ output will work reliably.

    de-facto standard print job file format/language for UNIX-based applications, it is slowly being phased out in favor of Adobe's Portable Document Format ("PDF") which offers many advantages -over PostScript. Mac OS X uses PDF as the primary print job file +over PostScript. OS X uses PDF as the primary print job file format and Linux is making the transition. Both PostScript and PDF are complex formats, and we highly recommend using high-level toolkits whenever possible to create your print jobs.
    diff --git a/doc/help/spec-ppd.html b/doc/help/spec-ppd.html index d291b49ed..d85918978 100644 --- a/doc/help/spec-ppd.html +++ b/doc/help/spec-ppd.html @@ -390,7 +390,7 @@ div.contents ul.subcontents li {
  • cupsUIResolver
  • Globalized PPD Support
  • -
  • CUPS 1.3/Mac OS X 10.6Custom Options
  • +
  • CUPS 1.3/OS X 10.6Custom Options
  • Writing PostScript Option Commands for Raster Drivers
  • Media Keywords
  • -
  • Mac OS X Attributes
      +
    • OS X Attributes
      • APDialogExtension
      • APDuplexRequiresFlippedMargin
      • APHelpBook
      • @@ -471,11 +471,11 @@ LINE-END = CR / LF / CR LF

        CUPS supports several methods of auto-configuration via PPD keywords.

        -

        Mac OS X 10.5APAutoSetupTool

        +

        OS X 10.5APAutoSetupTool

        *APAutoSetupTool: "/LibraryPrinters/vendor/filename"

        -

        This Mac OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the Add Printer window or the Nearby Printers list in the Print dialog.

        +

        This OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the Add Printer window or the Nearby Printers list in the Print dialog.

        The program is provided with two arguments: the printer's device URI and the PPD file to be used for the printer. The program must write an updated PPD file to stdout.

        @@ -486,7 +486,7 @@ LINE-END = CR / LF / CR LF *APAutoSetupTool: "/Library/Printers/vendor/Tools/autosetuptool" -

        Mac OS X 10.2/CUPS 1.4?MainKeyword

        +

        OS X 10.2/CUPS 1.4?MainKeyword

        *?MainKeyword: "
        PostScript query code that writes a message using the = operator...
        @@ -515,7 +515,7 @@ LINE-END = CR / LF / CR LF *CloseUI: OptionDuplex -

        Mac OS X 10.4/CUPS 1.5OIDMainKeyword

        +

        OS X 10.4/CUPS 1.5OIDMainKeyword

        *?OIDMainKeyword: ".n.n.n..."
        *OIDMainKeyword OptionKeyword1: "value"
        @@ -550,7 +550,7 @@ LINE-END = CR / LF / CR LF

        *cupsColorProfile Resolution/MediaType: "density gamma m00 m01 m02 m10 m11 m12 m20 m21 m22"

        -

        This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. This keyword is not supported on Mac OS X.

        +

        This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. This keyword is not supported on OS X.

        The Resolution and MediaType values may be "-" to act as a wildcard. Otherwise they must match one of the Resolution or MediaType option keywords defined in the PPD file.

        @@ -583,7 +583,7 @@ f(x) = density * x gamma -

        Mac OS X 10.3/CUPS 1.2cupsICCProfile

        +

        OS X 10.3/CUPS 1.2cupsICCProfile

        *cupsICCProfile ColorModel.MediaType.Resolution/Description: "filename"

        @@ -622,22 +622,22 @@ f(x) = density * x gamma *cupsICCQualifier3: Resolution -

        Mac OS X 10.4Custom Color Matching Support

        +

        OS X 10.4Custom Color Matching Support

        *APSupportsCustomColorMatching: true
        *APCustomColorMatchingName name/text: ""
        *APCustomColorMatchingProfile: profile
        *APDefaultCustomColorMatchingProfile: profile

        -

        These keywords tell the Mac OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The APCustomColorMatchingProfile and APDefaultColorMatchingProfile keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.

        +

        These keywords tell the OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The APCustomColorMatchingProfile and APDefaultColorMatchingProfile keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.

        Note: -

        Prior to Mac OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in Mac OS X 10.6 and later is "sRGB". For more information, see "Mac OS X v10.6: About gamma 2.2" on Apple's support site.

        +

        Prior to OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in OS X 10.6 and later is "sRGB". For more information, see "OS X v10.6: About gamma 2.2" on Apple's support site.

        -

        Mac OS X 10.5APCustomColorMatchingName

        +

        OS X 10.5APCustomColorMatchingName

        *APCustomColorMatchingName name/text: ""

        @@ -651,7 +651,7 @@ f(x) = density * x gamma *fr.APCustomColorMatchingName name/La AcmeColor(tm): "" -

        Mac OS X 10.5APCustomColorMatchingProfile

        +

        OS X 10.5APCustomColorMatchingProfile

        *APCustomColorMatchingProfile: name

        @@ -673,7 +673,7 @@ f(x) = density * x gamma *APCustomColorMatchingProfile: AdobeRGB -

        Mac OS X 10.5APDefaultCustomColorMatchingProfile

        +

        OS X 10.5APDefaultCustomColorMatchingProfile

        *APDefaultCustomColorMatchingProfile: name

        @@ -687,7 +687,7 @@ f(x) = density * x gamma *APDefaultCustomColorMatchingProfile: sRGB -

        Mac OS X 10.4APSupportsCustomColorMatching

        +

        OS X 10.4APSupportsCustomColorMatching

        *APSupportsCustomColorMatching: boolean

        @@ -723,7 +723,7 @@ f(x) = density * x gamma -

        CUPS 1.4/Mac OS X 10.6cupsUIConstraints

        +

        CUPS 1.4/OS X 10.6cupsUIConstraints

        *cupsUIConstraints resolver: "*Keyword1 *Keyword2 ..."
        *cupsUIConstraints resolver: "*Keyword1 OptionKeyword1 *Keyword2 ..."
        @@ -753,7 +753,7 @@ f(x) = density * x gamma *cupsUIConstraints photo: "*OutputMode Photo *MediaType Transparency *Resolution 1200dpi" -

        CUPS 1.4/Mac OS X 10.6cupsUIResolver

        +

        CUPS 1.4/OS X 10.6cupsUIResolver

        *cupsUIResolver resolver: "*Keyword1 OptionKeyword1 *Keyword2 OptionKeyword2 ..."

        @@ -855,7 +855,7 @@ f(x) = density * x gamma -

        CUPS 1.3/Mac OS X 10.6Custom Options

        +

        CUPS 1.3/OS X 10.6Custom Options

        CUPS supports custom options using an extension of the CustomPageSize and ParamCustomPageSize syntax:

        @@ -1313,7 +1313,7 @@ PRE B {

        The CUPS media keywords allow drivers to specify alternate custom page size limits based on up to two options.

        -

        CUPS 1.4/Mac OS X 10.6cupsMediaQualifier2

        +

        CUPS 1.4/OS X 10.6cupsMediaQualifier2

        *cupsMediaQualifier2: MainKeyword

        @@ -1332,7 +1332,7 @@ custom page size limits.

        *cupsMinSize ..Photo: "300 300" -

        CUPS 1.4/Mac OS X 10.6cupsMediaQualifier3

        +

        CUPS 1.4/OS X 10.6cupsMediaQualifier3

        *cupsMediaQualifier3: MainKeyword

        @@ -1351,7 +1351,7 @@ custom page size limits.

        *cupsMinSize ..Photo: "300 300" -

        CUPS 1.4/Mac OS X 10.6cupsMinSize

        +

        CUPS 1.4/OS X 10.6cupsMinSize

        *cupsMinSize .Qualifier2.Qualifier3: "width length"
        *cupsMinSize .Qualifier2.: "width length"
        @@ -1374,7 +1374,7 @@ are used to identify options to use for matching.

        *cupsMinSize ..Photo: "300 300" -

        CUPS 1.4/Mac OS X 10.6cupsMaxSize

        +

        CUPS 1.4/OS X 10.6cupsMaxSize

        *cupsMaxSize .Qualifier2.Qualifier3: "width length"
        *cupsMaxSize .Qualifier2.: "width length"
        @@ -1400,7 +1400,7 @@ are used to identify options to use for matching.

        General Attributes

        -

        CUPS 1.3/Mac OS X 10.5cupsBackSide

        +

        CUPS 1.3/OS X 10.5cupsBackSide

        *cupsBackSide: keyword

        @@ -1476,7 +1476,7 @@ will be ignored.

        -

        * - Not supported in Mac OS X 10.5.x and earlier

        +

        * - Not supported in OS X 10.5.x and earlier

        @@ -1496,7 +1496,7 @@ will be ignored.

        Also see the related APDuplexRequiresFlippedMargin keyword.

        -

        CUPS 1.4/Mac OS X 10.6cupsCommands

        +

        CUPS 1.4/OS X 10.6cupsCommands

        *cupsCommands: "name name2 ... nameN"

        @@ -1512,7 +1512,7 @@ by whitespace.

        -

        CUPS 1.3/Mac OS X 10.5cupsEvenDuplex

        +

        CUPS 1.3/OS X 10.5cupsEvenDuplex

        *cupsEvenDuplex: boolean

        @@ -1590,21 +1590,21 @@ the special filter program "-" may be specified.

        *cupsFlipDuplex: boolean

        -

        Due to implementation differences between Mac OS X and Ghostscript, +

        Due to implementation differences between OS X and Ghostscript, the cupsFlipDuplex keyword is deprecated. Instead, use the cupsBackSide keyword to specify the coordinate system (pixel layout) of the page data on the back side of duplex pages.

        The value true maps to a cupsBackSide value -of Rotated on Mac OS X and Flipped with +of Rotated on OS X and Flipped with Ghostscript.

        The default value is false.

        Note: -

        Mac OS X drivers that previously used +

        OS X drivers that previously used cupsFlipDuplex may wish to provide both the old and new keywords for maximum compatibility, for example:

        @@ -1621,7 +1621,7 @@ Ghostscript can use:

        *cupsFlipDuplex: true
        -

        CUPS 1.3/Mac OS X 10.5cupsIPPFinishings

        +

        CUPS 1.3/OS X 10.5cupsIPPFinishings

        *cupsIPPFinishings number/text: "*Option Choice ..."

        @@ -1637,7 +1637,7 @@ values to PPD options and choices.

        *cupsIPPFinishings 21/staple-bottom-left: "*StapleLocation SingleLandscape" -

        CUPS 1.3/Mac OS X 10.5cupsIPPReason

        +

        CUPS 1.3/OS X 10.5cupsIPPReason

        *cupsIPPReason reason/Reason Text: "optional URIs"

        @@ -1690,7 +1690,7 @@ http://www.vendor.com/help" *cupsIPPSupplies: False -

        CUPS 1.2/Mac OS X 10.5cupsLanguages

        +

        CUPS 1.2/OS X 10.5cupsLanguages

        *cupsLanguages: "locale list"

        @@ -1720,7 +1720,7 @@ hardware. The default value is false.

        *cupsManualCopies: true -

        CUPS 1.4/Mac OS X 10.6cupsMarkerName

        +

        CUPS 1.4/OS X 10.6cupsMarkerName

        *cupsMarkerName/Name Text: ""

        @@ -1734,7 +1734,7 @@ generated by the driver to human readable text.

        *cupsMarkerName cyanToner/Cyan Toner: "" -

        CUPS 1.4/Mac OS X 10.6cupsMarkerNotice

        +

        CUPS 1.4/OS X 10.6cupsMarkerNotice

        *cupsMarkerNotice: "disclaimer text"

        @@ -1748,7 +1748,7 @@ are approximate".

        *cupsMarkerNotice: "Supply levels are approximate." -

        CUPS 1.6cupsMaxCopies

        +

        CUPS 1.6/OS X 10.8cupsMaxCopies

        *cupsMaxCopies: integer

        @@ -1776,7 +1776,7 @@ the output for a specific model of printer.

        *cupsModelNumber: 1234 -

        CUPS 1.3/Mac OS X 10.5cupsPJLCharset

        +

        CUPS 1.3/OS X 10.5cupsPJLCharset

        *cupsPJLCharset: "ISO character set name"

        @@ -1791,7 +1791,7 @@ assumed.

        *cupsPJLCharset: "UTF-8" -

        CUPS 1.4/Mac OS X 10.6cupsPJLDisplay

        +

        CUPS 1.4/OS X 10.6cupsPJLDisplay

        *cupsPJLDisplay: "what"

        @@ -1810,7 +1810,7 @@ to use "@PJL RDYMSG DISPLAY". The default is "job".

        *cupsPJLDisplay: "none" -

        CUPS 1.2/Mac OS X 10.5cupsPortMonitor

        +

        CUPS 1.2/OS X 10.5cupsPortMonitor

        *cupsPortMonitor urischeme/Descriptive Text: "port monitor"

        @@ -1842,7 +1842,7 @@ to disable the port monitor for the given URI scheme.

        *cupsPortMonitor usb/USB Status Monitor: "epson-usb" -

        CUPS 1.3/Mac OS X 10.5cupsPreFilter

        +

        CUPS 1.3/OS X 10.5cupsPreFilter

        *cupsPreFilter: "source/type cost program"

        @@ -1901,7 +1901,7 @@ before the filter that accepts the given MIME type.

        *cupsSingleFile: True -

        CUPS 1.4/Mac OS X 10.6cupsSNMPSupplies

        +

        CUPS 1.4/OS X 10.6cupsSNMPSupplies

        *cupsSNMPSupplies: boolean

        @@ -1932,7 +1932,7 @@ PPD file extensions was used. Currently it must be the string -

        CUPS 1.6JCLToPDFInterpreter

        +

        CUPS 1.6/OS X 10.8JCLToPDFInterpreter

        *JCLToPDFInterpreter: "JCL"

        @@ -1946,9 +1946,9 @@ PPD file extensions was used. Currently it must be the string -

        Mac OS X Attributes

        +

        OS X Attributes

        -

        Mac OS X 10.3APDialogExtension

        +

        OS X 10.3APDialogExtension

        *APDialogExtension: "/Library/Printers/vendor/filename.plugin"

        @@ -1960,7 +1960,7 @@ plug-ins.

        Note: -

        Starting with Mac OS X 10.5, each plug-in must be compiled "4-way fat" +

        Starting with OS X 10.5, each plug-in must be compiled "4-way fat" (32-bit and 64-bit for both PowerPC and Intel) with garbage collection enabled in order to be usable with all applications.

        @@ -1974,7 +1974,7 @@ in order to be usable with all applications.

        *APDialogExtension: "/Library/Printers/vendor/options.plugin" -

        Mac OS X 10.4APDuplexRequiresFlippedMargin

        +

        OS X 10.4APDuplexRequiresFlippedMargin

        *APDuplexRequiresFlippedMargin: boolean

        @@ -2071,7 +2071,7 @@ looking up IPP reason codes for this printer driver. The *APHelpBook: "file:///Library/Printers/vendor/Help.bundle" -

        Mac OS X 10.6APICADriver

        +

        OS X 10.6APICADriver

        *APICADriver: boolean

        @@ -2085,7 +2085,7 @@ Architecture (ICA) driver for scanning. The default is False.

        *APScanAppBundleID: "com.apple.ImageCaptureApp" -

        Mac OS X 10.3APPrinterIconPath

        +

        OS X 10.3APPrinterIconPath

        *APPrinterIconPath: "/Library/Printers/vendor/filename.icns"

        @@ -2099,7 +2099,7 @@ displaying the printer. The file must be in the Apple icon format.

        *APPrinterIconPath: "/Library/Printers/vendor/Icons/filename.icns" -

        Mac OS X 10.4APPrinterLowInkTool

        +

        OS X 10.4APPrinterLowInkTool

        *APPrinterLowInkTool: "/Library/Printers/vendor/program"

        @@ -2116,7 +2116,7 @@ Technical Note TN2144 for more information.

        *APPrinterLowInkTool: "/Library/Printers/vendor/Tools/lowinktool" -

        Mac OS X 10.5APPrinterPreset

        +

        OS X 10.5APPrinterPreset

        *APPrinterPreset name/text: "*Option Choice ..."

        @@ -2186,7 +2186,7 @@ choice (*MainKeyword OptionKeyword) or a preset identifier and value *fr.APPrinterPreset Photo_on_Photo_Paper/Photo sur papier photographique: "" -

        Mac OS X 10.3APPrinterUtilityPath

        +

        OS X 10.3APPrinterUtilityPath

        *APPrinterPrinterUtilityPath: "/Library/Printers/vendor/filename.app"

        @@ -2201,7 +2201,7 @@ information.

        *APPrinterPrinterUtilityPath: "/Library/Printers/vendor/Tools/utility.app" -

        Mac OS X 10.6APScannerOnly

        +

        OS X 10.6APScannerOnly

        *APScannerOnly: boolean

        @@ -2215,7 +2215,7 @@ capabilities. The default is False.

        *APScannerOnly: True -

        Mac OS X 10.3APScanAppBundleID

        +

        OS X 10.3APScanAppBundleID

        *APScanAppBundleID: "bundle ID"

        @@ -2304,7 +2304,7 @@ the device.

          -
        • Added missing Mac OS X AP keywords.
        • +
        • Added missing OS X AP keywords.
        • Added section on auto-configuration including the OIDMainKeyword and ?MainKeyword diff --git a/filter/Dependencies b/filter/Dependencies index 23a4c185a..159135b85 100644 --- a/filter/Dependencies +++ b/filter/Dependencies @@ -10,20 +10,21 @@ raster.o: raster.c ../cups/raster-private.h ../cups/raster.h \ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \ ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h \ ../cups/debug-private.h ../cups/string-private.h ../config.h -commandtops.o: commandtops.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/sidechannel.h -gziptoany.o: gziptoany.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h +commandtops.o: commandtops.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/sidechannel.h +gziptoany.o: gziptoany.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h common.o: common.c common.h ../cups/string-private.h ../config.h \ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \ ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h @@ -46,13 +47,14 @@ rastertolabel.o: rastertolabel.c ../cups/cups.h ../cups/file.h \ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ ../cups/language.h ../cups/ppd.h ../cups/string-private.h ../config.h \ ../cups/language-private.h ../cups/transcode.h ../cups/raster.h -rastertopwg.o: rastertopwg.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/raster.h +rastertopwg.o: rastertopwg.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/raster.h testraster.o: testraster.c ../cups/raster-private.h ../cups/raster.h \ ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \ ../cups/http.h ../cups/array.h ../cups/language.h ../cups/ppd.h \ diff --git a/filter/api-raster.shtml b/filter/api-raster.shtml index a309022ea..fff478dcf 100644 --- a/filter/api-raster.shtml +++ b/filter/api-raster.shtml @@ -3,7 +3,7 @@ Raster API introduction for CUPS. - Copyright 2007-2011 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the @@ -22,7 +22,7 @@ avoid incompatibilities with newer versions of CUPS.

          Two kinds of CUPS filters use the CUPS raster API - raster image processor (RIP) filters such as pstoraster and cgpdftoraster -(Mac OS X) that produce CUPS raster files and printer driver filters that +(OS X) that produce CUPS raster files and printer driver filters that convert CUPS raster files into a format usable by the printer. Printer driver filters are by far the most common.

          @@ -142,7 +142,7 @@ the memory used to read the raster file:

            -
          • cupsRasterReadHeader Deprecated in CUPS 1.2/Mac OS X 10.5
          • +
          • cupsRasterReadHeader Deprecated in CUPS 1.2/OS X 10.5
          • cupsRasterReadHeader2
          • cupsRasterReadPixels
          • @@ -153,8 +153,8 @@ the memory used to read the raster file:

            diff --git a/filter/commandtops.c b/filter/commandtops.c index e49a443b6..fd8e35a02 100644 --- a/filter/commandtops.c +++ b/filter/commandtops.c @@ -71,7 +71,7 @@ main(int argc, /* I - Number of command-line arguments */ */ _cupsLangPrintf(stderr, - _("Usage: %s job-id user title copies options file"), + _("Usage: %s job-id user title copies options [file]"), argv[0]); return (1); } diff --git a/filter/error.c b/filter/error.c index a73186926..08edebb67 100644 --- a/filter/error.c +++ b/filter/error.c @@ -3,7 +3,7 @@ * * Raster error handling for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -138,7 +138,7 @@ _cupsRasterClearError(void) * * If there are no recent errors, NULL is returned. * - * @since CUPS 1.3/Mac OS X 10.5@ + * @since CUPS 1.3/OS X 10.5@ */ const char * /* O - Last error */ diff --git a/filter/gziptoany.c b/filter/gziptoany.c index 404ce6e3a..09a636b14 100644 --- a/filter/gziptoany.c +++ b/filter/gziptoany.c @@ -3,7 +3,7 @@ * * GZIP/raw pre-filter for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1993-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -47,7 +47,7 @@ main(int argc, /* I - Number of command-line arguments */ if (argc != 7) { _cupsLangPrintf(stderr, - _("Usage: %s job-id user title copies options file"), + _("Usage: %s job-id user title copies options [file]"), argv[0]); return (1); } diff --git a/filter/interpret.c b/filter/interpret.c index 0c03edf68..7723f6569 100644 --- a/filter/interpret.c +++ b/filter/interpret.c @@ -3,7 +3,7 @@ * * PPD command interpreter for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1993-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -144,7 +144,7 @@ static void DEBUG_stack(_cups_ps_stack_t *st); * @code pop@, @code roll@, @code setpagedevice@, and @code stopped@ operators * are supported. * - * @since CUPS 1.2/Mac OS X 10.5@ + * @since CUPS 1.2/OS X 10.5@ */ int /* O - 0 on success, -1 on failure */ @@ -204,7 +204,7 @@ cupsRasterInterpretPPD( #ifdef __APPLE__ /* - * cupsInteger0 is also used for the total page count on Mac OS X; set an + * cupsInteger0 is also used for the total page count on OS X; set an * uncommon default value so we can tell if the driver is using cupsInteger0. */ diff --git a/filter/postscript-driver.header b/filter/postscript-driver.header index b4fef953e..08e4c175b 100644 --- a/filter/postscript-driver.header +++ b/filter/postscript-driver.header @@ -3,7 +3,7 @@ PostScript printer driver documentation for CUPS. - Copyright 2007-2010 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the @@ -15,7 +15,7 @@

            Developing PostScript Printer Drivers

            -

            This document describes how to develop printer drivers for PostScript printers. Topics include: printer driver basics, creating new PPD files, importing existing PPD files, using custom filters, implementing color management, and adding Mac OS X features.

            +

            This document describes how to develop printer drivers for PostScript printers. Topics include: printer driver basics, creating new PPD files, importing existing PPD files, using custom filters, implementing color management, and adding OS X features.

        Figure 1: Back side images
        diff --git a/filter/postscript-driver.shtml b/filter/postscript-driver.shtml index 439744f0f..5e93f8580 100644 --- a/filter/postscript-driver.shtml +++ b/filter/postscript-driver.shtml @@ -69,7 +69,7 @@ dup [612 792] (Letter) put dup [612 1008] (Legal) put dup [595 842] (A4) put - {exch aload pop 4 index sub abs 5 le exch + {exch aload pop 4 index sub abs 5 le exch 5 index sub abs 5 le and {exch pop exit} {pop} ifelse } bind forall = flush pop pop @@ -166,7 +166,7 @@ dup [612 792] (Letter) put dup [612 1008] (Legal) put dup [595 842] (A4) put - {exch aload pop 4 index sub abs 5 le exch + {exch aload pop 4 index sub abs 5 le exch 5 index sub abs 5 le and {exch pop exit} {pop} ifelse } bind forall = flush pop pop @@ -264,9 +264,9 @@ information file.

        The options used for profile selection can be customized using the cupsICCQualifier2 and cupsICCQualifier3 attributes.

        -

        Adding Mac OS X Features

        +

        Adding OS X Features

        -

        Mac OS X printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:

        +

        OS X printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:

         Attribute APDialogExtension "" /Library/Printers/Vendor/filename.plugin
        diff --git a/filter/ppd-compiler.shtml b/filter/ppd-compiler.shtml
        index c98b95cee..dca2870f2 100644
        --- a/filter/ppd-compiler.shtml
        +++ b/filter/ppd-compiler.shtml
        @@ -205,7 +205,7 @@ follows:

      • Bits per color. In the example file, we define 8 bits per color, for a continuous-tone grayscale output. All versions of CUPS support 1 and - 8 bits per color. CUPS 1.2 and higher (Mac OS X 10.5 and higher) also + 8 bits per color. CUPS 1.2 and higher (OS X 10.5 and higher) also supports 16 bits per color.
      • Rows per band. In the example file, we define 0 rows per band to diff --git a/filter/pstops.c b/filter/pstops.c index 1688d9287..bcc8d2b4d 100644 --- a/filter/pstops.c +++ b/filter/pstops.c @@ -261,7 +261,7 @@ main(int argc, /* I - Number of command-line args */ if (argc < 6 || argc > 7) { _cupsLangPrintf(stderr, - _("Usage: %s job-id user title copies options file"), + _("Usage: %s job-id user title copies options [file]"), argv[0]); return (1); } diff --git a/filter/raster-driver.header b/filter/raster-driver.header index 31fc60722..b15c50d99 100644 --- a/filter/raster-driver.header +++ b/filter/raster-driver.header @@ -3,7 +3,7 @@ Raster printer driver documentation for CUPS. - Copyright 2007-2010 by Apple Inc. + Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the @@ -15,7 +15,7 @@

        Developing Raster Printer Drivers

        -

        This document describes how to develop printer drivers for raster printers. Topics include: printer driver basics, creating new PPD files, using filters, implementing color management, and adding Mac OS X features.

        +

        This document describes how to develop printer drivers for raster printers. Topics include: printer driver basics, creating new PPD files, using filters, implementing color management, and adding OS X features.

      • diff --git a/filter/raster-driver.shtml b/filter/raster-driver.shtml index 1c0c32a9d..f56982a77 100644 --- a/filter/raster-driver.shtml +++ b/filter/raster-driver.shtml @@ -172,9 +172,9 @@

        The options used for profile selection can be customized using the cupsICCQualifier2 and cupsICCQualifier3 attributes.

        -

        Since Mac OS X 10.5Custom Color Matching Support

        +

        Since OS X 10.5Custom Color Matching Support

        -

        Mac OS X printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The APSupportsCustomColorMatching and APDefaultCustomColorMatchingProfile attributes can be used to enable this mode:

        +

        OS X printer drivers that are based on an existing standard RGB colorspace can tell the system to use the corresponding colorspace instead of an arbitrary ICC color profile when doing color management. The APSupportsCustomColorMatching and APDefaultCustomColorMatchingProfile attributes can be used to enable this mode:

         Attribute APSupportsCustomColorMatching "" true
        @@ -182,9 +182,9 @@
         
        -

        Adding Mac OS X Features

        +

        Adding OS X Features

        -

        Mac OS X printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:

        +

        OS X printer drivers can provide additional attributes to specify additional option panes in the print dialog, an image of the printer, a help book, and option presets for the driver software:

         Attribute APDialogExtension "" /Library/Printers/Vendor/filename.plugin
        diff --git a/filter/raster.c b/filter/raster.c
        index dd3ef5a30..14980f4a8 100644
        --- a/filter/raster.c
        +++ b/filter/raster.c
        @@ -3,7 +3,7 @@
          *
          *   Raster file routines for CUPS.
          *
        - *   Copyright 2007-2011 by Apple Inc.
        + *   Copyright 2007-2012 by Apple Inc.
          *   Copyright 1997-2006 by Easy Software Products.
          *
          *   This file is part of the CUPS Imaging library.
        @@ -294,7 +294,7 @@ cupsRasterReadHeader(
          * 'cupsRasterReadHeader2()' - Read a raster page header and store it in a
          *                             version 2 page header structure.
          *
        - * @since CUPS 1.2/Mac OS X 10.5@
        + * @since CUPS 1.2/OS X 10.5@
          */
         
         unsigned				/* O - 1 on success, 0 on failure/end-of-file */
        @@ -648,7 +648,7 @@ cupsRasterWriteHeader(
          *
          * The page header can be initialized using @link cupsRasterInterpretPPD@.
          *
        - * @since CUPS 1.2/Mac OS X 10.5@
        + * @since CUPS 1.2/OS X 10.5@
          */
         
         unsigned				/* O - 1 on success, 0 on failure */
        diff --git a/filter/rastertoepson.c b/filter/rastertoepson.c
        index 7da6a6899..08135bcc1 100644
        --- a/filter/rastertoepson.c
        +++ b/filter/rastertoepson.c
        @@ -3,7 +3,7 @@
          *
          *   EPSON ESC/P and ESC/P2 filter for CUPS.
          *
        - *   Copyright 2007-2010 by Apple Inc.
        + *   Copyright 2007-2012 by Apple Inc.
          *   Copyright 1993-2007 by Easy Software Products.
          *
          *   These coded instructions, statements, and computer programs are the
        @@ -1148,10 +1148,7 @@ main(int  argc,				/* I - Number of command-line arguments */
             return (1);
           }
           else
        -  {
        -    _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
             return (0);
        -  }
         }
         
         
        diff --git a/filter/rastertohp.c b/filter/rastertohp.c
        index c714fd774..b7390c124 100644
        --- a/filter/rastertohp.c
        +++ b/filter/rastertohp.c
        @@ -3,7 +3,7 @@
          *
          *   Hewlett-Packard Page Control Language filter for CUPS.
          *
        - *   Copyright 2007-2010 by Apple Inc.
        + *   Copyright 2007-2012 by Apple Inc.
          *   Copyright 1993-2007 by Easy Software Products.
          *
          *   These coded instructions, statements, and computer programs are the
        @@ -877,10 +877,7 @@ main(int  argc,				/* I - Number of command-line arguments */
             return (1);
           }
           else
        -  {
        -    _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
             return (0);
        -  }
         }
         
         
        diff --git a/filter/rastertolabel.c b/filter/rastertolabel.c
        index fcd8ebca7..4c0860ccc 100644
        --- a/filter/rastertolabel.c
        +++ b/filter/rastertolabel.c
        @@ -3,7 +3,7 @@
          *
          *   Label printer filter for CUPS.
          *
        - *   Copyright 2007-2010 by Apple Inc.
        + *   Copyright 2007-2012 by Apple Inc.
          *   Copyright 2001-2007 by Easy Software Products.
          *
          *   These coded instructions, statements, and computer programs are the
        @@ -1303,10 +1303,7 @@ main(int  argc,				/* I - Number of command-line arguments */
             return (1);
           }
           else
        -  {
        -    _cupsLangPrintFilter(stderr, "INFO", _("Ready to print."));
             return (0);
        -  }
         }
         
         
        diff --git a/filter/spec-ppd.shtml b/filter/spec-ppd.shtml
        index 5ef9f6a40..177602790 100644
        --- a/filter/spec-ppd.shtml
        +++ b/filter/spec-ppd.shtml
        @@ -30,11 +30,11 @@ LINE-END = CR / LF / CR LF
         
         

        CUPS supports several methods of auto-configuration via PPD keywords.

        -

        Mac OS X 10.5APAutoSetupTool

        +

        OS X 10.5APAutoSetupTool

        *APAutoSetupTool: "/LibraryPrinters/vendor/filename"

        -

        This Mac OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the Add Printer window or the Nearby Printers list in the Print dialog.

        +

        This OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the Add Printer window or the Nearby Printers list in the Print dialog.

        The program is provided with two arguments: the printer's device URI and the PPD file to be used for the printer. The program must write an updated PPD file to stdout.

        @@ -45,7 +45,7 @@ LINE-END = CR / LF / CR LF *APAutoSetupTool: "/Library/Printers/vendor/Tools/autosetuptool"
        -

        Mac OS X 10.2/CUPS 1.4?MainKeyword

        +

        OS X 10.2/CUPS 1.4?MainKeyword

        *?MainKeyword: "
        PostScript query code that writes a message using the = operator...
        @@ -74,7 +74,7 @@ LINE-END = CR / LF / CR LF *CloseUI: OptionDuplex -

        Mac OS X 10.4/CUPS 1.5OIDMainKeyword

        +

        OS X 10.4/CUPS 1.5OIDMainKeyword

        *?OIDMainKeyword: ".n.n.n..."
        *OIDMainKeyword OptionKeyword1: "value"
        @@ -109,7 +109,7 @@ LINE-END = CR / LF / CR LF

        *cupsColorProfile Resolution/MediaType: "density gamma m00 m01 m02 m10 m11 m12 m20 m21 m22"

        -

        This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. This keyword is not supported on Mac OS X.

        +

        This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. This keyword is not supported on OS X.

        The Resolution and MediaType values may be "-" to act as a wildcard. Otherwise they must match one of the Resolution or MediaType option keywords defined in the PPD file.

        @@ -142,7 +142,7 @@ f(x) = density * x gamma -

        Mac OS X 10.3/CUPS 1.2cupsICCProfile

        +

        OS X 10.3/CUPS 1.2cupsICCProfile

        *cupsICCProfile ColorModel.MediaType.Resolution/Description: "filename"

        @@ -181,22 +181,22 @@ f(x) = density * x gamma *cupsICCQualifier3: Resolution -

        Mac OS X 10.4Custom Color Matching Support

        +

        OS X 10.4Custom Color Matching Support

        *APSupportsCustomColorMatching: true
        *APCustomColorMatchingName name/text: ""
        *APCustomColorMatchingProfile: profile
        *APDefaultCustomColorMatchingProfile: profile

        -

        These keywords tell the Mac OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The APCustomColorMatchingProfile and APDefaultColorMatchingProfile keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.

        +

        These keywords tell the OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The APCustomColorMatchingProfile and APDefaultColorMatchingProfile keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.

        Note: -

        Prior to Mac OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in Mac OS X 10.6 and later is "sRGB". For more information, see "Mac OS X v10.6: About gamma 2.2" on Apple's support site.

        +

        Prior to OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in OS X 10.6 and later is "sRGB". For more information, see "OS X v10.6: About gamma 2.2" on Apple's support site.

        -

        Mac OS X 10.5APCustomColorMatchingName

        +

        OS X 10.5APCustomColorMatchingName

        *APCustomColorMatchingName name/text: ""

        @@ -210,7 +210,7 @@ f(x) = density * x gamma *fr.APCustomColorMatchingName name/La AcmeColor(tm): "" -

        Mac OS X 10.5APCustomColorMatchingProfile

        +

        OS X 10.5APCustomColorMatchingProfile

        *APCustomColorMatchingProfile: name

        @@ -232,7 +232,7 @@ f(x) = density * x gamma *APCustomColorMatchingProfile: AdobeRGB -

        Mac OS X 10.5APDefaultCustomColorMatchingProfile

        +

        OS X 10.5APDefaultCustomColorMatchingProfile

        *APDefaultCustomColorMatchingProfile: name

        @@ -246,7 +246,7 @@ f(x) = density * x gamma *APDefaultCustomColorMatchingProfile: sRGB -

        Mac OS X 10.4APSupportsCustomColorMatching

        +

        OS X 10.4APSupportsCustomColorMatching

        *APSupportsCustomColorMatching: boolean

        @@ -282,7 +282,7 @@ f(x) = density * x gamma -

        CUPS 1.4/Mac OS X 10.6cupsUIConstraints

        +

        CUPS 1.4/OS X 10.6cupsUIConstraints

        *cupsUIConstraints resolver: "*Keyword1 *Keyword2 ..."
        *cupsUIConstraints resolver: "*Keyword1 OptionKeyword1 *Keyword2 ..."
        @@ -312,7 +312,7 @@ f(x) = density * x gamma *cupsUIConstraints photo: "*OutputMode Photo *MediaType Transparency *Resolution 1200dpi" -

        CUPS 1.4/Mac OS X 10.6cupsUIResolver

        +

        CUPS 1.4/OS X 10.6cupsUIResolver

        *cupsUIResolver resolver: "*Keyword1 OptionKeyword1 *Keyword2 OptionKeyword2 ..."

        @@ -414,7 +414,7 @@ f(x) = density * x gamma -

        CUPS 1.3/Mac OS X 10.6Custom Options

        +

        CUPS 1.3/OS X 10.6Custom Options

        CUPS supports custom options using an extension of the CustomPageSize and ParamCustomPageSize syntax:

        @@ -872,7 +872,7 @@ PRE B {

        The CUPS media keywords allow drivers to specify alternate custom page size limits based on up to two options.

        -

        CUPS 1.4/Mac OS X 10.6cupsMediaQualifier2

        +

        CUPS 1.4/OS X 10.6cupsMediaQualifier2

        *cupsMediaQualifier2: MainKeyword

        @@ -891,7 +891,7 @@ custom page size limits.

        *cupsMinSize ..Photo: "300 300" -

        CUPS 1.4/Mac OS X 10.6cupsMediaQualifier3

        +

        CUPS 1.4/OS X 10.6cupsMediaQualifier3

        *cupsMediaQualifier3: MainKeyword

        @@ -910,7 +910,7 @@ custom page size limits.

        *cupsMinSize ..Photo: "300 300" -

        CUPS 1.4/Mac OS X 10.6cupsMinSize

        +

        CUPS 1.4/OS X 10.6cupsMinSize

        *cupsMinSize .Qualifier2.Qualifier3: "width length"
        *cupsMinSize .Qualifier2.: "width length"
        @@ -933,7 +933,7 @@ are used to identify options to use for matching.

        *cupsMinSize ..Photo: "300 300" -

        CUPS 1.4/Mac OS X 10.6cupsMaxSize

        +

        CUPS 1.4/OS X 10.6cupsMaxSize

        *cupsMaxSize .Qualifier2.Qualifier3: "width length"
        *cupsMaxSize .Qualifier2.: "width length"
        @@ -959,7 +959,7 @@ are used to identify options to use for matching.

        General Attributes

        -

        CUPS 1.3/Mac OS X 10.5cupsBackSide

        +

        CUPS 1.3/OS X 10.5cupsBackSide

        *cupsBackSide: keyword

        @@ -1035,7 +1035,7 @@ will be ignored.

        -

        * - Not supported in Mac OS X 10.5.x and earlier

        +

        * - Not supported in OS X 10.5.x and earlier

        @@ -1055,7 +1055,7 @@ will be ignored.

        Also see the related APDuplexRequiresFlippedMargin keyword.

        -

        CUPS 1.4/Mac OS X 10.6cupsCommands

        +

        CUPS 1.4/OS X 10.6cupsCommands

        *cupsCommands: "name name2 ... nameN"

        @@ -1071,7 +1071,7 @@ by whitespace.

        -

        CUPS 1.3/Mac OS X 10.5cupsEvenDuplex

        +

        CUPS 1.3/OS X 10.5cupsEvenDuplex

        *cupsEvenDuplex: boolean

        @@ -1149,21 +1149,21 @@ the special filter program "-" may be specified.

        *cupsFlipDuplex: boolean

        -

        Due to implementation differences between Mac OS X and Ghostscript, +

        Due to implementation differences between OS X and Ghostscript, the cupsFlipDuplex keyword is deprecated. Instead, use the cupsBackSide keyword to specify the coordinate system (pixel layout) of the page data on the back side of duplex pages.

        The value true maps to a cupsBackSide value -of Rotated on Mac OS X and Flipped with +of Rotated on OS X and Flipped with Ghostscript.

        The default value is false.

        Note: -

        Mac OS X drivers that previously used +

        OS X drivers that previously used cupsFlipDuplex may wish to provide both the old and new keywords for maximum compatibility, for example:

        @@ -1180,7 +1180,7 @@ Ghostscript can use:

        *cupsFlipDuplex: true
        -

        CUPS 1.3/Mac OS X 10.5cupsIPPFinishings

        +

        CUPS 1.3/OS X 10.5cupsIPPFinishings

        *cupsIPPFinishings number/text: "*Option Choice ..."

        @@ -1196,7 +1196,7 @@ values to PPD options and choices.

        *cupsIPPFinishings 21/staple-bottom-left: "*StapleLocation SingleLandscape" -

        CUPS 1.3/Mac OS X 10.5cupsIPPReason

        +

        CUPS 1.3/OS X 10.5cupsIPPReason

        *cupsIPPReason reason/Reason Text: "optional URIs"

        @@ -1249,7 +1249,7 @@ http://www.vendor.com/help" *cupsIPPSupplies: False -

        CUPS 1.2/Mac OS X 10.5cupsLanguages

        +

        CUPS 1.2/OS X 10.5cupsLanguages

        *cupsLanguages: "locale list"

        @@ -1279,7 +1279,7 @@ hardware. The default value is false.

        *cupsManualCopies: true -

        CUPS 1.4/Mac OS X 10.6cupsMarkerName

        +

        CUPS 1.4/OS X 10.6cupsMarkerName

        *cupsMarkerName/Name Text: ""

        @@ -1293,7 +1293,7 @@ generated by the driver to human readable text.

        *cupsMarkerName cyanToner/Cyan Toner: "" -

        CUPS 1.4/Mac OS X 10.6cupsMarkerNotice

        +

        CUPS 1.4/OS X 10.6cupsMarkerNotice

        *cupsMarkerNotice: "disclaimer text"

        @@ -1307,7 +1307,7 @@ are approximate".

        *cupsMarkerNotice: "Supply levels are approximate." -

        CUPS 1.6cupsMaxCopies

        +

        CUPS 1.6/OS X 10.8cupsMaxCopies

        *cupsMaxCopies: integer

        @@ -1335,7 +1335,7 @@ the output for a specific model of printer.

        *cupsModelNumber: 1234 -

        CUPS 1.3/Mac OS X 10.5cupsPJLCharset

        +

        CUPS 1.3/OS X 10.5cupsPJLCharset

        *cupsPJLCharset: "ISO character set name"

        @@ -1350,7 +1350,7 @@ assumed.

        *cupsPJLCharset: "UTF-8" -

        CUPS 1.4/Mac OS X 10.6cupsPJLDisplay

        +

        CUPS 1.4/OS X 10.6cupsPJLDisplay

        *cupsPJLDisplay: "what"

        @@ -1369,7 +1369,7 @@ to use "@PJL RDYMSG DISPLAY". The default is "job".

        *cupsPJLDisplay: "none" -

        CUPS 1.2/Mac OS X 10.5cupsPortMonitor

        +

        CUPS 1.2/OS X 10.5cupsPortMonitor

        *cupsPortMonitor urischeme/Descriptive Text: "port monitor"

        @@ -1401,7 +1401,7 @@ to disable the port monitor for the given URI scheme.

        *cupsPortMonitor usb/USB Status Monitor: "epson-usb" -

        CUPS 1.3/Mac OS X 10.5cupsPreFilter

        +

        CUPS 1.3/OS X 10.5cupsPreFilter

        *cupsPreFilter: "source/type cost program"

        @@ -1460,7 +1460,7 @@ before the filter that accepts the given MIME type.

        *cupsSingleFile: True -

        CUPS 1.4/Mac OS X 10.6cupsSNMPSupplies

        +

        CUPS 1.4/OS X 10.6cupsSNMPSupplies

        *cupsSNMPSupplies: boolean

        @@ -1491,7 +1491,7 @@ PPD file extensions was used. Currently it must be the string -

        CUPS 1.6JCLToPDFInterpreter

        +

        CUPS 1.6/OS X 10.8JCLToPDFInterpreter

        *JCLToPDFInterpreter: "JCL"

        @@ -1505,9 +1505,9 @@ PPD file extensions was used. Currently it must be the string -

        Mac OS X Attributes

        +

        OS X Attributes

        -

        Mac OS X 10.3APDialogExtension

        +

        OS X 10.3APDialogExtension

        *APDialogExtension: "/Library/Printers/vendor/filename.plugin"

        @@ -1519,7 +1519,7 @@ plug-ins.

        Note: -

        Starting with Mac OS X 10.5, each plug-in must be compiled "4-way fat" +

        Starting with OS X 10.5, each plug-in must be compiled "4-way fat" (32-bit and 64-bit for both PowerPC and Intel) with garbage collection enabled in order to be usable with all applications.

        @@ -1533,7 +1533,7 @@ in order to be usable with all applications.

        *APDialogExtension: "/Library/Printers/vendor/options.plugin" -

        Mac OS X 10.4APDuplexRequiresFlippedMargin

        +

        OS X 10.4APDuplexRequiresFlippedMargin

        *APDuplexRequiresFlippedMargin: boolean

        @@ -1630,7 +1630,7 @@ looking up IPP reason codes for this printer driver. The *APHelpBook: "file:///Library/Printers/vendor/Help.bundle" -

        Mac OS X 10.6APICADriver

        +

        OS X 10.6APICADriver

        *APICADriver: boolean

        @@ -1644,7 +1644,7 @@ Architecture (ICA) driver for scanning. The default is False.

        *APScanAppBundleID: "com.apple.ImageCaptureApp" -

        Mac OS X 10.3APPrinterIconPath

        +

        OS X 10.3APPrinterIconPath

        *APPrinterIconPath: "/Library/Printers/vendor/filename.icns"

        @@ -1658,7 +1658,7 @@ displaying the printer. The file must be in the Apple icon format.

        *APPrinterIconPath: "/Library/Printers/vendor/Icons/filename.icns" -

        Mac OS X 10.4APPrinterLowInkTool

        +

        OS X 10.4APPrinterLowInkTool

        *APPrinterLowInkTool: "/Library/Printers/vendor/program"

        @@ -1675,7 +1675,7 @@ Technical Note TN2144 for more information.

        *APPrinterLowInkTool: "/Library/Printers/vendor/Tools/lowinktool" -

        Mac OS X 10.5APPrinterPreset

        +

        OS X 10.5APPrinterPreset

        *APPrinterPreset name/text: "*Option Choice ..."

        @@ -1745,7 +1745,7 @@ choice (*MainKeyword OptionKeyword) or a preset identifier and value *fr.APPrinterPreset Photo_on_Photo_Paper/Photo sur papier photographique: "" -

        Mac OS X 10.3APPrinterUtilityPath

        +

        OS X 10.3APPrinterUtilityPath

        *APPrinterPrinterUtilityPath: "/Library/Printers/vendor/filename.app"

        @@ -1760,7 +1760,7 @@ information.

        *APPrinterPrinterUtilityPath: "/Library/Printers/vendor/Tools/utility.app" -

        Mac OS X 10.6APScannerOnly

        +

        OS X 10.6APScannerOnly

        *APScannerOnly: boolean

        @@ -1774,7 +1774,7 @@ capabilities. The default is False.

        *APScannerOnly: True -

        Mac OS X 10.3APScanAppBundleID

        +

        OS X 10.3APScanAppBundleID

        *APScanAppBundleID: "bundle ID"

        @@ -1863,7 +1863,7 @@ the device.

          -
        • Added missing Mac OS X AP keywords.
        • +
        • Added missing OS X AP keywords.
        • Added section on auto-configuration including the OIDMainKeyword and ?MainKeyword diff --git a/locale/Dependencies b/locale/Dependencies index 038521b55..7a08bb2bc 100644 --- a/locale/Dependencies +++ b/locale/Dependencies @@ -1,22 +1,22 @@ -checkpo.o: checkpo.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -po2strings.o: po2strings.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h +checkpo.o: checkpo.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +po2strings.o: po2strings.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h strings2po.o: strings2po.c -translate.o: translate.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h +translate.o: translate.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h diff --git a/locale/Makefile b/locale/Makefile index 351b4b2bd..180497410 100644 --- a/locale/Makefile +++ b/locale/Makefile @@ -172,7 +172,7 @@ checkall: checkpo # # po2strings - A simple utility which uses iconv to convert GNU gettext -# message catalogs to Mac OS X .strings files. +# message catalogs to OS X .strings files. # # po2strings filename.po filename.strings # @@ -185,8 +185,8 @@ po2strings: po2strings.o ../cups/$(LIBCUPSSTATIC) # -# strings2po - A simple utility which uses iconv to convert Mac OS X -# .strings files to GNU gettext message catalogs. +# strings2po - A simple utility which uses iconv to convert OS X .strings files +# to GNU gettext message catalogs. # # strings2po filename.strings filename.po # diff --git a/locale/cups.pot b/locale/cups.pot index c4a83b114..89c33342e 100644 --- a/locale/cups.pot +++ b/locale/cups.pot @@ -30,10 +30,11 @@ msgid "" msgstr "" "Project-Id-Version: CUPS 1.6\n" "Report-Msgid-Bugs-To: http://www.cups.org/str.php\n" -"POT-Creation-Date: 2012-03-07 13:37-0800\n" +"POT-Creation-Date: 2012-04-23 12:19-0700\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" +"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" @@ -47,7 +48,7 @@ msgstr "" msgid "\t\t(none)" msgstr "" -#: berkeley/lpc.c:433 +#: berkeley/lpc.c:434 #, c-format msgid "\t%d entries" msgstr "" @@ -153,24 +154,24 @@ msgstr "" msgid "\tUsers denied:" msgstr "" -#: berkeley/lpc.c:435 +#: berkeley/lpc.c:436 msgid "\tdaemon present" msgstr "" -#: berkeley/lpc.c:431 +#: berkeley/lpc.c:432 msgid "\tno entries" msgstr "" -#: berkeley/lpc.c:403 berkeley/lpc.c:415 +#: berkeley/lpc.c:404 berkeley/lpc.c:416 #, c-format msgid "\tprinter is on device '%s' speed -1" msgstr "" -#: berkeley/lpc.c:428 +#: berkeley/lpc.c:429 msgid "\tprinting is disabled" msgstr "" -#: berkeley/lpc.c:426 +#: berkeley/lpc.c:427 msgid "\tprinting is enabled" msgstr "" @@ -179,11 +180,11 @@ msgstr "" msgid "\tqueued for %s" msgstr "" -#: berkeley/lpc.c:423 +#: berkeley/lpc.c:424 msgid "\tqueuing is disabled" msgstr "" -#: berkeley/lpc.c:421 +#: berkeley/lpc.c:422 msgid "\tqueuing is enabled" msgstr "" @@ -197,11 +198,11 @@ msgid "" " DETAILED CONFORMANCE TEST RESULTS" msgstr "" -#: systemv/cupstestppd.c:3799 +#: systemv/cupstestppd.c:3800 msgid " Ignore specific warnings." msgstr "" -#: systemv/cupstestppd.c:3803 +#: systemv/cupstestppd.c:3804 msgid " Issue warnings instead of errors." msgstr "" @@ -283,118 +284,118 @@ msgstr "" msgid " PASS LanguageVersion" msgstr "" -#: systemv/cupstestppd.c:767 +#: systemv/cupstestppd.c:769 msgid " PASS Manufacturer" msgstr "" -#: systemv/cupstestppd.c:807 +#: systemv/cupstestppd.c:809 msgid " PASS ModelName" msgstr "" -#: systemv/cupstestppd.c:827 +#: systemv/cupstestppd.c:829 msgid " PASS NickName" msgstr "" -#: systemv/cupstestppd.c:887 +#: systemv/cupstestppd.c:889 msgid " PASS PCFileName" msgstr "" -#: systemv/cupstestppd.c:962 +#: systemv/cupstestppd.c:964 msgid " PASS PSVersion" msgstr "" -#: systemv/cupstestppd.c:867 +#: systemv/cupstestppd.c:869 msgid " PASS PageRegion" msgstr "" -#: systemv/cupstestppd.c:847 +#: systemv/cupstestppd.c:849 msgid " PASS PageSize" msgstr "" -#: systemv/cupstestppd.c:922 +#: systemv/cupstestppd.c:924 msgid " PASS Product" msgstr "" -#: systemv/cupstestppd.c:997 +#: systemv/cupstestppd.c:999 msgid " PASS ShortNickName" msgstr "" -#: systemv/cupstestppd.c:1372 +#: systemv/cupstestppd.c:1374 #, c-format msgid " WARN %s has no corresponding options." msgstr "" -#: systemv/cupstestppd.c:1484 +#: systemv/cupstestppd.c:1486 #, c-format msgid "" " WARN %s shares a common prefix with %s\n" " REF: Page 15, section 3.2." msgstr "" -#: systemv/cupstestppd.c:1343 +#: systemv/cupstestppd.c:1345 #, c-format msgid "" " WARN Duplex option keyword %s may not work as expected and should be named Duplex.\n" " REF: Page 122, section 5.17" msgstr "" -#: systemv/cupstestppd.c:1742 +#: systemv/cupstestppd.c:1744 msgid " WARN File contains a mix of CR, LF, and CR LF line endings." msgstr "" -#: systemv/cupstestppd.c:1388 +#: systemv/cupstestppd.c:1390 msgid "" " WARN LanguageEncoding required by PPD 4.3 spec.\n" " REF: Pages 56-57, section 5.3." msgstr "" -#: systemv/cupstestppd.c:1724 +#: systemv/cupstestppd.c:1726 #, c-format msgid " WARN Line %d only contains whitespace." msgstr "" -#: systemv/cupstestppd.c:1396 +#: systemv/cupstestppd.c:1398 msgid "" " WARN Manufacturer required by PPD 4.3 spec.\n" " REF: Pages 58-59, section 5.3." msgstr "" -#: systemv/cupstestppd.c:1747 +#: systemv/cupstestppd.c:1749 msgid " WARN Non-Windows PPD files should use lines ending with only LF, not CR LF." msgstr "" -#: systemv/cupstestppd.c:1380 +#: systemv/cupstestppd.c:1382 #, c-format msgid "" " WARN Obsolete PPD version %.1f.\n" " REF: Page 42, section 5.2." msgstr "" -#: systemv/cupstestppd.c:1411 +#: systemv/cupstestppd.c:1413 msgid "" " WARN PCFileName longer than 8.3 in violation of PPD spec.\n" " REF: Pages 61-62, section 5.3." msgstr "" -#: systemv/cupstestppd.c:1419 +#: systemv/cupstestppd.c:1421 msgid "" " WARN PCFileName should contain a unique filename.\n" " REF: Pages 61-62, section 5.3." msgstr "" -#: systemv/cupstestppd.c:1454 +#: systemv/cupstestppd.c:1456 msgid "" " WARN Protocols contains PJL but JCL attributes are not set.\n" " REF: Pages 78-79, section 5.7." msgstr "" -#: systemv/cupstestppd.c:1445 +#: systemv/cupstestppd.c:1447 msgid "" " WARN Protocols contains both PJL and BCP; expected TBCP.\n" " REF: Pages 78-79, section 5.7." msgstr "" -#: systemv/cupstestppd.c:1428 +#: systemv/cupstestppd.c:1430 msgid "" " WARN ShortNickName required by PPD 4.3 spec.\n" " REF: Pages 64-65, section 5.3." @@ -408,188 +409,188 @@ msgstr "" msgid " cupstestdsc [options] -" msgstr "" -#: systemv/cupstestppd.c:3794 +#: systemv/cupstestppd.c:3795 msgid " program | cupstestppd [options] -" msgstr "" -#: systemv/cupstestppd.c:3726 +#: systemv/cupstestppd.c:3727 #, c-format msgid "" " %s \"%s %s\" conflicts with \"%s %s\"\n" " (constraint=\"%s %s %s %s\")." msgstr "" -#: systemv/cupstestppd.c:2246 +#: systemv/cupstestppd.c:2248 #, c-format msgid " %s %s %s does not exist." msgstr "" -#: systemv/cupstestppd.c:3883 +#: systemv/cupstestppd.c:3884 #, c-format msgid " %s %s file \"%s\" has the wrong capitalization." msgstr "" -#: systemv/cupstestppd.c:2316 +#: systemv/cupstestppd.c:2318 #, c-format msgid "" " %s Bad %s choice %s.\n" " REF: Page 122, section 5.17" msgstr "" -#: systemv/cupstestppd.c:3486 systemv/cupstestppd.c:3535 -#: systemv/cupstestppd.c:3574 +#: systemv/cupstestppd.c:3487 systemv/cupstestppd.c:3536 +#: systemv/cupstestppd.c:3575 #, c-format msgid " %s Bad UTF-8 \"%s\" translation string for option %s, choice %s." msgstr "" -#: systemv/cupstestppd.c:3440 +#: systemv/cupstestppd.c:3441 #, c-format msgid " %s Bad UTF-8 \"%s\" translation string for option %s." msgstr "" -#: systemv/cupstestppd.c:2387 +#: systemv/cupstestppd.c:2389 #, c-format msgid " %s Bad cupsFilter value \"%s\"." msgstr "" -#: systemv/cupstestppd.c:2473 +#: systemv/cupstestppd.c:2475 #, c-format msgid " %s Bad cupsFilter2 value \"%s\"." msgstr "" -#: systemv/cupstestppd.c:2962 +#: systemv/cupstestppd.c:2964 #, c-format msgid " %s Bad cupsICCProfile %s." msgstr "" -#: systemv/cupstestppd.c:2569 +#: systemv/cupstestppd.c:2571 #, c-format msgid " %s Bad cupsPreFilter value \"%s\"." msgstr "" -#: systemv/cupstestppd.c:1820 +#: systemv/cupstestppd.c:1822 #, c-format msgid " %s Bad cupsUIConstraints %s: \"%s\"" msgstr "" -#: systemv/cupstestppd.c:3390 +#: systemv/cupstestppd.c:3391 #, c-format msgid " %s Bad language \"%s\"." msgstr "" -#: systemv/cupstestppd.c:2431 systemv/cupstestppd.c:2527 -#: systemv/cupstestppd.c:2613 systemv/cupstestppd.c:2671 -#: systemv/cupstestppd.c:2726 systemv/cupstestppd.c:2781 -#: systemv/cupstestppd.c:2836 systemv/cupstestppd.c:2889 -#: systemv/cupstestppd.c:3011 +#: systemv/cupstestppd.c:2433 systemv/cupstestppd.c:2529 +#: systemv/cupstestppd.c:2615 systemv/cupstestppd.c:2673 +#: systemv/cupstestppd.c:2728 systemv/cupstestppd.c:2783 +#: systemv/cupstestppd.c:2838 systemv/cupstestppd.c:2891 +#: systemv/cupstestppd.c:3013 #, c-format msgid " %s Bad permissions on %s file \"%s\"." msgstr "" -#: systemv/cupstestppd.c:2371 systemv/cupstestppd.c:2457 -#: systemv/cupstestppd.c:2553 systemv/cupstestppd.c:2640 -#: systemv/cupstestppd.c:2695 systemv/cupstestppd.c:2750 -#: systemv/cupstestppd.c:2805 systemv/cupstestppd.c:2860 +#: systemv/cupstestppd.c:2373 systemv/cupstestppd.c:2459 +#: systemv/cupstestppd.c:2555 systemv/cupstestppd.c:2642 +#: systemv/cupstestppd.c:2697 systemv/cupstestppd.c:2752 +#: systemv/cupstestppd.c:2807 systemv/cupstestppd.c:2862 #, c-format msgid " %s Bad spelling of %s - should be %s." msgstr "" -#: systemv/cupstestppd.c:2905 +#: systemv/cupstestppd.c:2907 #, c-format msgid " %s Cannot provide both APScanAppPath and APScanAppBundleID." msgstr "" -#: systemv/cupstestppd.c:2203 +#: systemv/cupstestppd.c:2205 #, c-format msgid " %s Default choices conflicting." msgstr "" -#: systemv/cupstestppd.c:1801 +#: systemv/cupstestppd.c:1803 #, c-format msgid " %s Empty cupsUIConstraints %s" msgstr "" -#: systemv/cupstestppd.c:3518 systemv/cupstestppd.c:3558 +#: systemv/cupstestppd.c:3519 systemv/cupstestppd.c:3559 #, c-format msgid " %s Missing \"%s\" translation string for option %s, choice %s." msgstr "" -#: systemv/cupstestppd.c:3426 +#: systemv/cupstestppd.c:3427 #, c-format msgid " %s Missing \"%s\" translation string for option %s." msgstr "" -#: systemv/cupstestppd.c:2416 systemv/cupstestppd.c:2512 -#: systemv/cupstestppd.c:2598 systemv/cupstestppd.c:2656 -#: systemv/cupstestppd.c:2711 systemv/cupstestppd.c:2766 -#: systemv/cupstestppd.c:2821 systemv/cupstestppd.c:2873 -#: systemv/cupstestppd.c:2996 +#: systemv/cupstestppd.c:2418 systemv/cupstestppd.c:2514 +#: systemv/cupstestppd.c:2600 systemv/cupstestppd.c:2658 +#: systemv/cupstestppd.c:2713 systemv/cupstestppd.c:2768 +#: systemv/cupstestppd.c:2823 systemv/cupstestppd.c:2875 +#: systemv/cupstestppd.c:2998 #, c-format msgid " %s Missing %s file \"%s\"." msgstr "" -#: systemv/cupstestppd.c:3119 +#: systemv/cupstestppd.c:3121 #, c-format msgid "" " %s Missing REQUIRED PageRegion option.\n" " REF: Page 100, section 5.14." msgstr "" -#: systemv/cupstestppd.c:3104 +#: systemv/cupstestppd.c:3106 #, c-format msgid "" " %s Missing REQUIRED PageSize option.\n" " REF: Page 99, section 5.14." msgstr "" -#: systemv/cupstestppd.c:2011 systemv/cupstestppd.c:2052 +#: systemv/cupstestppd.c:2013 systemv/cupstestppd.c:2054 #, c-format msgid " %s Missing choice *%s %s in UIConstraints \"*%s %s *%s %s\"." msgstr "" -#: systemv/cupstestppd.c:1906 +#: systemv/cupstestppd.c:1908 #, c-format msgid " %s Missing choice *%s %s in cupsUIConstraints %s: \"%s\"" msgstr "" -#: systemv/cupstestppd.c:1838 +#: systemv/cupstestppd.c:1840 #, c-format msgid " %s Missing cupsUIResolver %s" msgstr "" -#: systemv/cupstestppd.c:1997 systemv/cupstestppd.c:2038 +#: systemv/cupstestppd.c:1999 systemv/cupstestppd.c:2040 #, c-format msgid " %s Missing option %s in UIConstraints \"*%s %s *%s %s\"." msgstr "" -#: systemv/cupstestppd.c:1890 +#: systemv/cupstestppd.c:1892 #, c-format msgid " %s Missing option %s in cupsUIConstraints %s: \"%s\"" msgstr "" -#: systemv/cupstestppd.c:3612 +#: systemv/cupstestppd.c:3613 #, c-format msgid " %s No base translation \"%s\" is included in file." msgstr "" -#: systemv/cupstestppd.c:2292 +#: systemv/cupstestppd.c:2294 #, c-format msgid "" " %s REQUIRED %s does not define choice None.\n" " REF: Page 122, section 5.17" msgstr "" -#: systemv/cupstestppd.c:3177 systemv/cupstestppd.c:3191 +#: systemv/cupstestppd.c:3180 systemv/cupstestppd.c:3194 #, c-format msgid " %s Size \"%s\" defined for %s but not for %s." msgstr "" -#: systemv/cupstestppd.c:3157 +#: systemv/cupstestppd.c:3160 #, c-format msgid " %s Size \"%s\" has unexpected dimensions (%gx%g)." msgstr "" -#: systemv/cupstestppd.c:3331 +#: systemv/cupstestppd.c:3332 #, c-format msgid " %s Size \"%s\" should be \"%s\"." msgstr "" @@ -599,27 +600,22 @@ msgstr "" msgid " %s Size \"%s\" should be the Adobe standard name \"%s\"." msgstr "" -#: systemv/cupstestppd.c:3039 +#: systemv/cupstestppd.c:3041 #, c-format msgid " %s cupsICCProfile %s hash value collides with %s." msgstr "" -#: systemv/cupstestppd.c:1961 +#: systemv/cupstestppd.c:1963 #, c-format msgid " %s cupsUIResolver %s causes a loop." msgstr "" -#: systemv/cupstestppd.c:1943 +#: systemv/cupstestppd.c:1945 #, c-format msgid " %s cupsUIResolver %s does not list at least two different options." msgstr "" -#: systemv/cupstestppd.c:2161 -#, c-format -msgid " **FAIL** %s choice names %s and %s differ only by case." -msgstr "" - -#: systemv/cupstestppd.c:1166 +#: systemv/cupstestppd.c:1168 #, c-format msgid "" " **FAIL** %s must be 1284DeviceID\n" @@ -629,124 +625,124 @@ msgstr "" #: systemv/cupstestppd.c:580 #, c-format msgid "" -" **FAIL** BAD Default%s %s\n" +" **FAIL** Bad Default%s %s\n" " REF: Page 40, section 4.5." msgstr "" #: systemv/cupstestppd.c:514 #, c-format msgid "" -" **FAIL** BAD DefaultImageableArea %s\n" +" **FAIL** Bad DefaultImageableArea %s\n" " REF: Page 102, section 5.15." msgstr "" #: systemv/cupstestppd.c:550 #, c-format msgid "" -" **FAIL** BAD DefaultPaperDimension %s\n" +" **FAIL** Bad DefaultPaperDimension %s\n" " REF: Page 103, section 5.15." msgstr "" -#: systemv/cupstestppd.c:1023 +#: systemv/cupstestppd.c:623 +#, c-format msgid "" -" **FAIL** BAD JobPatchFile attribute in file\n" -" REF: Page 24, section 3.4." +" **FAIL** Bad FileVersion \"%s\"\n" +" REF: Page 56, section 5.3." msgstr "" -#: systemv/cupstestppd.c:743 +#: systemv/cupstestppd.c:667 +#, c-format msgid "" -" **FAIL** BAD Manufacturer (should be \"HP\")\n" -" REF: Page 211, table D.1." +" **FAIL** Bad FormatVersion \"%s\"\n" +" REF: Page 56, section 5.3." msgstr "" -#: systemv/cupstestppd.c:759 +#: systemv/cupstestppd.c:1025 msgid "" -" **FAIL** BAD Manufacturer (should be \"Oki\")\n" -" REF: Page 211, table D.1." +" **FAIL** Bad JobPatchFile attribute in file\n" +" REF: Page 24, section 3.4." msgstr "" -#: systemv/cupstestppd.c:798 +#: systemv/cupstestppd.c:1213 #, c-format -msgid "" -" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n" -" REF: Pages 59-60, section 5.3." -msgstr "" - -#: systemv/cupstestppd.c:954 -msgid "" -" **FAIL** BAD PSVersion - not \"(string) int\".\n" -" REF: Pages 62-64, section 5.3." +msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1." msgstr "" -#: systemv/cupstestppd.c:915 -msgid "" -" **FAIL** BAD Product - not \"(string)\".\n" -" REF: Page 62, section 5.3." +#: systemv/cupstestppd.c:1227 +#, c-format +msgid " **FAIL** Bad LanguageVersion %s - must be English." msgstr "" -#: systemv/cupstestppd.c:989 +#: systemv/cupstestppd.c:743 systemv/cupstestppd.c:760 +#, c-format msgid "" -" **FAIL** BAD ShortNickName - longer than 31 chars.\n" -" REF: Pages 64-65, section 5.3." +" **FAIL** Bad Manufacturer (should be \"%s\")\n" +" REF: Page 211, table D.1." msgstr "" -#: systemv/cupstestppd.c:1147 +#: systemv/cupstestppd.c:800 #, c-format msgid "" -" **FAIL** Bad %s choice %s\n" -" REF: Page 84, section 5.9" +" **FAIL** Bad ModelName - \"%c\" not allowed in string.\n" +" REF: Pages 59-60, section 5.3." msgstr "" -#: systemv/cupstestppd.c:623 -#, c-format +#: systemv/cupstestppd.c:956 msgid "" -" **FAIL** Bad FileVersion \"%s\"\n" -" REF: Page 56, section 5.3." +" **FAIL** Bad PSVersion - not \"(string) int\".\n" +" REF: Pages 62-64, section 5.3." msgstr "" -#: systemv/cupstestppd.c:667 -#, c-format +#: systemv/cupstestppd.c:917 msgid "" -" **FAIL** Bad FormatVersion \"%s\"\n" -" REF: Page 56, section 5.3." +" **FAIL** Bad Product - not \"(string)\".\n" +" REF: Page 62, section 5.3." msgstr "" -#: systemv/cupstestppd.c:1211 -#, c-format -msgid " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1." +#: systemv/cupstestppd.c:991 +msgid "" +" **FAIL** Bad ShortNickName - longer than 31 chars.\n" +" REF: Pages 64-65, section 5.3." msgstr "" -#: systemv/cupstestppd.c:1225 +#: systemv/cupstestppd.c:1149 #, c-format -msgid " **FAIL** Bad LanguageVersion %s - must be English." +msgid "" +" **FAIL** Bad option %s choice %s\n" +" REF: Page 84, section 5.9" msgstr "" -#: systemv/cupstestppd.c:3753 systemv/cupstestppd.c:3775 +#: systemv/cupstestppd.c:3754 systemv/cupstestppd.c:3776 #, c-format msgid " **FAIL** Default option code cannot be interpreted: %s" msgstr "" -#: systemv/cupstestppd.c:1284 +#: systemv/cupstestppd.c:1286 #, c-format msgid " **FAIL** Default translation string for option %s choice %s contains 8-bit characters." msgstr "" -#: systemv/cupstestppd.c:1257 +#: systemv/cupstestppd.c:1259 #, c-format msgid " **FAIL** Default translation string for option %s contains 8-bit characters." msgstr "" -#: systemv/cupstestppd.c:2099 +#: systemv/cupstestppd.c:2101 #, c-format msgid " **FAIL** Group names %s and %s differ only by case." msgstr "" -#: systemv/cupstestppd.c:2144 +#: systemv/cupstestppd.c:2146 +#, c-format +msgid " **FAIL** Multiple occurrences of option %s choice name %s." +msgstr "" + +#: systemv/cupstestppd.c:2163 #, c-format -msgid " **FAIL** Multiple occurrences of %s choice name %s." +msgid " **FAIL** Option %s choice names %s and %s differ only by case." msgstr "" -#: systemv/cupstestppd.c:2121 +#: systemv/cupstestppd.c:2123 #, c-format msgid " **FAIL** Option names %s and %s differ only by case." msgstr "" @@ -782,7 +778,7 @@ msgid "" " REF: Page 56, section 5.3." msgstr "" -#: systemv/cupstestppd.c:1074 +#: systemv/cupstestppd.c:1076 #, c-format msgid "" " **FAIL** REQUIRED ImageableArea for PageSize %s\n" @@ -802,56 +798,56 @@ msgid "" " REF: Pages 57-58, section 5.3." msgstr "" -#: systemv/cupstestppd.c:777 +#: systemv/cupstestppd.c:779 msgid "" " **FAIL** REQUIRED Manufacturer\n" " REF: Pages 58-59, section 5.3." msgstr "" -#: systemv/cupstestppd.c:817 +#: systemv/cupstestppd.c:819 msgid "" " **FAIL** REQUIRED ModelName\n" " REF: Pages 59-60, section 5.3." msgstr "" -#: systemv/cupstestppd.c:837 +#: systemv/cupstestppd.c:839 msgid "" " **FAIL** REQUIRED NickName\n" " REF: Page 60, section 5.3." msgstr "" -#: systemv/cupstestppd.c:897 +#: systemv/cupstestppd.c:899 msgid "" " **FAIL** REQUIRED PCFileName\n" " REF: Pages 61-62, section 5.3." msgstr "" -#: systemv/cupstestppd.c:972 +#: systemv/cupstestppd.c:974 msgid "" " **FAIL** REQUIRED PSVersion\n" " REF: Pages 62-64, section 5.3." msgstr "" -#: systemv/cupstestppd.c:877 +#: systemv/cupstestppd.c:879 msgid "" " **FAIL** REQUIRED PageRegion\n" " REF: Page 100, section 5.14." msgstr "" -#: systemv/cupstestppd.c:1043 +#: systemv/cupstestppd.c:1045 msgid "" " **FAIL** REQUIRED PageSize\n" " REF: Page 41, section 5.\n" " REF: Page 99, section 5.14." msgstr "" -#: systemv/cupstestppd.c:857 +#: systemv/cupstestppd.c:859 msgid "" " **FAIL** REQUIRED PageSize\n" " REF: Pages 99-100, section 5.14." msgstr "" -#: systemv/cupstestppd.c:1096 +#: systemv/cupstestppd.c:1098 #, c-format msgid "" " **FAIL** REQUIRED PaperDimension for PageSize %s\n" @@ -859,29 +855,25 @@ msgid "" " REF: Page 103, section 5.15." msgstr "" -#: systemv/cupstestppd.c:932 +#: systemv/cupstestppd.c:934 msgid "" " **FAIL** REQUIRED Product\n" " REF: Page 62, section 5.3." msgstr "" -#: systemv/cupstestppd.c:1007 +#: systemv/cupstestppd.c:1009 msgid "" " **FAIL** REQUIRED ShortNickName\n" " REF: Page 64-65, section 5.3." msgstr "" #: systemv/cupstestppd.c:334 systemv/cupstestppd.c:353 -#, c-format -msgid " **FAIL** Unable to open PPD file - %s" -msgstr "" - #: systemv/cupstestppd.c:365 #, c-format msgid " **FAIL** Unable to open PPD file - %s on line %d." msgstr "" -#: systemv/cupstestppd.c:1496 +#: systemv/cupstestppd.c:1498 #, c-format msgid " %d ERRORS FOUND" msgstr "" @@ -950,7 +942,7 @@ msgid "" " REF: Page 43, %%Pages:" msgstr "" -#: systemv/cupstestppd.c:1498 +#: systemv/cupstestppd.c:1500 msgid " NO ERRORS FOUND" msgstr "" @@ -1003,16 +995,16 @@ msgstr "" msgid " --[no-]user-cancel-any Allow/prevent users to cancel any job." msgstr "" -#: ppdc/ppdc.cxx:456 +#: ppdc/ppdc.cxx:455 msgid " --cr End lines with CR (Mac OS 9)." msgstr "" -#: ppdc/ppdc.cxx:458 +#: ppdc/ppdc.cxx:457 msgid " --crlf End lines with CR + LF (Windows)." msgstr "" -#: ppdc/ppdc.cxx:460 -msgid " --lf End lines with LF (UNIX/Linux/Mac OS X)." +#: ppdc/ppdc.cxx:459 +msgid " --lf End lines with LF (UNIX/Linux/OS X)." msgstr "" #: test/ipptool.c:4337 @@ -1027,7 +1019,7 @@ msgstr "" msgid " -C Send requests using chunking (default)." msgstr "" -#: scheduler/cupsfilter.c:1439 scheduler/cupsfilter.c:1466 +#: scheduler/cupsfilter.c:1431 msgid " -D Remove the input file when finished." msgstr "" @@ -1035,23 +1027,19 @@ msgstr "" msgid " -D name=value Set named variable to value." msgstr "" -#: systemv/cupsctl.c:205 -msgid " -E Enable encryption." -msgstr "" - -#: systemv/cupsaddsmb.c:285 -msgid " -E Encrypt the connection to the server." +#: systemv/cupsaddsmb.c:285 systemv/cupsctl.c:205 +msgid " -E Encrypt the connection." msgstr "" #: test/ipptool.c:4341 -msgid " -E Test with TLS encryption." +msgid " -E Test with HTTP Upgrade to TLS." msgstr "" -#: scheduler/main.c:2023 +#: scheduler/main.c:2021 msgid " -F Run in the foreground but detach from console." msgstr "" -#: systemv/cupsaddsmb.c:287 +#: systemv/cupsaddsmb.c:286 msgid " -H samba-server Use the named SAMBA server." msgstr "" @@ -1063,23 +1051,19 @@ msgstr "" msgid " -I include-dir Add include directory to search path." msgstr "" -#: systemv/cupstestppd.c:3798 +#: systemv/cupstestppd.c:3799 msgid " -I {filename,filters,none,profiles}" msgstr "" -#: scheduler/cupsfilter.c:1468 -msgid " -J title Set title." -msgstr "" - #: test/ipptool.c:4344 msgid " -L Send requests using content-length." msgstr "" -#: scheduler/cupsfilter.c:1441 scheduler/cupsfilter.c:1469 +#: scheduler/cupsfilter.c:1433 msgid " -P filename.ppd Set PPD file." msgstr "" -#: systemv/cupstestppd.c:3800 +#: systemv/cupstestppd.c:3801 msgid " -R root-directory Set alternate root." msgstr "" @@ -1091,15 +1075,7 @@ msgstr "" msgid " -T seconds Set the receive/send timeout in seconds." msgstr "" -#: systemv/cupsaddsmb.c:289 -msgid " -U samba-user Authenticate using the named SAMBA user." -msgstr "" - -#: scheduler/cupsfilter.c:1442 scheduler/cupsfilter.c:1470 -msgid " -U username Set username for job." -msgstr "" - -#: systemv/cupsctl.c:206 +#: scheduler/cupsfilter.c:1434 systemv/cupsaddsmb.c:288 systemv/cupsctl.c:206 msgid " -U username Specify username." msgstr "" @@ -1107,7 +1083,7 @@ msgstr "" msgid " -V version Set default IPP version." msgstr "" -#: systemv/cupstestppd.c:3801 +#: systemv/cupstestppd.c:3802 msgid " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}" msgstr "" @@ -1115,27 +1091,15 @@ msgstr "" msgid " -X Produce XML plist instead of plain text." msgstr "" -#: systemv/cupsaddsmb.c:291 +#: systemv/cupsaddsmb.c:289 msgid " -a Export all printers." msgstr "" -#: scheduler/cupsfilter.c:1471 -msgid " -a 'name=value ...' Set option(s)." -msgstr "" - #: ppdc/ppdc.cxx:442 msgid " -c catalog.po Load the specified message catalog." msgstr "" -#: scheduler/main.c:2020 -msgid " -c config-file Load alternate configuration file." -msgstr "" - -#: scheduler/cupsfilter.c:1472 -msgid " -c copies Set number of copies." -msgstr "" - -#: scheduler/cupsfilter.c:1443 +#: scheduler/cupsfilter.c:1435 scheduler/main.c:2019 msgid " -c cupsd.conf Set cupsd.conf file to use." msgstr "" @@ -1147,15 +1111,15 @@ msgstr "" msgid " -d output-dir Specify the output directory." msgstr "" -#: scheduler/cupsfilter.c:1445 scheduler/cupsfilter.c:1473 +#: scheduler/cupsfilter.c:1437 msgid " -d printer Use the named printer." msgstr "" -#: scheduler/cupsfilter.c:1447 scheduler/cupsfilter.c:1475 +#: scheduler/cupsfilter.c:1439 msgid " -e Use every filter from the PPD file." msgstr "" -#: scheduler/main.c:2022 +#: scheduler/main.c:2020 msgid " -f Run in the foreground." msgstr "" @@ -1163,23 +1127,15 @@ msgstr "" msgid " -f filename Set default request filename." msgstr "" -#: scheduler/cupsfilter.c:1477 -msgid " -f filename Set file to be converted (otherwise stdin)." -msgstr "" - -#: scheduler/main.c:2025 +#: scheduler/main.c:2023 msgid " -h Show this usage message." msgstr "" -#: systemv/cupsaddsmb.c:292 -msgid " -h cups-server Use the named CUPS server." -msgstr "" - -#: systemv/cupsctl.c:207 +#: systemv/cupsaddsmb.c:290 systemv/cupsctl.c:207 msgid " -h server[:port] Specify server address." msgstr "" -#: scheduler/cupsfilter.c:1449 scheduler/cupsfilter.c:1479 +#: scheduler/cupsfilter.c:1441 msgid " -i mime/type Set input MIME type (otherwise auto-typed)." msgstr "" @@ -1187,15 +1143,11 @@ msgstr "" msgid " -i seconds Repeat the last file with the given time interval." msgstr "" -#: scheduler/cupsfilter.c:1451 +#: scheduler/cupsfilter.c:1443 msgid " -j job-id[,N] Filter file N from the specified job (default is file 1)." msgstr "" -#: scheduler/cupsfilter.c:1481 -msgid " -j mime/type Set output MIME type (otherwise application/pdf)." -msgstr "" - -#: scheduler/main.c:2026 +#: scheduler/main.c:2024 msgid " -l Run cupsd from launchd(8)." msgstr "" @@ -1207,11 +1159,11 @@ msgstr "" msgid " -m Use the ModelName value as the filename." msgstr "" -#: scheduler/cupsfilter.c:1453 +#: scheduler/cupsfilter.c:1445 msgid " -m mime/type Set output MIME type (otherwise application/pdf)." msgstr "" -#: scheduler/cupsfilter.c:1455 +#: scheduler/cupsfilter.c:1447 msgid " -n copies Set number of copies." msgstr "" @@ -1219,10 +1171,6 @@ msgstr "" msgid " -n count Repeat the last file the given number of times." msgstr "" -#: scheduler/cupsfilter.c:1483 -msgid " -o filename Set file to be generated (otherwise stdout)." -msgstr "" - #: ppdc/ppdi.cxx:133 msgid " -o filename.drv Set driver information file (otherwise ppdi.drv)." msgstr "" @@ -1231,27 +1179,23 @@ msgstr "" msgid " -o filename.ppd[.gz] Set output file (otherwise stdout)." msgstr "" -#: scheduler/cupsfilter.c:1456 +#: scheduler/cupsfilter.c:1448 msgid " -o name=value Set option(s)." msgstr "" -#: scheduler/cupsfilter.c:1457 +#: scheduler/cupsfilter.c:1449 msgid " -p filename.ppd Set PPD file." msgstr "" -#: test/ipptool.c:4362 -msgid " -q Be quiet - no output except errors." -msgstr "" - -#: systemv/cupstestppd.c:3805 +#: systemv/cupstestppd.c:3806 test/ipptool.c:4362 msgid " -q Run silently." msgstr "" -#: systemv/cupstestppd.c:3806 +#: systemv/cupstestppd.c:3807 msgid " -r Use 'relaxed' open mode." msgstr "" -#: test/ipptool.c:4364 +#: test/ipptool.c:4363 msgid " -t Produce a test report." msgstr "" @@ -1259,39 +1203,28 @@ msgstr "" msgid " -t Test PPDs instead of generating them." msgstr "" -#: scheduler/main.c:2027 +#: scheduler/main.c:2025 msgid " -t Test the configuration file." msgstr "" -#: scheduler/cupsfilter.c:1458 +#: scheduler/cupsfilter.c:1450 msgid " -t title Set title." msgstr "" -#: scheduler/cupsfilter.c:1459 scheduler/cupsfilter.c:1485 +#: scheduler/cupsfilter.c:1451 msgid " -u Remove the PPD file when finished." msgstr "" -#: systemv/cupstestppd.c:3807 -msgid " -v Be slightly verbose." -msgstr "" - +#: systemv/cupsaddsmb.c:291 systemv/cupstestppd.c:3808 test/ipptool.c:4364 #: ppdc/ppdc.cxx:452 ppdc/ppdpo.cxx:259 -msgid " -v Be verbose (more v's for more verbosity)." -msgstr "" - -#: systemv/cupsaddsmb.c:294 -msgid " -v Be verbose (show commands)." +msgid " -v Be verbose." msgstr "" -#: test/ipptool.c:4365 -msgid " -v Show all attributes sent and received." -msgstr "" - -#: systemv/cupstestppd.c:3808 +#: systemv/cupstestppd.c:3809 msgid " -vv Be very verbose." msgstr "" -#: ppdc/ppdc.cxx:454 +#: ppdc/ppdc.cxx:453 msgid " -z Compress PPD files using GNU zip." msgstr "" @@ -1303,56 +1236,56 @@ msgstr "" #: systemv/cupstestppd.c:638 systemv/cupstestppd.c:664 #: systemv/cupstestppd.c:682 systemv/cupstestppd.c:702 #: systemv/cupstestppd.c:722 systemv/cupstestppd.c:740 -#: systemv/cupstestppd.c:756 systemv/cupstestppd.c:774 -#: systemv/cupstestppd.c:795 systemv/cupstestppd.c:814 -#: systemv/cupstestppd.c:834 systemv/cupstestppd.c:854 -#: systemv/cupstestppd.c:874 systemv/cupstestppd.c:894 -#: systemv/cupstestppd.c:912 systemv/cupstestppd.c:929 -#: systemv/cupstestppd.c:951 systemv/cupstestppd.c:969 -#: systemv/cupstestppd.c:986 systemv/cupstestppd.c:1004 -#: systemv/cupstestppd.c:1020 systemv/cupstestppd.c:1040 -#: systemv/cupstestppd.c:1071 systemv/cupstestppd.c:1093 -#: systemv/cupstestppd.c:1144 systemv/cupstestppd.c:1163 -#: systemv/cupstestppd.c:1207 systemv/cupstestppd.c:1221 -#: systemv/cupstestppd.c:1253 systemv/cupstestppd.c:1280 -#: systemv/cupstestppd.c:1798 systemv/cupstestppd.c:1817 -#: systemv/cupstestppd.c:1835 systemv/cupstestppd.c:1887 -#: systemv/cupstestppd.c:1903 systemv/cupstestppd.c:1940 -#: systemv/cupstestppd.c:1958 systemv/cupstestppd.c:1994 -#: systemv/cupstestppd.c:2008 systemv/cupstestppd.c:2035 -#: systemv/cupstestppd.c:2049 systemv/cupstestppd.c:2095 -#: systemv/cupstestppd.c:2117 systemv/cupstestppd.c:2140 -#: systemv/cupstestppd.c:2157 systemv/cupstestppd.c:2199 -#: systemv/cupstestppd.c:2242 systemv/cupstestppd.c:2289 -#: systemv/cupstestppd.c:2313 systemv/cupstestppd.c:2367 -#: systemv/cupstestppd.c:2383 systemv/cupstestppd.c:2413 -#: systemv/cupstestppd.c:2427 systemv/cupstestppd.c:2453 -#: systemv/cupstestppd.c:2469 systemv/cupstestppd.c:2509 -#: systemv/cupstestppd.c:2523 systemv/cupstestppd.c:2549 -#: systemv/cupstestppd.c:2565 systemv/cupstestppd.c:2595 -#: systemv/cupstestppd.c:2609 systemv/cupstestppd.c:2636 -#: systemv/cupstestppd.c:2653 systemv/cupstestppd.c:2667 -#: systemv/cupstestppd.c:2691 systemv/cupstestppd.c:2708 -#: systemv/cupstestppd.c:2722 systemv/cupstestppd.c:2746 -#: systemv/cupstestppd.c:2763 systemv/cupstestppd.c:2777 -#: systemv/cupstestppd.c:2801 systemv/cupstestppd.c:2818 -#: systemv/cupstestppd.c:2832 systemv/cupstestppd.c:2856 -#: systemv/cupstestppd.c:2870 systemv/cupstestppd.c:2885 -#: systemv/cupstestppd.c:2902 systemv/cupstestppd.c:2958 -#: systemv/cupstestppd.c:2993 systemv/cupstestppd.c:3007 -#: systemv/cupstestppd.c:3035 systemv/cupstestppd.c:3100 -#: systemv/cupstestppd.c:3115 systemv/cupstestppd.c:3153 -#: systemv/cupstestppd.c:3173 systemv/cupstestppd.c:3187 -#: systemv/cupstestppd.c:3386 systemv/cupstestppd.c:3422 -#: systemv/cupstestppd.c:3436 systemv/cupstestppd.c:3482 -#: systemv/cupstestppd.c:3514 systemv/cupstestppd.c:3531 -#: systemv/cupstestppd.c:3554 systemv/cupstestppd.c:3570 -#: systemv/cupstestppd.c:3608 systemv/cupstestppd.c:3749 -#: systemv/cupstestppd.c:3771 systemv/cupstestppd.c:3879 +#: systemv/cupstestppd.c:757 systemv/cupstestppd.c:776 +#: systemv/cupstestppd.c:797 systemv/cupstestppd.c:816 +#: systemv/cupstestppd.c:836 systemv/cupstestppd.c:856 +#: systemv/cupstestppd.c:876 systemv/cupstestppd.c:896 +#: systemv/cupstestppd.c:914 systemv/cupstestppd.c:931 +#: systemv/cupstestppd.c:953 systemv/cupstestppd.c:971 +#: systemv/cupstestppd.c:988 systemv/cupstestppd.c:1006 +#: systemv/cupstestppd.c:1022 systemv/cupstestppd.c:1042 +#: systemv/cupstestppd.c:1073 systemv/cupstestppd.c:1095 +#: systemv/cupstestppd.c:1146 systemv/cupstestppd.c:1165 +#: systemv/cupstestppd.c:1209 systemv/cupstestppd.c:1223 +#: systemv/cupstestppd.c:1255 systemv/cupstestppd.c:1282 +#: systemv/cupstestppd.c:1800 systemv/cupstestppd.c:1819 +#: systemv/cupstestppd.c:1837 systemv/cupstestppd.c:1889 +#: systemv/cupstestppd.c:1905 systemv/cupstestppd.c:1942 +#: systemv/cupstestppd.c:1960 systemv/cupstestppd.c:1996 +#: systemv/cupstestppd.c:2010 systemv/cupstestppd.c:2037 +#: systemv/cupstestppd.c:2051 systemv/cupstestppd.c:2097 +#: systemv/cupstestppd.c:2119 systemv/cupstestppd.c:2142 +#: systemv/cupstestppd.c:2159 systemv/cupstestppd.c:2201 +#: systemv/cupstestppd.c:2244 systemv/cupstestppd.c:2291 +#: systemv/cupstestppd.c:2315 systemv/cupstestppd.c:2369 +#: systemv/cupstestppd.c:2385 systemv/cupstestppd.c:2415 +#: systemv/cupstestppd.c:2429 systemv/cupstestppd.c:2455 +#: systemv/cupstestppd.c:2471 systemv/cupstestppd.c:2511 +#: systemv/cupstestppd.c:2525 systemv/cupstestppd.c:2551 +#: systemv/cupstestppd.c:2567 systemv/cupstestppd.c:2597 +#: systemv/cupstestppd.c:2611 systemv/cupstestppd.c:2638 +#: systemv/cupstestppd.c:2655 systemv/cupstestppd.c:2669 +#: systemv/cupstestppd.c:2693 systemv/cupstestppd.c:2710 +#: systemv/cupstestppd.c:2724 systemv/cupstestppd.c:2748 +#: systemv/cupstestppd.c:2765 systemv/cupstestppd.c:2779 +#: systemv/cupstestppd.c:2803 systemv/cupstestppd.c:2820 +#: systemv/cupstestppd.c:2834 systemv/cupstestppd.c:2858 +#: systemv/cupstestppd.c:2872 systemv/cupstestppd.c:2887 +#: systemv/cupstestppd.c:2904 systemv/cupstestppd.c:2960 +#: systemv/cupstestppd.c:2995 systemv/cupstestppd.c:3009 +#: systemv/cupstestppd.c:3037 systemv/cupstestppd.c:3102 +#: systemv/cupstestppd.c:3117 systemv/cupstestppd.c:3156 +#: systemv/cupstestppd.c:3176 systemv/cupstestppd.c:3190 +#: systemv/cupstestppd.c:3387 systemv/cupstestppd.c:3423 +#: systemv/cupstestppd.c:3437 systemv/cupstestppd.c:3483 +#: systemv/cupstestppd.c:3515 systemv/cupstestppd.c:3532 +#: systemv/cupstestppd.c:3555 systemv/cupstestppd.c:3571 +#: systemv/cupstestppd.c:3609 systemv/cupstestppd.c:3750 +#: systemv/cupstestppd.c:3772 systemv/cupstestppd.c:3880 msgid " FAIL" msgstr "" -#: systemv/cupstestppd.c:1304 +#: systemv/cupstestppd.c:1306 msgid " PASS" msgstr "" @@ -1428,7 +1361,7 @@ msgid "%s: %-33.33s [job %d localhost]" msgstr "" #. TRANSLATORS: Message is "subject: error" -#: cups/langprintf.c:86 scheduler/cupsfilter.c:720 systemv/lpadmin.c:805 +#: cups/langprintf.c:86 scheduler/cupsfilter.c:714 systemv/lpadmin.c:805 #: systemv/lpadmin.c:856 systemv/lpadmin.c:906 systemv/lpadmin.c:962 #: systemv/lpadmin.c:1060 systemv/lpadmin.c:1112 systemv/lpadmin.c:1168 #: systemv/lpadmin.c:1478 @@ -1640,7 +1573,7 @@ msgstr "" msgid "%s: Invalid destination name in list \"%s\"." msgstr "" -#: scheduler/cupsfilter.c:573 +#: scheduler/cupsfilter.c:567 #, c-format msgid "%s: Invalid filter string \"%s\"." msgstr "" @@ -1650,7 +1583,7 @@ msgstr "" msgid "%s: Need job ID (\"-i jobid\") before \"-H restart\"." msgstr "" -#: scheduler/cupsfilter.c:464 +#: scheduler/cupsfilter.c:458 #, c-format msgid "%s: No filter to convert from %s/%s to %s/%s." msgstr "" @@ -1668,7 +1601,7 @@ msgstr "" msgid "%s: Sorry, no encryption support." msgstr "" -#: berkeley/lpq.c:295 scheduler/cupsfilter.c:1227 systemv/cancel.c:237 +#: berkeley/lpq.c:295 scheduler/cupsfilter.c:1221 systemv/cancel.c:237 #: systemv/cupsaddsmb.c:144 systemv/cupsaddsmb.c:171 #, c-format msgid "%s: Unable to connect to server." @@ -1679,7 +1612,7 @@ msgstr "" msgid "%s: Unable to contact server." msgstr "" -#: scheduler/cupsfilter.c:430 +#: scheduler/cupsfilter.c:424 #, c-format msgid "%s: Unable to determine MIME type of \"%s\"." msgstr "" @@ -1689,12 +1622,12 @@ msgstr "" msgid "%s: Unable to open %s: %s" msgstr "" -#: scheduler/cupsfilter.c:668 ppdc/ppdmerge.cxx:112 +#: scheduler/cupsfilter.c:662 ppdc/ppdmerge.cxx:112 #, c-format msgid "%s: Unable to open PPD file: %s on line %d." msgstr "" -#: scheduler/cupsfilter.c:398 +#: scheduler/cupsfilter.c:392 #, c-format msgid "%s: Unable to read MIME database from \"%s\" or \"%s\"." msgstr "" @@ -1704,17 +1637,17 @@ msgstr "" msgid "%s: Unknown destination \"%s\"." msgstr "" -#: scheduler/cupsfilter.c:441 +#: scheduler/cupsfilter.c:435 #, c-format msgid "%s: Unknown destination MIME type %s/%s." msgstr "" -#: scheduler/cupsfilter.c:1433 +#: scheduler/cupsfilter.c:1427 #, c-format msgid "%s: Unknown option \"%c\"." msgstr "" -#: scheduler/cupsfilter.c:422 +#: scheduler/cupsfilter.c:416 #, c-format msgid "%s: Unknown source MIME type %s/%s." msgstr "" @@ -1744,195 +1677,195 @@ msgstr "" msgid "%s: Warning - mode option ignored." msgstr "" -#: ppdc/sample.c:319 +#: ppdc/sample.c:310 msgid "-1" msgstr "" -#: ppdc/sample.c:310 +#: ppdc/sample.c:301 msgid "-10" msgstr "" -#: ppdc/sample.c:402 +#: ppdc/sample.c:393 msgid "-100" msgstr "" -#: ppdc/sample.c:401 +#: ppdc/sample.c:392 msgid "-105" msgstr "" -#: ppdc/sample.c:309 +#: ppdc/sample.c:300 msgid "-11" msgstr "" -#: ppdc/sample.c:400 +#: ppdc/sample.c:391 msgid "-110" msgstr "" -#: ppdc/sample.c:399 +#: ppdc/sample.c:390 msgid "-115" msgstr "" -#: ppdc/sample.c:308 +#: ppdc/sample.c:299 msgid "-12" msgstr "" -#: ppdc/sample.c:398 +#: ppdc/sample.c:389 msgid "-120" msgstr "" -#: ppdc/sample.c:307 +#: ppdc/sample.c:298 msgid "-13" msgstr "" -#: ppdc/sample.c:306 +#: ppdc/sample.c:297 msgid "-14" msgstr "" -#: ppdc/sample.c:305 +#: ppdc/sample.c:296 msgid "-15" msgstr "" -#: ppdc/sample.c:318 +#: ppdc/sample.c:309 msgid "-2" msgstr "" -#: ppdc/sample.c:418 +#: ppdc/sample.c:409 msgid "-20" msgstr "" -#: ppdc/sample.c:417 +#: ppdc/sample.c:408 msgid "-25" msgstr "" -#: ppdc/sample.c:317 +#: ppdc/sample.c:308 msgid "-3" msgstr "" -#: ppdc/sample.c:416 +#: ppdc/sample.c:407 msgid "-30" msgstr "" -#: ppdc/sample.c:415 +#: ppdc/sample.c:406 msgid "-35" msgstr "" -#: ppdc/sample.c:316 +#: ppdc/sample.c:307 msgid "-4" msgstr "" -#: ppdc/sample.c:414 +#: ppdc/sample.c:405 msgid "-40" msgstr "" -#: ppdc/sample.c:413 +#: ppdc/sample.c:404 msgid "-45" msgstr "" -#: ppdc/sample.c:315 +#: ppdc/sample.c:306 msgid "-5" msgstr "" -#: ppdc/sample.c:412 +#: ppdc/sample.c:403 msgid "-50" msgstr "" -#: ppdc/sample.c:411 +#: ppdc/sample.c:402 msgid "-55" msgstr "" -#: ppdc/sample.c:314 +#: ppdc/sample.c:305 msgid "-6" msgstr "" -#: ppdc/sample.c:410 +#: ppdc/sample.c:401 msgid "-60" msgstr "" -#: ppdc/sample.c:409 +#: ppdc/sample.c:400 msgid "-65" msgstr "" -#: ppdc/sample.c:313 +#: ppdc/sample.c:304 msgid "-7" msgstr "" -#: ppdc/sample.c:408 +#: ppdc/sample.c:399 msgid "-70" msgstr "" -#: ppdc/sample.c:407 +#: ppdc/sample.c:398 msgid "-75" msgstr "" -#: ppdc/sample.c:312 +#: ppdc/sample.c:303 msgid "-8" msgstr "" -#: ppdc/sample.c:406 +#: ppdc/sample.c:397 msgid "-80" msgstr "" -#: ppdc/sample.c:405 +#: ppdc/sample.c:396 msgid "-85" msgstr "" -#: ppdc/sample.c:311 +#: ppdc/sample.c:302 msgid "-9" msgstr "" -#: ppdc/sample.c:404 +#: ppdc/sample.c:395 msgid "-90" msgstr "" -#: ppdc/sample.c:403 +#: ppdc/sample.c:394 msgid "-95" msgstr "" -#: ppdc/sample.c:320 +#: ppdc/sample.c:311 msgid "0" msgstr "" -#: ppdc/sample.c:321 +#: ppdc/sample.c:312 msgid "1" msgstr "" -#: ppdc/sample.c:393 +#: ppdc/sample.c:384 msgid "1 inch/sec." msgstr "" -#: ppdc/sample.c:181 +#: ppdc/sample.c:172 msgid "1.25x0.25\"" msgstr "" -#: ppdc/sample.c:182 +#: ppdc/sample.c:173 msgid "1.25x2.25\"" msgstr "" -#: ppdc/sample.c:441 +#: ppdc/sample.c:432 msgid "1.5 inch/sec." msgstr "" -#: ppdc/sample.c:183 +#: ppdc/sample.c:174 msgid "1.50x0.25\"" msgstr "" -#: ppdc/sample.c:184 +#: ppdc/sample.c:175 msgid "1.50x0.50\"" msgstr "" -#: ppdc/sample.c:185 +#: ppdc/sample.c:176 msgid "1.50x1.00\"" msgstr "" -#: ppdc/sample.c:186 +#: ppdc/sample.c:177 msgid "1.50x2.00\"" msgstr "" -#: ppdc/sample.c:330 +#: ppdc/sample.c:321 msgid "10" msgstr "" -#: ppdc/sample.c:452 +#: ppdc/sample.c:443 msgid "10 inches/sec." msgstr "" @@ -1948,39 +1881,39 @@ msgstr "" msgid "10 x 14" msgstr "" -#: ppdc/sample.c:432 +#: ppdc/sample.c:423 msgid "100" msgstr "" -#: ppdc/sample.c:343 +#: ppdc/sample.c:334 msgid "100 mm/sec." msgstr "" -#: ppdc/sample.c:433 +#: ppdc/sample.c:424 msgid "105" msgstr "" -#: ppdc/sample.c:331 +#: ppdc/sample.c:322 msgid "11" msgstr "" -#: ppdc/sample.c:453 +#: ppdc/sample.c:444 msgid "11 inches/sec." msgstr "" -#: ppdc/sample.c:434 +#: ppdc/sample.c:425 msgid "110" msgstr "" -#: ppdc/sample.c:435 +#: ppdc/sample.c:426 msgid "115" msgstr "" -#: ppdc/sample.c:332 +#: ppdc/sample.c:323 msgid "12" msgstr "" -#: ppdc/sample.c:454 +#: ppdc/sample.c:445 msgid "12 inches/sec." msgstr "" @@ -1988,39 +1921,39 @@ msgstr "" msgid "12 x 11" msgstr "" -#: ppdc/sample.c:436 +#: ppdc/sample.c:427 msgid "120" msgstr "" -#: ppdc/sample.c:344 +#: ppdc/sample.c:335 msgid "120 mm/sec." msgstr "" -#: ppdc/sample.c:252 +#: ppdc/sample.c:243 msgid "120x60dpi" msgstr "" -#: ppdc/sample.c:258 +#: ppdc/sample.c:249 msgid "120x72dpi" msgstr "" -#: ppdc/sample.c:333 +#: ppdc/sample.c:324 msgid "13" msgstr "" -#: ppdc/sample.c:241 +#: ppdc/sample.c:232 msgid "136dpi" msgstr "" -#: ppdc/sample.c:334 +#: ppdc/sample.c:325 msgid "14" msgstr "" -#: ppdc/sample.c:335 +#: ppdc/sample.c:326 msgid "15" msgstr "" -#: ppdc/sample.c:337 +#: ppdc/sample.c:328 msgid "15 mm/sec." msgstr "" @@ -2028,187 +1961,187 @@ msgstr "" msgid "15 x 11" msgstr "" -#: ppdc/sample.c:345 +#: ppdc/sample.c:336 msgid "150 mm/sec." msgstr "" -#: ppdc/sample.c:292 +#: ppdc/sample.c:283 msgid "150dpi" msgstr "" -#: ppdc/sample.c:377 +#: ppdc/sample.c:368 msgid "16" msgstr "" -#: ppdc/sample.c:378 +#: ppdc/sample.c:369 msgid "17" msgstr "" -#: ppdc/sample.c:379 +#: ppdc/sample.c:370 msgid "18" msgstr "" -#: ppdc/sample.c:253 +#: ppdc/sample.c:244 msgid "180dpi" msgstr "" -#: ppdc/sample.c:380 +#: ppdc/sample.c:371 msgid "19" msgstr "" -#: ppdc/sample.c:322 +#: ppdc/sample.c:313 msgid "2" msgstr "" -#: ppdc/sample.c:394 +#: ppdc/sample.c:385 msgid "2 inches/sec." msgstr "" -#: ppdc/sample.c:279 +#: ppdc/sample.c:270 msgid "2-Sided Printing" msgstr "" -#: ppdc/sample.c:187 +#: ppdc/sample.c:178 msgid "2.00x0.37\"" msgstr "" -#: ppdc/sample.c:188 +#: ppdc/sample.c:179 msgid "2.00x0.50\"" msgstr "" -#: ppdc/sample.c:189 +#: ppdc/sample.c:180 msgid "2.00x1.00\"" msgstr "" -#: ppdc/sample.c:190 +#: ppdc/sample.c:181 msgid "2.00x1.25\"" msgstr "" -#: ppdc/sample.c:191 +#: ppdc/sample.c:182 msgid "2.00x2.00\"" msgstr "" -#: ppdc/sample.c:192 +#: ppdc/sample.c:183 msgid "2.00x3.00\"" msgstr "" -#: ppdc/sample.c:193 +#: ppdc/sample.c:184 msgid "2.00x4.00\"" msgstr "" -#: ppdc/sample.c:194 +#: ppdc/sample.c:185 msgid "2.00x5.50\"" msgstr "" -#: ppdc/sample.c:195 +#: ppdc/sample.c:186 msgid "2.25x0.50\"" msgstr "" -#: ppdc/sample.c:196 +#: ppdc/sample.c:187 msgid "2.25x1.25\"" msgstr "" -#: ppdc/sample.c:197 +#: ppdc/sample.c:188 msgid "2.25x4.00\"" msgstr "" -#: ppdc/sample.c:198 +#: ppdc/sample.c:189 msgid "2.25x5.50\"" msgstr "" -#: ppdc/sample.c:199 +#: ppdc/sample.c:190 msgid "2.38x5.50\"" msgstr "" -#: ppdc/sample.c:442 +#: ppdc/sample.c:433 msgid "2.5 inches/sec." msgstr "" -#: ppdc/sample.c:200 +#: ppdc/sample.c:191 msgid "2.50x1.00\"" msgstr "" -#: ppdc/sample.c:201 +#: ppdc/sample.c:192 msgid "2.50x2.00\"" msgstr "" -#: ppdc/sample.c:202 +#: ppdc/sample.c:193 msgid "2.75x1.25\"" msgstr "" -#: ppdc/sample.c:203 +#: ppdc/sample.c:194 msgid "2.9 x 1\"" msgstr "" -#: ppdc/sample.c:381 +#: ppdc/sample.c:372 msgid "20" msgstr "" -#: ppdc/sample.c:338 +#: ppdc/sample.c:329 msgid "20 mm/sec." msgstr "" -#: ppdc/sample.c:346 +#: ppdc/sample.c:337 msgid "200 mm/sec." msgstr "" -#: ppdc/sample.c:242 +#: ppdc/sample.c:233 msgid "203dpi" msgstr "" -#: ppdc/sample.c:382 +#: ppdc/sample.c:373 msgid "21" msgstr "" -#: ppdc/sample.c:383 +#: ppdc/sample.c:374 msgid "22" msgstr "" -#: ppdc/sample.c:384 +#: ppdc/sample.c:375 msgid "23" msgstr "" -#: ppdc/sample.c:385 +#: ppdc/sample.c:376 msgid "24" msgstr "" -#: ppdc/sample.c:250 +#: ppdc/sample.c:241 msgid "24-Pin Series" msgstr "" -#: ppdc/sample.c:259 +#: ppdc/sample.c:250 msgid "240x72dpi" msgstr "" -#: ppdc/sample.c:386 +#: ppdc/sample.c:377 msgid "25" msgstr "" -#: ppdc/sample.c:347 +#: ppdc/sample.c:338 msgid "250 mm/sec." msgstr "" -#: ppdc/sample.c:387 +#: ppdc/sample.c:378 msgid "26" msgstr "" -#: ppdc/sample.c:388 +#: ppdc/sample.c:379 msgid "27" msgstr "" -#: ppdc/sample.c:389 +#: ppdc/sample.c:380 msgid "28" msgstr "" -#: ppdc/sample.c:390 +#: ppdc/sample.c:381 msgid "29" msgstr "" -#: ppdc/sample.c:323 +#: ppdc/sample.c:314 msgid "3" msgstr "" -#: ppdc/sample.c:395 +#: ppdc/sample.c:386 msgid "3 inches/sec." msgstr "" @@ -2216,43 +2149,43 @@ msgstr "" msgid "3 x 5" msgstr "" -#: ppdc/sample.c:204 +#: ppdc/sample.c:195 msgid "3.00x1.00\"" msgstr "" -#: ppdc/sample.c:205 +#: ppdc/sample.c:196 msgid "3.00x1.25\"" msgstr "" -#: ppdc/sample.c:206 +#: ppdc/sample.c:197 msgid "3.00x2.00\"" msgstr "" -#: ppdc/sample.c:207 +#: ppdc/sample.c:198 msgid "3.00x3.00\"" msgstr "" -#: ppdc/sample.c:208 +#: ppdc/sample.c:199 msgid "3.00x5.00\"" msgstr "" -#: ppdc/sample.c:209 +#: ppdc/sample.c:200 msgid "3.25x2.00\"" msgstr "" -#: ppdc/sample.c:210 +#: ppdc/sample.c:201 msgid "3.25x5.00\"" msgstr "" -#: ppdc/sample.c:211 +#: ppdc/sample.c:202 msgid "3.25x5.50\"" msgstr "" -#: ppdc/sample.c:212 +#: ppdc/sample.c:203 msgid "3.25x5.83\"" msgstr "" -#: ppdc/sample.c:213 +#: ppdc/sample.c:204 msgid "3.25x7.83\"" msgstr "" @@ -2264,103 +2197,99 @@ msgstr "" msgid "3.5\" Disk" msgstr "" -#: ppdc/sample.c:180 -msgid "3.5\" Disk - 2 1/8 x 2 3/4\"" -msgstr "" - -#: ppdc/sample.c:214 +#: ppdc/sample.c:205 msgid "3.50x1.00\"" msgstr "" -#: ppdc/sample.c:391 +#: ppdc/sample.c:382 msgid "30" msgstr "" -#: ppdc/sample.c:339 +#: ppdc/sample.c:330 msgid "30 mm/sec." msgstr "" -#: ppdc/sample.c:348 +#: ppdc/sample.c:339 msgid "300 mm/sec." msgstr "" -#: ppdc/sample.c:243 +#: ppdc/sample.c:234 msgid "300dpi" msgstr "" -#: ppdc/sample.c:419 +#: ppdc/sample.c:410 msgid "35" msgstr "" -#: ppdc/sample.c:255 +#: ppdc/sample.c:246 msgid "360dpi" msgstr "" -#: ppdc/sample.c:254 +#: ppdc/sample.c:245 msgid "360x180dpi" msgstr "" -#: ppdc/sample.c:324 +#: ppdc/sample.c:315 msgid "4" msgstr "" -#: ppdc/sample.c:396 +#: ppdc/sample.c:387 msgid "4 inches/sec." msgstr "" -#: ppdc/sample.c:215 +#: ppdc/sample.c:206 msgid "4.00x1.00\"" msgstr "" -#: ppdc/sample.c:223 +#: ppdc/sample.c:214 msgid "4.00x13.00\"" msgstr "" -#: ppdc/sample.c:216 +#: ppdc/sample.c:207 msgid "4.00x2.00\"" msgstr "" -#: ppdc/sample.c:217 +#: ppdc/sample.c:208 msgid "4.00x2.50\"" msgstr "" -#: ppdc/sample.c:218 +#: ppdc/sample.c:209 msgid "4.00x3.00\"" msgstr "" -#: ppdc/sample.c:219 +#: ppdc/sample.c:210 msgid "4.00x4.00\"" msgstr "" -#: ppdc/sample.c:220 +#: ppdc/sample.c:211 msgid "4.00x5.00\"" msgstr "" -#: ppdc/sample.c:221 +#: ppdc/sample.c:212 msgid "4.00x6.00\"" msgstr "" -#: ppdc/sample.c:222 +#: ppdc/sample.c:213 msgid "4.00x6.50\"" msgstr "" -#: ppdc/sample.c:420 +#: ppdc/sample.c:411 msgid "40" msgstr "" -#: ppdc/sample.c:340 +#: ppdc/sample.c:331 msgid "40 mm/sec." msgstr "" -#: ppdc/sample.c:421 +#: ppdc/sample.c:412 msgid "45" msgstr "" -#: ppdc/sample.c:325 +#: ppdc/sample.c:316 msgid "5" msgstr "" -#: ppdc/sample.c:446 +#: ppdc/sample.c:437 msgid "5 inches/sec." msgstr "" @@ -2368,79 +2297,79 @@ msgstr "" msgid "5 x 7" msgstr "" -#: ppdc/sample.c:422 +#: ppdc/sample.c:413 msgid "50" msgstr "" -#: ppdc/sample.c:423 +#: ppdc/sample.c:414 msgid "55" msgstr "" -#: ppdc/sample.c:326 +#: ppdc/sample.c:317 msgid "6" msgstr "" -#: ppdc/sample.c:447 +#: ppdc/sample.c:438 msgid "6 inches/sec." msgstr "" -#: ppdc/sample.c:224 +#: ppdc/sample.c:215 msgid "6.00x1.00\"" msgstr "" -#: ppdc/sample.c:225 +#: ppdc/sample.c:216 msgid "6.00x2.00\"" msgstr "" -#: ppdc/sample.c:226 +#: ppdc/sample.c:217 msgid "6.00x3.00\"" msgstr "" -#: ppdc/sample.c:227 +#: ppdc/sample.c:218 msgid "6.00x4.00\"" msgstr "" -#: ppdc/sample.c:228 +#: ppdc/sample.c:219 msgid "6.00x5.00\"" msgstr "" -#: ppdc/sample.c:229 +#: ppdc/sample.c:220 msgid "6.00x6.00\"" msgstr "" -#: ppdc/sample.c:230 +#: ppdc/sample.c:221 msgid "6.00x6.50\"" msgstr "" -#: ppdc/sample.c:424 +#: ppdc/sample.c:415 msgid "60" msgstr "" -#: ppdc/sample.c:341 +#: ppdc/sample.c:332 msgid "60 mm/sec." msgstr "" -#: ppdc/sample.c:270 +#: ppdc/sample.c:261 msgid "600dpi" msgstr "" -#: ppdc/sample.c:251 +#: ppdc/sample.c:242 msgid "60dpi" msgstr "" -#: ppdc/sample.c:257 +#: ppdc/sample.c:248 msgid "60x72dpi" msgstr "" -#: ppdc/sample.c:425 +#: ppdc/sample.c:416 msgid "65" msgstr "" -#: ppdc/sample.c:327 +#: ppdc/sample.c:318 msgid "7" msgstr "" -#: ppdc/sample.c:449 +#: ppdc/sample.c:440 msgid "7 inches/sec." msgstr "" @@ -2448,23 +2377,23 @@ msgstr "" msgid "7 x 9" msgstr "" -#: ppdc/sample.c:426 +#: ppdc/sample.c:417 msgid "70" msgstr "" -#: ppdc/sample.c:261 +#: ppdc/sample.c:252 msgid "720dpi" msgstr "" -#: ppdc/sample.c:427 +#: ppdc/sample.c:418 msgid "75" msgstr "" -#: ppdc/sample.c:328 +#: ppdc/sample.c:319 msgid "8" msgstr "" -#: ppdc/sample.c:450 +#: ppdc/sample.c:441 msgid "8 inches/sec." msgstr "" @@ -2472,51 +2401,51 @@ msgstr "" msgid "8 x 10" msgstr "" -#: ppdc/sample.c:231 +#: ppdc/sample.c:222 msgid "8.00x1.00\"" msgstr "" -#: ppdc/sample.c:232 +#: ppdc/sample.c:223 msgid "8.00x2.00\"" msgstr "" -#: ppdc/sample.c:233 +#: ppdc/sample.c:224 msgid "8.00x3.00\"" msgstr "" -#: ppdc/sample.c:234 +#: ppdc/sample.c:225 msgid "8.00x4.00\"" msgstr "" -#: ppdc/sample.c:235 +#: ppdc/sample.c:226 msgid "8.00x5.00\"" msgstr "" -#: ppdc/sample.c:236 +#: ppdc/sample.c:227 msgid "8.00x6.00\"" msgstr "" -#: ppdc/sample.c:237 +#: ppdc/sample.c:228 msgid "8.00x6.50\"" msgstr "" -#: ppdc/sample.c:428 +#: ppdc/sample.c:419 msgid "80" msgstr "" -#: ppdc/sample.c:342 +#: ppdc/sample.c:333 msgid "80 mm/sec." msgstr "" -#: ppdc/sample.c:429 +#: ppdc/sample.c:420 msgid "85" msgstr "" -#: ppdc/sample.c:329 +#: ppdc/sample.c:320 msgid "9" msgstr "" -#: ppdc/sample.c:451 +#: ppdc/sample.c:442 msgid "9 inches/sec." msgstr "" @@ -2528,15 +2457,15 @@ msgstr "" msgid "9 x 12" msgstr "" -#: ppdc/sample.c:256 +#: ppdc/sample.c:247 msgid "9-Pin Series" msgstr "" -#: ppdc/sample.c:430 +#: ppdc/sample.c:421 msgid "90" msgstr "" -#: ppdc/sample.c:431 +#: ppdc/sample.c:422 msgid "95" msgstr "" @@ -2544,11 +2473,11 @@ msgstr "" msgid "?Invalid help command unknown." msgstr "" -#: cgi-bin/admin.c:2349 +#: cgi-bin/admin.c:2368 msgid "A Samba password is required to export printer drivers" msgstr "" -#: cgi-bin/admin.c:2345 +#: cgi-bin/admin.c:2364 msgid "A Samba username is required to export printer drivers" msgstr "" @@ -2702,7 +2631,7 @@ msgstr "" msgid "Accept Jobs" msgstr "" -#: cups/http-support.c:1257 +#: cups/http-support.c:1284 msgid "Accepted" msgstr "" @@ -2723,15 +2652,11 @@ msgstr "" msgid "Address" msgstr "" -#: ppdc/sample.c:172 -msgid "Address - 1 1/8 x 3 1/2\"" -msgstr "" - -#: cgi-bin/admin.c:210 cgi-bin/admin.c:284 cgi-bin/admin.c:2723 +#: cgi-bin/admin.c:210 cgi-bin/admin.c:284 cgi-bin/admin.c:2745 msgid "Administration" msgstr "" -#: ppdc/sample.c:438 +#: ppdc/sample.c:429 msgid "Always" msgstr "" @@ -2739,7 +2664,7 @@ msgstr "" msgid "AppSocket/HP JetDirect" msgstr "" -#: ppdc/sample.c:459 +#: ppdc/sample.c:450 msgid "Applicator" msgstr "" @@ -2801,7 +2726,7 @@ msgstr "" msgid "B9" msgstr "" -#: cups/dest.c:1536 +#: cups/dest.c:1533 msgid "Bad NULL dests pointer" msgstr "" @@ -2830,7 +2755,7 @@ msgstr "" msgid "Bad PPD cache file." msgstr "" -#: cups/http-support.c:1272 +#: cups/http-support.c:1299 msgid "Bad Request" msgstr "" @@ -2851,7 +2776,7 @@ msgstr "" msgid "Bad custom parameter" msgstr "" -#: cups/http-support.c:1424 scheduler/ipp.c:2362 +#: cups/http-support.c:1451 scheduler/ipp.c:2362 #, c-format msgid "Bad device-uri \"%s\"." msgstr "" @@ -2931,7 +2856,7 @@ msgstr "" msgid "Bad port-monitor \"%s\"." msgstr "" -#: cups/dest.c:626 cups/dest.c:1189 +#: cups/dest.c:621 cups/dest.c:1186 msgid "Bad printer URI." msgstr "" @@ -2958,11 +2883,11 @@ msgstr "" msgid "Bad value string" msgstr "" -#: cgi-bin/admin.c:3268 cgi-bin/admin.c:3514 +#: cgi-bin/admin.c:3290 cgi-bin/admin.c:3536 msgid "Banners" msgstr "" -#: ppdc/sample.c:296 +#: ppdc/sample.c:287 msgid "Bond Paper" msgstr "" @@ -2975,11 +2900,11 @@ msgstr "" msgid "Buffer overflow detected, aborting." msgstr "" -#: ppdc/sample.c:263 +#: ppdc/sample.c:254 msgid "CMYK" msgstr "" -#: ppdc/sample.c:372 +#: ppdc/sample.c:363 msgid "CPCL Label Printer" msgstr "" @@ -2987,7 +2912,7 @@ msgstr "" msgid "Cancel RSS Subscription" msgstr "" -#: backend/ipp.c:1903 +#: backend/ipp.c:1908 msgid "Canceling print job." msgstr "" @@ -2995,12 +2920,12 @@ msgstr "" msgid "Cannot share a remote Kerberized printer." msgstr "" -#: ppdc/sample.c:288 +#: ppdc/sample.c:279 msgid "Cassette" msgstr "" -#: cgi-bin/admin.c:1636 cgi-bin/admin.c:1778 cgi-bin/admin.c:1791 -#: cgi-bin/admin.c:1802 +#: cgi-bin/admin.c:1655 cgi-bin/admin.c:1797 cgi-bin/admin.c:1810 +#: cgi-bin/admin.c:1821 msgid "Change Settings" msgstr "" @@ -3021,11 +2946,11 @@ msgstr "" msgid "Close-Job doesn't support the job-uri attribute." msgstr "" -#: ppdc/sample.c:291 +#: ppdc/sample.c:282 msgid "Color" msgstr "" -#: ppdc/sample.c:262 +#: ppdc/sample.c:253 msgid "Color Mode" msgstr "" @@ -3040,19 +2965,19 @@ msgstr "" msgid "Community name uses indefinite length" msgstr "" -#: backend/ipp.c:779 backend/lpd.c:871 backend/socket.c:395 +#: backend/ipp.c:784 backend/lpd.c:871 backend/socket.c:395 msgid "Connected to printer." msgstr "" -#: backend/ipp.c:686 backend/lpd.c:694 backend/socket.c:314 +#: backend/ipp.c:689 backend/lpd.c:694 backend/socket.c:314 msgid "Connecting to printer." msgstr "" -#: cups/http-support.c:1245 +#: cups/http-support.c:1272 msgid "Continue" msgstr "" -#: ppdc/sample.c:374 +#: ppdc/sample.c:365 msgid "Continuous" msgstr "" @@ -3060,11 +2985,11 @@ msgstr "" msgid "Control file sent successfully." msgstr "" -#: backend/ipp.c:1223 backend/lpd.c:464 +#: backend/ipp.c:1226 backend/lpd.c:464 msgid "Copying print data." msgstr "" -#: cups/http-support.c:1254 +#: cups/http-support.c:1281 msgid "Created" msgstr "" @@ -3072,27 +2997,27 @@ msgstr "" msgid "Custom" msgstr "" -#: ppdc/sample.c:368 +#: ppdc/sample.c:359 msgid "CustominCutInterval" msgstr "" -#: ppdc/sample.c:366 +#: ppdc/sample.c:357 msgid "CustominTearInterval" msgstr "" -#: ppdc/sample.c:352 +#: ppdc/sample.c:343 msgid "Cut" msgstr "" -#: ppdc/sample.c:460 +#: ppdc/sample.c:451 msgid "Cutter" msgstr "" -#: ppdc/sample.c:248 +#: ppdc/sample.c:239 msgid "Dark" msgstr "" -#: ppdc/sample.c:244 +#: ppdc/sample.c:235 msgid "Darkness" msgstr "" @@ -3100,15 +3025,15 @@ msgstr "" msgid "Data file sent successfully." msgstr "" -#: cgi-bin/admin.c:2075 cgi-bin/admin.c:2086 cgi-bin/admin.c:2131 +#: cgi-bin/admin.c:2094 cgi-bin/admin.c:2105 cgi-bin/admin.c:2150 msgid "Delete Class" msgstr "" -#: cgi-bin/admin.c:2160 cgi-bin/admin.c:2171 cgi-bin/admin.c:2216 +#: cgi-bin/admin.c:2179 cgi-bin/admin.c:2190 cgi-bin/admin.c:2235 msgid "Delete Printer" msgstr "" -#: ppdc/sample.c:290 +#: ppdc/sample.c:281 msgid "DeskJet Series" msgstr "" @@ -3128,7 +3053,7 @@ msgid "" " location = %s" msgstr "" -#: ppdc/sample.c:445 +#: ppdc/sample.c:436 msgid "Direct Thermal Media" msgstr "" @@ -3157,7 +3082,7 @@ msgstr "" msgid "Directory \"%s\" permissions OK (0%o/uid=%d/gid=%d)." msgstr "" -#: ppdc/sample.c:354 +#: ppdc/sample.c:345 msgid "Disabled" msgstr "" @@ -3166,25 +3091,25 @@ msgstr "" msgid "Document #%d does not exist in job #%d." msgstr "" -#: ppdc/sample.c:284 +#: ppdc/sample.c:275 msgid "Duplexer" msgstr "" -#: ppdc/sample.c:238 +#: ppdc/sample.c:229 msgid "Dymo" msgstr "" -#: ppdc/sample.c:440 +#: ppdc/sample.c:431 msgid "EPL1 Label Printer" msgstr "" -#: ppdc/sample.c:443 +#: ppdc/sample.c:434 msgid "EPL2 Label Printer" msgstr "" -#: cgi-bin/admin.c:1830 cgi-bin/admin.c:1842 cgi-bin/admin.c:1896 -#: cgi-bin/admin.c:1903 cgi-bin/admin.c:1938 cgi-bin/admin.c:1951 -#: cgi-bin/admin.c:1975 cgi-bin/admin.c:2048 +#: cgi-bin/admin.c:1849 cgi-bin/admin.c:1861 cgi-bin/admin.c:1915 +#: cgi-bin/admin.c:1922 cgi-bin/admin.c:1957 cgi-bin/admin.c:1970 +#: cgi-bin/admin.c:1994 cgi-bin/admin.c:2067 msgid "Edit Configuration File" msgstr "" @@ -3193,7 +3118,7 @@ msgid "Empty PPD file." msgstr "" #. TRANSLATORS: Banner/cover sheet after the print job. -#: cgi-bin/admin.c:3539 +#: cgi-bin/admin.c:3561 msgid "Ending Banner" msgstr "" @@ -3213,7 +3138,7 @@ msgstr "" msgid "Enter password:" msgstr "" -#: scheduler/client.c:2498 +#: scheduler/client.c:2427 msgid "Enter your username and password or the root username and password to access this page. If you are using Kerberos authentication, make sure you have a valid Kerberos ticket." msgstr "" @@ -3305,7 +3230,7 @@ msgstr "" msgid "Envelope DL" msgstr "" -#: ppdc/sample.c:278 +#: ppdc/sample.c:269 msgid "Envelope Feed" msgstr "" @@ -3429,11 +3354,11 @@ msgstr "" msgid "Envelope You4 Long Edge" msgstr "" -#: ppdc/sample.c:249 +#: ppdc/sample.c:240 msgid "Epson" msgstr "" -#: cgi-bin/admin.c:3582 +#: cgi-bin/admin.c:3604 msgid "Error Policy" msgstr "" @@ -3446,43 +3371,43 @@ msgstr "" msgid "Error: need hostname after \"-h\" option." msgstr "" -#: ppdc/sample.c:364 +#: ppdc/sample.c:355 msgid "Every 10 Labels" msgstr "" -#: ppdc/sample.c:356 +#: ppdc/sample.c:347 msgid "Every 2 Labels" msgstr "" -#: ppdc/sample.c:357 +#: ppdc/sample.c:348 msgid "Every 3 Labels" msgstr "" -#: ppdc/sample.c:358 +#: ppdc/sample.c:349 msgid "Every 4 Labels" msgstr "" -#: ppdc/sample.c:359 +#: ppdc/sample.c:350 msgid "Every 5 Labels" msgstr "" -#: ppdc/sample.c:360 +#: ppdc/sample.c:351 msgid "Every 6 Labels" msgstr "" -#: ppdc/sample.c:361 +#: ppdc/sample.c:352 msgid "Every 7 Labels" msgstr "" -#: ppdc/sample.c:362 +#: ppdc/sample.c:353 msgid "Every 8 Labels" msgstr "" -#: ppdc/sample.c:363 +#: ppdc/sample.c:354 msgid "Every 9 Labels" msgstr "" -#: ppdc/sample.c:355 +#: ppdc/sample.c:346 msgid "Every Label" msgstr "" @@ -3490,11 +3415,11 @@ msgstr "" msgid "Executive" msgstr "" -#: cups/http-support.c:1300 +#: cups/http-support.c:1327 msgid "Expectation Failed" msgstr "" -#: cgi-bin/admin.c:2337 cgi-bin/admin.c:2356 +#: cgi-bin/admin.c:2356 cgi-bin/admin.c:2375 msgid "Export Printers to Samba" msgstr "" @@ -3546,11 +3471,7 @@ msgid "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)." msgstr "" #: ppdc/sample.c:169 -msgid "File Folder" -msgstr "" - -#: ppdc/sample.c:178 -msgid "File Folder - 9/16 x 3 7/16\"" +msgid "File Folder " msgstr "" #: scheduler/ipp.c:2382 @@ -3568,7 +3489,7 @@ msgstr "" msgid "Folio" msgstr "" -#: cups/http-support.c:1279 +#: cups/http-support.c:1306 msgid "Forbidden" msgstr "" @@ -3576,7 +3497,7 @@ msgstr "" msgid "General" msgstr "" -#: ppdc/sample.c:268 +#: ppdc/sample.c:259 msgid "Generic" msgstr "" @@ -3584,7 +3505,7 @@ msgstr "" msgid "Get-Response-PDU uses indefinite length" msgstr "" -#: ppdc/sample.c:299 +#: ppdc/sample.c:290 msgid "Glossy Paper" msgstr "" @@ -3595,11 +3516,11 @@ msgstr "" msgid "Got a printer-uri attribute but no job-id." msgstr "" -#: ppdc/sample.c:264 +#: ppdc/sample.c:255 msgid "Grayscale" msgstr "" -#: ppdc/sample.c:289 +#: ppdc/sample.c:280 msgid "HP" msgstr "" @@ -3607,83 +3528,83 @@ msgstr "" msgid "Hanging Folder" msgstr "" -#: ppdc/sample.c:179 -msgid "Hanging Folder - 9/16 x 2\"" +#: cgi-bin/help.c:143 +msgid "Help file not in index." msgstr "" -#: cups/ipp.c:2677 cups/ipp.c:2704 cups/ipp.c:2727 +#: cups/ipp.c:2687 cups/ipp.c:2714 cups/ipp.c:2737 msgid "IPP 1setOf attribute with incompatible value tags." msgstr "" -#: cups/ipp.c:2640 +#: cups/ipp.c:2650 msgid "IPP attribute has no name." msgstr "" -#: cups/ipp.c:5519 +#: cups/ipp.c:5525 msgid "IPP attribute is not a member of the message." msgstr "" -#: cups/ipp.c:3067 +#: cups/ipp.c:3077 msgid "IPP begCollection value not 0 bytes." msgstr "" -#: cups/ipp.c:2863 +#: cups/ipp.c:2873 msgid "IPP boolean value not 1 byte." msgstr "" -#: cups/ipp.c:2921 +#: cups/ipp.c:2931 msgid "IPP date value not 11 bytes." msgstr "" -#: cups/ipp.c:3088 +#: cups/ipp.c:3098 msgid "IPP endCollection value not 0 bytes." msgstr "" -#: cups/ipp.c:2838 +#: cups/ipp.c:2848 msgid "IPP enum value not 4 bytes." msgstr "" -#: cups/ipp.c:2569 +#: cups/ipp.c:2579 msgid "IPP extension tag larger than 0x7FFFFFFF." msgstr "" -#: cups/ipp.c:2835 +#: cups/ipp.c:2845 msgid "IPP integer value not 4 bytes." msgstr "" -#: cups/ipp.c:3030 +#: cups/ipp.c:3040 msgid "IPP language length overflows value." msgstr "" -#: cups/ipp.c:2754 +#: cups/ipp.c:2764 msgid "IPP member name is not empty." msgstr "" -#: cups/ipp.c:2623 +#: cups/ipp.c:2633 msgid "IPP name larger than 32767 bytes." msgstr "" -#: cups/ipp.c:2997 +#: cups/ipp.c:3007 msgid "IPP nameWithLanguage value less than minimum 4 bytes." msgstr "" -#: cups/ipp.c:2966 +#: cups/ipp.c:2976 msgid "IPP rangeOfInteger value not 8 bytes." msgstr "" -#: cups/ipp.c:2939 +#: cups/ipp.c:2949 msgid "IPP resolution value not 9 bytes." msgstr "" -#: cups/ipp.c:3047 +#: cups/ipp.c:3057 msgid "IPP string length overflows value." msgstr "" -#: cups/ipp.c:2993 +#: cups/ipp.c:3003 msgid "IPP textWithLanguage value less than minimum 4 bytes." msgstr "" -#: cups/ipp.c:2821 +#: cups/ipp.c:2831 msgid "IPP value larger than 32767 bytes." msgstr "" @@ -3711,23 +3632,23 @@ msgstr "" msgid "Illegal whitespace character" msgstr "" -#: ppdc/sample.c:283 +#: ppdc/sample.c:274 msgid "Installable Options" msgstr "" -#: ppdc/sample.c:286 +#: ppdc/sample.c:277 msgid "Installed" msgstr "" -#: ppdc/sample.c:302 +#: ppdc/sample.c:293 msgid "IntelliBar Label Printer" msgstr "" -#: ppdc/sample.c:301 +#: ppdc/sample.c:292 msgid "Intellitech" msgstr "" -#: cups/http-support.c:1306 +#: cups/http-support.c:1333 msgid "Internal Server Error" msgstr "" @@ -3739,18 +3660,10 @@ msgstr "" msgid "Internet Postage 2-Part" msgstr "" -#: ppdc/sample.c:176 -msgid "Internet Postage 2-Part - 2 1/4 x 7 1/2\"" -msgstr "" - #: ppdc/sample.c:168 msgid "Internet Postage 3-Part" msgstr "" -#: ppdc/sample.c:177 -msgid "Internet Postage 3-Part - 2 1/4 x 7\"" -msgstr "" - #: backend/ipp.c:305 msgid "Internet Printing Protocol" msgstr "" @@ -3895,7 +3808,7 @@ msgid "Job is completed and cannot be changed." msgstr "" #: cgi-bin/jobs.c:198 -msgid "Job operation failed:" +msgid "Job operation failed" msgstr "" #: scheduler/ipp.c:10798 scheduler/ipp.c:10817 scheduler/ipp.c:10828 @@ -3914,11 +3827,11 @@ msgstr "" msgid "LPD/LPR Host or Printer" msgstr "" -#: ppdc/sample.c:239 +#: ppdc/sample.c:230 msgid "Label Printer" msgstr "" -#: ppdc/sample.c:455 +#: ppdc/sample.c:446 msgid "Label Top" msgstr "" @@ -3931,11 +3844,7 @@ msgstr "" msgid "Large Address" msgstr "" -#: ppdc/sample.c:173 -msgid "Large Address - 1 4/10 x 3 1/2\"" -msgstr "" - -#: ppdc/sample.c:300 +#: ppdc/sample.c:291 msgid "LaserJet Series PCL 4/5" msgstr "" @@ -3947,7 +3856,7 @@ msgstr "" msgid "Letter Oversize Long Edge" msgstr "" -#: ppdc/sample.c:245 +#: ppdc/sample.c:236 msgid "Light" msgstr "" @@ -3955,19 +3864,19 @@ msgstr "" msgid "Line longer than the maximum allowed (255 characters)" msgstr "" -#: cgi-bin/admin.c:2374 +#: cgi-bin/admin.c:2393 msgid "List Available Printers" msgstr "" -#: ppdc/sample.c:281 +#: ppdc/sample.c:272 msgid "Long-Edge (Portrait)" msgstr "" -#: cups/http-support.c:1525 +#: cups/http-support.c:1558 msgid "Looking for printer." msgstr "" -#: ppdc/sample.c:277 +#: ppdc/sample.c:268 msgid "Manual Feed" msgstr "" @@ -3975,19 +3884,19 @@ msgstr "" msgid "Media Size" msgstr "" -#: cups/ppd.c:793 cups/ppd.c:1361 ppdc/sample.c:271 +#: cups/ppd.c:793 cups/ppd.c:1361 ppdc/sample.c:262 msgid "Media Source" msgstr "" -#: ppdc/sample.c:373 +#: ppdc/sample.c:364 msgid "Media Tracking" msgstr "" -#: cups/ppd.c:791 cups/ppd.c:1359 ppdc/sample.c:294 +#: cups/ppd.c:791 cups/ppd.c:1359 ppdc/sample.c:285 msgid "Media Type" msgstr "" -#: ppdc/sample.c:246 +#: ppdc/sample.c:237 msgid "Medium" msgstr "" @@ -4016,9 +3925,9 @@ msgstr "" msgid "Missing double quote on line %d." msgstr "" -#: cgi-bin/admin.c:736 cgi-bin/admin.c:2087 cgi-bin/admin.c:2172 -#: cgi-bin/admin.c:2763 cgi-bin/admin.c:3017 cgi-bin/admin.c:3128 -#: cgi-bin/admin.c:3838 +#: cgi-bin/admin.c:736 cgi-bin/admin.c:2106 cgi-bin/admin.c:2191 +#: cgi-bin/admin.c:2785 cgi-bin/admin.c:3039 cgi-bin/admin.c:3150 +#: cgi-bin/admin.c:3860 msgid "Missing form variable" msgstr "" @@ -4026,11 +3935,11 @@ msgstr "" msgid "Missing last-document attribute in request." msgstr "" -#: cups/pwg-media.c:473 +#: cups/pwg-media.c:474 msgid "Missing media or media-col." msgstr "" -#: cups/pwg-media.c:392 +#: cups/pwg-media.c:393 msgid "Missing media-size in media-col." msgstr "" @@ -4059,11 +3968,11 @@ msgstr "" msgid "Missing value string" msgstr "" -#: cups/pwg-media.c:380 +#: cups/pwg-media.c:381 msgid "Missing x-dimension in media-size." msgstr "" -#: cups/pwg-media.c:386 +#: cups/pwg-media.c:387 msgid "Missing y-dimension in media-size." msgstr "" @@ -4092,7 +4001,7 @@ msgstr "" msgid "Move Job" msgstr "" -#: cups/http-support.c:1263 +#: cups/http-support.c:1290 msgid "Moved Permanently" msgstr "" @@ -4108,15 +4017,15 @@ msgstr "" msgid "Nested classes are not allowed." msgstr "" -#: ppdc/sample.c:439 +#: ppdc/sample.c:430 msgid "Never" msgstr "" -#: ppdc/sample.c:265 +#: ppdc/sample.c:256 msgid "New Stylus Color Series" msgstr "" -#: ppdc/sample.c:267 +#: ppdc/sample.c:258 msgid "New Stylus Photo Series" msgstr "" @@ -4124,7 +4033,7 @@ msgstr "" msgid "No" msgstr "" -#: cups/http-support.c:1260 +#: cups/http-support.c:1287 msgid "No Content" msgstr "" @@ -4140,7 +4049,7 @@ msgstr "" msgid "No Windows printer drivers are installed." msgstr "" -#: cups/request.c:571 cups/request.c:914 +#: cups/request.c:571 cups/request.c:913 msgid "No active connection" msgstr "" @@ -4234,35 +4143,35 @@ msgstr "" msgid "No version number" msgstr "" -#: ppdc/sample.c:376 +#: ppdc/sample.c:367 msgid "Non-continuous (Mark sensing)" msgstr "" -#: ppdc/sample.c:375 +#: ppdc/sample.c:366 msgid "Non-continuous (Web sensing)" msgstr "" -#: ppdc/sample.c:247 +#: ppdc/sample.c:238 msgid "Normal" msgstr "" -#: cups/http-support.c:1282 +#: cups/http-support.c:1309 msgid "Not Found" msgstr "" -#: cups/http-support.c:1294 +#: cups/http-support.c:1321 msgid "Not Implemented" msgstr "" -#: ppdc/sample.c:285 +#: ppdc/sample.c:276 msgid "Not Installed" msgstr "" -#: cups/http-support.c:1269 +#: cups/http-support.c:1296 msgid "Not Modified" msgstr "" -#: cups/http-support.c:1297 +#: cups/http-support.c:1324 msgid "Not Supported" msgstr "" @@ -4278,19 +4187,19 @@ msgstr "" msgid "Note: this program only validates the DSC comments, not the PostScript itself." msgstr "" -#: cups/http-support.c:1251 cups/ppd.c:338 +#: cups/http-support.c:1278 cups/ppd.c:338 msgid "OK" msgstr "" -#: ppdc/sample.c:280 +#: ppdc/sample.c:271 msgid "Off (1-Sided)" msgstr "" -#: ppdc/sample.c:370 +#: ppdc/sample.c:361 msgid "Oki" msgstr "" -#: cgi-bin/help.c:90 cgi-bin/help.c:131 cgi-bin/help.c:141 cgi-bin/help.c:172 +#: cgi-bin/help.c:91 cgi-bin/help.c:132 cgi-bin/help.c:142 cgi-bin/help.c:172 msgid "Online Help" msgstr "" @@ -4307,7 +4216,7 @@ msgstr "" msgid "OpenUI/JCLOpenUI without a CloseUI/JCLCloseUI first" msgstr "" -#: cgi-bin/admin.c:3609 +#: cgi-bin/admin.c:3631 msgid "Operation Policy" msgstr "" @@ -4316,15 +4225,14 @@ msgstr "" msgid "Option \"%s\" cannot be included via %%%%IncludeFeature." msgstr "" -#: cgi-bin/admin.c:3259 cgi-bin/admin.c:3343 +#: cgi-bin/admin.c:3281 cgi-bin/admin.c:3365 msgid "Options Installed" msgstr "" -#: scheduler/cupsfilter.c:1438 scheduler/cupsfilter.c:1465 -#: scheduler/main.c:2019 systemv/cupsaddsmb.c:284 systemv/cupsctl.c:203 -#: systemv/cupstestdsc.c:429 systemv/cupstestppd.c:3796 test/ipptool.c:4336 -#: ppdc/ppdc.cxx:437 ppdc/ppdhtml.cxx:174 ppdc/ppdi.cxx:130 -#: ppdc/ppdmerge.cxx:369 ppdc/ppdpo.cxx:254 +#: scheduler/cupsfilter.c:1430 scheduler/main.c:2018 systemv/cupsaddsmb.c:284 +#: systemv/cupsctl.c:203 systemv/cupstestdsc.c:429 systemv/cupstestppd.c:3797 +#: test/ipptool.c:4336 ppdc/ppdc.cxx:437 ppdc/ppdhtml.cxx:174 +#: ppdc/ppdi.cxx:130 ppdc/ppdmerge.cxx:369 ppdc/ppdpo.cxx:254 msgid "Options:" msgstr "" @@ -4364,7 +4272,7 @@ msgstr "" msgid "PASS" msgstr "" -#: ppdc/sample.c:269 +#: ppdc/sample.c:260 msgid "PCL Laser Printer" msgstr "" @@ -4400,11 +4308,11 @@ msgstr "" msgid "Packet does not start with SEQUENCE" msgstr "" -#: ppdc/sample.c:369 +#: ppdc/sample.c:360 msgid "ParamCustominCutInterval" msgstr "" -#: ppdc/sample.c:367 +#: ppdc/sample.c:358 msgid "ParamCustominTearInterval" msgstr "" @@ -4426,7 +4334,7 @@ msgstr "" msgid "Pause Printer" msgstr "" -#: ppdc/sample.c:457 +#: ppdc/sample.c:448 msgid "Peel-Off" msgstr "" @@ -4438,19 +4346,19 @@ msgstr "" msgid "Photo Labels" msgstr "" -#: ppdc/sample.c:295 +#: ppdc/sample.c:286 msgid "Plain Paper" msgstr "" -#: cgi-bin/admin.c:3277 cgi-bin/admin.c:3558 +#: cgi-bin/admin.c:3299 cgi-bin/admin.c:3580 msgid "Policies" msgstr "" -#: cgi-bin/admin.c:3284 cgi-bin/admin.c:3627 cgi-bin/admin.c:3640 +#: cgi-bin/admin.c:3306 cgi-bin/admin.c:3649 cgi-bin/admin.c:3662 msgid "Port Monitor" msgstr "" -#: ppdc/sample.c:287 +#: ppdc/sample.c:278 msgid "PostScript Printer" msgstr "" @@ -4470,7 +4378,7 @@ msgstr "" msgid "Postcard Long Edge" msgstr "" -#: ppdc/sample.c:304 +#: ppdc/sample.c:295 msgid "Print Density" msgstr "" @@ -4478,11 +4386,11 @@ msgstr "" msgid "Print Job:" msgstr "" -#: ppdc/sample.c:349 +#: ppdc/sample.c:340 msgid "Print Mode" msgstr "" -#: ppdc/sample.c:392 +#: ppdc/sample.c:383 msgid "Print Rate" msgstr "" @@ -4490,7 +4398,7 @@ msgstr "" msgid "Print Self-Test Page" msgstr "" -#: ppdc/sample.c:336 +#: ppdc/sample.c:327 msgid "Print Speed" msgstr "" @@ -4498,32 +4406,36 @@ msgstr "" msgid "Print Test Page" msgstr "" -#: ppdc/sample.c:365 +#: ppdc/sample.c:356 msgid "Print and Cut" msgstr "" -#: ppdc/sample.c:353 +#: ppdc/sample.c:344 msgid "Print and Tear" msgstr "" -#: backend/ipp.c:1523 +#: backend/ipp.c:1526 #, c-format msgid "Print file accepted - job ID %d." msgstr "" -#: backend/ipp.c:1513 +#: backend/ipp.c:1516 msgid "Print file accepted - job ID unknown." msgstr "" -#: backend/socket.c:424 backend/usb-unix.c:195 +#: backend/socket.c:424 backend/usb-unix.c:191 msgid "Print file sent." msgstr "" -#: backend/ipp.c:1474 +#: backend/ipp.c:1477 msgid "Print file was not accepted." msgstr "" -#: backend/ipp.c:1875 +#: backend/ipp.c:1882 +msgid "Print job canceled at printer." +msgstr "" + +#: backend/ipp.c:1880 msgid "Print job too large." msgstr "" @@ -4531,7 +4443,7 @@ msgstr "" msgid "Printer Added" msgstr "" -#: ppdc/sample.c:272 +#: ppdc/sample.c:263 msgid "Printer Default" msgstr "" @@ -4547,47 +4459,10 @@ msgstr "" msgid "Printer Paused" msgstr "" -#: ppdc/sample.c:303 +#: ppdc/sample.c:294 msgid "Printer Settings" msgstr "" -#: backend/usb-unix.c:132 -msgid "Printer busy, will retry in 10 seconds." -msgstr "" - -#: backend/lpd.c:619 backend/lpd.c:1009 backend/lpd.c:1091 backend/lpd.c:1141 -msgid "Printer did not respond." -msgstr "" - -#: backend/ipp.c:885 backend/ipp.c:892 -#, c-format -msgid "Printer does not support IPP/%d.%d, trying IPP/%s." -msgstr "" - -#: backend/usb-unix.c:429 backend/usb-unix.c:513 -msgid "Printer is busy, will retry in 5 seconds." -msgstr "" - -#: backend/runloop.c:253 backend/runloop.c:371 -msgid "Printer is not currently connected." -msgstr "" - -#: backend/runloop.c:392 -msgid "Printer is now connected." -msgstr "" - -#: backend/usb-darwin.c:1286 -msgid "Printer is now online." -msgstr "" - -#: backend/usb-darwin.c:1307 -msgid "Printer is offline." -msgstr "" - -#: backend/usb-unix.c:139 -msgid "Printer not connected, will retry in 30 seconds." -msgstr "" - #: cups/notify.c:126 msgid "Printer:" msgstr "" @@ -4623,11 +4498,6 @@ msgstr "" msgid "Rank Owner Pri Job Files Total Size" msgstr "" -#: backend/ipp.c:1882 backend/socket.c:475 filter/rastertoepson.c:1152 -#: filter/rastertohp.c:881 filter/rastertolabel.c:1307 -msgid "Ready to print." -msgstr "" - #: cgi-bin/classes.c:171 cgi-bin/printers.c:174 msgid "Reject Jobs" msgstr "" @@ -4642,15 +4512,15 @@ msgstr "" msgid "Remote host did not accept data file (%d)." msgstr "" -#: ppdc/sample.c:437 +#: ppdc/sample.c:428 msgid "Reprint After Error" msgstr "" -#: cups/http-support.c:1285 +#: cups/http-support.c:1312 msgid "Request Entity Too Large" msgstr "" -#: cups/ppd.c:797 cups/ppd.c:1365 ppdc/sample.c:240 +#: cups/ppd.c:797 cups/ppd.c:1365 ppdc/sample.c:231 msgid "Resolution" msgstr "" @@ -4666,11 +4536,7 @@ msgstr "" msgid "Return Address" msgstr "" -#: ppdc/sample.c:174 -msgid "Return Address - 3/4 x 2\"" -msgstr "" - -#: ppdc/sample.c:458 +#: ppdc/sample.c:449 msgid "Rewind" msgstr "" @@ -4683,11 +4549,11 @@ msgstr "" msgid "SEQUENCE uses indefinite length" msgstr "" -#: cups/http-support.c:1309 +#: cups/http-support.c:1336 msgid "SSL/TLS Negotiation Error" msgstr "" -#: cups/http-support.c:1266 +#: cups/http-support.c:1293 msgid "See Other" msgstr "" @@ -4711,28 +4577,28 @@ msgstr "" msgid "Server Stopped" msgstr "" -#: cups/http-support.c:1303 +#: cups/http-support.c:1330 msgid "Service Unavailable" msgstr "" -#: cgi-bin/admin.c:2764 cgi-bin/admin.c:2810 cgi-bin/admin.c:2967 -#: cgi-bin/admin.c:2986 +#: cgi-bin/admin.c:2786 cgi-bin/admin.c:2832 cgi-bin/admin.c:2989 +#: cgi-bin/admin.c:3008 msgid "Set Allowed Users" msgstr "" -#: cgi-bin/admin.c:3013 +#: cgi-bin/admin.c:3035 msgid "Set As Server Default" msgstr "" -#: cgi-bin/admin.c:3113 +#: cgi-bin/admin.c:3135 msgid "Set Class Options" msgstr "" -#: cgi-bin/admin.c:3113 cgi-bin/admin.c:3287 cgi-bin/admin.c:3669 +#: cgi-bin/admin.c:3135 cgi-bin/admin.c:3309 cgi-bin/admin.c:3691 msgid "Set Printer Options" msgstr "" -#: cgi-bin/admin.c:3839 cgi-bin/admin.c:3883 cgi-bin/admin.c:3901 +#: cgi-bin/admin.c:3861 cgi-bin/admin.c:3905 cgi-bin/admin.c:3923 msgid "Set Publishing" msgstr "" @@ -4740,15 +4606,11 @@ msgstr "" msgid "Shipping Address" msgstr "" -#: ppdc/sample.c:175 -msgid "Shipping Address - 2 5/16 x 4\"" -msgstr "" - -#: ppdc/sample.c:282 +#: ppdc/sample.c:273 msgid "Short-Edge (Landscape)" msgstr "" -#: ppdc/sample.c:297 +#: ppdc/sample.c:288 msgid "Special Paper" msgstr "" @@ -4757,12 +4619,12 @@ msgstr "" msgid "Spooling job, %.0f%% complete." msgstr "" -#: ppdc/sample.c:350 +#: ppdc/sample.c:341 msgid "Standard" msgstr "" #. TRANSLATORS: Banner/cover sheet before the print job. -#: cgi-bin/admin.c:3530 +#: cgi-bin/admin.c:3552 msgid "Starting Banner" msgstr "" @@ -4776,11 +4638,11 @@ msgstr "" msgid "Statement" msgstr "" -#: ppdc/sample.c:260 +#: ppdc/sample.c:251 msgid "Stylus Color Series" msgstr "" -#: ppdc/sample.c:266 +#: ppdc/sample.c:257 msgid "Stylus Photo Series" msgstr "" @@ -4802,7 +4664,7 @@ msgstr "" msgid "Super B/A3" msgstr "" -#: cups/http-support.c:1248 +#: cups/http-support.c:1275 msgid "Switching Protocols" msgstr "" @@ -4818,15 +4680,15 @@ msgstr "" msgid "Tabloid Oversize Long Edge" msgstr "" -#: ppdc/sample.c:351 +#: ppdc/sample.c:342 msgid "Tear" msgstr "" -#: ppdc/sample.c:456 +#: ppdc/sample.c:447 msgid "Tear-Off" msgstr "" -#: ppdc/sample.c:397 +#: ppdc/sample.c:388 msgid "Tear-Off Adjust Position" msgstr "" @@ -4916,24 +4778,46 @@ msgstr "" msgid "The paper tray needs to be filled." msgstr "" -#: backend/ipp.c:902 +#: backend/ipp.c:907 msgid "The printer URI is incorrect or no longer exists." msgstr "" -#: backend/ipp.c:752 backend/ipp.c:867 backend/ipp.c:973 backend/ipp.c:1302 -#: backend/ipp.c:1450 backend/lpd.c:828 backend/socket.c:374 -msgid "The printer is busy." +#: backend/lpd.c:619 backend/lpd.c:1009 backend/lpd.c:1091 backend/lpd.c:1141 +msgid "The printer did not respond." +msgstr "" + +#: backend/ipp.c:890 backend/ipp.c:897 +#, c-format +msgid "The printer does not support IPP/%d.%d, trying IPP/%s." msgstr "" -#: cups/localize.c:311 +#: backend/ipp.c:755 backend/ipp.c:872 backend/ipp.c:978 backend/ipp.c:1305 +#: backend/ipp.c:1453 backend/lpd.c:828 backend/socket.c:374 +#: backend/usb-unix.c:131 backend/usb-unix.c:424 backend/usb-unix.c:507 +msgid "The printer is in use." +msgstr "" + +#: backend/runloop.c:254 backend/runloop.c:373 cups/localize.c:311 msgid "The printer is not connected." msgstr "" -#: backend/ipp.c:730 backend/ipp.c:763 backend/ipp.c:863 backend/lpd.c:807 +#: backend/ipp.c:733 backend/ipp.c:766 backend/ipp.c:868 backend/lpd.c:807 #: backend/lpd.c:848 backend/socket.c:353 backend/socket.c:386 msgid "The printer is not responding." msgstr "" +#: backend/runloop.c:395 +msgid "The printer is now connected." +msgstr "" + +#: backend/usb-darwin.c:1286 +msgid "The printer is now online." +msgstr "" + +#: backend/usb-darwin.c:1307 +msgid "The printer is offline." +msgstr "" + #: cups/localize.c:335 msgid "The printer is running low on ink." msgstr "" @@ -4942,7 +4826,7 @@ msgstr "" msgid "The printer is running low on toner." msgstr "" -#: backend/ipp.c:745 backend/lpd.c:821 backend/socket.c:367 +#: backend/ipp.c:748 backend/lpd.c:821 backend/socket.c:367 msgid "The printer is unreachable at this time." msgstr "" @@ -4954,7 +4838,7 @@ msgstr "" msgid "The printer may be out of toner." msgstr "" -#: backend/ipp.c:739 backend/lpd.c:815 backend/socket.c:361 +#: backend/ipp.c:742 backend/lpd.c:815 backend/socket.c:361 msgid "The printer may not exist or is unavailable at this time." msgstr "" @@ -5018,7 +4902,7 @@ msgstr "" msgid "The subscription name may not contain spaces, slashes (/), question marks (?), or the pound sign (#)." msgstr "" -#: scheduler/client.c:2521 +#: scheduler/client.c:2450 msgid "The web interface is currently disabled. Run \"cupsctl WebInterface=yes\" to enable it." msgstr "" @@ -5040,7 +4924,7 @@ msgstr "" msgid "There was an unrecoverable USB error." msgstr "" -#: ppdc/sample.c:444 +#: ppdc/sample.c:435 msgid "Thermal Transfer Media" msgstr "" @@ -5058,31 +4942,31 @@ msgstr "" msgid "Too many printer-state-reasons values (%d > %d)." msgstr "" -#: ppdc/sample.c:298 +#: ppdc/sample.c:289 msgid "Transparency" msgstr "" -#: ppdc/sample.c:293 +#: ppdc/sample.c:284 msgid "Tray" msgstr "" -#: ppdc/sample.c:273 +#: ppdc/sample.c:264 msgid "Tray 1" msgstr "" -#: ppdc/sample.c:274 +#: ppdc/sample.c:265 msgid "Tray 2" msgstr "" -#: ppdc/sample.c:275 +#: ppdc/sample.c:266 msgid "Tray 3" msgstr "" -#: ppdc/sample.c:276 +#: ppdc/sample.c:267 msgid "Tray 4" msgstr "" -#: cups/http-support.c:1288 +#: cups/http-support.c:1315 msgid "URI Too Long" msgstr "" @@ -5118,19 +5002,23 @@ msgstr "" msgid "US Letter Small" msgstr "" -#: cgi-bin/admin.c:1940 cgi-bin/admin.c:1953 cgi-bin/admin.c:1977 -msgid "Unable to access cupsd.conf file:" +#: cgi-bin/admin.c:1959 cgi-bin/admin.c:1972 cgi-bin/admin.c:1996 +msgid "Unable to access cupsd.conf file" +msgstr "" + +#: cgi-bin/help.c:133 +msgid "Unable to access help file." msgstr "" #: cgi-bin/admin.c:526 -msgid "Unable to add RSS subscription:" +msgid "Unable to add RSS subscription" msgstr "" #: cgi-bin/admin.c:814 -msgid "Unable to add class:" +msgid "Unable to add class" msgstr "" -#: backend/ipp.c:1620 +#: backend/ipp.c:1624 msgid "Unable to add document to print job." msgstr "" @@ -5140,7 +5028,7 @@ msgid "Unable to add job for destination \"%s\"." msgstr "" #: cgi-bin/admin.c:1059 cgi-bin/admin.c:1419 -msgid "Unable to add printer:" +msgid "Unable to add printer" msgstr "" #: scheduler/ipp.c:1258 @@ -5156,34 +5044,34 @@ msgid "Unable to allocate memory for pages array" msgstr "" #: cgi-bin/admin.c:1525 -msgid "Unable to cancel RSS subscription:" +msgid "Unable to cancel RSS subscription" msgstr "" -#: backend/ipp.c:1924 +#: backend/ipp.c:1929 msgid "Unable to cancel print job." msgstr "" -#: cgi-bin/admin.c:3884 -msgid "Unable to change printer-is-shared attribute:" +#: cgi-bin/admin.c:2990 +msgid "Unable to change printer" msgstr "" -#: cgi-bin/admin.c:2968 -msgid "Unable to change printer:" +#: cgi-bin/admin.c:3906 +msgid "Unable to change printer-is-shared attribute" msgstr "" -#: cgi-bin/admin.c:1638 cgi-bin/admin.c:1780 -msgid "Unable to change server settings:" +#: cgi-bin/admin.c:1657 cgi-bin/admin.c:1799 +msgid "Unable to change server settings" msgstr "" -#: filter/commandtops.c:421 +#: filter/commandtops.c:420 msgid "Unable to configure printer options." msgstr "" -#: cups/adminutil.c:911 cups/request.c:1022 +#: cups/adminutil.c:911 cups/request.c:1021 msgid "Unable to connect to host." msgstr "" -#: backend/ipp.c:708 backend/ipp.c:1123 backend/lpd.c:787 backend/socket.c:333 +#: backend/ipp.c:711 backend/ipp.c:1131 backend/lpd.c:787 backend/socket.c:333 #: backend/usb-unix.c:117 msgid "Unable to contact printer, queuing on next printer in class." msgstr "" @@ -5227,7 +5115,7 @@ msgstr "" msgid "Unable to copy interface script - %s" msgstr "" -#: backend/ipp.c:2016 +#: backend/ipp.c:2021 msgid "Unable to create compressed print file" msgstr "" @@ -5235,59 +5123,55 @@ msgstr "" msgid "Unable to create printer-uri" msgstr "" -#: scheduler/cupsfilter.c:1242 +#: cgi-bin/admin.c:1850 cgi-bin/admin.c:1862 scheduler/cupsfilter.c:1236 msgid "Unable to create temporary file" msgstr "" -#: cgi-bin/admin.c:1831 cgi-bin/admin.c:1843 -msgid "Unable to create temporary file:" -msgstr "" - -#: cgi-bin/admin.c:2134 -msgid "Unable to delete class:" +#: cgi-bin/admin.c:2153 +msgid "Unable to delete class" msgstr "" -#: cgi-bin/admin.c:2219 -msgid "Unable to delete printer:" +#: cgi-bin/admin.c:2238 +msgid "Unable to delete printer" msgstr "" #: cgi-bin/classes.c:260 cgi-bin/printers.c:269 -msgid "Unable to do maintenance command:" +msgid "Unable to do maintenance command" msgstr "" -#: cgi-bin/admin.c:1955 +#: cgi-bin/admin.c:1974 msgid "Unable to edit cupsd.conf files larger than 1MB" msgstr "" -#: cups/http.c:4258 +#: cups/http.c:4259 msgid "Unable to establish a secure connection to host (certificate chain invalid)." msgstr "" -#: cups/http.c:4248 +#: cups/http.c:4249 msgid "Unable to establish a secure connection to host (certificate not yet valid)." msgstr "" -#: cups/http.c:4243 +#: cups/http.c:4244 msgid "Unable to establish a secure connection to host (expired certificate)." msgstr "" -#: cups/http.c:4253 +#: cups/http.c:4254 msgid "Unable to establish a secure connection to host (host name mismatch)." msgstr "" -#: cups/http.c:4263 +#: cups/http.c:4264 msgid "Unable to establish a secure connection to host (peer dropped connection before responding)." msgstr "" -#: cups/http.c:4238 +#: cups/http.c:4239 msgid "Unable to establish a secure connection to host (self-signed certificate)." msgstr "" -#: cups/http.c:4233 +#: cups/http.c:4234 msgid "Unable to establish a secure connection to host (untrusted certificate)." msgstr "" -#: cups/http.c:3995 cups/http.c:4290 cups/http.c:4323 cups/http.c:4340 +#: cups/http.c:3995 cups/http.c:4291 cups/http.c:4324 cups/http.c:4341 msgid "Unable to establish a secure connection to host." msgstr "" @@ -5295,44 +5179,44 @@ msgstr "" msgid "Unable to find destination for job" msgstr "" -#: cups/http-support.c:1644 +#: cups/http-support.c:1748 msgid "Unable to find printer." msgstr "" -#: backend/ipp.c:2038 +#: backend/ipp.c:2043 msgid "Unable to generate compressed print file" msgstr "" -#: backend/ipp.c:2945 +#: backend/ipp.c:2995 msgid "Unable to get backend exit status." msgstr "" #: cgi-bin/classes.c:450 -msgid "Unable to get class list:" +msgid "Unable to get class list" msgstr "" #: cgi-bin/classes.c:549 -msgid "Unable to get class status:" +msgid "Unable to get class status" msgstr "" #: cgi-bin/admin.c:1320 -msgid "Unable to get list of printer drivers:" +msgid "Unable to get list of printer drivers" msgstr "" -#: cgi-bin/admin.c:2818 -msgid "Unable to get printer attributes:" +#: cgi-bin/admin.c:2840 +msgid "Unable to get printer attributes" msgstr "" #: cgi-bin/printers.c:467 -msgid "Unable to get printer list:" +msgid "Unable to get printer list" msgstr "" -#: backend/ipp.c:926 -msgid "Unable to get printer status." +#: cgi-bin/printers.c:569 +msgid "Unable to get printer status" msgstr "" -#: cgi-bin/printers.c:569 -msgid "Unable to get printer status:" +#: backend/ipp.c:931 +msgid "Unable to get printer status." msgstr "" #: cups/adminutil.c:565 cups/adminutil.c:769 @@ -5345,22 +5229,26 @@ msgstr "" msgid "Unable to install Windows 9x printer driver files (%d)." msgstr "" +#: cgi-bin/help.c:92 +msgid "Unable to load help index." +msgstr "" + #: backend/ipp.c:640 backend/lpd.c:421 backend/socket.c:275 #, c-format msgid "Unable to locate printer \"%s\"." msgstr "" -#: backend/dnssd.c:529 backend/ipp.c:322 backend/lpd.c:204 +#: backend/dnssd.c:787 backend/ipp.c:322 backend/lpd.c:204 #: backend/socket.c:171 msgid "Unable to locate printer." msgstr "" #: cgi-bin/admin.c:813 -msgid "Unable to modify class:" +msgid "Unable to modify class" msgstr "" #: cgi-bin/admin.c:1058 cgi-bin/admin.c:1418 -msgid "Unable to modify printer:" +msgid "Unable to modify printer" msgstr "" #: cgi-bin/ipp-var.c:432 cgi-bin/ipp-var.c:521 @@ -5371,23 +5259,19 @@ msgstr "" msgid "Unable to move jobs" msgstr "" -#: cups/ppd.c:339 +#: cgi-bin/admin.c:3186 cups/ppd.c:339 msgid "Unable to open PPD file" msgstr "" -#: cgi-bin/admin.c:3164 -msgid "Unable to open PPD file:" -msgstr "" - -#: backend/ipp.c:2022 +#: backend/ipp.c:2027 msgid "Unable to open compressed print file" msgstr "" -#: cgi-bin/admin.c:2589 +#: cgi-bin/admin.c:2608 msgid "Unable to open cupsd.conf file:" msgstr "" -#: backend/usb-unix.c:145 +#: backend/usb-unix.c:141 msgid "Unable to open device file" msgstr "" @@ -5396,7 +5280,11 @@ msgstr "" msgid "Unable to open document #%d in job #%d." msgstr "" -#: backend/ipp.c:363 backend/ipp.c:1384 backend/ipp.c:1580 backend/ipp.c:2028 +#: cgi-bin/help.c:364 +msgid "Unable to open help file." +msgstr "" + +#: backend/ipp.c:363 backend/ipp.c:1387 backend/ipp.c:1583 backend/ipp.c:2033 #: backend/lpd.c:488 backend/socket.c:158 backend/usb.c:237 #: filter/gziptoany.c:71 filter/pstops.c:300 msgid "Unable to open print file" @@ -5408,19 +5296,15 @@ msgid "Unable to open raster file" msgstr "" #: cgi-bin/ipp-var.c:795 -msgid "Unable to print test page:" -msgstr "" - -#: backend/runloop.c:95 backend/runloop.c:322 -msgid "Unable to read print data" +msgid "Unable to print test page" msgstr "" -#: backend/usb-darwin.c:613 backend/usb-darwin.c:657 backend/usb-libusb.c:343 -#: backend/usb-libusb.c:378 +#: backend/runloop.c:96 backend/runloop.c:324 backend/usb-darwin.c:613 +#: backend/usb-darwin.c:657 backend/usb-libusb.c:343 backend/usb-libusb.c:378 msgid "Unable to read print data." msgstr "" -#: cups/dest.c:2974 +#: cups/dest.c:2968 msgid "Unable to resolve printer URI." msgstr "" @@ -5446,27 +5330,27 @@ msgstr "" msgid "Unable to set Windows printer driver (%d)." msgstr "" -#: cgi-bin/admin.c:3785 -msgid "Unable to set options:" +#: cgi-bin/admin.c:3807 +msgid "Unable to set options" msgstr "" -#: cgi-bin/admin.c:3055 -msgid "Unable to set server default:" +#: cgi-bin/admin.c:3077 +msgid "Unable to set server default" msgstr "" -#: backend/ipp.c:2804 backend/ipp.c:2881 backend/ipp.c:2889 +#: backend/ipp.c:2854 backend/ipp.c:2931 backend/ipp.c:2939 msgid "Unable to start backend process." msgstr "" -#: cgi-bin/admin.c:1893 -msgid "Unable to upload cupsd.conf file:" +#: cgi-bin/admin.c:1912 +msgid "Unable to upload cupsd.conf file" msgstr "" #: backend/usb-darwin.c:1985 backend/usb-darwin.c:2009 msgid "Unable to use legacy USB class driver." msgstr "" -#: backend/runloop.c:124 backend/runloop.c:377 +#: backend/runloop.c:125 backend/runloop.c:379 msgid "Unable to write print data" msgstr "" @@ -5475,15 +5359,15 @@ msgstr "" msgid "Unable to write uncompressed print data: %s" msgstr "" -#: cups/http-support.c:1276 +#: cups/http-support.c:1303 msgid "Unauthorized" msgstr "" -#: cgi-bin/admin.c:3481 +#: cgi-bin/admin.c:3503 msgid "Units" msgstr "" -#: cups/http-support.c:1316 cups/ppd.c:366 +#: cups/http-support.c:1343 cups/ppd.c:366 msgid "Unknown" msgstr "" @@ -5536,7 +5420,7 @@ msgstr "" msgid "Unknown printer-op-policy \"%s\"." msgstr "" -#: cups/http-addrlist.c:708 +#: cups/http-addrlist.c:710 msgid "Unknown service name." msgstr "" @@ -5574,7 +5458,7 @@ msgstr "" msgid "Unsupported margins." msgstr "" -#: cups/pwg-media.c:467 +#: cups/pwg-media.c:468 msgid "Unsupported media value." msgstr "" @@ -5601,7 +5485,7 @@ msgstr "" msgid "Unsupported value type" msgstr "" -#: cups/http-support.c:1291 +#: cups/http-support.c:1318 msgid "Upgrade Required" msgstr "" @@ -5617,21 +5501,14 @@ msgid "" " [-u allow:user,user] [-u deny:user,user]" msgstr "" -#: backend/dnssd.c:174 backend/ipp.c:311 backend/lpd.c:191 -#: backend/socket.c:135 backend/usb.c:183 monitor/bcp.c:62 monitor/tbcp.c:61 +#: backend/dnssd.c:241 backend/ipp.c:311 backend/lpd.c:191 +#: backend/socket.c:135 backend/usb.c:183 filter/commandtops.c:74 +#: filter/gziptoany.c:50 filter/pstops.c:264 monitor/bcp.c:62 +#: monitor/tbcp.c:61 #, c-format msgid "Usage: %s job-id user title copies options [file]" msgstr "" -#: filter/commandtops.c:74 filter/gziptoany.c:50 filter/pstops.c:264 -#, c-format -msgid "Usage: %s job-id user title copies options file" -msgstr "" - -#: scheduler/cupsfilter.c:1464 -msgid "Usage: convert [ options ]" -msgstr "" - #: systemv/cupsaddsmb.c:281 msgid "Usage: cupsaddsmb [options] printer1 ... printerN" msgstr "" @@ -5640,11 +5517,11 @@ msgstr "" msgid "Usage: cupsctl [options] [param=value ... paramN=valueN]" msgstr "" -#: scheduler/main.c:2018 +#: scheduler/main.c:2017 msgid "Usage: cupsd [options]" msgstr "" -#: scheduler/cupsfilter.c:1437 +#: scheduler/cupsfilter.c:1429 msgid "Usage: cupsfilter [ options ] filename" msgstr "" @@ -5652,7 +5529,7 @@ msgstr "" msgid "Usage: cupstestdsc [options] filename.ps [... filename.ps]" msgstr "" -#: systemv/cupstestppd.c:3792 +#: systemv/cupstestppd.c:3793 msgid "Usage: cupstestppd [options] filename1.ppd[.gz] [... filenameN.ppd[.gz]]" msgstr "" @@ -5723,7 +5600,7 @@ msgstr "" msgid "Version uses indefinite length" msgstr "" -#: backend/ipp.c:1660 +#: backend/ipp.c:1664 msgid "Waiting for job to complete." msgstr "" @@ -5739,7 +5616,7 @@ msgstr "" msgid "Warning, no Windows 2000 printer drivers are installed." msgstr "" -#: cups/http-support.c:1312 +#: cups/http-support.c:1339 msgid "Web Interface is Disabled" msgstr "" @@ -5747,7 +5624,7 @@ msgstr "" msgid "Yes" msgstr "" -#: scheduler/client.c:2508 +#: scheduler/client.c:2437 #, c-format msgid "You must access this page using the URL https://%s:%d%s." msgstr "" @@ -5756,11 +5633,11 @@ msgstr "" msgid "Your password must be at least 6 characters long, cannot contain your username, and must contain at least one letter and number." msgstr "" -#: ppdc/sample.c:448 +#: ppdc/sample.c:439 msgid "ZPL Label Printer" msgstr "" -#: ppdc/sample.c:371 +#: ppdc/sample.c:362 msgid "Zebra" msgstr "" @@ -5776,10 +5653,6 @@ msgstr "" msgid "completed" msgstr "" -#: scheduler/cupsfilter.c:356 -msgid "convert: Use the -f option to specify a file to convert." -msgstr "" - #: scheduler/ipp.c:6706 msgid "cups-deviced failed to execute." msgstr "" @@ -5812,43 +5685,43 @@ msgstr "" msgid "cupsctl: Unknown option \"-%c\"" msgstr "" -#: scheduler/main.c:193 +#: scheduler/main.c:189 msgid "cupsd: Expected config filename after \"-c\" option." msgstr "" -#: scheduler/main.c:225 scheduler/main.c:232 +#: scheduler/main.c:221 scheduler/main.c:228 msgid "cupsd: Unable to get current directory." msgstr "" -#: scheduler/main.c:299 +#: scheduler/main.c:295 #, c-format msgid "cupsd: Unknown argument \"%s\" - aborting." msgstr "" -#: scheduler/main.c:292 +#: scheduler/main.c:288 #, c-format msgid "cupsd: Unknown option \"%c\" - aborting." msgstr "" -#: scheduler/main.c:259 +#: scheduler/main.c:255 msgid "cupsd: launchd(8) support not compiled in, running in normal mode." msgstr "" -#: scheduler/cupsfilter.c:1215 +#: scheduler/cupsfilter.c:1209 #, c-format msgid "cupsfilter: Invalid document number %d." msgstr "" -#: scheduler/cupsfilter.c:1209 +#: scheduler/cupsfilter.c:1203 #, c-format msgid "cupsfilter: Invalid job ID %d." msgstr "" -#: scheduler/cupsfilter.c:364 +#: scheduler/cupsfilter.c:358 msgid "cupsfilter: Only one filename can be specified." msgstr "" -#: scheduler/cupsfilter.c:1257 +#: scheduler/cupsfilter.c:1251 #, c-format msgid "cupsfilter: Unable to get job file - %s" msgstr "" @@ -5891,18 +5764,10 @@ msgstr "" msgid "idle" msgstr "" -#: test/ipptool.c:371 +#: test/ipptool.c:371 test/ipptool.c:510 test/ipptool.c:534 msgid "ipptool: \"-i\" and \"-n\" are incompatible with -X\"." msgstr "" -#: test/ipptool.c:510 -msgid "ipptool: \"-i\" is incompatible with \"-X\"." -msgstr "" - -#: test/ipptool.c:534 -msgid "ipptool: \"-n\" is incompatible with \"-X\"." -msgstr "" - #: test/ipptool.c:592 #, c-format msgid "ipptool: Bad URI - %s." @@ -6298,7 +6163,7 @@ msgstr "" msgid "ppdc: Bad font attribute: %s" msgstr "" -#: ppdc/ppdc-source.cxx:1795 +#: ppdc/ppdc-source.cxx:1796 #, c-format msgid "ppdc: Bad resolution name \"%s\" on line %d of %s." msgstr "" @@ -6308,17 +6173,17 @@ msgstr "" msgid "ppdc: Bad status keyword %s on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2032 +#: ppdc/ppdc-source.cxx:2033 #, c-format msgid "ppdc: Bad variable substitution ($%c) on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2718 +#: ppdc/ppdc-source.cxx:2719 #, c-format msgid "ppdc: Choice found on line %d of %s with no Option." msgstr "" -#: ppdc/ppdc-source.cxx:1697 +#: ppdc/ppdc-source.cxx:1698 #, c-format msgid "ppdc: Duplicate #po for locale %s on line %d of %s." msgstr "" @@ -6373,7 +6238,7 @@ msgstr "" msgid "ppdc: Expected constraints string for UIConstraints on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2904 +#: ppdc/ppdc-source.cxx:2905 #, c-format msgid "ppdc: Expected driver type keyword following DriverType on line %d of %s." msgstr "" @@ -6388,7 +6253,7 @@ msgstr "" msgid "ppdc: Expected encoding after Font on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1688 +#: ppdc/ppdc-source.cxx:1689 #, c-format msgid "ppdc: Expected filename after #po %s on line %d of %s." msgstr "" @@ -6398,17 +6263,17 @@ msgstr "" msgid "ppdc: Expected group name/text on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2618 +#: ppdc/ppdc-source.cxx:2619 #, c-format msgid "ppdc: Expected include filename on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1501 +#: ppdc/ppdc-source.cxx:1502 #, c-format msgid "ppdc: Expected integer on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1680 +#: ppdc/ppdc-source.cxx:1681 #, c-format msgid "ppdc: Expected locale after #po on line %d of %s." msgstr "" @@ -6418,7 +6283,7 @@ msgstr "" msgid "ppdc: Expected name after %s on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:3276 +#: ppdc/ppdc-source.cxx:3277 #, c-format msgid "ppdc: Expected name after FileName on line %d of %s." msgstr "" @@ -6428,22 +6293,22 @@ msgstr "" msgid "ppdc: Expected name after Font on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:3107 +#: ppdc/ppdc-source.cxx:3108 #, c-format msgid "ppdc: Expected name after Manufacturer on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:3140 +#: ppdc/ppdc-source.cxx:3141 #, c-format msgid "ppdc: Expected name after MediaSize on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:3230 +#: ppdc/ppdc-source.cxx:3231 #, c-format msgid "ppdc: Expected name after ModelName on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:3293 +#: ppdc/ppdc-source.cxx:3294 #, c-format msgid "ppdc: Expected name after PCFileName on line %d of %s." msgstr "" @@ -6458,7 +6323,7 @@ msgstr "" msgid "ppdc: Expected name/text after Installable on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1781 +#: ppdc/ppdc-source.cxx:1782 #, c-format msgid "ppdc: Expected name/text after Resolution on line %d of %s." msgstr "" @@ -6468,22 +6333,22 @@ msgstr "" msgid "ppdc: Expected name/text combination for ColorModel on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1573 +#: ppdc/ppdc-source.cxx:1574 #, c-format msgid "ppdc: Expected option name/text on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1607 +#: ppdc/ppdc-source.cxx:1608 #, c-format msgid "ppdc: Expected option section on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1585 +#: ppdc/ppdc-source.cxx:1586 #, c-format msgid "ppdc: Expected option type on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1764 +#: ppdc/ppdc-source.cxx:1765 #, c-format msgid "ppdc: Expected override field after Resolution on line %d of %s." msgstr "" @@ -6503,7 +6368,7 @@ msgstr "" msgid "ppdc: Expected resolution/mediatype following ColorProfile on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1862 +#: ppdc/ppdc-source.cxx:1863 #, c-format msgid "ppdc: Expected resolution/mediatype following SimpleColorProfile on line %d of %s." msgstr "" @@ -6518,12 +6383,12 @@ msgstr "" msgid "ppdc: Expected status after Font on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2793 +#: ppdc/ppdc-source.cxx:2794 #, c-format msgid "ppdc: Expected string after Copyright on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:3396 +#: ppdc/ppdc-source.cxx:3397 #, c-format msgid "ppdc: Expected string after Version on line %d of %s." msgstr "" @@ -6563,12 +6428,12 @@ msgstr "" msgid "ppdc: Invalid empty program name for filter on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1627 +#: ppdc/ppdc-source.cxx:1628 #, c-format msgid "ppdc: Invalid option section \"%s\" on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1599 +#: ppdc/ppdc-source.cxx:1600 #, c-format msgid "ppdc: Invalid option type \"%s\" on line %d of %s." msgstr "" @@ -6588,13 +6453,13 @@ msgstr "" msgid "ppdc: Loading messages from \"%s\"." msgstr "" -#: ppdc/ppdc-source.cxx:2411 ppdc/ppdc-source.cxx:2643 +#: ppdc/ppdc-source.cxx:2412 ppdc/ppdc-source.cxx:2644 #, c-format msgid "ppdc: Missing #endif at end of \"%s\"." msgstr "" -#: ppdc/ppdc-source.cxx:2512 ppdc/ppdc-source.cxx:2547 -#: ppdc/ppdc-source.cxx:2577 +#: ppdc/ppdc-source.cxx:2513 ppdc/ppdc-source.cxx:2548 +#: ppdc/ppdc-source.cxx:2578 #, c-format msgid "ppdc: Missing #if on line %d of %s." msgstr "" @@ -6609,14 +6474,14 @@ msgstr "" msgid "ppdc: No message catalog provided for locale %s." msgstr "" -#: ppdc/ppdc-source.cxx:1650 ppdc/ppdc-source.cxx:2881 -#: ppdc/ppdc-source.cxx:2967 ppdc/ppdc-source.cxx:3060 -#: ppdc/ppdc-source.cxx:3193 ppdc/ppdc-source.cxx:3326 +#: ppdc/ppdc-source.cxx:1651 ppdc/ppdc-source.cxx:2882 +#: ppdc/ppdc-source.cxx:2968 ppdc/ppdc-source.cxx:3061 +#: ppdc/ppdc-source.cxx:3194 ppdc/ppdc-source.cxx:3327 #, c-format msgid "ppdc: Option %s defined in two different groups on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:1643 +#: ppdc/ppdc-source.cxx:1644 #, c-format msgid "ppdc: Option %s redefined with a different type on line %d of %s." msgstr "" @@ -6626,7 +6491,7 @@ msgstr "" msgid "ppdc: Option constraint must *name on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2494 +#: ppdc/ppdc-source.cxx:2495 #, c-format msgid "ppdc: Too many nested #if's on line %d of %s." msgstr "" @@ -6651,12 +6516,12 @@ msgstr "" msgid "ppdc: Unable to execute cupstestppd: %s" msgstr "" -#: ppdc/ppdc-source.cxx:1729 +#: ppdc/ppdc-source.cxx:1730 #, c-format msgid "ppdc: Unable to find #po file %s on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2650 +#: ppdc/ppdc-source.cxx:2651 #, c-format msgid "ppdc: Unable to find include file \"%s\" on line %d of %s." msgstr "" @@ -6676,7 +6541,7 @@ msgstr "" msgid "ppdc: Unable to open %s: %s" msgstr "" -#: ppdc/ppdc-source.cxx:2053 +#: ppdc/ppdc-source.cxx:2054 #, c-format msgid "ppdc: Undefined variable (%s) on line %d of %s." msgstr "" @@ -6686,7 +6551,7 @@ msgstr "" msgid "ppdc: Unexpected text on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2923 +#: ppdc/ppdc-source.cxx:2924 #, c-format msgid "ppdc: Unknown driver type %s on line %d of %s." msgstr "" @@ -6696,7 +6561,7 @@ msgstr "" msgid "ppdc: Unknown duplex type \"%s\" on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:3153 +#: ppdc/ppdc-source.cxx:3154 #, c-format msgid "ppdc: Unknown media size \"%s\" on line %d of %s." msgstr "" @@ -6706,7 +6571,7 @@ msgstr "" msgid "ppdc: Unknown message catalog format for \"%s\"." msgstr "" -#: ppdc/ppdc-source.cxx:3407 +#: ppdc/ppdc-source.cxx:3408 #, c-format msgid "ppdc: Unknown token \"%s\" seen on line %d of %s." msgstr "" @@ -6716,7 +6581,7 @@ msgstr "" msgid "ppdc: Unknown trailing characters in real number \"%s\" on line %d of %s." msgstr "" -#: ppdc/ppdc-source.cxx:2163 +#: ppdc/ppdc-source.cxx:2164 #, c-format msgid "ppdc: Unterminated string starting with %c on line %d of %s." msgstr "" diff --git a/locale/cups.strings b/locale/cups.strings index f754f3e7d..ddcf127f4 100644 --- a/locale/cups.strings +++ b/locale/cups.strings @@ -117,28 +117,27 @@ " %s cupsICCProfile %s hash value collides with %s." = " %s cupsICCProfile %s hash value collides with %s."; " %s cupsUIResolver %s causes a loop." = " %s cupsUIResolver %s causes a loop."; " %s cupsUIResolver %s does not list at least two different options." = " %s cupsUIResolver %s does not list at least two different options."; -" **FAIL** %s choice names %s and %s differ only by case." = " **FAIL** %s choice names %s and %s differ only by case."; " **FAIL** %s must be 1284DeviceID\n REF: Page 72, section 5.5" = " **FAIL** %s must be 1284DeviceID\n REF: Page 72, section 5.5"; -" **FAIL** BAD Default%s %s\n REF: Page 40, section 4.5." = " **FAIL** BAD Default%s %s\n REF: Page 40, section 4.5."; -" **FAIL** BAD DefaultImageableArea %s\n REF: Page 102, section 5.15." = " **FAIL** BAD DefaultImageableArea %s\n REF: Page 102, section 5.15."; -" **FAIL** BAD DefaultPaperDimension %s\n REF: Page 103, section 5.15." = " **FAIL** BAD DefaultPaperDimension %s\n REF: Page 103, section 5.15."; -" **FAIL** BAD JobPatchFile attribute in file\n REF: Page 24, section 3.4." = " **FAIL** BAD JobPatchFile attribute in file\n REF: Page 24, section 3.4."; -" **FAIL** BAD Manufacturer (should be \"HP\")\n REF: Page 211, table D.1." = " **FAIL** BAD Manufacturer (should be \"HP\")\n REF: Page 211, table D.1."; -" **FAIL** BAD Manufacturer (should be \"Oki\")\n REF: Page 211, table D.1." = " **FAIL** BAD Manufacturer (should be \"Oki\")\n REF: Page 211, table D.1."; -" **FAIL** BAD ModelName - \"%c\" not allowed in string.\n REF: Pages 59-60, section 5.3." = " **FAIL** BAD ModelName - \"%c\" not allowed in string.\n REF: Pages 59-60, section 5.3."; -" **FAIL** BAD PSVersion - not \"(string) int\".\n REF: Pages 62-64, section 5.3." = " **FAIL** BAD PSVersion - not \"(string) int\".\n REF: Pages 62-64, section 5.3."; -" **FAIL** BAD Product - not \"(string)\".\n REF: Page 62, section 5.3." = " **FAIL** BAD Product - not \"(string)\".\n REF: Page 62, section 5.3."; -" **FAIL** BAD ShortNickName - longer than 31 chars.\n REF: Pages 64-65, section 5.3." = " **FAIL** BAD ShortNickName - longer than 31 chars.\n REF: Pages 64-65, section 5.3."; -" **FAIL** Bad %s choice %s\n REF: Page 84, section 5.9" = " **FAIL** Bad %s choice %s\n REF: Page 84, section 5.9"; +" **FAIL** Bad Default%s %s\n REF: Page 40, section 4.5." = " **FAIL** Bad Default%s %s\n REF: Page 40, section 4.5."; +" **FAIL** Bad DefaultImageableArea %s\n REF: Page 102, section 5.15." = " **FAIL** Bad DefaultImageableArea %s\n REF: Page 102, section 5.15."; +" **FAIL** Bad DefaultPaperDimension %s\n REF: Page 103, section 5.15." = " **FAIL** Bad DefaultPaperDimension %s\n REF: Page 103, section 5.15."; " **FAIL** Bad FileVersion \"%s\"\n REF: Page 56, section 5.3." = " **FAIL** Bad FileVersion \"%s\"\n REF: Page 56, section 5.3."; " **FAIL** Bad FormatVersion \"%s\"\n REF: Page 56, section 5.3." = " **FAIL** Bad FormatVersion \"%s\"\n REF: Page 56, section 5.3."; +" **FAIL** Bad JobPatchFile attribute in file\n REF: Page 24, section 3.4." = " **FAIL** Bad JobPatchFile attribute in file\n REF: Page 24, section 3.4."; " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1." = " **FAIL** Bad LanguageEncoding %s - must be ISOLatin1."; " **FAIL** Bad LanguageVersion %s - must be English." = " **FAIL** Bad LanguageVersion %s - must be English."; +" **FAIL** Bad Manufacturer (should be \"%s\")\n REF: Page 211, table D.1." = " **FAIL** Bad Manufacturer (should be \"%s\")\n REF: Page 211, table D.1."; +" **FAIL** Bad ModelName - \"%c\" not allowed in string.\n REF: Pages 59-60, section 5.3." = " **FAIL** Bad ModelName - \"%c\" not allowed in string.\n REF: Pages 59-60, section 5.3."; +" **FAIL** Bad PSVersion - not \"(string) int\".\n REF: Pages 62-64, section 5.3." = " **FAIL** Bad PSVersion - not \"(string) int\".\n REF: Pages 62-64, section 5.3."; +" **FAIL** Bad Product - not \"(string)\".\n REF: Page 62, section 5.3." = " **FAIL** Bad Product - not \"(string)\".\n REF: Page 62, section 5.3."; +" **FAIL** Bad ShortNickName - longer than 31 chars.\n REF: Pages 64-65, section 5.3." = " **FAIL** Bad ShortNickName - longer than 31 chars.\n REF: Pages 64-65, section 5.3."; +" **FAIL** Bad option %s choice %s\n REF: Page 84, section 5.9" = " **FAIL** Bad option %s choice %s\n REF: Page 84, section 5.9"; " **FAIL** Default option code cannot be interpreted: %s" = " **FAIL** Default option code cannot be interpreted: %s"; " **FAIL** Default translation string for option %s choice %s contains 8-bit characters." = " **FAIL** Default translation string for option %s choice %s contains 8-bit characters."; " **FAIL** Default translation string for option %s contains 8-bit characters." = " **FAIL** Default translation string for option %s contains 8-bit characters."; " **FAIL** Group names %s and %s differ only by case." = " **FAIL** Group names %s and %s differ only by case."; -" **FAIL** Multiple occurrences of %s choice name %s." = " **FAIL** Multiple occurrences of %s choice name %s."; +" **FAIL** Multiple occurrences of option %s choice name %s." = " **FAIL** Multiple occurrences of option %s choice name %s."; +" **FAIL** Option %s choice names %s and %s differ only by case." = " **FAIL** Option %s choice names %s and %s differ only by case."; " **FAIL** Option names %s and %s differ only by case." = " **FAIL** Option names %s and %s differ only by case."; " **FAIL** REQUIRED Default%s\n REF: Page 40, section 4.5." = " **FAIL** REQUIRED Default%s\n REF: Page 40, section 4.5."; " **FAIL** REQUIRED DefaultImageableArea\n REF: Page 102, section 5.15." = " **FAIL** REQUIRED DefaultImageableArea\n REF: Page 102, section 5.15."; @@ -159,7 +158,6 @@ " **FAIL** REQUIRED PaperDimension for PageSize %s\n REF: Page 41, section 5.\n REF: Page 103, section 5.15." = " **FAIL** REQUIRED PaperDimension for PageSize %s\n REF: Page 41, section 5.\n REF: Page 103, section 5.15."; " **FAIL** REQUIRED Product\n REF: Page 62, section 5.3." = " **FAIL** REQUIRED Product\n REF: Page 62, section 5.3."; " **FAIL** REQUIRED ShortNickName\n REF: Page 64-65, section 5.3." = " **FAIL** REQUIRED ShortNickName\n REF: Page 64-65, section 5.3."; -" **FAIL** Unable to open PPD file - %s" = " **FAIL** Unable to open PPD file - %s"; " **FAIL** Unable to open PPD file - %s on line %d." = " **FAIL** Unable to open PPD file - %s on line %d."; " %d ERRORS FOUND" = " %d ERRORS FOUND"; " -h Show program usage" = " -h Show program usage"; @@ -186,37 +184,30 @@ " --[no-]user-cancel-any Allow/prevent users to cancel any job." = " --[no-]user-cancel-any Allow/prevent users to cancel any job."; " --cr End lines with CR (Mac OS 9)." = " --cr End lines with CR (Mac OS 9)."; " --crlf End lines with CR + LF (Windows)." = " --crlf End lines with CR + LF (Windows)."; -" --lf End lines with LF (UNIX/Linux/Mac OS X)." = " --lf End lines with LF (UNIX/Linux/Mac OS X)."; +" --lf End lines with LF (UNIX/Linux/OS X)." = " --lf End lines with LF (UNIX/Linux/OS X)."; " -4 Connect using IPv4." = " -4 Connect using IPv4."; " -6 Connect using IPv6." = " -6 Connect using IPv6."; " -C Send requests using chunking (default)." = " -C Send requests using chunking (default)."; " -D Remove the input file when finished." = " -D Remove the input file when finished."; " -D name=value Set named variable to value." = " -D name=value Set named variable to value."; -" -E Enable encryption." = " -E Enable encryption."; -" -E Encrypt the connection to the server." = " -E Encrypt the connection to the server."; -" -E Test with TLS encryption." = " -E Test with TLS encryption."; +" -E Encrypt the connection." = " -E Encrypt the connection."; +" -E Test with HTTP Upgrade to TLS." = " -E Test with HTTP Upgrade to TLS."; " -F Run in the foreground but detach from console." = " -F Run in the foreground but detach from console."; " -H samba-server Use the named SAMBA server." = " -H samba-server Use the named SAMBA server."; " -I Ignore errors." = " -I Ignore errors."; " -I include-dir Add include directory to search path." = " -I include-dir Add include directory to search path."; " -I {filename,filters,none,profiles}" = " -I {filename,filters,none,profiles}"; -" -J title Set title." = " -J title Set title."; " -L Send requests using content-length." = " -L Send requests using content-length."; " -P filename.ppd Set PPD file." = " -P filename.ppd Set PPD file."; " -R root-directory Set alternate root." = " -R root-directory Set alternate root."; " -S Test with SSL encryption." = " -S Test with SSL encryption."; " -T seconds Set the receive/send timeout in seconds." = " -T seconds Set the receive/send timeout in seconds."; -" -U samba-user Authenticate using the named SAMBA user." = " -U samba-user Authenticate using the named SAMBA user."; -" -U username Set username for job." = " -U username Set username for job."; " -U username Specify username." = " -U username Specify username."; " -V version Set default IPP version." = " -V version Set default IPP version."; " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}" = " -W {all,none,constraints,defaults,duplex,filters,profiles,sizes,translations}"; " -X Produce XML plist instead of plain text." = " -X Produce XML plist instead of plain text."; " -a Export all printers." = " -a Export all printers."; -" -a 'name=value ...' Set option(s)." = " -a 'name=value ...' Set option(s)."; " -c catalog.po Load the specified message catalog." = " -c catalog.po Load the specified message catalog."; -" -c config-file Load alternate configuration file." = " -c config-file Load alternate configuration file."; -" -c copies Set number of copies." = " -c copies Set number of copies."; " -c cupsd.conf Set cupsd.conf file to use." = " -c cupsd.conf Set cupsd.conf file to use."; " -d name=value Set named variable to value." = " -d name=value Set named variable to value."; " -d output-dir Specify the output directory." = " -d output-dir Specify the output directory."; @@ -224,26 +215,21 @@ " -e Use every filter from the PPD file." = " -e Use every filter from the PPD file."; " -f Run in the foreground." = " -f Run in the foreground."; " -f filename Set default request filename." = " -f filename Set default request filename."; -" -f filename Set file to be converted (otherwise stdin)." = " -f filename Set file to be converted (otherwise stdin)."; " -h Show this usage message." = " -h Show this usage message."; -" -h cups-server Use the named CUPS server." = " -h cups-server Use the named CUPS server."; " -h server[:port] Specify server address." = " -h server[:port] Specify server address."; " -i mime/type Set input MIME type (otherwise auto-typed)." = " -i mime/type Set input MIME type (otherwise auto-typed)."; " -i seconds Repeat the last file with the given time interval." = " -i seconds Repeat the last file with the given time interval."; " -j job-id[,N] Filter file N from the specified job (default is file 1)." = " -j job-id[,N] Filter file N from the specified job (default is file 1)."; -" -j mime/type Set output MIME type (otherwise application/pdf)." = " -j mime/type Set output MIME type (otherwise application/pdf)."; " -l Run cupsd from launchd(8)." = " -l Run cupsd from launchd(8)."; " -l lang[,lang,...] Specify the output language(s) (locale)." = " -l lang[,lang,...] Specify the output language(s) (locale)."; " -m Use the ModelName value as the filename." = " -m Use the ModelName value as the filename."; " -m mime/type Set output MIME type (otherwise application/pdf)." = " -m mime/type Set output MIME type (otherwise application/pdf)."; " -n copies Set number of copies." = " -n copies Set number of copies."; " -n count Repeat the last file the given number of times." = " -n count Repeat the last file the given number of times."; -" -o filename Set file to be generated (otherwise stdout)." = " -o filename Set file to be generated (otherwise stdout)."; " -o filename.drv Set driver information file (otherwise ppdi.drv)." = " -o filename.drv Set driver information file (otherwise ppdi.drv)."; " -o filename.ppd[.gz] Set output file (otherwise stdout)." = " -o filename.ppd[.gz] Set output file (otherwise stdout)."; " -o name=value Set option(s)." = " -o name=value Set option(s)."; " -p filename.ppd Set PPD file." = " -p filename.ppd Set PPD file."; -" -q Be quiet - no output except errors." = " -q Be quiet - no output except errors."; " -q Run silently." = " -q Run silently."; " -r Use 'relaxed' open mode." = " -r Use 'relaxed' open mode."; " -t Produce a test report." = " -t Produce a test report."; @@ -251,10 +237,7 @@ " -t Test the configuration file." = " -t Test the configuration file."; " -t title Set title." = " -t title Set title."; " -u Remove the PPD file when finished." = " -u Remove the PPD file when finished."; -" -v Be slightly verbose." = " -v Be slightly verbose."; -" -v Be verbose (more v's for more verbosity)." = " -v Be verbose (more v's for more verbosity)."; -" -v Be verbose (show commands)." = " -v Be verbose (show commands)."; -" -v Show all attributes sent and received." = " -v Show all attributes sent and received."; +" -v Be verbose." = " -v Be verbose."; " -vv Be very verbose." = " -vv Be very verbose."; " -z Compress PPD files using GNU zip." = " -z Compress PPD files using GNU zip."; " FAIL" = " FAIL"; @@ -465,7 +448,6 @@ "3.25x7.83\"" = "3.25x7.83\""; "3.5 x 5" = "3.5 x 5"; "3.5\" Disk" = "3.5\" Disk"; -"3.5\" Disk - 2 1/8 x 2 3/4\"" = "3.5\" Disk - 2 1/8 x 2 3/4\""; "3.50x1.00\"" = "3.50x1.00\""; "30" = "30"; "30 mm/sec." = "30 mm/sec."; @@ -579,7 +561,6 @@ "Add Printer" = "Add Printer"; "Add RSS Subscription" = "Add RSS Subscription"; "Address" = "Address"; -"Address - 1 1/8 x 3 1/2\"" = "Address - 1 1/8 x 3 1/2\""; "Administration" = "Administration"; "Always" = "Always"; "AppSocket/HP JetDirect" = "AppSocket/HP JetDirect"; @@ -769,8 +750,7 @@ "File \"%s\" is a directory." = "File \"%s\" is a directory."; "File \"%s\" not available: %s" = "File \"%s\" not available: %s"; "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)." = "File \"%s\" permissions OK (0%o/uid=%d/gid=%d)."; -"File Folder" = "File Folder"; -"File Folder - 9/16 x 3 7/16\"" = "File Folder - 9/16 x 3 7/16\""; +"File Folder " = "File Folder "; "File device URIs have been disabled. To enable, see the FileDevice directive in \"%s/cupsd.conf\"." = "File device URIs have been disabled. To enable, see the FileDevice directive in \"%s/cupsd.conf\"."; "Finished page %d." = "Finished page %d."; "Folio" = "Folio"; @@ -783,7 +763,7 @@ "Grayscale" = "Grayscale"; "HP" = "HP"; "Hanging Folder" = "Hanging Folder"; -"Hanging Folder - 9/16 x 2\"" = "Hanging Folder - 9/16 x 2\""; +"Help file not in index." = "Help file not in index."; "IPP 1setOf attribute with incompatible value tags." = "IPP 1setOf attribute with incompatible value tags."; "IPP attribute has no name." = "IPP attribute has no name."; "IPP attribute is not a member of the message." = "IPP attribute is not a member of the message."; @@ -816,9 +796,7 @@ "Internal Server Error" = "Internal Server Error"; "Internal error" = "Internal error"; "Internet Postage 2-Part" = "Internet Postage 2-Part"; -"Internet Postage 2-Part - 2 1/4 x 7 1/2\"" = "Internet Postage 2-Part - 2 1/4 x 7 1/2\""; "Internet Postage 3-Part" = "Internet Postage 3-Part"; -"Internet Postage 3-Part - 2 1/4 x 7\"" = "Internet Postage 3-Part - 2 1/4 x 7\""; "Internet Printing Protocol" = "Internet Printing Protocol"; "Invalid media size." = "Invalid media size."; "Invalid printer command \"%s\"." = "Invalid printer command \"%s\"."; @@ -851,7 +829,7 @@ "Job Options Changed" = "Job Options Changed"; "Job Stopped" = "Job Stopped"; "Job is completed and cannot be changed." = "Job is completed and cannot be changed."; -"Job operation failed:" = "Job operation failed:"; +"Job operation failed" = "Job operation failed"; "Job state cannot be changed." = "Job state cannot be changed."; "Job subscriptions cannot be renewed." = "Job subscriptions cannot be renewed."; "Jobs" = "Jobs"; @@ -860,7 +838,6 @@ "Label Top" = "Label Top"; "Language \"%s\" not supported." = "Language \"%s\" not supported."; "Large Address" = "Large Address"; -"Large Address - 1 4/10 x 3 1/2\"" = "Large Address - 1 4/10 x 3 1/2\""; "LaserJet Series PCL 4/5" = "LaserJet Series PCL 4/5"; "Letter Oversize" = "Letter Oversize"; "Letter Oversize Long Edge" = "Letter Oversize Long Edge"; @@ -1002,6 +979,7 @@ "Print file accepted - job ID unknown." = "Print file accepted - job ID unknown."; "Print file sent." = "Print file sent."; "Print file was not accepted." = "Print file was not accepted."; +"Print job canceled at printer." = "Print job canceled at printer."; "Print job too large." = "Print job too large."; "Printer Added" = "Printer Added"; "Printer Default" = "Printer Default"; @@ -1009,15 +987,6 @@ "Printer Modified" = "Printer Modified"; "Printer Paused" = "Printer Paused"; "Printer Settings" = "Printer Settings"; -"Printer busy, will retry in 10 seconds." = "Printer busy, will retry in 10 seconds."; -"Printer did not respond." = "Printer did not respond."; -"Printer does not support IPP/%d.%d, trying IPP/%s." = "Printer does not support IPP/%d.%d, trying IPP/%s."; -"Printer is busy, will retry in 5 seconds." = "Printer is busy, will retry in 5 seconds."; -"Printer is not currently connected." = "Printer is not currently connected."; -"Printer is now connected." = "Printer is now connected."; -"Printer is now online." = "Printer is now online."; -"Printer is offline." = "Printer is offline."; -"Printer not connected, will retry in 30 seconds." = "Printer not connected, will retry in 30 seconds."; "Printer:" = "Printer:"; "Printers" = "Printers"; "Printing page %d, %d%% complete." = "Printing page %d, %d%% complete."; @@ -1027,7 +996,6 @@ "Rank Owner Job File(s) Total Size" = "Rank Owner Job File(s) Total Size"; // TRANSLATORS: Pri is job priority. "Rank Owner Pri Job Files Total Size" = "Rank Owner Pri Job Files Total Size"; -"Ready to print." = "Ready to print."; "Reject Jobs" = "Reject Jobs"; "Remote host did not accept control file (%d)." = "Remote host did not accept control file (%d)."; "Remote host did not accept data file (%d)." = "Remote host did not accept data file (%d)."; @@ -1037,7 +1005,6 @@ "Resume Class" = "Resume Class"; "Resume Printer" = "Resume Printer"; "Return Address" = "Return Address"; -"Return Address - 3/4 x 2\"" = "Return Address - 3/4 x 2\""; "Rewind" = "Rewind"; "Running command: %s %s -N -A %s -c '%s'" = "Running command: %s %s -N -A %s -c '%s'"; "SEQUENCE uses indefinite length" = "SEQUENCE uses indefinite length"; @@ -1055,7 +1022,6 @@ "Set Printer Options" = "Set Printer Options"; "Set Publishing" = "Set Publishing"; "Shipping Address" = "Shipping Address"; -"Shipping Address - 2 5/16 x 4\"" = "Shipping Address - 2 5/16 x 4\""; "Short-Edge (Landscape)" = "Short-Edge (Landscape)"; "Special Paper" = "Special Paper"; "Spooling job, %.0f%% complete." = "Spooling job, %.0f%% complete."; @@ -1098,9 +1064,14 @@ "The paper tray is missing." = "The paper tray is missing."; "The paper tray needs to be filled." = "The paper tray needs to be filled."; "The printer URI is incorrect or no longer exists." = "The printer URI is incorrect or no longer exists."; -"The printer is busy." = "The printer is busy."; +"The printer did not respond." = "The printer did not respond."; +"The printer does not support IPP/%d.%d, trying IPP/%s." = "The printer does not support IPP/%d.%d, trying IPP/%s."; +"The printer is in use." = "The printer is in use."; "The printer is not connected." = "The printer is not connected."; "The printer is not responding." = "The printer is not responding."; +"The printer is now connected." = "The printer is now connected."; +"The printer is now online." = "The printer is now online."; +"The printer is offline." = "The printer is offline."; "The printer is running low on ink." = "The printer is running low on ink."; "The printer is running low on toner." = "The printer is running low on toner."; "The printer is unreachable at this time." = "The printer is unreachable at this time."; @@ -1144,20 +1115,21 @@ "US Letter Oversize" = "US Letter Oversize"; "US Letter Oversize Long Edge" = "US Letter Oversize Long Edge"; "US Letter Small" = "US Letter Small"; -"Unable to access cupsd.conf file:" = "Unable to access cupsd.conf file:"; -"Unable to add RSS subscription:" = "Unable to add RSS subscription:"; -"Unable to add class:" = "Unable to add class:"; +"Unable to access cupsd.conf file" = "Unable to access cupsd.conf file"; +"Unable to access help file." = "Unable to access help file."; +"Unable to add RSS subscription" = "Unable to add RSS subscription"; +"Unable to add class" = "Unable to add class"; "Unable to add document to print job." = "Unable to add document to print job."; "Unable to add job for destination \"%s\"." = "Unable to add job for destination \"%s\"."; -"Unable to add printer:" = "Unable to add printer:"; +"Unable to add printer" = "Unable to add printer"; "Unable to allocate memory for file types." = "Unable to allocate memory for file types."; "Unable to allocate memory for page info" = "Unable to allocate memory for page info"; "Unable to allocate memory for pages array" = "Unable to allocate memory for pages array"; -"Unable to cancel RSS subscription:" = "Unable to cancel RSS subscription:"; +"Unable to cancel RSS subscription" = "Unable to cancel RSS subscription"; "Unable to cancel print job." = "Unable to cancel print job."; -"Unable to change printer-is-shared attribute:" = "Unable to change printer-is-shared attribute:"; -"Unable to change printer:" = "Unable to change printer:"; -"Unable to change server settings:" = "Unable to change server settings:"; +"Unable to change printer" = "Unable to change printer"; +"Unable to change printer-is-shared attribute" = "Unable to change printer-is-shared attribute"; +"Unable to change server settings" = "Unable to change server settings"; "Unable to configure printer options." = "Unable to configure printer options."; "Unable to connect to host." = "Unable to connect to host."; "Unable to contact printer, queuing on next printer in class." = "Unable to contact printer, queuing on next printer in class."; @@ -1172,10 +1144,9 @@ "Unable to create compressed print file" = "Unable to create compressed print file"; "Unable to create printer-uri" = "Unable to create printer-uri"; "Unable to create temporary file" = "Unable to create temporary file"; -"Unable to create temporary file:" = "Unable to create temporary file:"; -"Unable to delete class:" = "Unable to delete class:"; -"Unable to delete printer:" = "Unable to delete printer:"; -"Unable to do maintenance command:" = "Unable to do maintenance command:"; +"Unable to delete class" = "Unable to delete class"; +"Unable to delete printer" = "Unable to delete printer"; +"Unable to do maintenance command" = "Unable to do maintenance command"; "Unable to edit cupsd.conf files larger than 1MB" = "Unable to edit cupsd.conf files larger than 1MB"; "Unable to establish a secure connection to host (certificate chain invalid)." = "Unable to establish a secure connection to host (certificate chain invalid)."; "Unable to establish a secure connection to host (certificate not yet valid)." = "Unable to establish a secure connection to host (certificate not yet valid)."; @@ -1189,31 +1160,31 @@ "Unable to find printer." = "Unable to find printer."; "Unable to generate compressed print file" = "Unable to generate compressed print file"; "Unable to get backend exit status." = "Unable to get backend exit status."; -"Unable to get class list:" = "Unable to get class list:"; -"Unable to get class status:" = "Unable to get class status:"; -"Unable to get list of printer drivers:" = "Unable to get list of printer drivers:"; -"Unable to get printer attributes:" = "Unable to get printer attributes:"; -"Unable to get printer list:" = "Unable to get printer list:"; +"Unable to get class list" = "Unable to get class list"; +"Unable to get class status" = "Unable to get class status"; +"Unable to get list of printer drivers" = "Unable to get list of printer drivers"; +"Unable to get printer attributes" = "Unable to get printer attributes"; +"Unable to get printer list" = "Unable to get printer list"; +"Unable to get printer status" = "Unable to get printer status"; "Unable to get printer status." = "Unable to get printer status."; -"Unable to get printer status:" = "Unable to get printer status:"; "Unable to install Windows 2000 printer driver files (%d)." = "Unable to install Windows 2000 printer driver files (%d)."; "Unable to install Windows 9x printer driver files (%d)." = "Unable to install Windows 9x printer driver files (%d)."; +"Unable to load help index." = "Unable to load help index."; "Unable to locate printer \"%s\"." = "Unable to locate printer \"%s\"."; "Unable to locate printer." = "Unable to locate printer."; -"Unable to modify class:" = "Unable to modify class:"; -"Unable to modify printer:" = "Unable to modify printer:"; +"Unable to modify class" = "Unable to modify class"; +"Unable to modify printer" = "Unable to modify printer"; "Unable to move job" = "Unable to move job"; "Unable to move jobs" = "Unable to move jobs"; "Unable to open PPD file" = "Unable to open PPD file"; -"Unable to open PPD file:" = "Unable to open PPD file:"; "Unable to open compressed print file" = "Unable to open compressed print file"; "Unable to open cupsd.conf file:" = "Unable to open cupsd.conf file:"; "Unable to open device file" = "Unable to open device file"; "Unable to open document #%d in job #%d." = "Unable to open document #%d in job #%d."; +"Unable to open help file." = "Unable to open help file."; "Unable to open print file" = "Unable to open print file"; "Unable to open raster file" = "Unable to open raster file"; -"Unable to print test page:" = "Unable to print test page:"; -"Unable to read print data" = "Unable to read print data"; +"Unable to print test page" = "Unable to print test page"; "Unable to read print data." = "Unable to read print data."; "Unable to resolve printer URI." = "Unable to resolve printer URI."; "Unable to run \"%s\": %s" = "Unable to run \"%s\": %s"; @@ -1221,10 +1192,10 @@ "Unable to send command to printer driver" = "Unable to send command to printer driver"; "Unable to send data to printer." = "Unable to send data to printer."; "Unable to set Windows printer driver (%d)." = "Unable to set Windows printer driver (%d)."; -"Unable to set options:" = "Unable to set options:"; -"Unable to set server default:" = "Unable to set server default:"; +"Unable to set options" = "Unable to set options"; +"Unable to set server default" = "Unable to set server default"; "Unable to start backend process." = "Unable to start backend process."; -"Unable to upload cupsd.conf file:" = "Unable to upload cupsd.conf file:"; +"Unable to upload cupsd.conf file" = "Unable to upload cupsd.conf file"; "Unable to use legacy USB class driver." = "Unable to use legacy USB class driver."; "Unable to write print data" = "Unable to write print data"; "Unable to write uncompressed print data: %s" = "Unable to write uncompressed print data: %s"; @@ -1258,8 +1229,6 @@ "Upgrade Required" = "Upgrade Required"; "Usage:\n\n lpadmin [-h server] -d destination\n lpadmin [-h server] -x destination\n lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n [-r remove-class] [-v device] [-D description]\n [-P ppd-file] [-o name=value]\n [-u allow:user,user] [-u deny:user,user]" = "Usage:\n\n lpadmin [-h server] -d destination\n lpadmin [-h server] -x destination\n lpadmin [-h server] -p printer [-c add-class] [-i interface] [-m model]\n [-r remove-class] [-v device] [-D description]\n [-P ppd-file] [-o name=value]\n [-u allow:user,user] [-u deny:user,user]"; "Usage: %s job-id user title copies options [file]" = "Usage: %s job-id user title copies options [file]"; -"Usage: %s job-id user title copies options file" = "Usage: %s job-id user title copies options file"; -"Usage: convert [ options ]" = "Usage: convert [ options ]"; "Usage: cupsaddsmb [options] printer1 ... printerN" = "Usage: cupsaddsmb [options] printer1 ... printerN"; "Usage: cupsctl [options] [param=value ... paramN=valueN]" = "Usage: cupsctl [options] [param=value ... paramN=valueN]"; "Usage: cupsd [options]" = "Usage: cupsd [options]"; @@ -1294,7 +1263,6 @@ "aborted" = "aborted"; "canceled" = "canceled"; "completed" = "completed"; -"convert: Use the -f option to specify a file to convert." = "convert: Use the -f option to specify a file to convert."; "cups-deviced failed to execute." = "cups-deviced failed to execute."; "cups-driverd failed to execute." = "cups-driverd failed to execute."; "cupsaddsmb: No PPD file for printer \"%s\" - %s" = "cupsaddsmb: No PPD file for printer \"%s\" - %s"; @@ -1321,8 +1289,6 @@ "help\t\tGet help on commands." = "help\t\tGet help on commands."; "idle" = "idle"; "ipptool: \"-i\" and \"-n\" are incompatible with -X\"." = "ipptool: \"-i\" and \"-n\" are incompatible with -X\"."; -"ipptool: \"-i\" is incompatible with \"-X\"." = "ipptool: \"-i\" is incompatible with \"-X\"."; -"ipptool: \"-n\" is incompatible with \"-X\"." = "ipptool: \"-n\" is incompatible with \"-X\"."; "ipptool: Bad URI - %s." = "ipptool: Bad URI - %s."; "ipptool: Bad version %s for \"-V\"." = "ipptool: Bad version %s for \"-V\"."; "ipptool: Invalid seconds for \"-i\"." = "ipptool: Invalid seconds for \"-i\"."; diff --git a/man/Makefile b/man/Makefile index d722ef64f..93dc4a530 100644 --- a/man/Makefile +++ b/man/Makefile @@ -59,6 +59,7 @@ MAN8 = cupsaccept.$(MAN8EXT) \ cups-driverd.$(MAN8EXT) \ cups-lpd.$(MAN8EXT) \ cups-polld.$(MAN8EXT) \ + cups-snmp.$(MAN8EXT) \ cupsd.$(MAN8EXT) \ cupsenable.$(MAN8EXT) \ lpadmin.$(MAN8EXT) \ diff --git a/man/backend.man b/man/backend.man index f26249549..156e06174 100644 --- a/man/backend.man +++ b/man/backend.man @@ -3,7 +3,7 @@ .\" .\" Backend man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -12,11 +12,10 @@ .\" which should have been included with this file. If this file is .\" file is missing or damaged, see the license at "http://www.cups.org/". .\" -.TH backend 7 "CUPS" "15 April 2011" "Apple Inc." +.TH backend 7 "CUPS" "23 April 2012" "Apple Inc." .SH NAME backend \- cups backend transmission interfaces - .SH SYNOPSIS .B backend .br @@ -24,34 +23,42 @@ backend \- cups backend transmission interfaces job user title num-copies options [ .I filename ] - .SH DESCRIPTION -Backends are a special type of \fIfilter(7)\fR which is used to -send print data to and discover different devices on the system. - +Backends are a special type of \fIfilter(7)\fR which is used to send print data +to and discover different devices on the system. .LP -Like filters, backends must be capable of reading from a filename -on the command-line or from the standard input, copying the -standard input to a temporary file as required by the physical -interface. - +Like filters, backends must be capable of reading from a filename on the +command-line or from the standard input, copying the standard input to a +temporary file as required by the physical interface. .LP The command name (argv[0]) is set to the device URI of the destination printer. Starting with CUPS 1.1.22, any authentication information in argv[0] is removed, so backend developers are urged to use the DEVICE_URI environment variable whenever authentication information is required. The CUPS API includes a \fIcupsBackendDeviceURI\fR function for retrieving the correct device URI. - .LP Back-channel data from the device should be relayed to the job filters by writing to file descriptor 3. The CUPS API includes the \fIcupsBackChannelWrite\fR function for this purpose. - +.SH WARNING +CUPS backends are not generally design to be run directly by the user. Aside +from the device URI issue (argv[0] and DEVICE_URI environment variable contain +the device URI), CUPS backends also expect specific environment variables and +file descriptors, and typically run in a user session that (on OS X) has +additional restrictions that affect how it runs. Backends can also be installed +with restricted permissions (0500 or 0700) that tell the scheduler to run them +as the "root" user instead of an unprivileged user (typically "lp") on the +system. +.LP +Unless you are a developer and know what you are doing, please do not run +backends directly. Instead, use the \fIlp(1)\fR or \fIlpr(1)\fR programs to send +a print job or \fIlpinfo(8)\fR program to query for available printers using the +backend. The one exception is the SNMP backend - see \fIsnmpbackend(8)\fR for +more information. .SH DEVICE DISCOVERY -When run with no arguments, the backend should list the devices -and schemes it supports or is advertising to stdout. The output -consists of zero or more lines consisting of any of the following -forms: +When run with no arguments, the backend should list the devices and schemes it +supports or is advertising to stdout. The output consists of zero or more lines +consisting of any of the following forms: .nf device-class scheme "Unknown" "device-info" @@ -59,138 +66,107 @@ forms: device-class device-uri "device-make-and-model" "device-info" "device-id" device-class device-uri "device-make-and-model" "device-info" "device-id" "device-location" .fi - .LP The \fIdevice-class\fR field is one of the following values: - .TP 5 direct .br -The device-uri refers to a specific direct-access device with no -options, such as a parallel, USB, or SCSI device. - +The device-uri refers to a specific direct-access device with no options, such +as a parallel, USB, or SCSI device. .TP 5 file .br The device-uri refers to a file on disk. - .TP 5 network .br -The device-uri refers to a networked device and conforms to the -general form for network URIs. - +The device-uri refers to a networked device and conforms to the general form for +network URIs. .TP 5 serial .br -The device-uri refers to a serial device with configurable baud -rate and other options. If the device-uri contains a baud value, -it represents the maximum baud rate supported by the device. - +The device-uri refers to a serial device with configurable baud rate and other +options. If the device-uri contains a baud value, it represents the maximum baud +rate supported by the device. .LP -The \fIscheme\fR field provides the URI scheme that is supported -by the backend. Backends should use this form only when the -backend supports any URI using that scheme. The \fIdevice-uri\fR -field specifies the full URI to use when communicating with the -device. - +The \fIscheme\fR field provides the URI scheme that is supported by the backend. +Backends should use this form only when the backend supports any URI using that +scheme. The \fIdevice-uri\fR field specifies the full URI to use when +communicating with the device. .LP -The \fIdevice-make-and-model\fR field specifies the make and -model of the device, e.g. "Acme Foojet 2000". If the make and -model is not known, you must report "Unknown". - +The \fIdevice-make-and-model\fR field specifies the make and model of the +device, e.g. "Example Foojet 2000". If the make and model is not known, you must +report "Unknown". .LP -The \fIdevice-info\fR field specifies additional information -about the device. Typically this includes the make and model -along with the port number or network address, e.g. "Acme Foojet -2000 USB #1". - +The \fIdevice-info\fR field specifies additional information about the device. +Typically this includes the make and model along with the port number or network +address, e.g. "Example Foojet 2000 USB #1". .LP -The optional \fIdevice-id\fR field specifies the IEEE-1284 device -ID string for the device, which is used to select a matching -driver. - +The optional \fIdevice-id\fR field specifies the IEEE-1284 device ID string for +the device, which is used to select a matching driver. .LP The optional \fIdevice-location\fR field specifies the physical location of the device, which is often used to pre-populate the printer-location attribute when adding a printer. - .SH PERMISSIONS -Backends without world execute permissions are run as the root -user. Otherwise, the backend is run using the unprivileged user -account, typically "lp". - +Backends without world execute permissions are run as the root user. Otherwise, +the backend is run using an unprivileged user account, typically "lp". .SH EXIT CODES -The following exit codes are defined for backends; C API -constants defined in the header file are defined -in parenthesis: - +The following exit codes are defined for backends; C API constants defined in +the header file are defined in parenthesis: .TP 5 0 (CUPS_BACKEND_OK) .br -The print file was successfully transmitted to the device or -remote server. - +The print file was successfully transmitted to the device or remote server. .TP 5 1 (CUPS_BACKEND_FAILED) .br -The print file was not successfully transmitted to the device or -remote server. The scheduler will respond to this by canceling -the job, retrying the job, or stopping the queue depending on the -state of the error-policy attribute. - +The print file was not successfully transmitted to the device or remote server. +The scheduler will respond to this by canceling the job, retrying the job, or +stopping the queue depending on the state of the error-policy attribute. .TP 5 2 (CUPS_BACKEND_AUTH_REQUIRED) .br -The print file was not successfully transmitted because valid -authentication information is required. The scheduler will -respond to this by holding the job and adding the -authentication-required job-reasons keyword. - +The print file was not successfully transmitted because valid authentication +information is required. The scheduler will respond to this by holding the job +and adding the "cups-held-for-authentication" keyword to the "job-reasons" +attribute. .TP 5 3 (CUPS_BACKEND_HOLD) .br -The print file was not successfully transmitted because it cannot -be printed at this time. The scheduler will respond to this by -holding the job. - +The print file was not successfully transmitted because it cannot be printed at +this time. The scheduler will respond to this by holding the job. .TP 5 4 (CUPS_BACKEND_STOP) .br -The print file was not successfully transmitted because it cannot -be printed at this time. The scheduler will respond to this by -stopping the queue. - +The print file was not successfully transmitted because it cannot be printed at +this time. The scheduler will respond to this by stopping the queue. .TP 5 5 (CUPS_BACKEND_CANCEL) .br -The print file was not successfully transmitted because one or -more attributes are not supported. The scheduler will respond to -this by canceling the job. - +The print file was not successfully transmitted because one or more attributes +are not supported or the job was canceled at the printer. The scheduler will +respond to this by canceling the job. .TP 5 6 (CUPS_BACKEND_RETRY) .br The print file was not successfully transmitted because of a temporary issue. The scheduler will retry the job at a future time - other jobs may print before this one. - .TP 5 7 (CUPS_BACKEND_RETRY_CURRENT) .br The print file was not successfully transmitted because of a temporary issue. The scheduler will retry the job immediately without allowing intervening jobs. - .PP All other exit code values are reserved. - .SH SEE ALSO -\fIcupsd(8)\fR, \fIcupsd.conf(5)\fR, \fIfilter(7)\fR, +\fIcups-snmp(8)\fR, \fIcupsd(8)\fR, \fIcupsd.conf(5)\fR, \fIfilter(7)\fR, +\fIlpinfo(8)\fR, .br http://localhost:631/help - .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: backend.man 7810 2008-07-29 01:11:15Z mike $". .\" diff --git a/man/cancel.man b/man/cancel.man index fc523b987..b9a6fd231 100644 --- a/man/cancel.man +++ b/man/cancel.man @@ -3,7 +3,7 @@ .\" .\" cancel man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -69,7 +69,7 @@ Cancel-Jobs operations in \fIcupsd.conf(5)\fR. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cancel.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/classes.conf.man b/man/classes.conf.man index 6c96a1d40..269ddc4d9 100644 --- a/man/classes.conf.man +++ b/man/classes.conf.man @@ -3,7 +3,7 @@ .\" .\" classes.conf man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -104,7 +104,7 @@ Specifies the date/time associated with the state. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: classes.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/client.conf.man.in b/man/client.conf.man.in index e7df54e2a..ef5233fb9 100644 --- a/man/client.conf.man.in +++ b/man/client.conf.man.in @@ -12,7 +12,7 @@ .\" which should have been included with this file. If this file is .\" file is missing or damaged, see the license at "http://www.cups.org/". .\" -.TH client.conf 5 "CUPS" "15 February 2012" "Apple Inc." +.TH client.conf 5 "CUPS" "23 April 2012" "Apple Inc." .SH NAME client.conf \- client configuration file for cups .SH DESCRIPTION @@ -45,7 +45,7 @@ ServerName hostname-or-ip-address[:port] ServerName /domain/socket .br Specifies the address and optionally the port to use when connecting to the -server. \fBNote: Not supported on Mac OS X 10.7 or later.\fR +server. \fBNote: Not supported on OS X 10.7 or later.\fR .TP 5 User name .br diff --git a/man/cups-config.man b/man/cups-config.man index 14e228d9e..44c8857df 100644 --- a/man/cups-config.man +++ b/man/cups-config.man @@ -3,7 +3,7 @@ .\" .\" cups-config man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -111,7 +111,7 @@ Displays the full version number of the CUPS installation .SH SEE ALSO http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cups-config.man 7646 2008-06-16 17:26:20Z mike $". .\" diff --git a/man/cups-deviced.man.in b/man/cups-deviced.man.in index 850414115..a89cf056b 100644 --- a/man/cups-deviced.man.in +++ b/man/cups-deviced.man.in @@ -3,7 +3,7 @@ .\" .\" cups-deviced man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -38,7 +38,7 @@ backend(7), cupsd(8), cupsd.conf(5), .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cups-deviced.man.in 7646 2008-06-16 17:26:20Z mike $". .\" diff --git a/man/cups-driverd.man.in b/man/cups-driverd.man.in index 636883615..93d779337 100644 --- a/man/cups-driverd.man.in +++ b/man/cups-driverd.man.in @@ -3,7 +3,7 @@ .\" .\" cups-driverd man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -116,7 +116,7 @@ cupsd(8), cupsd.conf(5), cupstestppd(1), lpinfo(8), .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cups-driverd.man.in 7662 2008-06-17 14:34:20Z mike $". .\" diff --git a/man/cups-lpd.man.in b/man/cups-lpd.man.in index b89443495..6e16dca7b 100644 --- a/man/cups-lpd.man.in +++ b/man/cups-lpd.man.in @@ -3,7 +3,7 @@ .\" .\" cups-lpd man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -118,7 +118,7 @@ clients may be unreliable. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cups-lpd.man.in 7835 2008-08-09 06:37:04Z mike $". .\" diff --git a/man/cups-polld.man b/man/cups-polld.man index 450097d86..8ef2fddc5 100644 --- a/man/cups-polld.man +++ b/man/cups-polld.man @@ -3,7 +3,7 @@ .\" .\" cups-polld man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -32,7 +32,7 @@ This program is started automatically by \fIcupsd\fR for every .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cups-polld.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cups-snmp.conf.man b/man/cups-snmp.conf.man index e848ca50a..f951b646c 100644 --- a/man/cups-snmp.conf.man +++ b/man/cups-snmp.conf.man @@ -3,7 +3,7 @@ .\" .\" snmp.conf man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -12,24 +12,22 @@ .\" which should have been included with this file. If this file is .\" file is missing or damaged, see the license at "http://www.cups.org/". .\" -.TH snmp.conf 5 "CUPS" "31 July 2006" "Apple Inc." +.TH snmp.conf 5 "CUPS" "23 April 2012" "Apple Inc." + .SH NAME snmp.conf \- snmp configuration file for cups .SH DESCRIPTION -The \fIsnmp.conf\fR file configures the CUPS SNMP printer -discovery backend and is normally located in the \fI/etc/cups\fR -directory. Each line in the file can be a configuration -directive, a blank line, or a comment. Comment lines start with -the # character. +The \fIsnmp.conf\fR file configures how the standard CUPS network backends +(http, https, ipp, ipps, lpd, snmp, and socket) access printer information using +SNMPv1 and is normally located in the \fI/etc/cups\fR directory. Each line in +the file can be a configuration directive, a blank line, or a comment. Comment +lines start with the # character. .LP -The SNMP backend uses the SNMPv1 protocol to discover network -printers, collecting information from the Host MIB along with -intelligent port probes to determine the correct device URI and -make and model for each printer. Future versions of CUPS will -likely support the new Port Monitor MIB as well. +The Community and DebugLevel directives are used by all backends. The remainder +apply only to the SNMP backend (\fIcups-snmp(8)\fR). .SH DIRECTIVES -The following directives are understood by the SNMP backend. -Consult the on-line help for detailed descriptions: +The following directives are understood by the CUPS network backends. Consult +the on-line help for detailed descriptions: .TP 5 Address @IF(\fIname\fR) .TP 5 @@ -37,37 +35,44 @@ Address @LOCAL .TP 5 Address \fIaddress\fR .br -Sends SNMP broadcast queries to the specified address(es). The -default address is "@LOCAL" which broadcasts to all LAN -interfaces. +Sends SNMP broadcast queries to the specified address(es). There is no default +for the broadcast address. .TP 5 Community \fIname\fR .br -Specifies a SNMP community to query. The default community is -"public". +Specifies the community name to use. Only a single community name may be +specified. The default community name is "public". .TP 5 -DebugLevel \fIN\fR +DebugLevel number .br -Sets the debug logging level to \fIN\fR; 0 disables debug -logging, 1 enables basic logging, 2 displays SNMP values, and 3 -displays raw hex data. +Specifies the logging level from 0 (none) to 3 (everything). Typically only used +for debugging (thus the name). The default debug level is 0. +.TP 5 +DeviceURI "regular expression" device-uri [... device-uri] +.br +Specifies one or more device URIs that should be used for a given make and model +string. The regular expression is used to match the detected make and model, and +the device URI strings must be of the form "scheme://%s[:port]/[path]", where +"%s" represents the detected address or hostname. There are no default device +URI matching rules. .TP 5 HostNameLookups on .TP 5 HostNameLookups off .br -Specifies whether the addresses of printers should be converted -to hostnames or left as numeric IP addresses. The default is -"off". +Specifies whether the addresses of printers should be converted to hostnames or +left as numeric IP addresses. The default is "off". .TP 5 MaxRunTime \fIseconds\fR .br -Specifies the maximum number of seconds that the SNMP backend -will scan the network for printers. +Specifies the maximum number of seconds that the SNMP backend will scan the +network for printers. The default is 120 seconds (2 minutes). .SH SEE ALSO +cups-snmp(8), +.br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cups-snmp.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cups-snmp.man.in b/man/cups-snmp.man.in new file mode 100644 index 000000000..f34170db4 --- /dev/null +++ b/man/cups-snmp.man.in @@ -0,0 +1,59 @@ +.\" +.\" "$Id$" +.\" +.\" SNMP backend man page for CUPS. +.\" +.\" Copyright 2012 by Apple Inc. +.\" +.\" These coded instructions, statements, and computer programs are the +.\" property of Apple Inc. and are protected by Federal copyright +.\" law. Distribution and use rights are outlined in the file "LICENSE.txt" +.\" which should have been included with this file. If this file is +.\" file is missing or damaged, see the license at "http://www.cups.org/". +.\" +.TH cups-snmp 8 "CUPS" "23 April 2012" "Apple Inc." +.SH NAME +snmp \- cups snmp backend +.SH SYNOPSIS +.B @CUPS_SERVERBIN@/backend/snmp +.I ip-address-or-hostname +.br +.B lpinfo -v --include-schemes snmp +.SH DESCRIPTION +The CUPS SNMP backend provides legacy discovery and identification of network +printers using SNMPv1. When used for discovery through the scheduler, the +backend will list all printers that respond to a broadcast SNMPv1 query with the +"public" community name. Additional queries are then sent to printers that +respond in order to determine the correct device URI, make and model, and other +information needed for printing. +.LP +In the first form, the SNMP backend is run directly by the user to look up the +device URI and other information when you have an IP address or hostname. This +can be used for programs that need to configure print queues where the user has +supplied an address but nothing else. +.LP +In the second form, the SNMP backend is run indirectly using the \fIlpinfo(8)\fR +command. The output provides all printers detected via SNMP on the configured +broadcast addresses. \fBNote\fR: no broadcast addresses are configured by +default. +.SH MIBS +The CUPS SNMP backend uses the information from the Host, Printer, and Port +Monitor MIBs along with some vendor private MIBs and intelligent port probes to +determine the correct device URI and make and model for each printer. +.SH CONFIGURATION +The SNMP backend reads the @CUPS_SERVERROOT@/snmp.conf configuration file, if +present, to set the default broadcast address, community name, and logging +level. The configuration file is documented in \fIcups-snmp.conf(5)\fR. The +DebugLevel value can be overridden using the CUPS_DEBUG_LEVEL environment +variable and the MaxRunTime value can be overridden using the CUPS_MAX_RUN_TIME +environment variable. +.SH SEE ALSO +\fIbackend(7)\fR, \fIcups-snmp.conf(5)\fR, \fIcupsd(8)\fR, \fIcupsd.conf(5)\fR, +\fIfilter(7)\fR, \fIlpinfo(8)\fR, +.br +http://localhost:631/help +.SH COPYRIGHT +Copyright 2007-2012 by Apple Inc. +.\" +.\" End of "$Id$". +.\" diff --git a/man/cupsaccept.man b/man/cupsaccept.man index e870ebc38..a03ae5d50 100644 --- a/man/cupsaccept.man +++ b/man/cupsaccept.man @@ -3,7 +3,7 @@ .\" .\" accept/reject man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -73,7 +73,7 @@ require the root user to execute these commands. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cupsaccept.man 7930 2008-09-10 22:25:54Z mike $". .\" diff --git a/man/cupsaddsmb.man.in b/man/cupsaddsmb.man.in index 8632ada23..a8134142d 100644 --- a/man/cupsaddsmb.man.in +++ b/man/cupsaddsmb.man.in @@ -3,7 +3,7 @@ .\" .\" cupsaddsmb man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -208,7 +208,7 @@ http://localhost:631/help http://www.cups.org/windows/ .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cupsaddsmb.man.in 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupsctl.man b/man/cupsctl.man index f5f5b5cc8..9e0e7d576 100644 --- a/man/cupsctl.man +++ b/man/cupsctl.man @@ -3,7 +3,7 @@ .\" .\" cupsctl man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 2007 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -101,7 +101,7 @@ You cannot set the Listen or Port directives using \fIcupsctl\fR. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cupsctl.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupsd.man.in b/man/cupsd.man.in index 15ee6323a..2e4b8cd12 100644 --- a/man/cupsd.man.in +++ b/man/cupsd.man.in @@ -3,7 +3,7 @@ .\" .\" cupsd man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -66,7 +66,7 @@ operations. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cupsd.man.in 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupsenable.man b/man/cupsenable.man index 9bbe7fab3..6ed5ee846 100644 --- a/man/cupsenable.man +++ b/man/cupsenable.man @@ -3,7 +3,7 @@ .\" .\" cupsenable/cupsdisable man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -86,7 +86,7 @@ require the root user to execute these commands. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cupsenable.man 7600 2008-05-20 21:06:23Z mike $". diff --git a/man/cupsfilter.man b/man/cupsfilter.man index e4f961d33..d85cb194b 100644 --- a/man/cupsfilter.man +++ b/man/cupsfilter.man @@ -3,7 +3,7 @@ .\" .\" cupsfilter man page for CUPS. .\" -.\" Copyright 2007-2010 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" .\" These coded instructions, statements, and computer programs are the .\" property of Apple Inc. and are protected by Federal copyright @@ -18,7 +18,7 @@ cupsfilter \- convert a file to another format using cups filters .B cupsfilter [ -c .I config-file -] [ -d +] [ -d .I printer ] [ -e ] -j .I job-id[,N] @@ -85,7 +85,7 @@ This will be addressed in a future CUPS release. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2010 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cupsfilter.man 7936 2008-09-11 03:12:59Z mike $". .\" diff --git a/man/cupstestdsc.man b/man/cupstestdsc.man index 7bfed4e84..62bc25bc9 100644 --- a/man/cupstestdsc.man +++ b/man/cupstestdsc.man @@ -3,7 +3,7 @@ .\" .\" cupstestdsc man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -44,7 +44,7 @@ http://localhost:631/help Adobe PostScript Language Document Structuring Conventions Specification, Version 3.0. .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cupstestdsc.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/cupstestppd.man b/man/cupstestppd.man index 0f94d7454..f1d90f258 100644 --- a/man/cupstestppd.man +++ b/man/cupstestppd.man @@ -3,7 +3,7 @@ .\" .\" cupstestppd man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -159,7 +159,7 @@ http://localhost:631/help .br Adobe PostScript Printer Description File Format Specification, Version 4.3. .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: cupstestppd.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/filter.man b/man/filter.man index 9dbd1ea0d..50b087247 100644 --- a/man/filter.man +++ b/man/filter.man @@ -3,7 +3,7 @@ .\" .\" filter man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2007 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -12,7 +12,7 @@ .\" which should have been included with this file. If this file is .\" file is missing or damaged, see the license at "http://www.cups.org/". .\" -.TH filter 7 "CUPS" "13 May 2009" "Apple Inc." +.TH filter 7 "CUPS" "13 April 2012" "Apple Inc." .SH NAME filter \- cups file conversion filter interface .SH SYNOPSIS @@ -33,7 +33,14 @@ standard output. .LP The command name (argv[0]) is set to the name of the destination printer but is also available in the PRINTER environment variable. - +.SH WARNING +CUPS filters are not meant to be run directly by the user. Aside from the legacy +System V interface issues (argv[0] is the printer name), CUPS filters also +expect specific environment variables and file descriptors, and typically run in +a user session that (on OS X) has additional restrictions that affect how it +runs. Unless you are a developer and know what you are doing, please do not run +filters directly. Instead, use the \fIcupsfilter(8)\fR program to use the +appropriate filters to do the conversions you need. .SH OPTIONS Options passed on the command-line typically do not include the default choices the printer's PPD file. In addition, some options may be specified in multiple @@ -48,67 +55,59 @@ Raster filters should use option choices set through the raster page header, as those reflect the options in effect for a given page. Options specified on the command-line determine the default values for the entire job, which can be overridden on a per-page basis. - .SH LOG MESSAGES Messages sent to stderr are generally logged to printer-state-message attribute and the current \fIErrorLog\fR. Each line begins with a standard prefix: - .TP 5 ALERT: message .br Sets the printer-state-message attribute and adds the specified message to the current \fIErrorLog\fR using the "alert" log level. - .TP 5 ATTR: attribute=value [attribute=value] .br -Sets the named job attribute(s). Typically this will be used to -set the job-remote-id attribute. - +Sets the named job or printer attribute(s). The following job attributes can be +set: "job-media-progress". The following printer attributes can be set: +"auth-info-required", "marker-colors", "marker-high-levels", "marker-levels", +"marker-low-levels", "marker-message", "marker-names", "marker-types", +"printer-alert", and "printer-alert-description". .TP 5 CRIT: message .br Sets the printer-state-message attribute and adds the specified message to the current \fIErrorLog\fR using the "critical" log level. - .TP 5 DEBUG: message .br Sets the printer-state-message attribute and adds the specified message to the current \fIErrorLog\fR using the "debug" log level. - .TP 5 DEBUG2: message .br Sets the printer-state-message attribute and adds the specified message to the current \fIErrorLog\fR using the "debug2" log level. - .TP 5 EMERG: message .br Sets the printer-state-message attribute and adds the specified message to the current \fIErrorLog\fR using the "emergency" log level. - .TP 5 ERROR: message .br Sets the printer-state-message attribute and adds the specified message to the current \fIErrorLog\fR using the "error" log level. - .TP 5 INFO: message .br Sets the printer-state-message attribute. If the current \fILogLevel\fR is set to "debug2", also adds the specified message to the current \fIErrorLog\fR using the "info" log level. - .TP 5 NOTICE: message .br Sets the printer-state-message attribute and adds the specified message to the current \fIErrorLog\fR using the "notice" log level. - .TP 5 PAGE: page-number #-copies .TP 5 @@ -117,14 +116,12 @@ PAGE: total #-pages Adds an entry to the current \fIPageLog\fR. The first form adds #-copies to the job-media-sheets-completed attribute. The second form sets the job-media-sheets-completed attribute to #-pages. - .TP 5 PPD: Keyword=Value ... KeywordN=Value .br Sets the named keywords in the printer's PPD file. This is typically used to update default option keywords such as DefaultPageSize and the various installable options in the PPD file. - .TP 5 STATE: printer-state-reason [printer-state-reason ...] .TP 5 @@ -135,122 +132,102 @@ STATE: - printer-state-reason [printer-state-reason ...] Sets, adds, or removes printer-state-reason keywords to the current queue. Typically this is used to indicate media, ink, and toner conditions on a printer. - .TP 5 WARNING: message .br Sets the printer-state-message attribute and adds the specified message to the current \fIErrorLog\fR using the "warning" log level. - .SH ENVIRONMENT VARIABLES The following environment variables are defined by the CUPS server when executing the filter: - .TP 5 CHARSET .br The default text character set, typically utf-8. - .TP 5 CLASS .br When a job is submitted to a printer class, contains the name of the destination printer class. Otherwise this environment variable will not be set. - .TP 5 CONTENT_TYPE .br The MIME type associated with the file (e.g. application/postscript). - .TP 5 CUPS_CACHEDIR .br The directory for semi-persistent cache files can be found. - .TP 5 CUPS_DATADIR .br The directory where data files can be found. - .TP 5 CUPS_FILETYPE .br The type of file being printed: "job-sheet" for a banner page and "document" for a regular print file. - .TP 5 CUPS_SERVERROOT .br The root directory of the server. - .TP 5 DEVICE_URI .br The device-uri associated with the printer. - .TP 5 FINAL_CONTENT_TYPE .br The MIME type associated with the printer (e.g. application/vnd.cups-postscript). - .TP 5 LANG .br The default language locale (typically C or en). - .TP 5 PATH .br The standard execution path for external programs that may be run by the filter. - .TP 5 PPD .br The full pathname of the PostScript Printer Description (PPD) file for this printer. - .TP 5 PRINTER .br The name of the printer. - .TP 5 RIP_CACHE .br The recommended amount of memory to use for Raster Image Processors (RIPs). - .TP 5 SOFTWARE .br The name and version number of the server (typically CUPS/1.2). - .TP 5 TZ .br The timezone of the server. - .TP 5 USER .br The user executing the filter, typically "lp" or "root"; consult the \fIcupsd.conf(5)\fR file for the current setting. - .SH COMPATIBILITY While the filter interface is compatible with System V interface scripts, it will only work with the System V interface script as the only filter. Typically the interface script will be provided via the \fIlpadmin(8)\fR command using the \fI-i\fR option. .SH SEE ALSO -\fIbackend(7)\fR, \fIcupsd(8)\fR, +\fIbackend(7)\fR, \fIcupsd(8)\fR, \fIcupsfilter(8)\fR, .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: filter.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/ipptool.man b/man/ipptool.man index 7b190031c..3fb0f8f44 100644 --- a/man/ipptool.man +++ b/man/ipptool.man @@ -3,7 +3,7 @@ .\" .\" ipptool man page for CUPS. .\" -.\" Copyright 2010 by Apple Inc. +.\" Copyright 2010-2012 by Apple Inc. .\" .\" These coded instructions, statements, and computer programs are the .\" property of Apple Inc. and are protected by Federal copyright @@ -108,12 +108,25 @@ Send email notifications to "user@example.com" when "myprinter" changes: .SH STANDARD FILES The following standard files are available: .nf + color.jpg create-printer-subscription.test + document-a4.pdf + document-a4.ps + document-letter.pdf + document-letter.ps get-completed-jobs.test get-jobs.test + get-printer-attributes.test + gray.jpg ipp-1.1.test ipp-2.0.test ipp-2.1.test + ipp-2.2.test + onepage-a4.pdf + onepage-a4.ps + onepage-letter.pdf + onepage-letter.ps + print-job.test testfile.jpg testfile.pdf testfile.ps @@ -124,7 +137,7 @@ The following standard files are available: .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2010 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id$". .\" diff --git a/man/lp.man b/man/lp.man index 260921660..4749daf22 100644 --- a/man/lp.man +++ b/man/lp.man @@ -3,7 +3,7 @@ .\" .\" lp man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -252,7 +252,7 @@ is highest priority). .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lp.man 7889 2008-08-29 22:03:35Z mike $". .\" diff --git a/man/lpadmin.man b/man/lpadmin.man index 9552c30f4..2bc635897 100644 --- a/man/lpadmin.man +++ b/man/lpadmin.man @@ -3,7 +3,7 @@ .\" .\" lpadmin man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -222,7 +222,7 @@ System V or Solaris printing system configuration options. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lpadmin.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpc.man b/man/lpc.man index 383e60bf7..d38011991 100644 --- a/man/lpc.man +++ b/man/lpc.man @@ -3,7 +3,7 @@ .\" .\" lpc man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -65,7 +65,7 @@ standard Berkeley or LPRng commands. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lpc.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpinfo.man b/man/lpinfo.man index 7a5f1796a..4a8324228 100644 --- a/man/lpinfo.man +++ b/man/lpinfo.man @@ -3,7 +3,7 @@ .\" .\" lpinfo man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -109,7 +109,7 @@ The \fIlpinfo\fR command is unique to CUPS. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lpinfo.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpmove.man b/man/lpmove.man index d7a764050..2100e0a30 100644 --- a/man/lpmove.man +++ b/man/lpmove.man @@ -3,7 +3,7 @@ .\" .\" lpmove man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -60,7 +60,7 @@ Specifies an alternate server. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lpmove.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpoptions.man.in b/man/lpoptions.man.in index e799fcab3..3658f8f5e 100644 --- a/man/lpoptions.man.in +++ b/man/lpoptions.man.in @@ -3,7 +3,7 @@ .\" .\" lpoptions man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -129,7 +129,7 @@ created by the root user. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lpoptions.man.in 7889 2008-08-29 22:03:35Z mike $". .\" diff --git a/man/lppasswd.man b/man/lppasswd.man index 0db15c9d2..b64d642d8 100644 --- a/man/lppasswd.man +++ b/man/lppasswd.man @@ -3,7 +3,7 @@ .\" .\" lpadmin man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -62,7 +62,7 @@ accounts managed by PAM instead. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lppasswd.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpq.man b/man/lpq.man index 26fc7d3e3..f1d87ae01 100644 --- a/man/lpq.man +++ b/man/lpq.man @@ -3,7 +3,7 @@ .\" .\" lpq man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -66,7 +66,7 @@ Requests a more verbose (long) reporting format. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lpq.man 7646 2008-06-16 17:26:20Z mike $". .\" diff --git a/man/lpr.man b/man/lpr.man index 4c435cb75..1dcc937d0 100644 --- a/man/lpr.man +++ b/man/lpr.man @@ -3,7 +3,7 @@ .\" .\" lpr man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -116,7 +116,7 @@ are not supported by CUPS and produce a warning message if used. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lpr.man 7889 2008-08-29 22:03:35Z mike $". .\" diff --git a/man/lprm.man b/man/lprm.man index 0d6272869..36e90841f 100644 --- a/man/lprm.man +++ b/man/lprm.man @@ -3,7 +3,7 @@ .\" .\" lprm man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -59,7 +59,7 @@ Berkeley \fIlprm\fR command. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lprm.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/lpstat.man b/man/lpstat.man index 19f536b82..92f611283 100644 --- a/man/lpstat.man +++ b/man/lpstat.man @@ -3,7 +3,7 @@ .\" .\" lpstat man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -137,7 +137,7 @@ The Solaris "-f", "-P", and "-S" options are silently ignored. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: lpstat.man 7921 2008-09-10 15:42:24Z mike $". .\" diff --git a/man/mailto.conf.man b/man/mailto.conf.man index c7806c5b8..d603dd0dd 100644 --- a/man/mailto.conf.man +++ b/man/mailto.conf.man @@ -3,7 +3,7 @@ .\" .\" mailto.conf man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -54,7 +54,7 @@ Specifies a prefix string for the subject line of an email notification. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: mailto.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/mime.convs.man b/man/mime.convs.man index ddafa7bd3..14622a992 100644 --- a/man/mime.convs.man +++ b/man/mime.convs.man @@ -3,7 +3,7 @@ .\" .\" mime.convs man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -40,7 +40,7 @@ application/postscript application/vnd.cups-raster 50 pstoraster .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: mime.convs.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/mime.types.man b/man/mime.types.man index 809817024..5ed9ebdf6 100644 --- a/man/mime.types.man +++ b/man/mime.types.man @@ -3,7 +3,7 @@ .\" .\" mime.types man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -109,7 +109,7 @@ higher priority than "text/bar", "text/foo" will be chosen instead. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: mime.types.man 7670 2008-06-17 22:42:08Z mike $". .\" diff --git a/man/notifier.man b/man/notifier.man index d2cd149eb..cc6e800c2 100644 --- a/man/notifier.man +++ b/man/notifier.man @@ -3,7 +3,7 @@ .\" .\" notifier man page for CUPS. .\" -.\" Copyright 2007-2009 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2007 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -151,7 +151,7 @@ file for the current setting. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2009 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id$". .\" diff --git a/man/ppdcfile.man b/man/ppdcfile.man index 083ed56a4..6a0733853 100644 --- a/man/ppdcfile.man +++ b/man/ppdcfile.man @@ -3,7 +3,7 @@ .\" .\" ppdcfile man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2007 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -165,7 +165,7 @@ ppdc(1), ppdhtml(1), ppdi(1), ppdmerge(1), ppdpo(1) .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: ppdcfile.man 7607 2008-05-21 01:06:23Z mike $". .\" diff --git a/man/ppdhtml.man b/man/ppdhtml.man index 20b9469e4..bb3d57a26 100644 --- a/man/ppdhtml.man +++ b/man/ppdhtml.man @@ -3,7 +3,7 @@ .\" .\" ppdhtml man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2007 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -40,7 +40,7 @@ ppdc(1), ppdcfile(5), ppdi(1), ppdmerge(1), ppdpo(1) .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: ppdhtml.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/ppdi.man b/man/ppdi.man index 2bf3763f9..dea64ec74 100644 --- a/man/ppdi.man +++ b/man/ppdi.man @@ -3,7 +3,7 @@ .\" .\" ppdi man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2007 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -40,7 +40,7 @@ ppdc(1), ppdhtml(1), ppdmerge(1), ppdpo(1), ppdcfile(5) .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: ppdi.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/ppdmerge.man b/man/ppdmerge.man index d4ee25fcb..fcd495fd4 100644 --- a/man/ppdmerge.man +++ b/man/ppdmerge.man @@ -3,7 +3,7 @@ .\" .\" ppdmerge man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2007 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -41,7 +41,7 @@ cupsprofile(1), ppdc(1), ppdhtml(1), ppdi(1), ppdpo(1), ppdcfile(5) .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: ppdmerge.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/ppdpo.man b/man/ppdpo.man index a6943985f..8e6c5f544 100644 --- a/man/ppdpo.man +++ b/man/ppdpo.man @@ -3,7 +3,7 @@ .\" .\" ppdpo man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2007 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -12,7 +12,7 @@ .\" which should have been included with this file. If this file is .\" file is missing or damaged, see the license at "http://www.cups.org/". .\" -.TH ppdpo 1 "CUPS" "10 October 2008" "Apple Inc." +.TH ppdpo 1 "CUPS" "23 April 2012" "Apple Inc." .SH NAME ppdpo \- ppd message catalog generator .SH SYNOPSIS @@ -27,7 +27,7 @@ ppdpo \- ppd message catalog generator .I source-file .SH DESCRIPTION \fIppdpo\fR extracts UI strings from PPDC source files and updates either -a GNU gettext or Mac OS X strings format message catalog source file for +a GNU gettext or OS X strings format message catalog source file for translation. .PP The \fI-D\fR option sets the named variable for use in the @@ -40,13 +40,13 @@ directories. .PP The \fI-o\fR option specifies the output file. The supported extensions are ".po" or ".po.gz" for GNU gettext format message catalogs and ".strings" for -Mac OS X strings files. +OS X strings files. .SH SEE ALSO ppdc(1), ppdhtml(1), ppdi(1), ppdmerge(1), ppdcfile(5) .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: ppdpo.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/printers.conf.man b/man/printers.conf.man index b3fdce383..d6902f7e8 100644 --- a/man/printers.conf.man +++ b/man/printers.conf.man @@ -3,7 +3,7 @@ .\" .\" printers.conf man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 1997-2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -118,7 +118,7 @@ Specifies the date/time associated with the state. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: printers.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/man/subscriptions.conf.man b/man/subscriptions.conf.man index e2faa1406..2642ee7d8 100644 --- a/man/subscriptions.conf.man +++ b/man/subscriptions.conf.man @@ -3,7 +3,7 @@ .\" .\" subscriptions.conf man page for CUPS. .\" -.\" Copyright 2007-2011 by Apple Inc. +.\" Copyright 2007-2012 by Apple Inc. .\" Copyright 2006 by Easy Software Products. .\" .\" These coded instructions, statements, and computer programs are the @@ -83,7 +83,7 @@ is typically the "from" address in mailto: notifications. .br http://localhost:631/help .SH COPYRIGHT -Copyright 2007-2011 by Apple Inc. +Copyright 2007-2012 by Apple Inc. .\" .\" End of "$Id: subscriptions.conf.man 7600 2008-05-20 21:06:23Z mike $". .\" diff --git a/monitor/Dependencies b/monitor/Dependencies index 594a83cf8..54d05e76a 100644 --- a/monitor/Dependencies +++ b/monitor/Dependencies @@ -1,14 +1,13 @@ -bcp.o: bcp.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -tbcp.o: tbcp.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h +bcp.o: bcp.c ../cups/cups-private.h ../cups/string-private.h ../config.h \ + ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +tbcp.o: tbcp.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h diff --git a/notifier/Dependencies b/notifier/Dependencies index 582d6f599..f5a26a468 100644 --- a/notifier/Dependencies +++ b/notifier/Dependencies @@ -1,20 +1,20 @@ dbus.o: dbus.c ../cups/cups.h ../cups/file.h ../cups/versioning.h \ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ ../cups/string-private.h ../config.h -mailto.o: mailto.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h +mailto.o: mailto.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h rss.o: rss.c ../cups/cups.h ../cups/file.h ../cups/versioning.h \ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ ../cups/string-private.h ../config.h ../cups/ipp-private.h -testnotify.o: testnotify.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h +testnotify.o: testnotify.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h diff --git a/packaging/InstallationCheck b/packaging/InstallationCheck index 4e3405caa..3458cbb5c 100755 --- a/packaging/InstallationCheck +++ b/packaging/InstallationCheck @@ -1,11 +1,11 @@ #!/bin/sh case `uname -r` in - # Mac OS X 10.4.x - 8.*) exit 0;; + # OS X 10.7.x + 11.*) exit 0;; - # Mac OS X 10.5.x - 9.*) exit 0;; + # OS X 10.8.x + 12.*) exit 0;; - # Older Mac OS X... + # Older OS X... *) exit 97;; esac diff --git a/packaging/cups.list.in b/packaging/cups.list.in index e842e6206..8f1f4a106 100644 --- a/packaging/cups.list.in +++ b/packaging/cups.list.in @@ -26,7 +26,7 @@ %version @CUPS_VERSION@ %format all %description CUPS is the standards-based, open source printing system developed by -%description Apple Inc. for Mac OS® X and other UNIX®-like operating systems. +%description Apple Inc. for OS X and other UNIX®-like operating systems. %format rpm %provides lpd @@ -277,7 +277,9 @@ l 0700 root sys $SERVERBIN/backend/ipps ipp f 0500 root sys $SERVERBIN/backend/lpd backend/lpd %if DNSSD_BACKEND f 0500 root sys $SERVERBIN/backend/dnssd backend/dnssd +%system darwin l 0700 root sys $SERVERBIN/backend/mdns dnssd +%system all %endif f 0555 root sys $SERVERBIN/backend/snmp backend/snmp f 0555 root sys $SERVERBIN/backend/socket backend/socket @@ -420,27 +422,27 @@ d 0755 root $CUPS_GROUP $STATEDIR - d 0511 root $CUPS_PRIMARY_SYSTEM_GROUP $STATEDIR/certs - # Data files -f 0444 root sys $LOCALEDIR/da/cups_da.po locale/cups_da.po -f 0444 root sys $LOCALEDIR/de/cups_de.po locale/cups_de.po -f 0444 root sys $LOCALEDIR/es/cups_es.po locale/cups_es.po +#f 0444 root sys $LOCALEDIR/da/cups_da.po locale/cups_da.po +#f 0444 root sys $LOCALEDIR/de/cups_de.po locale/cups_de.po +#f 0444 root sys $LOCALEDIR/es/cups_es.po locale/cups_es.po #f 0444 root sys $LOCALEDIR/et/cups_et.po locale/cups_et.po -f 0444 root sys $LOCALEDIR/eu/cups_eu.po locale/cups_eu.po -f 0444 root sys $LOCALEDIR/fi/cups_fi.po locale/cups_fi.po -f 0444 root sys $LOCALEDIR/fr/cups_fr.po locale/cups_fr.po +#f 0444 root sys $LOCALEDIR/eu/cups_eu.po locale/cups_eu.po +#f 0444 root sys $LOCALEDIR/fi/cups_fi.po locale/cups_fi.po +#f 0444 root sys $LOCALEDIR/fr/cups_fr.po locale/cups_fr.po #f 0444 root sys $LOCALEDIR/he/cups_he.po locale/cups_he.po -f 0444 root sys $LOCALEDIR/id/cups_id.po locale/cups_id.po -f 0444 root sys $LOCALEDIR/it/cups_it.po locale/cups_it.po -f 0444 root sys $LOCALEDIR/ja/cups_ja.po locale/cups_ja.po -f 0444 root sys $LOCALEDIR/ko/cups_ko.po locale/cups_ko.po -f 0444 root sys $LOCALEDIR/nl/cups_nl.po locale/cups_nl.po -f 0444 root sys $LOCALEDIR/no/cups_no.po locale/cups_no.po -f 0444 root sys $LOCALEDIR/pl/cups_pl.po locale/cups_pl.po -f 0444 root sys $LOCALEDIR/pt/cups_pt.po locale/cups_pt.po -f 0444 root sys $LOCALEDIR/pt_BR/cups_pt_BR.po locale/cups_pt_BR.po -f 0444 root sys $LOCALEDIR/ru/cups_ru.po locale/cups_ru.po -f 0444 root sys $LOCALEDIR/sv/cups_sv.po locale/cups_sv.po -f 0444 root sys $LOCALEDIR/zh/cups_zh.po locale/cups_zh.po -f 0444 root sys $LOCALEDIR/zh_TW/cups_zh_TW.po locale/cups_zh_TW.po +#f 0444 root sys $LOCALEDIR/id/cups_id.po locale/cups_id.po +#f 0444 root sys $LOCALEDIR/it/cups_it.po locale/cups_it.po +#f 0444 root sys $LOCALEDIR/ja/cups_ja.po locale/cups_ja.po +#f 0444 root sys $LOCALEDIR/ko/cups_ko.po locale/cups_ko.po +#f 0444 root sys $LOCALEDIR/nl/cups_nl.po locale/cups_nl.po +#f 0444 root sys $LOCALEDIR/no/cups_no.po locale/cups_no.po +#f 0444 root sys $LOCALEDIR/pl/cups_pl.po locale/cups_pl.po +#f 0444 root sys $LOCALEDIR/pt/cups_pt.po locale/cups_pt.po +#f 0444 root sys $LOCALEDIR/pt_BR/cups_pt_BR.po locale/cups_pt_BR.po +#f 0444 root sys $LOCALEDIR/ru/cups_ru.po locale/cups_ru.po +#f 0444 root sys $LOCALEDIR/sv/cups_sv.po locale/cups_sv.po +#f 0444 root sys $LOCALEDIR/zh/cups_zh.po locale/cups_zh.po +#f 0444 root sys $LOCALEDIR/zh_TW/cups_zh_TW.po locale/cups_zh_TW.po d 0755 root sys $DATADIR - @@ -465,8 +467,13 @@ d 0755 root sys $DATADIR/ipptool - f 0444 root sys $DATADIR/ipptool/create-printer-subscription.test test/create-printer-subscription.test f 0444 root sys $DATADIR/ipptool/get-completed-jobs.test test/get-completed-jobs.test f 0444 root sys $DATADIR/ipptool/get-jobs.test test/get-jobs.test +f 0444 root sys $DATADIR/ipptool/get-printer-attributes.test test/get-printer-attributes.test +f 0444 root sys $DATADIR/ipptool/print-job.test test/print-job.test +f 0444 root sys $DATADIR/ipptool test/document-*.p* f 0444 root sys $DATADIR/ipptool test/ipp-*.test -f 0444 root sys $DATADIR/ipptool test/testfile.* +f 0444 root sys $DATADIR/ipptool test/onepage-*.p* +f 0444 root sys $DATADIR/ipptool/color.jpg test/color.jpg +f 0444 root sys $DATADIR/ipptool/gray.jpg test/gray.jpg d 0755 root sys $DATADIR/mime - f 0444 root sys $DATADIR/mime/mime.convs conf/mime.convs @@ -482,17 +489,17 @@ d 0755 root sys $DATADIR/templates - f 0444 root sys $DATADIR/templates templates/*.tmpl ## Template files -d 0755 root sys $DATADIR/templates/de -f 0444 root sys $DATADIR/templates/de templates/de/*.tmpl +#d 0755 root sys $DATADIR/templates/de +#f 0444 root sys $DATADIR/templates/de templates/de/*.tmpl -d 0755 root sys $DATADIR/templates/es -f 0444 root sys $DATADIR/templates/es templates/es/*.tmpl +#d 0755 root sys $DATADIR/templates/es +#f 0444 root sys $DATADIR/templates/es templates/es/*.tmpl #d 0755 root sys $DATADIR/templates/et #f 0444 root sys $DATADIR/templates/et templates/et/*.tmpl -d 0755 root sys $DATADIR/templates/eu -f 0444 root sys $DATADIR/templates/eu templates/eu/*.tmpl +#d 0755 root sys $DATADIR/templates/eu +#f 0444 root sys $DATADIR/templates/eu templates/eu/*.tmpl #d 0755 root sys $DATADIR/templates/fr #f 0444 root sys $DATADIR/templates/fr templates/fr/*.tmpl @@ -500,20 +507,20 @@ f 0444 root sys $DATADIR/templates/eu templates/eu/*.tmpl #d 0755 root sys $DATADIR/templates/he #f 0444 root sys $DATADIR/templates/he templates/he/*.tmpl -d 0755 root sys $DATADIR/templates/id -f 0444 root sys $DATADIR/templates/id templates/id/*.tmpl +#d 0755 root sys $DATADIR/templates/id +#f 0444 root sys $DATADIR/templates/id templates/id/*.tmpl -d 0755 root sys $DATADIR/templates/it -f 0444 root sys $DATADIR/templates/it templates/it/*.tmpl +#d 0755 root sys $DATADIR/templates/it +#f 0444 root sys $DATADIR/templates/it templates/it/*.tmpl -d 0755 root sys $DATADIR/templates/ja -f 0444 root sys $DATADIR/templates/ja templates/ja/*.tmpl +#d 0755 root sys $DATADIR/templates/ja +#f 0444 root sys $DATADIR/templates/ja templates/ja/*.tmpl -d 0755 root sys $DATADIR/templates/pl -f 0444 root sys $DATADIR/templates/pl templates/pl/*.tmpl +#d 0755 root sys $DATADIR/templates/pl +#f 0444 root sys $DATADIR/templates/pl templates/pl/*.tmpl -d 0755 root sys $DATADIR/templates/ru -f 0444 root sys $DATADIR/templates/ru templates/ru/*.tmpl +#d 0755 root sys $DATADIR/templates/ru +#f 0444 root sys $DATADIR/templates/ru templates/ru/*.tmpl #d 0755 root sys $DATADIR/templates/sv #f 0444 root sys $DATADIR/templates/sv templates/sv/*.tmpl @@ -547,19 +554,16 @@ f 0444 root sys $INCLUDEDIR/cups/dir.h cups/dir.h f 0444 root sys $INCLUDEDIR/cups/file.h cups/file.h f 0444 root sys $INCLUDEDIR/cups/http.h cups/http.h f 0444 root sys $INCLUDEDIR/cups/ipp.h cups/ipp.h -f 0444 root sys $INCLUDEDIR/cups/mime.h scheduler/mime.h f 0444 root sys $INCLUDEDIR/cups/language.h cups/language.h f 0444 root sys $INCLUDEDIR/cups/ppd.h cups/ppd.h f 0444 root sys $INCLUDEDIR/cups/raster.h cups/raster.h +f 0444 root sys $INCLUDEDIR/cups/sidechannel.h cups/sidechannel.h f 0444 root sys $INCLUDEDIR/cups/transcode.h cups/transcode.h +f 0444 root sys $INCLUDEDIR/cups/versioning.h cups/versioning.h %if INSTALLSTATIC f 0444 root sys $LIBDIR/libcups.a cups/libcups.a -f 0444 root sys $LIBDIR/libcupscgi.a cgi-bin/libcupscgi.a -f 0444 root sys $LIBDIR/libcupsdriver.a driver/libcupsdriver.a f 0444 root sys $LIBDIR/libcupsimage.a filter/libcupsimage.a -f 0444 root sys $LIBDIR/libcupsmime.a scheduler/libcupsmime.a -f 0444 root sys $LIBDIR/libcupsppdc.a ppdc/libcupsppdc.a %endif d 0755 root sys $DOCDIR/help - @@ -598,17 +602,17 @@ f 0444 root sys $DOCDIR/images doc/images/*.png f 0444 root sys $DOCDIR/robots.txt doc/robots.txt # Localized documentation files -d 0755 root sys $DOCDIR/de -f 0444 root sys $DOCDIR/de doc/de/*.html +#d 0755 root sys $DOCDIR/de +#f 0444 root sys $DOCDIR/de doc/de/*.html -d 0755 root sys $DOCDIR/es -f 0444 root sys $DOCDIR/es doc/es/*.html +#d 0755 root sys $DOCDIR/es +#f 0444 root sys $DOCDIR/es doc/es/*.html #d 0755 root sys $DOCDIR/et #f 0444 root sys $DOCDIR/et doc/et/*.html -d 0755 root sys $DOCDIR/eu -f 0444 root sys $DOCDIR/eu doc/eu/*.html +#d 0755 root sys $DOCDIR/eu +#f 0444 root sys $DOCDIR/eu doc/eu/*.html #d 0755 root sys $DOCDIR/fr #f 0444 root sys $DOCDIR/fr doc/fr/*.html @@ -617,20 +621,20 @@ f 0444 root sys $DOCDIR/eu doc/eu/*.html #f 0444 root sys $DOCDIR/he doc/he/*.html #f 0444 root sys $DOCDIR/he/cups.css doc/he/cups.css -d 0755 root sys $DOCDIR/id -f 0444 root sys $DOCDIR/id doc/id/*.html +#d 0755 root sys $DOCDIR/id +#f 0444 root sys $DOCDIR/id doc/id/*.html -d 0755 root sys $DOCDIR/it -f 0444 root sys $DOCDIR/it doc/it/*.html +#d 0755 root sys $DOCDIR/it +#f 0444 root sys $DOCDIR/it doc/it/*.html -d 0755 root sys $DOCDIR/ja -f 0444 root sys $DOCDIR/ja doc/ja/*.html +#d 0755 root sys $DOCDIR/ja +#f 0444 root sys $DOCDIR/ja doc/ja/*.html -d 0755 root sys $DOCDIR/pl -f 0444 root sys $DOCDIR/pl doc/pl/*.html +#d 0755 root sys $DOCDIR/pl +#f 0444 root sys $DOCDIR/pl doc/pl/*.html -d 0755 root sys $DOCDIR/ru -f 0444 root sys $DOCDIR/ru doc/ru/*.html +#d 0755 root sys $DOCDIR/ru +#f 0444 root sys $DOCDIR/ru doc/ru/*.html #d 0755 root sys $DOCDIR/sv #f 0444 root sys $DOCDIR/sv doc/sv/*.html @@ -659,6 +663,7 @@ f 0444 root sys $MANDIR/man1/lpstat.$MAN1EXT man/lpstat.$MAN1EXT f 0444 root sys $MANDIR/man1/lp.$MAN1EXT man/lp.$MAN1EXT f 0444 root sys $MANDIR/man5/classes.conf.$MAN5EXT man/classes.conf.$MAN5EXT +f 0444 root sys $MANDIR/man5/cups-snmp.conf.$MAN5EXT man/cups-snmp.conf.$MAN5EXT f 0444 root sys $MANDIR/man5/cupsd.conf.$MAN5EXT man/cupsd.conf.$MAN5EXT f 0444 root sys $MANDIR/man5/ipptoolfile.$MAN5EXT man/ipptoolfile.$MAN5EXT f 0444 root sys $MANDIR/man5/mailto.conf.$MAN5EXT man/mailto.conf.$MAN5EXT @@ -672,7 +677,7 @@ l 0644 root sys $AMANDIR/man$MAN8DIR/cupsreject.$MAN8EXT cupsaccept.$MAN8EXT f 0444 root sys $AMANDIR/man$MAN8DIR/cupsaddsmb.$MAN8EXT man/cupsaddsmb.$MAN8EXT f 0444 root sys $AMANDIR/man$MAN8DIR/cupsctl.$MAN8EXT man/cupsctl.$MAN8EXT f 0444 root sys $AMANDIR/man$MAN8DIR/cupsfilter.$MAN8EXT man/cupsfilter.$MAN8EXT -f 0444 root sys $AMANDIR/man$MAN8DIR/cups-polld.$MAN8EXT man/cups-polld.$MAN8EXT +f 0444 root sys $AMANDIR/man$MAN8DIR/cups-snmp.$MAN8EXT man/cups-snmp.$MAN8EXT f 0444 root sys $AMANDIR/man$MAN8DIR/cupsd.$MAN8EXT man/cupsd.$MAN8EXT f 0444 root sys $AMANDIR/man$MAN8DIR/cupsenable.$MAN8EXT man/cupsenable.$MAN8EXT l 0644 root sys $AMANDIR/man$MAN8DIR/cupsdisable.$MAN8EXT cupsenable.$MAN8EXT diff --git a/packaging/cups.spec.in b/packaging/cups.spec.in index 6eb682395..3c8dc7e5a 100644 --- a/packaging/cups.spec.in +++ b/packaging/cups.spec.in @@ -5,7 +5,7 @@ # # Original version by Jason McMullan . # -# Copyright 2007-2011 by Apple Inc. +# Copyright 2007-2012 by Apple Inc. # Copyright 1999-2007 by Easy Software Products, all rights reserved. # # These coded instructions, statements, and computer programs are the @@ -18,11 +18,17 @@ # Conditional build options (--with name/--without name): # # dbus - Enable/disable DBUS support (default = enable) +# dnssd - Enable/disable DNS-SD support (default = enable) +# static - Enable/disable static libraries (default = enable) %{!?_with_dbus: %{!?_without_dbus: %define _with_dbus --with-dbus}} %{?_with_dbus: %define _dbus --enable-dbus} %{!?_with_dbus: %define _dbus --disable-dbus} +%{!?_with_dnssd: %{!?_without_dnssd: %define _without_dnssd --without-dnssd}} +%{?_with_dnssd: %define _dnssd --enable-dnssd} +%{!?_with_dnssd: %define _dnssd --disable-dnssd} + %{!?_with_static: %{!?_without_static: %define _without_static --without-static}} %{?_with_static: %define _static --enable-static} %{!?_with_static: %define _static --disable-static} @@ -34,7 +40,7 @@ Release: 0 Epoch: 1 License: GPL Group: System Environment/Daemons -Source: http://ftp.easysw.com/pub/cups/%{version}/cups-%{version}-source.tar.bz2 +Source: http://ftp.cups.org/pub/cups/%{version}/cups-%{version}-source.tar.bz2 Url: http://www.cups.org Packager: Anonymous Vendor: Apple Inc. @@ -67,7 +73,7 @@ Requires: %{name} = %{epoch}:%{version} xinetd %description CUPS is the standards-based, open source printing system developed by -Apple Inc. for Mac OS® X and other UNIX®-like operating systems. +Apple Inc. for OS X and other UNIX®-like operating systems. %description devel This package provides the CUPS headers and development environment. @@ -83,7 +89,7 @@ This package provides LPD client support. %build CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_OPT_FLAGS" \ - ./configure %{_dbus} %{_static} + ./configure %{_dbus} %{_dnssd} %{_static} # If we got this far, all prerequisite libraries must be here. make @@ -172,6 +178,9 @@ rm -rf $RPM_BUILD_ROOT /usr/bin/lp* %dir /usr/lib/cups %dir /usr/lib/cups/backend +%if %{?_with_dnssd:1}%{!?_with_dnssd:0} +/usr/lib/cups/backend/dnssd +%endif /usr/lib/cups/backend/http /usr/lib/cups/backend/https %attr(0700,root,root) /usr/lib/cups/backend/ipp diff --git a/ppdc/Dependencies b/ppdc/Dependencies index 660b67c83..bcabc3195 100644 --- a/ppdc/Dependencies +++ b/ppdc/Dependencies @@ -1,208 +1,184 @@ ppdc-array.o: ppdc-array.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-attr.o: ppdc-attr.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-catalog.o: ppdc-catalog.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-choice.o: ppdc-choice.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-constraint.o: ppdc-constraint.cxx ppdc-private.h ppdc.h \ ../cups/file.h ../cups/versioning.h ../cups/cups-private.h \ - ../cups/cups.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -ppdc-driver.o: ppdc-driver.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/ppd-private.h \ + ../cups/ppd.h ../cups/thread-private.h +ppdc-driver.o: ppdc-driver.cxx ppdc-private.h ppdc.h ../cups/file.h \ + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-file.o: ppdc-file.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-filter.o: ppdc-filter.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-font.o: ppdc-font.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-group.o: ppdc-group.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-import.o: ppdc-import.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-mediasize.o: ppdc-mediasize.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-message.o: ppdc-message.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-option.o: ppdc-option.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-profile.o: ppdc-profile.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-shared.o: ppdc-shared.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-source.o: ppdc-source.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/raster.h ../data/epson.h ../data/hp.h \ - ../data/label.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/raster.h ../data/epson.h ../data/hp.h ../data/label.h ppdc-string.o: ppdc-string.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc-variable.o: ppdc-variable.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h genstrings.o: genstrings.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdc.o: ppdc.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdhtml.o: ppdhtml.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdi.o: ppdi.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -ppdmerge.o: ppdmerge.cxx ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +ppdmerge.o: ppdmerge.cxx ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h ppdpo.o: ppdpo.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h testcatalog.o: testcatalog.cxx ppdc-private.h ppdc.h ../cups/file.h \ - ../cups/versioning.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ - ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/versioning.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h diff --git a/ppdc/ppdc-catalog.cxx b/ppdc/ppdc-catalog.cxx index acf178b29..f709d75e1 100644 --- a/ppdc/ppdc-catalog.cxx +++ b/ppdc/ppdc-catalog.cxx @@ -3,7 +3,7 @@ // // Shared message catalog class for the CUPS PPD Compiler. // -// Copyright 2007-2010 by Apple Inc. +// Copyright 2007-2012 by Apple Inc. // Copyright 2002-2006 by Easy Software Products. // // These coded instructions, statements, and computer programs are the @@ -206,8 +206,8 @@ ppdcCatalog::load_messages( else if (!strcmp(ptr, ".strings")) { /* - * Read messages in Mac OS X ".strings" format, which are UTF-16 text - * files of the format: + * Read messages in OS X ".strings" format, which are UTF-16 text files of + * the format: * * "id" = "str"; * @@ -318,7 +318,7 @@ ppdcCatalog::load_messages( int which, // In msgid? haveid, // Did we get a msgid string? havestr; // Did we get a msgstr string? - + linenum = 0; id[0] = '\0'; str[0] = '\0'; diff --git a/ppdc/ppdc.cxx b/ppdc/ppdc.cxx index d8d128db8..b302c8aca 100644 --- a/ppdc/ppdc.cxx +++ b/ppdc/ppdc.cxx @@ -3,7 +3,7 @@ // // PPD file compiler main entry for the CUPS PPD Compiler. // -// Copyright 2007-2011 by Apple Inc. +// Copyright 2007-2012 by Apple Inc. // Copyright 2002-2007 by Easy Software Products. // // These coded instructions, statements, and computer programs are the @@ -449,8 +449,7 @@ usage(void) "as the filename.")); _cupsLangPuts(stdout, _(" -t Test PPDs instead of " "generating them.")); - _cupsLangPuts(stdout, _(" -v Be verbose (more v's for " - "more verbosity).")); + _cupsLangPuts(stdout, _(" -v Be verbose.")); _cupsLangPuts(stdout, _(" -z Compress PPD files using " "GNU zip.")); _cupsLangPuts(stdout, _(" --cr End lines with CR (Mac " @@ -458,7 +457,7 @@ usage(void) _cupsLangPuts(stdout, _(" --crlf End lines with CR + LF " "(Windows).")); _cupsLangPuts(stdout, _(" --lf End lines with LF " - "(UNIX/Linux/Mac OS X).")); + "(UNIX/Linux/OS X).")); exit(1); } diff --git a/ppdc/ppdpo.cxx b/ppdc/ppdpo.cxx index bdf0f7c05..01513fd55 100644 --- a/ppdc/ppdpo.cxx +++ b/ppdc/ppdpo.cxx @@ -3,7 +3,7 @@ // // PPD file message catalog program for the CUPS PPD Compiler. // -// Copyright 2007-2011 by Apple Inc. +// Copyright 2007-2012 by Apple Inc. // Copyright 2002-2005 by Easy Software Products. // // These coded instructions, statements, and computer programs are the @@ -256,8 +256,7 @@ usage(void) "value.")); _cupsLangPuts(stdout, _(" -I include-dir Add include directory to " "search path.")); - _cupsLangPuts(stdout, _(" -v Be verbose (more v's for " - "more verbosity).")); + _cupsLangPuts(stdout, _(" -v Be verbose.")); exit(1); } diff --git a/ppdc/sample.drv b/ppdc/sample.drv index 1af2a6847..2b7e02afb 100644 --- a/ppdc/sample.drv +++ b/ppdc/sample.drv @@ -44,15 +44,6 @@ //#po zh_TW "" // MediaSize sizes used by label drivers... -#media "w81h252/Address - 1 1/8 x 3 1/2\"" 81 252 -#media "w101h252/Large Address - 1 4/10 x 3 1/2\"" 101 252 -#media "w54h144/Return Address - 3/4 x 2\"" 54 144 -#media "w167h288/Shipping Address - 2 5/16 x 4\"" 167 288 -#media "w162h540/Internet Postage 2-Part - 2 1/4 x 7 1/2\"" 162 540 -#media "w162h504/Internet Postage 3-Part - 2 1/4 x 7\"" 162 504 -#media "w41h248/File Folder - 9/16 x 3 7/16\"" 41 248 -#media "w41h144/Hanging Folder - 9/16 x 2\"" 41 144 -#media "w153h198/3.5\" Disk - 2 1/8 x 2 3/4\"" 153 198 #media "w90h18/1.25x0.25\"" 90 18 #media "w90h162/1.25x2.25\"" 90 162 #media "w108h18/1.50x0.25\"" 108 18 @@ -117,7 +108,7 @@ Attribute "FileSystem" "" "False" Attribute "LandscapeOrientation" "" "Plus90" Attribute "TTRasterizer" "" "Type42" -Copyright "Copyright 2007-2011 by Apple Inc." +Copyright "Copyright 2007-2012 by Apple Inc." Copyright "Copyright 1997-2007 by Easy Software Products." Copyright "" Copyright "These coded instructions, statements, and computer programs are the" diff --git a/scheduler/Dependencies b/scheduler/Dependencies index 8fc424f99..20356462d 100644 --- a/scheduler/Dependencies +++ b/scheduler/Dependencies @@ -1,224 +1,264 @@ -auth.o: auth.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -banners.o: banners.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h \ - ../cups/dir.h -cert.o: cert.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -classes.o: classes.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -client.o: client.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -conf.o: conf.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -dirsvc.o: dirsvc.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -env.o: env.c cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/file-private.h mime.h sysman.h \ - statbuf.h cert.h auth.h client.h policy.h printers.h classes.h job.h \ - conf.h banners.h dirsvc.h network.h subscriptions.h -file.o: file.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h \ - ../cups/dir.h -main.o: main.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -ipp.o: ipp.c cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/file-private.h mime.h sysman.h \ - statbuf.h cert.h auth.h client.h policy.h printers.h classes.h job.h \ - conf.h banners.h dirsvc.h network.h subscriptions.h -listen.o: listen.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -job.o: job.c cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/file-private.h mime.h sysman.h \ - statbuf.h cert.h auth.h client.h policy.h printers.h classes.h job.h \ - conf.h banners.h dirsvc.h network.h subscriptions.h ../cups/backend.h \ - ../cups/dir.h -log.o: log.c cupsd.h ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/file-private.h mime.h sysman.h \ - statbuf.h cert.h auth.h client.h policy.h printers.h classes.h job.h \ - conf.h banners.h dirsvc.h network.h subscriptions.h +auth.o: auth.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +avahi.o: avahi.c ../config.h +banners.o: banners.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h ../cups/dir.h +cert.o: cert.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +classes.o: classes.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +client.o: client.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +conf.o: conf.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +dirsvc.o: dirsvc.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +env.o: env.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +file.o: file.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h ../cups/dir.h +main.o: main.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +ipp.o: ipp.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +listen.o: listen.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +job.o: job.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h ../cups/backend.h ../cups/dir.h +log.o: log.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h network.o: network.c ../cups/http-private.h ../config.h ../cups/http.h \ ../cups/versioning.h ../cups/array.h ../cups/md5-private.h \ ../cups/ipp-private.h ../cups/ipp.h cupsd.h ../cups/cups-private.h \ - ../cups/cups.h ../cups/file.h ../cups/language.h \ - ../cups/string-private.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -policy.o: policy.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -printers.o: printers.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h \ - ../cups/dir.h -process.o: process.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -quotas.o: quotas.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -select.o: select.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h + ../cups/string-private.h ../cups/debug-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +policy.o: policy.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +printers.o: printers.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h ../cups/dir.h +process.o: process.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +quotas.o: quotas.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +select.o: select.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h server.o: server.c ../cups/http-private.h ../config.h ../cups/http.h \ ../cups/versioning.h ../cups/array.h ../cups/md5-private.h \ ../cups/ipp-private.h ../cups/ipp.h cupsd.h ../cups/cups-private.h \ - ../cups/cups.h ../cups/file.h ../cups/language.h \ - ../cups/string-private.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h -statbuf.o: statbuf.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h + ../cups/string-private.h ../cups/debug-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +statbuf.o: statbuf.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h subscriptions.o: subscriptions.c cupsd.h ../cups/cups-private.h \ - ../cups/cups.h ../cups/file.h ../cups/versioning.h ../cups/ipp.h \ - ../cups/http.h ../cups/array.h ../cups/language.h \ ../cups/string-private.h ../config.h ../cups/debug-private.h \ - ../cups/ppd-private.h ../cups/ppd.h ../cups/pwg-private.h \ - ../cups/http-private.h ../cups/md5-private.h ../cups/ipp-private.h \ - ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/file-private.h mime.h sysman.h \ - statbuf.h cert.h auth.h client.h policy.h printers.h classes.h job.h \ - conf.h banners.h dirsvc.h network.h subscriptions.h -sysman.o: sysman.c cupsd.h ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h sysman.h statbuf.h cert.h auth.h client.h policy.h printers.h \ - classes.h job.h conf.h banners.h dirsvc.h network.h subscriptions.h + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +sysman.o: sysman.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +timeout.o: timeout.c cupsd.h ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h +tls.o: tls.c cupsd.h ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h sysman.h statbuf.h cert.h auth.h \ + client.h policy.h printers.h classes.h job.h conf.h banners.h dirsvc.h \ + network.h subscriptions.h tls-darwin.c filter.o: filter.c ../cups/string-private.h ../config.h \ ../cups/debug-private.h ../cups/versioning.h mime.h ../cups/array.h \ ../cups/ipp.h ../cups/http.h ../cups/file.h @@ -229,30 +269,31 @@ mime.o: mime.c ../cups/string-private.h ../config.h \ type.o: type.c ../cups/string-private.h ../config.h \ ../cups/debug-private.h ../cups/versioning.h mime.h ../cups/array.h \ ../cups/ipp.h ../cups/http.h ../cups/file.h -cupsfilter.o: cupsfilter.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/file-private.h \ - mime.h +cupsfilter.o: cupsfilter.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h mime.h cups-deviced.o: cups-deviced.c util.h ../cups/array-private.h \ ../cups/array.h ../cups/versioning.h ../cups/file-private.h \ - ../cups/cups-private.h ../cups/cups.h ../cups/file.h ../cups/ipp.h \ - ../cups/http.h ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/dir.h + ../cups/cups-private.h ../cups/string-private.h ../config.h \ + ../cups/debug-private.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/dir.h cups-exec.o: cups-exec.c ../cups/string-private.h ../config.h -cups-lpd.o: cups-lpd.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h +cups-lpd.o: cups-lpd.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h testlpd.o: testlpd.c ../cups/cups.h ../cups/file.h ../cups/versioning.h \ ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/language.h \ ../cups/string-private.h ../config.h @@ -271,17 +312,18 @@ testsub.o: testsub.c ../cups/cups.h ../cups/file.h ../cups/versioning.h \ ../cups/ipp-private.h util.o: util.c util.h ../cups/array-private.h ../cups/array.h \ ../cups/versioning.h ../cups/file-private.h ../cups/cups-private.h \ - ../cups/cups.h ../cups/file.h ../cups/ipp.h ../cups/http.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h cups-driverd.o: cups-driverd.cxx util.h ../cups/array-private.h \ ../cups/array.h ../cups/versioning.h ../cups/file-private.h \ - ../cups/cups-private.h ../cups/cups.h ../cups/file.h ../cups/ipp.h \ - ../cups/http.h ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/dir.h ../ppdc/ppdc.h + ../cups/cups-private.h ../cups/string-private.h ../config.h \ + ../cups/debug-private.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/dir.h ../ppdc/ppdc.h diff --git a/scheduler/Makefile b/scheduler/Makefile index 53b2bfc72..2fa6090f5 100644 --- a/scheduler/Makefile +++ b/scheduler/Makefile @@ -17,7 +17,6 @@ include ../Makedefs CUPSDOBJS = \ auth.o \ - avahi.o \ banners.o \ cert.o \ classes.o \ @@ -41,7 +40,6 @@ CUPSDOBJS = \ statbuf.o \ subscriptions.o \ sysman.o \ - timeout.o \ tls.o LIBOBJS = \ filter.o \ diff --git a/scheduler/avahi.c b/scheduler/avahi.c deleted file mode 100644 index 5761317bf..000000000 --- a/scheduler/avahi.c +++ /dev/null @@ -1,441 +0,0 @@ -/* - * "$Id$" - * - * Avahi poll implementation for the CUPS scheduler. - * - * Copyright (C) 2010, 2011 Red Hat, Inc. - * Authors: - * Tim Waugh - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * - * Contents: - * - * watch_read_cb - Read callback for file descriptor - * watch_write_cb - Write callback for file descriptor - * watched_fd_add_select() - Call cupsdAddSelect() as needed - * watch_new() - Create a new file descriptor watch - * watch_free() - Free a file descriptor watch - * watch_update() - Update watched events for a file descriptor - * watch_get_events() - Get events that happened for a file descriptor - * timeout_cb() - Run a timed Avahi callback - * timeout_new() - Set a wakeup time - * timeout_update() - Update the expiration time for a timeout - * timeout_free() - Free a timeout - * compare_watched_fds() - Compare watched file descriptors for array sorting - * avahi_cups_poll_new() - Create a new Avahi main loop object for CUPS - * avahi_cups_poll_free() - Free an Avahi main loop object for CUPS - * avahi_cups_poll_get() - Get the abstract poll API structure - */ - -#include - -#ifdef HAVE_AVAHI /* Applies to entire file... */ - -/* - * Include necessary headers... - */ - -#include "cupsd.h" - -#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO) -# include -#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */ - -#ifdef HAVE_AVAHI -# include -#endif /* HAVE_AVAHI */ - - -typedef struct -{ - AvahiCupsPoll *cups_poll; - - int fd; - AvahiWatchEvent occurred; - cups_array_t *watches; -} cupsd_watched_fd_t; - -struct AvahiWatch -{ - cupsd_watched_fd_t *watched_fd; - - AvahiWatchEvent events; - AvahiWatchCallback callback; - void *userdata; -}; - -struct AvahiTimeout -{ - AvahiCupsPoll *cups_poll; - AvahiTimeoutCallback callback; - void *userdata; - cupsd_timeout_t *cupsd_timeout; -}; - -/* - * Local functions... - */ - -static AvahiWatch * watch_new(const AvahiPoll *api, - int fd, - AvahiWatchEvent events, - AvahiWatchCallback callback, - void *userdata); -static void watch_free(AvahiWatch *watch); -static void watch_update(AvahiWatch *watch, - AvahiWatchEvent events); -static AvahiWatchEvent watch_get_events(AvahiWatch *watch); - - -/* - * 'watch_read_cb' - Read callback for file descriptor - */ - -static void -watch_read_cb (void *userdata) -{ - AvahiWatch *watch; - cupsd_watched_fd_t *watched_fd = userdata; - watched_fd->occurred |= AVAHI_WATCH_IN; - for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); - watch; - watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) - { - if (watch->events & watched_fd->occurred) - { - (watch->callback) (watch, watched_fd->fd, - AVAHI_WATCH_IN, watch->userdata); - watched_fd->occurred &= ~AVAHI_WATCH_IN; - break; - } - } -} - - -/* - * 'watch_write_cb' - Write callback for file descriptor - */ - -static void -watch_write_cb (void *userdata) -{ - AvahiWatch *watch; - cupsd_watched_fd_t *watched_fd = userdata; - watched_fd->occurred |= AVAHI_WATCH_OUT; - for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); - watch; - watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) - { - if (watch->events & watched_fd->occurred) - { - (watch->callback) (watch, watched_fd->fd, - AVAHI_WATCH_OUT, watch->userdata); - watched_fd->occurred &= ~AVAHI_WATCH_OUT; - break; - } - } -} - - -/* - * 'watched_fd_add_select' - Call cupsdAddSelect() as needed - */ - -static int /* O - Watches? */ -watched_fd_add_select (cupsd_watched_fd_t *watched_fd) -{ - AvahiWatch *watch; - cupsd_selfunc_t read_cb = NULL, write_cb = NULL; - int any_watches = 0; - - for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); - watch; - watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) - { - any_watches = 1; - if (watch->events & (AVAHI_WATCH_IN | - AVAHI_WATCH_ERR | - AVAHI_WATCH_HUP)) - { - read_cb = (cupsd_selfunc_t)watch_read_cb; - if (write_cb != NULL) - break; - } - - if (watch->events & AVAHI_WATCH_OUT) - { - write_cb = (cupsd_selfunc_t)watch_write_cb; - if (read_cb != NULL) - break; - } - } - - if (read_cb || write_cb) - cupsdAddSelect (watched_fd->fd, read_cb, write_cb, watched_fd); - else - cupsdRemoveSelect (watched_fd->fd); - - return (any_watches); -} - -/* - * 'watch_new' - Create a new file descriptor watch - */ - -static AvahiWatch * -watch_new (const AvahiPoll *api, - int fd, - AvahiWatchEvent events, - AvahiWatchCallback callback, - void *userdata) -{ - cupsd_watched_fd_t key, *watched_fd; - AvahiCupsPoll *cups_poll = api->userdata; - AvahiWatch *watch = malloc(sizeof(AvahiWatch)); - if (watch == NULL) - return (NULL); - - watch->events = events; - watch->callback = callback; - watch->userdata = userdata; - - key.fd = fd; - watched_fd = cupsArrayFind (cups_poll->watched_fds, &key); - if (watched_fd == NULL) - { - watched_fd = malloc(sizeof(cupsd_watched_fd_t)); - if (watched_fd == NULL) - { - free (watch); - return (NULL); - } - - watched_fd->fd = fd; - watched_fd->occurred = 0; - watched_fd->cups_poll = cups_poll; - watched_fd->watches = cupsArrayNew (NULL, NULL); - cupsArrayAdd (cups_poll->watched_fds, watched_fd); - } - - watch->watched_fd = watched_fd; - cupsArrayAdd(watched_fd->watches, watch); - watched_fd_add_select (watched_fd); - return (watch); -} - - -/* - * 'watch_free' - Free a file descriptor watch - */ - -static void -watch_free (AvahiWatch *watch) -{ - cupsd_watched_fd_t *watched_fd = watch->watched_fd; - AvahiCupsPoll *cups_poll = watched_fd->cups_poll; - - cupsArrayRemove (watched_fd->watches, watch); - free (watch); - - if (!watched_fd_add_select (watched_fd)) - { - /* No more watches */ - cupsArrayRemove (cups_poll->watched_fds, watched_fd); - free (watched_fd); - } -} - - -/* - * 'watch_update' - Update watched events for a file descriptor - */ - -static void -watch_update (AvahiWatch *watch, - AvahiWatchEvent events) -{ - watch->events = events; - watched_fd_add_select (watch->watched_fd); -} - - -/* - * 'watch_get_events' - Get events that happened for a file descriptor - */ - -static AvahiWatchEvent -watch_get_events (AvahiWatch *watch) -{ - return (watch->watched_fd->occurred); -} - - -/* - * 'timeout_cb()' - Run a timed Avahi callback - */ - -static void -timeout_cb (cupsd_timeout_t *cupsd_timeout, void *userdata) -{ - AvahiTimeout *timeout = userdata; - (timeout->callback) (timeout, timeout->userdata); -} - - -/* - * 'timeout_new' - Set a wakeup time - */ - -static AvahiTimeout * -timeout_new (const AvahiPoll *api, - const struct timeval *tv, - AvahiTimeoutCallback callback, - void *userdata) -{ - AvahiTimeout *timeout; - AvahiCupsPoll *cups_poll = api->userdata; - - timeout = malloc(sizeof(AvahiTimeout)); - if (timeout == NULL) - return (NULL); - - timeout->cups_poll = cups_poll; - timeout->callback = callback; - timeout->userdata = userdata; - timeout->cupsd_timeout = cupsdAddTimeout (tv, - (cupsd_timeoutfunc_t)timeout_cb, - timeout); - cupsArrayAdd (cups_poll->timeouts, timeout); - return (timeout); -} - - -/* - * 'timeout_update' - Update the expiration time for a timeout - */ - -static void -timeout_update (AvahiTimeout *timeout, - const struct timeval *tv) -{ - cupsdUpdateTimeout (timeout->cupsd_timeout, tv); -} - - -/* - * ' timeout_free' - Free a timeout - */ - -static void -timeout_free (AvahiTimeout *timeout) -{ - cupsArrayRemove (timeout->cups_poll->timeouts, timeout); - cupsdRemoveTimeout (timeout->cupsd_timeout); - free (timeout); -} - - -/* - * 'compare_watched_fds' - Compare watched file descriptors for array sorting - */ -static int -compare_watched_fds(cupsd_watched_fd_t *p0, - cupsd_watched_fd_t *p1) -{ - /* - * Compare by fd (no two elements have the same fd) - */ - - if (p0->fd == p1->fd) - return 0; - - return (p0->fd < p1->fd ? -1 : 1); -} - - -/* - * 'avahi_cups_poll_new' - Create a new Avahi main loop object for CUPS - */ - -AvahiCupsPoll * -avahi_cups_poll_new (void) -{ - AvahiCupsPoll *cups_poll = malloc(sizeof(AvahiCupsPoll)); - if (cups_poll == NULL) - return (NULL); - - cups_poll->watched_fds = cupsArrayNew ((cups_array_func_t)compare_watched_fds, - NULL); - cups_poll->timeouts = cupsArrayNew (NULL, NULL); - - cups_poll->api.userdata = cups_poll; - cups_poll->api.watch_new = watch_new; - cups_poll->api.watch_free = watch_free; - cups_poll->api.watch_update = watch_update; - cups_poll->api.watch_get_events = watch_get_events; - - cups_poll->api.timeout_new = timeout_new; - cups_poll->api.timeout_update = timeout_update; - cups_poll->api.timeout_free = timeout_free; - - return (cups_poll); -} - - -/* - * 'avahi_cups_poll_free' - Free an Avahi main loop object for CUPS - */ -void -avahi_cups_poll_free (AvahiCupsPoll *cups_poll) -{ - cupsd_watched_fd_t *watched_fd; - - for (watched_fd = (cupsd_watched_fd_t*)cupsArrayFirst(cups_poll->watched_fds); - watched_fd; - watched_fd = (cupsd_watched_fd_t*)cupsArrayNext(cups_poll->watched_fds)) - cupsArrayClear (watched_fd->watches); - - cupsArrayClear (cups_poll->watched_fds); - cupsArrayClear (cups_poll->timeouts); -} - - -/* - * 'avahi_cups_poll_get' - Get the abstract poll API structure - */ - -const AvahiPoll * -avahi_cups_poll_get (AvahiCupsPoll *cups_poll) -{ - return (&cups_poll->api); -} - - -#endif /* HAVE_AVAHI ... from top of file */ - -/* - * End of "$Id$". - */ diff --git a/scheduler/avahi.h b/scheduler/avahi.h deleted file mode 100644 index d92049dc2..000000000 --- a/scheduler/avahi.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * "$Id$" - * - * Avahi poll implementation for the CUPS scheduler. - * - * Copyright (C) 2010, 2011 Red Hat, Inc. - * Authors: - * Tim Waugh - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include - -#ifdef HAVE_AVAHI -# include -# include -#endif /* HAVE_AVAHI */ - -#ifdef HAVE_AUTHORIZATION_H -# include -#endif /* HAVE_AUTHORIZATION_H */ - - -#ifdef HAVE_AVAHI -typedef struct -{ - AvahiPoll api; - cups_array_t *watched_fds; - cups_array_t *timeouts; -} AvahiCupsPoll; -#endif /* HAVE_AVAHI */ - -/* - * Prototypes... - */ - -#ifdef HAVE_AVAHI -extern AvahiCupsPoll * avahi_cups_poll_new(void); -extern void avahi_cups_poll_free(AvahiCupsPoll *cups_poll); -extern const AvahiPoll *avahi_cups_poll_get(AvahiCupsPoll *cups_poll); -#endif /* HAVE_AVAHI */ - - -/* - * End of "$Id$". - */ diff --git a/scheduler/client.c b/scheduler/client.c index 17e1312af..31d12cc61 100644 --- a/scheduler/client.c +++ b/scheduler/client.c @@ -2591,7 +2591,7 @@ cupsdSendHeader( * requests when the request requires system group membership - then the * client knows the root certificate can/should be used. * - * Also, for Mac OS X we also look for @AUTHKEY and add an "authkey" + * Also, for OS X we also look for @AUTHKEY and add an "authkey" * parameter as needed... */ diff --git a/scheduler/conf.c b/scheduler/conf.c index 999e4719c..4d392452b 100644 --- a/scheduler/conf.c +++ b/scheduler/conf.c @@ -90,7 +90,7 @@ static const cupsd_var_t variables[] = { "AccessLog", &AccessLog, CUPSD_VARTYPE_STRING }, { "AutoPurgeJobs", &JobAutoPurge, CUPSD_VARTYPE_BOOLEAN }, #ifdef HAVE_DNSSD - { "BrowseDNSSDRegType", &DNSSDRegType, CUPSD_VARTYPE_STRING }, + { "BrowseDNSSDSubTypes", &DNSSDSubTypes, CUPSD_VARTYPE_STRING }, #endif /* HAVE_DNSSD */ { "BrowseWebIF", &BrowseWebIF, CUPSD_VARTYPE_BOOLEAN }, { "Browsing", &Browsing, CUPSD_VARTYPE_BOOLEAN }, @@ -734,7 +734,7 @@ cupsdReadConfiguration(void) DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED; #ifdef HAVE_DNSSD - cupsdSetString(&DNSSDRegType, "_ipp._tcp,_cups"); + cupsdSetString(&DNSSDSubTypes, "_cups,_print"); #endif /* HAVE_DNSSD */ cupsdSetString(&LPDConfigFile, CUPS_DEFAULT_LPD_CONFIG_FILE); diff --git a/scheduler/conf.h b/scheduler/conf.h index 41232d907..5edfde429 100644 --- a/scheduler/conf.h +++ b/scheduler/conf.h @@ -3,7 +3,7 @@ * * Configuration file definitions for the CUPS scheduler. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -69,7 +69,7 @@ typedef enum #define PRINTCAP_BSD 0 /* Berkeley LPD format */ #define PRINTCAP_SOLARIS 1 /* Solaris lpsched format */ -#define PRINTCAP_PLIST 2 /* Mac OS X plist format */ +#define PRINTCAP_PLIST 2 /* OS X plist format */ /* diff --git a/scheduler/cups-driverd.cxx b/scheduler/cups-driverd.cxx index be3075b98..3c23d6247 100644 --- a/scheduler/cups-driverd.cxx +++ b/scheduler/cups-driverd.cxx @@ -928,7 +928,7 @@ get_file(const char *name, /* I - Name */ slash > printerDriver)) { /* - * Map ppd-name to Mac OS X standard locations... + * Map ppd-name to OS X standard locations... */ snprintf(buffer, bufsize, "/%s", name); @@ -1099,7 +1099,7 @@ list_ppds(int request_id, /* I - Request ID */ #ifdef __APPLE__ /* - * Load PPDs from standard Mac OS X locations... + * Load PPDs from standard OS X locations... */ load_ppds("/Library/Printers", @@ -1502,52 +1502,52 @@ list_ppds(int request_id, /* I - Request ID */ if (request_id) { cupsdSendIPPGroup(IPP_TAG_PRINTER); - + if (send_name) cupsdSendIPPString(IPP_TAG_NAME, "ppd-name", ppd->record.name); - + if (send_natural_language) { cupsdSendIPPString(IPP_TAG_LANGUAGE, "ppd-natural-language", ppd->record.languages[0]); - + for (i = 1; i < PPD_MAX_LANG && ppd->record.languages[i][0]; i ++) cupsdSendIPPString(IPP_TAG_LANGUAGE, "", ppd->record.languages[i]); } - + if (send_make) cupsdSendIPPString(IPP_TAG_TEXT, "ppd-make", ppd->record.make); - + if (send_make_and_model) cupsdSendIPPString(IPP_TAG_TEXT, "ppd-make-and-model", ppd->record.make_and_model); - + if (send_device_id) cupsdSendIPPString(IPP_TAG_TEXT, "ppd-device-id", ppd->record.device_id); - + if (send_product) { cupsdSendIPPString(IPP_TAG_TEXT, "ppd-product", ppd->record.products[0]); - + for (i = 1; i < PPD_MAX_PROD && ppd->record.products[i][0]; i ++) cupsdSendIPPString(IPP_TAG_TEXT, "", ppd->record.products[i]); } - + if (send_psversion) { cupsdSendIPPString(IPP_TAG_TEXT, "ppd-psversion", ppd->record.psversions[0]); - + for (i = 1; i < PPD_MAX_VERS && ppd->record.psversions[i][0]; i ++) cupsdSendIPPString(IPP_TAG_TEXT, "", ppd->record.psversions[i]); } - + if (send_type) cupsdSendIPPString(IPP_TAG_KEYWORD, "ppd-type", PPDTypes[ppd->record.type]); - + if (send_model_number) cupsdSendIPPInteger(IPP_TAG_INTEGER, "ppd-model-number", ppd->record.model_number); @@ -2700,6 +2700,8 @@ load_tar(const char *filename, /* I - Actual filename */ * Add a dummy entry for the file... */ + (void)filename; + add_ppd(name, name, "", "", "", "", "", "", mtime, size, 0, PPD_TYPE_ARCHIVE, "file"); ChangedPPD = 1; diff --git a/scheduler/cups-exec.c b/scheduler/cups-exec.c index f6c5d66b3..1292a94b6 100644 --- a/scheduler/cups-exec.c +++ b/scheduler/cups-exec.c @@ -3,7 +3,7 @@ * * Sandbox helper for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright diff --git a/scheduler/cupsd.h b/scheduler/cupsd.h index 12869a81b..aaf9b13c0 100644 --- a/scheduler/cupsd.h +++ b/scheduler/cupsd.h @@ -138,15 +138,6 @@ extern const char *cups_hstrerror(int); typedef void (*cupsd_selfunc_t)(void *data); -#ifdef HAVE_AVAHI -/* - * Timeout callback function type... - */ - -typedef struct _cupsd_timeout_s cupsd_timeout_t; -typedef void (*cupsd_timeoutfunc_t)(cupsd_timeout_t *timeout, void *data); -#endif /* HAVE_AVAHI */ - /* * Globals... @@ -180,12 +171,6 @@ VAR int Launchd VALUE(0); /* Running from launchd */ #endif /* HAVE_LAUNCH_H */ -#ifdef HAVE_AVAHI -VAR cups_array_t *Timeouts VALUE(NULL); - /* Timed callbacks for main loop */ -#endif /* HAVE_AVAHI */ - - /* * Prototypes... @@ -249,19 +234,6 @@ extern void cupsdStopSelect(void); extern void cupsdStartServer(void); extern void cupsdStopServer(void); -#ifdef HAVE_AVAHI -extern cupsd_timeout_t *cupsdAddTimeout(const struct timeval *tv, - cupsd_timeoutfunc_t cb, - void *data); -extern cupsd_timeout_t *cupsdNextTimeout(long *delay); -extern void cupsdRemoveTimeout(cupsd_timeout_t *timeout); -extern void cupsdRunTimeout(cupsd_timeout_t *timeout); -extern void cupsdUpdateTimeout(cupsd_timeout_t *timeout, - const struct timeval *tv); -#endif /* HAVE_AVAHI */ - -extern int cupsdRemoveFile(const char *filename); - /* * End of "$Id: cupsd.h 7928 2008-09-10 22:14:22Z mike $". diff --git a/scheduler/cupsfilter.c b/scheduler/cupsfilter.c index e0e1861f3..11997e0a2 100644 --- a/scheduler/cupsfilter.c +++ b/scheduler/cupsfilter.c @@ -3,7 +3,7 @@ * * Filtering program for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2006 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -102,8 +102,7 @@ static int open_pipe(int *fds); static int read_cupsd_conf(const char *filename); static void set_string(char **s, const char *val); static void sighandler(int sig); -static void usage(const char *command, const char *opt) - __attribute__((noreturn)); +static void usage(const char *opt) __attribute__((noreturn)); /* @@ -193,7 +192,7 @@ main(int argc, /* I - Number of command-line args */ if (i < argc && !infile) infile = argv[i]; else - usage(command, opt); + usage(opt); break; case 'a' : /* Specify option... */ @@ -201,7 +200,7 @@ main(int argc, /* I - Number of command-line args */ if (i < argc) num_options = cupsParseOptions(argv[i], num_options, &options); else - usage(command, opt); + usage(opt); break; case 'c' : /* Specify cupsd.conf file location... */ @@ -215,7 +214,7 @@ main(int argc, /* I - Number of command-line args */ strlcpy(cupsdconf, argv[i], sizeof(cupsdconf)); } else - usage(command, opt); + usage(opt); break; case 'd' : /* Specify the real printer name */ @@ -223,7 +222,7 @@ main(int argc, /* I - Number of command-line args */ if (i < argc) printer = argv[i]; else - usage(command, opt); + usage(opt); break; case 'D' : /* Delete input file after conversion */ @@ -239,7 +238,7 @@ main(int argc, /* I - Number of command-line args */ if (i < argc && !infile) infile = argv[i]; else - usage(command, opt); + usage(opt); break; case 'i' : /* Specify source MIME type... */ @@ -247,12 +246,12 @@ main(int argc, /* I - Number of command-line args */ if (i < argc) { if (sscanf(argv[i], "%15[^/]/%255s", super, type) != 2) - usage(command, opt); + usage(opt); srctype = argv[i]; } else - usage(command, opt); + usage(opt); break; case 'j' : /* Get job file or specify destination MIME type... */ @@ -265,7 +264,7 @@ main(int argc, /* I - Number of command-line args */ infile = TempFile; } else - usage(command, opt); + usage(opt); break; } @@ -275,12 +274,12 @@ main(int argc, /* I - Number of command-line args */ if (i < argc) { if (sscanf(argv[i], "%15[^/]/%255s", super, type) != 2) - usage(command, opt); + usage(opt); dsttype = argv[i]; } else - usage(command, opt); + usage(opt); break; case 'n' : /* Specify number of copies... */ @@ -289,7 +288,7 @@ main(int argc, /* I - Number of command-line args */ num_options = cupsAddOption("copies", argv[i], num_options, &options); else - usage(command, opt); + usage(opt); break; case 'o' : /* Specify option(s) or output filename */ @@ -299,7 +298,7 @@ main(int argc, /* I - Number of command-line args */ if (!strcmp(command, "convert")) { if (outfile) - usage(command, NULL); + usage(NULL); else outfile = argv[i]; } @@ -308,7 +307,7 @@ main(int argc, /* I - Number of command-line args */ &options); } else - usage(command, opt); + usage(opt); break; case 'p' : /* Specify PPD file... */ @@ -317,7 +316,7 @@ main(int argc, /* I - Number of command-line args */ if (i < argc) ppdfile = argv[i]; else - usage(command, opt); + usage(opt); break; case 't' : /* Specify title... */ @@ -326,7 +325,7 @@ main(int argc, /* I - Number of command-line args */ if (i < argc) title = argv[i]; else - usage(command, opt); + usage(opt); break; case 'u' : /* Delete PPD file after conversion */ @@ -338,11 +337,11 @@ main(int argc, /* I - Number of command-line args */ if (i < argc) user = argv[i]; else - usage(command, opt); + usage(opt); break; default : /* Something we don't understand... */ - usage(command, opt); + usage(opt); break; } } @@ -351,22 +350,17 @@ main(int argc, /* I - Number of command-line args */ if (strcmp(command, "convert")) infile = argv[i]; else - { - _cupsLangPuts(stderr, - _("convert: Use the -f option to specify a file to " - "convert.")); - usage(command, NULL); - } + usage(NULL); } else { _cupsLangPuts(stderr, _("cupsfilter: Only one filename can be specified.")); - usage(command, NULL); + usage(NULL); } if (!infile && !srctype) - usage(command, NULL); + usage(NULL); if (!title) { @@ -1426,65 +1420,36 @@ sighandler(int s) /* I - Signal number */ */ static void -usage(const char *command, /* I - Command name */ - const char *opt) /* I - Incorrect option, if any */ +usage(const char *opt) /* I - Incorrect option, if any */ { if (opt) - _cupsLangPrintf(stderr, _("%s: Unknown option \"%c\"."), command, *opt); - - if (!strcmp(command, "cupsfilter")) - { - _cupsLangPuts(stdout, _("Usage: cupsfilter [ options ] filename")); - _cupsLangPuts(stdout, _("Options:")); - _cupsLangPuts(stdout, _(" -D Remove the input file " - "when finished.")); - _cupsLangPuts(stdout, _(" -P filename.ppd Set PPD file.")); - _cupsLangPuts(stdout, _(" -U username Set username for job.")); - _cupsLangPuts(stdout, _(" -c cupsd.conf Set cupsd.conf file to " - "use.")); - _cupsLangPuts(stdout, _(" -d printer Use the named " - "printer.")); - _cupsLangPuts(stdout, _(" -e Use every filter from " - "the PPD file.")); - _cupsLangPuts(stdout, _(" -i mime/type Set input MIME type " - "(otherwise auto-typed).")); - _cupsLangPuts(stdout, _(" -j job-id[,N] Filter file N from the " - "specified job (default is file 1).")); - _cupsLangPuts(stdout, _(" -m mime/type Set output MIME type " - "(otherwise application/pdf).")); - _cupsLangPuts(stdout, _(" -n copies Set number of copies.")); - _cupsLangPuts(stdout, _(" -o name=value Set option(s).")); - _cupsLangPuts(stdout, _(" -p filename.ppd Set PPD file.")); - _cupsLangPuts(stdout, _(" -t title Set title.")); - _cupsLangPuts(stdout, _(" -u Remove the PPD file " - "when finished.")); - } - else - { - _cupsLangPuts(stdout, _("Usage: convert [ options ]")); - _cupsLangPuts(stdout, _("Options:")); - _cupsLangPuts(stdout, _(" -D Remove the input file " - "when finished.")); - _cupsLangPuts(stdout, _(" -J title Set title.")); - _cupsLangPuts(stdout, _(" -P filename.ppd Set PPD file.")); - _cupsLangPuts(stdout, _(" -U username Set username for job.")); - _cupsLangPuts(stdout, _(" -a 'name=value ...' Set option(s).")); - _cupsLangPuts(stdout, _(" -c copies Set number of copies.")); - _cupsLangPuts(stdout, _(" -d printer Use the named " - "printer.")); - _cupsLangPuts(stdout, _(" -e Use every filter from " - "the PPD file.")); - _cupsLangPuts(stdout, _(" -f filename Set file to be " - "converted (otherwise stdin).")); - _cupsLangPuts(stdout, _(" -i mime/type Set input MIME type " - "(otherwise auto-typed).")); - _cupsLangPuts(stdout, _(" -j mime/type Set output MIME type " - "(otherwise application/pdf).")); - _cupsLangPuts(stdout, _(" -o filename Set file to be " - "generated (otherwise stdout).")); - _cupsLangPuts(stdout, _(" -u Remove the PPD file " - "when finished.")); - } + _cupsLangPrintf(stderr, _("%s: Unknown option \"%c\"."), "cupsfilter", + *opt); + + _cupsLangPuts(stdout, _("Usage: cupsfilter [ options ] filename")); + _cupsLangPuts(stdout, _("Options:")); + _cupsLangPuts(stdout, _(" -D Remove the input file " + "when finished.")); + _cupsLangPuts(stdout, _(" -P filename.ppd Set PPD file.")); + _cupsLangPuts(stdout, _(" -U username Specify username.")); + _cupsLangPuts(stdout, _(" -c cupsd.conf Set cupsd.conf file to " + "use.")); + _cupsLangPuts(stdout, _(" -d printer Use the named " + "printer.")); + _cupsLangPuts(stdout, _(" -e Use every filter from " + "the PPD file.")); + _cupsLangPuts(stdout, _(" -i mime/type Set input MIME type " + "(otherwise auto-typed).")); + _cupsLangPuts(stdout, _(" -j job-id[,N] Filter file N from the " + "specified job (default is file 1).")); + _cupsLangPuts(stdout, _(" -m mime/type Set output MIME type " + "(otherwise application/pdf).")); + _cupsLangPuts(stdout, _(" -n copies Set number of copies.")); + _cupsLangPuts(stdout, _(" -o name=value Set option(s).")); + _cupsLangPuts(stdout, _(" -p filename.ppd Set PPD file.")); + _cupsLangPuts(stdout, _(" -t title Set title.")); + _cupsLangPuts(stdout, _(" -u Remove the PPD file " + "when finished.")); exit(1); } diff --git a/scheduler/dirsvc.c b/scheduler/dirsvc.c index dcc257b79..e57b3f13d 100644 --- a/scheduler/dirsvc.c +++ b/scheduler/dirsvc.c @@ -3,7 +3,7 @@ * * Directory services routines for the CUPS scheduler. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -14,31 +14,33 @@ * * Contents: * - * cupsdDeregisterPrinter() - Stop sending broadcast information for a local - * printer and remove any pending references to - * remote printers. - * cupsdRegisterPrinter() - Start sending broadcast information for a - * printer or update the broadcast contents. - * cupsdStartBrowsing() - Start sending and receiving broadcast - * information. - * cupsdStopBrowsing() - Stop sending and receiving broadcast - * information. - * cupsdUpdateDNSSDName() - Update the computer name we use for browsing... - * dnssdAddAlias() - Add a DNS-SD alias name. - * dnssdBuildTxtRecord() - Build a TXT record from printer info. - * dnssdDeregisterPrinter() - Stop sending broadcast information for a - * printer. - * dnssdPackTxtRecord() - Pack an array of key/value pairs into the TXT - * record format. - * dnssdRegisterCallback() - DNSServiceRegister callback. - * dnssdRegisterPrinter() - Start sending broadcast information for a - * printer or update the broadcast contents. - * dnssdStop() - Stop all DNS-SD registrations. - * dnssdUpdate() - Handle DNS-SD queries. - * get_auth_info_required() - Get the auth-info-required value to advertise. - * get_hostconfig() - Get an /etc/hostconfig service setting. - * update_lpd() - Update the LPD configuration as needed. - * update_smb() - Update the SMB configuration as needed. + * cupsdDeregisterPrinter() - Stop sending broadcast information for a local + * printer and remove any pending references to + * remote printers. + * cupsdRegisterPrinter() - Start sending broadcast information for a + * printer or update the broadcast contents. + * cupsdStartBrowsing() - Start sending and receiving broadcast + * information. + * cupsdStopBrowsing() - Stop sending and receiving broadcast + * information. + * cupsdUpdateDNSSDName() - Update the computer name we use for + * browsing... + * dnssdAddAlias() - Add a DNS-SD alias name. + * dnssdBuildTxtRecord() - Build a TXT record from printer info. + * dnssdDeregisterInstance() - Deregister a DNS-SD service instance. + * dnssdDeregisterPrinter() - Deregister all services for a printer. + * dnssdErrorString() - Return an error string for an error code. + * dnssdRegisterCallback() - Free a TXT record. + * dnssdRegisterCallback() - DNSServiceRegister callback. + * dnssdRegisterInstance() - Register an instance of a printer service. + * dnssdRegisterPrinter() - Start sending broadcast information for a + * printer or update the broadcast contents. + * dnssdStop() - Stop all DNS-SD registrations. + * dnssdUpdate() - Handle DNS-SD queries. + * get_auth_info_required() - Get the auth-info-required value to advertise. + * get_hostconfig() - Get an /etc/hostconfig service setting. + * update_lpd() - Update the LPD configuration as needed. + * update_smb() - Update the SMB configuration as needed. */ /* @@ -48,54 +50,67 @@ #include "cupsd.h" #include -#ifdef HAVE_DNSSD -# include -# ifdef __APPLE__ -# include -# ifdef HAVE_COREFOUNDATION -# include -# endif /* HAVE_COREFOUNDATION */ -# ifdef HAVE_SYSTEMCONFIGURATION -# include -# endif /* HAVE_SYSTEMCONFIGURATION */ -# endif /* __APPLE__ */ -#endif /* HAVE_DNSSD */ +#if defined(HAVE_DNSSD) && defined(__APPLE__) +# include +# ifdef HAVE_COREFOUNDATION +# include +# endif /* HAVE_COREFOUNDATION */ +# ifdef HAVE_SYSTEMCONFIGURATION +# include +# endif /* HAVE_SYSTEMCONFIGURATION */ +#endif /* HAVE_DNSSD && __APPLE__ */ /* * Local functions... */ -#ifdef HAVE_DNSSD -static char *get_auth_info_required(cupsd_printer_t *p, char *buffer, - size_t bufsize); -#endif /* HAVE_DNSSD */ +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) +static char *get_auth_info_required(cupsd_printer_t *p, + char *buffer, size_t bufsize); +#endif /* HAVE_DNSSD || HAVE_AVAHI */ #ifdef __APPLE__ -static int get_hostconfig(const char *name); +static int get_hostconfig(const char *name); #endif /* __APPLE__ */ -static void update_lpd(int onoff); -static void update_smb(int onoff); +static void update_lpd(int onoff); +static void update_smb(int onoff); -#ifdef HAVE_DNSSD +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) # ifdef HAVE_COREFOUNDATION -static void dnssdAddAlias(const void *key, const void *value, - void *context); +static void dnssdAddAlias(const void *key, const void *value, + void *context); # endif /* HAVE_COREFOUNDATION */ -static char *dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p, - int for_lpd); -static void dnssdDeregisterPrinter(cupsd_printer_t *p); -static char *dnssdPackTxtRecord(int *txt_len, char *keyvalue[][2], - int count); -static void dnssdRegisterCallback(DNSServiceRef sdRef, - DNSServiceFlags flags, - DNSServiceErrorType errorCode, - const char *name, const char *regtype, - const char *domain, void *context); -static void dnssdRegisterPrinter(cupsd_printer_t *p); -static void dnssdStop(void); -static void dnssdUpdate(void); -#endif /* HAVE_DNSSD */ +static cupsd_txt_t dnssdBuildTxtRecord(cupsd_printer_t *p, int for_lpd); +static void dnssdDeregisterInstance(cupsd_srv_t *srv); +static void dnssdDeregisterPrinter(cupsd_printer_t *p, + int clear_name); +static const char *dnssdErrorString(int error); +static void dnssdFreeTxtRecord(cupsd_txt_t *txt); +# ifdef HAVE_DNSSD +static void dnssdRegisterCallback(DNSServiceRef sdRef, + DNSServiceFlags flags, + DNSServiceErrorType errorCode, + const char *name, + const char *regtype, + const char *domain, + void *context); +# else +static void dnssdRegisterCallback(AvahiEntryGroup *p, + AvahiEntryGroupState state, + void *context); +# endif /* HAVE_DNSSD */ +static int dnssdRegisterInstance(cupsd_srv_t *srv, + cupsd_printer_t *p, + char *name, const char *type, + const char *subtypes, int port, + cupsd_txt_t *txt, int commit); +static void dnssdRegisterPrinter(cupsd_printer_t *p); +static void dnssdStop(void); +# ifdef HAVE_DNSSD +static void dnssdUpdate(void); +# endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ /* @@ -125,10 +140,8 @@ cupsdDeregisterPrinter( * Announce the deletion... */ -#ifdef HAVE_DNSSD - if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) - dnssdDeregisterPrinter(p); -#endif /* HAVE_DNSSD */ + if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDMaster) + dnssdDeregisterPrinter(p, 1); } @@ -147,10 +160,8 @@ cupsdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */ (p->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_SCANNER))) return; -#ifdef HAVE_DNSSD - if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) + if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDMaster) dnssdRegisterPrinter(p); -#endif /* HAVE_DNSSD */ } @@ -167,18 +178,18 @@ cupsdStartBrowsing(void) if (!Browsing || !BrowseLocalProtocols) return; -#ifdef HAVE_DNSSD +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) if (BrowseLocalProtocols & BROWSE_DNSSD) { - DNSServiceErrorType error; /* Error from service creation */ cupsd_listener_t *lis; /* Current listening socket */ - +# ifdef HAVE_DNSSD + DNSServiceErrorType error; /* Error from service creation */ /* * First create a "master" connection for all registrations... */ - if ((error = DNSServiceCreateConnection(&DNSSDRef)) + if ((error = DNSServiceCreateConnection(&DNSSDMaster)) != kDNSServiceErr_NoError) { cupsdLogMessage(CUPSD_LOG_ERROR, @@ -193,39 +204,68 @@ cupsdStartBrowsing(void) * Add the master connection to the select list... */ - int fd = DNSServiceRefSockFD(DNSSDRef); + int fd = DNSServiceRefSockFD(DNSSDMaster); fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC); cupsdAddSelect(fd, (cupsd_selfunc_t)dnssdUpdate, NULL, NULL); + } - /* - * Then get the port we use for registrations. If we are not listening - * on any non-local ports, there is no sense sharing local printers via - * Bonjour... - */ +# else /* HAVE_AVAHI */ + if ((DNSSDMaster = avahi_threaded_poll_new()) == NULL) + { + cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to create DNS-SD thread."); - DNSSDPort = 0; + if (FatalErrors & CUPSD_FATAL_BROWSE) + cupsdEndProcess(getpid(), 0); + } + else + { + int error; /* Error code, if any */ - for (lis = (cupsd_listener_t *)cupsArrayFirst(Listeners); - lis; - lis = (cupsd_listener_t *)cupsArrayNext(Listeners)) + DNSSDClient = avahi_client_new(avahi_threaded_poll_get(DNSSDMaster), 0, + NULL, NULL, &error); + + if (DNSSDClient == NULL) { - if (httpAddrLocalhost(&(lis->address))) - continue; + cupsdLogMessage(CUPSD_LOG_ERROR, + "Unable to communicate with avahi-daemon: %s", + dnssdErrorString(error)); - DNSSDPort = _httpAddrPort(&(lis->address)); - break; + if (FatalErrors & CUPSD_FATAL_BROWSE) + cupsdEndProcess(getpid(), 0); } - /* - * Set the computer name and register the web interface... - */ + avahi_threaded_poll_start(DNSSDMaster); + } +# endif /* HAVE_DNSSD */ + + /* + * Then get the port we use for registrations. If we are not listening + * on any non-local ports, there is no sense sharing local printers via + * Bonjour... + */ + + DNSSDPort = 0; + + for (lis = (cupsd_listener_t *)cupsArrayFirst(Listeners); + lis; + lis = (cupsd_listener_t *)cupsArrayNext(Listeners)) + { + if (httpAddrLocalhost(&(lis->address))) + continue; - cupsdUpdateDNSSDName(); + DNSSDPort = _httpAddrPort(&(lis->address)); + break; } + + /* + * Set the computer name and register the web interface... + */ + + cupsdUpdateDNSSDName(); } -#endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ /* * Enable LPD and SMB printer sharing as needed through external programs... @@ -276,10 +316,10 @@ cupsdStopBrowsing(void) * Shut down browsing sockets... */ -#ifdef HAVE_DNSSD - if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) + if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDMaster) dnssdStop(); -#endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ /* * Disable LPD and SMB printer sharing as needed through external programs... @@ -293,7 +333,7 @@ cupsdStopBrowsing(void) } -#ifdef HAVE_DNSSD +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) /* * 'cupsdUpdateDNSSDName()' - Update the computer name we use for browsing... */ @@ -301,7 +341,6 @@ cupsdStopBrowsing(void) void cupsdUpdateDNSSDName(void) { - DNSServiceErrorType error; /* Error from service creation */ char webif[1024]; /* Web interface share name */ # ifdef HAVE_SYSTEMCONFIGURATION SCDynamicStoreRef sc; /* Context for dynamic store */ @@ -416,10 +455,18 @@ cupsdUpdateDNSSDName(void) } else # endif /* HAVE_SYSTEMCONFIGURATION */ +# ifdef HAVE_AVAHI + { + cupsdSetString(&DNSSDComputerName, avahi_client_get_host_name(DNSSDClient)); + cupsdSetString(&DNSSDHostName, + avahi_client_get_host_name_fqdn(DNSSDClient)); + } +# else /* HAVE_DNSSD */ { cupsdSetString(&DNSSDComputerName, ServerName); cupsdSetString(&DNSSDHostName, ServerName); } +# endif /* HAVE_AVAHI */ /* * Then (re)register the web interface if enabled... @@ -430,26 +477,15 @@ cupsdUpdateDNSSDName(void) if (DNSSDComputerName) snprintf(webif, sizeof(webif), "CUPS @ %s", DNSSDComputerName); else - strlcpy(webif, "CUPS Web Interface", sizeof(webif)); - - if (WebIFRef) - DNSServiceRefDeallocate(WebIFRef); - - WebIFRef = DNSSDRef; - if ((error = DNSServiceRegister(&WebIFRef, - kDNSServiceFlagsShareConnection, - 0, webif, "_http._tcp", NULL, - NULL, htons(DNSSDPort), 7, - "\006path=/", dnssdRegisterCallback, - NULL)) != kDNSServiceErr_NoError) - cupsdLogMessage(CUPSD_LOG_ERROR, - "DNS-SD web interface registration failed: %d", error); + strlcpy(webif, "CUPS", sizeof(webif)); + + dnssdDeregisterInstance(&WebIFSrv); + dnssdRegisterInstance(&WebIFSrv, NULL, webif, "_http._tcp", "_printer", + DNSSDPort, NULL, 1); } } -#endif /* HAVE_DNSSD */ -#ifdef HAVE_DNSSD # ifdef HAVE_COREFOUNDATION /* * 'dnssdAddAlias()' - Add a DNS-SD alias name. @@ -495,13 +531,13 @@ dnssdAddAlias(const void *key, /* I - Key */ * 'dnssdBuildTxtRecord()' - Build a TXT record from printer info. */ -static char * /* O - TXT record */ +static cupsd_txt_t /* O - TXT record */ dnssdBuildTxtRecord( - int *txt_len, /* O - TXT record length */ cupsd_printer_t *p, /* I - Printer information */ int for_lpd) /* I - 1 = LPD, 0 = IPP */ { - int i; /* Looping var */ + int i, /* Looping var */ + count; /* Count of key/value pairs */ char admin_hostname[256], /* .local hostname for admin page */ adminurl_str[256], /* URL for the admin page */ type_str[32], /* Type to string buffer */ @@ -509,237 +545,370 @@ dnssdBuildTxtRecord( rp_str[1024], /* Queue name string buffer */ air_str[1024], /* auth-info-required string buffer */ *keyvalue[32][2]; /* Table of key/value pairs */ + cupsd_txt_t txt; /* TXT record */ /* * Load up the key value pairs... */ - i = 0; + count = 0; - keyvalue[i ][0] = "txtvers"; - keyvalue[i++][1] = "1"; - - keyvalue[i ][0] = "qtotal"; - keyvalue[i++][1] = "1"; - - keyvalue[i ][0] = "rp"; - keyvalue[i++][1] = rp_str; - if (for_lpd) - strlcpy(rp_str, p->name, sizeof(rp_str)); - else - snprintf(rp_str, sizeof(rp_str), "%s/%s", - (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers", p->name); - - keyvalue[i ][0] = "ty"; - keyvalue[i++][1] = p->make_model ? p->make_model : "Unknown"; + if (!for_lpd || (BrowseLocalProtocols & BROWSE_LPD)) + { + keyvalue[count ][0] = "txtvers"; + keyvalue[count++][1] = "1"; - snprintf(admin_hostname, sizeof(admin_hostname), "%s.local.", DNSSDHostName); - httpAssembleURIf(HTTP_URI_CODING_ALL, adminurl_str, sizeof(adminurl_str), - "http", NULL, admin_hostname, DNSSDPort, "/%s/%s", - (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers", - p->name); - keyvalue[i ][0] = "adminurl"; - keyvalue[i++][1] = adminurl_str; + keyvalue[count ][0] = "qtotal"; + keyvalue[count++][1] = "1"; - keyvalue[i ][0] = "note"; - keyvalue[i++][1] = p->location ? p->location : ""; + keyvalue[count ][0] = "rp"; + keyvalue[count++][1] = rp_str; + if (for_lpd) + strlcpy(rp_str, p->name, sizeof(rp_str)); + else + snprintf(rp_str, sizeof(rp_str), "%s/%s", + (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers", + p->name); - keyvalue[i ][0] = "priority"; - keyvalue[i++][1] = for_lpd ? "100" : "0"; + keyvalue[count ][0] = "ty"; + keyvalue[count++][1] = p->make_model ? p->make_model : "Unknown"; - keyvalue[i ][0] = "product"; - keyvalue[i++][1] = p->pc && p->pc->product ? p->pc->product : "Unknown"; + if (strstr(DNSSDHostName, ".local")) + strlcpy(admin_hostname, DNSSDHostName, sizeof(admin_hostname)); + else + snprintf(admin_hostname, sizeof(admin_hostname), "%s.local.", + DNSSDHostName); + httpAssembleURIf(HTTP_URI_CODING_ALL, adminurl_str, sizeof(adminurl_str), +# ifdef HAVE_SSL + "https", +# else + "http", +# endif /* HAVE_SSL */ + NULL, admin_hostname, DNSSDPort, "/%s/%s", + (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers", + p->name); + keyvalue[count ][0] = "adminurl"; + keyvalue[count++][1] = adminurl_str; + + if (p->location) + { + keyvalue[count ][0] = "note"; + keyvalue[count++][1] = p->location; + } - keyvalue[i ][0] = "pdl"; - keyvalue[i++][1] = p->pdl ? p->pdl : "application/postscript"; + keyvalue[count ][0] = "priority"; + keyvalue[count++][1] = for_lpd ? "100" : "0"; - if (get_auth_info_required(p, air_str, sizeof(air_str))) - { - keyvalue[i ][0] = "air"; - keyvalue[i++][1] = air_str; - } + keyvalue[count ][0] = "product"; + keyvalue[count++][1] = p->pc && p->pc->product ? p->pc->product : "Unknown"; - keyvalue[i ][0] = "UUID"; - keyvalue[i++][1] = p->uuid + 9; + keyvalue[count ][0] = "pdl"; + keyvalue[count++][1] = p->pdl ? p->pdl : "application/postscript"; -#ifdef HAVE_SSL - keyvalue[i ][0] = "TLS"; - keyvalue[i++][1] = "1.2"; -#endif /* HAVE_SSL */ + if (get_auth_info_required(p, air_str, sizeof(air_str))) + { + keyvalue[count ][0] = "air"; + keyvalue[count++][1] = air_str; + } - keyvalue[i ][0] = "Transparent"; - keyvalue[i++][1] = "F"; + keyvalue[count ][0] = "UUID"; + keyvalue[count++][1] = p->uuid + 9; - keyvalue[i ][0] = "Binary"; - keyvalue[i++][1] = "F"; + #ifdef HAVE_SSL + keyvalue[count ][0] = "TLS"; + keyvalue[count++][1] = "1.2"; + #endif /* HAVE_SSL */ - keyvalue[i ][0] = "Fax"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_FAX) ? "T" : "F"; + if (p->type & CUPS_PRINTER_FAX) + { + keyvalue[count ][0] = "Fax"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_FAX) ? "T" : "F"; + } - keyvalue[i ][0] = "Color"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_COLOR) ? "T" : "F"; + if (p->type & CUPS_PRINTER_COLOR) + { + keyvalue[count ][0] = "Color"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_COLOR) ? "T" : "F"; + } - keyvalue[i ][0] = "Duplex"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_DUPLEX) ? "T" : "F"; + if (p->type & CUPS_PRINTER_DUPLEX) + { + keyvalue[count ][0] = "Duplex"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_DUPLEX) ? "T" : "F"; + } - keyvalue[i ][0] = "Staple"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_STAPLE) ? "T" : "F"; + if (p->type & CUPS_PRINTER_STAPLE) + { + keyvalue[count ][0] = "Staple"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_STAPLE) ? "T" : "F"; + } - keyvalue[i ][0] = "Copies"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_COPIES) ? "T" : "F"; + if (p->type & CUPS_PRINTER_COPIES) + { + keyvalue[count ][0] = "Copies"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_COPIES) ? "T" : "F"; + } - keyvalue[i ][0] = "Collate"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_COLLATE) ? "T" : "F"; + if (p->type & CUPS_PRINTER_COLLATE) + { + keyvalue[count ][0] = "Collate"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_COLLATE) ? "T" : "F"; + } - keyvalue[i ][0] = "Punch"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_PUNCH) ? "T" : "F"; + if (p->type & CUPS_PRINTER_PUNCH) + { + keyvalue[count ][0] = "Punch"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_PUNCH) ? "T" : "F"; + } - keyvalue[i ][0] = "Bind"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_BIND) ? "T" : "F"; + if (p->type & CUPS_PRINTER_BIND) + { + keyvalue[count ][0] = "Bind"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_BIND) ? "T" : "F"; + } - keyvalue[i ][0] = "Sort"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_SORT) ? "T" : "F"; + if (p->type & CUPS_PRINTER_SORT) + { + keyvalue[count ][0] = "Sort"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_SORT) ? "T" : "F"; + } - keyvalue[i ][0] = "Scan"; - keyvalue[i++][1] = (p->type & CUPS_PRINTER_MFP) ? "T" : "F"; + if (p->type & CUPS_PRINTER_MFP) + { + keyvalue[count ][0] = "Scan"; + keyvalue[count++][1] = (p->type & CUPS_PRINTER_MFP) ? "T" : "F"; + } - snprintf(type_str, sizeof(type_str), "0x%X", p->type | CUPS_PRINTER_REMOTE); - snprintf(state_str, sizeof(state_str), "%d", p->state); + snprintf(type_str, sizeof(type_str), "0x%X", p->type | CUPS_PRINTER_REMOTE); + snprintf(state_str, sizeof(state_str), "%d", p->state); - keyvalue[i ][0] = "printer-state"; - keyvalue[i++][1] = state_str; + keyvalue[count ][0] = "printer-state"; + keyvalue[count++][1] = state_str; - keyvalue[i ][0] = "printer-type"; - keyvalue[i++][1] = type_str; + keyvalue[count ][0] = "printer-type"; + keyvalue[count++][1] = type_str; + } /* * Then pack them into a proper txt record... */ - return (dnssdPackTxtRecord(txt_len, keyvalue, i)); +# ifdef HAVE_DNSSD + TXTRecordCreate(&txt, 0, NULL); + + for (i = 0; i < count; i ++) + { + size_t len = strlen(keyvalue[i][1]); + + if (len < 256) + TXTRecordSetValue(&txt, keyvalue[i][0], (uint8_t)len, keyvalue[i][1]); + } + +# else + for (i = 0, txt = NULL; i < count; i ++) + txt = avahi_string_list_add_printf(txt, "%s=%s", keyvalue[i][0], + keyvalue[i][1]); +# endif /* HAVE_DNSSD */ + + return (txt); } /* - * 'dnssdDeregisterPrinter()' - Stop sending broadcast information for a - * printer. + * 'dnssdDeregisterInstance()' - Deregister a DNS-SD service instance. */ static void -dnssdDeregisterPrinter( - cupsd_printer_t *p) /* I - Printer */ +dnssdDeregisterInstance( + cupsd_srv_t *srv) /* I - Service */ { - cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdDeregisterPrinter(%s)", p->name); + if (!srv || !*srv) + return; - /* - * Closing the socket deregisters the service - */ +# ifdef HAVE_DNSSD + DNSServiceRefDeallocate(*srv); - if (p->ipp_ref) - { - DNSServiceRefDeallocate(p->ipp_ref); - p->ipp_ref = NULL; - } +# else /* HAVE_AVAHI */ + avahi_threaded_poll_lock(DNSSDMaster); + avahi_entry_group_free(*srv); + avahi_threaded_poll_unlock(DNSSDMaster); +# endif /* HAVE_DNSSD */ - if (p->ipp_txt) - { - /* - * p->ipp_txt is malloc'd, not _cupsStrAlloc'd... - */ + *srv = NULL; +} - free(p->ipp_txt); - p->ipp_txt = NULL; - } - if (p->printer_ref) - { - DNSServiceRefDeallocate(p->printer_ref); - p->printer_ref = NULL; - } +/* + * 'dnssdDeregisterPrinter()' - Deregister all services for a printer. + */ - if (p->printer_txt) - { - /* - * p->printer_txt is malloc'd, not _cupsStrAlloc'd... - */ +static void +dnssdDeregisterPrinter( + cupsd_printer_t *p, /* I - Printer */ + int clear_name) /* I - Clear the name? */ - free(p->printer_txt); - p->printer_txt = NULL; +{ + cupsdLogMessage(CUPSD_LOG_DEBUG2, + "dnssdDeregisterPrinter(p=%p(%s), clear_name=%d)", p, p->name, + clear_name); + + if (p->ipp_srv) + { + dnssdDeregisterInstance(&p->ipp_srv); + +# ifdef HAVE_DNSSD +# ifdef HAVE_SSL + dnssdDeregisterInstance(&p->ipps_srv); +# endif /* HAVE_SSL */ + dnssdDeregisterInstance(&p->printer_srv); +# endif /* HAVE_DNSSD */ } /* - * Remove the printer from the array of DNS-SD printers, then clear the + * Remove the printer from the array of DNS-SD printers but keep the * registered name... */ cupsArrayRemove(DNSSDPrinters, p); - cupsdClearString(&p->reg_name); + + /* + * Optionally clear the service name... + */ + + if (clear_name) + cupsdClearString(&p->reg_name); } /* - * 'dnssdPackTxtRecord()' - Pack an array of key/value pairs into the - * TXT record format. + * 'dnssdErrorString()' - Return an error string for an error code. */ -static char * /* O - TXT record */ -dnssdPackTxtRecord(int *txt_len, /* O - TXT record length */ - char *keyvalue[][2], /* I - Table of key value pairs */ - int count) /* I - Items in table */ +static const char * /* O - Error message */ +dnssdErrorString(int error) /* I - Error number */ { - int i; /* Looping var */ - int length; /* Length of TXT record */ - int length2; /* Length of value */ - char *txtRecord; /* TXT record buffer */ - char *cursor; /* Looping pointer */ +# ifdef HAVE_DNSSD + switch (error) + { + case kDNSServiceErr_NoError : + return ("OK."); + default : + case kDNSServiceErr_Unknown : + return ("Unknown error."); - /* - * Calculate the buffer size - */ + case kDNSServiceErr_NoSuchName : + return ("Service not found."); - if (count <= 0) - return (NULL); + case kDNSServiceErr_NoMemory : + return ("Out of memory."); - for (length = i = 0; i < count; i++) - length += 1 + strlen(keyvalue[i][0]) + - (keyvalue[i][1] ? 1 + strlen(keyvalue[i][1]) : 0); + case kDNSServiceErr_BadParam : + return ("Bad parameter."); - /* - * Allocate and fill it - */ + case kDNSServiceErr_BadReference : + return ("Bad service reference."); - txtRecord = malloc(length); - if (txtRecord) - { - *txt_len = length; + case kDNSServiceErr_BadState : + return ("Bad state."); - for (cursor = txtRecord, i = 0; i < count; i++) - { - /* - * Drop in the p-string style length byte followed by the data - */ + case kDNSServiceErr_BadFlags : + return ("Bad flags."); - length = strlen(keyvalue[i][0]); - length2 = keyvalue[i][1] ? 1 + strlen(keyvalue[i][1]) : 0; + case kDNSServiceErr_Unsupported : + return ("Unsupported."); - *cursor++ = (unsigned char)(length + length2); + case kDNSServiceErr_NotInitialized : + return ("Not initialized."); - memcpy(cursor, keyvalue[i][0], length); - cursor += length; + case kDNSServiceErr_AlreadyRegistered : + return ("Already registered."); - if (length2) - { - length2 --; - *cursor++ = '='; - memcpy(cursor, keyvalue[i][1], length2); - cursor += length2; - } - } + case kDNSServiceErr_NameConflict : + return ("Name conflict."); + + case kDNSServiceErr_Invalid : + return ("Invalid name."); + + case kDNSServiceErr_Firewall : + return ("Firewall prevents registration."); + + case kDNSServiceErr_Incompatible : + return ("Client library incompatible."); + + case kDNSServiceErr_BadInterfaceIndex : + return ("Bad interface index."); + + case kDNSServiceErr_Refused : + return ("Server prevents registration."); + + case kDNSServiceErr_NoSuchRecord : + return ("Record not found."); + + case kDNSServiceErr_NoAuth : + return ("Authentication required."); + + case kDNSServiceErr_NoSuchKey : + return ("Encryption key not found."); + + case kDNSServiceErr_NATTraversal : + return ("Unable to traverse NAT boundary."); + + case kDNSServiceErr_DoubleNAT : + return ("Unable to traverse double-NAT boundary."); + + case kDNSServiceErr_BadTime : + return ("Bad system time."); + + case kDNSServiceErr_BadSig : + return ("Bad signature."); + + case kDNSServiceErr_BadKey : + return ("Bad encryption key."); + + case kDNSServiceErr_Transient : + return ("Transient error occurred - please try again."); + + case kDNSServiceErr_ServiceNotRunning : + return ("Server not running."); + + case kDNSServiceErr_NATPortMappingUnsupported : + return ("NAT doesn't support NAT-PMP or UPnP."); + + case kDNSServiceErr_NATPortMappingDisabled : + return ("NAT supports NAT-PNP or UPnP but it is disabled."); + + case kDNSServiceErr_NoRouter : + return ("No Internet/default router configured."); + + case kDNSServiceErr_PollingMode : + return ("Service polling mode error."); + + case kDNSServiceErr_Timeout : + return ("Service timeout."); } - return (txtRecord); +# else /* HAVE_AVAHI */ + return (avahi_strerror(error)); +# endif /* HAVE_DNSSD */ +} + + +/* + * 'dnssdRegisterCallback()' - Free a TXT record. + */ + +static void +dnssdFreeTxtRecord(cupsd_txt_t *txt) /* I - TXT record */ +{ +# ifdef HAVE_DNSSD + TXTRecordDeallocate(txt); + +# else /* HAVE_AVAHI */ + avahi_string_list_free(*txt); + *txt = NULL; +# endif /* HAVE_DNSSD */ } @@ -747,6 +916,7 @@ dnssdPackTxtRecord(int *txt_len, /* O - TXT record length */ * 'dnssdRegisterCallback()' - DNSServiceRegister callback. */ +# ifdef HAVE_DNSSD static void dnssdRegisterCallback( DNSServiceRef sdRef, /* I - DNS Service reference */ @@ -755,7 +925,7 @@ dnssdRegisterCallback( const char *name, /* I - Service name */ const char *regtype, /* I - Service type */ const char *domain, /* I - Domain. ".local" for now */ - void *context) /* I - User-defined context */ + void *context) /* I - Printer */ { cupsd_printer_t *p = (cupsd_printer_t *)context; /* Current printer */ @@ -788,245 +958,330 @@ dnssdRegisterCallback( } } +# else /* HAVE_AVAHI */ +static void +dnssdRegisterCallback( + AvahiEntryGroup *srv, /* I - Service */ + AvahiEntryGroupState state, /* I - Registration state */ + void *context) /* I - Printer */ +{ + cupsd_printer_t *p = (cupsd_printer_t *)context; + /* Current printer */ + + cupsdLogMessage(CUPSD_LOG_DEBUG2, + "dnssdRegisterCallback(srv=%p, state=%d, context=%p) " + "for %s (%s)", srv, state, context, + p ? p->name : "Web Interface", + p ? (p->reg_name ? p->reg_name : "(null)") : "NA"); + + /* TODO: Handle collisions with avahi_alternate_service_name(p->reg_name)? */ +} +# endif /* HAVE_DNSSD */ + /* - * 'dnssdRegisterPrinter()' - Start sending broadcast information for a printer - * or update the broadcast contents. + * 'dnssdRegisterInstance()' - Register an instance of a printer service. */ -static void -dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */ +static int /* O - 1 on success, 0 on failure */ +dnssdRegisterInstance( + cupsd_srv_t *srv, /* O - Service */ + cupsd_printer_t *p, /* I - Printer */ + char *name, /* I - DNS-SD service name */ + const char *type, /* I - DNS-SD service type */ + const char *subtypes, /* I - Subtypes to register or NULL */ + int port, /* I - Port number or 0 */ + cupsd_txt_t *txt, /* I - TXT record */ + int commit) /* I - Commit registration? */ { - DNSServiceErrorType se; /* dnssd errors */ - char *ipp_txt, /* IPP TXT record buffer */ - *printer_txt, /* LPD TXT record buffer */ - name[1024], /* Service name */ - *nameptr; /* Pointer into name */ - int ipp_len, /* IPP TXT record length */ - printer_len, /* LPD TXT record length */ - printer_port; /* LPD port number */ - const char *regtype; /* Registration type */ + char temp[256], /* Temporary string */ + *ptr; /* Pointer into string */ + int error; /* Any error */ - cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name, - !p->ipp_ref ? "new" : "update"); + cupsdLogMessage(CUPSD_LOG_DEBUG, + "Registering \"%s\" with DNS-SD type \"%s\".", name, type); - /* - * If per-printer sharing was just disabled make sure we're not - * registered before returning. - */ + if (p && !srv) + { + /* + * Assign the correct pointer for "srv"... + */ - if (!p->shared) +# ifdef HAVE_DNSSD + if (!strcmp(type, "_printer._tcp")) + srv = &p->printer_srv; /* Target LPD service */ +# ifdef HAVE_SSL + else if (!strcmp(type, "_ipps._tcp")) + srv = &p->ipps_srv; /* Target IPPS service */ +# endif /* HAVE_SSL */ + else + srv = &p->ipp_srv; /* Target IPP service */ + +# else /* HAVE_AVAHI */ + srv = &p->ipp_srv; /* Target service group */ +# endif /* HAVE_DNSSD */ + } + +# ifdef HAVE_DNSSD + (void)commit; + +# else /* HAVE_AVAHI */ + avahi_threaded_poll_lock(DNSSDMaster); + + if (!*srv) + *srv = avahi_entry_group_new(DNSSDClient, dnssdRegisterCallback, NULL); + if (!*srv) { - dnssdDeregisterPrinter(p); - return; + avahi_threaded_poll_unlock(DNSSDMaster); + + cupsdLogMessage(CUPSD_LOG_WARN, "DNS-SD registration of \"%s\" failed: %s", + name, dnssdErrorString(avahi_client_errno(DNSSDClient))); + return (0); } +# endif /* HAVE_DNSSD */ /* - * The registered name takes the form of " @ "... + * Make sure the name is <= 63 octets, and when we truncate be sure to + * properly truncate any UTF-8 characters... */ - if (p->info && strlen(p->info) > 0) + ptr = name + strlen(name); + while ((ptr - name) > 63) { - if (DNSSDComputerName) - snprintf(name, sizeof(name), "%s @ %s", p->info, DNSSDComputerName); - else - strlcpy(name, p->info, sizeof(name)); + do + { + ptr --; + } + while (ptr > name && (*ptr & 0xc0) == 0x80); + + if (ptr > name) + *ptr = '\0'; } - else if (DNSSDComputerName) - snprintf(name, sizeof(name), "%s @ %s", p->name, DNSSDComputerName); - else - strlcpy(name, p->name, sizeof(name)); /* - * If an existing printer was renamed, unregister it and start over... + * Register the service... */ - if (p->reg_name && strcmp(p->reg_name, name)) - dnssdDeregisterPrinter(p); +# ifdef HAVE_DNSSD + if (subtypes) + snprintf(temp, sizeof(temp), "%s,%s", type, subtypes); + else + strlcpy(temp, type, sizeof(temp)); - if (!p->reg_name) + *srv = DNSSDMaster; + error = DNSServiceRegister(srv, kDNSServiceFlagsShareConnection, + 0, name, temp, NULL, NULL, htons(port), + txt ? TXTRecordGetLength(txt) : 0, + txt ? TXTRecordGetBytesPtr(txt) : NULL, + dnssdRegisterCallback, p); + +# else /* HAVE_AVAHI */ + if (txt) { - cupsdSetString(&p->reg_name, name); - cupsArrayAdd(DNSSDPrinters, p); + AvahiStringList *temptxt; + for (temptxt = *txt; temptxt; temptxt = temptxt->next) + cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS_SD \"%s\" %s", name, temptxt->text); } - /* - * Register IPP and (optionally) LPD... - */ + error = avahi_entry_group_add_service_strlst(*srv, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, 0, name, + type, NULL, NULL, port, + txt ? *txt : NULL); + if (error) + cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD service add for \"%s\" failed.", + name); - ipp_len = 0; /* anti-compiler-warning-code */ - ipp_txt = dnssdBuildTxtRecord(&ipp_len, p, 0); - - if (p->ipp_ref && - (ipp_len != p->ipp_len || memcmp(ipp_txt, p->ipp_txt, ipp_len))) + if (!error && subtypes) { /* - * Update the existing registration... + * Register all of the subtypes... */ - /* A TTL of 0 means use record's original value (Radar 3176248) */ - if ((se = DNSServiceUpdateRecord(p->ipp_ref, NULL, 0, ipp_len, ipp_txt, - 0)) == kDNSServiceErr_NoError) - { - if (p->ipp_txt) - free(p->ipp_txt); + char *start, /* Start of subtype */ + subtype[256]; /* Subtype string */ - p->ipp_txt = ipp_txt; - p->ipp_len = ipp_len; - ipp_txt = NULL; - } - else + strlcpy(temp, subtypes, sizeof(temp)); + + for (start = temp; *start; start = ptr) { /* - * Failed to update record, lets close this reference and move on... + * Skip leading whitespace... */ - cupsdLogMessage(CUPSD_LOG_ERROR, - "Unable to update IPP DNS-SD record for %s - %d", p->name, - se); + while (*start && isspace(*start & 255)) + start ++; + + /* + * Grab everything up to the next comma or the end of the string... + */ + + for (ptr = start; *ptr && *ptr != ','; ptr ++); + + if (*ptr) + *ptr++ = '\0'; + + if (!*start) + break; - DNSServiceRefDeallocate(p->ipp_ref); - p->ipp_ref = NULL; + /* + * Register the subtype... + */ + + snprintf(subtype, sizeof(subtype), "%s._sub.%s", start, type); + + error = avahi_entry_group_add_service_subtype(*srv, AVAHI_IF_UNSPEC, + AVAHI_PROTO_UNSPEC, 0, + name, type, NULL, subtype); + if (error) + { + cupsdLogMessage(CUPSD_LOG_DEBUG, + "DNS-SD subtype %s registration for \"%s\" failed." , + subtype, name); + break; + } } } - if (!p->ipp_ref) + if (!error && commit) { - /* - * Initial registration. Use the _fax-ipp regtype for fax queues... - */ + if ((error = avahi_entry_group_commit(*srv)) != 0) + cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD commit of \"%s\" failed.", + name); + } - regtype = (p->type & CUPS_PRINTER_FAX) ? "_fax-ipp._tcp" : DNSSDRegType; + avahi_threaded_poll_unlock(DNSSDMaster); +# endif /* HAVE_DNSSD */ - cupsdLogMessage(CUPSD_LOG_DEBUG, - "Registering DNS-SD printer %s with name \"%s\" and " - "type \"%s\"", p->name, name, regtype); + if (error) + { + cupsdLogMessage(CUPSD_LOG_WARN, "DNS-SD registration of \"%s\" failed: %s", + name, dnssdErrorString(error)); + cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD type: %s", type); + if (subtypes) + cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD sub-types: %s", subtypes); + } - /* - * Register the queue, dropping characters as needed until we succeed... - */ + return (!error); +} - nameptr = name + strlen(name); - do - { - p->ipp_ref = DNSSDRef; - if ((se = DNSServiceRegister(&p->ipp_ref, kDNSServiceFlagsShareConnection, - 0, name, regtype, NULL, NULL, - htons(DNSSDPort), ipp_len, ipp_txt, - dnssdRegisterCallback, - p)) == kDNSServiceErr_BadParam) - { - /* - * Name is too long, drop trailing characters, taking into account - * UTF-8 encoding... - */ +/* + * 'dnssdRegisterPrinter()' - Start sending broadcast information for a printer + * or update the broadcast contents. + */ - nameptr --; +static void +dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */ +{ + char name[256]; /* Service name */ + int printer_port; /* LPD port number */ + int status; /* Registration status */ + cupsd_txt_t ipp_txt, /* IPP(S) TXT record */ + printer_txt; /* LPD TXT record */ - while (nameptr > name && (*nameptr & 0xc0) == 0x80) - nameptr --; + cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name, + !p->ipp_srv ? "new" : "update"); - if (nameptr > name) - *nameptr = '\0'; - } - } - while (se == kDNSServiceErr_BadParam && nameptr > name); + /* + * Remove the current registrations if we have them and then return if + * per-printer sharing was just disabled... + */ - if (se == kDNSServiceErr_NoError) + dnssdDeregisterPrinter(p, 0); + + if (!p->shared) + return; + + /* + * Set the registered name as needed; the registered name takes the form of + * " @ "... + */ + + if (!p->reg_name) + { + if (p->info && strlen(p->info) > 0) { - p->ipp_txt = ipp_txt; - p->ipp_len = ipp_len; - ipp_txt = NULL; + if (DNSSDComputerName) + snprintf(name, sizeof(name), "%s @ %s", p->info, DNSSDComputerName); + else + strlcpy(name, p->info, sizeof(name)); } + else if (DNSSDComputerName) + snprintf(name, sizeof(name), "%s @ %s", p->name, DNSSDComputerName); else - cupsdLogMessage(CUPSD_LOG_WARN, - "DNS-SD IPP registration of \"%s\" failed: %d", - p->name, se); + strlcpy(name, p->name, sizeof(name)); } + else + strlcpy(name, p->reg_name, sizeof(name)); - if (ipp_txt) - free(ipp_txt); + /* + * Register IPP and LPD... + * + * We always must register the "_printer" service type in order to reserve + * our name, but use port number 0 if we haven't actually configured cups-lpd + * to share via LPD... + */ + + ipp_txt = dnssdBuildTxtRecord(p, 0); + printer_txt = dnssdBuildTxtRecord(p, 1); if (BrowseLocalProtocols & BROWSE_LPD) - { - printer_len = 0; /* anti-compiler-warning-code */ printer_port = 515; - printer_txt = dnssdBuildTxtRecord(&printer_len, p, 1); - } else - { - printer_len = 0; printer_port = 0; - printer_txt = NULL; - } - if (p->printer_ref && - (printer_len != p->printer_len || - memcmp(printer_txt, p->printer_txt, printer_len))) + status = dnssdRegisterInstance(NULL, p, name, "_printer._tcp", NULL, + printer_port, &printer_txt, 0); + +# ifdef HAVE_SSL + if (status) + dnssdRegisterInstance(NULL, p, name, "_ipps._tcp", DNSSDSubTypes, + DNSSDPort, &ipp_txt, 0); +# endif /* HAVE_SSL */ + + if (status) { /* - * Update the existing registration... + * Use the "_fax-ipp" service type for fax queues, otherwise use "_ipp"... */ - /* A TTL of 0 means use record's original value (Radar 3176248) */ - if ((se = DNSServiceUpdateRecord(p->printer_ref, NULL, 0, printer_len, - printer_txt, - 0)) == kDNSServiceErr_NoError) - { - if (p->printer_txt) - free(p->printer_txt); - - p->printer_txt = printer_txt; - p->printer_len = printer_len; - printer_txt = NULL; - } + if (p->type & CUPS_PRINTER_FAX) + status = dnssdRegisterInstance(NULL, p, name, "_fax-ipp._tcp", + DNSSDSubTypes, DNSSDPort, &ipp_txt, 1); else - { - /* - * Failed to update record, lets close this reference and move on... - */ - - cupsdLogMessage(CUPSD_LOG_ERROR, - "Unable to update LPD DNS-SD record for %s - %d", - p->name, se); - - DNSServiceRefDeallocate(p->printer_ref); - p->printer_ref = NULL; - } + status = dnssdRegisterInstance(NULL, p, name, "_ipp._tcp", DNSSDSubTypes, + DNSSDPort, &ipp_txt, 1); } - if (!p->printer_ref) + dnssdFreeTxtRecord(&ipp_txt); + dnssdFreeTxtRecord(&printer_txt); + + if (status) { /* - * Initial registration... + * Save the registered name and add the printer to the array of DNS-SD + * printers... */ - cupsdLogMessage(CUPSD_LOG_DEBUG, - "Registering DNS-SD printer %s with name \"%s\" and " - "type \"_printer._tcp\"", p->name, name); - - p->printer_ref = DNSSDRef; - if ((se = DNSServiceRegister(&p->printer_ref, - kDNSServiceFlagsShareConnection, - 0, name, "_printer._tcp", NULL, NULL, - htons(printer_port), printer_len, printer_txt, - dnssdRegisterCallback, - p)) == kDNSServiceErr_NoError) - { - p->printer_txt = printer_txt; - p->printer_len = printer_len; - printer_txt = NULL; - } - else - cupsdLogMessage(CUPSD_LOG_WARN, - "DNS-SD LPD registration of \"%s\" failed: %d", - p->name, se); + cupsdSetString(&p->reg_name, name); + cupsArrayAdd(DNSSDPrinters, p); } + else + { + /* + * Registration failed for this printer... + */ - if (printer_txt) - free(printer_txt); + dnssdDeregisterInstance(&p->ipp_srv); + +# ifdef HAVE_DNSSD +# ifdef HAVE_SSL + dnssdDeregisterInstance(&p->ipps_srv); +# endif /* HAVE_SSL */ + dnssdDeregisterInstance(&p->printer_srv); +# endif /* HAVE_DNSSD */ + } } @@ -1047,22 +1302,27 @@ dnssdStop(void) for (p = (cupsd_printer_t *)cupsArrayFirst(Printers); p; p = (cupsd_printer_t *)cupsArrayNext(Printers)) - dnssdDeregisterPrinter(p); + dnssdDeregisterPrinter(p, 1); /* * Shutdown the rest of the service refs... */ - if (WebIFRef) - { - DNSServiceRefDeallocate(WebIFRef); - WebIFRef = NULL; - } + dnssdDeregisterInstance(&WebIFSrv); + +# ifdef HAVE_DNSSD + cupsdRemoveSelect(DNSServiceRefSockFD(DNSSDMaster)); + + DNSServiceRefDeallocate(DNSSDMaster); + DNSSDMaster = NULL; - cupsdRemoveSelect(DNSServiceRefSockFD(DNSSDRef)); +# else /* HAVE_AVAHI */ + avahi_client_free(DNSSDClient); + DNSSDClient = NULL; - DNSServiceRefDeallocate(DNSSDRef); - DNSSDRef = NULL; + avahi_threaded_poll_free(DNSSDMaster); + DNSSDMaster = NULL; +# endif /* HAVE_DNSSD */ cupsArrayDelete(DNSSDPrinters); DNSSDPrinters = NULL; @@ -1071,6 +1331,7 @@ dnssdStop(void) } +# ifdef HAVE_DNSSD /* * 'dnssdUpdate()' - Handle DNS-SD queries. */ @@ -1081,7 +1342,7 @@ dnssdUpdate(void) DNSServiceErrorType sdErr; /* Service discovery error */ - if ((sdErr = DNSServiceProcessResult(DNSSDRef)) != kDNSServiceErr_NoError) + if ((sdErr = DNSServiceProcessResult(DNSSDMaster)) != kDNSServiceErr_NoError) { cupsdLogMessage(CUPSD_LOG_ERROR, "DNS Service Discovery registration error %d!", @@ -1089,6 +1350,7 @@ dnssdUpdate(void) dnssdStop(); } } +# endif /* HAVE_DNSSD */ /* @@ -1168,7 +1430,7 @@ get_auth_info_required( return ("none"); } -#endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ #ifdef __APPLE__ diff --git a/scheduler/dirsvc.h b/scheduler/dirsvc.h index 0625fd1ca..39b74ce9c 100644 --- a/scheduler/dirsvc.h +++ b/scheduler/dirsvc.h @@ -3,7 +3,7 @@ * * Directory services definitions for the CUPS scheduler. * - * Copyright 2007-2010 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -34,24 +34,31 @@ VAR int Browsing VALUE(TRUE), BrowseLocalProtocols VALUE(BROWSE_ALL); /* Protocols to support for local printers */ -#ifdef HAVE_DNSSD +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) VAR char *DNSSDComputerName VALUE(NULL), /* Computer/server name */ *DNSSDHostName VALUE(NULL), /* Hostname */ - *DNSSDRegType VALUE(NULL); - /* Bonjour registration type */ + *DNSSDSubTypes VALUE(NULL); + /* Bonjour registration subtypes */ VAR cups_array_t *DNSSDAlias VALUE(NULL); /* List of dynamic ServerAlias's */ VAR int DNSSDPort VALUE(0); /* Port number to register */ VAR cups_array_t *DNSSDPrinters VALUE(NULL); /* Printers we have registered */ -VAR DNSServiceRef DNSSDRef VALUE(NULL), +# ifdef HAVE_DNSSD +VAR DNSServiceRef DNSSDMaster VALUE(NULL); /* Master DNS-SD service reference */ - WebIFRef VALUE(NULL); +# else /* HAVE_AVAHI */ +VAR AvahiThreadedPoll *DNSSDMaster VALUE(NULL); + /* Master polling interface for Avahi */ +VAR AvahiClient *DNSSDClient VALUE(NULL); + /* Client information */ +# endif /* HAVE_DNSSD */ +VAR cupsd_srv_t WebIFSrv VALUE(NULL); /* Service reference for the web interface */ -#endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ VAR char *LPDConfigFile VALUE(NULL), /* LPD configuration file */ @@ -67,9 +74,9 @@ extern void cupsdDeregisterPrinter(cupsd_printer_t *p, int removeit); extern void cupsdRegisterPrinter(cupsd_printer_t *p); extern void cupsdStartBrowsing(void); extern void cupsdStopBrowsing(void); -#ifdef HAVE_DNSSD +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) extern void cupsdUpdateDNSSDName(void); -#endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ /* diff --git a/scheduler/job.c b/scheduler/job.c index 53968b897..6f834e319 100644 --- a/scheduler/job.c +++ b/scheduler/job.c @@ -14,7 +14,7 @@ * * Contents: * -* cupsdAddJob() - Add a new job to the job queue. + * cupsdAddJob() - Add a new job to the job queue. * cupsdCancelJobs() - Cancel all jobs for the given * destination/user. * cupsdCheckJobs() - Check the pending jobs and start any if the @@ -1963,7 +1963,7 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */ else if (!strcmp(line, "password")) cupsdSetStringf(job->auth_env + i, "AUTH_PASSWORD=%s", data); else if (!strcmp(line, "negotiate")) - cupsdSetStringf(job->auth_env + i, "AUTH_NEGOTIATE=%s", line); + cupsdSetStringf(job->auth_env + i, "AUTH_NEGOTIATE=%s", data); else continue; @@ -3189,16 +3189,15 @@ finalize_job(cupsd_job_t *job, /* I - Job */ case CUPS_BACKEND_CANCEL : /* - * Abort the job... + * Cancel the job... */ if (job_state == IPP_JOB_COMPLETED) { - job_state = IPP_JOB_ABORTED; - message = "Job aborted due to backend errors; please consult " - "the error_log file for details."; + job_state = IPP_JOB_CANCELED; + message = "Job canceled at printer."; - ippSetString(job->attrs, &job->reasons, 0, "aborted-by-system"); + ippSetString(job->attrs, &job->reasons, 0, "canceled-at-device"); } break; diff --git a/scheduler/main.c b/scheduler/main.c index c61246509..a98027ee1 100644 --- a/scheduler/main.c +++ b/scheduler/main.c @@ -145,10 +145,6 @@ main(int argc, /* I - Number of command-line args */ int launchd_idle_exit; /* Idle exit on select timeout? */ #endif /* HAVE_LAUNCHD */ -#ifdef HAVE_AVAHI - cupsd_timeout_t *tmo; /* Next scheduled timed callback */ - long tmo_delay; /* Time before it must be called */ -#endif /* HAVE_AVAHI */ #ifdef HAVE_GETEUID @@ -862,16 +858,6 @@ main(int argc, /* I - Number of command-line args */ } #endif /* __APPLE__ */ -#ifdef HAVE_AVAHI - /* - * If a timed callback is due, run it. - */ - - tmo = cupsdNextTimeout(&tmo_delay); - if (tmo && tmo_delay == 0) - cupsdRunTimeout(tmo); -#endif /* HAVE_AVAHI */ - #ifndef __APPLE__ /* * Update the network interfaces once a minute... @@ -1618,7 +1604,7 @@ process_children(void) } if (status && status != SIGTERM && status != SIGKILL && - status != SIGPIPE && job->status >= 0) + status != SIGPIPE) { /* * An error occurred; save the exit status so we know to stop @@ -1626,12 +1612,24 @@ process_children(void) * * A negative status indicates that the backend failed and the * printer needs to be stopped. + * + * In order to preserve the most serious status, we always log + * when a process dies due to a signal (e.g. SIGABRT, SIGSEGV, + * and SIGBUS) and prefer to log the backend exit status over a + * filter's. */ - if (job->filters[i]) - job->status = status; /* Filter failed */ - else - job->status = -status; /* Backend failed */ + int old_status = abs(job->status); + + if (WIFSIGNALED(status) || /* This process crashed, or */ + !job->status || /* No process had a status, or */ + (!job->filters[i] && WIFEXITED(old_status))) + { /* Backend and filter didn't crash */ + if (job->filters[i]) + job->status = status; /* Filter failed */ + else + job->status = -status; /* Backend failed */ + } if (job->state_value == IPP_JOB_PROCESSING && job->status_level > CUPSD_LOG_ERROR && @@ -1773,10 +1771,6 @@ select_timeout(int fds) /* I - Number of descriptors returned */ cupsd_job_t *job; /* Job information */ cupsd_subscription_t *sub; /* Subscription information */ const char *why; /* Debugging aid */ -#ifdef HAVE_AVAHI - cupsd_timeout_t *tmo; /* Timed callback */ - long tmo_delay; /* Seconds before calling it */ -#endif /* HAVE_AVAHI */ cupsdLogMessage(CUPSD_LOG_DEBUG2, "select_timeout: JobHistoryUpdate=%ld", @@ -1822,19 +1816,6 @@ select_timeout(int fds) /* I - Number of descriptors returned */ } #endif /* __APPLE__ */ -#ifdef HAVE_AVAHI - /* - * See if there are any scheduled timed callbacks to run. - */ - - if ((tmo = cupsdNextTimeout(&tmo_delay)) != NULL && - (now + tmo_delay) < timeout) - { - timeout = tmo_delay; - why = "run a timed callback"; - } -#endif /* HAVE_AVAHI */ - /* * Check whether we are accepting new connections... */ @@ -2035,8 +2016,7 @@ usage(int status) /* O - Exit status */ _cupsLangPuts(fp, _("Usage: cupsd [options]")); _cupsLangPuts(fp, _("Options:")); - _cupsLangPuts(fp, _(" -c config-file Load alternate configuration " - "file.")); + _cupsLangPuts(fp, _(" -c cupsd.conf Set cupsd.conf file to use.")); _cupsLangPuts(fp, _(" -f Run in the foreground.")); _cupsLangPuts(fp, _(" -F Run in the foreground but " "detach from console.")); diff --git a/scheduler/printers.c b/scheduler/printers.c index 318944416..011934232 100644 --- a/scheduler/printers.c +++ b/scheduler/printers.c @@ -837,9 +837,10 @@ cupsdDeletePrinter( cupsdClearString(&p->alert); cupsdClearString(&p->alert_description); -#ifdef HAVE_DNSSD +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) cupsdClearString(&p->pdl); -#endif /* HAVE_DNSSD */ + cupsdClearString(&p->reg_name); +#endif /* HAVE_DNSSD || HAVE_AVAHI */ cupsArrayDelete(p->filetypes); @@ -3571,7 +3572,7 @@ add_printer_formats(cupsd_printer_t *p) /* I - Printer */ attr->values[i].string.text = _cupsStrAlloc(mimetype); } -#ifdef HAVE_DNSSD +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) { char pdl[1024]; /* Buffer to build pdl list */ mime_filter_t *filter; /* MIME filter looping var */ @@ -3627,7 +3628,7 @@ add_printer_formats(cupsd_printer_t *p) /* I - Printer */ cupsdSetString(&p->pdl, pdl); } -#endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ } diff --git a/scheduler/printers.h b/scheduler/printers.h index 41ae3b3f9..833d2332b 100644 --- a/scheduler/printers.h +++ b/scheduler/printers.h @@ -3,7 +3,7 @@ * * Printer definitions for the CUPS scheduler. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -15,6 +15,11 @@ #ifdef HAVE_DNSSD # include +#elif defined(HAVE_AVAHI) +# include +# include +# include +# include #endif /* HAVE_DNSSD */ #include @@ -32,6 +37,20 @@ typedef struct } cupsd_quota_t; +/* + * DNS-SD types to make the code cleaner/clearer... + */ + +#ifdef HAVE_DNSSD +typedef DNSServiceRef cupsd_srv_t; /* Service reference */ +typedef TXTRecordRef cupsd_txt_t; /* TXT record */ + +#elif defined(HAVE_AVAHI) +typedef AvahiEntryGroup *cupsd_srv_t; /* Service reference */ +typedef AvahiStringList *cupsd_txt_t; /* TXT record */ +#endif /* HAVE_DNSSD */ + + /* * Printer/class information structure... */ @@ -92,16 +111,17 @@ struct cupsd_printer_s time_t marker_time; /* Last time marker attributes were updated */ _ppd_cache_t *pc; /* PPD cache and mapping data */ -#ifdef HAVE_DNSSD +#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) char *reg_name, /* Name used for service registration */ - *pdl, /* pdl value for TXT record */ - *ipp_txt, /* IPP TXT record contents */ - *printer_txt; /* LPD TXT record contents */ - int ipp_len, /* IPP TXT record length */ - printer_len; /* LPD TXT record length */ - DNSServiceRef ipp_ref, /* Reference for _ipp._tcp,_cups */ - printer_ref; /* Reference for _printer._tcp */ -#endif /* HAVE_DNSSD */ + *pdl; /* pdl value for TXT record */ + cupsd_srv_t ipp_srv; /* IPP service(s) */ +# ifdef HAVE_DNSSD +# ifdef HAVE_SSL + cupsd_srv_t ipps_srv; /* IPPS service(s) */ +# endif /* HAVE_SSL */ + cupsd_srv_t printer_srv; /* LPD service */ +# endif /* HAVE_DNSSD */ +#endif /* HAVE_DNSSD || HAVE_AVAHI */ }; diff --git a/scheduler/process.c b/scheduler/process.c index de6fed678..178206414 100644 --- a/scheduler/process.c +++ b/scheduler/process.c @@ -3,7 +3,7 @@ * * Process management routines for the CUPS scheduler. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 1997-2007 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -365,8 +365,8 @@ cupsdStartProcess( if (envp) { /* - * Add special voodoo magic for Mac OS X - this allows Mac OS X - * programs to access their bundle resources properly... + * Add special voodoo magic for OS X - this allows OS X programs to access + * their bundle resources properly... */ if ((linkbytes = readlink(command, linkpath, sizeof(linkpath) - 1)) > 0) @@ -577,7 +577,7 @@ cupsdStartProcess( { if (!process_array) process_array = cupsArrayNew((cups_array_func_t)compare_procs, NULL); - + if (process_array) { if ((proc = calloc(1, sizeof(cupsd_proc_t) + strlen(command))) != NULL) diff --git a/scheduler/timeout.c b/scheduler/timeout.c deleted file mode 100644 index 2c3b376c2..000000000 --- a/scheduler/timeout.c +++ /dev/null @@ -1,249 +0,0 @@ -/* - * "$Id$" - * - * Timeout functions for the CUPS Scheduler. - * - * Copyright 2012 by Apple Inc. - * - * These coded instructions, statements, and computer programs are the - * property of Apple Inc. and are protected by Federal copyright - * law. Distribution and use rights are outlined in the file "LICENSE.txt" - * which should have been included with this file. If this file is - * file is missing or damaged, see the license at "http://www.cups.org/". - * - * Copyright (C) 2010, 2011 Red Hat, Inc. - * Authors: - * Tim Waugh - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * - * Contents: - * - * cupsdAddTimeout() - Add a timed callback. - * cupsdNextTimeout() - Find the next enabled timed callback. - * cupsdRemoveTimeout() - Discard a timed callback. - * cupsdRunTimeout() - Run a timed callback. - * cupsdUpdateTimeout() - Adjust the time of a timed callback or disable it. - * compare_addrs() - Compare pointers for array sorting. - * compare_timeouts() - Compare timed callbacks for array sorting. - */ - -#include "cupsd.h" -#ifdef HAVE_AVAHI /* Applies to entire file... */ - -/* - * Include necessary headers... - */ - -# include - - -/* - * Local types... - */ - -struct _cupsd_timeout_s /* Timeout data */ -{ - struct timeval when; /* When to fire timeout */ - int enabled; /* Is the timeout enabled? */ - cupsd_timeoutfunc_t callback; /* Timeout callback */ - void *data; /* User data for callback */ -}; - - -/* - * Local functions... - */ - -static int compare_addrs(void *p0, void *p1); -static int compare_timeouts(cupsd_timeout_t *p0, cupsd_timeout_t *p1); - - -/* - * 'cupsdAddTimeout()' - Add a timed callback. - */ - -cupsd_timeout_t * /* O - Timeout handle */ -cupsdAddTimeout( - const struct timeval *tv, /* I - Absolute time */ - cupsd_timeoutfunc_t cb, /* I - Callback function */ - void *data) /* I - User data */ -{ - cupsd_timeout_t *timeout; /* I - New timeout */ - - - if ((timeout = calloc(1, sizeof(cupsd_timeout_t))) != NULL) - { - timeout->enabled = (tv != NULL); - if (tv) - timeout->when = *tv; - - timeout->callback = cb; - timeout->data = data; - - if (!Timeouts) - Timeouts = cupsArrayNew((cups_array_func_t)compare_timeouts, NULL); - - cupsArrayAdd(Timeouts, timeout); - } - - return (timeout); -} - - -/* - * 'cupsdNextTimeout()' - Find the next enabled timed callback. - */ - -cupsd_timeout_t * /* O - Next enabled timeout or NULL */ -cupsdNextTimeout(long *delay) /* O - Seconds before scheduled */ -{ - cupsd_timeout_t *first = cupsArrayFirst(Timeouts); - /* First timeout */ - struct timeval curtime; /* Current time */ - - - if (first && !first->enabled) - first = NULL; - - if (first && delay) - { - gettimeofday(&curtime, NULL); - if (avahi_timeval_compare(&curtime, &first->when) > 0) - *delay = 0; - else - { - *delay = 1 + first->when.tv_sec - curtime.tv_sec; - if (first->when.tv_usec < curtime.tv_usec) - (*delay) --; - } - } - - return (first); -} - - -/* - * 'cupsdRemoveTimeout()' - Discard a timed callback. - */ - -void -cupsdRemoveTimeout( - cupsd_timeout_t *timeout) /* I - Timeout */ -{ - cupsArrayRemove(Timeouts, timeout); - free(timeout); -} - - -/* - * 'cupsdRunTimeout()' - Run a timed callback. - */ - -void -cupsdRunTimeout( - cupsd_timeout_t *timeout) /* I - Timeout */ -{ - if (timeout) - { - timeout->enabled = 0; - if (timeout->callback) - (*timeout->callback)(timeout, timeout->data); - } -} - - -/* - * 'cupsdUpdateTimeout()' - Adjust the time of a timed callback or disable it. - */ - -void -cupsdUpdateTimeout( - cupsd_timeout_t *timeout, /* I - Timeout */ - const struct timeval *tv) /* I - Absolute time or NULL */ -{ - cupsArrayRemove(Timeouts, timeout); - timeout->enabled = (tv != NULL); - - if (tv) - timeout->when = *tv; - - cupsArrayAdd(Timeouts, timeout); -} - - -/* - * 'compare_addrs()' - Compare pointers for array sorting. - */ - -static int /* O - Result of comparison */ -compare_addrs(void *p0, /* I - First pointer */ - void *p1) /* I - Second pointer */ -{ - if (p0 == p1) - return (0); - else if (p0 < p1) - return (-1); - else - return (1); -} - - -/* - * 'compare_timeouts()' - Compare timed callbacks for array sorting. - */ - -static int /* O - Result of comparison */ -compare_timeouts(cupsd_timeout_t *p0, /* I - First timeout */ - cupsd_timeout_t *p1) /* I - Second timeout */ -{ - int addrsdiff = compare_addrs (p0, p1); - /* Address difference */ - int tvdiff; /* Time difference */ - - - if (addrsdiff == 0) - return (0); - - if (!p0->enabled || !p1->enabled) - { - if (!p0->enabled && !p1->enabled) - return (addrsdiff); - - return (p0->enabled ? -1 : 1); - } - - tvdiff = avahi_timeval_compare(&p0->when, &p1->when); - if (tvdiff != 0) - return (tvdiff); - - return (addrsdiff); -} -#endif /* HAVE_AVAHI */ - - -/* - * End of "$Id$". - */ diff --git a/scheduler/util.c b/scheduler/util.c index 95c294dd7..fc55d5799 100644 --- a/scheduler/util.c +++ b/scheduler/util.c @@ -170,7 +170,7 @@ cupsdCreateStringsArray(const char *s) /* I - Comma-delimited strings */ /* * 'cupsdExec()' - Run a program with the correct environment. * - * On Mac OS X, we need to update the CFProcessPath environment variable that + * On OS X, we need to update the CFProcessPath environment variable that * is passed in the environment so the child can access its bundled resources. */ @@ -187,7 +187,7 @@ cupsdExec(const char *command, /* I - Full path to program */ /* - * Some Mac OS X programs are bundled and need the CFProcessPath environment + * Some OS X programs are bundled and need the CFProcessPath environment * variable defined. If the command is a symlink, resolve the link and point * to the resolved location, otherwise, use the command path itself. */ diff --git a/systemv/Dependencies b/systemv/Dependencies index 35ba25233..84fc07b47 100644 --- a/systemv/Dependencies +++ b/systemv/Dependencies @@ -1,92 +1,93 @@ -cancel.o: cancel.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -cupsaccept.o: cupsaccept.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h -cupsaddsmb.o: cupsaddsmb.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/adminutil.h -cupsctl.o: cupsctl.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/adminutil.h -cupstestdsc.o: cupstestdsc.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h -cupstestppd.o: cupstestppd.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h ../cups/dir.h \ - ../cups/raster.h -lp.o: lp.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -lpadmin.o: lpadmin.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -lpinfo.o: lpinfo.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -lpmove.o: lpmove.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h -lpoptions.o: lpoptions.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h -lppasswd.o: lppasswd.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h -lpstat.o: lpstat.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h +cancel.o: cancel.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +cupsaccept.o: cupsaccept.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +cupsaddsmb.o: cupsaddsmb.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/adminutil.h +cupsctl.o: cupsctl.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/adminutil.h +cupstestdsc.o: cupstestdsc.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +cupstestppd.o: cupstestppd.c ../cups/cups-private.h \ + ../cups/string-private.h ../config.h ../cups/debug-private.h \ + ../cups/versioning.h ../cups/ipp-private.h ../cups/ipp.h \ + ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/dir.h ../cups/raster.h +lp.o: lp.c ../cups/cups-private.h ../cups/string-private.h ../config.h \ + ../cups/debug-private.h ../cups/versioning.h ../cups/ipp-private.h \ + ../cups/ipp.h ../cups/http.h ../cups/array.h ../cups/http-private.h \ + ../cups/md5-private.h ../cups/language-private.h ../cups/transcode.h \ + ../cups/language.h ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lpadmin.o: lpadmin.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lpinfo.o: lpinfo.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lpmove.o: lpmove.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lpoptions.o: lpoptions.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lppasswd.o: lppasswd.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +lpstat.o: lpstat.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h diff --git a/systemv/cupsaddsmb.c b/systemv/cupsaddsmb.c index 946c62080..2ce91ccc4 100644 --- a/systemv/cupsaddsmb.c +++ b/systemv/cupsaddsmb.c @@ -3,7 +3,7 @@ * * "cupsaddsmb" command for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 2001-2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -282,17 +282,13 @@ usage(void) _cupsLangPuts(stdout, _(" cupsaddsmb [options] -a")); _cupsLangPuts(stdout, ""); _cupsLangPuts(stdout, _("Options:")); - _cupsLangPuts(stdout, _(" -E Encrypt the connection to " - "the server.")); + _cupsLangPuts(stdout, _(" -E Encrypt the connection.")); _cupsLangPuts(stdout, _(" -H samba-server Use the named SAMBA " "server.")); - _cupsLangPuts(stdout, _(" -U samba-user Authenticate using the " - "named SAMBA user.")); + _cupsLangPuts(stdout, _(" -U username Specify username.")); _cupsLangPuts(stdout, _(" -a Export all printers.")); - _cupsLangPuts(stdout, _(" -h cups-server Use the named CUPS " - "server.")); - _cupsLangPuts(stdout, _(" -v Be verbose (show " - "commands).")); + _cupsLangPuts(stdout, _(" -h server[:port] Specify server address.")); + _cupsLangPuts(stdout, _(" -v Be verbose.")); exit(1); } diff --git a/systemv/cupsctl.c b/systemv/cupsctl.c index e65a4f77b..0cd2a59d7 100644 --- a/systemv/cupsctl.c +++ b/systemv/cupsctl.c @@ -3,7 +3,7 @@ * * Scheduler control program for CUPS. * - * Copyright 2007-2011 by Apple Inc. + * Copyright 2007-2012 by Apple Inc. * Copyright 2006-2007 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -202,7 +202,7 @@ usage(const char *opt) /* I - Option character/string */ _cupsLangPuts(stdout, ""); _cupsLangPuts(stdout, _("Options:")); _cupsLangPuts(stdout, ""); - _cupsLangPuts(stdout, _(" -E Enable encryption.")); + _cupsLangPuts(stdout, _(" -E Encrypt the connection.")); _cupsLangPuts(stdout, _(" -U username Specify username.")); _cupsLangPuts(stdout, _(" -h server[:port] Specify server " "address.")); diff --git a/systemv/cupstestppd.c b/systemv/cupstestppd.c index b96f97cab..6e5c50de9 100644 --- a/systemv/cupstestppd.c +++ b/systemv/cupstestppd.c @@ -331,8 +331,8 @@ main(int argc, /* I - Number of command-line args */ { _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPrintf(stdout, - _(" **FAIL** Unable to open PPD file - %s"), - strerror(errno)); + _(" **FAIL** Unable to open PPD file - %s on " + "line %d."), strerror(errno), 0); continue; } } @@ -350,8 +350,8 @@ main(int argc, /* I - Number of command-line args */ { _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPrintf(stdout, - _(" **FAIL** Unable to open PPD file - %s"), - strerror(errno)); + _(" **FAIL** Unable to open PPD file - %s on " + "line %d."), strerror(errno), 0); } } else @@ -511,7 +511,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPrintf(stdout, - _(" **FAIL** BAD DefaultImageableArea %s\n" + _(" **FAIL** Bad DefaultImageableArea %s\n" " REF: Page 102, section 5.15."), attr->value); } @@ -547,7 +547,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPrintf(stdout, - _(" **FAIL** BAD DefaultPaperDimension %s\n" + _(" **FAIL** Bad DefaultPaperDimension %s\n" " REF: Page 103, section 5.15."), attr->value); } @@ -577,7 +577,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPrintf(stdout, - _(" **FAIL** BAD Default%s %s\n" + _(" **FAIL** Bad Default%s %s\n" " REF: Page 40, section 4.5."), option->keyword, option->defchoice); } @@ -739,10 +739,11 @@ main(int argc, /* I - Number of command-line args */ if (!errors && !verbose) _cupsLangPuts(stdout, _(" FAIL")); - _cupsLangPuts(stdout, - _(" **FAIL** BAD Manufacturer (should be " - "\"HP\")\n" - " REF: Page 211, table D.1.")); + _cupsLangPrintf(stdout, + _(" **FAIL** Bad Manufacturer (should be " + "\"%s\")\n" + " REF: Page 211, table D.1."), + "HP"); } errors ++; @@ -755,10 +756,11 @@ main(int argc, /* I - Number of command-line args */ if (!errors && !verbose) _cupsLangPuts(stdout, _(" FAIL")); - _cupsLangPuts(stdout, - _(" **FAIL** BAD Manufacturer (should be " - "\"Oki\")\n" - " REF: Page 211, table D.1.")); + _cupsLangPrintf(stdout, + _(" **FAIL** Bad Manufacturer (should be " + "\"%s\")\n" + " REF: Page 211, table D.1."), + "Oki"); } errors ++; @@ -795,7 +797,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPrintf(stdout, - _(" **FAIL** BAD ModelName - \"%c\" not " + _(" **FAIL** Bad ModelName - \"%c\" not " "allowed in string.\n" " REF: Pages 59-60, section 5.3."), *ptr); @@ -912,7 +914,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPuts(stdout, - _(" **FAIL** BAD Product - not \"(string)\".\n" + _(" **FAIL** Bad Product - not \"(string)\".\n" " REF: Page 62, section 5.3.")); } @@ -951,7 +953,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPuts(stdout, - _(" **FAIL** BAD PSVersion - not \"(string) " + _(" **FAIL** Bad PSVersion - not \"(string) " "int\".\n" " REF: Pages 62-64, section 5.3.")); } @@ -986,7 +988,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPuts(stdout, - _(" **FAIL** BAD ShortNickName - longer " + _(" **FAIL** Bad ShortNickName - longer " "than 31 chars.\n" " REF: Pages 64-65, section 5.3.")); } @@ -1020,7 +1022,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPuts(stdout, - _(" **FAIL** BAD JobPatchFile attribute in file\n" + _(" **FAIL** Bad JobPatchFile attribute in file\n" " REF: Page 24, section 3.4.")); } @@ -1144,7 +1146,7 @@ main(int argc, /* I - Number of command-line args */ _cupsLangPuts(stdout, _(" FAIL")); _cupsLangPrintf(stdout, - _(" **FAIL** Bad %s choice %s\n" + _(" **FAIL** Bad option %s choice %s\n" " REF: Page 84, section 5.9"), option->keyword, choice->choice); } @@ -2141,8 +2143,8 @@ check_case(ppd_file_t *ppd, /* I - PPD file */ if (verbose >= 0) _cupsLangPrintf(stdout, - _(" **FAIL** Multiple occurrences of %s " - "choice name %s."), + _(" **FAIL** Multiple occurrences of " + "option %s choice name %s."), optiona->keyword, choicea->choice); errors ++; @@ -2158,8 +2160,8 @@ check_case(ppd_file_t *ppd, /* I - PPD file */ if (verbose >= 0) _cupsLangPrintf(stdout, - _(" **FAIL** %s choice names %s and %s " - "differ only by case."), + _(" **FAIL** Option %s choice names %s and " + "%s differ only by case."), optiona->keyword, choicea->choice, choiceb->choice); errors ++; @@ -3215,17 +3217,27 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */ _PWG_FROMPTS(size->width); pwg_media = _pwgMediaForSize(width_2540ths, length_2540ths); - if (pwg_media && pwg_media->ppd) + if (pwg_media && pwg_media->ppd && (pwg_media->ppd[0] < 'a' || pwg_media->ppd[0] > 'z')) { size_t ppdlen = strlen(pwg_media->ppd); /* Length of standard PPD name */ strlcpy(buf, pwg_media->ppd, sizeof(buf)); + if (strcmp(size->name, buf) && size->width > size->length) + { + if (!strcmp(pwg_media->ppd, "DoublePostcardRotated")) + strlcpy(buf, "DoublePostcard", sizeof(buf)); + else if (strstr(size->name, ".Transverse")) + snprintf(buf, sizeof(buf), "%s.Transverse", pwg_media->ppd); + else + snprintf(buf, sizeof(buf), "%sRotated", pwg_media->ppd); + } + if (size->left == 0 && size->bottom == 0 && size->right == size->width && size->top == size->length) { - snprintf(buf, sizeof(buf), "%s.Fullbleed", pwg_media->ppd); + strlcat(buf, ".Fullbleed", sizeof(buf) - strlen(buf)); if (_cups_strcasecmp(size->name, buf)) { /* @@ -3239,20 +3251,6 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */ is_ok = 0; } } - else if (strcmp(size->name, buf) && size->width > size->length) - { - if (!strcmp(pwg_media->ppd, "DoublePostcardRotated")) - strlcpy(buf, "DoublePostcard", sizeof(buf)); - else - snprintf(buf, sizeof(buf), "%sRotated", pwg_media->ppd); - - if (strcmp(size->name, buf)) - { - snprintf(buf, sizeof(buf), "%s.Transverse", pwg_media->ppd); - if (strcmp(size->name, buf)) - is_ok = 0; - } - } else if (!strncmp(size->name, pwg_media->ppd, ppdlen)) { /* @@ -3281,7 +3279,8 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */ * Check for EnvSizeName as well... */ - if (strncmp(pwg_media->ppd, "Env", 3)) + if (strncmp(pwg_media->ppd, "Env", 3) && + !strncmp(size->name, "Env", 3)) snprintf(buf, sizeof(buf), "Env%s", pwg_media->ppd); if (strcmp(size->name, buf)) @@ -3327,7 +3326,8 @@ check_sizes(ppd_file_t *ppd, /* I - PPD file */ size_t buflen = strlen(buf); /* Length of proposed name */ if (_cups_strncasecmp(size->name, buf, buflen) || - strcmp(size->name + buflen, "in")) + (strcmp(size->name + buflen, "in") && + size->name[buflen] != '.')) _cupsLangPrintf(stdout, _(" %s Size \"%s\" should be \"%s\"."), prefix, size->name, buf); @@ -3805,7 +3805,7 @@ usage(void) "errors.")); _cupsLangPuts(stdout, _(" -q Run silently.")); _cupsLangPuts(stdout, _(" -r Use 'relaxed' open mode.")); - _cupsLangPuts(stdout, _(" -v Be slightly verbose.")); + _cupsLangPuts(stdout, _(" -v Be verbose.")); _cupsLangPuts(stdout, _(" -vv Be very verbose.")); exit(ERROR_USAGE); diff --git a/templates/error.tmpl b/templates/error.tmpl index ff30a4c6c..86235732e 100644 --- a/templates/error.tmpl +++ b/templates/error.tmpl @@ -2,7 +2,7 @@

          {?title} {?printer_name} Error

          -

          {?message?{message}:Error:}

          +

          {?message?{message}:Error}:

          {error}
          diff --git a/test/Dependencies b/test/Dependencies index 85f656088..69b96a6f4 100644 --- a/test/Dependencies +++ b/test/Dependencies @@ -1,17 +1,18 @@ -ippserver.o: ippserver.c ../cups/cups-private.h ../cups/cups.h \ - ../cups/file.h ../cups/versioning.h ../cups/ipp.h ../cups/http.h \ - ../cups/array.h ../cups/language.h ../cups/string-private.h \ - ../config.h ../cups/debug-private.h ../cups/ppd-private.h \ - ../cups/ppd.h ../cups/pwg-private.h ../cups/http-private.h \ - ../cups/md5-private.h ../cups/ipp-private.h ../cups/language-private.h \ - ../cups/transcode.h ../cups/thread-private.h -ipptool.o: ipptool.c ../cups/cups-private.h ../cups/cups.h ../cups/file.h \ - ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ - ../cups/language.h ../cups/string-private.h ../config.h \ - ../cups/debug-private.h ../cups/ppd-private.h ../cups/ppd.h \ - ../cups/pwg-private.h ../cups/http-private.h ../cups/md5-private.h \ - ../cups/ipp-private.h ../cups/language-private.h ../cups/transcode.h \ - ../cups/thread-private.h ../cups/file-private.h +ippserver.o: ippserver.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h +ipptool.o: ipptool.c ../cups/cups-private.h ../cups/string-private.h \ + ../config.h ../cups/debug-private.h ../cups/versioning.h \ + ../cups/ipp-private.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ + ../cups/http-private.h ../cups/md5-private.h \ + ../cups/language-private.h ../cups/transcode.h ../cups/language.h \ + ../cups/pwg-private.h ../cups/cups.h ../cups/file.h \ + ../cups/ppd-private.h ../cups/ppd.h ../cups/thread-private.h \ + ../cups/file-private.h xmltotest.o: xmltotest.c ../config.h ../cups/cups.h ../cups/file.h \ ../cups/versioning.h ../cups/ipp.h ../cups/http.h ../cups/array.h \ ../cups/language.h diff --git a/test/ipp-1.1.test b/test/ipp-1.1.test index 11abf0aa0..23f2a0bde 100644 --- a/test/ipp-1.1.test +++ b/test/ipp-1.1.test @@ -15,6 +15,9 @@ # Usage: # # ./ipptool -f filename [-d document-uri=SOMEURI] -t printer-uri ipp-1.1.test +# ./ipptool -f filename -d NOPRINT=1 -t printer-uri ipp-1.1.test +# +# The latter form disables all but the basic file printing. # # Regular expressions for URI schemes: @@ -1275,6 +1278,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" # Test PDF output { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA @@ -1310,6 +1314,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX @@ -1347,6 +1352,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA @@ -1382,6 +1388,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX @@ -1421,6 +1428,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" # Test PostScript output { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA @@ -1456,6 +1464,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX @@ -1493,6 +1502,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA @@ -1528,6 +1538,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_DUPLEX @@ -1567,6 +1578,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" # Test JPEG output { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA @@ -1602,6 +1614,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA @@ -1637,6 +1650,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA @@ -1672,6 +1686,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA @@ -1707,6 +1722,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA @@ -1742,6 +1758,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA @@ -1779,6 +1796,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" # Print-Job with job-sheets { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET @@ -1816,6 +1834,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET @@ -1853,6 +1872,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET @@ -1890,6 +1910,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_STANDARD_SHEET @@ -1929,6 +1950,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" # Test number-up output { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_2UP @@ -1966,6 +1988,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_2UP @@ -2003,6 +2026,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_2UP @@ -2040,6 +2064,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_POSTSCRIPT SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_2UP @@ -2079,6 +2104,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" # Test output with print-quality... { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY @@ -2116,6 +2142,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_NORMAL_QUALITY @@ -2153,6 +2180,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_JPEG SKIP-IF-NOT-DEFINED OPTIONAL_4X6_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_HIGH_QUALITY @@ -2190,6 +2218,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_A4_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY @@ -2227,6 +2256,7 @@ DEFINE IPP_URI_SCHEME "/^ipps?://.+$$/" } { + SKIP-IF-DEFINED NOPRINT SKIP-IF-NOT-DEFINED OPTIONAL_PDF SKIP-IF-NOT-DEFINED OPTIONAL_LETTER_MEDIA SKIP-IF-NOT-DEFINED OPTIONAL_DRAFT_QUALITY diff --git a/test/ipptool.c b/test/ipptool.c index 5c1dd26f2..1663da770 100644 --- a/test/ipptool.c +++ b/test/ipptool.c @@ -507,8 +507,8 @@ main(int argc, /* I - Number of command-line args */ if (Output == _CUPS_OUTPUT_PLIST && interval) { - _cupsLangPuts(stderr, _("ipptool: \"-i\" is incompatible with " - "\"-X\".")); + _cupsLangPuts(stderr, _("ipptool: \"-i\" and \"-n\" are " + "incompatible with -X\".")); usage(); } break; @@ -531,8 +531,8 @@ main(int argc, /* I - Number of command-line args */ if (Output == _CUPS_OUTPUT_PLIST && repeat) { - _cupsLangPuts(stderr, _("ipptool: \"-n\" is incompatible with " - "\"-X\".")); + _cupsLangPuts(stderr, _("ipptool: \"-i\" and \"-n\" are " + "incompatible with -X\".")); usage(); } break; @@ -4338,8 +4338,8 @@ usage(void) _cupsLangPuts(stderr, _(" -6 Connect using IPv6.")); _cupsLangPuts(stderr, _(" -C Send requests using " "chunking (default).")); - _cupsLangPuts(stderr, _(" -E Test with TLS " - "encryption.")); + _cupsLangPuts(stdout, _(" -E Test with HTTP Upgrade to " + "TLS.")); _cupsLangPuts(stderr, _(" -I Ignore errors.")); _cupsLangPuts(stderr, _(" -L Send requests using " "content-length.")); @@ -4359,11 +4359,9 @@ usage(void) "the given time interval.")); _cupsLangPuts(stderr, _(" -n count Repeat the last file the " "given number of times.")); - _cupsLangPuts(stderr, _(" -q Be quiet - no output " - "except errors.")); + _cupsLangPuts(stderr, _(" -q Run silently.")); _cupsLangPuts(stderr, _(" -t Produce a test report.")); - _cupsLangPuts(stderr, _(" -v Show all attributes sent " - "and received.")); + _cupsLangPuts(stderr, _(" -v Be verbose.")); exit(1); } diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh index b980c64ee..03e803102 100755 --- a/test/run-stp-tests.sh +++ b/test/run-stp-tests.sh @@ -323,7 +323,7 @@ ln -s $root/data/*.defs /tmp/cups-$user/share/ppdc ln -s $root/templates /tmp/cups-$user/share # -# Mac OS X filters and configuration files... +# Local filters and configuration files... # if test `uname` = Darwin; then diff --git a/vcnet/config.h b/vcnet/config.h index bbaf2c29a..79ac955f6 100644 --- a/vcnet/config.h +++ b/vcnet/config.h @@ -599,7 +599,7 @@ /* - * Do we have Mac OS X 10.4's mbr_XXX functions? + * Do we have OS X 10.4's mbr_XXX functions? */ /* #undef HAVE_MEMBERSHIP_H */ @@ -761,7 +761,7 @@ /* - * Location of Mac OS X localization bundle, if any. + * Location of OS X localization bundle, if any. */ /* #undef CUPS_BUNDLEDIR */ diff --git a/xcode/CUPS.xcodeproj/project.pbxproj b/xcode/CUPS.xcodeproj/project.pbxproj index 66174ef80..429561178 100644 --- a/xcode/CUPS.xcodeproj/project.pbxproj +++ b/xcode/CUPS.xcodeproj/project.pbxproj @@ -40,7 +40,6 @@ 274FF5E913332D4300317ECB /* PBXTargetDependency */, 274FF648133335A300317ECB /* PBXTargetDependency */, 274FF65E13333A3400317ECB /* PBXTargetDependency */, - 274FF67213333AE400317ECB /* PBXTargetDependency */, 724379531333FECE009631B9 /* PBXTargetDependency */, 724379111333E4EA009631B9 /* PBXTargetDependency */, 276683FF1337F7C5000D33D0 /* PBXTargetDependency */, @@ -61,17 +60,9 @@ /* End PBXAggregateTarget section */ /* Begin PBXBuildFile section */ - 270CCDB9135E3D0900007BE2 /* libcups_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A4C1336F31B004BB496 /* libcups_static.a */; }; 270CCDBA135E3D0900007BE2 /* libcupsmime.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220FAC13330B2200FCA411 /* libcupsmime.dylib */; }; 270CCDBC135E3D3E00007BE2 /* testmime.c in Sources */ = {isa = PBXBuildFile; fileRef = 270CCDBB135E3D3E00007BE2 /* testmime.c */; }; 273BF6C71333B5370022CAAB /* testcups.c in Sources */ = {isa = PBXBuildFile; fileRef = 273BF6C61333B5370022CAAB /* testcups.c */; }; - 273BF6CE1333B5950022CAAB /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6CB1333B5950022CAAB /* CoreFoundation.framework */; }; - 273BF6CF1333B5950022CAAB /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6CC1333B5950022CAAB /* libiconv.dylib */; }; - 273BF6D01333B5950022CAAB /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6CD1333B5950022CAAB /* libz.dylib */; }; - 273BF6D31333B5C30022CAAB /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6D11333B5C30022CAAB /* Kerberos.framework */; }; - 273BF6D41333B5C30022CAAB /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6D21333B5C30022CAAB /* Security.framework */; }; - 273BF6D71333B5F60022CAAB /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6D51333B5F60022CAAB /* libresolv.dylib */; }; - 273BF6D81333B5F60022CAAB /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 273BF6D61333B5F60022CAAB /* SystemConfiguration.framework */; }; 274FF5D913332CC700317ECB /* cups-driverd.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 274FF5D613332CC700317ECB /* cups-driverd.cxx */; }; 274FF5DA13332CC700317ECB /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF5D713332CC700317ECB /* util.c */; }; 274FF5DD13332D0600317ECB /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; @@ -104,8 +95,6 @@ 274FF64A1333398D00317ECB /* cups-exec.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF6491333398D00317ECB /* cups-exec.c */; }; 274FF658133339D300317ECB /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; 274FF65C133339FC00317ECB /* cups-lpd.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF65B133339FC00317ECB /* cups-lpd.c */; }; - 274FF66E13333AB500317ECB /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; - 274FF67013333ACF00317ECB /* cups-polld.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF66F13333ACF00317ECB /* cups-polld.c */; }; 274FF68513333B4300317ECB /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; 274FF68613333B4300317ECB /* libcupsmime.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220FAC13330B2200FCA411 /* libcupsmime.dylib */; }; 274FF68813333B6E00317ECB /* cupsfilter.c in Sources */ = {isa = PBXBuildFile; fileRef = 274FF68713333B6E00317ECB /* cupsfilter.c */; }; @@ -155,13 +144,6 @@ 274FF6B61333B1C400317ECB /* transcode.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F06133305BB00FCA411 /* transcode.c */; }; 274FF6B71333B1C400317ECB /* usersys.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F08133305BB00FCA411 /* usersys.c */; }; 274FF6B81333B1C400317ECB /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F09133305BB00FCA411 /* util.c */; }; - 274FF6BA1333B1C400317ECB /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F49133306BB00FCA411 /* CoreFoundation.framework */; }; - 274FF6BB1333B1C400317ECB /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F55133308EA00FCA411 /* Kerberos.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; - 274FF6BC1333B1C400317ECB /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4B133306BB00FCA411 /* Security.framework */; }; - 274FF6BD1333B1C400317ECB /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */; }; - 274FF6BE1333B1C400317ECB /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F51133308C100FCA411 /* libiconv.dylib */; }; - 274FF6BF1333B1C400317ECB /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F53133308CB00FCA411 /* libresolv.dylib */; }; - 274FF6C01333B1C400317ECB /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4A133306BB00FCA411 /* libz.dylib */; }; 274FF6C21333B1C400317ECB /* adminutil.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220EB71333056300FCA411 /* adminutil.h */; settings = {ATTRIBUTES = (); }; }; 274FF6C31333B1C400317ECB /* array.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220EB91333056300FCA411 /* array.h */; settings = {ATTRIBUTES = (); }; }; 274FF6C41333B1C400317ECB /* backend.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220EBE1333056300FCA411 /* backend.h */; settings = {ATTRIBUTES = (); }; }; @@ -211,17 +193,11 @@ 276683FD1337F7B8000D33D0 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; 2766840F1337FA38000D33D0 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; 276684111337FA7C000D33D0 /* cupsaddsmb.c in Sources */ = {isa = PBXBuildFile; fileRef = 276684101337FA7C000D33D0 /* cupsaddsmb.c */; }; - 278C58D9136B645C00836530 /* libcups_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A4C1336F31B004BB496 /* libcups_static.a */; }; - 278C58DE136B645C00836530 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58DA136B645C00836530 /* CoreFoundation.framework */; }; - 278C58DF136B645C00836530 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58DB136B645C00836530 /* Kerberos.framework */; }; - 278C58E1136B645C00836530 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58DD136B645C00836530 /* SystemConfiguration.framework */; }; 278C58E3136B647200836530 /* testhttp.c in Sources */ = {isa = PBXBuildFile; fileRef = 278C58E2136B647200836530 /* testhttp.c */; }; - 278C58E4136B649200836530 /* libcups_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A4C1336F31B004BB496 /* libcups_static.a */; }; 278C58E9136B64B000836530 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E5136B64AF00836530 /* CoreFoundation.framework */; }; 278C58EA136B64B000836530 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E6136B64B000836530 /* Kerberos.framework */; }; 278C58EB136B64B000836530 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E7136B64B000836530 /* Security.framework */; }; 278C58EC136B64B000836530 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E8136B64B000836530 /* SystemConfiguration.framework */; }; - 278C58F6136B652300836530 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58F4136B652300836530 /* Security.framework */; }; 720DD6CD1358FD720064AA82 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; 720DD6D31358FDDE0064AA82 /* snmp.c in Sources */ = {isa = PBXBuildFile; fileRef = 720DD6D21358FDDE0064AA82 /* snmp.c */; }; 720DD6D413590AB90064AA82 /* ieee1284.c in Sources */ = {isa = PBXBuildFile; fileRef = 724379CA1334000E009631B9 /* ieee1284.c */; }; @@ -297,15 +273,7 @@ 72220F43133305BB00FCA411 /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F09133305BB00FCA411 /* util.c */; }; 72220F44133305BB00FCA411 /* versioning.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220F0A133305BB00FCA411 /* versioning.h */; settings = {ATTRIBUTES = (Public, ); }; }; 72220F481333063D00FCA411 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 72220F471333063D00FCA411 /* config.h */; settings = {ATTRIBUTES = (Private, ); }; }; - 72220F4D133306BB00FCA411 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F49133306BB00FCA411 /* CoreFoundation.framework */; }; - 72220F4E133306BB00FCA411 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4A133306BB00FCA411 /* libz.dylib */; }; - 72220F4F133306BB00FCA411 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4B133306BB00FCA411 /* Security.framework */; }; - 72220F50133306BB00FCA411 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */; }; - 72220F52133308C100FCA411 /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F51133308C100FCA411 /* libiconv.dylib */; }; - 72220F54133308CB00FCA411 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F53133308CB00FCA411 /* libresolv.dylib */; }; - 72220F56133308EA00FCA411 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F55133308EA00FCA411 /* Kerberos.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 72220F6613330A7000FCA411 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; - 72220F6813330A8500FCA411 /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F6713330A8500FCA411 /* ApplicationServices.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; 72220F9013330B0C00FCA411 /* auth.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F6913330B0C00FCA411 /* auth.c */; }; 72220F9113330B0C00FCA411 /* banners.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F6B13330B0C00FCA411 /* banners.c */; }; 72220F9213330B0C00FCA411 /* cert.c in Sources */ = {isa = PBXBuildFile; fileRef = 72220F6D13330B0C00FCA411 /* cert.c */; }; @@ -354,33 +322,22 @@ 724379511333FEBB009631B9 /* dnssd.c in Sources */ = {isa = PBXBuildFile; fileRef = 724379501333FEBB009631B9 /* dnssd.c */; }; 724379561333FF04009631B9 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; 724379661333FF3B009631B9 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; - 724379681333FF3B009631B9 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 724379671333FF3B009631B9 /* IOKit.framework */; }; 724379C71333FFC7009631B9 /* usb.c in Sources */ = {isa = PBXBuildFile; fileRef = 724379C51333FFC7009631B9 /* usb.c */; }; - 724379C91333FFF3009631B9 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 724379C81333FFF3009631B9 /* CoreFoundation.framework */; }; 724379CB1334000E009631B9 /* ieee1284.c in Sources */ = {isa = PBXBuildFile; fileRef = 724379CA1334000E009631B9 /* ieee1284.c */; }; 7258EAED134594EB009286F1 /* rastertopwg.c in Sources */ = {isa = PBXBuildFile; fileRef = 7258EAEC134594EB009286F1 /* rastertopwg.c */; }; 7258EAF413459B6D009286F1 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; 7258EAF513459B6D009286F1 /* libcupsimage.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A611336F9A3004BB496 /* libcupsimage.dylib */; }; - 7263EE2713330D2800BA4D44 /* libpam.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2613330D2800BA4D44 /* libpam.dylib */; }; - 7263EE2C13330D5C00BA4D44 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2913330D5C00BA4D44 /* Kerberos.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; - 7263EE2D13330D5C00BA4D44 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2A13330D5C00BA4D44 /* Security.framework */; }; - 7263EE2E13330D5C00BA4D44 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2B13330D5C00BA4D44 /* SystemConfiguration.framework */; }; - 7263EE3013330DC100BA4D44 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE2F13330DC100BA4D44 /* IOKit.framework */; }; - 7263EE3213330E1E00BA4D44 /* libpthread.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3113330E1E00BA4D44 /* libpthread.dylib */; }; - 7263EE3413330E3C00BA4D44 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3313330E3C00BA4D44 /* libresolv.dylib */; }; - 7263EE3613330E4E00BA4D44 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3513330E4E00BA4D44 /* CoreFoundation.framework */; }; - 7263EE3813330E7500BA4D44 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3713330E7500BA4D44 /* libz.dylib */; }; - 7263EE3A13330EC500BA4D44 /* libldap.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7263EE3913330EC500BA4D44 /* libldap.dylib */; }; 726AD702135E8A90002C930D /* ippserver.c in Sources */ = {isa = PBXBuildFile; fileRef = 726AD701135E8A90002C930D /* ippserver.c */; }; - 726AD707135E8B11002C930D /* libcups_static.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 72F75A4C1336F31B004BB496 /* libcups_static.a */; }; - 726AD708135E8B11002C930D /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F49133306BB00FCA411 /* CoreFoundation.framework */; }; - 726AD709135E8B11002C930D /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F55133308EA00FCA411 /* Kerberos.framework */; }; - 726AD70A135E8B11002C930D /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F53133308CB00FCA411 /* libresolv.dylib */; }; - 726AD70B135E8B11002C930D /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4A133306BB00FCA411 /* libz.dylib */; }; - 726AD70C135E8B11002C930D /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4B133306BB00FCA411 /* Security.framework */; }; - 726AD70D135E8B11002C930D /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */; }; - 726AD70E135E8B5E002C930D /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220F51133308C100FCA411 /* libiconv.dylib */; }; 7271883D1374AB14001A2036 /* mime-private.h in Headers */ = {isa = PBXBuildFile; fileRef = 7271883C1374AB14001A2036 /* mime-private.h */; }; + 728FB7E4153600FA005426E1 /* avahi.c in Sources */ = {isa = PBXBuildFile; fileRef = 728FB7DE153600FA005426E1 /* avahi.c */; }; + 728FB7E8153600FA005426E1 /* tls.c in Sources */ = {isa = PBXBuildFile; fileRef = 728FB7E3153600FA005426E1 /* tls.c */; }; + 728FB7E91536161C005426E1 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E5136B64AF00836530 /* CoreFoundation.framework */; }; + 728FB7EA1536161C005426E1 /* Kerberos.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E6136B64B000836530 /* Kerberos.framework */; }; + 728FB7EB1536161C005426E1 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E7136B64B000836530 /* Security.framework */; }; + 728FB7ED1536161C005426E1 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 728FB7EC1536161C005426E1 /* libz.dylib */; }; + 728FB7EE15361642005426E1 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 278C58E8136B64B000836530 /* SystemConfiguration.framework */; }; + 728FB7F11536167A005426E1 /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 728FB7EF1536167A005426E1 /* libiconv.dylib */; }; + 728FB7F21536167A005426E1 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 728FB7F01536167A005426E1 /* libresolv.dylib */; }; 72C16CB9137B195D007E4BF4 /* file.c in Sources */ = {isa = PBXBuildFile; fileRef = 72C16CB8137B195D007E4BF4 /* file.c */; }; 72F75A5C1336F988004BB496 /* cupstestppd.c in Sources */ = {isa = PBXBuildFile; fileRef = 72F75A5B1336F988004BB496 /* cupstestppd.c */; }; 72F75A671336FA38004BB496 /* libcups.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 72220EAE1333047D00FCA411 /* libcups.dylib */; }; @@ -517,20 +474,6 @@ remoteGlobalIDString = 274FF64E133339C400317ECB; remoteInfo = "cups-lpd"; }; - 274FF66C13333AAD00317ECB /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 72BF96371333042100B1EAD7 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 72220EAD1333047D00FCA411; - remoteInfo = libcups; - }; - 274FF67113333AE400317ECB /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 72BF96371333042100B1EAD7 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 274FF66213333A9B00317ECB; - remoteInfo = "cups-polld"; - }; 274FF68113333B3C00317ECB /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 72BF96371333042100B1EAD7 /* Project object */; @@ -945,15 +888,6 @@ ); runOnlyForDeploymentPostprocessing = 1; }; - 274FF66113333A9B00317ECB /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = /usr/share/man/man1/; - dstSubfolderSpec = 0; - files = ( - ); - runOnlyForDeploymentPostprocessing = 1; - }; 274FF67613333B2F00317ECB /* CopyFiles */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; @@ -1151,13 +1085,6 @@ 2732E092137A3F5200FAFEF6 /* lpstat.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = lpstat.c; path = ../systemv/lpstat.c; sourceTree = ""; }; 273BF6BD1333B5000022CAAB /* testcups */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = testcups; sourceTree = BUILT_PRODUCTS_DIR; }; 273BF6C61333B5370022CAAB /* testcups.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testcups.c; path = ../cups/testcups.c; sourceTree = ""; }; - 273BF6CB1333B5950022CAAB /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; }; - 273BF6CC1333B5950022CAAB /* libiconv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libiconv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libiconv.dylib; sourceTree = DEVELOPER_DIR; }; - 273BF6CD1333B5950022CAAB /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; }; - 273BF6D11333B5C30022CAAB /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kerberos.framework; sourceTree = DEVELOPER_DIR; }; - 273BF6D21333B5C30022CAAB /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; }; - 273BF6D51333B5F60022CAAB /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libresolv.dylib; sourceTree = DEVELOPER_DIR; }; - 273BF6D61333B5F60022CAAB /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; }; 274FF5CC13332B1F00317ECB /* cups-driverd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "cups-driverd"; sourceTree = BUILT_PRODUCTS_DIR; }; 274FF5D613332CC700317ECB /* cups-driverd.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "cups-driverd.cxx"; path = "../scheduler/cups-driverd.cxx"; sourceTree = ""; }; 274FF5D713332CC700317ECB /* util.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = util.c; path = ../scheduler/util.c; sourceTree = ""; }; @@ -1190,8 +1117,6 @@ 274FF6491333398D00317ECB /* cups-exec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "cups-exec.c"; path = "../scheduler/cups-exec.c"; sourceTree = ""; }; 274FF64F133339C400317ECB /* cups-lpd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "cups-lpd"; sourceTree = BUILT_PRODUCTS_DIR; }; 274FF65B133339FC00317ECB /* cups-lpd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "cups-lpd.c"; path = "../scheduler/cups-lpd.c"; sourceTree = ""; }; - 274FF66313333A9B00317ECB /* cups-polld */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "cups-polld"; sourceTree = BUILT_PRODUCTS_DIR; }; - 274FF66F13333ACF00317ECB /* cups-polld.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "cups-polld.c"; path = "../scheduler/cups-polld.c"; sourceTree = ""; }; 274FF67813333B2F00317ECB /* cupsfilter */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cupsfilter; sourceTree = BUILT_PRODUCTS_DIR; }; 274FF68713333B6E00317ECB /* cupsfilter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cupsfilter.c; path = ../scheduler/cupsfilter.c; sourceTree = ""; }; 276683561337A8C5000D33D0 /* cups.strings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = cups.strings; path = ../locale/cups.strings; sourceTree = ""; }; @@ -1212,15 +1137,11 @@ 276684041337FA1D000D33D0 /* cupsaddsmb */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cupsaddsmb; sourceTree = BUILT_PRODUCTS_DIR; }; 276684101337FA7C000D33D0 /* cupsaddsmb.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cupsaddsmb.c; path = ../systemv/cupsaddsmb.c; sourceTree = ""; }; 278C58CB136B640300836530 /* testhttp */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = testhttp; sourceTree = BUILT_PRODUCTS_DIR; }; - 278C58DA136B645C00836530 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; }; - 278C58DB136B645C00836530 /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kerberos.framework; sourceTree = DEVELOPER_DIR; }; - 278C58DD136B645C00836530 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; }; 278C58E2136B647200836530 /* testhttp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testhttp.c; path = ../cups/testhttp.c; sourceTree = ""; }; 278C58E5136B64AF00836530 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = ""; }; 278C58E6136B64B000836530 /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = /System/Library/Frameworks/Kerberos.framework; sourceTree = ""; }; 278C58E7136B64B000836530 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = ""; }; 278C58E8136B64B000836530 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = /System/Library/Frameworks/SystemConfiguration.framework; sourceTree = ""; }; - 278C58F4136B652300836530 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; }; 27D3037C134148CB00F022B1 /* libcups_s.exp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.exports; name = libcups_s.exp; path = ../cups/libcups_s.exp; sourceTree = ""; }; 27D3037D134148CB00F022B1 /* libcups2.def */ = {isa = PBXFileReference; lastKnownFileType = text; name = libcups2.def; path = ../cups/libcups2.def; sourceTree = ""; }; 720DD6C21358FD5F0064AA82 /* snmp */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = snmp; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -1299,15 +1220,7 @@ 72220F09133305BB00FCA411 /* util.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = util.c; path = ../cups/util.c; sourceTree = ""; }; 72220F0A133305BB00FCA411 /* versioning.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = versioning.h; path = ../cups/versioning.h; sourceTree = ""; }; 72220F471333063D00FCA411 /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = ""; }; - 72220F49133306BB00FCA411 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; }; - 72220F4A133306BB00FCA411 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; }; - 72220F4B133306BB00FCA411 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; }; - 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; }; - 72220F51133308C100FCA411 /* libiconv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libiconv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libiconv.dylib; sourceTree = DEVELOPER_DIR; }; - 72220F53133308CB00FCA411 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libresolv.dylib; sourceTree = DEVELOPER_DIR; }; - 72220F55133308EA00FCA411 /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kerberos.framework; sourceTree = DEVELOPER_DIR; }; 72220F5B13330A5A00FCA411 /* cupsd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cupsd; sourceTree = BUILT_PRODUCTS_DIR; }; - 72220F6713330A8500FCA411 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/ApplicationServices.framework; sourceTree = DEVELOPER_DIR; }; 72220F6913330B0C00FCA411 /* auth.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = auth.c; path = ../scheduler/auth.c; sourceTree = SOURCE_ROOT; }; 72220F6A13330B0C00FCA411 /* auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = auth.h; path = ../scheduler/auth.h; sourceTree = SOURCE_ROOT; }; 72220F6B13330B0C00FCA411 /* banners.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = banners.c; path = ../scheduler/banners.c; sourceTree = SOURCE_ROOT; }; @@ -1365,23 +1278,11 @@ 724379471333FEA9009631B9 /* dnssd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dnssd; sourceTree = BUILT_PRODUCTS_DIR; }; 724379501333FEBB009631B9 /* dnssd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dnssd.c; path = ../backend/dnssd.c; sourceTree = ""; }; 7243795B1333FF1D009631B9 /* usb */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = usb; sourceTree = BUILT_PRODUCTS_DIR; }; - 724379671333FF3B009631B9 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = SDKs/MacOSX10.7.sdk/System/Library/Frameworks/IOKit.framework; sourceTree = DEVELOPER_DIR; }; 724379C41333FFC7009631B9 /* usb-darwin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "usb-darwin.c"; path = "../backend/usb-darwin.c"; sourceTree = ""; }; 724379C51333FFC7009631B9 /* usb.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = usb.c; path = ../backend/usb.c; sourceTree = ""; }; - 724379C81333FFF3009631B9 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.7.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; }; 724379CA1334000E009631B9 /* ieee1284.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ieee1284.c; path = ../backend/ieee1284.c; sourceTree = ""; }; 7258EAE2134594C4009286F1 /* rastertopwg */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = rastertopwg; sourceTree = BUILT_PRODUCTS_DIR; }; 7258EAEC134594EB009286F1 /* rastertopwg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rastertopwg.c; path = ../filter/rastertopwg.c; sourceTree = ""; }; - 7263EE2613330D2800BA4D44 /* libpam.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libpam.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libpam.dylib; sourceTree = DEVELOPER_DIR; }; - 7263EE2913330D5C00BA4D44 /* Kerberos.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Kerberos.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Kerberos.framework; sourceTree = DEVELOPER_DIR; }; - 7263EE2A13330D5C00BA4D44 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; }; - 7263EE2B13330D5C00BA4D44 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; }; - 7263EE2F13330DC100BA4D44 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/IOKit.framework; sourceTree = DEVELOPER_DIR; }; - 7263EE3113330E1E00BA4D44 /* libpthread.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libpthread.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libpthread.dylib; sourceTree = DEVELOPER_DIR; }; - 7263EE3313330E3C00BA4D44 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libresolv.dylib; sourceTree = DEVELOPER_DIR; }; - 7263EE3513330E4E00BA4D44 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; }; - 7263EE3713330E7500BA4D44 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libz.dylib; sourceTree = DEVELOPER_DIR; }; - 7263EE3913330EC500BA4D44 /* libldap.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libldap.dylib; path = SDKs/MacOSX10.6.sdk/usr/lib/libldap.dylib; sourceTree = DEVELOPER_DIR; }; 726AD6F7135E88F0002C930D /* ippserver */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = ippserver; sourceTree = BUILT_PRODUCTS_DIR; }; 726AD701135E8A90002C930D /* ippserver.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ippserver.c; path = ../test/ippserver.c; sourceTree = ""; }; 7271881713746EA8001A2036 /* commandtops.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = commandtops.c; path = ../filter/commandtops.c; sourceTree = ""; }; @@ -1393,8 +1294,17 @@ 7271882213746EA8001A2036 /* rastertohp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = rastertohp.c; path = ../filter/rastertohp.c; sourceTree = ""; }; 7271882313746EA8001A2036 /* rastertolabel.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = rastertolabel.c; path = ../filter/rastertolabel.c; sourceTree = ""; }; 7271883C1374AB14001A2036 /* mime-private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "mime-private.h"; path = "../scheduler/mime-private.h"; sourceTree = ""; }; + 728FB7DE153600FA005426E1 /* avahi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = avahi.c; path = ../scheduler/avahi.c; sourceTree = ""; }; + 728FB7DF153600FA005426E1 /* avahi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = avahi.h; path = ../scheduler/avahi.h; sourceTree = ""; }; + 728FB7E0153600FA005426E1 /* tls-darwin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "tls-darwin.c"; path = "../scheduler/tls-darwin.c"; sourceTree = ""; }; + 728FB7E1153600FA005426E1 /* tls-gnutls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "tls-gnutls.c"; path = "../scheduler/tls-gnutls.c"; sourceTree = ""; }; + 728FB7E2153600FA005426E1 /* tls-openssl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "tls-openssl.c"; path = "../scheduler/tls-openssl.c"; sourceTree = ""; }; + 728FB7E3153600FA005426E1 /* tls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tls.c; path = ../scheduler/tls.c; sourceTree = ""; }; + 728FB7EC1536161C005426E1 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = ../../../../../usr/lib/libz.dylib; sourceTree = ""; }; + 728FB7EF1536167A005426E1 /* libiconv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libiconv.dylib; path = ../../../../../usr/lib/libiconv.dylib; sourceTree = ""; }; + 728FB7F01536167A005426E1 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = ../../../../../usr/lib/libresolv.dylib; sourceTree = ""; }; 72C16CB8137B195D007E4BF4 /* file.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = file.c; path = ../scheduler/file.c; sourceTree = SOURCE_ROOT; }; - 72F75A4C1336F31B004BB496 /* libcups_static.a */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libcups_static.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 72F75A4C1336F31B004BB496 /* libcups_static.a */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; name = libcups_static.a; path = "/Users/msweet/c/cups-trunk/xcode/build/Release/libcups_static.a"; sourceTree = ""; }; 72F75A521336F950004BB496 /* cupstestppd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = cupstestppd; sourceTree = BUILT_PRODUCTS_DIR; }; 72F75A5B1336F988004BB496 /* cupstestppd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = cupstestppd.c; path = ../systemv/cupstestppd.c; sourceTree = ""; }; 72F75A611336F9A3004BB496 /* libcupsimage.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libcupsimage.dylib; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -1412,7 +1322,6 @@ 278C58EA136B64B000836530 /* Kerberos.framework in Frameworks */, 278C58EB136B64B000836530 /* Security.framework in Frameworks */, 278C58EC136B64B000836530 /* SystemConfiguration.framework in Frameworks */, - 270CCDB9135E3D0900007BE2 /* libcups_static.a in Frameworks */, 270CCDBA135E3D0900007BE2 /* libcupsmime.dylib in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -1421,14 +1330,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 278C58E4136B649200836530 /* libcups_static.a in Frameworks */, - 273BF6CE1333B5950022CAAB /* CoreFoundation.framework in Frameworks */, - 273BF6D31333B5C30022CAAB /* Kerberos.framework in Frameworks */, - 273BF6D41333B5C30022CAAB /* Security.framework in Frameworks */, - 273BF6D81333B5F60022CAAB /* SystemConfiguration.framework in Frameworks */, - 273BF6CF1333B5950022CAAB /* libiconv.dylib in Frameworks */, - 273BF6D71333B5F60022CAAB /* libresolv.dylib in Frameworks */, - 273BF6D01333B5950022CAAB /* libz.dylib in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1472,14 +1373,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 274FF66013333A9B00317ECB /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 274FF66E13333AB500317ECB /* libcups.dylib in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 274FF67513333B2F00317ECB /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -1493,13 +1386,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 274FF6BA1333B1C400317ECB /* CoreFoundation.framework in Frameworks */, - 274FF6BB1333B1C400317ECB /* Kerberos.framework in Frameworks */, - 274FF6BC1333B1C400317ECB /* Security.framework in Frameworks */, - 274FF6BD1333B1C400317ECB /* SystemConfiguration.framework in Frameworks */, - 274FF6BE1333B1C400317ECB /* libiconv.dylib in Frameworks */, - 274FF6BF1333B1C400317ECB /* libresolv.dylib in Frameworks */, - 274FF6C01333B1C400317ECB /* libz.dylib in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1576,11 +1462,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 278C58DE136B645C00836530 /* CoreFoundation.framework in Frameworks */, - 278C58DF136B645C00836530 /* Kerberos.framework in Frameworks */, - 278C58F6136B652300836530 /* Security.framework in Frameworks */, - 278C58E1136B645C00836530 /* SystemConfiguration.framework in Frameworks */, - 278C58D9136B645C00836530 /* libcups_static.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1596,13 +1477,13 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 72220F4D133306BB00FCA411 /* CoreFoundation.framework in Frameworks */, - 72220F56133308EA00FCA411 /* Kerberos.framework in Frameworks */, - 72220F4F133306BB00FCA411 /* Security.framework in Frameworks */, - 72220F50133306BB00FCA411 /* SystemConfiguration.framework in Frameworks */, - 72220F52133308C100FCA411 /* libiconv.dylib in Frameworks */, - 72220F54133308CB00FCA411 /* libresolv.dylib in Frameworks */, - 72220F4E133306BB00FCA411 /* libz.dylib in Frameworks */, + 728FB7F11536167A005426E1 /* libiconv.dylib in Frameworks */, + 728FB7F21536167A005426E1 /* libresolv.dylib in Frameworks */, + 728FB7ED1536161C005426E1 /* libz.dylib in Frameworks */, + 728FB7E91536161C005426E1 /* CoreFoundation.framework in Frameworks */, + 728FB7EA1536161C005426E1 /* Kerberos.framework in Frameworks */, + 728FB7EB1536161C005426E1 /* Security.framework in Frameworks */, + 728FB7EE15361642005426E1 /* SystemConfiguration.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1610,19 +1491,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 72220F6813330A8500FCA411 /* ApplicationServices.framework in Frameworks */, - 7263EE3613330E4E00BA4D44 /* CoreFoundation.framework in Frameworks */, - 7263EE3013330DC100BA4D44 /* IOKit.framework in Frameworks */, - 7263EE2C13330D5C00BA4D44 /* Kerberos.framework in Frameworks */, - 7263EE2D13330D5C00BA4D44 /* Security.framework in Frameworks */, - 7263EE2E13330D5C00BA4D44 /* SystemConfiguration.framework in Frameworks */, 72220F6613330A7000FCA411 /* libcups.dylib in Frameworks */, 72220FBF13330C1000FCA411 /* libcupsmime.dylib in Frameworks */, - 7263EE3A13330EC500BA4D44 /* libldap.dylib in Frameworks */, - 7263EE2713330D2800BA4D44 /* libpam.dylib in Frameworks */, - 7263EE3213330E1E00BA4D44 /* libpthread.dylib in Frameworks */, - 7263EE3413330E3C00BA4D44 /* libresolv.dylib in Frameworks */, - 7263EE3813330E7500BA4D44 /* libz.dylib in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1670,8 +1540,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 724379C91333FFF3009631B9 /* CoreFoundation.framework in Frameworks */, - 724379681333FF3B009631B9 /* IOKit.framework in Frameworks */, 724379661333FF3B009631B9 /* libcups.dylib in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -1689,14 +1557,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 726AD70E135E8B5E002C930D /* libiconv.dylib in Frameworks */, - 726AD707135E8B11002C930D /* libcups_static.a in Frameworks */, - 726AD708135E8B11002C930D /* CoreFoundation.framework in Frameworks */, - 726AD709135E8B11002C930D /* Kerberos.framework in Frameworks */, - 726AD70A135E8B11002C930D /* libresolv.dylib in Frameworks */, - 726AD70B135E8B11002C930D /* libz.dylib in Frameworks */, - 726AD70C135E8B11002C930D /* Security.framework in Frameworks */, - 726AD70D135E8B11002C930D /* SystemConfiguration.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1733,7 +1593,6 @@ 274FF5D513332C2C00317ECB /* daemon */ = { isa = PBXGroup; children = ( - 274FF66F13333ACF00317ECB /* cups-polld.c */, 274FF6351333344400317ECB /* cups-deviced.c */, 274FF5D613332CC700317ECB /* cups-driverd.cxx */, 274FF6491333398D00317ECB /* cups-exec.c */, @@ -1814,7 +1673,6 @@ 274FF6291333333600317ECB /* cups-deviced */, 274FF63E1333358B00317ECB /* cups-exec */, 274FF64F133339C400317ECB /* cups-lpd */, - 274FF66313333A9B00317ECB /* cups-polld */, 274FF67813333B2F00317ECB /* cupsfilter */, 273BF6BD1333B5000022CAAB /* testcups */, 724378FD1333E43E009631B9 /* ipp */, @@ -1946,6 +1804,8 @@ children = ( 72220F6913330B0C00FCA411 /* auth.c */, 72220F6A13330B0C00FCA411 /* auth.h */, + 728FB7DE153600FA005426E1 /* avahi.c */, + 728FB7DF153600FA005426E1 /* avahi.h */, 72220F6B13330B0C00FCA411 /* banners.c */, 72220F6C13330B0C00FCA411 /* banners.h */, 72220F6D13330B0C00FCA411 /* cert.c */, @@ -1983,6 +1843,10 @@ 72220F8D13330B0C00FCA411 /* subscriptions.h */, 72220F8E13330B0C00FCA411 /* sysman.c */, 72220F8F13330B0C00FCA411 /* sysman.h */, + 728FB7E3153600FA005426E1 /* tls.c */, + 728FB7E0153600FA005426E1 /* tls-darwin.c */, + 728FB7E1153600FA005426E1 /* tls-gnutls.c */, + 728FB7E2153600FA005426E1 /* tls-openssl.c */, ); name = cupsd; path = .; @@ -2001,45 +1865,14 @@ 72220FB113330B4A00FCA411 /* Frameworks */ = { isa = PBXGroup; children = ( - 278C58F4136B652300836530 /* Security.framework */, 278C58E5136B64AF00836530 /* CoreFoundation.framework */, 278C58E6136B64B000836530 /* Kerberos.framework */, 278C58E7136B64B000836530 /* Security.framework */, 278C58E8136B64B000836530 /* SystemConfiguration.framework */, - 278C58DA136B645C00836530 /* CoreFoundation.framework */, - 278C58DB136B645C00836530 /* Kerberos.framework */, - 278C58DD136B645C00836530 /* SystemConfiguration.framework */, - 72220FAC13330B2200FCA411 /* libcupsmime.dylib */, 72220EAE1333047D00FCA411 /* libcups.dylib */, 72F75A611336F9A3004BB496 /* libcupsimage.dylib */, + 72220FAC13330B2200FCA411 /* libcupsmime.dylib */, 274FF5EE133330C800317ECB /* libcupsppdc.dylib */, - 724379C81333FFF3009631B9 /* CoreFoundation.framework */, - 724379671333FF3B009631B9 /* IOKit.framework */, - 273BF6D51333B5F60022CAAB /* libresolv.dylib */, - 273BF6D61333B5F60022CAAB /* SystemConfiguration.framework */, - 273BF6D11333B5C30022CAAB /* Kerberos.framework */, - 273BF6D21333B5C30022CAAB /* Security.framework */, - 273BF6CB1333B5950022CAAB /* CoreFoundation.framework */, - 273BF6CC1333B5950022CAAB /* libiconv.dylib */, - 273BF6CD1333B5950022CAAB /* libz.dylib */, - 7263EE3913330EC500BA4D44 /* libldap.dylib */, - 7263EE3713330E7500BA4D44 /* libz.dylib */, - 7263EE3513330E4E00BA4D44 /* CoreFoundation.framework */, - 7263EE3313330E3C00BA4D44 /* libresolv.dylib */, - 7263EE3113330E1E00BA4D44 /* libpthread.dylib */, - 7263EE2F13330DC100BA4D44 /* IOKit.framework */, - 7263EE2913330D5C00BA4D44 /* Kerberos.framework */, - 7263EE2A13330D5C00BA4D44 /* Security.framework */, - 7263EE2B13330D5C00BA4D44 /* SystemConfiguration.framework */, - 7263EE2613330D2800BA4D44 /* libpam.dylib */, - 72220F6713330A8500FCA411 /* ApplicationServices.framework */, - 72220F49133306BB00FCA411 /* CoreFoundation.framework */, - 72220F55133308EA00FCA411 /* Kerberos.framework */, - 72220F4B133306BB00FCA411 /* Security.framework */, - 72220F4C133306BB00FCA411 /* SystemConfiguration.framework */, - 72220F51133308C100FCA411 /* libiconv.dylib */, - 72220F53133308CB00FCA411 /* libresolv.dylib */, - 72220F4A133306BB00FCA411 /* libz.dylib */, ); name = Frameworks; sourceTree = ""; @@ -2082,7 +1915,9 @@ 72BF96351333042100B1EAD7 = { isa = PBXGroup; children = ( - 72F75A4C1336F31B004BB496 /* libcups_static.a */, + 728FB7EF1536167A005426E1 /* libiconv.dylib */, + 728FB7F01536167A005426E1 /* libresolv.dylib */, + 728FB7EC1536161C005426E1 /* libz.dylib */, 72220FB113330B4A00FCA411 /* Frameworks */, 72220F45133305D000FCA411 /* Public Headers */, 72220F461333060C00FCA411 /* Private Headers */, @@ -2337,24 +2172,6 @@ productReference = 274FF64F133339C400317ECB /* cups-lpd */; productType = "com.apple.product-type.tool"; }; - 274FF66213333A9B00317ECB /* cups-polld */ = { - isa = PBXNativeTarget; - buildConfigurationList = 274FF66913333A9B00317ECB /* Build configuration list for PBXNativeTarget "cups-polld" */; - buildPhases = ( - 274FF65F13333A9B00317ECB /* Sources */, - 274FF66013333A9B00317ECB /* Frameworks */, - 274FF66113333A9B00317ECB /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - 274FF66D13333AAD00317ECB /* PBXTargetDependency */, - ); - name = "cups-polld"; - productName = "cups-polld"; - productReference = 274FF66313333A9B00317ECB /* cups-polld */; - productType = "com.apple.product-type.tool"; - }; 274FF67713333B2F00317ECB /* cupsfilter */ = { isa = PBXNativeTarget; buildConfigurationList = 274FF67E13333B2F00317ECB /* Build configuration list for PBXNativeTarget "cupsfilter" */; @@ -2829,7 +2646,6 @@ 274FF6281333333600317ECB /* cups-deviced */, 274FF63D1333358B00317ECB /* cups-exec */, 274FF64E133339C400317ECB /* cups-lpd */, - 274FF66213333A9B00317ECB /* cups-polld */, 274FF67713333B2F00317ECB /* cupsfilter */, 72F75A511336F950004BB496 /* cupstestppd */, 724379461333FEA9009631B9 /* dnssd */, @@ -2930,14 +2746,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 274FF65F13333A9B00317ECB /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 274FF67013333ACF00317ECB /* cups-polld.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 274FF67413333B2F00317ECB /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -3161,6 +2969,8 @@ 72220FA613330B0C00FCA411 /* subscriptions.c in Sources */, 72220FA713330B0C00FCA411 /* sysman.c in Sources */, 72C16CB9137B195D007E4BF4 /* file.c in Sources */, + 728FB7E4153600FA005426E1 /* avahi.c in Sources */, + 728FB7E8153600FA005426E1 /* tls.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3351,16 +3161,6 @@ target = 274FF64E133339C400317ECB /* cups-lpd */; targetProxy = 274FF65D13333A3400317ECB /* PBXContainerItemProxy */; }; - 274FF66D13333AAD00317ECB /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 72220EAD1333047D00FCA411 /* libcups */; - targetProxy = 274FF66C13333AAD00317ECB /* PBXContainerItemProxy */; - }; - 274FF67213333AE400317ECB /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 274FF66213333A9B00317ECB /* cups-polld */; - targetProxy = 274FF67113333AE400317ECB /* PBXContainerItemProxy */; - }; 274FF68213333B3C00317ECB /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 72220EAD1333047D00FCA411 /* libcups */; @@ -3761,22 +3561,6 @@ }; name = Release; }; - 274FF66A13333A9B00317ECB /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - INSTALL_PATH = /usr/libexec/cups/daemon; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 274FF66B13333A9B00317ECB /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - INSTALL_PATH = /usr/libexec/cups/daemon; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; 274FF67F13333B2F00317ECB /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -4314,15 +4098,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 274FF66913333A9B00317ECB /* Build configuration list for PBXNativeTarget "cups-polld" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 274FF66A13333A9B00317ECB /* Debug */, - 274FF66B13333A9B00317ECB /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; 274FF67E13333B2F00317ECB /* Build configuration list for PBXNativeTarget "cupsfilter" */ = { isa = XCConfigurationList; buildConfigurations = ( -- 2.39.2
        Figure 1: Back side images