Comparar commits
259 Commits
| Autor | SHA1 | Data | |
|---|---|---|---|
| 8406cae8ee | |||
| a0236fe7e7 | |||
| dbdd609a3a | |||
| 4abfc4313c | |||
| 1a1f974d33 | |||
| bfa5c91233 | |||
| fb70b28510 | |||
| 925ecfb9d7 | |||
| 520ae4afbb | |||
| a6da1f6153 | |||
| 067101d02d | |||
| decb87a756 | |||
| b7f166da75 | |||
| cadff87b26 | |||
| 75c2a30654 | |||
| f3745d0088 | |||
| fc56c4d886 | |||
| 292f831c7a | |||
| ae7176a7a9 | |||
| 422369925a | |||
| 6474d57e69 | |||
| 58acbe964e | |||
| 2f89228ff3 | |||
| a29fd7ddb5 | |||
| f3c17241a4 | |||
| 271780fb87 | |||
| 82cc1f9ac3 | |||
| 3e7fe0ca76 | |||
| bb0d23b21b | |||
| 3ee4274c97 | |||
| 12f89d241c | |||
| dcb445bcf3 | |||
| 9c80ffa289 | |||
| a2326b5b72 | |||
| d7225fc298 | |||
| 9b66acc599 | |||
| 10ddcf65af | |||
| 83e0800111 | |||
| 85dda01c84 | |||
| a48458814a | |||
| 771bd8cbff | |||
| bd8b6777d6 | |||
| f99f369831 | |||
| d4d033982c | |||
| f228370c3f | |||
| 88f9aafc49 | |||
| 321d8d57da | |||
| eac3a0a01b | |||
| 22c9029b44 | |||
| 07ed0e9a43 | |||
| 84315f460a | |||
| 82f972324d | |||
| 31db8dedac | |||
| f14324a792 | |||
| c8fef167ba | |||
| e60ec91f3e | |||
| 515b46cde4 | |||
| 0268488e2f | |||
| c779abb06a | |||
| 229681c188 | |||
| 0837b7e828 | |||
| 1106b00e75 | |||
| 10d09e334a | |||
| 6c48a6cafc | |||
| 7cf5915ead | |||
| 030ae6a14e | |||
| 4220952d4d | |||
| c7017eccd2 | |||
| cc75483441 | |||
| 6d2f911bdd | |||
| 39ff2fe72b | |||
| aaf19ab07e | |||
| e2d18a01cc | |||
| 5180a04ce8 | |||
| 61e2aeb0be | |||
| a480a1b6b4 | |||
| 71e160228f | |||
| 54afec3350 | |||
| ba55dc12de | |||
| 5a6b583acf | |||
| f8b3a85b79 | |||
| 4168188389 | |||
| 5a662dc060 | |||
| ef55b74533 | |||
| 3fb9c47ea6 | |||
| 101decd054 | |||
| 4d301e694f | |||
| b226ab9913 | |||
| 18ecb42821 | |||
| 7a0cbd5e57 | |||
| ee6ddad257 | |||
| 4a4b4f9914 | |||
| f701418f7b | |||
| 60198c6dba | |||
| e38f5e9c4d | |||
| 85b5d1dfa7 | |||
| 4e6f60f000 | |||
| acb056cb17 | |||
| 97c9a8d722 | |||
| 393ac6abae | |||
| b0f6947b4d | |||
| 68b10830fa | |||
| 536bc2c652 | |||
| 6c663ae27a | |||
| 178cb7369d | |||
| f11a948a02 | |||
| e07d4801f9 | |||
| 38e73f8781 | |||
| 94da7e344c | |||
| 238c383265 | |||
| 8b116e6004 | |||
| 9aff70cc17 | |||
| d7871c8c7f | |||
| 1340db2dab | |||
| b9faaae17c | |||
| ede613e028 | |||
| f0ab5bff8a | |||
| bf3816c7ed | |||
| 745129beeb | |||
| dfd5680b87 | |||
| d1c13e1686 | |||
| d2354e6397 | |||
| c168a833ca | |||
| 557dde9fbc | |||
| 426c6a5959 | |||
| 8b450588f4 | |||
| ed6e7faf3e | |||
| 52f6f666c3 | |||
| 9380acaa78 | |||
| 4b3f67ff4c | |||
| e6013cfab0 | |||
| e4572d571c | |||
| 28b9d139c0 | |||
| 6e8b116d7f | |||
| 758a062feb | |||
| 02797ade68 | |||
| 61cf44e2b7 | |||
| 076fd0e4fb | |||
| 58dc193312 | |||
| f2245c695c | |||
| cda47a960f | |||
| 1f6f3dbcf9 | |||
| 0af14961a8 | |||
| b19ccc9e27 | |||
| 49d8745278 | |||
| c5571a1d68 | |||
| 9a4f8274e9 | |||
| 5f64df2982 | |||
| 247efae55f | |||
| 06d4e77b9b | |||
| 1ff0402e47 | |||
| 9f5eb9be66 | |||
| ee571f261a | |||
| 749b1e90a8 | |||
| 005dd1eb9e | |||
| 5d6412a9f1 | |||
| e78998dfeb | |||
| 66ab9486ef | |||
| 1f0275e3cc | |||
| 4509bb4933 | |||
| 75bd9771f6 | |||
| dd1abb6b5f | |||
| c934a06cde | |||
| 79e1d494ec | |||
| 8922323b9f | |||
| bdd6c45b5e | |||
| 20fbc90347 | |||
| 47879b8b63 | |||
| 5eb9da713f | |||
| 01ce6322ca | |||
| 3c8c76971a | |||
| c9fc04c6ec | |||
| 969307f096 | |||
| a0f6818ebf | |||
| d8bcaa3c4c | |||
| 7a14d7682b | |||
| a4f1b3dff2 | |||
| 634763e80e | |||
| 3dfe78b336 | |||
| ae71f5deb4 | |||
| 839a51c83c | |||
| 50fe720154 | |||
| db0bd74adb | |||
| 64a69576c8 | |||
| a603edef72 | |||
| 568fa3faf1 | |||
| d6943d1d31 | |||
| ac884b6a1c | |||
| 5a738aeaea | |||
| d9bca400be | |||
| 5bd77a735f | |||
| 91c84a3551 | |||
| 080811b190 | |||
| 3d052e4330 | |||
| a4924f6c45 | |||
| 0a6827453a | |||
| a41f09e265 | |||
| e94d2f1068 | |||
| 2fb7629816 | |||
| cc9a7e967e | |||
| 65a152d3f1 | |||
| 183ee7626a | |||
| 2e4ff8afcb | |||
| 56ab62c60c | |||
| 7dfedb921d | |||
| c277e2f802 | |||
| db1f069b7f | |||
| 76cd9e37aa | |||
| 7ff4fea9bc | |||
| c24d21342f | |||
| 355e94dc85 | |||
| cc0d019f5e | |||
| bc44d92092 | |||
| 09a101d671 | |||
| 3d8365b8dc | |||
| b94498cfba | |||
| 323c5de1e8 | |||
| c0e1af835b | |||
| f42414bf8a | |||
| f899b12170 | |||
| 7594b2247b | |||
| f7deaa1a21 | |||
| b86bc4cf57 | |||
| 411affcf6a | |||
| 26d47ec688 | |||
| 2abf387cae | |||
| 07725fee41 | |||
| d09495fadd | |||
| 8ca02f3c05 | |||
| f7faf1f5c3 | |||
| c07d5b2daf | |||
| ed48691112 | |||
| 9e22304f01 | |||
| 7a6a01ddca | |||
| 3608048605 | |||
| f301802fc2 | |||
| a9252913e7 | |||
| a74454a757 | |||
| 89d46774ee | |||
| e53920b922 | |||
| d6ae789d92 | |||
| 80ca45929e | |||
| e1d6a77454 | |||
| 480ef0fe29 | |||
| 757d2cad8f | |||
| 4744bd907e | |||
| b423cd4cb9 | |||
| ecdc06282a | |||
| bd7854cb4d | |||
| 4400e98de2 | |||
| e00b005a05 | |||
| ffb6300882 | |||
| a4d045870e | |||
| 09ec001812 | |||
| 923edb689d | |||
| fa73b22906 | |||
| 4a09f02d10 | |||
| ef416fc25c | |||
| 9ec11526e1 |
@@ -1,128 +0,0 @@
|
||||
CHANGES-IPPTOOL.txt - 2012-02-28
|
||||
--------------------------------
|
||||
|
||||
This file provides a list of changes to the ipptool binary distribution posted
|
||||
on cups.org.
|
||||
|
||||
|
||||
2012-02-28
|
||||
|
||||
- Changed behavior of WITH-VALUES "/regex/" to not require all values to
|
||||
match.
|
||||
- Added WITH-ALL-VALUES directive for EXPECT predicates that require all
|
||||
values to match.
|
||||
- Updated test files to use WITH-ALL-VALUES where necessary.
|
||||
- Updated test files to use new ABNF for media names from PWG Media
|
||||
Names 2.0.
|
||||
|
||||
|
||||
2012-02-06
|
||||
|
||||
- Fixed the packaging of ipptool on Windows (removed unnecessary DLLs)
|
||||
- Fixed an crash in ipptool when mixing DISPLAY with -I and a failed
|
||||
request.
|
||||
- Added a Print-Job test file.
|
||||
- Added a "setdebug" batch file for Windows
|
||||
- Added support for a CUPS_DISABLE_ASYNC_CONNECT environment variable.
|
||||
|
||||
|
||||
2012-01-10
|
||||
|
||||
- Fixed an issue with the IPP/1.1 test file where the "waiting for job
|
||||
completion" test did not work.
|
||||
- The attribute groups out of order error was not shown for the
|
||||
operation-attributes-tag group.
|
||||
|
||||
|
||||
2011-12-02
|
||||
|
||||
- Fixed a truncated XML output bug that would happen for certain errors.
|
||||
- Fixed the order-of-groups tests.
|
||||
- Fixed "WITH-VALUE >N" for rangeOfInteger attributes.
|
||||
- The Windows installer was missing the get-printer-attributes.test
|
||||
file.
|
||||
- The Linux binaries are now compiled for all LSB 4.x-compliant Linux
|
||||
distributions.
|
||||
- The Linux binaries no longer support SSL or TLS.
|
||||
|
||||
|
||||
2011-10-05
|
||||
|
||||
- Fixed a crasher bug that showed up on Windows.
|
||||
- The IPP/1.1 test would hang if the initial Print-Job test failed.
|
||||
- Fixed a typo in the IPP/2.0 test.
|
||||
|
||||
|
||||
2011-10-03
|
||||
|
||||
- Using OF-TYPE with the "no-value" or "unknown" out-of-band value tags
|
||||
now works without special WITH-VALUE strings.
|
||||
- ipptool now shows an error when an attribute appears more than once
|
||||
within the same attribute group.
|
||||
- ipptool did not display attributes as specified by the DISPLAY
|
||||
directive when a test error failed.
|
||||
- Fixed one spot where DEFINE-VALUE was still treated as an error when
|
||||
the EXPECT test failed.
|
||||
- uriScheme values were not displayed properly.
|
||||
- Updated the IPP/1.1 tests to properly validate support for
|
||||
job-hold-until-default and job-hold-until-supported when the Hold-Job
|
||||
operation is supported.
|
||||
- Updated the IPP/1.1 tests to properly check for the various standard
|
||||
media sizes for the printing tests.
|
||||
- Updated the IPP/1.1 tests to accept "no-value" for media-default an
|
||||
orientation-requested-default.
|
||||
- Updated the IPP/1.1 tests to accept "unknown" for job-state.
|
||||
- Updated the IPP/1.1 tests to not perform the bogus URI printing tests
|
||||
unless the "document-uri" variable is defined.
|
||||
- Updated the IPP/2.0 tests to properly validate media-col
|
||||
"media-xxx-supported" attributes.
|
||||
- Updated the IPP/2.2 tests to properly validate media-ready and
|
||||
media-col-ready.
|
||||
|
||||
|
||||
2011-09-28
|
||||
|
||||
- Test output now includes a summary and overall score at the end.
|
||||
- The MATCH-VALUE predicate now correctly deals with a failed EXPECT
|
||||
condition.
|
||||
- The IPP/1.1 test suite now looks for legacy media names and uses them
|
||||
if the corresponding PWG standard names are not present.
|
||||
- The IPP/1.1 test suite now tests the Print-Job+Release-Job when the
|
||||
printer supports the job-hold-until attribute, Hold-Job operation, and
|
||||
Release-Job operation.
|
||||
|
||||
|
||||
2011-09-21
|
||||
|
||||
- Fixes for HTTP chunking, timeout, and encryption issues reported by
|
||||
various users.
|
||||
- Greatly improved IPP tests with added IPP/2.2 tests.
|
||||
- New test documents - 1-page and 4-page mixed A4/Letter PDF/PS and a
|
||||
couple JPEGs.
|
||||
- New REPEAT directives to programmatically repeat tests as needed.
|
||||
|
||||
|
||||
2011-08-16
|
||||
|
||||
- The Windows version no longer requires Visual Studio to be installed.
|
||||
- The Windows version now supports SSL.
|
||||
- Added "ipps" URI support.
|
||||
- Added a new "-T" option.
|
||||
- Added support for fractional seconds for the -i option and DELAY
|
||||
directive.
|
||||
- Added support for authentication.
|
||||
- Added DEFINE-MATCH, DEFINE-NO-MATCH, DEFINE-VALUE, IF-NOT-DEFINED,
|
||||
IGNORE-ERRORS, SKIP-IF-DEFINED, SKIP-IF-NOT-DEFINED,
|
||||
SKIP-PREVIOUS-ERROR directives.
|
||||
- WITH-VALUE now supports variable expansion.
|
||||
- Updated the IPP/1.1 conformance test to skip the "my-jobs different
|
||||
user" test if the printer URI contains a username.
|
||||
- Updated the IPP conformance tests to validate media, media-default,
|
||||
and media-supported values.
|
||||
- No longer error out if a Printer returns a different version number in
|
||||
the response when the request contains the version 0.0.
|
||||
|
||||
|
||||
2010-10-16
|
||||
|
||||
- Initial release of standalone binary.
|
||||
|
||||
+134
-1
@@ -1,6 +1,139 @@
|
||||
CHANGES.txt - 1.6.1 - 2012-07-27
|
||||
CHANGES.txt - 1.6.3 - 2013-07-11
|
||||
--------------------------------
|
||||
|
||||
CHANGES IN CUPS V1.6.3
|
||||
|
||||
- The configure script now prefers Clang over GCC.
|
||||
- Fixed a compile problem on AIX (STR #4307)
|
||||
- The default IPP version did not always get set before creating a new
|
||||
IPP request message (<rdar://problem/14401718>)
|
||||
- The lp, lpq, lpr, and lpstat now display an error message advising the
|
||||
use of the /version=1.1 ServerName option (<rdar://problem/14290628>)
|
||||
- Added documentation about the /version=1.1 option to ServerName in
|
||||
client.conf (<rdar://problem/14216262>)
|
||||
- httpStatus(HTTP_ERROR) did not return a useful error message
|
||||
(<rdar://problem/14217326>)
|
||||
- The lp, lpq, lpr, and lpstat commands incorrectly ignored the default
|
||||
printer set in the lpoptions file (<rdar://problem/14216472>)
|
||||
- Fixed a URI encoding issue for hostnames containing the ` (backquote)
|
||||
character (<rdar://problem/14243133>)
|
||||
- Added support for RFC 6874's IPv6 link local address format in URIs
|
||||
(<rdar://problem/13979453>)
|
||||
- The USB backend could crash on libusb-based systems if USB was
|
||||
disabled in the BIOS (<rdar://problem/13875729>)
|
||||
- Fixed a rounding error in the PWG media size mapping code
|
||||
(<rdar://problem/13493241>)
|
||||
- Fixed several ipptool test files that used old STATUS names.
|
||||
- Kerberos credentials could get truncated when printing to a shared
|
||||
printer.
|
||||
- Printing using "ipps" URIs was not encrypted.
|
||||
- Insecure ICC profiles prevented installation of user profiles for a
|
||||
printer on OS X.
|
||||
- Added more USB quirks for the libusb-based backend (STR #4311,
|
||||
<rdar://problem/13736470>)
|
||||
- The Russian web interface templates were broken (STR #4310)
|
||||
- The scheduler no longer tries to do Kerberos authentication over the
|
||||
loopback interface.
|
||||
- The IPP backend could fail to pause a job for authentication
|
||||
(STR #4298)
|
||||
- Fixed a regression on the handling of auth keys on OS X if the
|
||||
cups-files.conf was not present or did not contain a SystemAuthKey
|
||||
value.
|
||||
- The scheduler incorrectly did a reverse lookup of the server address
|
||||
when HostNameLookups was turned off (STR #4302)
|
||||
- The scheduler incorrectly computed the final content type value when
|
||||
null filters were present.
|
||||
|
||||
|
||||
CHANGES IN CUPS V1.6.2
|
||||
|
||||
- Documentation fixes (STR #4229, STR #4239, STR #4234, STR #4248,
|
||||
STR #4259)
|
||||
- Security: All file, directory, user, and group settings are now stored
|
||||
in a separate cups-files.conf configuration file that cannot be set
|
||||
through the CUPS web interface or APIs (STR #4223)
|
||||
- Added a Czech localization (STR #4201)
|
||||
- Added a French localization (STR #4247)
|
||||
- Added a Russian localization (STR #4228, STR #4285)
|
||||
- Updated the Catalan localization (STR #4202)
|
||||
- Local certificate authentication did not guard against an empty
|
||||
certification file (STR #4293)
|
||||
- The scheduler did not reject device URIs with spaces.
|
||||
- Added USB quirk rule for Epson Stylus Photo 750 (STR #4286)
|
||||
- The IPP backend could crash if the printer disconnects early
|
||||
(STR #4284)
|
||||
- cupsGetPPD did not work with statically-configured CUPS shared
|
||||
queues (STR #4178)
|
||||
- The scheduler did not support long MIME media types (STR #4270)
|
||||
- The cupsfilter command did not set the CHARSET environment variable
|
||||
for the text filters (STR #4273)
|
||||
- The lp command did not show errors for unknown "--foo" (STR #4261)
|
||||
- Bad IPP responses could crash ipptool (STR #4262)
|
||||
- Updated USB quirk rules for Canon and Xerox printers (STR #4217,
|
||||
STR #4263)
|
||||
- Added USB blacklisting for printers that require a custom backend
|
||||
(STR #4218)
|
||||
- The PPD compiler did not correctly JCL options (STR #4115, STR #4203)
|
||||
- The ipptool program now supports DEFINE-MATCH and DEFINE-NO-MATCH
|
||||
predicates for STATUS directives.
|
||||
- Fixed a problem with local Kerberos authentication (STR #4140)
|
||||
- Coverity scan: fixed some minor issues (STR #4242)
|
||||
- The scheduler did not remove color profiles after deleting a printer
|
||||
(STR #4232, STR #4276)
|
||||
- The CUPS library did not always detect a timed out connection to the
|
||||
server which could cause temporary loss of printing from applications
|
||||
(STR #4187)
|
||||
- The ipptool program now supports variable substitution in OPERATION
|
||||
and DELAY directives (STR #4175)
|
||||
- The IPP backend now stops queues when the server configuration
|
||||
prevents successful job submission (STR #4125)
|
||||
- The XML output of ipptool contained empty dictionaries (STR #4136)
|
||||
- The scheduler did not delete job control backup files (STR #4244)
|
||||
- cupsGetPPD3 could return a local PPD instead of the correct remote
|
||||
PPD.
|
||||
- The scheduler incorrectly advertised auth-info-required for local
|
||||
queues needing local authentication (STR #4205)
|
||||
- CUPS 1.6 clients using the ServerName directive in client.conf did not
|
||||
work with CUPS 1.3.x or older servers (STR #4231, STR #4291)
|
||||
- The SNMP backend now tries to work around broken printers that use a
|
||||
newline to separate key/value pairs.
|
||||
- The IPP backend did not send a cancel request to printers when a job
|
||||
was canceled and the printer did not support Create-Job.
|
||||
- Fixed EPM packaging files (STR #4199)
|
||||
- OpenBSD build fix (STR #4195, STR #4196, STR #4197)
|
||||
- The scheduler could crash when using Avahi (STR #4183, STR #4192,
|
||||
STR #4200, STR #4213)
|
||||
- The IPP backend could get stuck in an endless loop on certain network
|
||||
errors (STR #4194)
|
||||
- 32-bit builds failed on Debian (STR #4133)
|
||||
- The scheduler no longer accepts or sends job description attributes.
|
||||
- The IPP backend now works around some conformance issues for broken
|
||||
printers (STR #4190)
|
||||
- cupsBackendReport() now filters out all control characters from the
|
||||
reported 1284 device IDs (STR #4124)
|
||||
- The scheduler no longer allows job-name values that are not valid
|
||||
network Unicode strings (STR #4072)
|
||||
- The web interface did not preserve the order of classes, jobs, or
|
||||
printers (STR #4170)
|
||||
- The network backends now support disabling of SNMP supply level
|
||||
queries via the "snmp" URI option (STR #4106)
|
||||
- The IPP backend did not specify the compression used (STR #4181)
|
||||
- ipptool did not support octetString values.
|
||||
- The scheduler did not recognize dnssd: or ipps: URIs as Bonjour shared
|
||||
queues (STR #4158)
|
||||
- Applications could not get the PPD file for statically-configured
|
||||
Bonjour-shared print queues (STR #4159)
|
||||
- The cupsd.conf file included obsolete browsing directives (STR #4157)
|
||||
- Fixed a USB backend compatibility issue on systems using libusb
|
||||
(STR #4155, STR #4191)
|
||||
- Some Bonjour features were not available on systems with Avahi
|
||||
(STR #4156)
|
||||
- CUPS now includes the port number in the Host: header for HTTP
|
||||
requests.
|
||||
- Fixed REPEAT-MATCH for STATUS and EXPECT - was incorrectly erroring
|
||||
out.
|
||||
|
||||
|
||||
CHANGES IN CUPS V1.6.1
|
||||
|
||||
- Documentation fix (STR #4149)
|
||||
|
||||
+11
-5
@@ -1,14 +1,20 @@
|
||||
INSTALL - CUPS v1.6.1 - 2012-07-27
|
||||
INSTALL - CUPS v1.6.3 - 2013-07-11
|
||||
----------------------------------
|
||||
|
||||
This file describes how to compile and install CUPS from source code. For more
|
||||
information on CUPS see the file called "README.txt". A complete change log can
|
||||
be found in "CHANGES.txt".
|
||||
|
||||
**** IF YOU HAVE A NON-POSTSCRIPT PRINTER AND ARE NOT ****
|
||||
**** RUNNING OS X, YOU WILL ALSO NEED TO INSTALL GPL ****
|
||||
**** GHOSTSCRIPT WITH THE "cups" DRIVER AFTER YOU INSTALL ****
|
||||
**** CUPS. ****
|
||||
*******************************************************************************
|
||||
*******************************************************************************
|
||||
**** ****
|
||||
**** USING CUPS REQUIRES ADDITIONAL THIRD-PARTY SUPPORT SOFTWARE AND ****
|
||||
**** PRINTER DRIVERS. THESE ARE TYPICALLY INCLUDED WITH YOUR OPERATING ****
|
||||
**** SYSTEM DISTRIBUTION. APPLE DOES NOT ENDORSE OR SUPPORT THIRD-PARTY ****
|
||||
**** SUPPORT SOFTWARE FOR CUPS. ****
|
||||
**** ****
|
||||
*******************************************************************************
|
||||
*******************************************************************************
|
||||
|
||||
|
||||
BEFORE YOU BEGIN
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: Makedefs.in 7900 2008-09-03 13:47:57Z mike $"
|
||||
#
|
||||
# Common makefile definitions for CUPS.
|
||||
#
|
||||
@@ -258,5 +258,5 @@ DBUSDIR = @DBUSDIR@
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id$"
|
||||
# End of "$Id: Makedefs.in 7900 2008-09-03 13:47:57Z mike $"
|
||||
#
|
||||
|
||||
+7
-5
@@ -1,9 +1,9 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: Makefile 9391 2010-11-30 21:53:04Z mike $"
|
||||
#
|
||||
# Top-level Makefile for CUPS.
|
||||
#
|
||||
# Copyright 2007-2012 by Apple Inc.
|
||||
# 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
|
||||
@@ -99,8 +99,10 @@ clean:
|
||||
distclean: clean
|
||||
$(RM) Makedefs config.h config.log config.status
|
||||
$(RM) cups-config
|
||||
$(RM) conf/cupsd.conf conf/mime.convs conf/pam.std conf/snmp.conf
|
||||
$(RM) doc/help/ref-cupsd-conf.html doc/help/standard.html doc/index.html
|
||||
$(RM) conf/cups-files.conf conf/cupsd.conf
|
||||
$(RM) conf/mime.convs conf/pam.std conf/snmp.conf
|
||||
$(RM) doc/help/ref-cups-files-conf.html doc/help/ref-cupsd-conf.html
|
||||
$(RM) doc/help/standard.html doc/index.html
|
||||
$(RM) man/client.conf.man
|
||||
$(RM) man/cups-deviced.man man/cups-driverd.man
|
||||
$(RM) man/cups-lpd.man man/cupsaddsmb.man man/cupsd.man
|
||||
@@ -330,5 +332,5 @@ dist: all
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id$".
|
||||
# End of "$Id: Makefile 9391 2010-11-30 21:53:04Z mike $".
|
||||
#
|
||||
|
||||
+3
-4
@@ -1,8 +1,7 @@
|
||||
README - CUPS v1.6.1 - 2012-07-27
|
||||
README - CUPS v1.6.3 - 2013-07-11
|
||||
---------------------------------
|
||||
|
||||
Looking for compile instructions? Read the file "INSTALL.txt"
|
||||
instead...
|
||||
Looking for compile instructions? Read the file "INSTALL.txt" instead...
|
||||
|
||||
|
||||
INTRODUCTION
|
||||
@@ -150,7 +149,7 @@ PRINTING FILES
|
||||
|
||||
LEGAL STUFF
|
||||
|
||||
CUPS is Copyright 2007-2012 by Apple Inc. CUPS and the CUPS logo are
|
||||
CUPS is Copyright 2007-2013 by Apple Inc. CUPS and the CUPS logo are
|
||||
trademarks of Apple Inc.
|
||||
|
||||
The MD5 Digest code is Copyright 1999 Aladdin Enterprises.
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: Makefile 7924 2008-09-10 17:36:13Z mike $"
|
||||
#
|
||||
# Backend makefile for CUPS.
|
||||
#
|
||||
@@ -295,5 +295,5 @@ include Dependencies
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id$".
|
||||
# End of "$Id: Makefile 7924 2008-09-10 17:36:13Z mike $".
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: backend-private.h 7810 2008-07-29 01:11:15Z mike $"
|
||||
*
|
||||
* 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 7810 2008-07-29 01:11:15Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: dnssd.c 3833 2012-05-23 22:51:18Z msweet $"
|
||||
*
|
||||
* DNS-SD discovery backend for CUPS.
|
||||
*
|
||||
@@ -1276,5 +1276,5 @@ unquote(char *dst, /* I - Destination buffer */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: dnssd.c 3833 2012-05-23 22:51:18Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: ieee1284.c 7687 2008-06-24 01:28:36Z mike $"
|
||||
*
|
||||
* IEEE-1284 support functions for CUPS.
|
||||
*
|
||||
@@ -487,5 +487,5 @@ backendGetMakeModel(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: ieee1284.c 7687 2008-06-24 01:28:36Z mike $".
|
||||
*/
|
||||
|
||||
+144
-30
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: ipp.c 9759 2011-05-11 03:24:33Z mike $"
|
||||
*
|
||||
* IPP backend for CUPS.
|
||||
*
|
||||
* Copyright 2007-2012 by Apple Inc.
|
||||
* 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
|
||||
@@ -86,6 +86,7 @@ static int child_pid = 0; /* Child process ID */
|
||||
#endif /* HAVE_GSSAPI && HAVE_XPC */
|
||||
static const char * const jattrs[] = /* Job attributes we want */
|
||||
{
|
||||
"job-id",
|
||||
"job-impressions-completed",
|
||||
"job-media-sheets-completed",
|
||||
"job-name",
|
||||
@@ -99,8 +100,6 @@ static char username[256] = "",
|
||||
/* Username for device URI */
|
||||
*password = NULL;
|
||||
/* Password for device URI */
|
||||
static int password_tries = 0;
|
||||
/* Password tries */
|
||||
static const char * const pattrs[] = /* Printer attributes we want */
|
||||
{
|
||||
"copies-supported",
|
||||
@@ -165,7 +164,9 @@ static ipp_t *new_request(ipp_op_t op, int version, const char *uri,
|
||||
const char *format, _ppd_cache_t *pc,
|
||||
ipp_attribute_t *media_col_sup,
|
||||
ipp_attribute_t *doc_handling_sup);
|
||||
static const char *password_cb(const char *);
|
||||
static const char *password_cb(const char *prompt, http_t *http,
|
||||
const char *method, const char *resource,
|
||||
int *user_data);
|
||||
static void report_attr(ipp_attribute_t *attr);
|
||||
static void report_printer_state(ipp_t *ipp);
|
||||
#if defined(HAVE_GSSAPI) && defined(HAVE_XPC)
|
||||
@@ -202,7 +203,9 @@ main(int argc, /* I - Number of command-line args */
|
||||
*name, /* Name of option */
|
||||
*value, /* Value of option */
|
||||
sep; /* Separator character */
|
||||
int password_tries = 0; /* Password tries */
|
||||
http_addrlist_t *addrlist; /* Address of printer */
|
||||
int snmp_enabled = 1; /* Is SNMP enabled? */
|
||||
int snmp_fd, /* SNMP socket */
|
||||
start_count, /* Page count via SNMP at start */
|
||||
page_count, /* Page count via SNMP */
|
||||
@@ -404,7 +407,7 @@ main(int argc, /* I - Number of command-line args */
|
||||
if (!port)
|
||||
port = IPP_PORT; /* Default to port 631 */
|
||||
|
||||
if (!strcmp(scheme, "https"))
|
||||
if (!strcmp(scheme, "https") || !strcmp(scheme, "ipps"))
|
||||
cupsSetEncryption(HTTP_ENCRYPT_ALWAYS);
|
||||
else
|
||||
cupsSetEncryption(HTTP_ENCRYPT_IF_REQUESTED);
|
||||
@@ -508,6 +511,16 @@ main(int argc, /* I - Number of command-line args */
|
||||
value);
|
||||
}
|
||||
}
|
||||
else if (!_cups_strcasecmp(name, "snmp"))
|
||||
{
|
||||
/*
|
||||
* Enable/disable SNMP stuff...
|
||||
*/
|
||||
|
||||
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
|
||||
_cups_strcasecmp(value, "yes") ||
|
||||
_cups_strcasecmp(value, "true");
|
||||
}
|
||||
else if (!_cups_strcasecmp(name, "version"))
|
||||
{
|
||||
if (!strcmp(value, "1.0"))
|
||||
@@ -595,7 +608,7 @@ main(int argc, /* I - Number of command-line args */
|
||||
* Set the authentication info, if any...
|
||||
*/
|
||||
|
||||
cupsSetPasswordCB(password_cb);
|
||||
cupsSetPasswordCB2((cups_password_cb2_t)password_cb, &password_tries);
|
||||
|
||||
if (username[0])
|
||||
{
|
||||
@@ -659,11 +672,14 @@ main(int argc, /* I - Number of command-line args */
|
||||
* See if the printer supports SNMP...
|
||||
*/
|
||||
|
||||
if ((snmp_fd = _cupsSNMPOpen(addrlist->addr.addr.sa_family)) >= 0)
|
||||
{
|
||||
if (snmp_enabled)
|
||||
snmp_fd = _cupsSNMPOpen(addrlist->addr.addr.sa_family);
|
||||
else
|
||||
snmp_fd = -1;
|
||||
|
||||
if (snmp_fd >= 0)
|
||||
have_supplies = !backendSNMPSupplies(snmp_fd, &(addrlist->addr),
|
||||
&start_count, NULL);
|
||||
}
|
||||
else
|
||||
have_supplies = start_count = 0;
|
||||
|
||||
@@ -932,6 +948,8 @@ main(int argc, /* I - Number of command-line args */
|
||||
_cupsLangPrintFilter(stderr, "ERROR",
|
||||
_("Unable to get printer status."));
|
||||
sleep(10);
|
||||
|
||||
httpReconnect(http);
|
||||
}
|
||||
|
||||
ippDelete(supported);
|
||||
@@ -959,9 +977,15 @@ main(int argc, /* I - Number of command-line args */
|
||||
|
||||
if ((printer_state = ippFindAttribute(supported,
|
||||
"printer-state-reasons",
|
||||
IPP_TAG_KEYWORD)) != NULL && !busy)
|
||||
IPP_TAG_KEYWORD)) == NULL)
|
||||
{
|
||||
update_reasons(NULL, "+cups-ipp-conformance-failure-report,"
|
||||
"cups-ipp-missing-printer-state-reasons");
|
||||
}
|
||||
else if (!busy)
|
||||
{
|
||||
for (i = 0; i < printer_state->num_values; i ++)
|
||||
{
|
||||
if (!strcmp(printer_state->values[0].string.text,
|
||||
"spool-area-full") ||
|
||||
!strncmp(printer_state->values[0].string.text, "spool-area-full-",
|
||||
@@ -970,10 +994,8 @@ main(int argc, /* I - Number of command-line args */
|
||||
busy = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
update_reasons(NULL, "+cups-ipp-conformance-failure-report,"
|
||||
"cups-ipp-missing-printer-state-reasons");
|
||||
|
||||
if (busy)
|
||||
{
|
||||
@@ -1036,6 +1058,12 @@ main(int argc, /* I - Number of command-line args */
|
||||
if ((operations_sup = ippFindAttribute(supported, "operations-supported",
|
||||
IPP_TAG_ENUM)) != NULL)
|
||||
{
|
||||
fprintf(stderr, "DEBUG: operations-supported (%d values)\n",
|
||||
operations_sup->num_values);
|
||||
for (i = 0; i < operations_sup->num_values; i ++)
|
||||
fprintf(stderr, "DEBUG: [%d] = %s\n", i,
|
||||
ippOpString(operations_sup->values[i].integer));
|
||||
|
||||
for (i = 0; i < operations_sup->num_values; i ++)
|
||||
if (operations_sup->values[i].integer == IPP_PRINT_JOB)
|
||||
break;
|
||||
@@ -1258,6 +1286,17 @@ main(int argc, /* I - Number of command-line args */
|
||||
compatsize = fileinfo.st_size;
|
||||
}
|
||||
|
||||
/*
|
||||
* If the printer only claims to support IPP/1.0, or if the user specifically
|
||||
* included version=1.0 in the URI, then do not try to use Create-Job or
|
||||
* Send-Document. This is another dreaded compatibility hack, but
|
||||
* unfortunately there are enough broken printers out there that we need
|
||||
* this for now...
|
||||
*/
|
||||
|
||||
if (version == 10)
|
||||
create_job = send_document = 0;
|
||||
|
||||
/*
|
||||
* Start monitoring the printer in the background...
|
||||
*/
|
||||
@@ -1474,10 +1513,9 @@ main(int argc, /* I - Number of command-line args */
|
||||
goto cleanup;
|
||||
}
|
||||
}
|
||||
else if (ipp_status == IPP_ERROR_JOB_CANCELED)
|
||||
else if (ipp_status == IPP_ERROR_JOB_CANCELED ||
|
||||
ipp_status == IPP_NOT_AUTHORIZED)
|
||||
goto cleanup;
|
||||
else if (ipp_status == IPP_NOT_AUTHORIZED)
|
||||
continue;
|
||||
else
|
||||
{
|
||||
/*
|
||||
@@ -1578,6 +1616,10 @@ main(int argc, /* I - Number of command-line args */
|
||||
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_MIMETYPE,
|
||||
"document-format", NULL, document_format);
|
||||
|
||||
if (compression)
|
||||
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD,
|
||||
"compression", NULL, compression);
|
||||
|
||||
fprintf(stderr, "DEBUG: Sending file %d using chunking...\n", i + 1);
|
||||
http_status = cupsSendRequest(http, request, resource, 0);
|
||||
if (http_status == HTTP_CONTINUE && request->state == IPP_DATA)
|
||||
@@ -1653,15 +1695,72 @@ main(int argc, /* I - Number of command-line args */
|
||||
else if (ipp_status == IPP_SERVICE_UNAVAILABLE ||
|
||||
ipp_status == IPP_NOT_POSSIBLE ||
|
||||
ipp_status == IPP_PRINTER_BUSY)
|
||||
{
|
||||
if (argc == 6)
|
||||
{
|
||||
/*
|
||||
* Need to reprocess the entire job; if we have a job ID, cancel the
|
||||
* job first...
|
||||
*/
|
||||
|
||||
if (job_id > 0)
|
||||
cancel_job(http, uri, job_id, resource, argv[2], version);
|
||||
|
||||
goto cleanup;
|
||||
}
|
||||
continue;
|
||||
else if (ipp_status == IPP_REQUEST_VALUE)
|
||||
}
|
||||
else if (ipp_status == IPP_REQUEST_VALUE ||
|
||||
ipp_status == IPP_ERROR_JOB_CANCELED ||
|
||||
ipp_status == IPP_NOT_AUTHORIZED ||
|
||||
ipp_status == IPP_INTERNAL_ERROR)
|
||||
{
|
||||
/*
|
||||
* Print file is too large, abort this job...
|
||||
* Print file is too large, job was canceled, we need new
|
||||
* authentication data, or we had some sort of error...
|
||||
*/
|
||||
|
||||
goto cleanup;
|
||||
}
|
||||
else if (ipp_status == IPP_UPGRADE_REQUIRED)
|
||||
{
|
||||
/*
|
||||
* Server is configured incorrectly; the policy for Create-Job and
|
||||
* Send-Document has to be the same (auth or no auth, encryption or
|
||||
* no encryption). Force the queue to stop since printing will never
|
||||
* work.
|
||||
*/
|
||||
|
||||
fputs("DEBUG: The server or printer is configured incorrectly.\n",
|
||||
stderr);
|
||||
fputs("DEBUG: The policy for Create-Job and Send-Document must have the "
|
||||
"same authentication and encryption requirements.\n", stderr);
|
||||
|
||||
ipp_status = IPP_INTERNAL_ERROR;
|
||||
|
||||
if (job_id > 0)
|
||||
cancel_job(http, uri, job_id, resource, argv[2], version);
|
||||
|
||||
goto cleanup;
|
||||
}
|
||||
else if (ipp_status == IPP_NOT_FOUND)
|
||||
{
|
||||
/*
|
||||
* Printer does not actually implement support for Create-Job/
|
||||
* Send-Document, so log the conformance issue and stop the printer.
|
||||
*/
|
||||
|
||||
fputs("DEBUG: This printer claims to support Create-Job and "
|
||||
"Send-Document, but those operations failed.\n", stderr);
|
||||
fputs("DEBUG: Add '?version=1.0' to the device URI to use legacy "
|
||||
"compatibility mode.\n", stderr);
|
||||
update_reasons(NULL, "+cups-ipp-conformance-failure-report,"
|
||||
"cups-ipp-missing-send-document");
|
||||
|
||||
ipp_status = IPP_INTERNAL_ERROR; /* Force queue to stop */
|
||||
|
||||
goto cleanup;
|
||||
}
|
||||
else
|
||||
copies_remaining --;
|
||||
|
||||
@@ -1798,6 +1897,9 @@ main(int argc, /* I - Number of command-line args */
|
||||
|
||||
ippDelete(response);
|
||||
|
||||
if (cupsLastError() <= IPP_OK_CONFLICT)
|
||||
password_tries = 0;
|
||||
|
||||
/*
|
||||
* Wait before polling again...
|
||||
*/
|
||||
@@ -1821,12 +1923,16 @@ main(int argc, /* I - Number of command-line args */
|
||||
|
||||
check_printer_state(http, uri, resource, argv[2], version);
|
||||
|
||||
if (cupsLastError() <= IPP_OK_CONFLICT)
|
||||
password_tries = 0;
|
||||
|
||||
/*
|
||||
* Collect the final page count as needed...
|
||||
*/
|
||||
|
||||
if (have_supplies &&
|
||||
!backendSNMPSupplies(snmp_fd, http->hostaddr, &page_count, NULL) &&
|
||||
!backendSNMPSupplies(snmp_fd, &(http->addrlist->addr), &page_count,
|
||||
NULL) &&
|
||||
page_count > start_count)
|
||||
fprintf(stderr, "PAGE: total %d\n", page_count - start_count);
|
||||
|
||||
@@ -1995,9 +2101,6 @@ check_printer_state(
|
||||
fprintf(stderr, "DEBUG: Get-Printer-Attributes: %s (%s)\n",
|
||||
ippErrorString(cupsLastError()), cupsLastErrorString());
|
||||
|
||||
if (cupsLastError() <= IPP_OK_CONFLICT)
|
||||
password_tries = 0;
|
||||
|
||||
/*
|
||||
* Return the printer-state value...
|
||||
*/
|
||||
@@ -2096,6 +2199,7 @@ monitor_printer(
|
||||
const char *job_name; /* Job name */
|
||||
ipp_jstate_t job_state; /* Job state */
|
||||
const char *job_user; /* Job originating user name */
|
||||
int password_tries = 0; /* Password tries */
|
||||
|
||||
|
||||
/*
|
||||
@@ -2107,7 +2211,7 @@ monitor_printer(
|
||||
httpSetTimeout(http, 30.0, timeout_cb, NULL);
|
||||
if (username[0])
|
||||
cupsSetUser(username);
|
||||
cupsSetPasswordCB(password_cb);
|
||||
cupsSetPasswordCB2((cups_password_cb2_t)password_cb, &password_tries);
|
||||
|
||||
/*
|
||||
* Loop until the job is canceled, aborted, or completed.
|
||||
@@ -2131,6 +2235,8 @@ monitor_printer(
|
||||
monitor->resource,
|
||||
monitor->user,
|
||||
monitor->version);
|
||||
if (cupsLastError() <= IPP_OK_CONFLICT)
|
||||
password_tries = 0;
|
||||
|
||||
/*
|
||||
* Check the status of the job itself...
|
||||
@@ -2599,12 +2705,20 @@ new_request(
|
||||
*/
|
||||
|
||||
static const char * /* O - Password */
|
||||
password_cb(const char *prompt) /* I - Prompt (not used) */
|
||||
password_cb(const char *prompt, /* I - Prompt (not used) */
|
||||
http_t *http, /* I - Connection */
|
||||
const char *method, /* I - Request method (not used) */
|
||||
const char *resource, /* I - Resource path (not used) */
|
||||
int *password_tries) /* I - Password tries */
|
||||
{
|
||||
fprintf(stderr, "DEBUG: password_cb(prompt=\"%s\"), password=%p, "
|
||||
"password_tries=%d\n", prompt, password, password_tries);
|
||||
fprintf(stderr, "DEBUG: password_cb(prompt=\"%s\", http=%p, method=\"%s\", "
|
||||
"resource=\"%s\", password_tries=%p(%d)), password=%p\n",
|
||||
prompt, http, method, resource, password_tries, *password_tries,
|
||||
password);
|
||||
|
||||
(void)prompt;
|
||||
(void)method;
|
||||
(void)resource;
|
||||
|
||||
/*
|
||||
* Remember that we need to authenticate...
|
||||
@@ -2612,9 +2726,9 @@ password_cb(const char *prompt) /* I - Prompt (not used) */
|
||||
|
||||
auth_info_required = "username,password";
|
||||
|
||||
if (password && *password && password_tries < 3)
|
||||
if (password && *password && *password_tries < 3)
|
||||
{
|
||||
password_tries ++;
|
||||
(*password_tries) ++;
|
||||
|
||||
return (password);
|
||||
}
|
||||
@@ -3277,5 +3391,5 @@ update_reasons(ipp_attribute_t *attr, /* I - printer-state-reasons or NULL */
|
||||
}
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: ipp.c 9759 2011-05-11 03:24:33Z mike $".
|
||||
*/
|
||||
|
||||
+23
-6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: lpd.c 7740 2008-07-14 23:58:05Z mike $"
|
||||
*
|
||||
* Line Printer Daemon backend for CUPS.
|
||||
*
|
||||
@@ -126,6 +126,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
int port; /* Port number */
|
||||
char portname[256]; /* Port name (string) */
|
||||
http_addrlist_t *addrlist; /* List of addresses for printer */
|
||||
int snmp_enabled = 1; /* Is SNMP enabled? */
|
||||
int snmp_fd; /* SNMP socket */
|
||||
int fd; /* Print file */
|
||||
int status; /* Status of LPD job */
|
||||
@@ -356,7 +357,8 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
*/
|
||||
|
||||
if (!value[0] || !_cups_strcasecmp(value, "on") ||
|
||||
!_cups_strcasecmp(value, "yes") || !_cups_strcasecmp(value, "true") ||
|
||||
!_cups_strcasecmp(value, "yes") ||
|
||||
!_cups_strcasecmp(value, "true") ||
|
||||
!_cups_strcasecmp(value, "rfc1179"))
|
||||
reserve = RESERVE_RFC1179;
|
||||
else if (!_cups_strcasecmp(value, "any"))
|
||||
@@ -371,7 +373,8 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
*/
|
||||
|
||||
manual_copies = !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, "sanitize_title"))
|
||||
{
|
||||
@@ -380,7 +383,18 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
*/
|
||||
|
||||
sanitize_title = !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, "snmp"))
|
||||
{
|
||||
/*
|
||||
* Enable/disable SNMP stuff...
|
||||
*/
|
||||
|
||||
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
|
||||
_cups_strcasecmp(value, "yes") ||
|
||||
_cups_strcasecmp(value, "true");
|
||||
}
|
||||
else if (!_cups_strcasecmp(name, "timeout"))
|
||||
{
|
||||
@@ -428,7 +442,10 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
}
|
||||
}
|
||||
|
||||
snmp_fd = _cupsSNMPOpen(addrlist->addr.addr.sa_family);
|
||||
if (snmp_enabled)
|
||||
snmp_fd = _cupsSNMPOpen(addrlist->addr.addr.sa_family);
|
||||
else
|
||||
snmp_fd = -1;
|
||||
|
||||
/*
|
||||
* Wait for data from the filter...
|
||||
@@ -1314,5 +1331,5 @@ sigterm_handler(int sig) /* I - Signal */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: lpd.c 7740 2008-07-14 23:58:05Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: network.c 3755 2012-03-30 05:59:14Z msweet $"
|
||||
*
|
||||
* Common backend network APIs for CUPS.
|
||||
*
|
||||
@@ -322,5 +322,5 @@ backendNetworkSideCB(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: network.c 3755 2012-03-30 05:59:14Z msweet $".
|
||||
*/
|
||||
|
||||
Arquivo executável → Arquivo normal
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: runloop.c 9565 2011-02-23 00:08:08Z mike $"
|
||||
*
|
||||
* Common run loop APIs for CUPS backends.
|
||||
*
|
||||
@@ -539,5 +539,5 @@ backendWaitLoop(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: runloop.c 9565 2011-02-23 00:08:08Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: snmp-supplies.c 4298 2013-05-10 16:52:10Z 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
|
||||
@@ -163,7 +163,7 @@ static const int prtMarkerSuppliesSupplyUnit[] =
|
||||
sizeof(prtMarkerSuppliesSupplyUnit[0]));
|
||||
/* Offset to supply index */
|
||||
|
||||
static const backend_state_t const printer_states[] =
|
||||
static const backend_state_t printer_states[] =
|
||||
{
|
||||
/* { CUPS_TC_lowPaper, "media-low-report" }, */
|
||||
{ CUPS_TC_noPaper | CUPS_TC_inputTrayEmpty, "media-empty-warning" },
|
||||
@@ -180,7 +180,7 @@ static const backend_state_t const printer_states[] =
|
||||
{ CUPS_TC_outputFull, "output-area-full-warning" }
|
||||
};
|
||||
|
||||
static const backend_state_t const supply_states[] =
|
||||
static const backend_state_t supply_states[] =
|
||||
{
|
||||
{ CUPS_DEVELOPER_LOW, "developer-low-report" },
|
||||
{ CUPS_DEVELOPER_EMPTY, "developer-empty-warning" },
|
||||
@@ -1073,5 +1073,5 @@ utf16_to_utf8(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: snmp-supplies.c 4298 2013-05-10 16:52:10Z msweet $".
|
||||
*/
|
||||
|
||||
+11
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: snmp.c 7810 2008-07-29 01:11:15Z mike $"
|
||||
*
|
||||
* SNMP discovery backend for CUPS.
|
||||
*
|
||||
@@ -1025,6 +1025,11 @@ read_snmp_response(int fd) /* I - SNMP socket file descriptor */
|
||||
* Description is the IEEE-1284 device ID...
|
||||
*/
|
||||
|
||||
char *ptr; /* Pointer into device ID */
|
||||
|
||||
for (ptr = (char *)packet.object_value.string.bytes; *ptr; ptr ++)
|
||||
if (*ptr == '\n')
|
||||
*ptr = ';'; /* A lot of bad printers put a newline */
|
||||
if (!device->id)
|
||||
device->id = strdup((char *)packet.object_value.string.bytes);
|
||||
|
||||
@@ -1066,8 +1071,11 @@ read_snmp_response(int fd) /* I - SNMP socket file descriptor */
|
||||
*/
|
||||
|
||||
char make_model[256]; /* Make and model */
|
||||
char *ptr; /* Pointer into device ID */
|
||||
|
||||
|
||||
for (ptr = (char *)packet.object_value.string.bytes; *ptr; ptr ++)
|
||||
if (*ptr == '\n')
|
||||
*ptr = ';'; /* A lot of bad printers put a newline */
|
||||
if (device->id)
|
||||
free(device->id);
|
||||
|
||||
@@ -1383,5 +1391,5 @@ update_cache(snmp_cache_t *device, /* I - Device */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: snmp.c 7810 2008-07-29 01:11:15Z mike $".
|
||||
*/
|
||||
|
||||
+19
-5
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: socket.c 7881 2008-08-28 20:21:56Z mike $"
|
||||
*
|
||||
* AppSocket backend for CUPS.
|
||||
*
|
||||
@@ -87,6 +87,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
http_addrlist_t *addrlist, /* Address list */
|
||||
*addr; /* Connected address */
|
||||
char addrname[256]; /* Address name */
|
||||
int snmp_enabled = 1; /* Is SNMP enabled? */
|
||||
int snmp_fd, /* SNMP socket */
|
||||
start_count, /* Page count via SNMP at start */
|
||||
page_count, /* Page count via SNMP */
|
||||
@@ -246,6 +247,16 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
waiteof = !value[0] || !_cups_strcasecmp(value, "on") ||
|
||||
!_cups_strcasecmp(value, "yes") || !_cups_strcasecmp(value, "true");
|
||||
}
|
||||
else if (!_cups_strcasecmp(name, "snmp"))
|
||||
{
|
||||
/*
|
||||
* Enable/disable SNMP stuff...
|
||||
*/
|
||||
|
||||
snmp_enabled = !value[0] || !_cups_strcasecmp(value, "on") ||
|
||||
_cups_strcasecmp(value, "yes") ||
|
||||
_cups_strcasecmp(value, "true");
|
||||
}
|
||||
else if (!_cups_strcasecmp(name, "contimeout"))
|
||||
{
|
||||
/*
|
||||
@@ -286,11 +297,14 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */
|
||||
* See if the printer supports SNMP...
|
||||
*/
|
||||
|
||||
if ((snmp_fd = _cupsSNMPOpen(addrlist->addr.addr.sa_family)) >= 0)
|
||||
{
|
||||
if (snmp_enabled)
|
||||
snmp_fd = _cupsSNMPOpen(addrlist->addr.addr.sa_family);
|
||||
else
|
||||
snmp_fd = -1;
|
||||
|
||||
if (snmp_fd >= 0)
|
||||
have_supplies = !backendSNMPSupplies(snmp_fd, &(addrlist->addr),
|
||||
&start_count, NULL);
|
||||
}
|
||||
else
|
||||
have_supplies = start_count = 0;
|
||||
|
||||
@@ -521,5 +535,5 @@ wait_bc(int device_fd, /* I - Socket */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: socket.c 7881 2008-08-28 20:21:56Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: test1284.c 7465 2008-04-18 16:20:11Z mike $"
|
||||
*
|
||||
* 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 7465 2008-04-18 16:20:11Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: testbackend.c 3755 2012-03-30 05:59:14Z msweet $"
|
||||
*
|
||||
* Backend test program for CUPS.
|
||||
*
|
||||
@@ -672,5 +672,5 @@ walk_cb(const char *oid, /* I - OID */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: testbackend.c 3755 2012-03-30 05:59:14Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -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 $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: usb-darwin.c 7953 2008-09-17 01:43:19Z mike $"
|
||||
*
|
||||
* Copyright 2005-2012 Apple Inc. All rights reserved.
|
||||
*
|
||||
@@ -2265,5 +2265,5 @@ static void get_device_id(cups_sc_status_t *status,
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: usb-darwin.c 7953 2008-09-17 01:43:19Z mike $".
|
||||
*/
|
||||
|
||||
+127
-26
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: usb-libusb.c 10979 2013-05-13 17:39:19Z msweet $"
|
||||
*
|
||||
* LIBUSB interface code for CUPS.
|
||||
*
|
||||
* Copyright 2007-2012 by Apple Inc.
|
||||
* Copyright 2007-2013 by Apple Inc.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
* property of Apple Inc. and are protected by Federal copyright
|
||||
@@ -70,7 +70,7 @@ typedef struct usb_printer_s /**** USB Printer Data ****/
|
||||
read_endp, /* Read endpoint */
|
||||
protocol, /* Protocol: 1 = Uni-di, 2 = Bi-di. */
|
||||
usblp_attached, /* "usblp" kernel module attached? */
|
||||
opened_for_job; /* Set to 1 by print_device() */
|
||||
reset_after_job; /* Set to 1 by print_device() */
|
||||
unsigned int quirks; /* Quirks flags */
|
||||
struct libusb_device_handle *handle; /* Open handle to device */
|
||||
} usb_printer_t;
|
||||
@@ -122,6 +122,9 @@ struct quirk_printer_struct {
|
||||
#define USBLP_QUIRK_USB_INIT 0x2 /* needs vendor USB init string */
|
||||
#define USBLP_QUIRK_BAD_CLASS 0x4 /* descriptor uses vendor-specific
|
||||
Class or SubClass */
|
||||
#define USBLP_QUIRK_BLACKLIST 0x8 /* these printers do not conform to the USB print spec */
|
||||
#define USBLP_QUIRK_RESET 0x4000 /* After printing do a reset
|
||||
for clean-up */
|
||||
#define USBLP_QUIRK_NO_REATTACH 0x8000 /* After printing we cannot re-attach
|
||||
the usblp kernel module */
|
||||
|
||||
@@ -139,17 +142,96 @@ static const struct quirk_printer_struct quirk_printers[] = {
|
||||
{ 0x0409, 0xbef4, USBLP_QUIRK_BIDIR }, /* NEC Picty760 (HP OEM) */
|
||||
{ 0x0409, 0xf0be, USBLP_QUIRK_BIDIR }, /* NEC Picty920 (HP OEM) */
|
||||
{ 0x0409, 0xf1be, USBLP_QUIRK_BIDIR }, /* NEC Picty800 (HP OEM) */
|
||||
{ 0x043d, 0x00f3, USBLP_QUIRK_NO_REATTACH }, /* Lexmark International,
|
||||
Inc. (e250d), https://bugs.launchpad.net/bugs/1084164 */
|
||||
{ 0x0482, 0x0010, USBLP_QUIRK_BIDIR }, /* Kyocera Mita FS 820,
|
||||
by zut <kernel@zut.de> */
|
||||
{ 0x04a9, 0x1095, USBLP_QUIRK_BIDIR }, /* Canon, Inc. PIXMA iP6000D
|
||||
Printer, https://bugs.launchpad.net/bugs/1160638 */
|
||||
{ 0x04a9, 0x10a2, USBLP_QUIRK_BIDIR }, /* Canon, Inc. PIXMA iP4200
|
||||
Printer, http://www.cups.org/str.php?L4155 */
|
||||
{ 0x04a9, 0x10b6, USBLP_QUIRK_BIDIR }, /* Canon, Inc. PIXMA iP4300
|
||||
Printer, https://bugs.launchpad.net/bugs/1032385 */
|
||||
{ 0x04a9, 0x1721, USBLP_QUIRK_BIDIR }, /* Canon, Inc. MP210
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=847923#c53 */
|
||||
{ 0x04a9, 0x170c, USBLP_QUIRK_BIDIR }, /* Canon, Inc. MP500
|
||||
Printer, https://bugs.launchpad.net/bugs/1032456 */
|
||||
{ 0x04a9, 0x1717, USBLP_QUIRK_BIDIR }, /* Canon, Inc. MP510
|
||||
Printer, https://bugs.launchpad.net/bugs/1050009 */
|
||||
{ 0x04a9, 0x173d, USBLP_QUIRK_BIDIR }, /* Canon, Inc. MP550
|
||||
Printer, http://www.cups.org/str.php?L4155 */
|
||||
{ 0x04a9, 0x173e, USBLP_QUIRK_BIDIR }, /* Canon, Inc. MP560
|
||||
Printer, http://www.cups.org/str.php?L4155 */
|
||||
{ 0x04a9, 0x26a3, USBLP_QUIRK_NO_REATTACH }, /* Canon, Inc. MF4150
|
||||
Printer, https://bugs.launchpad.net/bugs/1160638 */
|
||||
{ 0x04f9, 0x001a, USBLP_QUIRK_NO_REATTACH }, /* Brother Industries, Ltd
|
||||
HL-1430 Laser Printer,
|
||||
https://bugs.launchpad.net/bugs/1038695 */
|
||||
{ 0x04f9, 0x000d, USBLP_QUIRK_BIDIR |
|
||||
USBLP_QUIRK_NO_REATTACH }, /* Brother Industries, Ltd
|
||||
HL-1440 Laser Printer */
|
||||
HL-1440 Laser Printer,
|
||||
https://bugs.launchpad.net/bugs/1000253 */
|
||||
{ 0x04f9, 0x000e, USBLP_QUIRK_BIDIR |
|
||||
USBLP_QUIRK_NO_REATTACH }, /* Brother Industries, Ltd
|
||||
HL-1450 Laser Printer,
|
||||
https://bugs.launchpad.net/bugs/1000253 */
|
||||
{ 0x06bc, 0x000b, USBLP_QUIRK_NO_REATTACH }, /* Oki Data Corp.
|
||||
Okipage 14ex Printer,
|
||||
https://bugs.launchpad.net/bugs/872483 */
|
||||
{ 0x06bc, 0x01c7, USBLP_QUIRK_NO_REATTACH }, /* Oki Data Corp. B410d,
|
||||
https://bugs.launchpad.net/bugs/872483 */
|
||||
{ 0x04b8, 0x0001, USBLP_QUIRK_BIDIR |
|
||||
USBLP_QUIRK_NO_REATTACH }, /* Seiko Epson Corp. Stylus Color 740 / Photo 750,
|
||||
http://bugs.debian.org/697970 */
|
||||
{ 0x04b8, 0x0005, USBLP_QUIRK_NO_REATTACH }, /* Seiko Epson Corp. Stylus Color 670,
|
||||
https://bugs.launchpad.net/bugs/872483 */
|
||||
{ 0x04b8, 0x0202, USBLP_QUIRK_BAD_CLASS }, /* Seiko Epson Receipt
|
||||
Printer M129C */
|
||||
{ 0x067b, 0x2305, USBLP_QUIRK_BIDIR |
|
||||
USBLP_QUIRK_NO_REATTACH },
|
||||
USBLP_QUIRK_NO_REATTACH |
|
||||
USBLP_QUIRK_RESET },
|
||||
/* Prolific Technology, Inc. PL2305 Parallel Port
|
||||
(USB -> Parallel adapter) */
|
||||
(USB -> Parallel adapter), https://bugs.launchpad.net/bugs/987485 */
|
||||
{ 0x0924, 0x3ce9, USBLP_QUIRK_NO_REATTACH }, /* Xerox Phaser 3124
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=867392 */
|
||||
{ 0x0924, 0x4293, USBLP_QUIRK_NO_REATTACH }, /* Xerox WorkCentre 3210
|
||||
https://bugs.launchpad.net/bugs/1102470 */
|
||||
{ 0x1a86, 0x7584, USBLP_QUIRK_NO_REATTACH }, /* QinHeng Electronics
|
||||
CH340S (USB -> Parallel adapter), https://bugs.launchpad.net/bugs/1000253 */
|
||||
{ 0x04e8, 0x0000, USBLP_QUIRK_RESET }, /* All Samsung devices,
|
||||
https://bugs.launchpad.net/bugs/1032456 */
|
||||
{ 0x0a5f, 0x0000, USBLP_QUIRK_BIDIR }, /* All Zebra devices,
|
||||
https://bugs.launchpad.net/bugs/1001028 */
|
||||
/* Canon */
|
||||
{ 0x04a9, 0x304a, USBLP_QUIRK_BLACKLIST }, /* Canon CP-10 */
|
||||
{ 0x04a9, 0x3063, USBLP_QUIRK_BLACKLIST }, /* Canon CP-100 */
|
||||
{ 0x04a9, 0x307c, USBLP_QUIRK_BLACKLIST }, /* Canon CP-200 */
|
||||
{ 0x04a9, 0x307d, USBLP_QUIRK_BLACKLIST }, /* Canon CP-300 */
|
||||
{ 0x04a9, 0x30bd, USBLP_QUIRK_BLACKLIST }, /* Canon CP-220 */
|
||||
{ 0x04a9, 0x30be, USBLP_QUIRK_BLACKLIST }, /* Canon CP-330 */
|
||||
{ 0x04a9, 0x30f6, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP400 */
|
||||
{ 0x04a9, 0x310b, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP600 */
|
||||
{ 0x04a9, 0x3127, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP710 */
|
||||
{ 0x04a9, 0x3128, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP510 */
|
||||
{ 0x04a9, 0x3141, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY ES1 */
|
||||
{ 0x04a9, 0x3142, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP730 */
|
||||
{ 0x04a9, 0x3143, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP720 */
|
||||
{ 0x04a9, 0x3170, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP750 */
|
||||
{ 0x04a9, 0x3171, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP740 */
|
||||
{ 0x04a9, 0x3185, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY ES2 */
|
||||
{ 0x04a9, 0x3186, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY ES20 */
|
||||
{ 0x04a9, 0x31aa, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP770 */
|
||||
{ 0x04a9, 0x31ab, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP760 */
|
||||
{ 0x04a9, 0x31b0, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY ES30 */
|
||||
{ 0x04a9, 0x31dd, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP780 */
|
||||
{ 0x04a9, 0x31ee, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY ES40 */
|
||||
{ 0x04a9, 0x3214, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP800 */
|
||||
{ 0x04a9, 0x3255, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP900 */
|
||||
{ 0x04a9, 0x3256, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP810 */
|
||||
{ 0x04a9, 0x30F5, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP500 */
|
||||
{ 0x04a9, 0x31AF, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY ES3 */
|
||||
{ 0x04a9, 0x31DD, USBLP_QUIRK_BLACKLIST }, /* Canon SELPHY CP780 */
|
||||
/* MISSING PIDs: CP520, CP530, CP790 */
|
||||
{ 0, 0 }
|
||||
};
|
||||
|
||||
@@ -256,7 +338,12 @@ print_device(const char *uri, /* I - Device URI */
|
||||
}
|
||||
|
||||
g.print_fd = print_fd;
|
||||
g.printer->opened_for_job = 1;
|
||||
|
||||
/*
|
||||
* Some devices need a reset after finishing a job, these devices are
|
||||
* marked with the USBLP_QUIRK_RESET quirk.
|
||||
*/
|
||||
g.printer->reset_after_job = (g.printer->quirks & USBLP_QUIRK_RESET ? 1 : 0);
|
||||
|
||||
/*
|
||||
* If we are printing data from a print driver on stdin, ignore SIGTERM
|
||||
@@ -639,10 +726,10 @@ print_device(const char *uri, /* I - Device URI */
|
||||
* If it didn't exit abort the pending read and wait an additional
|
||||
* second...
|
||||
*/
|
||||
|
||||
|
||||
if (!g.read_thread_done)
|
||||
{
|
||||
fputs("DEBUG: Read thread still active, aborting the pending read...\n",
|
||||
fputs("DEBUG: Read thread still active, aborting the pending read...\n",
|
||||
stderr);
|
||||
|
||||
g.wait_eof = 0;
|
||||
@@ -650,7 +737,7 @@ print_device(const char *uri, /* I - Device URI */
|
||||
gettimeofday(&tv, NULL);
|
||||
cond_timeout.tv_sec = tv.tv_sec + 1;
|
||||
cond_timeout.tv_nsec = tv.tv_usec * 1000;
|
||||
|
||||
|
||||
while (!g.read_thread_done)
|
||||
{
|
||||
if (pthread_cond_timedwait(&g.read_thread_cond, &g.read_thread_mutex,
|
||||
@@ -663,9 +750,6 @@ print_device(const char *uri, /* I - Device URI */
|
||||
pthread_mutex_unlock(&g.read_thread_mutex);
|
||||
}
|
||||
|
||||
if (print_fd)
|
||||
close(print_fd);
|
||||
|
||||
/*
|
||||
* Close the connection and input file and general clean up...
|
||||
*/
|
||||
@@ -725,7 +809,7 @@ close_device(usb_printer_t *printer) /* I - Printer */
|
||||
*/
|
||||
if (printer->origconf > 0 && printer->origconf != number2)
|
||||
{
|
||||
fprintf(stderr, "DEBUG: Restoring USB device configuration: %d -> %d\n",
|
||||
fprintf(stderr, "DEBUG: Restoring USB device configuration: %d -> %d\n",
|
||||
number2, printer->origconf);
|
||||
if ((errcode = libusb_set_configuration(printer->handle,
|
||||
printer->origconf)) < 0)
|
||||
@@ -772,7 +856,7 @@ close_device(usb_printer_t *printer) /* I - Printer */
|
||||
* Reset the device to clean up after the job
|
||||
*/
|
||||
|
||||
if (printer->opened_for_job == 1)
|
||||
if (printer->reset_after_job == 1)
|
||||
{
|
||||
if ((errcode = libusb_reset_device(printer->handle)) < 0)
|
||||
fprintf(stderr,
|
||||
@@ -815,7 +899,8 @@ find_device(usb_cb_t cb, /* I - Callback function */
|
||||
/* Pointer to current alternate setting */
|
||||
const struct libusb_endpoint_descriptor *endpptr = NULL;
|
||||
/* Pointer to current endpoint */
|
||||
ssize_t numdevs, /* number of connected devices */
|
||||
ssize_t err = 0, /* Error code */
|
||||
numdevs, /* number of connected devices */
|
||||
i = 0;
|
||||
uint8_t conf, /* Current configuration */
|
||||
iface, /* Current interface */
|
||||
@@ -834,7 +919,14 @@ find_device(usb_cb_t cb, /* I - Callback function */
|
||||
* Initialize libusb...
|
||||
*/
|
||||
|
||||
libusb_init(NULL);
|
||||
err = libusb_init(NULL);
|
||||
if (err)
|
||||
{
|
||||
fprintf(stderr, "DEBUG: Unable to initialize USB access via libusb, "
|
||||
"libusb error %i\n", err);
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
numdevs = libusb_get_device_list(NULL, &list);
|
||||
fprintf(stderr, "DEBUG: libusb_get_device_list=%d\n", (int)numdevs);
|
||||
|
||||
@@ -859,7 +951,14 @@ find_device(usb_cb_t cb, /* I - Callback function */
|
||||
!devdesc.idProduct)
|
||||
continue;
|
||||
|
||||
printer.quirks = quirks(devdesc.idVendor, devdesc.idProduct);
|
||||
printer.quirks = quirks(devdesc.idVendor, devdesc.idProduct);
|
||||
|
||||
/*
|
||||
* Ignore blacklisted printers...
|
||||
*/
|
||||
|
||||
if (printer.quirks & USBLP_QUIRK_BLACKLIST)
|
||||
continue;
|
||||
|
||||
for (conf = 0; conf < devdesc.bNumConfigurations; conf ++)
|
||||
{
|
||||
@@ -886,7 +985,7 @@ find_device(usb_cb_t cb, /* I - Callback function */
|
||||
*/
|
||||
|
||||
if (((altptr->bInterfaceClass != LIBUSB_CLASS_PRINTER ||
|
||||
altptr->bInterfaceSubClass != 1) &&
|
||||
altptr->bInterfaceSubClass != 1) &&
|
||||
((printer.quirks & USBLP_QUIRK_BAD_CLASS) == 0)) ||
|
||||
(altptr->bInterfaceProtocol != 1 && /* Unidirectional */
|
||||
altptr->bInterfaceProtocol != 2) || /* Bidirectional */
|
||||
@@ -964,7 +1063,7 @@ find_device(usb_cb_t cb, /* I - Callback function */
|
||||
bEndpointAddress;
|
||||
}
|
||||
else
|
||||
fprintf(stderr, "DEBUG: Uni-directional USB communication "
|
||||
fprintf(stderr, "DEBUG: Uni-directional USB communication "
|
||||
"only!\n");
|
||||
printer.write_endp = confptr->interface[printer.iface].
|
||||
altsetting[printer.altset].
|
||||
@@ -997,7 +1096,8 @@ find_device(usb_cb_t cb, /* I - Callback function */
|
||||
* Clean up ....
|
||||
*/
|
||||
|
||||
libusb_free_device_list(list, 1);
|
||||
if (numdevs >= 0)
|
||||
libusb_free_device_list(list, 1);
|
||||
libusb_exit(NULL);
|
||||
|
||||
return (NULL);
|
||||
@@ -1288,7 +1388,7 @@ open_device(usb_printer_t *printer, /* I - Printer */
|
||||
}
|
||||
|
||||
printer->usblp_attached = 0;
|
||||
printer->opened_for_job = 0;
|
||||
printer->reset_after_job = 0;
|
||||
|
||||
if (verbose)
|
||||
fputs("STATE: +connecting-to-device\n", stderr);
|
||||
@@ -1343,7 +1443,7 @@ open_device(usb_printer_t *printer, /* I - Printer */
|
||||
|
||||
printer->origconf = current;
|
||||
|
||||
if ((errcode =
|
||||
if ((errcode =
|
||||
libusb_get_config_descriptor (printer->device, printer->conf, &confptr))
|
||||
< 0)
|
||||
{
|
||||
@@ -1355,7 +1455,7 @@ open_device(usb_printer_t *printer, /* I - Printer */
|
||||
|
||||
if (number1 != current)
|
||||
{
|
||||
fprintf(stderr, "DEBUG: Switching USB device configuration: %d -> %d\n",
|
||||
fprintf(stderr, "DEBUG: Switching USB device configuration: %d -> %d\n",
|
||||
current, number1);
|
||||
if ((errcode = libusb_set_configuration(printer->handle, number1)) < 0)
|
||||
{
|
||||
@@ -1586,7 +1686,8 @@ static unsigned int quirks(int vendor, int product)
|
||||
for (i = 0; quirk_printers[i].vendorId; i++)
|
||||
{
|
||||
if (vendor == quirk_printers[i].vendorId &&
|
||||
product == quirk_printers[i].productId)
|
||||
(quirk_printers[i].productId == 0x0000 ||
|
||||
product == quirk_printers[i].productId))
|
||||
return quirk_printers[i].quirks;
|
||||
}
|
||||
return 0;
|
||||
@@ -1881,6 +1982,6 @@ static void soft_reset(void)
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: usb-libusb.c 10979 2013-05-13 17:39:19Z msweet $".
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: usb-unix.c 7810 2008-07-29 01:11:15Z mike $"
|
||||
*
|
||||
* USB port backend for CUPS.
|
||||
*
|
||||
@@ -613,5 +613,5 @@ side_cb(int print_fd, /* I - Print file */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: usb-unix.c 7810 2008-07-29 01:11:15Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: usb.c 7687 2008-06-24 01:28:36Z mike $"
|
||||
*
|
||||
* 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 7687 2008-06-24 01:28:36Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $"
|
||||
#
|
||||
# Berkeley commands makefile for CUPS.
|
||||
#
|
||||
@@ -163,5 +163,5 @@ include Dependencies
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id$".
|
||||
# End of "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $".
|
||||
#
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: lpc.c 7079 2007-11-30 01:58:31Z mike $"
|
||||
*
|
||||
* "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 7079 2007-11-30 01:58:31Z mike $".
|
||||
*/
|
||||
|
||||
+26
-25
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: lpq.c 7460 2008-04-16 02:19:54Z mike $"
|
||||
*
|
||||
* "lpq" command for CUPS.
|
||||
*
|
||||
* Copyright 2007-2012 by Apple Inc.
|
||||
* Copyright 2007-2013 by Apple Inc.
|
||||
* Copyright 1997-2006 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -60,8 +60,7 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
all, /* All printers */
|
||||
interval, /* Reporting interval */
|
||||
longstatus; /* Show file details */
|
||||
int num_dests; /* Number of destinations */
|
||||
cups_dest_t *dests; /* Destinations */
|
||||
cups_dest_t *named_dest; /* Named destination */
|
||||
|
||||
|
||||
_cupsSetLocale(argv);
|
||||
@@ -77,8 +76,6 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
interval = 0;
|
||||
longstatus = 0;
|
||||
all = 0;
|
||||
num_dests = 0;
|
||||
dests = NULL;
|
||||
|
||||
for (i = 1; i < argc; i ++)
|
||||
if (argv[i][0] == '+')
|
||||
@@ -127,7 +124,6 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
if (i >= argc)
|
||||
{
|
||||
httpClose(http);
|
||||
cupsFreeDests(num_dests, dests);
|
||||
|
||||
usage();
|
||||
}
|
||||
@@ -140,12 +136,14 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
http = connect_server(argv[0], http);
|
||||
|
||||
if (num_dests == 0)
|
||||
num_dests = cupsGetDests2(http, &dests);
|
||||
|
||||
if (cupsGetDest(dest, instance, num_dests, dests) == NULL)
|
||||
if ((named_dest = cupsGetNamedDest(http, dest, instance)) == NULL)
|
||||
{
|
||||
if (instance)
|
||||
if (cupsLastError() == IPP_BAD_REQUEST ||
|
||||
cupsLastError() == IPP_VERSION_NOT_SUPPORTED)
|
||||
_cupsLangPrintf(stderr,
|
||||
_("%s: Error - add '/version=1.1' to server "
|
||||
"name."), argv[0]);
|
||||
else if (instance)
|
||||
_cupsLangPrintf(stderr,
|
||||
_("%s: Error - unknown destination \"%s/%s\"."),
|
||||
argv[0], dest, instance);
|
||||
@@ -155,6 +153,8 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
return (1);
|
||||
}
|
||||
|
||||
cupsFreeDests(1, named_dest);
|
||||
break;
|
||||
|
||||
case 'a' : /* All printers */
|
||||
@@ -192,7 +192,6 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
default :
|
||||
httpClose(http);
|
||||
cupsFreeDests(num_dests, dests);
|
||||
|
||||
usage();
|
||||
break;
|
||||
@@ -207,15 +206,17 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
if (dest == NULL && !all)
|
||||
{
|
||||
if (num_dests == 0)
|
||||
num_dests = cupsGetDests2(http, &dests);
|
||||
|
||||
for (i = 0; i < num_dests; i ++)
|
||||
if (dests[i].is_default)
|
||||
dest = dests[i].name;
|
||||
|
||||
if (dest == NULL)
|
||||
if ((named_dest = cupsGetNamedDest(http, NULL, NULL)) == NULL)
|
||||
{
|
||||
if (cupsLastError() == IPP_BAD_REQUEST ||
|
||||
cupsLastError() == IPP_VERSION_NOT_SUPPORTED)
|
||||
{
|
||||
_cupsLangPrintf(stderr,
|
||||
_("%s: Error - add '/version=1.1' to server name."),
|
||||
argv[0]);
|
||||
return (1);
|
||||
}
|
||||
|
||||
val = NULL;
|
||||
|
||||
if ((dest = getenv("LPDEST")) == NULL)
|
||||
@@ -231,7 +232,7 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
else
|
||||
val = "LPDEST";
|
||||
|
||||
if (dest && !cupsGetDest(dest, NULL, num_dests, dests))
|
||||
if (dest && val)
|
||||
_cupsLangPrintf(stderr,
|
||||
_("%s: Error - %s environment variable names "
|
||||
"non-existent destination \"%s\"."), argv[0], val,
|
||||
@@ -241,9 +242,10 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
_("%s: Error - no default destination available."),
|
||||
argv[0]);
|
||||
httpClose(http);
|
||||
cupsFreeDests(num_dests, dests);
|
||||
return (1);
|
||||
}
|
||||
|
||||
dest = named_dest->name;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -270,7 +272,6 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
* Close the connection to the server and return...
|
||||
*/
|
||||
|
||||
cupsFreeDests(num_dests, dests);
|
||||
httpClose(http);
|
||||
|
||||
return (0);
|
||||
@@ -678,5 +679,5 @@ usage(void)
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: lpq.c 7460 2008-04-16 02:19:54Z mike $".
|
||||
*/
|
||||
|
||||
+21
-3
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: lpr.c 7720 2008-07-11 22:46:21Z mike $"
|
||||
*
|
||||
* "lpr" command for CUPS.
|
||||
*
|
||||
* Copyright 2007-2012 by Apple Inc.
|
||||
* Copyright 2007-2013 by Apple Inc.
|
||||
* Copyright 1997-2007 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -61,6 +61,7 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
for (i = 1; i < argc; i ++)
|
||||
if (argv[i][0] == '-')
|
||||
{
|
||||
switch (ch = argv[i][1])
|
||||
{
|
||||
case 'E' : /* Encrypt */
|
||||
@@ -226,6 +227,14 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
dest->options[j].value,
|
||||
num_options, &options);
|
||||
}
|
||||
else if (cupsLastError() == IPP_BAD_REQUEST ||
|
||||
cupsLastError() == IPP_VERSION_NOT_SUPPORTED)
|
||||
{
|
||||
_cupsLangPrintf(stderr,
|
||||
_("%s: Error - add '/version=1.1' to server "
|
||||
"name."), argv[0]);
|
||||
return (1);
|
||||
}
|
||||
break;
|
||||
|
||||
case '#' : /* Number of copies */
|
||||
@@ -275,6 +284,7 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
argv[i][1]);
|
||||
return (1);
|
||||
}
|
||||
}
|
||||
else if (num_files < 1000)
|
||||
{
|
||||
/*
|
||||
@@ -320,6 +330,14 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
dest->options[j].value,
|
||||
num_options, &options);
|
||||
}
|
||||
else if (cupsLastError() == IPP_BAD_REQUEST ||
|
||||
cupsLastError() == IPP_VERSION_NOT_SUPPORTED)
|
||||
{
|
||||
_cupsLangPrintf(stderr,
|
||||
_("%s: Error - add '/version=1.1' to server "
|
||||
"name."), argv[0]);
|
||||
return (1);
|
||||
}
|
||||
}
|
||||
|
||||
if (printer == NULL)
|
||||
@@ -418,5 +436,5 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: lpr.c 7720 2008-07-11 22:46:21Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: lprm.c 7261 2008-01-28 23:09:31Z mike $"
|
||||
*
|
||||
* "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 7261 2008-01-28 23:09:31Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $"
|
||||
#
|
||||
# CGI makefile for CUPS.
|
||||
#
|
||||
@@ -378,5 +378,5 @@ include Dependencies
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id$".
|
||||
# End of "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $".
|
||||
#
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: admin.c 8029 2008-10-08 21:07:45Z mike $"
|
||||
*
|
||||
* Administration CGI for CUPS.
|
||||
*
|
||||
@@ -4218,5 +4218,5 @@ get_points(double number, /* I - Original number */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: admin.c 8029 2008-10-08 21:07:45Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: cgi-private.h 7940 2008-09-16 00:45:16Z mike $"
|
||||
*
|
||||
* Private CGI definitions for CUPS.
|
||||
*
|
||||
@@ -32,5 +32,5 @@
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: cgi-private.h 7940 2008-09-16 00:45:16Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: cgi.h 6649 2007-07-11 21:46:42Z mike $"
|
||||
*
|
||||
* 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 6649 2007-07-11 21:46:42Z mike $".
|
||||
*/
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: classes.c 7940 2008-09-16 00:45:16Z mike $"
|
||||
*
|
||||
* Class status CGI for CUPS.
|
||||
*
|
||||
@@ -380,7 +380,7 @@ show_all_classes(http_t *http, /* I - Connection to server */
|
||||
sprintf(val, "%d", count);
|
||||
cgiSetVariable("TOTAL", val);
|
||||
|
||||
if ((var = cgiGetVariable("ORDER")) != NULL)
|
||||
if ((var = cgiGetVariable("ORDER")) != NULL && *var)
|
||||
ascending = !_cups_strcasecmp(var, "asc");
|
||||
else
|
||||
ascending = 1;
|
||||
@@ -554,5 +554,5 @@ show_class(http_t *http, /* I - Connection to server */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: classes.c 7940 2008-09-16 00:45:16Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: help-index.c 7717 2008-07-04 02:35:33Z mike $"
|
||||
*
|
||||
* 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 7717 2008-07-04 02:35:33Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: help-index.h 7615 2008-05-25 07:17:07Z mike $"
|
||||
*
|
||||
* 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 7615 2008-05-25 07:17:07Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: html.c 6649 2007-07-11 21:46:42Z mike $"
|
||||
*
|
||||
* 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 6649 2007-07-11 21:46:42Z mike $".
|
||||
*/
|
||||
|
||||
+8
-7
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: ipp-var.c 7940 2008-09-16 00:45:16Z mike $"
|
||||
*
|
||||
* CGI <-> IPP variable routines for CUPS.
|
||||
*
|
||||
@@ -554,8 +554,8 @@ cgiPrintCommand(http_t *http, /* I - Connection to server */
|
||||
ipp_t *request, /* Get-Job-Attributes request */
|
||||
*response; /* Get-Job-Attributes response */
|
||||
ipp_attribute_t *attr; /* Current job attribute */
|
||||
static const char const *job_attrs[] =/* Job attributes we want */
|
||||
{
|
||||
static const char * const job_attrs[] =
|
||||
{ /* Job attributes we want */
|
||||
"job-state",
|
||||
"job-printer-state-message"
|
||||
};
|
||||
@@ -1432,7 +1432,7 @@ cgiShowJobs(http_t *http, /* I - Connection to server */
|
||||
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI, "printer-uri", NULL,
|
||||
"ipp://localhost/");
|
||||
|
||||
if ((which_jobs = cgiGetVariable("which_jobs")) != NULL)
|
||||
if ((which_jobs = cgiGetVariable("which_jobs")) != NULL && *which_jobs)
|
||||
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_KEYWORD, "which-jobs",
|
||||
NULL, which_jobs);
|
||||
|
||||
@@ -1480,10 +1480,11 @@ cgiShowJobs(http_t *http, /* I - Connection to server */
|
||||
if (first < 0)
|
||||
first = 0;
|
||||
|
||||
if ((var = cgiGetVariable("ORDER")) != NULL)
|
||||
if ((var = cgiGetVariable("ORDER")) != NULL && *var)
|
||||
ascending = !_cups_strcasecmp(var, "asc");
|
||||
else
|
||||
ascending = !which_jobs || !_cups_strcasecmp(which_jobs, "not-completed");
|
||||
ascending = !which_jobs || !*which_jobs ||
|
||||
!_cups_strcasecmp(which_jobs, "not-completed");
|
||||
|
||||
section = cgiGetVariable("SECTION");
|
||||
|
||||
@@ -1588,5 +1589,5 @@ cgiText(const char *message) /* I - Message */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: ipp-var.c 7940 2008-09-16 00:45:16Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: jobs.c 7237 2008-01-22 01:38:39Z mike $"
|
||||
*
|
||||
* 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 7237 2008-01-22 01:38:39Z mike $".
|
||||
*/
|
||||
|
||||
@@ -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 $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: printers.c 7940 2008-09-16 00:45:16Z mike $"
|
||||
*
|
||||
* Printer status CGI for CUPS.
|
||||
*
|
||||
@@ -397,7 +397,7 @@ show_all_printers(http_t *http, /* I - Connection to server */
|
||||
sprintf(val, "%d", count);
|
||||
cgiSetVariable("TOTAL", val);
|
||||
|
||||
if ((var = cgiGetVariable("ORDER")) != NULL)
|
||||
if ((var = cgiGetVariable("ORDER")) != NULL && *var)
|
||||
ascending = !_cups_strcasecmp(var, "asc");
|
||||
else
|
||||
ascending = 1;
|
||||
@@ -574,5 +574,5 @@ show_printer(http_t *http, /* I - Connection to server */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: printers.c 7940 2008-09-16 00:45:16Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: search.c 7720 2008-07-11 22:46:21Z mike $"
|
||||
*
|
||||
* Search routines for CUPS.
|
||||
*
|
||||
@@ -377,5 +377,5 @@ cgiFreeSearch(void *search) /* I - Search context */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: search.c 7720 2008-07-11 22:46:21Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: template.c 7219 2008-01-14 22:00:02Z mike $"
|
||||
*
|
||||
* CGI template function.
|
||||
*
|
||||
@@ -729,5 +729,5 @@ cgi_puturi(const char *s, /* I - String to output */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: template.c 7219 2008-01-14 22:00:02Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: testcgi.c 6649 2007-07-11 21:46:42Z mike $"
|
||||
*
|
||||
* 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 6649 2007-07-11 21:46:42Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: testhi.c 6649 2007-07-11 21:46:42Z mike $"
|
||||
*
|
||||
* 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 6649 2007-07-11 21:46:42Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: testtemplate.c 6649 2007-07-11 21:46:42Z mike $"
|
||||
*
|
||||
* 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 6649 2007-07-11 21:46:42Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: var.c 7460 2008-04-16 02:19:54Z mike $"
|
||||
*
|
||||
* CGI form variable and array functions for CUPS.
|
||||
*
|
||||
@@ -1307,5 +1307,5 @@ cgi_unlink_file(void)
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: var.c 7460 2008-04-16 02:19:54Z mike $".
|
||||
*/
|
||||
|
||||
@@ -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 $".
|
||||
*/
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: Makefile 7938 2008-09-11 23:53:59Z mike $"
|
||||
#
|
||||
# Configuration file makefile for CUPS.
|
||||
#
|
||||
@@ -19,7 +19,7 @@ include ../Makedefs
|
||||
# Config files...
|
||||
#
|
||||
|
||||
KEEP = cupsd.conf snmp.conf
|
||||
KEEP = cups-files.conf cupsd.conf snmp.conf
|
||||
REPLACE = mime.convs mime.types
|
||||
|
||||
|
||||
@@ -139,5 +139,5 @@ uninstall:
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id$".
|
||||
# End of "$Id: Makefile 7938 2008-09-11 23:53:59Z mike $".
|
||||
#
|
||||
|
||||
@@ -0,0 +1,98 @@
|
||||
#
|
||||
# "$Id: cups-files.conf.in 4185 2013-02-20 02:19:13Z msweet $"
|
||||
#
|
||||
# Sample file/directory/user/group configuration file for the CUPS scheduler.
|
||||
# See "man cups-files.conf" for a complete description of this file.
|
||||
#
|
||||
|
||||
# List of events that are considered fatal errors for the scheduler...
|
||||
#FatalErrors @CUPS_FATAL_ERRORS@
|
||||
|
||||
# Default user and group for filters/backends/helper programs; this cannot be
|
||||
# any user or group that resolves to ID 0 for security reasons...
|
||||
#User @CUPS_USER@
|
||||
#Group @CUPS_GROUP@
|
||||
|
||||
# Administrator user group, used to match @SYSTEM in cupsd.conf policy rules...
|
||||
SystemGroup @CUPS_SYSTEM_GROUPS@
|
||||
@CUPS_SYSTEM_AUTHKEY@
|
||||
|
||||
# User that is substituted for unauthenticated (remote) root accesses...
|
||||
#RemoteRoot remroot
|
||||
|
||||
# Do we allow file: device URIs other than to /dev/null?
|
||||
#FileDevice No
|
||||
|
||||
# Permissions for configuration and log files...
|
||||
#ConfigFilePerm 0@CUPS_CONFIG_FILE_PERM@
|
||||
#LogFilePerm 0@CUPS_LOG_FILE_PERM@
|
||||
|
||||
# Location of the file logging all access to the scheduler; may be the name
|
||||
# "syslog". If not an absolute path, the value of ServerRoot is used as the
|
||||
# root directory. Also see the "AccessLogLevel" directive in cupsd.conf.
|
||||
AccessLog @CUPS_LOGDIR@/access_log
|
||||
|
||||
# Location of cache files used by the scheduler...
|
||||
#CacheDir @CUPS_CACHEDIR@
|
||||
|
||||
# Location of data files used by the scheduler...
|
||||
#DataDir @CUPS_DATADIR@
|
||||
|
||||
# Location of the static web content served by the scheduler...
|
||||
#DocumentRoot @CUPS_DOCROOT@
|
||||
|
||||
# Location of the file logging all messages produced by the scheduler and any
|
||||
# helper programs; may be the name "syslog". If not an absolute path, the value
|
||||
# of ServerRoot is used as the root directory. Also see the "LogLevel"
|
||||
# directive in cupsd.conf.
|
||||
ErrorLog @CUPS_LOGDIR@/error_log
|
||||
|
||||
# Location of fonts used by older print filters...
|
||||
#FontPath @CUPS_FONTPATH@
|
||||
|
||||
# Location of LPD configuration
|
||||
#LPDConfigFile @CUPS_DEFAULT_LPD_CONFIG_FILE@
|
||||
|
||||
# Location of the file logging all pages printed by the scheduler and any
|
||||
# helper programs; may be the name "syslog". If not an absolute path, the value
|
||||
# of ServerRoot is used as the root directory. Also see the "PageLogFormat"
|
||||
# directive in cupsd.conf.
|
||||
PageLog @CUPS_LOGDIR@/page_log
|
||||
|
||||
# Location of the file listing all of the local printers...
|
||||
#Printcap @CUPS_DEFAULT_PRINTCAP@
|
||||
|
||||
# Format of the Printcap file...
|
||||
#PrintcapFormat bsd
|
||||
#PrintcapFormat plist
|
||||
#PrintcapFormat solaris
|
||||
|
||||
# Location of all spool files...
|
||||
#RequestRoot @CUPS_REQUESTS@
|
||||
|
||||
# Location of helper programs...
|
||||
#ServerBin @CUPS_SERVERBIN@
|
||||
|
||||
# SSL/TLS certificate for the scheduler...
|
||||
#ServerCertificate @CUPS_SERVERCERT@
|
||||
|
||||
# SSL/TLS private key for the scheduler...
|
||||
#ServerKey @CUPS_SERVERKEY@
|
||||
|
||||
# Location of other configuration files...
|
||||
#ServerRoot @CUPS_SERVERROOT@
|
||||
|
||||
# Location of Samba configuration file...
|
||||
#SMBConfigFile @CUPS_DEFAULT_SMB_CONFIG_FILE@
|
||||
|
||||
# Location of scheduler state files...
|
||||
#StateDir @CUPS_STATEDIR@
|
||||
|
||||
# Location of scheduler/helper temporary files. This directory is emptied on
|
||||
# scheduler startup and cannot be one of the standard (public) temporary
|
||||
# directory locations for security reasons...
|
||||
#TempDir @CUPS_REQUESTS@/tmp
|
||||
|
||||
#
|
||||
# End of "$Id: cups-files.conf.in 4185 2013-02-20 02:19:13Z msweet $".
|
||||
#
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: cupsd.conf.in 7888 2008-08-29 21:16:56Z mike $"
|
||||
#
|
||||
# Sample configuration file for the CUPS scheduler. See "man cupsd.conf" for a
|
||||
# complete description of this file.
|
||||
@@ -9,18 +9,12 @@
|
||||
# for troubleshooting...
|
||||
LogLevel @CUPS_LOG_LEVEL@
|
||||
|
||||
# Administrator user group...
|
||||
SystemGroup @CUPS_SYSTEM_GROUPS@
|
||||
@CUPS_SYSTEM_AUTHKEY@
|
||||
|
||||
# Only listen for connections from the local machine.
|
||||
Listen localhost:@DEFAULT_IPP_PORT@
|
||||
@CUPS_LISTEN_DOMAINSOCKET@
|
||||
|
||||
# Show shared printers on the local network.
|
||||
Browsing On
|
||||
BrowseOrder allow,deny
|
||||
BrowseAllow all
|
||||
BrowseLocalProtocols @CUPS_BROWSE_LOCAL_PROTOCOLS@
|
||||
|
||||
# Default authentication type, when authentication is required...
|
||||
@@ -136,5 +130,5 @@ WebInterface @CUPS_WEBIF@
|
||||
</Policy>
|
||||
|
||||
#
|
||||
# End of "$Id$".
|
||||
# End of "$Id: cupsd.conf.in 7888 2008-08-29 21:16:56Z mike $".
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: mime.convs.in 6761 2007-08-02 17:58:59Z mike $"
|
||||
#
|
||||
# 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 6761 2007-08-02 17:58:59Z mike $".
|
||||
#
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id: mime.types 9871 2011-08-06 06:34:46Z mike $"
|
||||
# "$Id: mime.types 7670 2008-06-17 22:42:08Z mike $"
|
||||
#
|
||||
# Base MIME types file for CUPS.
|
||||
#
|
||||
@@ -170,5 +170,5 @@ application/vnd.cups-raw (string(0,<1B>E) + !string(2,<1B>%0B)) \
|
||||
application/octet-stream
|
||||
|
||||
#
|
||||
# End of "$Id: mime.types 9871 2011-08-06 06:34:46Z mike $".
|
||||
# End of "$Id: mime.types 7670 2008-06-17 22:42:08Z mike $".
|
||||
#
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
dnl
|
||||
dnl "$Id: cups-common.m4 10553 2012-07-27 17:57:34Z mike $"
|
||||
dnl "$Id: cups-common.m4 8781 2009-08-28 17:34:54Z mike $"
|
||||
dnl
|
||||
dnl Common configuration stuff for CUPS.
|
||||
dnl
|
||||
dnl Copyright 2007-2012 by Apple Inc.
|
||||
dnl Copyright 2007-2013 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
|
||||
@@ -20,7 +20,7 @@ dnl Set the name of the config header file...
|
||||
AC_CONFIG_HEADER(config.h)
|
||||
|
||||
dnl Version number information...
|
||||
CUPS_VERSION="1.6.1"
|
||||
CUPS_VERSION="1.6.3"
|
||||
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'`"
|
||||
@@ -44,9 +44,9 @@ LDFLAGS="${LDFLAGS:=}"
|
||||
|
||||
dnl Checks for programs...
|
||||
AC_PROG_AWK
|
||||
AC_PROG_CC
|
||||
AC_PROG_CC(clang cc gcc)
|
||||
AC_PROG_CPP
|
||||
AC_PROG_CXX
|
||||
AC_PROG_CXX(clang++ c++ g++)
|
||||
AC_PROG_RANLIB
|
||||
AC_PATH_PROG(AR,ar)
|
||||
AC_PATH_PROG(CHMOD,chmod)
|
||||
@@ -130,6 +130,7 @@ AC_CHECK_HEADER(crypt.h,AC_DEFINE(HAVE_CRYPT_H))
|
||||
AC_CHECK_HEADER(langinfo.h,AC_DEFINE(HAVE_LANGINFO_H))
|
||||
AC_CHECK_HEADER(malloc.h,AC_DEFINE(HAVE_MALLOC_H))
|
||||
AC_CHECK_HEADER(shadow.h,AC_DEFINE(HAVE_SHADOW_H))
|
||||
AC_CHECK_HEADER(stdint.h,AC_DEFINE(HAVE_STDINT_H))
|
||||
AC_CHECK_HEADER(string.h,AC_DEFINE(HAVE_STRING_H))
|
||||
AC_CHECK_HEADER(strings.h,AC_DEFINE(HAVE_STRINGS_H))
|
||||
AC_CHECK_HEADER(bstring.h,AC_DEFINE(HAVE_BSTRING_H))
|
||||
@@ -336,6 +337,7 @@ AC_SUBST(DBUS_NOTIFIERLIBS)
|
||||
|
||||
dnl Extra platform-specific libraries...
|
||||
CUPS_DEFAULT_PRINTOPERATOR_AUTH="@SYSTEM"
|
||||
CUPS_DEFAULT_SYSTEM_AUTHKEY=""
|
||||
CUPS_SYSTEM_AUTHKEY=""
|
||||
INSTALLXPC=""
|
||||
|
||||
@@ -383,10 +385,13 @@ case $uname in
|
||||
|
||||
if test "x$default_adminkey" != xdefault; then
|
||||
CUPS_SYSTEM_AUTHKEY="SystemGroupAuthKey $default_adminkey"
|
||||
CUPS_DEFAULT_SYSTEM_AUTHKEY="$default_adminkey"
|
||||
elif grep -q system.print.operator /etc/authorization; then
|
||||
CUPS_SYSTEM_AUTHKEY="SystemGroupAuthKey system.print.admin"
|
||||
CUPS_DEFAULT_SYSTEM_AUTHKEY="system.print.admin"
|
||||
else
|
||||
CUPS_SYSTEM_AUTHKEY="SystemGroupAuthKey system.preferences"
|
||||
CUPS_DEFAULT_SYSTEM_AUTHKEY="system.preferences"
|
||||
fi
|
||||
|
||||
if test "x$default_operkey" != xdefault; then
|
||||
@@ -402,8 +407,8 @@ case $uname in
|
||||
if test $uversion -ge 100; then
|
||||
AC_CHECK_HEADER(sandbox.h,AC_DEFINE(HAVE_SANDBOX_H))
|
||||
fi
|
||||
if test $uversion -ge 110; then
|
||||
# Broken public headers in 10.7...
|
||||
if test $uversion -ge 110 -a $uversion -lt 120; then
|
||||
# Broken public headers in 10.7.x...
|
||||
AC_MSG_CHECKING(for sandbox/private.h presence)
|
||||
if test -f /usr/local/include/sandbox/private.h; then
|
||||
AC_MSG_RESULT(yes)
|
||||
@@ -424,6 +429,7 @@ esac
|
||||
|
||||
AC_SUBST(CUPS_DEFAULT_PRINTOPERATOR_AUTH)
|
||||
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_PRINTOPERATOR_AUTH, "$CUPS_DEFAULT_PRINTOPERATOR_AUTH")
|
||||
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_SYSTEM_AUTHKEY, "$CUPS_DEFAULT_SYSTEM_AUTHKEY")
|
||||
AC_SUBST(CUPS_SYSTEM_AUTHKEY)
|
||||
AC_SUBST(INSTALLXPC)
|
||||
|
||||
@@ -452,5 +458,5 @@ esac
|
||||
AC_SUBST(BUILDDIRS)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-common.m4 10553 2012-07-27 17:57:34Z mike $".
|
||||
dnl End of "$Id: cups-common.m4 8781 2009-08-28 17:34:54Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-compiler.m4 10190 2012-01-20 16:22:58Z mike $"
|
||||
dnl "$Id: cups-compiler.m4 7871 2008-08-27 21:12:43Z mike $"
|
||||
dnl
|
||||
dnl Compiler stuff for CUPS.
|
||||
dnl
|
||||
@@ -295,5 +295,5 @@ case $uname in
|
||||
esac
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-compiler.m4 10190 2012-01-20 16:22:58Z mike $".
|
||||
dnl End of "$Id: cups-compiler.m4 7871 2008-08-27 21:12:43Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-defaults.m4 10424 2012-04-23 17:26:57Z mike $"
|
||||
dnl "$Id: cups-defaults.m4 7959 2008-09-17 19:30:58Z mike $"
|
||||
dnl
|
||||
dnl Default cupsd configuration settings for CUPS.
|
||||
dnl
|
||||
@@ -305,6 +305,7 @@ else
|
||||
fi
|
||||
|
||||
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LPD_CONFIG_FILE, "$CUPS_DEFAULT_LPD_CONFIG_FILE")
|
||||
AC_SUBST(CUPS_DEFAULT_LPD_CONFIG_FILE)
|
||||
|
||||
dnl Default SMB config file...
|
||||
AC_ARG_WITH(smbconfigfile, [ --with-smbconfigfile set default SMBConfigFile URI],
|
||||
@@ -326,6 +327,7 @@ else
|
||||
fi
|
||||
|
||||
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_SMB_CONFIG_FILE, "$CUPS_DEFAULT_SMB_CONFIG_FILE")
|
||||
AC_SUBST(CUPS_DEFAULT_SMB_CONFIG_FILE)
|
||||
|
||||
dnl Default MaxCopies value...
|
||||
AC_ARG_WITH(max-copies, [ --with-max-copies set default max copies value, default=9999 ],
|
||||
@@ -398,5 +400,5 @@ AC_SUBST(CUPS_WEBIF)
|
||||
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_WEBIF, $CUPS_DEFAULT_WEBIF)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-defaults.m4 10424 2012-04-23 17:26:57Z mike $".
|
||||
dnl End of "$Id: cups-defaults.m4 7959 2008-09-17 19:30:58Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-directories.m4 10424 2012-04-23 17:26:57Z mike $"
|
||||
dnl "$Id: cups-directories.m4 7799 2008-07-25 20:06:08Z mike $"
|
||||
dnl
|
||||
dnl Directory stuff for CUPS.
|
||||
dnl
|
||||
@@ -106,7 +106,7 @@ if test "$libdir" = "\${exec_prefix}/lib"; then
|
||||
libdir="$exec_prefix/lib32"
|
||||
;;
|
||||
Linux*)
|
||||
if test -d /usr/lib64; then
|
||||
if test -d /usr/lib64 -a ! -d /usr/lib64/fakeroot; then
|
||||
libdir="$exec_prefix/lib64"
|
||||
fi
|
||||
;;
|
||||
@@ -436,5 +436,5 @@ AC_DEFINE_UNQUOTED(CUPS_STATEDIR, "$CUPS_STATEDIR")
|
||||
AC_SUBST(CUPS_STATEDIR)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-directories.m4 10424 2012-04-23 17:26:57Z mike $".
|
||||
dnl End of "$Id: cups-directories.m4 7799 2008-07-25 20:06:08Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-dnssd.m4 10471 2012-05-16 22:57:03Z mike $"
|
||||
dnl "$Id: cups-dnssd.m4 7890 2008-08-29 22:19:39Z mike $"
|
||||
dnl
|
||||
dnl DNS Service Discovery (aka Bonjour) stuff for CUPS.
|
||||
dnl
|
||||
@@ -72,5 +72,5 @@ AC_SUBST(DNSSDLIBS)
|
||||
AC_SUBST(DNSSD_BACKEND)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-dnssd.m4 10471 2012-05-16 22:57:03Z mike $".
|
||||
dnl End of "$Id: cups-dnssd.m4 7890 2008-08-29 22:19:39Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-gssapi.m4 10424 2012-04-23 17:26:57Z mike $"
|
||||
dnl "$Id$"
|
||||
dnl
|
||||
dnl GSSAPI/Kerberos library detection for CUPS.
|
||||
dnl
|
||||
@@ -86,13 +86,6 @@ if test x$enable_gssapi != xno; then
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
AC_MSG_CHECKING(for GSS/gssapi_krb5.h presence)
|
||||
if test -f $gssdir/Headers/gssapi_krb5.h; then
|
||||
AC_DEFINE(HAVE_GSSAPI_KRB5_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)
|
||||
@@ -105,16 +98,14 @@ if test x$enable_gssapi != xno; then
|
||||
fi
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
if test $uversion -ge 110; then
|
||||
# Broken public headers in 10.7...
|
||||
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
|
||||
else
|
||||
AC_CHECK_HEADER(gssapi.h, AC_DEFINE(HAVE_GSSAPI_H))
|
||||
AC_CHECK_HEADER(gssapi/gssapi.h, AC_DEFINE(HAVE_GSSAPI_GSSAPI_H))
|
||||
AC_CHECK_HEADER(gssapi/gssapi_generic.h, AC_DEFINE(HAVE_GSSAPI_GENERIC_H))
|
||||
AC_CHECK_HEADER(gssapi/gssapi_krb5.h, AC_DEFINE(HAVE_GSSAPI_KRB5_H))
|
||||
fi
|
||||
|
||||
SAVELIBS="$LIBS"
|
||||
@@ -167,5 +158,5 @@ AC_SUBST(CUPS_DEFAULT_GSSSERVICENAME)
|
||||
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_GSSSERVICENAME, "$CUPS_DEFAULT_GSSSERVICENAME")
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-gssapi.m4 10424 2012-04-23 17:26:57Z mike $".
|
||||
dnl End of "$Id$".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-largefile.m4 9771 2011-05-12 05:21:56Z mike $"
|
||||
dnl "$Id: cups-largefile.m4 6649 2007-07-11 21:46:42Z mike $"
|
||||
dnl
|
||||
dnl Large file support stuff for CUPS.
|
||||
dnl
|
||||
@@ -48,5 +48,5 @@ fi
|
||||
AC_CHECK_FUNC(strtoll, AC_DEFINE(HAVE_STRTOLL))
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-largefile.m4 9771 2011-05-12 05:21:56Z mike $".
|
||||
dnl End of "$Id: cups-largefile.m4 6649 2007-07-11 21:46:42Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-launchd.m4 8983 2010-02-13 02:20:23Z mike $"
|
||||
dnl "$Id: cups-launchd.m4 6649 2007-07-11 21:46:42Z mike $"
|
||||
dnl
|
||||
dnl launchd stuff for CUPS.
|
||||
dnl
|
||||
@@ -39,5 +39,5 @@ AC_SUBST(DEFAULT_LAUNCHD_CONF)
|
||||
AC_SUBST(LAUNCHDLIBS)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-launchd.m4 8983 2010-02-13 02:20:23Z mike $".
|
||||
dnl End of "$Id: cups-launchd.m4 6649 2007-07-11 21:46:42Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-libtool.m4 9771 2011-05-12 05:21:56Z mike $"
|
||||
dnl "$Id: cups-libtool.m4 6649 2007-07-11 21:46:42Z mike $"
|
||||
dnl
|
||||
dnl Libtool stuff for CUPS.
|
||||
dnl
|
||||
@@ -35,5 +35,5 @@ if test x$LIBTOOL != x; then
|
||||
fi
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-libtool.m4 9771 2011-05-12 05:21:56Z mike $".
|
||||
dnl End of "$Id: cups-libtool.m4 6649 2007-07-11 21:46:42Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-manpages.m4 10424 2012-04-23 17:26:57Z mike $"
|
||||
dnl "$Id: cups-manpages.m4 6649 2007-07-11 21:46:42Z mike $"
|
||||
dnl
|
||||
dnl Manpage stuff for CUPS.
|
||||
dnl
|
||||
@@ -92,5 +92,5 @@ AC_SUBST(MAN8EXT)
|
||||
AC_SUBST(MAN8DIR)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-manpages.m4 10424 2012-04-23 17:26:57Z mike $".
|
||||
dnl End of "$Id: cups-manpages.m4 6649 2007-07-11 21:46:42Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-network.m4 9771 2011-05-12 05:21:56Z mike $"
|
||||
dnl "$Id: cups-network.m4 7918 2008-09-08 22:03:01Z mike $"
|
||||
dnl
|
||||
dnl Networking stuff for CUPS.
|
||||
dnl
|
||||
@@ -70,5 +70,5 @@ AC_CHECK_HEADERS(AppleTalk/at_proto.h,AC_DEFINE(HAVE_APPLETALK_AT_PROTO_H),,
|
||||
[#include <netat/appletalk.h>])
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-network.m4 9771 2011-05-12 05:21:56Z mike $".
|
||||
dnl End of "$Id: cups-network.m4 7918 2008-09-08 22:03:01Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-opsys.m4 9771 2011-05-12 05:21:56Z mike $"
|
||||
dnl "$Id: cups-opsys.m4 6649 2007-07-11 21:46:42Z mike $"
|
||||
dnl
|
||||
dnl Operating system stuff for CUPS.
|
||||
dnl
|
||||
@@ -31,5 +31,5 @@ case "$uname" in
|
||||
esac
|
||||
|
||||
dnl
|
||||
dnl "$Id: cups-opsys.m4 9771 2011-05-12 05:21:56Z mike $"
|
||||
dnl "$Id: cups-opsys.m4 6649 2007-07-11 21:46:42Z mike $"
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-pam.m4 10424 2012-04-23 17:26:57Z mike $"
|
||||
dnl "$Id: cups-pam.m4 7960 2008-09-17 19:42:02Z mike $"
|
||||
dnl
|
||||
dnl PAM stuff for CUPS.
|
||||
dnl
|
||||
@@ -98,5 +98,5 @@ AC_SUBST(PAMMOD)
|
||||
AC_SUBST(PAMMODAUTH)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-pam.m4 10424 2012-04-23 17:26:57Z mike $".
|
||||
dnl End of "$Id: cups-pam.m4 7960 2008-09-17 19:42:02Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-poll.m4 9771 2011-05-12 05:21:56Z mike $"
|
||||
dnl "$Id$"
|
||||
dnl
|
||||
dnl Select/poll stuff for CUPS.
|
||||
dnl
|
||||
@@ -18,5 +18,5 @@ AC_CHECK_FUNC(epoll_create, AC_DEFINE(HAVE_EPOLL))
|
||||
AC_CHECK_FUNC(kqueue, AC_DEFINE(HAVE_KQUEUE))
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-poll.m4 9771 2011-05-12 05:21:56Z mike $".
|
||||
dnl End of "$Id$".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-scripting.m4 9927 2011-08-27 09:28:30Z mike $"
|
||||
dnl "$Id: cups-scripting.m4 7915 2008-09-07 22:18:29Z mike $"
|
||||
dnl
|
||||
dnl Scripting configuration stuff for CUPS.
|
||||
dnl
|
||||
@@ -85,5 +85,5 @@ if test "x$CUPS_PYTHON" != x; then
|
||||
fi
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-scripting.m4 9927 2011-08-27 09:28:30Z mike $".
|
||||
dnl End of "$Id: cups-scripting.m4 7915 2008-09-07 22:18:29Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-sharedlibs.m4 10190 2012-01-20 16:22:58Z mike $"
|
||||
dnl "$Id: cups-sharedlibs.m4 7630 2008-06-09 22:31:44Z mike $"
|
||||
dnl
|
||||
dnl Shared library support for CUPS.
|
||||
dnl
|
||||
@@ -234,5 +234,5 @@ AC_SUBST(IMGLIBS)
|
||||
AC_SUBST(EXPORT_LDFLAGS)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-sharedlibs.m4 10190 2012-01-20 16:22:58Z mike $".
|
||||
dnl End of "$Id: cups-sharedlibs.m4 7630 2008-06-09 22:31:44Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-ssl.m4 10521 2012-06-15 22:23:24Z mike $"
|
||||
dnl "$Id: cups-ssl.m4 7241 2008-01-22 22:34:52Z mike $"
|
||||
dnl
|
||||
dnl OpenSSL/GNUTLS stuff for CUPS.
|
||||
dnl
|
||||
@@ -27,6 +27,8 @@ AC_ARG_WITH(openssl-includes, [ --with-openssl-includes set directory for OpenS
|
||||
SSLFLAGS=""
|
||||
SSLLIBS=""
|
||||
have_ssl=0
|
||||
CUPS_SERVERCERT=""
|
||||
CUPS_SERVERKEY=""
|
||||
|
||||
if test x$enable_ssl != xno; then
|
||||
dnl Look for CDSA...
|
||||
@@ -36,6 +38,7 @@ if test x$enable_ssl != xno; then
|
||||
have_ssl=1
|
||||
AC_DEFINE(HAVE_SSL)
|
||||
AC_DEFINE(HAVE_CDSASSL)
|
||||
CUPS_SERVERCERT="/Library/Keychains/System.keychain"
|
||||
|
||||
dnl Check for the various security headers...
|
||||
AC_CHECK_HEADER(Security/SecureTransportPriv.h,
|
||||
@@ -106,6 +109,9 @@ if test x$enable_ssl != xno; then
|
||||
fi
|
||||
|
||||
if test $have_ssl = 1; then
|
||||
CUPS_SERVERCERT="ssl/server.crt"
|
||||
CUPS_SERVERKEY="ssl/server.key"
|
||||
|
||||
if $PKGCONFIG --exists gcrypt; then
|
||||
SSLLIBS="$SSLLIBS `$PKGCONFIG --libs gcrypt`"
|
||||
SSLFLAGS="$SSLFLAGS `$PKGCONFIG --cflags gcrypt`"
|
||||
@@ -148,6 +154,9 @@ if test x$enable_ssl != xno; then
|
||||
done
|
||||
|
||||
if test "x${SSLLIBS}" != "x"; then
|
||||
CUPS_SERVERCERT="ssl/server.crt"
|
||||
CUPS_SERVERKEY="ssl/server.key"
|
||||
|
||||
LIBS="$SAVELIBS $SSLLIBS"
|
||||
AC_CHECK_FUNCS(SSL_set_tlsext_host_name)
|
||||
fi
|
||||
@@ -165,6 +174,8 @@ elif test x$enable_cdsa = xyes -o x$enable_gnutls = xyes -o x$enable_openssl = x
|
||||
AC_MSG_ERROR([Unable to enable SSL support.])
|
||||
fi
|
||||
|
||||
AC_SUBST(CUPS_SERVERCERT)
|
||||
AC_SUBST(CUPS_SERVERKEY)
|
||||
AC_SUBST(IPPALIASES)
|
||||
AC_SUBST(SSLFLAGS)
|
||||
AC_SUBST(SSLLIBS)
|
||||
@@ -173,5 +184,5 @@ EXPORT_SSLLIBS="$SSLLIBS"
|
||||
AC_SUBST(EXPORT_SSLLIBS)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-ssl.m4 10521 2012-06-15 22:23:24Z mike $".
|
||||
dnl End of "$Id: cups-ssl.m4 7241 2008-01-22 22:34:52Z mike $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-threads.m4 9771 2011-05-12 05:21:56Z mike $"
|
||||
dnl "$Id: cups-threads.m4 6649 2007-07-11 21:46:42Z mike $"
|
||||
dnl
|
||||
dnl Threading stuff for CUPS.
|
||||
dnl
|
||||
@@ -50,5 +50,5 @@ fi
|
||||
AC_SUBST(PTHREAD_FLAGS)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-threads.m4 9771 2011-05-12 05:21:56Z mike $".
|
||||
dnl End of "$Id: cups-threads.m4 6649 2007-07-11 21:46:42Z mike $".
|
||||
dnl
|
||||
|
||||
+10
-5
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: config.h.in 7918 2008-09-08 22:03:01Z mike $"
|
||||
*
|
||||
* Configuration file for CUPS.
|
||||
*
|
||||
@@ -32,6 +32,7 @@
|
||||
#define CUPS_DEFAULT_GROUP "sys"
|
||||
#define CUPS_DEFAULT_SYSTEM_GROUPS "sys root system"
|
||||
#define CUPS_DEFAULT_PRINTOPERATOR_AUTH "@SYSTEM"
|
||||
#define CUPS_DEFAULT_SYSTEM_AUTHKEY "system.print.admin"
|
||||
|
||||
|
||||
/*
|
||||
@@ -174,6 +175,13 @@
|
||||
#undef HAVE_SCSI_SG_H
|
||||
|
||||
|
||||
/*
|
||||
* Use <stdint.h>?
|
||||
*/
|
||||
|
||||
#undef HAVE_STDINT_H
|
||||
|
||||
|
||||
/*
|
||||
* Use <string.h>, <strings.h>, and/or <bstring.h>?
|
||||
*/
|
||||
@@ -575,11 +583,8 @@
|
||||
#undef HAVE_GSS_GSSAPI_H
|
||||
#undef HAVE_GSS_GSSAPI_SPI_H
|
||||
#undef HAVE_GSSAPI
|
||||
#undef HAVE_GSSAPI_GENERIC_H
|
||||
#undef HAVE_GSSAPI_GSSAPI_H
|
||||
#undef HAVE_GSSAPI_H
|
||||
#undef HAVE_GSSAPI_KRB5_H
|
||||
#undef HAVE_KRB5_H
|
||||
|
||||
|
||||
/*
|
||||
@@ -738,5 +743,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 7918 2008-09-08 22:03:01Z mike $".
|
||||
*/
|
||||
|
||||
+6
-3
@@ -1,9 +1,9 @@
|
||||
dnl
|
||||
dnl "$Id$"
|
||||
dnl "$Id: configure.in 7833 2008-08-04 20:55:13Z mike $"
|
||||
dnl
|
||||
dnl Configuration script for CUPS.
|
||||
dnl
|
||||
dnl Copyright 2007-2012 by Apple Inc.
|
||||
dnl Copyright 2007-2013 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
|
||||
@@ -60,6 +60,7 @@ AC_SUBST(INSTALL_LANGUAGES)
|
||||
AC_SUBST(UNINSTALL_LANGUAGES)
|
||||
|
||||
AC_OUTPUT(Makedefs
|
||||
conf/cups-files.conf
|
||||
conf/cupsd.conf
|
||||
conf/mime.convs
|
||||
conf/pam.std
|
||||
@@ -67,12 +68,14 @@ AC_OUTPUT(Makedefs
|
||||
cups-config
|
||||
data/testprint
|
||||
desktop/cups.desktop
|
||||
doc/help/ref-cups-files-conf.html
|
||||
doc/help/ref-cupsd-conf.html
|
||||
doc/help/standard.html
|
||||
doc/index.html
|
||||
man/client.conf.man
|
||||
man/cups-deviced.man
|
||||
man/cups-driverd.man
|
||||
man/cups-files.conf.man
|
||||
man/cups-lpd.man
|
||||
man/cups-snmp.man
|
||||
man/cupsaddsmb.man
|
||||
@@ -90,5 +93,5 @@ AC_OUTPUT(Makedefs
|
||||
chmod +x cups-config
|
||||
|
||||
dnl
|
||||
dnl End of "$Id$".
|
||||
dnl End of "$Id: configure.in 7833 2008-08-04 20:55:13Z mike $".
|
||||
dnl
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: cups-config.in 9926 2011-08-27 09:23:01Z mike $"
|
||||
#
|
||||
# CUPS configuration utility.
|
||||
#
|
||||
@@ -142,5 +142,5 @@ while test $# -gt 0; do
|
||||
done
|
||||
|
||||
#
|
||||
# End of "$Id$".
|
||||
# End of "$Id: cups-config.in 9926 2011-08-27 09:23:01Z mike $".
|
||||
#
|
||||
|
||||
+12
-4
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id$"
|
||||
# "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $"
|
||||
#
|
||||
# API library Makefile for CUPS.
|
||||
#
|
||||
@@ -192,6 +192,14 @@ depend:
|
||||
$(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
|
||||
|
||||
|
||||
#
|
||||
# Run oclint to check code coverage...
|
||||
#
|
||||
|
||||
oclint:
|
||||
oclint -o=oclint.html -html $(LIBOBJS:.o=.c) -- $(ALL_CFLAGS)
|
||||
|
||||
|
||||
#
|
||||
# Install all targets...
|
||||
#
|
||||
@@ -518,7 +526,7 @@ apihelp:
|
||||
--css ../doc/cups-printable.css \
|
||||
--header api-cups.header --intro api-cups.shtml \
|
||||
api-cups.xml \
|
||||
cups.h adminutil.c dest.c language.c notify.c \
|
||||
cups.h adminutil.c dest*.c language.c notify.c \
|
||||
options.c tempfile.c usersys.c \
|
||||
util.c >../doc/help/api-cups.html
|
||||
mxmldoc --tokens help/api-cups.html api-cups.xml >../doc/help/api-cups.tokens
|
||||
@@ -573,7 +581,7 @@ framedhelp:
|
||||
--section "Programming" --title "CUPS API" \
|
||||
--css ../doc/cups-printable.css \
|
||||
--header api-cups.header --intro api-cups.shtml \
|
||||
cups.h adminutil.c dest.c language.c notify.c \
|
||||
cups.h adminutil.c dest*.c language.c notify.c \
|
||||
options.c tempfile.c usersys.c \
|
||||
util.c
|
||||
mxmldoc --framed api-filedir \
|
||||
@@ -621,5 +629,5 @@ include Dependencies
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id$".
|
||||
# End of "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $".
|
||||
#
|
||||
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: adminutil.c 7850 2008-08-20 00:07:25Z mike $"
|
||||
*
|
||||
* Administration utility API definitions for CUPS.
|
||||
*
|
||||
@@ -65,7 +65,7 @@ static void write_option(cups_file_t *dstfp, int order,
|
||||
/*
|
||||
* 'cupsAdminCreateWindowsPPD()' - Create the Windows PPD file for a printer.
|
||||
*
|
||||
* @since CUPS 1.2/OS X 10.5@
|
||||
* @deprecated@
|
||||
*/
|
||||
|
||||
char * /* O - PPD file or NULL */
|
||||
@@ -393,7 +393,7 @@ cupsAdminCreateWindowsPPD(
|
||||
/*
|
||||
* 'cupsAdminExportSamba()' - Export a printer to Samba.
|
||||
*
|
||||
* @since CUPS 1.2/OS X 10.5@
|
||||
* @deprecated@
|
||||
*/
|
||||
|
||||
int /* O - 1 on success, 0 on failure */
|
||||
@@ -2337,5 +2337,5 @@ write_option(cups_file_t *dstfp, /* I - PPD file */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: adminutil.c 7850 2008-08-20 00:07:25Z mike $".
|
||||
*/
|
||||
|
||||
+10
-7
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: adminutil.h 7026 2007-10-19 00:57:45Z mike $"
|
||||
*
|
||||
* Administration utility API definitions for CUPS.
|
||||
*
|
||||
* Copyright 2007-2011 by Apple Inc.
|
||||
* Copyright 2007-2012 by Apple Inc.
|
||||
* Copyright 2001-2007 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -55,16 +55,19 @@ extern int cupsAdminExportSamba(const char *dest, const char *ppd,
|
||||
const char *samba_server,
|
||||
const char *samba_user,
|
||||
const char *samba_password,
|
||||
FILE *logfile) _CUPS_API_1_2;
|
||||
FILE *logfile) _CUPS_DEPRECATED;
|
||||
extern char *cupsAdminCreateWindowsPPD(http_t *http, const char *dest,
|
||||
char *buffer, int bufsize) _CUPS_API_1_2;
|
||||
char *buffer, int bufsize)
|
||||
_CUPS_DEPRECATED;
|
||||
|
||||
extern int cupsAdminGetServerSettings(http_t *http,
|
||||
int *num_settings,
|
||||
cups_option_t **settings) _CUPS_API_1_3;
|
||||
cups_option_t **settings)
|
||||
_CUPS_API_1_3;
|
||||
extern int cupsAdminSetServerSettings(http_t *http,
|
||||
int num_settings,
|
||||
cups_option_t *settings) _CUPS_API_1_3;
|
||||
cups_option_t *settings)
|
||||
_CUPS_API_1_3;
|
||||
|
||||
|
||||
# ifdef __cplusplus
|
||||
@@ -74,5 +77,5 @@ extern int cupsAdminSetServerSettings(http_t *http,
|
||||
#endif /* !_CUPS_ADMINUTIL_H_ */
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: adminutil.h 7026 2007-10-19 00:57:45Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-array.header 9771 2011-05-12 05:21:56Z mike $"
|
||||
"$Id: api-array.header 7266 2008-01-29 02:15:29Z mike $"
|
||||
|
||||
Array API header for CUPS.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-array.shtml 9727 2011-04-28 21:20:12Z mike $"
|
||||
"$Id: api-array.shtml 7616 2008-05-28 00:34:13Z mike $"
|
||||
|
||||
Array API introduction for CUPS.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-cups.header 9771 2011-05-12 05:21:56Z mike $"
|
||||
"$Id: api-cups.header 7279 2008-01-31 01:50:44Z mike $"
|
||||
|
||||
CUPS API header for CUPS.
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<!--
|
||||
"$Id: api-cups.shtml 9727 2011-04-28 21:20:12Z mike $"
|
||||
"$Id: api-cups.shtml 7337 2008-02-22 04:44:04Z mike $"
|
||||
|
||||
API introduction for CUPS.
|
||||
|
||||
Copyright 2007-2011 by Apple Inc.
|
||||
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
|
||||
@@ -183,7 +183,7 @@ int num_options = 0;
|
||||
<a href='#cups_option_t'>cups_option_t</a> *options = NULL;
|
||||
<a href='#cups_dest_t'>cups_dest_t</a> *dest;
|
||||
|
||||
for (i = 0; i < dest->num_options; i ++)
|
||||
for (i = 0; i < dest->num_options; i ++)
|
||||
num_options = <a href='#cupsAddOption'>cupsAddOption</a>(dest->options[i].name, dest->options[i].value,
|
||||
num_options, &options);
|
||||
</pre>
|
||||
@@ -235,7 +235,7 @@ job_id = <a href='#cupsPrintFiles'>cupsPrintFiles</a>(dest->name, 3, files, "Tes
|
||||
|
||||
<p>Finally, the <a href='#cupsCreateJob'><code>cupsCreateJob</code></a>
|
||||
function creates a new job with no files in it. Files are added using the
|
||||
<a href='#cupsStartDocument'><code>cupsStartDocument</code></a>,
|
||||
<a href='#cupsStartDocument'><code>cupsStartDocument</code></a>,
|
||||
<a href='api-httpipp.html#cupsWriteRequestData'><code>cupsWriteRequestData</code></a>,
|
||||
and <a href='#cupsFinishDocument'><code>cupsFinishDocument</code></a> functions.
|
||||
The following example creates a job with 10 text files for printing:</p>
|
||||
@@ -299,7 +299,7 @@ int num_jobs;
|
||||
<a href='#cups_job_t'>cups_job_t</a> *jobs;
|
||||
int i;
|
||||
ipp_jstate_t job_state = IPP_JOB_PENDING;
|
||||
|
||||
|
||||
while (job_state < IPP_JOB_STOPPED)
|
||||
{
|
||||
/* Get my jobs (1) with any state (-1) */
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-filedir.header 9771 2011-05-12 05:21:56Z mike $"
|
||||
"$Id: api-filedir.header 7279 2008-01-31 01:50:44Z mike $"
|
||||
|
||||
File and Directory API header for CUPS.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-filedir.shtml 9727 2011-04-28 21:20:12Z mike $"
|
||||
"$Id: api-filedir.shtml 7279 2008-01-31 01:50:44Z mike $"
|
||||
|
||||
File and directory API introduction for CUPS.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-filter.header 9771 2011-05-12 05:21:56Z mike $"
|
||||
"$Id: api-filter.header 7616 2008-05-28 00:34:13Z mike $"
|
||||
|
||||
Filter and backend programming header for CUPS.
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<!--
|
||||
"$Id: api-filter.shtml 10424 2012-04-23 17:26:57Z mike $"
|
||||
"$Id: api-filter.shtml 7677 2008-06-19 23:22:19Z mike $"
|
||||
|
||||
Filter and backend programming introduction for CUPS.
|
||||
|
||||
Copyright 2007-2012 by Apple Inc.
|
||||
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
|
||||
@@ -488,7 +488,7 @@ from localizing the vendor-prefixed keyword in the PPD file - otherwise both
|
||||
the generic and vendor-specific keyword will be shown in the user
|
||||
interface.</p>
|
||||
|
||||
</blockquote></dd>
|
||||
</blockquote>
|
||||
|
||||
<h4><a name="REPORTING_SUPPLIES">Reporting Supply Levels</a></h4>
|
||||
|
||||
@@ -613,7 +613,7 @@ datalen = sizeof(data) - 1;
|
||||
status = <a href="#cupsSideChannelDoRequest">cupsSideChannelDoRequest</a>(CUPS_SC_CMD_GET_DEVICE_ID, data, &datalen, 1.0);
|
||||
|
||||
/* Use the returned value if OK was returned and the length is non-zero */
|
||||
if (status == CUPS_SC_STATUS_OK && datalen > 0)
|
||||
if (status == CUPS_SC_STATUS_OK && datalen > 0)
|
||||
data[datalen] = '\0';
|
||||
else
|
||||
data[0] = '\0';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-httpipp.header 9771 2011-05-12 05:21:56Z mike $"
|
||||
"$Id: api-httpipp.header 7258 2008-01-28 00:15:05Z mike $"
|
||||
|
||||
HTTP and IPP API header for CUPS.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-httpipp.shtml 10388 2012-03-26 21:15:41Z mike $"
|
||||
"$Id: api-httpipp.shtml 7684 2008-06-23 16:47:38Z mike $"
|
||||
|
||||
HTTP and IPP API introduction for CUPS.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-ppd.header 10424 2012-04-23 17:26:57Z mike $"
|
||||
"$Id: api-ppd.header 7616 2008-05-28 00:34:13Z mike $"
|
||||
|
||||
PPD API header for CUPS.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
"$Id: api-ppd.shtml 10424 2012-04-23 17:26:57Z mike $"
|
||||
"$Id: api-ppd.shtml 7616 2008-05-28 00:34:13Z mike $"
|
||||
|
||||
PPD API introduction for CUPS.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: array-private.h 3448 2011-10-04 06:53:26Z msweet $"
|
||||
*
|
||||
* Private array definitions for CUPS.
|
||||
*
|
||||
@@ -47,5 +47,5 @@ extern cups_array_t *_cupsArrayNewStrings(const char *s) _CUPS_API_1_5;
|
||||
#endif /* !_CUPS_ARRAY_PRIVATE_H_ */
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: array-private.h 3448 2011-10-04 06:53:26Z msweet $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: array.c 7616 2008-05-28 00:34:13Z mike $"
|
||||
*
|
||||
* Sorted array routines for CUPS.
|
||||
*
|
||||
@@ -1322,5 +1322,5 @@ cups_array_find(cups_array_t *a, /* I - Array */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: array.c 7616 2008-05-28 00:34:13Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: array.h 7266 2008-01-29 02:15:29Z mike $"
|
||||
*
|
||||
* 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 7266 2008-01-29 02:15:29Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: attr.c 7584 2008-05-16 22:55:53Z mike $"
|
||||
*
|
||||
* PPD model-specific attribute routines for CUPS.
|
||||
*
|
||||
@@ -331,5 +331,5 @@ _ppdNormalizeMakeAndModel(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: attr.c 7584 2008-05-16 22:55:53Z mike $".
|
||||
*/
|
||||
|
||||
+18
-13
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: auth.c 7720 2008-07-11 22:46:21Z mike $"
|
||||
*
|
||||
* Authentication functions for CUPS.
|
||||
*
|
||||
* Copyright 2007-2012 by Apple Inc.
|
||||
* Copyright 2007-2013 by Apple Inc.
|
||||
* Copyright 1997-2007 by Easy Software Products.
|
||||
*
|
||||
* This file contains Kerberos support code, copyright 2006 by
|
||||
@@ -660,8 +660,7 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
|
||||
int pid; /* Current process ID */
|
||||
FILE *fp; /* Certificate file */
|
||||
char trc[16], /* Try Root Certificate parameter */
|
||||
filename[1024], /* Certificate filename */
|
||||
certificate[33];/* Certificate string */
|
||||
filename[1024]; /* Certificate filename */
|
||||
_cups_globals_t *cg = _cupsGlobals(); /* Global data */
|
||||
# if defined(HAVE_AUTHORIZATION_H)
|
||||
OSStatus status; /* Status */
|
||||
@@ -855,19 +854,25 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
|
||||
* Read the certificate from the file...
|
||||
*/
|
||||
|
||||
fgets(certificate, sizeof(certificate), fp);
|
||||
char certificate[33], /* Certificate string */
|
||||
*certptr; /* Pointer to certificate string */
|
||||
|
||||
certptr = fgets(certificate, sizeof(certificate), fp);
|
||||
fclose(fp);
|
||||
|
||||
/*
|
||||
* Set the authorization string and return...
|
||||
*/
|
||||
if (certptr)
|
||||
{
|
||||
/*
|
||||
* Set the authorization string and return...
|
||||
*/
|
||||
|
||||
httpSetAuthString(http, "Local", certificate);
|
||||
httpSetAuthString(http, "Local", certificate);
|
||||
|
||||
DEBUG_printf(("8cups_local_auth: Returning authstring=\"%s\"",
|
||||
http->authstring));
|
||||
DEBUG_printf(("8cups_local_auth: Returning authstring=\"%s\"",
|
||||
http->authstring));
|
||||
|
||||
return (0);
|
||||
return (0);
|
||||
}
|
||||
}
|
||||
|
||||
return (1);
|
||||
@@ -876,5 +881,5 @@ cups_local_auth(http_t *http) /* I - HTTP connection to server */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: auth.c 7720 2008-07-11 22:46:21Z mike $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: backchannel.c 7616 2008-05-28 00:34:13Z mike $"
|
||||
*
|
||||
* 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 7616 2008-05-28 00:34:13Z mike $".
|
||||
*/
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: backend.c 7810 2008-07-29 01:11:15Z mike $"
|
||||
*
|
||||
* Backend functions for CUPS.
|
||||
*
|
||||
@@ -136,7 +136,7 @@ quote_string(const char *s) /* I - String to write */
|
||||
if (*s == '\\' || *s == '\"')
|
||||
putchar('\\');
|
||||
|
||||
if (*s == '\n')
|
||||
if (((*s & 255) < ' ' && *s != '\t') || *s == 0x7f)
|
||||
putchar(' ');
|
||||
else
|
||||
putchar(*s);
|
||||
@@ -150,5 +150,5 @@ quote_string(const char *s) /* I - String to write */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: backend.c 7810 2008-07-29 01:11:15Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: backend.h 7810 2008-07-29 01:11:15Z mike $"
|
||||
*
|
||||
* 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 7810 2008-07-29 01:11:15Z mike $".
|
||||
*/
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: conflicts.c 3794 2012-04-23 22:44:16Z msweet $"
|
||||
*
|
||||
* Option marking routines for CUPS.
|
||||
*
|
||||
@@ -1210,5 +1210,5 @@ ppd_test_constraints(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: conflicts.c 3794 2012-04-23 22:44:16Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id$"
|
||||
* "$Id: cups-private.h 9596 2011-03-11 18:26:36Z mike $"
|
||||
*
|
||||
* Private definitions for CUPS.
|
||||
*
|
||||
* Copyright 2007-2012 by Apple Inc.
|
||||
* 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
|
||||
@@ -158,7 +158,8 @@ typedef struct _cups_globals_s /**** CUPS global state data ****/
|
||||
cups_server_cert_cb_t server_cert_cb; /* Server certificate callback */
|
||||
void *server_cert_data;
|
||||
/* Server certificate user data */
|
||||
int any_root, /* Allow any root */
|
||||
int server_version, /* Server IPP version */
|
||||
any_root, /* Allow any root */
|
||||
expired_certs, /* Allow expired certs */
|
||||
expired_root; /* Allow expired root */
|
||||
|
||||
@@ -267,5 +268,5 @@ extern char *_cupsUserDefault(char *name, size_t namesize);
|
||||
#endif /* !_CUPS_CUPS_PRIVATE_H_ */
|
||||
|
||||
/*
|
||||
* End of "$Id$".
|
||||
* End of "$Id: cups-private.h 9596 2011-03-11 18:26:36Z mike $".
|
||||
*/
|
||||
|
||||
Alguns arquivos não foram exibidos porque demasiados arquivos foram alterados neste diff Mostrar Mais
Referência em uma Nova Issue
Bloquear um usuário