Comparar commits

...

34 Commits

Autor SHA1 Mensagem Data
Michael Sweet b60086f8ae Import CUPS v1.7.5 2016-03-15 10:37:32 -04:00
Michael Sweet 215ef63830 Import CUPS v1.7.4 2016-03-15 10:37:23 -04:00
Michael Sweet a51f28ec99 Import CUPS v1.7.3 2016-03-15 10:37:18 -04:00
Michael Sweet 71f63681cb Import CUPS v1.7.2 2016-03-15 10:37:10 -04:00
Michael Sweet 61515785f7 Import CUPS v1.7.1 2016-03-15 10:36:17 -04:00
msweet 75efa1051d Changelog.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11429 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-12 14:11:40 +00:00
msweet f9d9f12690 Mirror fix of typo.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11424 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-08 19:51:01 +00:00
msweet 7416dfe99a Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11422 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-08 19:44:10 +00:00
msweet dd0eea8e71 Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11418 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-08 15:18:01 +00:00
msweet 0c229544f4 More changelog.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11402 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-06 21:38:09 +00:00
msweet b3533f112d Mirror changes from trunk + changelog.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11399 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-06 21:36:35 +00:00
msweet 3b2526b366 These files too.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11397 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-06 20:09:46 +00:00
msweet ba38d7d9dc Make sure to substitute keywords.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11396 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-06 20:09:03 +00:00
msweet 4bdbabf76b Fix "make check" on Linux (<rdar://problem/14292998>)
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11395 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-06 20:06:50 +00:00
msweet 64e918f26a Ignore generated files.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11394 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-06 16:04:55 +00:00
msweet 111ff13a26 Fix compiler warnings when building with newer versions of GNU TLS - code now
requires GNU TLS 2.0 or higher.


git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11392 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-06 01:29:56 +00:00
msweet f4515965b3 Mirror changes from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11383 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-05 02:24:05 +00:00
msweet c7233aabe5 Mirror changes from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11380 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-05 01:14:53 +00:00
msweet 8eabd901fe <rdar://problem/15386424> cups.org: gunzip bug prevents use of some gzip'd PPD files (and other issues)
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11374 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-04 23:49:10 +00:00
msweet 1d708564b3 Mirror fix.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11372 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-11-01 18:22:37 +00:00
msweet e5d9b5e191 Mirror changes from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11370 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-10-30 15:08:29 +00:00
msweet 00c4573088 Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11367 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-10-28 15:35:57 +00:00
msweet 27efcd61e0 Add Italian localizations to packaging file.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11359 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-10-24 03:04:17 +00:00
msweet 06cefec35c Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11356 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-10-23 20:33:21 +00:00
msweet c2def0ced7 Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11353 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-10-23 19:53:08 +00:00
msweet e9152ac713 Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11345 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-10-18 21:14:52 +00:00
msweet 3d3f64a982 Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11319 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-09-27 16:18:26 +00:00
msweet 4ecc320364 Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11311 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-09-27 14:23:42 +00:00
msweet 60c3ee0499 Mirror fix from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11308 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-09-27 14:09:25 +00:00
msweet 305331a392 Don't use "rfo" for CUPS queues (mirror previous bug fix for mDNSResponder).
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11269 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-09-04 20:05:00 +00:00
msweet 40e88e9009 Update Japanese localization.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11265 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-08-29 20:11:25 +00:00
msweet 5f19ab52fe Mirror changes from trunk.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11240 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-08-14 20:33:55 +00:00
msweet 4a842d5397 Point source distributions to 1.7 branch.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11226 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-08-06 17:23:54 +00:00
msweet 75ff7c7fea Branch trunk for CUPS 1.7.x.
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/branches/branch-1.7@11224 a1ca3aef-8c08-0410-bb20-df032aa958be
2013-08-06 17:05:52 +00:00
597 arquivos alterados com 33889 adições e 6246 exclusões
+2
Ver Arquivo
@@ -3,6 +3,8 @@ CHANGES-1.6.txt
CHANGES IN CUPS V1.6.4
- Removed some duplicate size definitions for some ISO sizes that were
causing problems (<rdar://problem/14722721>)
- The IPP backend did not add the "last-document" attribute
(<rdar://problem/114660379>)
- Added a SyncOnClose directive to cups-files.conf to force cupsd to
+6 -1
Ver Arquivo
@@ -1,9 +1,14 @@
CHANGES-IPPTOOL.txt - 2013-07-15
CHANGES-IPPTOOL.txt - 2014-03-28
--------------------------------
This file provides a list of changes to the ipptool binary distribution posted
on cups.org.
2014-03-28
- Fixed SSL support on Windows (STR #4358)
2013-07-15
- New ippfind tool now included with ipptool.
+160 -1
Ver Arquivo
@@ -1,8 +1,167 @@
CHANGES.txt - 1.7.0 - 2013-08-01
CHANGES.txt - 1.7.5 - 2014-07-30
--------------------------------
CHANGES IN CUPS V1.7.5
- Security: Addressed some more situations where symlinked files would
be served by the web interface (STR #4455)
- The LPD backend did not work with some versions of glibc (STR #4452)
- CGI scripts did not work (STR #4454)
- The cupsd.conf man page did not list the ErrorPolicy directive
(STR #4457)
- Updated the Brazilian Portuguese translation (STR #4456)
CHANGES IN CUPS V1.7.4
- Security: The web interface incorrectly served symlinked files and
files that were not world-readable, potentially leading to a
disclosure of information (STR #4450)
- The CUPS headers incorrectly needed libdispatch for blocks support
(STR #4397)
- CUPS did not compile when Avahi or mDNSResponder was not present
(STR #4402, STR #4424)
- The "snmp" option did not work with the network backends (STR #4422)
- The User directive in client.conf did not override the USER
environment variable (STR #4426)
- The web interface now properly shows a "Go" button for all text-based
browsers (STR #4425)
- The MaxJobTime directive now properly supports time values (STR #4434)
- The RPM spec file did not work due to the new Brazilian Portuguese
localization (STR #4436)
- Fixed an "IPP read error" issue (STR #4440)
- Fixed the --disable-libusb configure option (STR #4439)
- Fixed the debug output from the DNS-SD backend when using Avahi
(STR #4444)
- Fixed a bug in the CUPS_SC_GET_DEVICE_ID handling by the network
backends (STR #4447)
- Added USB quirk rule for Lexmark E230 (STR #4448)
CHANGES IN CUPS V1.7.3
- Added Brazilian Portuguese translation (STR #4409)
- Fixed mapping of OutputBin values such as "Tray1"
(<rdar://problem/16685606>)
- Several ippGet* functions incorrectly returned -1 instead of 0 on
error.
- The cupsGetResponse function did not work properly with
CUPS_HTTP_DEFAULT (<rdar://problem/16762593>)
- The IPP backend did not abort a job when the printer did not validate
the supplied options (<rdar://problem/16836752>)
- Fixed an authentication race condition in cupsSendRequest (STR #4403)
- The scheduler did not add the "job-hold-until-specified" reason when
holding a job using the lp command (STR #4405)
- The configure script incorrectly added libgcrypt as a GNU TLS
dependency (STR #4399)
- cupsGetDestMediaCount did not work for CUPS_MEDIA_FLAGS DEFAULT
(STR #4414)
- Auto-typing of PWG Raster files did not work (STR #4417)
- IPP queues using hardcoded credentials would ask for credentials
(STR #4371)
- Dates in non-UTF-8 locales did not display correctly (STR #4388)
- The RPM spec file now looks for libusb-devel 1.0 or later.
- Fixed the "create-printer-subscription.test" file for IPPTOOL
(STR #4420)
CHANGES IN CUPS V1.7.2
- Security: The scheduler now blocks URLs containing embedded HTML
(STR #4356)
- Documentation fixes (STR #3259, STR #4346, STR #4355)
- Fixed the Japanese localization (STR #4385)
- Added a German localization (STR #4363)
- The cupsfilter command incorrectly read the cupsd.conf file; it now
reads the cups-files.conf file instead.
- Fixed OS X builds with Xcode 5.x (<rdar://problem/15914959>)
- Fixed SSL support on Windows (STR #4358)
- Fixed documentation and naming of Create-Job/Printer-Subscriptions
operations (STR #4389)
- Phone numbers in fax jobs were not properly filtered for IPP FaxOut
(<rdar://problem/16351701>)
- Fixed a memory leak in the label printer driver (STR #4393)
- Updated Linux "relro" support (STR #4349)
- cupsEnumDests did not set the "is_default" field (STR #4332)
- cupsDoIORequest could miss the server status, causing failed lpadmin
and other administrative commands (STR #4386)
- cupsEnumDests didn't always call the callback function (STR #4380)
- "lp -i job-id -H hold" did not work (STR #4401)
- CUPS didn't compile on older platforms (STR #4338)
- Several libcups files did not have the Apple license exception
notice (STR #4361)
- Fixed a D-BUS threading issue that caused the scheduler to crash
(STR #4347)
- The scheduler now automatically reconnects to Avahi as needed
(STR #4370, STR #4373)
- The scheduler did not handle GET requests for the log files properly
(STR #3265)
- The dnssd backend did not always report all discovered printers using
Avahi (STR #4365)
- The Zebra printer driver did not properly handle negative "label top"
values (STR #4354)
- The scheduler did not always update the MakeModel value in
printers.conf after updating the driver (STR #4264)
- The LPD mini daemon did not support print jobs larger than 2GB
(STR #4351)
- Fixed a bug in the status reading code when sending a compressed data
stream to an IPP printer/server (<rdar://problem/16019623>)
- The IPP backend might not include all job attributes in Validate-Job
operations (<rdar://problem/16025435>)
- Fixed some clang-reported issues (<rdar://problem/15936066>)
CHANGES IN CUPS V1.7.1
- Security: the lppasswd program incorrectly used settings from
~/.cups/client.conf (STR #4319)
- Auto debug logging was broken in 1.7.0 (<rdar://problem/15331639>)
- Some gzip'd PPD files could not be used (<rdar://problem/15386424>)
- Cleaned up some job logging in the scheduler
(<rdar://problem/15332672>)
- ATTR messages could cause string pool memory corruption in the
scheduler (<rdar://problem/15382819>)
- The RPM spec file did not list the build requirements; this was on
purpose, but now we are listing the Red Hat package names
(<rdar://problem/15375760>, STR #4322)
- Printing to a raw queue could result in corrupt output due to
opportunistic compression (<rdar://problem/15008524>)
- The GNU TLS support code triggered many compiler warnings due to the
use of old GNU TLS compatibility type names
(<rdar://problem/15392966>)
- The "make check" test suite did not work on Linux without the
cups-filters package installed (<rdar://problem/14292998>)
- Japanese PPDs using with the Shift-JIS encoding did not work
(<rdar://problem/15427759>)
- "tel:" URIs incorrectly had slashes (<rdar://problem/15418463>)
- The libusb-based USB backend incorrectly used write timeouts
(<rdar://problem/15564888>)
- Shared printers could become inaccessible after a few days on OS X
(<rdar://problem/15426838>)
- The IPP backend did not wait for a busy printer to become available
before attempting to print (<rdar://problem/15465667>)
- CUPS did not support "auto-monochrome" or "process-monochrome" for the
"print-color-mode" option (<rdar://problem/15482520>)
- Using "@IF(name)" in an Allow or Deny rule did not work (STR #4328)
- lpq and lpstat did not list jobs in the correct order when priorities
were specified (STR #4326)
- The D-BUS notifier did not remove its lockfile (STR #4314)
- CUPS incorrectly used the USER environment variable when the name did
not match the user ID (STR #4327)
CHANGES IN CUPS V1.7.0
- Updated Japanese localization.
- The lpadmin command did not send the PPD name from the "-m" option
(<rdar://problem/15264697>)
- Network backends now use the prtMarkerSuppliesClass property to
determine the direction of supply level values
(<rdar://problem/14302628>)
- The scheduler did not remove backup PPD files when a printer was
deleted (<rdar://problem/15065555>)
- The scheduler incorrectly responded to HEAD requests when the web
interface was disabled (<rdar://problem/15090332>)
- The scheduler did not respond using the hostname specified by the
client (<rdar://problem/14583574>)
- Fax queues did not work when shared via Bonjour
+1 -1
Ver Arquivo
@@ -1,4 +1,4 @@
INSTALL - CUPS v1.7.0 - 2013-07-16
INSTALL - CUPS v1.7.5 - 2014-07-30
----------------------------------
This file describes how to compile and install CUPS from source code. For more
+2 -2
Ver Arquivo
@@ -1,4 +1,4 @@
IPPTOOL.txt - 2013-07-15
IPPTOOL.txt - 2014-04-10
------------------------
See the file CHANGES-IPPTOOL.txt for a list of changes to this software.
@@ -220,7 +220,7 @@ REPORTING BUGS
LEGAL STUFF
CUPS is Copyright 2007-2013 by Apple Inc. CUPS and the CUPS logo are
CUPS is Copyright 2007-2014 by Apple Inc. CUPS and the CUPS logo are
trademarks of Apple Inc.
The MD5 Digest code is Copyright 1999 Aladdin Enterprises.
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: Makedefs.in 11154 2013-07-17 15:21:18Z msweet $"
#
# Common makefile definitions for CUPS.
#
@@ -261,5 +261,5 @@ DBUSDIR = @DBUSDIR@
#
# End of "$Id$"
# End of "$Id: Makedefs.in 11154 2013-07-17 15:21:18Z msweet $"
#
+27 -4
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: Makefile 11370 2013-10-30 15:08:29Z msweet $"
#
# Top-level Makefile for CUPS.
#
@@ -128,8 +128,11 @@ depend:
#
# Run the clang.llvm.org static code analysis tool on the C sources.
# (at least checker-231 is required for scan-build to work this way)
# Run the Clang static code analysis tool on the sources, available here:
#
# http://clang-analyzer.llvm.org
#
# At least checker-231 is required.
#
.PHONY: clang clang-changes
@@ -140,6 +143,26 @@ clang-changes:
scan-build -V -k -o `pwd`/clang $(MAKE) $(MFLAGS) all
#
# Run the STACK tool on the sources, available here:
#
# http://css.csail.mit.edu/stack/
#
# Do the following to pass options to configure:
#
# make CONFIGFLAGS="--foo --bar" stack
#
.PHONY: stack
stack:
stack-build ./configure $(CONFIGFLAGS)
stack-build $(MAKE) $(MFLAGS) clean all
poptck
$(MAKE) $(MFLAGS) distclean
$(RM) */*.ll
$(RM) */*.ll.out
#
# Generate a ctags file...
#
@@ -329,5 +352,5 @@ dist: all
#
# End of "$Id$".
# End of "$Id: Makefile 11370 2013-10-30 15:08:29Z msweet $".
#
+2 -2
Ver Arquivo
@@ -1,4 +1,4 @@
README - CUPS v1.7.0 - 2013-07-16
README - CUPS v1.7.5 - 2014-07-30
---------------------------------
Looking for compile instructions? Read the file "INSTALL.txt" instead...
@@ -149,7 +149,7 @@ PRINTING FILES
LEGAL STUFF
CUPS is Copyright 2007-2013 by Apple Inc. CUPS and the CUPS logo are
CUPS is Copyright 2007-2014 by Apple Inc. CUPS and the CUPS logo are
trademarks of Apple Inc.
The MD5 Digest code is Copyright 1999 Aladdin Enterprises.
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: Makefile 11154 2013-07-17 15:21:18Z msweet $"
#
# Backend makefile for CUPS.
#
@@ -301,5 +301,5 @@ include Dependencies
#
# End of "$Id$".
# End of "$Id: Makefile 11154 2013-07-17 15:21:18Z msweet $".
#
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: backend-private.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Backend support definitions for CUPS.
*
@@ -334,5 +334,5 @@ extern int backendWaitLoop(int snmp_fd, http_addr_t *addr,
/*
* End of "$Id$".
* End of "$Id: backend-private.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+25 -29
Ver Arquivo
@@ -1,33 +1,17 @@
/*
* "$Id$"
* "$Id: dnssd.c 11971 2014-07-01 14:38:29Z msweet $"
*
* DNS-SD discovery backend for CUPS.
* DNS-SD discovery backend for CUPS.
*
* Copyright 2008-2012 by Apple Inc.
* Copyright 2008-2014 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"
* "LICENSE" which should have been included with this file. If this
* file is missing or damaged, see the license at "http://www.cups.org/".
* 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"
* "LICENSE" which should have been included with this file. If this
* file is missing or damaged, see the license at "http://www.cups.org/".
*
* This file is subject to the Apple OS-Developed Software exception.
*
* Contents:
*
* main() - Browse for printers.
* browse_callback() - Browse devices.
* browse_local_callback() - Browse local devices.
* 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.
* This file is subject to the Apple OS-Developed Software exception.
*/
/*
@@ -95,6 +79,7 @@ static int job_canceled = 0;
static AvahiSimplePoll *simple_poll = NULL;
/* Poll information */
static int got_data = 0; /* Got data from poll? */
static int browsers = 0; /* Number of running browsers */
#endif /* HAVE_AVAHI */
@@ -345,6 +330,7 @@ main(int argc, /* I - Number of command-line args */
return (1);
}
browsers = 6;
avahi_service_browser_new(client, AVAHI_IF_UNSPEC,
AVAHI_PROTO_UNSPEC,
"_fax-ipp._tcp", NULL, 0,
@@ -558,7 +544,11 @@ main(int argc, /* I - Number of command-line args */
fprintf(stderr, "DEBUG: sent=%d, count=%d\n", sent, count);
#ifdef HAVE_AVAHI
if (sent == cupsArrayCount(devices) && browsers == 0)
#else
if (sent == cupsArrayCount(devices))
#endif /* HAVE_AVAHI */
break;
}
}
@@ -710,9 +700,12 @@ browse_callback(
break;
case AVAHI_BROWSER_REMOVE:
case AVAHI_BROWSER_ALL_FOR_NOW:
case AVAHI_BROWSER_CACHE_EXHAUSTED:
break;
case AVAHI_BROWSER_ALL_FOR_NOW:
browsers--;
break;
}
}
@@ -915,8 +908,11 @@ get_device(cups_array_t *devices, /* I - Device array */
* Yes, add the device...
*/
fprintf(stderr, "DEBUG: Found \"%s.%s%s\"...\n", serviceName, regtype,
replyDomain);
#ifdef HAVE_DNSSD
fprintf(stderr, "DEBUG: Found \"%s.%s%s\"...\n", serviceName, regtype, replyDomain);
#else /* HAVE_AVAHI */
fprintf(stderr, "DEBUG: Found \"%s.%s.%s\"...\n", serviceName, regtype, replyDomain);
#endif /* HAVE_DNSSD */
device = calloc(sizeof(cups_device_t), 1);
device->name = strdup(serviceName);
@@ -1320,5 +1316,5 @@ unquote(char *dst, /* I - Destination buffer */
/*
* End of "$Id$".
* End of "$Id: dnssd.c 11971 2014-07-01 14:38:29Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: ieee1284.c 10996 2013-05-29 11:51:34Z msweet $"
*
* IEEE-1284 support functions for CUPS.
*
@@ -487,5 +487,5 @@ backendGetMakeModel(
/*
* End of "$Id$".
* End of "$Id: ieee1284.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+103 -73
Ver Arquivo
@@ -1,36 +1,18 @@
/*
* "$Id$"
* "$Id: ipp.c 11909 2014-06-09 18:58:16Z msweet $"
*
* IPP backend for CUPS.
* IPP backend for CUPS.
*
* Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
* Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* 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"
* "LICENSE" which should have been included with this file. If this
* file is missing or damaged, see the license at "http://www.cups.org/".
* 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"
* "LICENSE" which should have been included with this file. If this
* file is missing or damaged, see the license at "http://www.cups.org/".
*
* This file is subject to the Apple OS-Developed Software exception.
*
* Contents:
*
* main() - Send a file to the printer or server.
* cancel_job() - Cancel a print job.
* check_printer_state() - Check the printer state.
* monitor_printer() - Monitor the printer state.
* new_request() - Create a new print creation or validation
* request.
* password_cb() - Disable the password prompt for
* cupsDoFileRequest().
* quote_string() - Quote a string value.
* report_attr() - Report an IPP attribute value.
* report_printer_state() - Report the printer state.
* run_as_user() - Run the IPP backend as the printing user.
* sigterm_handler() - Handle 'terminate' signals that stop the backend.
* timeout_cb() - Handle HTTP timeouts.
* update_reasons() - Update the printer-state-reasons values.
* This file is subject to the Apple OS-Developed Software exception.
*/
/*
@@ -109,8 +91,10 @@ static const char * const jattrs[] = /* Job attributes we want */
"job-state",
"job-state-reasons"
};
static int job_canceled = 0;
static int job_canceled = 0,
/* Job cancelled? */
uri_credentials = 0;
/* Credentials supplied in URI? */
static char username[256] = "",
/* Username for device URI */
*password = NULL;
@@ -133,6 +117,7 @@ static const char * const pattrs[] = /* Printer attributes we want */
"media-col-supported",
"multiple-document-handling-supported",
"operations-supported",
"print-color-mode-supported",
"printer-alert",
"printer-alert-description",
"printer-is-accepting-jobs",
@@ -180,7 +165,7 @@ static ipp_t *new_request(ipp_op_t op, int version, const char *uri,
ppd_file_t *ppd,
ipp_attribute_t *media_col_sup,
ipp_attribute_t *doc_handling_sup,
int print_color_mode);
ipp_attribute_t *print_color_mode_sup);
static const char *password_cb(const char *prompt, http_t *http,
const char *method, const char *resource,
int *user_data);
@@ -267,12 +252,12 @@ main(int argc, /* I - Number of command-line args */
ipp_attribute_t *doc_handling_sup; /* multiple-document-handling-supported */
ipp_attribute_t *printer_state; /* printer-state attribute */
ipp_attribute_t *printer_accepting; /* printer-is-accepting-jobs */
ipp_attribute_t *print_color_mode_sup;/* Does printer support print-color-mode? */
int create_job = 0, /* Does printer support Create-Job? */
get_job_attrs = 0, /* Does printer support Get-Job-Attributes? */
send_document = 0, /* Does printer support Send-Document? */
validate_job = 0, /* Does printer support Validate-Job? */
print_color_mode = 0; /* Does printer support print-color-mode? */
int copies, /* Number of copies for job */
copies, /* Number of copies for job */
copies_remaining; /* Number of copies remaining */
const char *content_type, /* CONTENT_TYPE environment variable */
*final_content_type, /* FINAL_CONTENT_TYPE environment var */
@@ -543,8 +528,8 @@ main(int argc, /* I - Number of command-line args */
*/
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
_cups_strcasecmp(value, "yes") ||
_cups_strcasecmp(value, "true");
!_cups_strcasecmp(value, "yes") ||
!_cups_strcasecmp(value, "true");
}
else if (!_cups_strcasecmp(name, "version"))
{
@@ -647,6 +632,7 @@ main(int argc, /* I - Number of command-line args */
*password++ = '\0';
cupsSetUser(username);
uri_credentials = 1;
}
else
{
@@ -1041,7 +1027,8 @@ main(int argc, /* I - Number of command-line args */
delay = _cupsNextDelay(delay, &prev_delay);
ippDelete(supported);
supported = NULL;
supported = NULL;
ipp_status = IPP_STATUS_ERROR_BUSY;
continue;
}
}
@@ -1117,9 +1104,7 @@ main(int argc, /* I - Number of command-line args */
media_col_sup->values[i].string.text);
}
print_color_mode = ippFindAttribute(supported,
"print-color-mode-supported",
IPP_TAG_KEYWORD) != NULL;
print_color_mode_sup = ippFindAttribute(supported, "print-color-mode-supported", IPP_TAG_KEYWORD);
if ((operations_sup = ippFindAttribute(supported, "operations-supported",
IPP_TAG_ENUM)) != NULL)
@@ -1401,7 +1386,7 @@ main(int argc, /* I - Number of command-line args */
request = new_request(IPP_VALIDATE_JOB, version, uri, argv[2],
monitor.job_name, num_options, options, compression,
copies_sup ? copies : 1, document_format, pc, ppd,
media_col_sup, doc_handling_sup, print_color_mode);
media_col_sup, doc_handling_sup, print_color_mode_sup);
response = cupsDoRequest(http, request, resource);
@@ -1428,6 +1413,7 @@ main(int argc, /* I - Number of command-line args */
sleep(10);
}
else if (ipp_status == IPP_STATUS_ERROR_DOCUMENT_FORMAT_NOT_SUPPORTED ||
ipp_status == IPP_STATUS_ERROR_ATTRIBUTES_OR_VALUES ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_INFO_NEEDED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_CLOSED ||
ipp_status == IPP_STATUS_ERROR_CUPS_ACCOUNT_LIMIT_REACHED ||
@@ -1487,7 +1473,7 @@ main(int argc, /* I - Number of command-line args */
version, uri, argv[2], monitor.job_name, num_options,
options, compression, copies_sup ? copies : 1,
document_format, pc, ppd, media_col_sup,
doc_handling_sup, print_color_mode);
doc_handling_sup, print_color_mode_sup);
/*
* Do the request...
@@ -2500,7 +2486,8 @@ new_request(
ppd_file_t *ppd, /* I - PPD file data */
ipp_attribute_t *media_col_sup, /* I - media-col-supported values */
ipp_attribute_t *doc_handling_sup, /* I - multiple-document-handling-supported values */
int print_color_mode) /* I - Printer supports print-color-mode */
ipp_attribute_t *print_color_mode_sup)
/* I - Printer supports print-color-mode */
{
int i; /* Looping var */
ipp_t *request; /* Request data */
@@ -2675,6 +2662,14 @@ new_request(
strlen(keyword));
break;
default :
if (!strcmp(mandatory, "print-color-mode") && !strcmp(keyword, "monochrome"))
{
if (ippContainsString(print_color_mode_sup, "auto-monochrome"))
keyword = "auto-monochrome";
else if (ippContainsString(print_color_mode_sup, "process-monochrome") && !ippContainsString(print_color_mode_sup, "monochrome"))
keyword = "process-monochrome";
}
ippAddString(request, IPP_TAG_JOB, value_tag, mandatory,
NULL, keyword);
break;
@@ -2749,21 +2744,31 @@ new_request(
ippAddString(request, IPP_TAG_JOB, IPP_TAG_KEYWORD, "output-bin",
NULL, keyword);
color_attr_name = print_color_mode ? "print-color-mode" : "output-mode";
color_attr_name = print_color_mode_sup ? "print-color-mode" : "output-mode";
if ((keyword = cupsGetOption("print-color-mode", num_options,
options)) != NULL)
options)) == NULL)
{
if ((choice = ppdFindMarkedChoice(ppd, "ColorModel")) != NULL)
{
if (!_cups_strcasecmp(choice->choice, "Gray"))
keyword = "monochrome";
else
keyword = "color";
}
}
if (keyword && !strcmp(keyword, "monochrome"))
{
if (ippContainsString(print_color_mode_sup, "auto-monochrome"))
keyword = "auto-monochrome";
else if (ippContainsString(print_color_mode_sup, "process-monochrome") && !ippContainsString(print_color_mode_sup, "monochrome"))
keyword = "process-monochrome";
}
if (keyword)
ippAddString(request, IPP_TAG_JOB, IPP_TAG_KEYWORD, color_attr_name,
NULL, keyword);
else if ((choice = ppdFindMarkedChoice(ppd, "ColorModel")) != NULL)
{
if (!_cups_strcasecmp(choice->choice, "Gray"))
ippAddString(request, IPP_TAG_JOB, IPP_TAG_KEYWORD,
color_attr_name, NULL, "monochrome");
else
ippAddString(request, IPP_TAG_JOB, IPP_TAG_KEYWORD,
color_attr_name, NULL, "color");
}
if ((keyword = cupsGetOption("print-quality", num_options,
options)) != NULL)
@@ -2876,19 +2881,39 @@ new_request(
if ((keyword = cupsGetOption("phone", num_options, options)) != NULL)
{
ipp_t *destination; /* destination collection */
char tel_uri[1024]; /* tel: URI */
char phone[1024], /* Phone number string */
*ptr, /* Pointer into string */
tel_uri[1024]; /* tel: URI */
static const char * const allowed = "0123456789#*-+.()";
/* Allowed characters */
destination = ippNew();
httpAssembleURI(HTTP_URI_CODING_ALL, tel_uri, sizeof(tel_uri), "tel",
NULL, NULL, 0, keyword);
ippAddString(destination, IPP_TAG_JOB, IPP_TAG_URI, "destination-uri",
NULL, tel_uri);
/*
* Unescape and filter out spaces and other characters that are not
* allowed in a tel: URI.
*/
_httpDecodeURI(phone, keyword, sizeof(phone));
for (ptr = phone; *ptr;)
{
if (!strchr(allowed, *ptr))
_cups_strcpy(ptr, ptr + 1);
else
ptr ++;
}
httpAssembleURI(HTTP_URI_CODING_ALL, tel_uri, sizeof(tel_uri), "tel", NULL, NULL, 0, phone);
ippAddString(destination, IPP_TAG_JOB, IPP_TAG_URI, "destination-uri", NULL, tel_uri);
if ((keyword = cupsGetOption("faxPrefix", num_options,
options)) != NULL && *keyword)
ippAddString(destination, IPP_TAG_JOB, IPP_TAG_TEXT,
"pre-dial-string", NULL, keyword);
{
char predial[1024]; /* Pre-dial string */
_httpDecodeURI(predial, keyword, sizeof(predial));
ippAddString(destination, IPP_TAG_JOB, IPP_TAG_TEXT, "pre-dial-string", NULL, predial);
}
ippAddCollection(request, IPP_TAG_JOB, "destination-uris", destination);
ippDelete(destination);
@@ -2964,26 +2989,31 @@ password_cb(const char *prompt, /* I - Prompt (not used) */
(void)method;
(void)resource;
/*
* Remember that we need to authenticate...
*/
auth_info_required = "username,password";
if (httpGetSubField(http, HTTP_FIELD_WWW_AUTHENTICATE, "username",
def_username))
if (!uri_credentials)
{
char quoted[HTTP_MAX_VALUE * 2 + 4];
/* Quoted string */
/*
* Remember that we need to authenticate...
*/
fprintf(stderr, "ATTR: auth-info-default=%s,\n",
quote_string(def_username, quoted, sizeof(quoted)));
auth_info_required = "username,password";
if (httpGetSubField(http, HTTP_FIELD_WWW_AUTHENTICATE, "username",
def_username))
{
char quoted[HTTP_MAX_VALUE * 2 + 4];
/* Quoted string */
fprintf(stderr, "ATTR: auth-info-default=%s,\n",
quote_string(def_username, quoted, sizeof(quoted)));
}
}
if (password && *password && *password_tries < 3)
{
(*password_tries) ++;
cupsSetUser(username);
return (password);
}
else
@@ -3026,7 +3056,7 @@ quote_string(const char *s, /* I - String */
{
if (*s == '\\' || *s == '\"' || *s == '\'')
{
if (q < (qend - 3))
if (qptr < (qend - 4))
{
*qptr++ = '\\';
*qptr++ = '\\';
@@ -3679,5 +3709,5 @@ update_reasons(ipp_attribute_t *attr, /* I - printer-state-reasons or NULL */
}
/*
* End of "$Id$".
* End of "$Id: ipp.c 11909 2014-06-09 18:58:16Z msweet $".
*/
+5 -5
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: lpd.c 12025 2014-07-15 13:00:17Z msweet $"
*
* Line Printer Daemon backend for CUPS.
*
@@ -393,8 +393,8 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
*/
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
_cups_strcasecmp(value, "yes") ||
_cups_strcasecmp(value, "true");
!_cups_strcasecmp(value, "yes") ||
!_cups_strcasecmp(value, "true");
}
else if (!_cups_strcasecmp(name, "timeout"))
{
@@ -1276,7 +1276,7 @@ rresvport_af(int *port, /* IO - Port number to bind to */
* Try binding the port to the socket; return if all is OK...
*/
if (!bind(fd, (struct sockaddr *)&addr, sizeof(addr)))
if (!bind(fd, (struct sockaddr *)&addr, httpAddrLength(&addr)))
return (fd);
/*
@@ -1331,5 +1331,5 @@ sigterm_handler(int sig) /* I - Signal */
/*
* End of "$Id$".
* End of "$Id: lpd.c 12025 2014-07-15 13:00:17Z msweet $".
*/
+8 -8
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: network.c 11971 2014-07-01 14:38:29Z msweet $"
*
* Common backend network APIs for CUPS.
*
@@ -268,6 +268,12 @@ backendNetworkSideCB(
datalen = 0;
break;
case CUPS_SC_CMD_GET_CONNECTED :
status = CUPS_SC_STATUS_OK;
data[0] = device_fd != -1;
datalen = 1;
break;
case CUPS_SC_CMD_GET_DEVICE_ID :
if (snmp_fd >= 0)
{
@@ -305,12 +311,6 @@ backendNetworkSideCB(
break;
}
case CUPS_SC_CMD_GET_CONNECTED :
status = CUPS_SC_STATUS_OK;
data[0] = device_fd != -1;
datalen = 1;
break;
default :
status = CUPS_SC_STATUS_NOT_IMPLEMENTED;
datalen = 0;
@@ -322,5 +322,5 @@ backendNetworkSideCB(
/*
* End of "$Id$".
* End of "$Id: network.c 11971 2014-07-01 14:38:29Z msweet $".
*/
+3
Ver Arquivo
@@ -212,3 +212,6 @@
# Lexmark E238 (<rdar://problem/14493054>)
0x043d 0x00d7 no-reattach
# Lexmark E238 (STR #4448)
0x043d 0x009a no-reattach
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: runloop.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Common run loop APIs for CUPS backends.
*
@@ -539,5 +539,5 @@ backendWaitLoop(
/*
* End of "$Id$".
* End of "$Id: runloop.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+36 -6
Ver Arquivo
@@ -1,9 +1,9 @@
/*
* "$Id$"
* "$Id: snmp-supplies.c 11319 2013-09-27 16:18:26Z msweet $"
*
* SNMP supplies functions for CUPS.
*
* Copyright 2008-2012 by Apple Inc.
* Copyright 2008-2013 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -62,6 +62,7 @@ typedef struct /**** Printer supply data ****/
char name[CUPS_SNMP_MAX_STRING], /* Name of supply */
color[8]; /* Color: "#RRGGBB" or "none" */
int colorant, /* Colorant index */
sclass, /* Supply class */
type, /* Supply type */
max_capacity, /* Maximum capacity */
level; /* Current level value */
@@ -148,6 +149,13 @@ static const int prtMarkerSuppliesMaxCapacity[] =
(sizeof(prtMarkerSuppliesMaxCapacity) /
sizeof(prtMarkerSuppliesMaxCapacity[0]));
/* Offset to supply index */
static const int prtMarkerSuppliesClass[] =
{ CUPS_OID_prtMarkerSuppliesClass, -1 },
/* Class OID */
prtMarkerSuppliesClassOffset =
(sizeof(prtMarkerSuppliesClass) /
sizeof(prtMarkerSuppliesClass[0]));
/* Offset to supply index */
static const int prtMarkerSuppliesType[] =
{ CUPS_OID_prtMarkerSuppliesType, -1 },
/* Type OID */
@@ -257,6 +265,9 @@ backendSNMPSupplies(
else
percent = 50;
if (supplies[i].sclass == CUPS_TC_receptacleThatIsFilled)
percent = 100 - percent;
if (percent <= 5)
{
switch (supplies[i].type)
@@ -561,14 +572,14 @@ backend_init_supplies(
/*
* Yes, read the cache file:
*
* 2 num_supplies charset
* 3 num_supplies charset
* device description
* supply structures...
*/
if (cupsFileGets(cachefile, value, sizeof(value)))
{
if (sscanf(value, "2 %d%d", &num_supplies, &charset) == 2 &&
if (sscanf(value, "3 %d%d", &num_supplies, &charset) == 2 &&
num_supplies <= CUPS_MAX_SUPPLIES &&
cupsFileGets(cachefile, value, sizeof(value)))
{
@@ -664,7 +675,7 @@ backend_init_supplies(
if ((cachefile = cupsFileOpen(cachefilename, "w")) != NULL)
{
cupsFilePrintf(cachefile, "2 %d %d\n", num_supplies, charset);
cupsFilePrintf(cachefile, "3 %d %d\n", num_supplies, charset);
cupsFilePrintf(cachefile, "%s\n", description);
if (num_supplies > 0)
@@ -969,6 +980,25 @@ backend_walk_cb(cups_snmp_t *packet, /* I - SNMP packet */
packet->object_value.integer > 0)
supplies[i - 1].max_capacity = packet->object_value.integer;
}
else if (_cupsSNMPIsOIDPrefixed(packet, prtMarkerSuppliesClass))
{
/*
* Get marker class...
*/
i = packet->object_name[prtMarkerSuppliesClassOffset];
if (i < 1 || i > CUPS_MAX_SUPPLIES ||
packet->object_type != CUPS_ASN1_INTEGER)
return;
fprintf(stderr, "DEBUG2: prtMarkerSuppliesClass.1.%d = %d\n", i,
packet->object_value.integer);
if (i > num_supplies)
num_supplies = i;
supplies[i - 1].sclass = packet->object_value.integer;
}
else if (_cupsSNMPIsOIDPrefixed(packet, prtMarkerSuppliesType))
{
/*
@@ -1073,5 +1103,5 @@ utf16_to_utf8(
/*
* End of "$Id$".
* End of "$Id: snmp-supplies.c 11319 2013-09-27 16:18:26Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: snmp.c 10996 2013-05-29 11:51:34Z msweet $"
*
* SNMP discovery backend for CUPS.
*
@@ -1391,5 +1391,5 @@ update_cache(snmp_cache_t *device, /* I - Device */
/*
* End of "$Id$".
* End of "$Id: snmp.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+4 -4
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: socket.c 11909 2014-06-09 18:58:16Z msweet $"
*
* AppSocket backend for CUPS.
*
@@ -250,8 +250,8 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
*/
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
_cups_strcasecmp(value, "yes") ||
_cups_strcasecmp(value, "true");
!_cups_strcasecmp(value, "yes") ||
!_cups_strcasecmp(value, "true");
}
else if (!_cups_strcasecmp(name, "contimeout"))
{
@@ -520,5 +520,5 @@ wait_bc(int device_fd, /* I - Socket */
/*
* End of "$Id$".
* End of "$Id: socket.c 11909 2014-06-09 18:58:16Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: test1284.c 10996 2013-05-29 11:51:34Z msweet $"
*
* IEEE-1284 support functions test program for CUPS.
*
@@ -80,5 +80,5 @@ main(int argc, /* I - Number of command-line args */
/*
* End of "$Id$".
* End of "$Id: test1284.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: testbackend.c 4297 2013-05-10 16:04:59Z msweet $"
*
* Backend test program for CUPS.
*
@@ -684,5 +684,5 @@ walk_cb(const char *oid, /* I - OID */
/*
* End of "$Id$".
* End of "$Id: testbackend.c 4297 2013-05-10 16:04:59Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: testsupplies.c 3247 2011-05-12 06:22:31Z msweet $"
*
* SNMP supplies test program for CUPS.
*
@@ -79,5 +79,5 @@ main(int argc, /* I - Number of command-line args */
/*
* End of "$Id$".
* End of "$Id: testsupplies.c 3247 2011-05-12 06:22:31Z msweet $".
*/
+43 -36
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* "$Id$"
* "$Id: usb-darwin.c 11670 2014-03-04 14:53:59Z msweet $"
*
* Copyright 2005-2013 Apple Inc. All rights reserved.
* Copyright 2005-2014 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
@@ -40,35 +40,6 @@
* AND WHETHER UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE),
* STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* Contents:
*
* list_devices() - List all USB devices.
* print_device() - Print a file to a USB device.
* read_thread() - Thread to read the backchannel data on.
* sidechannel_thread() - Handle side-channel requests.
* iterate_printers() - Iterate over all the printers.
* device_added() - Device added notifier.
* list_device_cb() - list_device iterator callback.
* find_device_cb() - print_device iterator callback.
* status_timer_cb() - Status timer callback.
* copy_deviceinfo() - Copy strings from the 1284 device ID.
* release_deviceinfo() - Release deviceinfo strings.
* load_classdriver() - Load a classdriver.
* unload_classdriver() - Unload a classdriver.
* load_printerdriver() - Load vendor's classdriver.
* registry_open() - Open a connection to the printer.
* registry_close() - Close the connection to the printer.
* copy_deviceid() - Copy the 1284 device id string.
* copy_devicestring() - Copy the 1284 device id string.
* copy_value_for_key() - Copy value string associated with a key.
* cfstr_create_trim() - Create CFString and trim whitespace characters.
* parse_options() - Parse URI options.
* sigterm_handler() - SIGTERM handler.
* next_line() - Find the next line in a buffer.
* parse_pserror() - Scan the backchannel data for postscript errors.
* soft_reset() - Send a soft reset to the device.
* get_device_id() - Return IEEE-1284 device ID.
*/
/*
@@ -97,7 +68,7 @@
#include <IOKit/usb/IOUSBLib.h>
#include <IOKit/IOCFPlugIn.h>
#include <libproc.h>
#include <asl.h>
#include <spawn.h>
#include <pthread.h>
@@ -309,6 +280,9 @@ static void release_deviceinfo(CFStringRef *make, CFStringRef *model, CFStringRe
static void setup_cfLanguage(void);
static void soft_reset(void);
static void status_timer_cb(CFRunLoopTimerRef timer, void *info);
static void log_usb_class_driver(int is_64bit);
#define IS_64BIT 1
#define IS_NOT_64BIT 0
#if defined(__i386__) || defined(__x86_64__)
static pid_t child_pid; /* Child PID */
@@ -477,6 +451,11 @@ print_device(const char *uri, /* I - Device URI */
return (CUPS_BACKEND_STOP);
}
#ifdef __x86_64__
if (status == noErr && driverBundlePath != NULL && CFStringCompare(driverBundlePath, kUSBGenericTOPrinterClassDriver, 0) != kCFCompareEqualTo)
log_usb_class_driver(IS_64BIT);
#endif /* __x86_64__ */
if (driverBundlePath)
CFRelease(driverBundlePath);
@@ -1607,7 +1586,7 @@ static OSStatus copy_deviceid(classdriver_t **classdriver,
CFStringRef deviceMake = NULL;
CFStringRef deviceModel = NULL;
CFStringRef deviceSerial = NULL;
*deviceID = NULL;
OSStatus err = (*classdriver)->GetDeviceID(classdriver, &devID, DEFAULT_TIMEOUT);
@@ -1682,13 +1661,13 @@ static OSStatus copy_deviceid(classdriver_t **classdriver,
CFRange range = (deviceSerial != NULL ? CFStringFind(deviceSerial, CFSTR("+"), 0) : CFRangeMake(0, 0));
if (range.length == 1) {
range = CFStringFind(*deviceID, deviceSerial, 0);
CFMutableStringRef deviceIDString = CFStringCreateMutableCopy(NULL, 0, *deviceID);
CFStringFindAndReplace(deviceIDString, CFSTR("+"), CFSTR(""), range, 0);
CFRelease(*deviceID);
*deviceID = deviceIDString;
}
release_deviceinfo(&deviceMake, &deviceModel, &deviceSerial);
return err;
@@ -1976,6 +1955,8 @@ static void run_legacy_backend(int argc,
if (!usb_legacy_status)
{
log_usb_class_driver(IS_NOT_64BIT);
/*
* Setup a SIGTERM handler then block it before forking...
*/
@@ -2338,6 +2319,32 @@ static void get_device_id(cups_sc_status_t *status,
}
static void
log_usb_class_driver(int is_64bit) /* I - Is the USB class driver 64-bit? */
{
/*
* Report the usage of legacy USB class drivers to Apple if the user opts into providing
* feedback to Apple...
*/
aslmsg aslm = asl_new(ASL_TYPE_MSG);
if (aslm)
{
ppd_file_t *ppd = ppdOpenFile(getenv("PPD"));
const char *make_model = ppd ? ppd->nickname : NULL;
ppd_attr_t *version = ppdFindAttr(ppd, "FileVersion", "");
asl_set(aslm, "com.apple.message.domain", "com.apple.printing.usb.64bit");
asl_set(aslm, "com.apple.message.result", is_64bit ? "yes" : "no");
asl_set(aslm, "com.apple.message.signature", make_model ? make_model : "Unknown");
asl_set(aslm, "com.apple.message.signature2", version ? version->value : "?.?");
asl_set(aslm, "com.apple.message.summarize", "YES");
asl_log(NULL, aslm, ASL_LEVEL_NOTICE, "");
asl_free(aslm);
}
}
/*
* End of "$Id$".
* End of "$Id: usb-darwin.c 11670 2014-03-04 14:53:59Z msweet $".
*/
+5 -5
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: usb-libusb.c 11456 2013-12-09 19:26:47Z msweet $"
*
* LIBUSB interface code for CUPS.
*
@@ -496,7 +496,7 @@ print_device(const char *uri, /* I - Device URI */
iostatus = libusb_bulk_transfer(g.printer->handle,
g.printer->write_endp,
print_buffer, g.print_bytes,
&bytes, 60000);
&bytes, 0);
/*
* Ignore timeout errors, but retain the number of bytes written to
* avoid sending duplicate data...
@@ -519,7 +519,7 @@ print_device(const char *uri, /* I - Device URI */
iostatus = libusb_bulk_transfer(g.printer->handle,
g.printer->write_endp,
print_buffer, g.print_bytes,
&bytes, 60000);
&bytes, 0);
}
/*
@@ -534,7 +534,7 @@ print_device(const char *uri, /* I - Device URI */
iostatus = libusb_bulk_transfer(g.printer->handle,
g.printer->write_endp,
print_buffer, g.print_bytes,
&bytes, 60000);
&bytes, 0);
}
if (iostatus)
@@ -2021,6 +2021,6 @@ soft_reset_printer(
/*
* End of "$Id$".
* End of "$Id: usb-libusb.c 11456 2013-12-09 19:26:47Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: usb-unix.c 10996 2013-05-29 11:51:34Z msweet $"
*
* USB port backend for CUPS.
*
@@ -612,5 +612,5 @@ side_cb(int print_fd, /* I - Print file */
/*
* End of "$Id$".
* End of "$Id: usb-unix.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: usb.c 10996 2013-05-29 11:51:34Z msweet $"
*
* USB port backend for CUPS.
*
@@ -260,5 +260,5 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
/*
* End of "$Id$".
* End of "$Id: usb.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: Makefile 10996 2013-05-29 11:51:34Z msweet $"
#
# Berkeley commands makefile for CUPS.
#
@@ -164,5 +164,5 @@ include Dependencies
#
# End of "$Id$".
# End of "$Id: Makefile 10996 2013-05-29 11:51:34Z msweet $".
#
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: lpc.c 10996 2013-05-29 11:51:34Z msweet $"
*
* "lpc" command for CUPS.
*
@@ -446,5 +446,5 @@ show_status(http_t *http, /* I - HTTP connection to server */
/*
* End of "$Id$".
* End of "$Id: lpc.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: lpq.c 11101 2013-07-08 11:20:33Z msweet $"
*
* "lpq" command for CUPS.
*
@@ -679,5 +679,5 @@ usage(void)
/*
* End of "$Id$".
* End of "$Id: lpq.c 11101 2013-07-08 11:20:33Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: lpr.c 11101 2013-07-08 11:20:33Z msweet $"
*
* "lpr" command for CUPS.
*
@@ -436,5 +436,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
* End of "$Id$".
* End of "$Id: lpr.c 11101 2013-07-08 11:20:33Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: lprm.c 10996 2013-05-29 11:51:34Z msweet $"
*
* "lprm" command for CUPS.
*
@@ -213,5 +213,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
* End of "$Id$".
* End of "$Id: lprm.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: Makefile 10996 2013-05-29 11:51:34Z msweet $"
#
# CGI makefile for CUPS.
#
@@ -380,5 +380,5 @@ include Dependencies
#
# End of "$Id$".
# End of "$Id: Makefile 10996 2013-05-29 11:51:34Z msweet $".
#
+10 -10
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: admin.c 11345 2013-10-18 21:14:52Z msweet $"
*
* Administration CGI for CUPS.
*
@@ -1348,20 +1348,20 @@ do_am_printer(http_t *http, /* I - HTTP connection */
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri",
NULL, uri);
if (!file)
{
var = cgiGetVariable("PPD_NAME");
if (strcmp(var, "__no_change__"))
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "ppd-name",
NULL, var);
}
ippAddString(request, IPP_TAG_PRINTER, IPP_TAG_TEXT, "printer-location",
NULL, cgiGetVariable("PRINTER_LOCATION"));
ippAddString(request, IPP_TAG_PRINTER, IPP_TAG_TEXT, "printer-info",
NULL, cgiGetVariable("PRINTER_INFO"));
if (!file)
{
var = cgiGetVariable("PPD_NAME");
if (strcmp(var, "__no_change__"))
ippAddString(request, IPP_TAG_PRINTER, IPP_TAG_NAME, "ppd-name",
NULL, var);
}
strlcpy(uri, cgiGetVariable("DEVICE_URI"), sizeof(uri));
/*
@@ -4218,5 +4218,5 @@ get_points(double number, /* I - Original number */
/*
* End of "$Id$".
* End of "$Id: admin.c 11345 2013-10-18 21:14:52Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: cgi-private.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Private CGI definitions for CUPS.
*
@@ -32,5 +32,5 @@
/*
* End of "$Id$".
* End of "$Id: cgi-private.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: cgi.h 10996 2013-05-29 11:51:34Z msweet $"
*
* CGI support library definitions for CUPS.
*
@@ -115,5 +115,5 @@ extern const char *cgiText(const char *message);
#endif /* !_CUPS_CGI_H_ */
/*
* End of "$Id$".
* End of "$Id: cgi.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: classes.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Class status CGI for CUPS.
*
@@ -554,5 +554,5 @@ show_class(http_t *http, /* I - Connection to server */
/*
* End of "$Id$".
* End of "$Id: classes.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: help-index.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Online help index routines for CUPS.
*
@@ -1324,5 +1324,5 @@ help_sort_words(help_word_t *w1, /* I - Second word */
/*
* End of "$Id$".
* End of "$Id: help-index.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: help-index.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Online help index definitions for CUPS.
*
@@ -83,5 +83,5 @@ extern help_index_t *helpSearchIndex(help_index_t *hi, const char *query,
#endif /* !_CUPS_HELP_INDEX_H_ */
/*
* End of "$Id$".
* End of "$Id: help-index.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: help.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Online help CGI for CUPS.
*
@@ -393,5 +393,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
* End of "$Id$".
* End of "$Id: help.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: html.c 10996 2013-05-29 11:51:34Z msweet $"
*
* HTML support functions for CUPS.
*
@@ -235,5 +235,5 @@ cgi_null_passwd(const char *prompt) /* I - Prompt string (unused) */
/*
* End of "$Id$".
* End of "$Id: html.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+12 -36
Ver Arquivo
@@ -1,31 +1,16 @@
/*
* "$Id$"
* "$Id: ipp-var.c 11890 2014-05-22 13:59:21Z msweet $"
*
* CGI <-> IPP variable routines for CUPS.
* CGI <-> IPP variable routines for CUPS.
*
* Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
* Copyright 2007-2014 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* 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/".
*
* Contents:
*
* cgiGetAttributes() - Get the list of attributes that are needed by the
* template file.
* cgiGetIPPObjects() - Get the objects in an IPP response.
* cgiMoveJobs() - Move one or more jobs.
* cgiPrintCommand() - Print a CUPS command job.
* cgiPrintTestPage() - Print a test page.
* cgiRewriteURL() - Rewrite a printer URI into a web browser URL...
* cgiSetIPPObjectVars() - Set CGI variables from an IPP object.
* cgiSetIPPVars() - Set CGI variables from an IPP response.
* cgiShowIPPError() - Show the last IPP error message.
* cgiShowJobs() - Show print jobs.
* cgiText() - Return localized text.
* 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/".
*/
/*
@@ -958,7 +943,6 @@ cgiSetIPPObjectVars(
*nameptr, /* Pointer into name */
value[16384], /* Value(s) */
*valptr; /* Pointer into value */
struct tm *date; /* Date information */
fprintf(stderr, "DEBUG2: cgiSetIPPObjectVars(obj=%p, prefix=\"%s\", "
@@ -1186,17 +1170,9 @@ cgiSetIPPObjectVars(
case IPP_TAG_INTEGER :
case IPP_TAG_ENUM :
if (strncmp(name, "time_at_", 8) == 0)
{
time_t t; /* Temporary time value */
t = (time_t)attr->values[i].integer;
date = localtime(&t);
strftime(valptr, sizeof(value) - (valptr - value), "%c", date);
}
_cupsStrDate(valptr, sizeof(value) - (size_t)(valptr - value), (time_t)ippGetInteger(attr, i));
else
snprintf(valptr, sizeof(value) - (valptr - value),
"%d", attr->values[i].integer);
snprintf(valptr, sizeof(value) - (size_t)(valptr - value), "%d", ippGetInteger(attr, i));
break;
case IPP_TAG_BOOLEAN :
@@ -1589,5 +1565,5 @@ cgiText(const char *message) /* I - Message */
/*
* End of "$Id$".
* End of "$Id: ipp-var.c 11890 2014-05-22 13:59:21Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: jobs.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Job status CGI for CUPS.
*
@@ -210,5 +210,5 @@ do_job_op(http_t *http, /* I - HTTP connection */
/*
* End of "$Id$".
* End of "$Id: jobs.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: makedocset.c 3833 2012-05-23 22:51:18Z msweet $"
*
* Xcode documentation set generator.
*
@@ -482,5 +482,5 @@ write_nodes(const char *path, /* I - File to write */
/*
* End of "$Id$".
* End of "$Id: makedocset.c 3833 2012-05-23 22:51:18Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: printers.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Printer status CGI for CUPS.
*
@@ -574,5 +574,5 @@ show_printer(http_t *http, /* I - Connection to server */
/*
* End of "$Id$".
* End of "$Id: printers.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: search.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Search routines for CUPS.
*
@@ -377,5 +377,5 @@ cgiFreeSearch(void *search) /* I - Search context */
/*
* End of "$Id$".
* End of "$Id: search.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+3 -3
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: template.c 11688 2014-03-05 21:11:32Z msweet $"
*
* CGI template function.
*
@@ -553,7 +553,7 @@ cgi_copy(FILE *out, /* I - Output file */
if (regcomp(&re, compare, REG_EXTENDED | REG_ICASE))
{
fprintf(stderr,
"ERROR: Unable to compile regular expresion \"%s\"!\n",
"ERROR: Unable to compile regular expression \"%s\"!\n",
compare);
result = 0;
}
@@ -729,5 +729,5 @@ cgi_puturi(const char *s, /* I - String to output */
/*
* End of "$Id$".
* End of "$Id: template.c 11688 2014-03-05 21:11:32Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: testcgi.c 10996 2013-05-29 11:51:34Z msweet $"
*
* CGI test program for CUPS.
*
@@ -71,5 +71,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
* End of "$Id$".
* End of "$Id: testcgi.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: testhi.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Help index test program for CUPS.
*
@@ -109,5 +109,5 @@ list_nodes(const char *title, /* I - Title string */
/*
* End of "$Id$".
* End of "$Id: testhi.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: testtemplate.c 10996 2013-05-29 11:51:34Z msweet $"
*
* CGI template test program for CUPS.
*
@@ -99,5 +99,5 @@ main(int argc, /* I - Number of command-line arguments */
/*
* End of "$Id$".
* End of "$Id: testtemplate.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: var.c 10996 2013-05-29 11:51:34Z msweet $"
*
* CGI form variable and array functions for CUPS.
*
@@ -1307,5 +1307,5 @@ cgi_unlink_file(void)
/*
* End of "$Id$".
* End of "$Id: var.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: websearch.c 1531 2009-05-22 21:50:50Z msweet $"
*
* Web search program for www.cups.org.
*
@@ -112,5 +112,5 @@ list_nodes(help_index_t *hi, /* I - Help index */
/*
* End of "$Id$".
* End of "$Id: websearch.c 1531 2009-05-22 21:50:50Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: Makefile 10996 2013-05-29 11:51:34Z msweet $"
#
# Configuration file makefile for CUPS.
#
@@ -139,5 +139,5 @@ uninstall:
#
# End of "$Id$".
# End of "$Id: Makefile 10996 2013-05-29 11:51:34Z msweet $".
#
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: cups-files.conf.in 11201 2013-07-26 21:27:27Z msweet $"
#
# Sample file/directory/user/group configuration file for the CUPS scheduler.
# See "man cups-files.conf" for a complete description of this file.
@@ -97,5 +97,5 @@ PageLog @CUPS_LOGDIR@/page_log
#TempDir @CUPS_REQUESTS@/tmp
#
# End of "$Id$".
# End of "$Id: cups-files.conf.in 11201 2013-07-26 21:27:27Z msweet $".
#
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: cupsd.conf.in 11025 2013-06-07 01:00:33Z msweet $"
#
# Sample configuration file for the CUPS scheduler. See "man cupsd.conf" for a
# complete description of this file.
@@ -130,5 +130,5 @@ WebInterface @CUPS_WEBIF@
</Policy>
#
# End of "$Id$".
# End of "$Id: cupsd.conf.in 11025 2013-06-07 01:00:33Z msweet $".
#
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: mime.convs.in 11025 2013-06-07 01:00:33Z msweet $"
#
# DO NOT EDIT THIS FILE, AS IT IS OVERWRITTEN WHEN YOU INSTALL NEW
# VERSIONS OF CUPS. Instead, create a "local.convs" file that
@@ -59,5 +59,5 @@ application/vnd.cups-raster image/pwg-raster 100 rastertopwg
@DEFAULT_RAW_PRINTING@application/octet-stream application/vnd.cups-raw 0 -
#
# End of "$Id$".
# End of "$Id: mime.convs.in 11025 2013-06-07 01:00:33Z msweet $".
#
+13 -13
Ver Arquivo
@@ -1,20 +1,20 @@
#
# "$Id: mime.types 7670 2008-06-17 22:42:08Z mike $"
#
# Base MIME types file for CUPS.
# Base MIME types file for CUPS.
#
# DO NOT EDIT THIS FILE, AS IT IS OVERWRITTEN WHEN YOU INSTALL NEW
# VERSIONS OF CUPS. Instead, create a "local.types" file that
# reflects your local configuration changes.
# DO NOT EDIT THIS FILE, AS IT IS OVERWRITTEN WHEN YOU INSTALL NEW
# VERSIONS OF CUPS. Instead, create a "local.types" file that
# reflects your local configuration changes.
#
# Copyright 2007-2011 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products.
# Copyright 2007-2014 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products.
#
# 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/".
# 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/".
#
########################################################################
@@ -92,7 +92,7 @@ image/jpeg jpeg jpg jpe string(0,<FFD8FF>) +\
char(3,0xe4) char(3,0xe5) char(3,0xe6) char(3,0xe7)\
char(3,0xe8) char(3,0xe9) char(3,0xea) char(3,0xeb)\
char(3,0xec) char(3,0xed) char(3,0xee) char(3,0xef))
image/pwg-raster string(0,"RaS2") + string(4,PwgRaster<00>) priority(100)
image/pwg-raster string(0,"RaS2") + string(4,PwgRaster<00>) priority(150)
image/tiff tiff tif string(0,MM<002A>) string(0,II<2A00>)
image/x-photocd pcd string(2048,PCD_IPI)
image/x-portable-anymap pnm
@@ -152,7 +152,7 @@ application/vnd.cups-pdf
application/vnd.cups-postscript
application/vnd.cups-ppd ppd string(0,"*PPD-Adobe:")
application/vnd.cups-raster string(0,"RaSt") string(0,"tSaR") \
string(0,"RaS2") string(0,"2SaR") \
(string(0,"RaS2") + !string(4,PwgRaster<00>)) string(0,"2SaR") \
string(0,"RaS3") string(0,"3SaR")
application/vnd.cups-raw (string(0,<1B>E) + !string(2,<1B>%0B)) \
string(0,<1B>@) \
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: snmp.conf.in 11025 2013-06-07 01:00:33Z msweet $"
#
# Sample SNMP configuration file for CUPS. See "man cups-snmp.conf" for a
# complete description of this file.
@@ -9,5 +9,5 @@
@CUPS_SNMP_COMMUNITY@
#
# End of "$Id$".
# End of "$Id: snmp.conf.in 11025 2013-06-07 01:00:33Z msweet $".
#
+20 -17
Ver Arquivo
@@ -1,16 +1,16 @@
dnl
dnl "$Id: cups-common.m4 8781 2009-08-28 17:34:54Z mike $"
dnl
dnl Common configuration stuff for CUPS.
dnl Common configuration stuff for CUPS.
dnl
dnl Copyright 2007-2013 by Apple Inc.
dnl Copyright 1997-2007 by Easy Software Products, all rights reserved.
dnl Copyright 2007-2014 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
dnl property of Apple Inc. and are protected by Federal copyright
dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
dnl which should have been included with this file. If this file is
dnl file is missing or damaged, see the license at "http://www.cups.org/".
dnl These coded instructions, statements, and computer programs are the
dnl property of Apple Inc. and are protected by Federal copyright
dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
dnl which should have been included with this file. If this file is
dnl file is missing or damaged, see the license at "http://www.cups.org/".
dnl
dnl We need at least autoconf 2.60...
@@ -20,8 +20,8 @@ dnl Set the name of the config header file...
AC_CONFIG_HEADER(config.h)
dnl Version number information...
CUPS_VERSION="1.7.0"
CUPS_REVISION=""
CUPS_VERSION=1.7.5
CUPS_REVISION=
#if test -z "$CUPS_REVISION" -a -d .svn; then
# CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`"
#fi
@@ -230,7 +230,7 @@ AC_SUBST(LIBUSB)
AC_SUBST(USBQUIRKS)
if test "x$PKGCONFIG" != x; then
if test x$enable_libusb = xyes -o $uname != Darwin; then
if test x$enable_libusb != xno -a $uname != Darwin; then
AC_MSG_CHECKING(for libusb-1.0)
if $PKGCONFIG --exists libusb-1.0; then
AC_MSG_RESULT(yes)
@@ -240,6 +240,9 @@ if test "x$PKGCONFIG" != x; then
USBQUIRKS="\$(DATADIR)/usb"
else
AC_MSG_RESULT(no)
if test x$enable_libusb = xyes; then
AC_MSG_ERROR(libusb required for --enable-libusb.)
fi
fi
fi
elif test x$enable_libusb = xyes; then
@@ -303,16 +306,11 @@ fi
LIBS="$SAVELIBS"
dnl Check for DBUS support
if test -d /etc/dbus-1; then
DBUSDIR="/etc/dbus-1"
else
DBUSDIR=""
fi
AC_ARG_ENABLE(dbus, [ --disable-dbus build without DBUS support])
AC_ARG_WITH(dbusdir, [ --with-dbusdir set DBUS configuration directory ],
DBUSDIR="$withval")
DBUSDIR=""
DBUS_NOTIFIER=""
DBUS_NOTIFIERLIBS=""
@@ -329,7 +327,12 @@ if test "x$enable_dbus" != xno -a "x$PKGCONFIG" != x; then
LIBS="$LIBS $DBUS_NOTIFIERLIBS"
AC_CHECK_FUNC(dbus_message_iter_init_append,
AC_DEFINE(HAVE_DBUS_MESSAGE_ITER_INIT_APPEND))
AC_CHECK_FUNC(dbus_threads_init,
AC_DEFINE(HAVE_DBUS_THREADS_INIT))
LIBS="$SAVELIBS"
if test -d /etc/dbus-1; then
DBUSDIR="/etc/dbus-1"
fi
else
AC_MSG_RESULT(no)
fi
+9 -9
Ver Arquivo
@@ -1,16 +1,16 @@
dnl
dnl "$Id: cups-compiler.m4 7871 2008-08-27 21:12:43Z mike $"
dnl
dnl Compiler stuff for CUPS.
dnl Compiler stuff for CUPS.
dnl
dnl Copyright 2007-2013 by Apple Inc.
dnl Copyright 1997-2007 by Easy Software Products, all rights reserved.
dnl Copyright 2007-2014 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
dnl property of Apple Inc. and are protected by Federal copyright
dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
dnl which should have been included with this file. If this file is
dnl file is missing or damaged, see the license at "http://www.cups.org/".
dnl These coded instructions, statements, and computer programs are the
dnl property of Apple Inc. and are protected by Federal copyright
dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
dnl which should have been included with this file. If this file is
dnl file is missing or damaged, see the license at "http://www.cups.org/".
dnl
dnl Clear the debugging and non-shared library options unless the user asks
@@ -185,7 +185,7 @@ if test -n "$GCC"; then
# The -z relro option is provided by the Linux linker command to
# make relocatable data read-only.
if test x$enable_relro = xyes; then
RELROFLAGS="-Wl,-z,relro"
RELROFLAGS="-Wl,-z,relro,-z,now"
fi
;;
esac
+6 -35
Ver Arquivo
@@ -1,9 +1,9 @@
dnl
dnl "$Id$"
dnl "$Id: cups-gssapi.m4 11324 2013-10-04 03:11:42Z msweet $"
dnl
dnl GSSAPI/Kerberos library detection for CUPS.
dnl
dnl Copyright 2007-2012 by Apple Inc.
dnl Copyright 2007-2013 by Apple Inc.
dnl Copyright 2006-2007 by Easy Software Products.
dnl
dnl This file contains Kerberos support code, copyright 2006 by
@@ -71,38 +71,9 @@ if test x$enable_gssapi != xno; then
if test "x$LIBGSSAPI" != x; then
AC_CHECK_HEADER(krb5.h, AC_DEFINE(HAVE_KRB5_H))
if test -d /System/Library/Frameworks/GSS.framework; then
gssdir="/System/Library/Frameworks/GSS.framework"
AC_MSG_CHECKING(for GSS/gssapi.h presence)
if test -f $gssdir/Headers/gssapi.h; then
AC_DEFINE(HAVE_GSS_GSSAPI_H)
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING(for GSS/gssapi_generic.h presence)
if test -f $gssdir/Headers/gssapi_generic.h; then
AC_DEFINE(HAVE_GSSAPI_GENERIC_H)
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_MSG_CHECKING(for GSS/gssapi_spi.h presence)
if test -f $gssdir/PrivateHeaders/gssapi_spi.h; then
AC_MSG_RESULT(yes)
AC_MSG_CHECKING(for GSS/gssapi_spi.h usability)
if test -s $gssdir/PrivateHeaders/gssapi_spi.h; then
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_GSS_GSSAPI_SPI_H)
else
AC_MSG_RESULT(no)
fi
else
AC_MSG_RESULT(no)
if test $uversion -ge 110 -a $uversion -lt 120; then
# Broken public headers in 10.7.x...
AC_MSG_ERROR(Run 'sudo mkdir -p $gssdir/PrivateHeaders' and 'sudo touch $gssdir/PrivateHeaders/gssapi_spi.h' to build CUPS.)
fi
fi
AC_CHECK_HEADER(GSS/gssapi.h, AC_DEFINE(HAVE_GSS_GSSAPI_H))
AC_CHECK_HEADER(GSS/gssapi_generic.h, AC_DEFINE(HAVE_GSS_GSSAPI_GENERIC_H))
AC_CHECK_HEADER(GSS/gssapi_spi.h, AC_DEFINE(HAVE_GSS_GSSAPI_SPI_H))
else
AC_CHECK_HEADER(gssapi.h, AC_DEFINE(HAVE_GSSAPI_H))
AC_CHECK_HEADER(gssapi/gssapi.h, AC_DEFINE(HAVE_GSSAPI_GSSAPI_H))
@@ -158,5 +129,5 @@ AC_SUBST(CUPS_DEFAULT_GSSSERVICENAME)
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_GSSSERVICENAME, "$CUPS_DEFAULT_GSSSERVICENAME")
dnl
dnl End of "$Id$".
dnl End of "$Id: cups-gssapi.m4 11324 2013-10-04 03:11:42Z msweet $".
dnl
+3 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: config.h.in 11642 2014-02-27 15:57:59Z msweet $"
*
* Configuration file for CUPS.
*
@@ -535,6 +535,7 @@
#undef HAVE_DBUS
#undef HAVE_DBUS_MESSAGE_ITER_INIT_APPEND
#undef HAVE_DBUS_THREADS_INIT
/*
@@ -706,5 +707,5 @@ static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); }
#endif /* !_CUPS_CONFIG_H_ */
/*
* End of "$Id$".
* End of "$Id: config.h.in 11642 2014-02-27 15:57:59Z msweet $".
*/
externo Arquivo executável
+11408
Ver Arquivo
Diferenças do arquivo suprimidas por serem muito extensas Carregar Diff
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
dnl
dnl "$Id$"
dnl "$Id: configure.in 11109 2013-07-08 21:15:13Z msweet $"
dnl
dnl Configuration script for CUPS.
dnl
@@ -92,5 +92,5 @@ AC_OUTPUT(Makedefs
chmod +x cups-config
dnl
dnl End of "$Id$".
dnl End of "$Id: configure.in 11109 2013-07-08 21:15:13Z msweet $".
dnl
+2 -2
Ver Arquivo
@@ -1,6 +1,6 @@
#! /bin/sh
#
# "$Id$"
# "$Id: cups-config.in 10996 2013-05-29 11:51:34Z msweet $"
#
# CUPS configuration utility.
#
@@ -142,5 +142,5 @@ while test $# -gt 0; do
done
#
# End of "$Id$".
# End of "$Id: cups-config.in 10996 2013-05-29 11:51:34Z msweet $".
#
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
#
# "$Id$"
# "$Id: Makefile 10996 2013-05-29 11:51:34Z msweet $"
#
# API library Makefile for CUPS.
#
@@ -639,5 +639,5 @@ include Dependencies
#
# End of "$Id$".
# End of "$Id: Makefile 10996 2013-05-29 11:51:34Z msweet $".
#
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: adminutil.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Administration utility API definitions for CUPS.
*
@@ -2337,5 +2337,5 @@ write_option(cups_file_t *dstfp, /* I - PPD file */
/*
* End of "$Id$".
* End of "$Id: adminutil.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: adminutil.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Administration utility API definitions for CUPS.
*
@@ -77,5 +77,5 @@ extern int cupsAdminSetServerSettings(http_t *http,
#endif /* !_CUPS_ADMINUTIL_H_ */
/*
* End of "$Id$".
* End of "$Id: adminutil.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+1 -1
Ver Arquivo
@@ -3,7 +3,7 @@
Filter and backend programming header for CUPS.
Copyright 2008-2011 by Apple Inc.
Copyright 2008-2014 by Apple Inc.
These coded instructions, statements, and computer programs are the
property of Apple Inc. and are protected by Federal copyright
+97 -8
Ver Arquivo
@@ -237,7 +237,7 @@ prefix strings:</p>
<code>marker-types</code>, <code>printer-alert</code>, and
<code>printer-alert-description</code> printer attributes. Standard
<code>marker-types</code> values are listed in <a href='#TABLE1'>Table
1</a>.</dd>
1</a>. String values need special handling - see <a href="#ATTR_STRINGS">Reporting Attribute String Values</a> below.</dd>
<dt>CRIT: message</dt>
<dd>Sets the printer-state-message attribute and adds the specified
@@ -320,11 +320,11 @@ the "DEBUG:" prefix string.</p>
<td>Fuser unit</td>
</tr>
<tr>
<td>fuserCleaningPad</td>
<td>fuser-cleaning-pad</td>
<td>Fuser cleaning pad</td>
</tr>
<tr>
<td>fuserOil</td>
<td>fuser-oil</td>
<td>Fuser oil</td>
</tr>
<tr>
@@ -336,7 +336,7 @@ the "DEBUG:" prefix string.</p>
<td>Photo conductor</td>
</tr>
<tr>
<td>solidWax</td>
<td>solid-wax</td>
<td>Wax supply</td>
</tr>
<tr>
@@ -348,19 +348,19 @@ the "DEBUG:" prefix string.</p>
<td>Toner supply</td>
</tr>
<tr>
<td>transferUnit</td>
<td>transfer-unit</td>
<td>Transfer unit</td>
</tr>
<tr>
<td>wasteInk</td>
<td>waste-ink</td>
<td>Waste ink tank</td>
</tr>
<tr>
<td>wasteToner</td>
<td>waste-toner</td>
<td>Waste toner tank</td>
</tr>
<tr>
<td>wasteWax</td>
<td>waste-wax</td>
<td>Waste wax tank</td>
</tr>
</tbody>
@@ -440,6 +440,95 @@ the "DEBUG:" prefix string.</p>
</tbody>
</table></div>
<h4><a name="ATTR_STRINGS">Reporting Attribute String Values</a></h4>
<p>When reporting string values using "ATTR:" messages, a filter or backend must take special care to appropriately quote those values. The scheduler uses the CUPS option parsing code for attributes, so the general syntax is:</p>
<pre class="example">
name=simple
name=simple,simple,...
name='complex value'
name="complex value"
name='"complex value"','"complex value"',...
</pre>
<p>Simple values are strings that do not contain spaces, quotes, backslashes, or the comma and can be placed verbatim in the "ATTR:" message, for example:</p>
<pre class="example">
int levels[4] = { 40, 50, 60, 70 }; /* CMYK */
fputs("ATTR: marker-colors=#00FFFF,#FF00FF,#FFFF00,#000000\n", stderr);
fputs("ATTR: marker-high-levels=100,100,100,100\n", stderr);
fprintf(stderr, "ATTR: marker-levels=%d,%d,%d,%d\n", levels[0], levels[1],
levels[2], levels[3], levels[4]);
fputs("ATTR: marker-low-levels=5,5,5,5\n", stderr);
fputs("ATTR: marker-types=toner,toner,toner,toner\n", stderr);
</pre>
<p>Complex values that contains spaces, quotes, backslashes, or the comma must be quoted. For a single value a single set of quotes is sufficient:</p>
<pre class="example">
fputs("ATTR: marker-message='Levels shown are approximate.'\n", stderr);
</pre>
<p>When multiple values are reported, each value must be enclosed by a set of single and double quotes:</p>
<pre class="example">
fputs("ATTR: marker-names='\"Cyan Toner\"','\"Magenta Toner\"',"
"'\"Yellow Toner\"','\"Black Toner\"'\n", stderr);
</pre>
<p>The IPP backend includes a <var>quote_string</var> function that may be used to properly quote a complex value in an "ATTR:" message:</p>
<pre class="example">
static const char * /* O - Quoted string */
quote_string(const char *s, /* I - String */
char *q, /* I - Quoted string buffer */
size_t qsize) /* I - Size of quoted string buffer */
{
char *qptr, /* Pointer into string buffer */
*qend; /* End of string buffer */
qptr = q;
qend = q + qsize - 5;
if (qend &lt; q)
{
*q = '\0';
return (q);
}
*qptr++ = '\'';
*qptr++ = '\"';
while (*s && qptr &lt; qend)
{
if (*s == '\\' || *s == '\"' || *s == '\'')
{
if (qptr &lt; (qend - 4))
{
*qptr++ = '\\';
*qptr++ = '\\';
*qptr++ = '\\';
}
else
break;
}
*qptr++ = *s++;
}
*qptr++ = '\"';
*qptr++ = '\'';
*qptr = '\0';
return (q);
}
</pre>
<h4><a name="MANAGING_STATE">Managing Printer State in a Filter</a></h4>
<p>Filters are responsible for managing the state keywords they set using
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: array-private.h 3933 2012-10-01 03:01:10Z msweet $"
*
* Private array definitions for CUPS.
*
@@ -48,5 +48,5 @@ extern cups_array_t *_cupsArrayNewStrings(const char *s, char delim)
#endif /* !_CUPS_ARRAY_PRIVATE_H_ */
/*
* End of "$Id$".
* End of "$Id: array-private.h 3933 2012-10-01 03:01:10Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: array.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Sorted array routines for CUPS.
*
@@ -1362,5 +1362,5 @@ cups_array_find(cups_array_t *a, /* I - Array */
/*
* End of "$Id$".
* End of "$Id: array.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: array.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Sorted array definitions for CUPS.
*
@@ -88,5 +88,5 @@ extern void *cupsArrayUserData(cups_array_t *a) _CUPS_API_1_2;
#endif /* !_CUPS_ARRAY_H_ */
/*
* End of "$Id$".
* End of "$Id: array.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: attr.c 10996 2013-05-29 11:51:34Z msweet $"
*
* PPD model-specific attribute routines for CUPS.
*
@@ -331,5 +331,5 @@ _ppdNormalizeMakeAndModel(
/*
* End of "$Id$".
* End of "$Id: attr.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: auth.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Authentication functions for CUPS.
*
@@ -888,5 +888,5 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
/*
* End of "$Id$".
* End of "$Id: auth.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: backchannel.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Backchannel functions for CUPS.
*
@@ -195,5 +195,5 @@ cups_setup(fd_set *set, /* I - Set for select() */
/*
* End of "$Id$".
* End of "$Id: backchannel.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: backend.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Backend functions for CUPS.
*
@@ -150,5 +150,5 @@ quote_string(const char *s) /* I - String to write */
/*
* End of "$Id$".
* End of "$Id: backend.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: backend.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Backend definitions for CUPS.
*
@@ -74,5 +74,5 @@ extern void cupsBackendReport(const char *device_scheme,
#endif /* !_CUPS_BACKEND_H_ */
/*
* End of "$Id$".
* End of "$Id: backend.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: conflicts.c 3933 2012-10-01 03:01:10Z msweet $"
*
* Option marking routines for CUPS.
*
@@ -1210,5 +1210,5 @@ ppd_test_constraints(
/*
* End of "$Id$".
* End of "$Id: conflicts.c 3933 2012-10-01 03:01:10Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: cups-private.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Private definitions for CUPS.
*
@@ -281,5 +281,5 @@ extern char *_cupsUserDefault(char *name, size_t namesize);
#endif /* !_CUPS_CUPS_PRIVATE_H_ */
/*
* End of "$Id$".
* End of "$Id: cups-private.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+13 -17
Ver Arquivo
@@ -1,18 +1,18 @@
/*
* "$Id$"
* "$Id: cups.h 12025 2014-07-15 13:00:17Z msweet $"
*
* API definitions for CUPS.
* API definitions for CUPS.
*
* Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
* Copyright 2007-2014 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* 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/".
* 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/".
*
* This file is subject to the Apple OS-Developed Software exception.
* This file is subject to the Apple OS-Developed Software exception.
*/
#ifndef _CUPS_CUPS_H_
@@ -30,10 +30,6 @@
typedef off_t ssize_t; /* @private@ */
# endif /* WIN32 && !__CUPS_SSIZE_T_DEFINED */
# ifdef __BLOCKS__
# include <dispatch/dispatch.h>
# endif /* __BLOCKS__ */
# include "file.h"
# include "ipp.h"
# include "language.h"
@@ -53,10 +49,10 @@ extern "C" {
* Constants...
*/
# define CUPS_VERSION 1.0700
# define CUPS_VERSION 1.0705
# define CUPS_VERSION_MAJOR 1
# define CUPS_VERSION_MINOR 7
# define CUPS_VERSION_PATCH 0
# define CUPS_VERSION_PATCH 5
# define CUPS_BC_FD 3
/* Back-channel file descriptor for
@@ -627,5 +623,5 @@ extern const char *cupsUserAgent(void) _CUPS_API_1_7;
#endif /* !_CUPS_CUPS_H_ */
/*
* End of "$Id$".
* End of "$Id: cups.h 12025 2014-07-15 13:00:17Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: custom.c 10996 2013-05-29 11:51:34Z msweet $"
*
* PPD custom option routines for CUPS.
*
@@ -118,5 +118,5 @@ ppdNextCustomParam(ppd_coption_t *opt) /* I - Custom option */
/*
* End of "$Id$".
* End of "$Id: custom.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: debug-private.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Private debugging macros for CUPS.
*
@@ -113,5 +113,5 @@ extern int _cups_gettimeofday(struct timeval *tv, void *tz);
#endif /* !_CUPS_DEBUG_PRIVATE_H_ */
/*
* End of "$Id$".
* End of "$Id: debug-private.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: debug.c 4027 2012-11-16 01:00:05Z msweet $"
*
* Debugging functions for CUPS.
*
@@ -650,5 +650,5 @@ _cups_debug_set(const char *logfile, /* I - Log file or NULL */
/*
* End of "$Id$".
* End of "$Id: debug.c 4027 2012-11-16 01:00:05Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: dest-job.c 4274 2013-04-09 20:10:23Z msweet $"
*
* Destination job support for CUPS.
*
@@ -362,5 +362,5 @@ cupsStartDestDocument(
/*
* End of "$Id$".
* End of "$Id: dest-job.c 4274 2013-04-09 20:10:23Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: dest-localization.c 4216 2013-03-11 13:57:36Z msweet $"
*
* Destination localization support for CUPS.
*
@@ -383,5 +383,5 @@ cups_scan_strings(char *buffer) /* I - Start of string */
/*
* End of "$Id$".
* End of "$Id: dest-localization.c 4216 2013-03-11 13:57:36Z msweet $".
*/
+57 -17
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: dest-options.c 11883 2014-05-16 21:04:07Z msweet $"
*
* Destination option/media support for CUPS.
*
@@ -886,7 +886,8 @@ cupsGetDestMediaByIndex(
unsigned flags, /* I - Media flags */
cups_size_t *size) /* O - Media size information */
{
cups_size_t *nsize; /* Size for N */
_cups_media_db_t *nsize; /* Size for N */
pwg_media_t *pwg; /* PWG media name for size */
/*
@@ -916,13 +917,30 @@ cupsGetDestMediaByIndex(
* Copy the size over and return...
*/
if ((nsize = (cups_size_t *)cupsArrayIndex(dinfo->cached_db, n)) == NULL)
if ((nsize = (_cups_media_db_t *)cupsArrayIndex(dinfo->cached_db, n)) == NULL)
{
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, strerror(EINVAL), 0);
return (0);
}
if (nsize->size_name)
strlcpy(size->media, nsize->size_name, sizeof(size->media));
else if (nsize->key)
strlcpy(size->media, nsize->key, sizeof(size->media));
else if ((pwg = pwgMediaForSize(nsize->width, nsize->length)) != NULL)
strlcpy(size->media, pwg->pwg, sizeof(size->media));
else
{
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, strerror(EINVAL), 0);
return (0);
}
memcpy(size, nsize, sizeof(cups_size_t));
size->width = nsize->width;
size->length = nsize->length;
size->bottom = nsize->bottom;
size->left = nsize->left;
size->right = nsize->right;
size->top = nsize->top;
return (1);
}
@@ -1281,6 +1299,8 @@ cups_create_cached(http_t *http, /* I - Connection to destination */
*first; /* First entry this size */
DEBUG_printf(("3cups_create_cached(http=%p, dinfo=%p, flags=%u)", http, dinfo, flags));
if (dinfo->cached_db)
cupsArrayDelete(dinfo->cached_db);
@@ -1289,11 +1309,15 @@ cups_create_cached(http_t *http, /* I - Connection to destination */
if (flags & CUPS_MEDIA_FLAGS_READY)
{
DEBUG_puts("4cups_create_cached: ready media");
cups_update_ready(http, dinfo);
db = dinfo->ready_db;
}
else
{
DEBUG_puts("4cups_create_cached: supported media");
if (!dinfo->media_db)
cups_create_media_db(dinfo, CUPS_MEDIA_FLAGS_DEFAULT);
@@ -1304,26 +1328,40 @@ cups_create_cached(http_t *http, /* I - Connection to destination */
mdb;
mdb = (_cups_media_db_t *)cupsArrayNext(db))
{
DEBUG_printf(("4cups_create_cached: %p key=\"%s\", type=\"%s\", %dx%d, B%d L%d R%d T%d", mdb, mdb->key, mdb->type, mdb->width, mdb->length, mdb->bottom, mdb->left, mdb->right, mdb->top));
if (flags & CUPS_MEDIA_FLAGS_BORDERLESS)
{
if (!mdb->left && !mdb->right && !mdb->top && !mdb->bottom)
{
DEBUG_printf(("4cups_create_cached: add %p", mdb));
cupsArrayAdd(dinfo->cached_db, mdb);
}
}
else if (flags & CUPS_MEDIA_FLAGS_DUPLEX)
{
if (first->width != mdb->width || first->length != mdb->length)
{
DEBUG_printf(("4cups_create_cached: add %p", first));
cupsArrayAdd(dinfo->cached_db, first);
first = mdb;
}
else if (mdb->left >= first->left && mdb->right >= first->right &&
mdb->top >= first->top && mdb->bottom >= first->bottom)
else if (mdb->left >= first->left && mdb->right >= first->right && mdb->top >= first->top && mdb->bottom >= first->bottom &&
(mdb->left != first->left || mdb->right != first->right || mdb->top != first->top || mdb->bottom != first->bottom))
first = mdb;
}
else
{
DEBUG_printf(("4cups_create_cached: add %p", mdb));
cupsArrayAdd(dinfo->cached_db, mdb);
}
}
if (flags & CUPS_MEDIA_FLAGS_DUPLEX)
{
DEBUG_printf(("4cups_create_cached: add %p", first));
cupsArrayAdd(dinfo->cached_db, first);
}
}
@@ -1757,8 +1795,7 @@ cups_get_media_db(http_t *http, /* I - Connection to destination */
* Look for the smallest margins...
*/
if (best->left != 0 || best->right != 0 || best->top != 0 ||
best->bottom != 0)
if (best->left != 0 || best->right != 0 || best->top != 0 || best->bottom != 0)
{
for (mdb = (_cups_media_db_t *)cupsArrayNext(db);
mdb && !cups_compare_media_db(mdb, &key);
@@ -1795,7 +1832,8 @@ cups_get_media_db(http_t *http, /* I - Connection to destination */
mdb = (_cups_media_db_t *)cupsArrayNext(db))
{
if (mdb->left >= best->left && mdb->right >= best->right &&
mdb->top >= best->top && mdb->bottom >= best->bottom)
mdb->top >= best->top && mdb->bottom >= best->bottom &&
(mdb->bottom != best->bottom || mdb->left != best->left || mdb->right != best->right || mdb->top != best->top))
best = mdb;
}
}
@@ -1810,11 +1848,10 @@ cups_get_media_db(http_t *http, /* I - Connection to destination */
mdb = (_cups_media_db_t *)cupsArrayNext(db))
{
if (((mdb->left > 0 && mdb->left <= best->left) || best->left == 0) &&
((mdb->right > 0 && mdb->right <= best->right) ||
best->right == 0) &&
((mdb->right > 0 && mdb->right <= best->right) || best->right == 0) &&
((mdb->top > 0 && mdb->top <= best->top) || best->top == 0) &&
((mdb->bottom > 0 && mdb->bottom <= best->bottom) ||
best->bottom == 0))
((mdb->bottom > 0 && mdb->bottom <= best->bottom) || best->bottom == 0) &&
(mdb->bottom != best->bottom || mdb->left != best->left || mdb->right != best->right || mdb->top != best->top))
best = mdb;
}
}
@@ -1892,7 +1929,8 @@ cups_get_media_db(http_t *http, /* I - Connection to destination */
mdb = (_cups_media_db_t *)cupsArrayNext(db))
{
if (mdb->left <= best->left && mdb->right <= best->right &&
mdb->top <= best->top && mdb->bottom <= best->bottom)
mdb->top <= best->top && mdb->bottom <= best->bottom &&
(mdb->bottom != best->bottom || mdb->left != best->left || mdb->right != best->right || mdb->top != best->top))
{
best = mdb;
if (mdb->left == 0 && mdb->right == 0 && mdb->bottom == 0 &&
@@ -1913,7 +1951,8 @@ cups_get_media_db(http_t *http, /* I - Connection to destination */
mdb = (_cups_media_db_t *)cupsArrayNext(db))
{
if (mdb->left >= best->left && mdb->right >= best->right &&
mdb->top >= best->top && mdb->bottom >= best->bottom)
mdb->top >= best->top && mdb->bottom >= best->bottom &&
(mdb->bottom != best->bottom || mdb->left != best->left || mdb->right != best->right || mdb->top != best->top))
best = mdb;
}
}
@@ -1932,7 +1971,8 @@ cups_get_media_db(http_t *http, /* I - Connection to destination */
best->right == 0) &&
((mdb->top > 0 && mdb->top <= best->top) || best->top == 0) &&
((mdb->bottom > 0 && mdb->bottom <= best->bottom) ||
best->bottom == 0))
best->bottom == 0) &&
(mdb->bottom != best->bottom || mdb->left != best->left || mdb->right != best->right || mdb->top != best->top))
best = mdb;
}
}
@@ -2267,5 +2307,5 @@ cups_update_ready(http_t *http, /* I - Connection to destination */
/*
* End of "$Id$".
* End of "$Id: dest-options.c 11883 2014-05-16 21:04:07Z msweet $".
*/
+36 -7
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: dest.c 11688 2014-03-05 21:11:32Z msweet $"
*
* User-defined destination (and option) support for CUPS.
*
@@ -891,6 +891,10 @@ cupsEnumDests(
num_dests; /* Number of destinations */
cups_dest_t *dests = NULL, /* Destinations */
*dest; /* Current destination */
const char *defprinter; /* Default printer */
char name[1024], /* Copy of printer name */
*instance, /* Pointer to instance name */
*user_default; /* User default printer */
#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
int count, /* Number of queries started */
remaining; /* Remainder of timeout */
@@ -936,6 +940,31 @@ cupsEnumDests(
num_dests = _cupsGetDests(CUPS_HTTP_DEFAULT, IPP_OP_CUPS_GET_PRINTERS, NULL,
&dests, type, mask);
if ((user_default = _cupsUserDefault(name, sizeof(name))) != NULL)
defprinter = name;
else if ((defprinter = cupsGetDefault2(CUPS_HTTP_DEFAULT)) != NULL)
{
strlcpy(name, defprinter, sizeof(name));
defprinter = name;
}
if (defprinter)
{
/*
* Separate printer and instance name...
*/
if ((instance = strchr(name, '/')) != NULL)
*instance++ = '\0';
/*
* Lookup the printer and instance and make it the default...
*/
if ((dest = cupsGetDest(name, instance, num_dests, dests)) != NULL)
dest->is_default = 1;
}
for (i = num_dests, dest = dests;
i > 0 && (!cancel || !*cancel);
i --, dest ++)
@@ -953,11 +982,11 @@ cupsEnumDests(
* Get Bonjour-shared printers...
*/
data.type = type;
data.mask = mask;
data.devices = cupsArrayNew3((cups_array_func_t)cups_dnssd_compare_devices,
NULL, NULL, 0, NULL,
(cups_afree_func_t)cups_dnssd_free_device);
data.type = type;
data.mask = mask;
data.cb = cb;
data.user_data = user_data;
data.devices = cupsArrayNew3((cups_array_func_t)cups_dnssd_compare_devices, NULL, NULL, 0, NULL, (cups_afree_func_t)cups_dnssd_free_device);
# ifdef HAVE_DNSSD
if (DNSServiceCreateConnection(&data.main_ref) != kDNSServiceErr_NoError)
@@ -3891,5 +3920,5 @@ cups_make_string(
/*
* End of "$Id$".
* End of "$Id: dest.c 11688 2014-03-05 21:11:32Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: dir.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Directory routines for CUPS.
*
@@ -468,5 +468,5 @@ cupsDirRewind(cups_dir_t *dp) /* I - Directory pointer */
#endif /* WIN32 */
/*
* End of "$Id$".
* End of "$Id: dir.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: dir.h 10996 2013-05-29 11:51:34Z msweet $"
*
* Public directory definitions for CUPS.
*
@@ -65,5 +65,5 @@ extern void cupsDirRewind(cups_dir_t *dp) _CUPS_API_1_2;
#endif /* !_CUPS_DIR_H_ */
/*
* End of "$Id$".
* End of "$Id: dir.h 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: emit.c 10996 2013-05-29 11:51:34Z msweet $"
*
* PPD code emission routines for CUPS.
*
@@ -1225,5 +1225,5 @@ ppd_handle_media(ppd_file_t *ppd) /* I - PPD file */
/*
* End of "$Id$".
* End of "$Id: emit.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+19 -44
Ver Arquivo
@@ -1,26 +1,18 @@
/*
* "$Id$"
* "$Id: encode.c 11867 2014-05-09 20:33:08Z msweet $"
*
* Option encoding routines for CUPS.
* Option encoding routines for CUPS.
*
* Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
* Copyright 2007-2014 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* 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/".
* 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/".
*
* This file is subject to the Apple OS-Developed Software exception.
*
* Contents:
*
* cupsEncodeOptions() - Encode printer options into IPP attributes.
* cupsEncodeOptions2() - Encode printer options into IPP attributes for
* a group.
* _ippFindOption() - Find the attribute information for an option.
* compare_ipp_options() - Compare two IPP options.
* This file is subject to the Apple OS-Developed Software exception.
*/
/*
@@ -41,7 +33,10 @@ static const ipp_op_t ipp_job_creation[] =
{
IPP_OP_PRINT_JOB,
IPP_OP_PRINT_URI,
IPP_OP_VALIDATE_JOB,
IPP_OP_CREATE_JOB,
IPP_OP_HOLD_JOB,
IPP_OP_SET_JOB_ATTRIBUTES,
IPP_OP_CUPS_NONE
};
@@ -51,6 +46,8 @@ static const ipp_op_t ipp_doc_creation[] =
IPP_OP_PRINT_URI,
IPP_OP_SEND_DOCUMENT,
IPP_OP_SEND_URI,
IPP_OP_SET_JOB_ATTRIBUTES,
IPP_OP_SET_DOCUMENT_ATTRIBUTES,
IPP_OP_CUPS_NONE
};
@@ -59,8 +56,8 @@ static const ipp_op_t ipp_sub_creation[] =
IPP_OP_PRINT_JOB,
IPP_OP_PRINT_URI,
IPP_OP_CREATE_JOB,
IPP_OP_CREATE_PRINTER_SUBSCRIPTION,
IPP_OP_CREATE_JOB_SUBSCRIPTION,
IPP_OP_CREATE_PRINTER_SUBSCRIPTIONS,
IPP_OP_CREATE_JOB_SUBSCRIPTIONS,
IPP_OP_CUPS_NONE
};
@@ -68,23 +65,13 @@ static const ipp_op_t ipp_all_print[] =
{
IPP_OP_PRINT_JOB,
IPP_OP_PRINT_URI,
IPP_OP_VALIDATE_JOB,
IPP_OP_CREATE_JOB,
IPP_OP_SEND_DOCUMENT,
IPP_OP_SEND_URI,
IPP_OP_CUPS_NONE
};
static const ipp_op_t ipp_all_limit[] =
{
IPP_OP_GET_JOBS,
IPP_OP_GET_PRINTER_ATTRIBUTES,
IPP_OP_CUPS_GET_PRINTERS,
IPP_OP_CUPS_GET_CLASSES,
IPP_OP_CUPS_GET_DEVICES,
IPP_OP_CUPS_GET_PPDS,
IPP_OP_CUPS_NONE
};
static const ipp_op_t ipp_set_printer[] =
{
IPP_OP_SET_PRINTER_ATTRIBUTES,
@@ -93,18 +80,6 @@ static const ipp_op_t ipp_set_printer[] =
IPP_OP_CUPS_NONE
};
static const ipp_op_t cups_am_class[] =
{
IPP_OP_CUPS_ADD_MODIFY_CLASS,
IPP_OP_CUPS_NONE
};
static const ipp_op_t cups_am_printer[] =
{
IPP_OP_CUPS_ADD_MODIFY_PRINTER,
IPP_OP_CUPS_NONE
};
static const ipp_op_t cups_schemes[] =
{
IPP_OP_CUPS_GET_DEVICES,
@@ -872,5 +847,5 @@ compare_ipp_options(_ipp_option_t *a, /* I - First option */
/*
* End of "$Id$".
* End of "$Id: encode.c 11867 2014-05-09 20:33:08Z msweet $".
*/
+4 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: file-private.h 11642 2014-02-27 15:57:59Z msweet $"
*
* Private file definitions for CUPS.
*
@@ -16,6 +16,8 @@
* 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/".
*
* This file is subject to the Apple OS-Developed Software exception.
*/
#ifndef _CUPS_FILE_PRIVATE_H_
@@ -133,5 +135,5 @@ extern void _cupsFileCheckFilter(void *context,
#endif /* !_CUPS_FILE_PRIVATE_H_ */
/*
* End of "$Id$".
* End of "$Id: file-private.h 11642 2014-02-27 15:57:59Z msweet $".
*/
+18 -56
Ver Arquivo
@@ -1,61 +1,23 @@
/*
* "$Id$"
* "$Id: file.c 11642 2014-02-27 15:57:59Z msweet $"
*
* File functions for CUPS.
* File functions for CUPS.
*
* Since stdio files max out at 256 files on many systems, we have to
* write similar functions without this limit. At the same time, using
* our own file functions allows us to provide transparent support of
* gzip'd print files, PPD files, etc.
* Since stdio files max out at 256 files on many systems, we have to
* write similar functions without this limit. At the same time, using
* our own file functions allows us to provide transparent support of
* gzip'd print files, PPD files, etc.
*
* Copyright 2007-2012 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
* Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* 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/".
* 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/".
*
* Contents:
*
* _cupsFileCheck() - Check the permissions of the given filename.
* _cupsFileCheckFilter() - Report file check results as CUPS filter messages.
* cupsFileClose() - Close a CUPS file.
* cupsFileCompression() - Return whether a file is compressed.
* cupsFileEOF() - Return the end-of-file status.
* cupsFileFind() - Find a file using the specified path.
* cupsFileFlush() - Flush pending output.
* cupsFileGetChar() - Get a single character from a file.
* cupsFileGetConf() - Get a line from a configuration file.
* cupsFileGetLine() - Get a CR and/or LF-terminated line that may
* contain binary data.
* cupsFileGets() - Get a CR and/or LF-terminated line.
* cupsFileLock() - Temporarily lock access to a file.
* cupsFileNumber() - Return the file descriptor associated with a CUPS
* file.
* cupsFileOpen() - Open a CUPS file.
* cupsFileOpenFd() - Open a CUPS file using a file descriptor.
* cupsFilePeekChar() - Peek at the next character from a file.
* cupsFilePrintf() - Write a formatted string.
* cupsFilePutChar() - Write a character.
* cupsFilePutConf() - Write a configuration line.
* cupsFilePuts() - Write a string.
* cupsFileRead() - Read from a file.
* cupsFileRewind() - Set the current file position to the beginning of
* the file.
* cupsFileSeek() - Seek in a file.
* cupsFileStderr() - Return a CUPS file associated with stderr.
* cupsFileStdin() - Return a CUPS file associated with stdin.
* cupsFileStdout() - Return a CUPS file associated with stdout.
* cupsFileTell() - Return the current file position.
* cupsFileUnlock() - Unlock access to a file.
* cupsFileWrite() - Write to a file.
* cups_compress() - Compress a buffer of data.
* cups_fill() - Fill the input buffer.
* cups_open() - Safely open a file for writing.
* cups_read() - Read from a file descriptor.
* cups_write() - Write to a file descriptor.
* This file is subject to the Apple OS-Developed Software exception.
*/
/*
@@ -2429,8 +2391,8 @@ cups_fill(cups_file_t *fp) /* I - CUPS file */
}
else
{
tcrc = (((((trailer[3] << 8) | trailer[2]) << 8) | trailer[1]) << 8) |
trailer[0];
tcrc = ((((((uLong)trailer[3] << 8) | (uLong)trailer[2]) << 8) |
(uLong)trailer[1]) << 8) | (uLong)trailer[0];
if (tcrc != fp->crc)
{
@@ -2438,7 +2400,7 @@ cups_fill(cups_file_t *fp) /* I - CUPS file */
* Bad CRC, mark end-of-file...
*/
DEBUG_printf(("9cups_fill: tcrc=%08x, fp->crc=%08x",
DEBUG_printf(("9cups_fill: tcrc=%08x != fp->crc=%08x",
(unsigned int)tcrc, (unsigned int)fp->crc));
fp->eof = 1;
@@ -2710,5 +2672,5 @@ cups_write(cups_file_t *fp, /* I - CUPS file */
/*
* End of "$Id$".
* End of "$Id: file.c 11642 2014-02-27 15:57:59Z msweet $".
*/
+4 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: file.h 11642 2014-02-27 15:57:59Z msweet $"
*
* Public file definitions for CUPS.
*
@@ -16,6 +16,8 @@
* 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/".
*
* This file is subject to the Apple OS-Developed Software exception.
*/
#ifndef _CUPS_FILE_H_
@@ -112,5 +114,5 @@ extern ssize_t cupsFileWrite(cups_file_t *fp, const char *buf,
#endif /* !_CUPS_FILE_H_ */
/*
* End of "$Id$".
* End of "$Id: file.h 11642 2014-02-27 15:57:59Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: getdevices.c 4216 2013-03-11 13:57:36Z msweet $"
*
* cupsGetDevices implementation for CUPS.
*
@@ -280,5 +280,5 @@ cupsGetDevices(
/*
* End of "$Id$".
* End of "$Id: getdevices.c 4216 2013-03-11 13:57:36Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: getifaddrs.c 10996 2013-05-29 11:51:34Z msweet $"
*
* Network interface functions for CUPS.
*
@@ -262,5 +262,5 @@ _cups_freeifaddrs(struct ifaddrs *addrs)/* I - Interface list to free */
/*
* End of "$Id$".
* End of "$Id: getifaddrs.c 10996 2013-05-29 11:51:34Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: getputfile.c 11153 2013-07-17 14:10:21Z msweet $"
*
* Get/put file functions for CUPS.
*
@@ -518,5 +518,5 @@ cupsPutFile(http_t *http, /* I - Connection to server or @code CUPS_HTTP_DE
/*
* End of "$Id$".
* End of "$Id: getputfile.c 11153 2013-07-17 14:10:21Z msweet $".
*/
+2 -2
Ver Arquivo
@@ -1,5 +1,5 @@
/*
* "$Id$"
* "$Id: globals.c 11113 2013-07-10 14:08:39Z msweet $"
*
* Global variable access routines for CUPS.
*
@@ -392,5 +392,5 @@ cups_globals_init(void)
/*
* End of "$Id$".
* End of "$Id: globals.c 11113 2013-07-10 14:08:39Z msweet $".
*/
+14 -27
Ver Arquivo
@@ -1,32 +1,18 @@
/*
* "$Id$"
* "$Id: http-addr.c 11642 2014-02-27 15:57:59Z msweet $"
*
* HTTP address routines for CUPS.
* HTTP address routines for CUPS.
*
* Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
* Copyright 2007-2013 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products, all rights reserved.
*
* 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/".
* 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/".
*
* Contents:
*
* httpAddrAny() - Check for the "any" address.
* httpAddrEqual() - Compare two addresses.
* httpAddrLength() - Return the length of the address in bytes.
* httpAddrListen() - Create a listening socket bound to the specified
* address and port.
* httpAddrLocalhost() - Check for the local loopback address.
* httpAddrLookup() - Lookup the hostname associated with the address.
* httpAddrPort() - Get the port number associated with an address.
* _httpAddrSetPort() - Set the port number associated with an address.
* httpAddrString() - Convert an address to a numeric string.
* httpGetHostByName() - Lookup a hostname or IPv4 address, and return
* address records for the specified name.
* httpGetHostname() - Get the FQDN for the connection or local system.
* This file is subject to the Apple OS-Developed Software exception.
*/
/*
@@ -643,8 +629,9 @@ httpGetHostByName(const char *name) /* I - Hostname or IP address */
if (ip[0] > 255 || ip[1] > 255 || ip[2] > 255 || ip[3] > 255)
return (NULL); /* Invalid byte ranges! */
cg->ip_addr = htonl(((((((ip[0] << 8) | ip[1]) << 8) | ip[2]) << 8) |
ip[3]));
cg->ip_addr = htonl((((((((unsigned)ip[0] << 8) | (unsigned)ip[1]) << 8) |
(unsigned)ip[2]) << 8) |
(unsigned)ip[3]));
/*
* Fill in the host entry and return it...
@@ -769,5 +756,5 @@ httpGetHostname(http_t *http, /* I - HTTP connection or NULL */
/*
* End of "$Id$".
* End of "$Id: http-addr.c 11642 2014-02-27 15:57:59Z msweet $".
*/

Alguns arquivos não foram exibidos porque demasiados arquivos foram alterados neste diff Mostrar Mais