Comparar commits
3 Commits
| Autor | SHA1 | Data | |
|---|---|---|---|
| d3331249b0 | |||
| bc05464ada | |||
| 348ce78265 |
+59
-2
@@ -1,5 +1,62 @@
|
||||
CHANGES.txt - 2.1rc1 - 2015-07-31
|
||||
---------------------------------
|
||||
CHANGES.txt - 2.1.2 - 2015-12-02
|
||||
--------------------------------
|
||||
|
||||
CHANGES IN CUPS V2.1.2
|
||||
|
||||
- Re-release of CUPS 2.1.1 as CUPS 2.1.2 due to error in tagging of the
|
||||
2.1.1 release (pulled content from the 2.2.x tree instead)
|
||||
|
||||
|
||||
CHANGES IN CUPS V2.1.1
|
||||
|
||||
- Security hardening fixes (<rdar://problem/23131948>,
|
||||
<rdar://problem/23132108>, <rdar://problem/23132353>,
|
||||
<rdar://problem/23132803>, <rdar://problem/23133230>,
|
||||
<rdar://problem/23133393>, <rdar://problem/23133466>,
|
||||
<rdar://problem/23133833>, <rdar://problem/23133998>,
|
||||
<rdar://problem/23134228>, <rdar://problem/23134299>,
|
||||
<rdar://problem/23134356>, <rdar://problem/23134415>,
|
||||
<rdar://problem/23134506>, <rdar://problem/23135066>,
|
||||
<rdar://problem/23135122>, <rdar://problem/23135207>,
|
||||
<rdar://problem/23144290>, <rdar://problem/23144358>,
|
||||
<rdar://problem/23144461>)
|
||||
- The cupsGetPPD* functions did not work with IPP printers (STR #4725)
|
||||
- Some older HP LaserJet printers need a delayed close when printing
|
||||
using the libusb-based USB backend (STR #4549)
|
||||
- The libusb-based USB backend did not unload the kernel usblp module
|
||||
if it was preventing the backend from accessing the printer
|
||||
(STR #4707)
|
||||
- Current Primera printers were incorrectly reported as Fargo printers
|
||||
(STR #4708)
|
||||
- The IPP backend did not always handle jobs getting canceled at the
|
||||
printer (<rdar://problem/22716820>)
|
||||
- Scheduler logging change (STR #4728)
|
||||
- Added USB quirk for Canon MP530 (STR #4730)
|
||||
- The scheduler did not deliver job notifications for jobs submitted to
|
||||
classes (STR #4733)
|
||||
- Changing the printer-is-shared value for a remote queue did not
|
||||
produce an error (STR #4738)
|
||||
- The IPP backend incorrectly included the job-password attribute in
|
||||
Validate-Job requests (<rdar://problem/23531939>)
|
||||
- Updated localizations (STR #4709)
|
||||
|
||||
|
||||
CHANGES IN CUPS V2.1.0
|
||||
|
||||
- Fixed more scheduler crash bugs in the new logging code (STR #4687,
|
||||
STR #4690)
|
||||
- The scheduler did not use the ConfigFilePerm setting when copying PPD
|
||||
files or interface scripts attached to a request (STR #4703)
|
||||
- Now support new Chinese locale IDs and their correct fallback locales
|
||||
(<rdar://problem/22086642>, <rdar://problem/22130168>)
|
||||
- "make check" incorrectly reported an expectation of 18 warning
|
||||
messages when 8 were expected (STR #4684)
|
||||
- The new PDF file type rule did not work (STR #4692)
|
||||
- The scheduler did not update the jobs.cache file when job files were
|
||||
expired (STR #4706)
|
||||
- Fixed some configure script issues (STR #4694, STR #4695, STR #4698)
|
||||
- Documentation updates (STR #4691, STR #4693)
|
||||
|
||||
|
||||
CHANGES IN CUPS V2.1rc1
|
||||
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
INSTALL - CUPS v2.1rc1 - 2015-07-31
|
||||
-----------------------------------
|
||||
INSTALL - CUPS v2.1.2 - 2015-12-02
|
||||
----------------------------------
|
||||
|
||||
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
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
README - CUPS v2.1rc1 - 2015-07-31
|
||||
----------------------------------
|
||||
README - CUPS v2.1.2 - 2015-12-02
|
||||
---------------------------------
|
||||
|
||||
Looking for compile instructions? Read the file "INSTALL.txt" instead...
|
||||
|
||||
|
||||
+3
-11
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: dnssd.c 12818 2015-07-31 13:29:25Z msweet $"
|
||||
* "$Id: dnssd.c 12970 2015-11-13 20:02:51Z msweet $"
|
||||
*
|
||||
* DNS-SD discovery backend for CUPS.
|
||||
*
|
||||
@@ -921,13 +921,6 @@ get_device(cups_array_t *devices, /* I - Device array */
|
||||
* Yes, add the device...
|
||||
*/
|
||||
|
||||
#ifdef HAVE_DNSSD
|
||||
DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain);
|
||||
#else /* HAVE_AVAHI */
|
||||
avahi_service_name_join(fullName, kDNSServiceMaxDomainName,
|
||||
serviceName, regtype, replyDomain);
|
||||
#endif /* HAVE_DNSSD */
|
||||
|
||||
device = calloc(sizeof(cups_device_t), 1);
|
||||
device->name = strdup(serviceName);
|
||||
device->domain = strdup(replyDomain);
|
||||
@@ -943,8 +936,7 @@ get_device(cups_array_t *devices, /* I - Device array */
|
||||
#ifdef HAVE_DNSSD
|
||||
DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain);
|
||||
#else /* HAVE_AVAHI */
|
||||
avahi_service_name_join(fullName, kDNSServiceMaxDomainName,
|
||||
serviceName, regtype, replyDomain);
|
||||
avahi_service_name_join(fullName, kDNSServiceMaxDomainName, serviceName, regtype, replyDomain);
|
||||
#endif /* HAVE_DNSSD */
|
||||
|
||||
device->fullName = strdup(fullName);
|
||||
@@ -1330,5 +1322,5 @@ unquote(char *dst, /* I - Destination buffer */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: dnssd.c 12818 2015-07-31 13:29:25Z msweet $".
|
||||
* End of "$Id: dnssd.c 12970 2015-11-13 20:02:51Z msweet $".
|
||||
*/
|
||||
|
||||
+24
-6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: ipp.c 12757 2015-06-24 19:55:31Z msweet $"
|
||||
* "$Id: ipp.c 12896 2015-10-09 13:15:22Z msweet $"
|
||||
*
|
||||
* IPP backend for CUPS.
|
||||
*
|
||||
@@ -1800,7 +1800,7 @@ main(int argc, /* I - Number of command-line args */
|
||||
fprintf(stderr, "DEBUG: Send-Document: %s (%s)\n",
|
||||
ippErrorString(cupsLastError()), cupsLastErrorString());
|
||||
|
||||
if (cupsLastError() > IPP_OK_CONFLICT)
|
||||
if (cupsLastError() > IPP_OK_CONFLICT && !job_canceled)
|
||||
{
|
||||
ipp_status = cupsLastError();
|
||||
|
||||
@@ -1818,6 +1818,9 @@ main(int argc, /* I - Number of command-line args */
|
||||
}
|
||||
}
|
||||
|
||||
if (job_canceled)
|
||||
break;
|
||||
|
||||
if (ipp_status <= IPP_OK_CONFLICT && argc > 6)
|
||||
{
|
||||
fprintf(stderr, "PAGE: 1 %d\n", copies_sup ? atoi(argv[4]) : 1);
|
||||
@@ -2444,6 +2447,17 @@ monitor_printer(
|
||||
}
|
||||
}
|
||||
|
||||
fprintf(stderr, "DEBUG: (monitor) job-state = %s\n",
|
||||
ippEnumString("job-state", monitor->job_state));
|
||||
|
||||
if (!job_canceled &&
|
||||
(monitor->job_state == IPP_JOB_CANCELED ||
|
||||
monitor->job_state == IPP_JOB_ABORTED))
|
||||
{
|
||||
job_canceled = -1;
|
||||
fprintf(stderr, "DEBUG: (monitor) job_canceled = -1\n");
|
||||
}
|
||||
|
||||
if ((attr = ippFindAttribute(response, "job-state-reasons",
|
||||
IPP_TAG_KEYWORD)) != NULL)
|
||||
{
|
||||
@@ -2465,7 +2479,8 @@ monitor_printer(
|
||||
new_reasons |= _CUPS_JSR_JOB_PASSWORD_WAIT;
|
||||
else if (!strcmp(attr->values[i].string.text, "job-release-wait"))
|
||||
new_reasons |= _CUPS_JSR_JOB_RELEASE_WAIT;
|
||||
else if (!strncmp(attr->values[i].string.text, "job-canceled-", 13) || !strcmp(attr->values[i].string.text, "aborted-by-system"))
|
||||
if (!job_canceled &&
|
||||
(!strncmp(attr->values[i].string.text, "job-canceled-", 13) || !strcmp(attr->values[i].string.text, "aborted-by-system")))
|
||||
job_canceled = 1;
|
||||
}
|
||||
|
||||
@@ -2492,7 +2507,7 @@ monitor_printer(
|
||||
|
||||
ippDelete(response);
|
||||
|
||||
fprintf(stderr, "DEBUG: (monitor) job-state=%s\n",
|
||||
fprintf(stderr, "DEBUG: (monitor) job-state = %s\n",
|
||||
ippEnumString("job-state", monitor->job_state));
|
||||
|
||||
if (!job_canceled &&
|
||||
@@ -2530,7 +2545,10 @@ monitor_printer(
|
||||
monitor->user, monitor->version);
|
||||
|
||||
if (cupsLastError() > IPP_OK_CONFLICT)
|
||||
{
|
||||
fprintf(stderr, "DEBUG: (monitor) cancel_job() = %s\n", cupsLastErrorString());
|
||||
_cupsLangPrintFilter(stderr, "ERROR", _("Unable to cancel print job."));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3258,7 +3276,7 @@ sigterm_handler(int sig) /* I - Signal */
|
||||
* Flag that the job should be canceled...
|
||||
*/
|
||||
|
||||
write(2, "DEBUG: job_canceled = 1.\n", 25);
|
||||
write(2, "DEBUG: sigterm_handler: job_canceled = 1.\n", 25);
|
||||
|
||||
job_canceled = 1;
|
||||
return;
|
||||
@@ -3484,5 +3502,5 @@ update_reasons(ipp_attribute_t *attr, /* I - printer-state-reasons or NULL */
|
||||
}
|
||||
|
||||
/*
|
||||
* End of "$Id: ipp.c 12757 2015-06-24 19:55:31Z msweet $".
|
||||
* End of "$Id: ipp.c 12896 2015-10-09 13:15:22Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
# product ID (omit for all vendor products), and a list of known issues:
|
||||
#
|
||||
# blacklist The printer is not functional with the USB backend.
|
||||
# delay-close Delay close/reset of selected interface
|
||||
# no-reattach Do no re-attach usblp kernel module after printing.
|
||||
# soft-reset Do a soft reset after printing for cleanup.
|
||||
# unidir Only supported unidirectional I/O
|
||||
@@ -227,3 +228,16 @@
|
||||
|
||||
# All Intermec devices (STR #4553)
|
||||
0x067e no-reattach
|
||||
|
||||
# HP LaserJet 1150 (STR #4549)
|
||||
0x03f0 0x0f17 delay-close
|
||||
|
||||
# HP LaserJet 1300 (STR #4549)
|
||||
0x03f0 0x1017 delay-close
|
||||
0x03f0 0x1117 delay-close
|
||||
|
||||
# HP LaserJet 1320 (STR #4549)
|
||||
0x03f0 0x1d17 delay-close
|
||||
|
||||
# Canon, Inc. MP530 Printer
|
||||
0x04a9 0x1712 unidir
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: usb-darwin.c 12818 2015-07-31 13:29:25Z msweet $"
|
||||
* "$Id: usb-darwin.c 12928 2015-10-23 21:31:58Z msweet $"
|
||||
*
|
||||
* Copyright 2005-2015 Apple Inc. All rights reserved.
|
||||
*
|
||||
@@ -1654,7 +1654,7 @@ static CFStringRef copy_printer_interface_deviceid(printer_interface_t printer,
|
||||
{
|
||||
ret = CFStringCreateWithBytes(NULL, (const UInt8 *) &request.pData[2], actualLength - 2, kCFStringEncodingUTF8, false);
|
||||
}
|
||||
else {
|
||||
else if (actualLength > 2) {
|
||||
err = sendRequest(actualLength);
|
||||
if (err == kIOReturnSuccess && request.wLenDone > 0)
|
||||
{
|
||||
@@ -2537,5 +2537,5 @@ log_usb_class_driver(int is_64bit) /* I - Is the USB class driver 64-bit? */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: usb-darwin.c 12818 2015-07-31 13:29:25Z msweet $".
|
||||
* End of "$Id: usb-darwin.c 12928 2015-10-23 21:31:58Z msweet $".
|
||||
*/
|
||||
|
||||
+20
-3
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: usb-libusb.c 12348 2014-12-09 22:10:45Z msweet $"
|
||||
* "$Id: usb-libusb.c 12881 2015-09-15 21:20:02Z msweet $"
|
||||
*
|
||||
* LIBUSB interface code for CUPS.
|
||||
*
|
||||
* Copyright 2007-2014 by Apple Inc.
|
||||
* Copyright 2007-2015 by Apple Inc.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
* property of Apple Inc. and are protected by Federal copyright
|
||||
@@ -103,6 +103,7 @@ typedef struct usb_globals_s /* Global USB printer information */
|
||||
#define USB_QUIRK_USB_INIT 0x0010 /* Needs vendor USB init string */
|
||||
#define USB_QUIRK_VENDOR_CLASS 0x0020 /* Descriptor uses vendor-specific
|
||||
Class or SubClass */
|
||||
#define USB_QUIRK_DELAY_CLOSE 0x0040 /* Delay close */
|
||||
#define USB_QUIRK_WHITELIST 0x0000 /* no quirks */
|
||||
|
||||
|
||||
@@ -641,6 +642,9 @@ print_device(const char *uri, /* I - Device URI */
|
||||
* Close the connection and input file and general clean up...
|
||||
*/
|
||||
|
||||
if (g.printer->quirks & USB_QUIRK_DELAY_CLOSE)
|
||||
sleep(1);
|
||||
|
||||
close_device(g.printer);
|
||||
|
||||
/*
|
||||
@@ -1211,6 +1215,9 @@ load_quirks(void)
|
||||
if (strstr(line, " blacklist"))
|
||||
quirk->quirks |= USB_QUIRK_BLACKLIST;
|
||||
|
||||
if (strstr(line, " delay-close"))
|
||||
quirk->quirks |= USB_QUIRK_DELAY_CLOSE;
|
||||
|
||||
if (strstr(line, " no-reattach"))
|
||||
quirk->quirks |= USB_QUIRK_NO_REATTACH;
|
||||
|
||||
@@ -1522,6 +1529,16 @@ open_device(usb_printer_t *printer, /* I - Printer */
|
||||
|
||||
goto error;
|
||||
}
|
||||
else if ((errcode = libusb_detach_kernel_driver(printer->handle, printer->iface)) < 0)
|
||||
{
|
||||
fprintf(stderr,
|
||||
"DEBUG: Failed to detach \"usblp\" module from %04x:%04x\n",
|
||||
devdesc.idVendor, devdesc.idProduct);
|
||||
|
||||
goto error;
|
||||
}
|
||||
|
||||
sleep (1);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -2004,6 +2021,6 @@ soft_reset_printer(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: usb-libusb.c 12348 2014-12-09 22:10:45Z msweet $".
|
||||
* End of "$Id: usb-libusb.c 12881 2015-09-15 21:20:02Z msweet $".
|
||||
*/
|
||||
|
||||
|
||||
@@ -39,6 +39,13 @@ WebInterface @CUPS_WEBIF@
|
||||
Order allow,deny
|
||||
</Location>
|
||||
|
||||
# Restrict access to log files...
|
||||
<Location /admin/log>
|
||||
AuthType Default
|
||||
Require user @SYSTEM
|
||||
Order allow,deny
|
||||
</Location>
|
||||
|
||||
# Set the default printer/job policies...
|
||||
<Policy default>
|
||||
# Job/subscription privacy...
|
||||
|
||||
+1
-1
@@ -71,7 +71,7 @@
|
||||
#
|
||||
|
||||
#application/msword doc string(0,<D0CF11E0A1B11AE1>)
|
||||
application/pdf pdf regex(0,^[\\n\\r]*%PDF)
|
||||
application/pdf pdf regex(0,^[\n\r]*%PDF)
|
||||
application/postscript ai eps ps string(0,%!) string(0,<04>%!) \
|
||||
contains(0,128,<1B>%-12345X) + \
|
||||
(contains(0,4096,"LANGUAGE=POSTSCRIPT") \
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-common.m4 12785 2015-07-14 18:07:49Z msweet $"
|
||||
dnl "$Id: cups-common.m4 12852 2015-08-28 13:29:21Z msweet $"
|
||||
dnl
|
||||
dnl Common configuration stuff for CUPS.
|
||||
dnl
|
||||
@@ -17,7 +17,7 @@ dnl Set the name of the config header file...
|
||||
AC_CONFIG_HEADER(config.h)
|
||||
|
||||
dnl Version number information...
|
||||
CUPS_VERSION=2.1rc1
|
||||
CUPS_VERSION=2.1.2
|
||||
|
||||
case "$CUPS_VERSION" in
|
||||
*svn)
|
||||
@@ -327,7 +327,7 @@ DBUSDIR=""
|
||||
DBUS_NOTIFIER=""
|
||||
DBUS_NOTIFIERLIBS=""
|
||||
|
||||
if test "x$enable_dbus" != xno -a "x$PKGCONFIG" != x; then
|
||||
if test "x$enable_dbus" != xno -a "x$PKGCONFIG" != x -a "x$uname" != xDarwin; then
|
||||
AC_MSG_CHECKING(for DBUS)
|
||||
if $PKGCONFIG --exists dbus-1; then
|
||||
AC_MSG_RESULT(yes)
|
||||
@@ -474,5 +474,5 @@ esac
|
||||
AC_SUBST(BUILDDIRS)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-common.m4 12785 2015-07-14 18:07:49Z msweet $".
|
||||
dnl End of "$Id: cups-common.m4 12852 2015-08-28 13:29:21Z msweet $".
|
||||
dnl
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
dnl
|
||||
dnl "$Id: cups-defaults.m4 12350 2014-12-09 22:18:21Z msweet $"
|
||||
dnl "$Id: cups-defaults.m4 12846 2015-08-26 18:26:22Z msweet $"
|
||||
dnl
|
||||
dnl Default cupsd configuration settings for CUPS.
|
||||
dnl
|
||||
dnl Copyright 2007-2014 by Apple Inc.
|
||||
dnl Copyright 2007-2015 by Apple Inc.
|
||||
dnl Copyright 2006-2007 by Easy Software Products, all rights reserved.
|
||||
dnl
|
||||
dnl These coded instructions, statements, and computer programs are the
|
||||
@@ -85,7 +85,7 @@ AC_SUBST(CUPS_ACCESS_LOG_LEVEL)
|
||||
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_ACCESS_LOG_LEVEL, "$CUPS_ACCESS_LOG_LEVEL")
|
||||
|
||||
dnl Default PageLogFormat
|
||||
AC_ARG_WITH(page_logging, [ --enable-page-logging enable page_log by default])
|
||||
AC_ARG_ENABLE(page_logging, [ --enable-page-logging enable page_log by default])
|
||||
if test "x$enable_page_logging" = xyes; then
|
||||
CUPS_PAGE_LOG_FORMAT=""
|
||||
else
|
||||
@@ -409,5 +409,5 @@ AC_SUBST(CUPS_WEBIF)
|
||||
AC_DEFINE_UNQUOTED(CUPS_DEFAULT_WEBIF, $CUPS_DEFAULT_WEBIF)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-defaults.m4 12350 2014-12-09 22:18:21Z msweet $".
|
||||
dnl End of "$Id: cups-defaults.m4 12846 2015-08-26 18:26:22Z msweet $".
|
||||
dnl
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
dnl
|
||||
dnl "$Id: cups-dnssd.m4 11324 2013-10-04 03:11:42Z msweet $"
|
||||
dnl "$Id: cups-dnssd.m4 12845 2015-08-26 18:23:53Z msweet $"
|
||||
dnl
|
||||
dnl DNS Service Discovery (aka Bonjour) stuff for CUPS.
|
||||
dnl
|
||||
dnl Copyright 2007-2012 by Apple Inc.
|
||||
dnl Copyright 2007-2015 by Apple Inc.
|
||||
dnl
|
||||
dnl These coded instructions, statements, and computer programs are the
|
||||
dnl property of Apple Inc. and are protected by Federal copyright
|
||||
@@ -26,7 +26,7 @@ DNSSD_BACKEND=""
|
||||
IPPFIND_BIN=""
|
||||
IPPFIND_MAN=""
|
||||
|
||||
if test "x$PKGCONFIG" != x -a x$enable_avahi != xno; then
|
||||
if test "x$PKGCONFIG" != x -a x$enable_avahi != xno -a x$uname != xDarwin; then
|
||||
AC_MSG_CHECKING(for Avahi)
|
||||
if $PKGCONFIG --exists avahi-client; then
|
||||
AC_MSG_RESULT(yes)
|
||||
@@ -82,5 +82,5 @@ AC_SUBST(IPPFIND_BIN)
|
||||
AC_SUBST(IPPFIND_MAN)
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-dnssd.m4 11324 2013-10-04 03:11:42Z msweet $".
|
||||
dnl End of "$Id: cups-dnssd.m4 12845 2015-08-26 18:23:53Z msweet $".
|
||||
dnl
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: cups-startup.m4 12784 2015-07-14 17:39:26Z msweet $"
|
||||
dnl "$Id: cups-startup.m4 12857 2015-08-31 15:00:45Z msweet $"
|
||||
dnl
|
||||
dnl Launch-on-demand/startup stuff for CUPS.
|
||||
dnl
|
||||
@@ -56,18 +56,33 @@ if test x$enable_systemd != xno; then
|
||||
AC_MSG_ERROR(Need pkg-config to enable systemd support.)
|
||||
fi
|
||||
else
|
||||
have_systemd=no
|
||||
AC_MSG_CHECKING(for libsystemd)
|
||||
if $PKGCONFIG --exists libsystemd; then
|
||||
AC_MSG_RESULT(yes)
|
||||
have_systemd=yes
|
||||
ONDEMANDFLAGS=`$PKGCONFIG --cflags libsystemd`
|
||||
ONDEMANDLIBS=`$PKGCONFIG --libs libsystemd`
|
||||
elif $PKGCONFIG --exists libsystemd-daemon; then
|
||||
AC_MSG_RESULT(yes - legacy)
|
||||
have_systemd=yes
|
||||
ONDEMANDFLAGS=`$PKGCONFIG --cflags libsystemd-daemon`
|
||||
ONDEMANDLIBS=`$PKGCONFIG --libs libsystemd-daemon`
|
||||
|
||||
if $PKGCONFIG --exists libsystemd-journal; then
|
||||
ONDEMANDFLAGS="$ONDEMANDFLAGS `$PKGCONFIG --cflags libsystemd-journal`"
|
||||
ONDEMANDLIBS="$ONDEMANDLIBS `$PKGCONFIG --libs libsystemd-journal`"
|
||||
fi
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
|
||||
if test $have_systemd = yes; then
|
||||
AC_DEFINE(HAVE_SYSTEMD)
|
||||
AC_CHECK_HEADER(systemd/sd-journal.h,AC_DEFINE(HAVE_SYSTEMD_SD_JOURNAL_H))
|
||||
if test "x$SYSTEMD_DIR" = x; then
|
||||
SYSTEMD_DIR="`$PKGCONFIG --variable=systemdsystemunitdir systemd`"
|
||||
fi
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@@ -173,5 +188,5 @@ fi
|
||||
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: cups-startup.m4 12784 2015-07-14 17:39:26Z msweet $".
|
||||
dnl End of "$Id: cups-startup.m4 12857 2015-08-31 15:00:45Z msweet $".
|
||||
dnl
|
||||
|
||||
externo
+151
-143
@@ -1,11 +1,13 @@
|
||||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.69 for CUPS 2.1rc1.
|
||||
# Generated by GNU Autoconf 2.68 for CUPS 2.1.2.
|
||||
#
|
||||
# Report bugs to <https://www.cups.org/str.php>.
|
||||
#
|
||||
#
|
||||
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
|
||||
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
|
||||
# Foundation, Inc.
|
||||
#
|
||||
#
|
||||
# This configure script is free software; the Free Software Foundation
|
||||
@@ -134,31 +136,6 @@ export LANGUAGE
|
||||
# CDPATH.
|
||||
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
|
||||
|
||||
# Use a proper internal environment variable to ensure we don't fall
|
||||
# into an infinite loop, continuously re-executing ourselves.
|
||||
if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
|
||||
_as_can_reexec=no; export _as_can_reexec;
|
||||
# We cannot yet assume a decent shell, so we have to provide a
|
||||
# neutralization value for shells without unset; and this also
|
||||
# works around shells that cannot unset nonexistent variables.
|
||||
# Preserve -v and -x to the replacement shell.
|
||||
BASH_ENV=/dev/null
|
||||
ENV=/dev/null
|
||||
(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
|
||||
case $- in # ((((
|
||||
*v*x* | *x*v* ) as_opts=-vx ;;
|
||||
*v* ) as_opts=-v ;;
|
||||
*x* ) as_opts=-x ;;
|
||||
* ) as_opts= ;;
|
||||
esac
|
||||
exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
|
||||
# Admittedly, this is quite paranoid, since all the known shells bail
|
||||
# out after a failed `exec'.
|
||||
$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
|
||||
as_fn_exit 255
|
||||
fi
|
||||
# We don't want this to propagate to other subprocesses.
|
||||
{ _as_can_reexec=; unset _as_can_reexec;}
|
||||
if test "x$CONFIG_SHELL" = x; then
|
||||
as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
|
||||
emulate sh
|
||||
@@ -192,8 +169,7 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
|
||||
else
|
||||
exitcode=1; echo positional parameters were not saved.
|
||||
fi
|
||||
test x\$exitcode = x0 || exit 1
|
||||
test -x / || exit 1"
|
||||
test x\$exitcode = x0 || exit 1"
|
||||
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
|
||||
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
|
||||
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
|
||||
@@ -238,25 +214,21 @@ IFS=$as_save_IFS
|
||||
|
||||
|
||||
if test "x$CONFIG_SHELL" != x; then :
|
||||
export CONFIG_SHELL
|
||||
# We cannot yet assume a decent shell, so we have to provide a
|
||||
# neutralization value for shells without unset; and this also
|
||||
# works around shells that cannot unset nonexistent variables.
|
||||
# Preserve -v and -x to the replacement shell.
|
||||
BASH_ENV=/dev/null
|
||||
ENV=/dev/null
|
||||
(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
|
||||
case $- in # ((((
|
||||
*v*x* | *x*v* ) as_opts=-vx ;;
|
||||
*v* ) as_opts=-v ;;
|
||||
*x* ) as_opts=-x ;;
|
||||
* ) as_opts= ;;
|
||||
esac
|
||||
exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
|
||||
# Admittedly, this is quite paranoid, since all the known shells bail
|
||||
# out after a failed `exec'.
|
||||
$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
|
||||
exit 255
|
||||
# We cannot yet assume a decent shell, so we have to provide a
|
||||
# neutralization value for shells without unset; and this also
|
||||
# works around shells that cannot unset nonexistent variables.
|
||||
# Preserve -v and -x to the replacement shell.
|
||||
BASH_ENV=/dev/null
|
||||
ENV=/dev/null
|
||||
(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
|
||||
export CONFIG_SHELL
|
||||
case $- in # ((((
|
||||
*v*x* | *x*v* ) as_opts=-vx ;;
|
||||
*v* ) as_opts=-v ;;
|
||||
*x* ) as_opts=-x ;;
|
||||
* ) as_opts= ;;
|
||||
esac
|
||||
exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
|
||||
fi
|
||||
|
||||
if test x$as_have_required = xno; then :
|
||||
@@ -359,14 +331,6 @@ $as_echo X"$as_dir" |
|
||||
|
||||
|
||||
} # as_fn_mkdir_p
|
||||
|
||||
# as_fn_executable_p FILE
|
||||
# -----------------------
|
||||
# Test if FILE is an executable regular file.
|
||||
as_fn_executable_p ()
|
||||
{
|
||||
test -f "$1" && test -x "$1"
|
||||
} # as_fn_executable_p
|
||||
# as_fn_append VAR VALUE
|
||||
# ----------------------
|
||||
# Append the text in VALUE to the end of the definition contained in VAR. Take
|
||||
@@ -488,10 +452,6 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
|
||||
chmod +x "$as_me.lineno" ||
|
||||
{ $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
|
||||
|
||||
# If we had to re-execute with $CONFIG_SHELL, we're ensured to have
|
||||
# already done that, so ensure we don't try to do so again and fall
|
||||
# in an infinite loop. This has already happened in practice.
|
||||
_as_can_reexec=no; export _as_can_reexec
|
||||
# Don't try to exec as it changes $[0], causing all sort of problems
|
||||
# (the dirname of $[0] is not the place where we might find the
|
||||
# original and so on. Autoconf is especially sensitive to this).
|
||||
@@ -526,16 +486,16 @@ if (echo >conf$$.file) 2>/dev/null; then
|
||||
# ... but there are two gotchas:
|
||||
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
|
||||
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
|
||||
# In both cases, we have to default to `cp -pR'.
|
||||
# In both cases, we have to default to `cp -p'.
|
||||
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
|
||||
as_ln_s='cp -pR'
|
||||
as_ln_s='cp -p'
|
||||
elif ln conf$$.file conf$$ 2>/dev/null; then
|
||||
as_ln_s=ln
|
||||
else
|
||||
as_ln_s='cp -pR'
|
||||
as_ln_s='cp -p'
|
||||
fi
|
||||
else
|
||||
as_ln_s='cp -pR'
|
||||
as_ln_s='cp -p'
|
||||
fi
|
||||
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
|
||||
rmdir conf$$.dir 2>/dev/null
|
||||
@@ -547,8 +507,28 @@ else
|
||||
as_mkdir_p=false
|
||||
fi
|
||||
|
||||
as_test_x='test -x'
|
||||
as_executable_p=as_fn_executable_p
|
||||
if test -x / >/dev/null 2>&1; then
|
||||
as_test_x='test -x'
|
||||
else
|
||||
if ls -dL / >/dev/null 2>&1; then
|
||||
as_ls_L_option=L
|
||||
else
|
||||
as_ls_L_option=
|
||||
fi
|
||||
as_test_x='
|
||||
eval sh -c '\''
|
||||
if test -d "$1"; then
|
||||
test -d "$1/.";
|
||||
else
|
||||
case $1 in #(
|
||||
-*)set "./$1";;
|
||||
esac;
|
||||
case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
|
||||
???[sx]*):;;*)false;;esac;fi
|
||||
'\'' sh
|
||||
'
|
||||
fi
|
||||
as_executable_p=$as_test_x
|
||||
|
||||
# Sed expression to map a string onto a valid CPP name.
|
||||
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
|
||||
@@ -580,8 +560,8 @@ MAKEFLAGS=
|
||||
# Identity of this package.
|
||||
PACKAGE_NAME='CUPS'
|
||||
PACKAGE_TARNAME='cups'
|
||||
PACKAGE_VERSION='2.1rc1'
|
||||
PACKAGE_STRING='CUPS 2.1rc1'
|
||||
PACKAGE_VERSION='2.1.2'
|
||||
PACKAGE_STRING='CUPS 2.1.2'
|
||||
PACKAGE_BUGREPORT='https://www.cups.org/str.php'
|
||||
PACKAGE_URL='https://www.cups.org/'
|
||||
|
||||
@@ -892,7 +872,7 @@ with_log_file_perm
|
||||
with_fatal_errors
|
||||
with_log_level
|
||||
with_access_log_level
|
||||
with_page_logging
|
||||
enable_page_logging
|
||||
enable_browsing
|
||||
with_local_protocols
|
||||
enable_default_shared
|
||||
@@ -1380,6 +1360,8 @@ target=$target_alias
|
||||
if test "x$host_alias" != x; then
|
||||
if test "x$build_alias" = x; then
|
||||
cross_compiling=maybe
|
||||
$as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
|
||||
If a cross compiler is detected then cross compile mode will be used" >&2
|
||||
elif test "x$build_alias" != "x$host_alias"; then
|
||||
cross_compiling=yes
|
||||
fi
|
||||
@@ -1465,7 +1447,7 @@ if test "$ac_init_help" = "long"; then
|
||||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures CUPS 2.1rc1 to adapt to many kinds of systems.
|
||||
\`configure' configures CUPS 2.1.2 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
@@ -1526,7 +1508,7 @@ fi
|
||||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of CUPS 2.1rc1:";;
|
||||
short | recursive ) echo "Configuration of CUPS 2.1.2:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
@@ -1560,6 +1542,7 @@ Optional Features:
|
||||
--disable-dnssd disable DNS Service Discovery support using mDNSResponder
|
||||
--disable-launchd disable launchd support
|
||||
--disable-systemd disable systemd support
|
||||
--enable-page-logging enable page_log by default
|
||||
--disable-browsing disable Browsing by default
|
||||
--disable-default-shared
|
||||
disable DefaultShared by default
|
||||
@@ -1609,7 +1592,6 @@ Optional Packages:
|
||||
--with-fatal-errors set default FatalErrors value, default=config
|
||||
--with-log-level set default LogLevel value, default=warn
|
||||
--with-access-log-level set default AccessLogLevel value, default=none
|
||||
--enable-page-logging enable page_log by default
|
||||
--with-local-protocols set default BrowseLocalProtocols, default=""
|
||||
--with-cups-user set default user for CUPS
|
||||
--with-cups-group set default group for CUPS
|
||||
@@ -1705,10 +1687,10 @@ fi
|
||||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
CUPS configure 2.1rc1
|
||||
generated by GNU Autoconf 2.69
|
||||
CUPS configure 2.1.2
|
||||
generated by GNU Autoconf 2.68
|
||||
|
||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010 Free Software Foundation, Inc.
|
||||
This configure script is free software; the Free Software Foundation
|
||||
gives unlimited permission to copy, distribute and modify it.
|
||||
_ACEOF
|
||||
@@ -1859,7 +1841,7 @@ $as_echo "$ac_try_echo"; } >&5
|
||||
test ! -s conftest.err
|
||||
} && test -s conftest$ac_exeext && {
|
||||
test "$cross_compiling" = yes ||
|
||||
test -x conftest$ac_exeext
|
||||
$as_test_x conftest$ac_exeext
|
||||
}; then :
|
||||
ac_retval=0
|
||||
else
|
||||
@@ -2169,8 +2151,8 @@ cat >config.log <<_ACEOF
|
||||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by CUPS $as_me 2.1rc1, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
It was created by CUPS $as_me 2.1.2, which was
|
||||
generated by GNU Autoconf 2.68. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
|
||||
@@ -2544,7 +2526,7 @@ esac
|
||||
ac_config_headers="$ac_config_headers config.h"
|
||||
|
||||
|
||||
CUPS_VERSION=2.1rc1
|
||||
CUPS_VERSION=2.1.2
|
||||
|
||||
case "$CUPS_VERSION" in
|
||||
*svn)
|
||||
@@ -2604,7 +2586,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_prog_AWK="$ac_prog"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -2652,7 +2634,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -2696,7 +2678,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_prog_ac_ct_CC="$ac_prog"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3140,7 +3122,8 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
struct stat;
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
|
||||
struct buf { int x; };
|
||||
FILE * (*rcsopen) (struct buf *, struct stat *, int);
|
||||
@@ -3390,7 +3373,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3434,7 +3417,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_prog_ac_ct_CXX="$ac_prog"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3636,7 +3619,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3676,7 +3659,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_prog_ac_ct_RANLIB="ranlib"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3729,7 +3712,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3769,7 +3752,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_CHMOD="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3809,7 +3792,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_GZIP="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3849,7 +3832,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_LD="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3889,7 +3872,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_LN="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3929,7 +3912,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_MV="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -3969,7 +3952,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_RM="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -4009,7 +3992,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_RMDIR="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -4049,7 +4032,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -4089,7 +4072,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_XDGOPEN="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -4165,7 +4148,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -4208,7 +4191,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -4618,7 +4601,7 @@ do
|
||||
for ac_prog in grep ggrep; do
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
|
||||
as_fn_executable_p "$ac_path_GREP" || continue
|
||||
{ test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
|
||||
# Check for GNU ac_path_GREP and select it if it is found.
|
||||
# Check for GNU $ac_path_GREP
|
||||
case `"$ac_path_GREP" --version 2>&1` in
|
||||
@@ -4684,7 +4667,7 @@ do
|
||||
for ac_prog in egrep; do
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
|
||||
as_fn_executable_p "$ac_path_EGREP" || continue
|
||||
{ test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
|
||||
# Check for GNU ac_path_EGREP and select it if it is found.
|
||||
# Check for GNU $ac_path_EGREP
|
||||
case `"$ac_path_EGREP" --version 2>&1` in
|
||||
@@ -5677,7 +5660,7 @@ DBUSDIR=""
|
||||
DBUS_NOTIFIER=""
|
||||
DBUS_NOTIFIERLIBS=""
|
||||
|
||||
if test "x$enable_dbus" != xno -a "x$PKGCONFIG" != x; then
|
||||
if test "x$enable_dbus" != xno -a "x$PKGCONFIG" != x -a "x$uname" != xDarwin; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for DBUS" >&5
|
||||
$as_echo_n "checking for DBUS... " >&6; }
|
||||
if $PKGCONFIG --exists dbus-1; then
|
||||
@@ -7649,7 +7632,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_KRB5CONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -7692,7 +7675,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_ac_pt_KRB5CONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -8246,7 +8229,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_LIBGNUTLSCONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -8289,7 +8272,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_ac_pt_LIBGNUTLSCONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -8344,7 +8327,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_LIBGCRYPTCONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -8387,7 +8370,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_ac_pt_LIBGCRYPTCONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -8948,8 +8931,6 @@ _ACEOF
|
||||
esac
|
||||
rm -rf conftest*
|
||||
fi
|
||||
|
||||
|
||||
fi
|
||||
|
||||
|
||||
@@ -9041,7 +9022,7 @@ DNSSD_BACKEND=""
|
||||
IPPFIND_BIN=""
|
||||
IPPFIND_MAN=""
|
||||
|
||||
if test "x$PKGCONFIG" != x -a x$enable_avahi != xno; then
|
||||
if test "x$PKGCONFIG" != x -a x$enable_avahi != xno -a x$uname != xDarwin; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Avahi" >&5
|
||||
$as_echo_n "checking for Avahi... " >&6; }
|
||||
if $PKGCONFIG --exists avahi-client; then
|
||||
@@ -9197,13 +9178,32 @@ if test x$enable_systemd != xno; then
|
||||
as_fn_error $? "Need pkg-config to enable systemd support." "$LINENO" 5
|
||||
fi
|
||||
else
|
||||
have_systemd=no
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libsystemd" >&5
|
||||
$as_echo_n "checking for libsystemd... " >&6; }
|
||||
if $PKGCONFIG --exists libsystemd; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
$as_echo "yes" >&6; }
|
||||
have_systemd=yes
|
||||
ONDEMANDFLAGS=`$PKGCONFIG --cflags libsystemd`
|
||||
ONDEMANDLIBS=`$PKGCONFIG --libs libsystemd`
|
||||
elif $PKGCONFIG --exists libsystemd-daemon; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes - legacy" >&5
|
||||
$as_echo "yes - legacy" >&6; }
|
||||
have_systemd=yes
|
||||
ONDEMANDFLAGS=`$PKGCONFIG --cflags libsystemd-daemon`
|
||||
ONDEMANDLIBS=`$PKGCONFIG --libs libsystemd-daemon`
|
||||
|
||||
if $PKGCONFIG --exists libsystemd-journal; then
|
||||
ONDEMANDFLAGS="$ONDEMANDFLAGS `$PKGCONFIG --cflags libsystemd-journal`"
|
||||
ONDEMANDLIBS="$ONDEMANDLIBS `$PKGCONFIG --libs libsystemd-journal`"
|
||||
fi
|
||||
else
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
$as_echo "no" >&6; }
|
||||
fi
|
||||
|
||||
if test $have_systemd = yes; then
|
||||
$as_echo "#define HAVE_SYSTEMD 1" >>confdefs.h
|
||||
|
||||
ac_fn_c_check_header_mongrel "$LINENO" "systemd/sd-journal.h" "ac_cv_header_systemd_sd_journal_h" "$ac_includes_default"
|
||||
@@ -9216,9 +9216,6 @@ fi
|
||||
if test "x$SYSTEMD_DIR" = x; then
|
||||
SYSTEMD_DIR="`$PKGCONFIG --variable=systemdsystemunitdir systemd`"
|
||||
fi
|
||||
else
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
$as_echo "no" >&6; }
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@@ -9483,10 +9480,9 @@ cat >>confdefs.h <<_ACEOF
|
||||
_ACEOF
|
||||
|
||||
|
||||
|
||||
# Check whether --with-page_logging was given.
|
||||
if test "${with_page_logging+set}" = set; then :
|
||||
withval=$with_page_logging;
|
||||
# Check whether --enable-page_logging was given.
|
||||
if test "${enable_page_logging+set}" = set; then :
|
||||
enableval=$enable_page_logging;
|
||||
fi
|
||||
|
||||
if test "x$enable_page_logging" = xyes; then
|
||||
@@ -9954,7 +9950,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_JAVA="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -10017,7 +10013,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -10080,7 +10076,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_PHPCGI="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -10121,7 +10117,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_PHP="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -10189,7 +10185,7 @@ do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
|
||||
ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
|
||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
@@ -10658,16 +10654,16 @@ if (echo >conf$$.file) 2>/dev/null; then
|
||||
# ... but there are two gotchas:
|
||||
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
|
||||
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
|
||||
# In both cases, we have to default to `cp -pR'.
|
||||
# In both cases, we have to default to `cp -p'.
|
||||
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
|
||||
as_ln_s='cp -pR'
|
||||
as_ln_s='cp -p'
|
||||
elif ln conf$$.file conf$$ 2>/dev/null; then
|
||||
as_ln_s=ln
|
||||
else
|
||||
as_ln_s='cp -pR'
|
||||
as_ln_s='cp -p'
|
||||
fi
|
||||
else
|
||||
as_ln_s='cp -pR'
|
||||
as_ln_s='cp -p'
|
||||
fi
|
||||
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
|
||||
rmdir conf$$.dir 2>/dev/null
|
||||
@@ -10727,16 +10723,28 @@ else
|
||||
as_mkdir_p=false
|
||||
fi
|
||||
|
||||
|
||||
# as_fn_executable_p FILE
|
||||
# -----------------------
|
||||
# Test if FILE is an executable regular file.
|
||||
as_fn_executable_p ()
|
||||
{
|
||||
test -f "$1" && test -x "$1"
|
||||
} # as_fn_executable_p
|
||||
as_test_x='test -x'
|
||||
as_executable_p=as_fn_executable_p
|
||||
if test -x / >/dev/null 2>&1; then
|
||||
as_test_x='test -x'
|
||||
else
|
||||
if ls -dL / >/dev/null 2>&1; then
|
||||
as_ls_L_option=L
|
||||
else
|
||||
as_ls_L_option=
|
||||
fi
|
||||
as_test_x='
|
||||
eval sh -c '\''
|
||||
if test -d "$1"; then
|
||||
test -d "$1/.";
|
||||
else
|
||||
case $1 in #(
|
||||
-*)set "./$1";;
|
||||
esac;
|
||||
case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
|
||||
???[sx]*):;;*)false;;esac;fi
|
||||
'\'' sh
|
||||
'
|
||||
fi
|
||||
as_executable_p=$as_test_x
|
||||
|
||||
# Sed expression to map a string onto a valid CPP name.
|
||||
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
|
||||
@@ -10757,8 +10765,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||
# report actual input values of CONFIG_FILES etc. instead of their
|
||||
# values after options handling.
|
||||
ac_log="
|
||||
This file was extended by CUPS $as_me 2.1rc1, which was
|
||||
generated by GNU Autoconf 2.69. Invocation command line was
|
||||
This file was extended by CUPS $as_me 2.1.2, which was
|
||||
generated by GNU Autoconf 2.68. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
CONFIG_HEADERS = $CONFIG_HEADERS
|
||||
@@ -10820,11 +10828,11 @@ _ACEOF
|
||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||
ac_cs_version="\\
|
||||
CUPS config.status 2.1rc1
|
||||
configured by $0, generated by GNU Autoconf 2.69,
|
||||
CUPS config.status 2.1.2
|
||||
configured by $0, generated by GNU Autoconf 2.68,
|
||||
with options \\"\$ac_cs_config\\"
|
||||
|
||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010 Free Software Foundation, Inc.
|
||||
This config.status script is free software; the Free Software Foundation
|
||||
gives unlimited permission to copy, distribute and modify it."
|
||||
|
||||
@@ -10913,7 +10921,7 @@ fi
|
||||
_ACEOF
|
||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||
if \$ac_cs_recheck; then
|
||||
set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
|
||||
set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
|
||||
shift
|
||||
\$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
|
||||
CONFIG_SHELL='$SHELL'
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
dnl
|
||||
dnl "$Id: configure.ac 12787 2015-07-14 21:19:57Z msweet $"
|
||||
dnl "$Id: configure.ac 12998 2015-12-02 15:09:04Z msweet $"
|
||||
dnl
|
||||
dnl Configuration script for CUPS.
|
||||
dnl
|
||||
@@ -17,7 +17,7 @@ dnl We need at least autoconf 2.60...
|
||||
AC_PREREQ(2.60)
|
||||
|
||||
dnl Package name and version...
|
||||
AC_INIT([CUPS], [2.1rc1], [https://www.cups.org/str.php], [cups], [https://www.cups.org/])
|
||||
AC_INIT([CUPS], [2.1.2], [https://www.cups.org/str.php], [cups], [https://www.cups.org/])
|
||||
|
||||
sinclude(config-scripts/cups-opsys.m4)
|
||||
sinclude(config-scripts/cups-common.m4)
|
||||
@@ -95,5 +95,5 @@ AC_OUTPUT(Makedefs
|
||||
chmod +x cups-config
|
||||
|
||||
dnl
|
||||
dnl End of "$Id: configure.ac 12787 2015-07-14 21:19:57Z msweet $".
|
||||
dnl End of "$Id: configure.ac 12998 2015-12-02 15:09:04Z msweet $".
|
||||
dnl
|
||||
|
||||
+3
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id: Makefile 12635 2015-05-19 02:12:22Z msweet $"
|
||||
# "$Id: Makefile 12850 2015-08-27 19:29:06Z msweet $"
|
||||
#
|
||||
# API library Makefile for CUPS.
|
||||
#
|
||||
@@ -83,6 +83,7 @@ LIBOBJS = \
|
||||
TESTOBJS = \
|
||||
testadmin.o \
|
||||
testarray.o \
|
||||
testcache.o \
|
||||
testconflicts.o \
|
||||
testcups.o \
|
||||
testdest.o \
|
||||
@@ -677,5 +678,5 @@ tls.o: tls-darwin.c tls-gnutls.c tls-sspi.c
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id: Makefile 12635 2015-05-19 02:12:22Z msweet $".
|
||||
# End of "$Id: Makefile 12850 2015-08-27 19:29:06Z msweet $".
|
||||
#
|
||||
|
||||
+47
-4
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: adminutil.c 11598 2014-02-18 18:58:19Z msweet $"
|
||||
* "$Id: adminutil.c 12945 2015-10-26 19:46:02Z msweet $"
|
||||
*
|
||||
* Administration utility API definitions for CUPS.
|
||||
*
|
||||
* Copyright 2007-2014 by Apple Inc.
|
||||
* Copyright 2007-2015 by Apple Inc.
|
||||
* Copyright 2001-2007 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -1175,6 +1175,7 @@ cupsAdminSetServerSettings(
|
||||
in_cancel_job, /* In a cancel-job section? */
|
||||
in_admin_location, /* In the /admin location? */
|
||||
in_conf_location, /* In the /admin/conf location? */
|
||||
in_log_location, /* In the /admin/log location? */
|
||||
in_root_location; /* In the / location? */
|
||||
const char *val; /* Setting value */
|
||||
int share_printers, /* Share local printers */
|
||||
@@ -1188,6 +1189,7 @@ cupsAdminSetServerSettings(
|
||||
wrote_loglevel, /* Wrote the LogLevel line? */
|
||||
wrote_admin_location, /* Wrote the /admin location? */
|
||||
wrote_conf_location, /* Wrote the /admin/conf location? */
|
||||
wrote_log_location, /* Wrote the /admin/log location? */
|
||||
wrote_root_location; /* Wrote the / location? */
|
||||
int indent; /* Indentation */
|
||||
int cupsd_num_settings; /* New number of settings */
|
||||
@@ -1401,12 +1403,14 @@ cupsAdminSetServerSettings(
|
||||
in_conf_location = 0;
|
||||
in_default_policy = 0;
|
||||
in_location = 0;
|
||||
in_log_location = 0;
|
||||
in_policy = 0;
|
||||
in_root_location = 0;
|
||||
linenum = 0;
|
||||
wrote_admin_location = 0;
|
||||
wrote_browsing = 0;
|
||||
wrote_conf_location = 0;
|
||||
wrote_log_location = 0;
|
||||
wrote_loglevel = 0;
|
||||
wrote_policy = 0;
|
||||
wrote_port_listen = 0;
|
||||
@@ -1550,8 +1554,10 @@ cupsAdminSetServerSettings(
|
||||
indent += 2;
|
||||
if (!strcmp(value, "/admin"))
|
||||
in_admin_location = 1;
|
||||
if (!strcmp(value, "/admin/conf"))
|
||||
else if (!strcmp(value, "/admin/conf"))
|
||||
in_conf_location = 1;
|
||||
else if (!strcmp(value, "/admin/log"))
|
||||
in_log_location = 1;
|
||||
else if (!strcmp(value, "/"))
|
||||
in_root_location = 1;
|
||||
|
||||
@@ -1593,6 +1599,23 @@ cupsAdminSetServerSettings(
|
||||
cupsFilePrintf(temp, " Allow %s\n",
|
||||
remote_any > 0 ? "all" : "@LOCAL");
|
||||
}
|
||||
else if (in_log_location && remote_admin >= 0)
|
||||
{
|
||||
wrote_log_location = 1;
|
||||
|
||||
if (remote_admin)
|
||||
cupsFilePuts(temp, " # Allow remote access to the log "
|
||||
"files...\n");
|
||||
else
|
||||
cupsFilePuts(temp, " # Restrict access to the log "
|
||||
"files...\n");
|
||||
|
||||
cupsFilePuts(temp, " Order allow,deny\n");
|
||||
|
||||
if (remote_admin)
|
||||
cupsFilePrintf(temp, " Allow %s\n",
|
||||
remote_any > 0 ? "all" : "@LOCAL");
|
||||
}
|
||||
else if (in_root_location &&
|
||||
(remote_admin >= 0 || remote_any > 0 || share_printers >= 0))
|
||||
{
|
||||
@@ -1619,6 +1642,7 @@ cupsAdminSetServerSettings(
|
||||
|
||||
in_admin_location = 0;
|
||||
in_conf_location = 0;
|
||||
in_log_location = 0;
|
||||
in_root_location = 0;
|
||||
|
||||
cupsFilePuts(temp, "</Location>\n");
|
||||
@@ -1867,6 +1891,25 @@ cupsAdminSetServerSettings(
|
||||
cupsFilePuts(temp, "</Location>\n");
|
||||
}
|
||||
|
||||
if (!wrote_log_location && remote_admin >= 0)
|
||||
{
|
||||
if (remote_admin)
|
||||
cupsFilePuts(temp,
|
||||
"# Allow remote access to the log files...\n");
|
||||
else
|
||||
cupsFilePuts(temp, "# Restrict access to the log files...\n");
|
||||
|
||||
cupsFilePuts(temp, "<Location /admin/log>\n"
|
||||
" AuthType Default\n"
|
||||
" Require user @SYSTEM\n"
|
||||
" Order allow,deny\n");
|
||||
|
||||
if (remote_admin)
|
||||
cupsFilePrintf(temp, " Allow %s\n", remote_any > 0 ? "all" : "@LOCAL");
|
||||
|
||||
cupsFilePuts(temp, "</Location>\n");
|
||||
}
|
||||
|
||||
if (!wrote_policy && user_cancel_any >= 0)
|
||||
{
|
||||
cupsFilePuts(temp, "<Policy default>\n"
|
||||
@@ -2326,5 +2369,5 @@ write_option(cups_file_t *dstfp, /* I - PPD file */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: adminutil.c 11598 2014-02-18 18:58:19Z msweet $".
|
||||
* End of "$Id: adminutil.c 12945 2015-10-26 19:46:02Z msweet $".
|
||||
*/
|
||||
|
||||
+10
-24
@@ -1,22 +1,16 @@
|
||||
/*
|
||||
* "$Id: attr.c 10996 2013-05-29 11:51:34Z msweet $"
|
||||
* "$Id: attr.c 12867 2015-09-13 23:49:19Z msweet $"
|
||||
*
|
||||
* PPD model-specific attribute routines for CUPS.
|
||||
* PPD model-specific attribute routines for CUPS.
|
||||
*
|
||||
* Copyright 2007-2012 by Apple Inc.
|
||||
* Copyright 1997-2006 by Easy Software Products.
|
||||
* Copyright 2007-2015 by Apple Inc.
|
||||
* Copyright 1997-2006 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
* property of Apple Inc. and are protected by Federal copyright
|
||||
* law. Distribution and use rights are outlined in the file "LICENSE.txt"
|
||||
* which should have been included with this file. If this file is
|
||||
* file is missing or damaged, see the license at "http://www.cups.org/".
|
||||
*
|
||||
* Contents:
|
||||
*
|
||||
* ppdFindAttr() - Find the first matching attribute.
|
||||
* ppdFindNextAttr() - Find the next matching attribute.
|
||||
* _ppdNormalizeMakeAndModel() - Normalize a product/make-and-model string.
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
* property of Apple Inc. and are protected by Federal copyright
|
||||
* law. Distribution and use rights are outlined in the file "LICENSE.txt"
|
||||
* which should have been included with this file. If this file is
|
||||
* file is missing or damaged, see the license at "http://www.cups.org/".
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -229,14 +223,6 @@ _ppdNormalizeMakeAndModel(
|
||||
|
||||
snprintf(buffer, bufsize, "Canon %s", make_and_model);
|
||||
}
|
||||
else if (!_cups_strncasecmp(make_and_model, "primera", 7))
|
||||
{
|
||||
/*
|
||||
* Fargo...
|
||||
*/
|
||||
|
||||
snprintf(buffer, bufsize, "Fargo %s", make_and_model);
|
||||
}
|
||||
else if (!_cups_strncasecmp(make_and_model, "designjet", 9) ||
|
||||
!_cups_strncasecmp(make_and_model, "deskjet", 7))
|
||||
{
|
||||
@@ -331,5 +317,5 @@ _ppdNormalizeMakeAndModel(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: attr.c 10996 2013-05-29 11:51:34Z msweet $".
|
||||
* End of "$Id: attr.c 12867 2015-09-13 23:49:19Z msweet $".
|
||||
*/
|
||||
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: cups.h 12733 2015-06-12 01:21:05Z msweet $"
|
||||
* "$Id: cups.h 12998 2015-12-02 15:09:04Z msweet $"
|
||||
*
|
||||
* API definitions for CUPS.
|
||||
*
|
||||
@@ -58,10 +58,10 @@ extern "C" {
|
||||
* Constants...
|
||||
*/
|
||||
|
||||
# define CUPS_VERSION 2.0100
|
||||
# define CUPS_VERSION 2.0102
|
||||
# define CUPS_VERSION_MAJOR 2
|
||||
# define CUPS_VERSION_MINOR 1
|
||||
# define CUPS_VERSION_PATCH 0
|
||||
# define CUPS_VERSION_PATCH 2
|
||||
|
||||
# define CUPS_BC_FD 3
|
||||
/* Back-channel file descriptor for
|
||||
@@ -636,5 +636,5 @@ extern int cupsSetServerCredentials(const char *path, const char *common_name,
|
||||
#endif /* !_CUPS_CUPS_H_ */
|
||||
|
||||
/*
|
||||
* End of "$Id: cups.h 12733 2015-06-12 01:21:05Z msweet $".
|
||||
* End of "$Id: cups.h 12998 2015-12-02 15:09:04Z msweet $".
|
||||
*/
|
||||
|
||||
+253
-251
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: debug.c 12327 2014-12-09 20:38:39Z msweet $"
|
||||
* "$Id: debug.c 12928 2015-10-23 21:31:58Z msweet $"
|
||||
*
|
||||
* Debugging functions for CUPS.
|
||||
*
|
||||
* Copyright 2008-2014 by Apple Inc.
|
||||
* Copyright 2008-2015 by Apple Inc.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
* property of Apple Inc. and are protected by Federal copyright
|
||||
@@ -82,14 +82,258 @@ debug_thread_id(void)
|
||||
|
||||
|
||||
/*
|
||||
* 'debug_vsnprintf()' - Format a string into a fixed size buffer.
|
||||
* '_cups_debug_printf()' - Write a formatted line to the log.
|
||||
*/
|
||||
|
||||
static ssize_t /* O - Number of bytes formatted */
|
||||
debug_vsnprintf(char *buffer, /* O - Output buffer */
|
||||
size_t bufsize, /* O - Size of output buffer */
|
||||
const char *format, /* I - printf-style format string */
|
||||
va_list ap) /* I - Pointer to additional arguments */
|
||||
void DLLExport
|
||||
_cups_debug_printf(const char *format, /* I - Printf-style format string */
|
||||
...) /* I - Additional arguments as needed */
|
||||
{
|
||||
va_list ap; /* Pointer to arguments */
|
||||
struct timeval curtime; /* Current time */
|
||||
char buffer[2048]; /* Output buffer */
|
||||
ssize_t bytes; /* Number of bytes in buffer */
|
||||
int level; /* Log level in message */
|
||||
|
||||
|
||||
/*
|
||||
* See if we need to do any logging...
|
||||
*/
|
||||
|
||||
if (!debug_init)
|
||||
_cups_debug_set(getenv("CUPS_DEBUG_LOG"), getenv("CUPS_DEBUG_LEVEL"),
|
||||
getenv("CUPS_DEBUG_FILTER"), 0);
|
||||
|
||||
if (_cups_debug_fd < 0)
|
||||
return;
|
||||
|
||||
/*
|
||||
* Filter as needed...
|
||||
*/
|
||||
|
||||
if (isdigit(format[0]))
|
||||
level = *format++ - '0';
|
||||
else
|
||||
level = 0;
|
||||
|
||||
if (level > _cups_debug_level)
|
||||
return;
|
||||
|
||||
if (debug_filter)
|
||||
{
|
||||
int result; /* Filter result */
|
||||
|
||||
_cupsMutexLock(&debug_init_mutex);
|
||||
result = regexec(debug_filter, format, 0, NULL, 0);
|
||||
_cupsMutexUnlock(&debug_init_mutex);
|
||||
|
||||
if (result)
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Format the message...
|
||||
*/
|
||||
|
||||
gettimeofday(&curtime, NULL);
|
||||
snprintf(buffer, sizeof(buffer), "T%03d %02d:%02d:%02d.%03d ",
|
||||
debug_thread_id(), (int)((curtime.tv_sec / 3600) % 24),
|
||||
(int)((curtime.tv_sec / 60) % 60),
|
||||
(int)(curtime.tv_sec % 60), (int)(curtime.tv_usec / 1000));
|
||||
|
||||
va_start(ap, format);
|
||||
bytes = _cups_safe_vsnprintf(buffer + 19, sizeof(buffer) - 20, format, ap) + 19;
|
||||
va_end(ap);
|
||||
|
||||
if ((size_t)bytes >= (sizeof(buffer) - 1))
|
||||
{
|
||||
buffer[sizeof(buffer) - 2] = '\n';
|
||||
bytes = sizeof(buffer) - 1;
|
||||
}
|
||||
else if (buffer[bytes - 1] != '\n')
|
||||
{
|
||||
buffer[bytes++] = '\n';
|
||||
buffer[bytes] = '\0';
|
||||
}
|
||||
|
||||
/*
|
||||
* Write it out...
|
||||
*/
|
||||
|
||||
_cupsMutexLock(&debug_log_mutex);
|
||||
write(_cups_debug_fd, buffer, (size_t)bytes);
|
||||
_cupsMutexUnlock(&debug_log_mutex);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* '_cups_debug_puts()' - Write a single line to the log.
|
||||
*/
|
||||
|
||||
void DLLExport
|
||||
_cups_debug_puts(const char *s) /* I - String to output */
|
||||
{
|
||||
struct timeval curtime; /* Current time */
|
||||
char buffer[2048]; /* Output buffer */
|
||||
ssize_t bytes; /* Number of bytes in buffer */
|
||||
int level; /* Log level in message */
|
||||
|
||||
|
||||
/*
|
||||
* See if we need to do any logging...
|
||||
*/
|
||||
|
||||
if (!debug_init)
|
||||
_cups_debug_set(getenv("CUPS_DEBUG_LOG"), getenv("CUPS_DEBUG_LEVEL"),
|
||||
getenv("CUPS_DEBUG_FILTER"), 0);
|
||||
|
||||
if (_cups_debug_fd < 0)
|
||||
return;
|
||||
|
||||
/*
|
||||
* Filter as needed...
|
||||
*/
|
||||
|
||||
if (isdigit(s[0]))
|
||||
level = *s++ - '0';
|
||||
else
|
||||
level = 0;
|
||||
|
||||
if (level > _cups_debug_level)
|
||||
return;
|
||||
|
||||
if (debug_filter)
|
||||
{
|
||||
int result; /* Filter result */
|
||||
|
||||
_cupsMutexLock(&debug_init_mutex);
|
||||
result = regexec(debug_filter, s, 0, NULL, 0);
|
||||
_cupsMutexUnlock(&debug_init_mutex);
|
||||
|
||||
if (result)
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Format the message...
|
||||
*/
|
||||
|
||||
gettimeofday(&curtime, NULL);
|
||||
bytes = snprintf(buffer, sizeof(buffer), "T%03d %02d:%02d:%02d.%03d %s",
|
||||
debug_thread_id(), (int)((curtime.tv_sec / 3600) % 24),
|
||||
(int)((curtime.tv_sec / 60) % 60),
|
||||
(int)(curtime.tv_sec % 60), (int)(curtime.tv_usec / 1000),
|
||||
s);
|
||||
|
||||
if ((size_t)bytes >= (sizeof(buffer) - 1))
|
||||
{
|
||||
buffer[sizeof(buffer) - 2] = '\n';
|
||||
bytes = sizeof(buffer) - 1;
|
||||
}
|
||||
else if (buffer[bytes - 1] != '\n')
|
||||
{
|
||||
buffer[bytes++] = '\n';
|
||||
buffer[bytes] = '\0';
|
||||
}
|
||||
|
||||
/*
|
||||
* Write it out...
|
||||
*/
|
||||
|
||||
_cupsMutexLock(&debug_log_mutex);
|
||||
write(_cups_debug_fd, buffer, (size_t)bytes);
|
||||
_cupsMutexUnlock(&debug_log_mutex);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* '_cups_debug_set()' - Enable or disable debug logging.
|
||||
*/
|
||||
|
||||
void DLLExport
|
||||
_cups_debug_set(const char *logfile, /* I - Log file or NULL */
|
||||
const char *level, /* I - Log level or NULL */
|
||||
const char *filter, /* I - Filter string or NULL */
|
||||
int force) /* I - Force initialization */
|
||||
{
|
||||
_cupsMutexLock(&debug_init_mutex);
|
||||
|
||||
if (!debug_init || force)
|
||||
{
|
||||
/*
|
||||
* Restore debug settings to defaults...
|
||||
*/
|
||||
|
||||
if (_cups_debug_fd != -1)
|
||||
{
|
||||
close(_cups_debug_fd);
|
||||
_cups_debug_fd = -1;
|
||||
}
|
||||
|
||||
if (debug_filter)
|
||||
{
|
||||
regfree((regex_t *)debug_filter);
|
||||
debug_filter = NULL;
|
||||
}
|
||||
|
||||
_cups_debug_level = 1;
|
||||
|
||||
/*
|
||||
* Open logs, set log levels, etc.
|
||||
*/
|
||||
|
||||
if (!logfile)
|
||||
_cups_debug_fd = -1;
|
||||
else if (!strcmp(logfile, "-"))
|
||||
_cups_debug_fd = 2;
|
||||
else
|
||||
{
|
||||
char buffer[1024]; /* Filename buffer */
|
||||
|
||||
snprintf(buffer, sizeof(buffer), logfile, getpid());
|
||||
|
||||
if (buffer[0] == '+')
|
||||
_cups_debug_fd = open(buffer + 1, O_WRONLY | O_APPEND | O_CREAT, 0644);
|
||||
else
|
||||
_cups_debug_fd = open(buffer, O_WRONLY | O_TRUNC | O_CREAT, 0644);
|
||||
}
|
||||
|
||||
if (level)
|
||||
_cups_debug_level = atoi(level);
|
||||
|
||||
if (filter)
|
||||
{
|
||||
if ((debug_filter = (regex_t *)calloc(1, sizeof(regex_t))) == NULL)
|
||||
fputs("Unable to allocate memory for CUPS_DEBUG_FILTER - results not "
|
||||
"filtered!\n", stderr);
|
||||
else if (regcomp(debug_filter, filter, REG_EXTENDED))
|
||||
{
|
||||
fputs("Bad regular expression in CUPS_DEBUG_FILTER - results not "
|
||||
"filtered!\n", stderr);
|
||||
free(debug_filter);
|
||||
debug_filter = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
debug_init = 1;
|
||||
}
|
||||
|
||||
_cupsMutexUnlock(&debug_init_mutex);
|
||||
}
|
||||
#endif /* DEBUG */
|
||||
|
||||
|
||||
/*
|
||||
* '_cups_safe_vsnprintf()' - Format a string into a fixed size buffer,
|
||||
* quoting special characters.
|
||||
*/
|
||||
|
||||
ssize_t /* O - Number of bytes formatted */
|
||||
_cups_safe_vsnprintf(
|
||||
char *buffer, /* O - Output buffer */
|
||||
size_t bufsize, /* O - Size of output buffer */
|
||||
const char *format, /* I - printf-style format string */
|
||||
va_list ap) /* I - Pointer to additional arguments */
|
||||
{
|
||||
char *bufptr, /* Pointer to position in buffer */
|
||||
*bufend, /* Pointer to end of buffer */
|
||||
@@ -401,247 +645,5 @@ debug_vsnprintf(char *buffer, /* O - Output buffer */
|
||||
|
||||
|
||||
/*
|
||||
* '_cups_debug_printf()' - Write a formatted line to the log.
|
||||
*/
|
||||
|
||||
void DLLExport
|
||||
_cups_debug_printf(const char *format, /* I - Printf-style format string */
|
||||
...) /* I - Additional arguments as needed */
|
||||
{
|
||||
va_list ap; /* Pointer to arguments */
|
||||
struct timeval curtime; /* Current time */
|
||||
char buffer[2048]; /* Output buffer */
|
||||
ssize_t bytes; /* Number of bytes in buffer */
|
||||
int level; /* Log level in message */
|
||||
|
||||
|
||||
/*
|
||||
* See if we need to do any logging...
|
||||
*/
|
||||
|
||||
if (!debug_init)
|
||||
_cups_debug_set(getenv("CUPS_DEBUG_LOG"), getenv("CUPS_DEBUG_LEVEL"),
|
||||
getenv("CUPS_DEBUG_FILTER"), 0);
|
||||
|
||||
if (_cups_debug_fd < 0)
|
||||
return;
|
||||
|
||||
/*
|
||||
* Filter as needed...
|
||||
*/
|
||||
|
||||
if (isdigit(format[0]))
|
||||
level = *format++ - '0';
|
||||
else
|
||||
level = 0;
|
||||
|
||||
if (level > _cups_debug_level)
|
||||
return;
|
||||
|
||||
if (debug_filter)
|
||||
{
|
||||
int result; /* Filter result */
|
||||
|
||||
_cupsMutexLock(&debug_init_mutex);
|
||||
result = regexec(debug_filter, format, 0, NULL, 0);
|
||||
_cupsMutexUnlock(&debug_init_mutex);
|
||||
|
||||
if (result)
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Format the message...
|
||||
*/
|
||||
|
||||
gettimeofday(&curtime, NULL);
|
||||
snprintf(buffer, sizeof(buffer), "T%03d %02d:%02d:%02d.%03d ",
|
||||
debug_thread_id(), (int)((curtime.tv_sec / 3600) % 24),
|
||||
(int)((curtime.tv_sec / 60) % 60),
|
||||
(int)(curtime.tv_sec % 60), (int)(curtime.tv_usec / 1000));
|
||||
|
||||
va_start(ap, format);
|
||||
bytes = debug_vsnprintf(buffer + 19, sizeof(buffer) - 20, format, ap) + 19;
|
||||
va_end(ap);
|
||||
|
||||
if ((size_t)bytes >= (sizeof(buffer) - 1))
|
||||
{
|
||||
buffer[sizeof(buffer) - 2] = '\n';
|
||||
bytes = sizeof(buffer) - 1;
|
||||
}
|
||||
else if (buffer[bytes - 1] != '\n')
|
||||
{
|
||||
buffer[bytes++] = '\n';
|
||||
buffer[bytes] = '\0';
|
||||
}
|
||||
|
||||
/*
|
||||
* Write it out...
|
||||
*/
|
||||
|
||||
_cupsMutexLock(&debug_log_mutex);
|
||||
write(_cups_debug_fd, buffer, (size_t)bytes);
|
||||
_cupsMutexUnlock(&debug_log_mutex);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* '_cups_debug_puts()' - Write a single line to the log.
|
||||
*/
|
||||
|
||||
void DLLExport
|
||||
_cups_debug_puts(const char *s) /* I - String to output */
|
||||
{
|
||||
struct timeval curtime; /* Current time */
|
||||
char buffer[2048]; /* Output buffer */
|
||||
ssize_t bytes; /* Number of bytes in buffer */
|
||||
int level; /* Log level in message */
|
||||
|
||||
|
||||
/*
|
||||
* See if we need to do any logging...
|
||||
*/
|
||||
|
||||
if (!debug_init)
|
||||
_cups_debug_set(getenv("CUPS_DEBUG_LOG"), getenv("CUPS_DEBUG_LEVEL"),
|
||||
getenv("CUPS_DEBUG_FILTER"), 0);
|
||||
|
||||
if (_cups_debug_fd < 0)
|
||||
return;
|
||||
|
||||
/*
|
||||
* Filter as needed...
|
||||
*/
|
||||
|
||||
if (isdigit(s[0]))
|
||||
level = *s++ - '0';
|
||||
else
|
||||
level = 0;
|
||||
|
||||
if (level > _cups_debug_level)
|
||||
return;
|
||||
|
||||
if (debug_filter)
|
||||
{
|
||||
int result; /* Filter result */
|
||||
|
||||
_cupsMutexLock(&debug_init_mutex);
|
||||
result = regexec(debug_filter, s, 0, NULL, 0);
|
||||
_cupsMutexUnlock(&debug_init_mutex);
|
||||
|
||||
if (result)
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Format the message...
|
||||
*/
|
||||
|
||||
gettimeofday(&curtime, NULL);
|
||||
bytes = snprintf(buffer, sizeof(buffer), "T%03d %02d:%02d:%02d.%03d %s",
|
||||
debug_thread_id(), (int)((curtime.tv_sec / 3600) % 24),
|
||||
(int)((curtime.tv_sec / 60) % 60),
|
||||
(int)(curtime.tv_sec % 60), (int)(curtime.tv_usec / 1000),
|
||||
s);
|
||||
|
||||
if ((size_t)bytes >= (sizeof(buffer) - 1))
|
||||
{
|
||||
buffer[sizeof(buffer) - 2] = '\n';
|
||||
bytes = sizeof(buffer) - 1;
|
||||
}
|
||||
else if (buffer[bytes - 1] != '\n')
|
||||
{
|
||||
buffer[bytes++] = '\n';
|
||||
buffer[bytes] = '\0';
|
||||
}
|
||||
|
||||
/*
|
||||
* Write it out...
|
||||
*/
|
||||
|
||||
_cupsMutexLock(&debug_log_mutex);
|
||||
write(_cups_debug_fd, buffer, (size_t)bytes);
|
||||
_cupsMutexUnlock(&debug_log_mutex);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* '_cups_debug_set()' - Enable or disable debug logging.
|
||||
*/
|
||||
|
||||
void DLLExport
|
||||
_cups_debug_set(const char *logfile, /* I - Log file or NULL */
|
||||
const char *level, /* I - Log level or NULL */
|
||||
const char *filter, /* I - Filter string or NULL */
|
||||
int force) /* I - Force initialization */
|
||||
{
|
||||
_cupsMutexLock(&debug_init_mutex);
|
||||
|
||||
if (!debug_init || force)
|
||||
{
|
||||
/*
|
||||
* Restore debug settings to defaults...
|
||||
*/
|
||||
|
||||
if (_cups_debug_fd != -1)
|
||||
{
|
||||
close(_cups_debug_fd);
|
||||
_cups_debug_fd = -1;
|
||||
}
|
||||
|
||||
if (debug_filter)
|
||||
{
|
||||
regfree((regex_t *)debug_filter);
|
||||
debug_filter = NULL;
|
||||
}
|
||||
|
||||
_cups_debug_level = 1;
|
||||
|
||||
/*
|
||||
* Open logs, set log levels, etc.
|
||||
*/
|
||||
|
||||
if (!logfile)
|
||||
_cups_debug_fd = -1;
|
||||
else if (!strcmp(logfile, "-"))
|
||||
_cups_debug_fd = 2;
|
||||
else
|
||||
{
|
||||
char buffer[1024]; /* Filename buffer */
|
||||
|
||||
snprintf(buffer, sizeof(buffer), logfile, getpid());
|
||||
|
||||
if (buffer[0] == '+')
|
||||
_cups_debug_fd = open(buffer + 1, O_WRONLY | O_APPEND | O_CREAT, 0644);
|
||||
else
|
||||
_cups_debug_fd = open(buffer, O_WRONLY | O_TRUNC | O_CREAT, 0644);
|
||||
}
|
||||
|
||||
if (level)
|
||||
_cups_debug_level = atoi(level);
|
||||
|
||||
if (filter)
|
||||
{
|
||||
if ((debug_filter = (regex_t *)calloc(1, sizeof(regex_t))) == NULL)
|
||||
fputs("Unable to allocate memory for CUPS_DEBUG_FILTER - results not "
|
||||
"filtered!\n", stderr);
|
||||
else if (regcomp(debug_filter, filter, REG_EXTENDED))
|
||||
{
|
||||
fputs("Bad regular expression in CUPS_DEBUG_FILTER - results not "
|
||||
"filtered!\n", stderr);
|
||||
free(debug_filter);
|
||||
debug_filter = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
debug_init = 1;
|
||||
}
|
||||
|
||||
_cupsMutexUnlock(&debug_init_mutex);
|
||||
}
|
||||
#endif /* DEBUG */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: debug.c 12327 2014-12-09 20:38:39Z msweet $".
|
||||
* End of "$Id: debug.c 12928 2015-10-23 21:31:58Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: http-support.c 12752 2015-06-24 19:30:47Z msweet $"
|
||||
* "$Id: http-support.c 12970 2015-11-13 20:02:51Z msweet $"
|
||||
*
|
||||
* HTTP support routines for CUPS.
|
||||
*
|
||||
@@ -1233,6 +1233,12 @@ httpSeparateURI(
|
||||
|
||||
*port = (int)strtol(uri + 1, (char **)&uri, 10);
|
||||
|
||||
if (*port <= 0 || *port > 65535)
|
||||
{
|
||||
*port = 0;
|
||||
return (HTTP_URI_STATUS_BAD_PORT);
|
||||
}
|
||||
|
||||
if (*uri != '/' && *uri)
|
||||
{
|
||||
*port = 0;
|
||||
@@ -2544,5 +2550,5 @@ http_resolve_cb(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: http-support.c 12752 2015-06-24 19:30:47Z msweet $".
|
||||
* End of "$Id: http-support.c 12970 2015-11-13 20:02:51Z msweet $".
|
||||
*/
|
||||
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: http.c 12333 2014-12-09 21:01:46Z msweet $"
|
||||
* "$Id: http.c 12970 2015-11-13 20:02:51Z msweet $"
|
||||
*
|
||||
* HTTP routines for CUPS.
|
||||
*
|
||||
@@ -898,7 +898,7 @@ httpGetContentEncoding(http_t *http) /* I - HTTP connection */
|
||||
*/
|
||||
|
||||
const char * /* O - Cookie data or NULL */
|
||||
httpGetCookie(http_t *http) /* I - HTTP connecion */
|
||||
httpGetCookie(http_t *http) /* I - HTTP connection */
|
||||
{
|
||||
return (http ? http->cookie : NULL);
|
||||
}
|
||||
@@ -3003,7 +3003,7 @@ _httpUpdate(http_t *http, /* I - HTTP connection */
|
||||
*status = http->status;
|
||||
return (0);
|
||||
}
|
||||
else if (!strncmp(line, "HTTP/", 5))
|
||||
else if (!strncmp(line, "HTTP/", 5) && http->mode == _HTTP_MODE_CLIENT)
|
||||
{
|
||||
/*
|
||||
* Got the beginning of a response...
|
||||
@@ -4850,5 +4850,5 @@ http_write_chunk(http_t *http, /* I - HTTP connection */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: http.c 12333 2014-12-09 21:01:46Z msweet $".
|
||||
* End of "$Id: http.c 12970 2015-11-13 20:02:51Z msweet $".
|
||||
*/
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: http.h 12094 2014-08-19 12:15:11Z msweet $"
|
||||
* "$Id: http.h 12848 2015-08-26 18:51:57Z msweet $"
|
||||
*
|
||||
* Hyper-Text Transport Protocol definitions for CUPS.
|
||||
*
|
||||
@@ -246,7 +246,7 @@ typedef enum http_status_e /**** HTTP status codes ****/
|
||||
HTTP_STATUS_NOT_AUTHORITATIVE, /* Information isn't authoritative */
|
||||
HTTP_STATUS_NO_CONTENT, /* Successful command, no new data */
|
||||
HTTP_STATUS_RESET_CONTENT, /* Content was reset/recreated */
|
||||
HTTP_STATUS_PARTIAL_CONTENT, /* Only a partial file was recieved/sent */
|
||||
HTTP_STATUS_PARTIAL_CONTENT, /* Only a partial file was received/sent */
|
||||
|
||||
HTTP_STATUS_MULTIPLE_CHOICES = 300, /* Multiple files match request */
|
||||
HTTP_STATUS_MOVED_PERMANENTLY, /* Document has moved permanently */
|
||||
@@ -656,5 +656,5 @@ extern const char *httpURIStatusString(http_uri_status_t status) _CUPS_API_2_0;
|
||||
#endif /* !_CUPS_HTTP_H_ */
|
||||
|
||||
/*
|
||||
* End of "$Id: http.h 12094 2014-08-19 12:15:11Z msweet $".
|
||||
* End of "$Id: http.h 12848 2015-08-26 18:51:57Z msweet $".
|
||||
*/
|
||||
|
||||
+30
-4
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: language.c 12790 2015-07-20 17:05:06Z msweet $"
|
||||
* "$Id: language.c 12841 2015-08-10 17:07:30Z msweet $"
|
||||
*
|
||||
* I18N/language support for CUPS.
|
||||
*
|
||||
@@ -1180,7 +1180,7 @@ appleLangDefault(void)
|
||||
* See if we have an Info.plist file in the bundle...
|
||||
*/
|
||||
|
||||
CFStringGetCString(cfpath, path,sizeof(path), kCFStringEncodingUTF8);
|
||||
CFStringGetCString(cfpath, path, sizeof(path), kCFStringEncodingUTF8);
|
||||
DEBUG_printf(("3appleLangDefault: Got a resource URL (\"%s\")", path));
|
||||
strlcat(path, "Contents/Info.plist", sizeof(path));
|
||||
|
||||
@@ -1211,7 +1211,6 @@ appleLangDefault(void)
|
||||
|
||||
if (localizationList)
|
||||
{
|
||||
|
||||
#ifdef DEBUG
|
||||
if (CFGetTypeID(localizationList) == CFArrayGetTypeID())
|
||||
DEBUG_printf(("3appleLangDefault: Got localizationList, %d entries.",
|
||||
@@ -1287,6 +1286,8 @@ appleLangDefault(void)
|
||||
strlcpy(cg->language, "en_US.UTF-8", sizeof(cg->language));
|
||||
}
|
||||
}
|
||||
else
|
||||
DEBUG_printf(("3appleLangDefault: Using previous locale \"%s\".", cg->language));
|
||||
|
||||
/*
|
||||
* Return the cached locale...
|
||||
@@ -1324,6 +1325,18 @@ appleMessageLoad(const char *locale) /* I - Locale ID */
|
||||
snprintf(filename, sizeof(filename),
|
||||
CUPS_BUNDLEDIR "/Resources/%s.lproj/cups.strings",
|
||||
_cupsAppleLanguage(locale, applelang, sizeof(applelang)));
|
||||
|
||||
if (access(filename, 0))
|
||||
{
|
||||
/*
|
||||
* <rdar://problem/22086642>
|
||||
*
|
||||
* Try with original locale string...
|
||||
*/
|
||||
|
||||
snprintf(filename, sizeof(filename), CUPS_BUNDLEDIR "/Resources/%s.lproj/cups.strings", locale);
|
||||
}
|
||||
|
||||
DEBUG_printf(("1appleMessageLoad: filename=\"%s\"", filename));
|
||||
|
||||
if (access(filename, 0))
|
||||
@@ -1346,6 +1359,19 @@ appleMessageLoad(const char *locale) /* I - Locale ID */
|
||||
locale = "Japanese";
|
||||
else if (!strncmp(locale, "es", 2))
|
||||
locale = "Spanish";
|
||||
else if (!strcmp(locale, "zh_HK"))
|
||||
{
|
||||
/*
|
||||
* <rdar://problem/22130168>
|
||||
*
|
||||
* Try zh_TW first, then zh... Sigh...
|
||||
*/
|
||||
|
||||
if (!access(CUPS_BUNDLEDIR "/Resources/zh_TW.lproj/cups.strings", 0))
|
||||
locale = "zh_TW";
|
||||
else
|
||||
locale = "zh";
|
||||
}
|
||||
else if (strstr(locale, "_") != NULL || strstr(locale, "-") != NULL)
|
||||
{
|
||||
/*
|
||||
@@ -1598,5 +1624,5 @@ cups_unquote(char *d, /* O - Unquoted string */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: language.c 12790 2015-07-20 17:05:06Z msweet $".
|
||||
* End of "$Id: language.c 12841 2015-08-10 17:07:30Z msweet $".
|
||||
*/
|
||||
|
||||
+20
-5
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: localize.c 11698 2014-03-17 11:58:18Z msweet $"
|
||||
* "$Id: localize.c 12834 2015-08-06 13:56:32Z msweet $"
|
||||
*
|
||||
* PPD localization routines for CUPS.
|
||||
*
|
||||
* Copyright 2007-2014 by Apple Inc.
|
||||
* Copyright 2007-2015 by Apple Inc.
|
||||
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -664,8 +664,23 @@ _ppdLocalizedAttr(ppd_file_t *ppd, /* I - PPD file */
|
||||
snprintf(lkeyword, sizeof(lkeyword), "%s.%s", ll_CC, keyword);
|
||||
if ((attr = ppdFindAttr(ppd, lkeyword, spec)) == NULL)
|
||||
{
|
||||
snprintf(lkeyword, sizeof(lkeyword), "%2.2s.%s", ll_CC, keyword);
|
||||
attr = ppdFindAttr(ppd, lkeyword, spec);
|
||||
/*
|
||||
* <rdar://problem/22130168>
|
||||
*
|
||||
* Hong Kong locale needs special handling... Sigh...
|
||||
*/
|
||||
|
||||
if (!strcmp(ll_CC, "zh_HK"))
|
||||
{
|
||||
snprintf(lkeyword, sizeof(lkeyword), "zh_TW.%s", keyword);
|
||||
attr = ppdFindAttr(ppd, lkeyword, spec);
|
||||
}
|
||||
|
||||
if (!attr)
|
||||
{
|
||||
snprintf(lkeyword, sizeof(lkeyword), "%2.2s.%s", ll_CC, keyword);
|
||||
attr = ppdFindAttr(ppd, lkeyword, spec);
|
||||
}
|
||||
|
||||
if (!attr)
|
||||
{
|
||||
@@ -760,5 +775,5 @@ ppd_ll_CC(char *ll_CC, /* O - Country-specific locale name */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: localize.c 11698 2014-03-17 11:58:18Z msweet $".
|
||||
* End of "$Id: localize.c 12834 2015-08-06 13:56:32Z msweet $".
|
||||
*/
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: ppd-cache.c 12733 2015-06-12 01:21:05Z msweet $"
|
||||
* "$Id: ppd-cache.c 12980 2015-11-17 21:23:32Z msweet $"
|
||||
*
|
||||
* PPD cache implementation for CUPS.
|
||||
*
|
||||
@@ -85,7 +85,7 @@ _cupsConvertOptions(ipp_t *request, /* I - IPP request */
|
||||
* Send standard IPP attributes...
|
||||
*/
|
||||
|
||||
if (pc->password && (keyword = cupsGetOption("job-password", num_options, options)) != NULL)
|
||||
if (pc->password && (keyword = cupsGetOption("job-password", num_options, options)) != NULL && ippGetOperation(request) != IPP_OP_VALIDATE_JOB)
|
||||
{
|
||||
ippAddOctetString(request, IPP_TAG_OPERATION, "job-password", keyword, (int)strlen(keyword));
|
||||
|
||||
@@ -3811,5 +3811,5 @@ pwg_unppdize_name(const char *ppd, /* I - PPD keyword */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: ppd-cache.c 12733 2015-06-12 01:21:05Z msweet $".
|
||||
* End of "$Id: ppd-cache.c 12980 2015-11-17 21:23:32Z msweet $".
|
||||
*/
|
||||
|
||||
+19
-9
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: ppd.c 11558 2014-02-06 18:33:34Z msweet $"
|
||||
* "$Id: ppd.c 12848 2015-08-26 18:51:57Z msweet $"
|
||||
*
|
||||
* PPD file routines for CUPS.
|
||||
*
|
||||
* Copyright 2007-2014 by Apple Inc.
|
||||
* Copyright 2007-2015 by Apple Inc.
|
||||
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -283,7 +283,7 @@ ppdClose(ppd_file_t *ppd) /* I - PPD file record */
|
||||
|
||||
|
||||
/*
|
||||
* 'ppdErrorString()' - Returns the text assocated with a status.
|
||||
* 'ppdErrorString()' - Returns the text associated with a status.
|
||||
*
|
||||
* @since CUPS 1.1.19/OS X 10.3@
|
||||
*/
|
||||
@@ -418,10 +418,10 @@ _ppdOpen(
|
||||
char custom_name[PPD_MAX_NAME];
|
||||
/* CustomFoo attribute name */
|
||||
ppd_attr_t *custom_attr; /* CustomFoo attribute */
|
||||
char ll[4], /* Language + '.' */
|
||||
ll_CC[7]; /* Language + country + '.' */
|
||||
size_t ll_len = 0, /* Language length */
|
||||
ll_CC_len = 0; /* Language + country length */
|
||||
char ll[7], /* Base language + '.' */
|
||||
ll_CC[7]; /* Language w/country + '.' */
|
||||
size_t ll_len = 0, /* Base language length */
|
||||
ll_CC_len = 0; /* Language w/country length */
|
||||
static const char * const ui_keywords[] =
|
||||
{
|
||||
#ifdef CUPS_USE_FULL_UI_KEYWORDS_LIST
|
||||
@@ -519,7 +519,17 @@ _ppdOpen(
|
||||
return (NULL);
|
||||
|
||||
snprintf(ll_CC, sizeof(ll_CC), "%s.", lang->language);
|
||||
snprintf(ll, sizeof(ll), "%2.2s.", lang->language);
|
||||
|
||||
/*
|
||||
* <rdar://problem/22130168>
|
||||
*
|
||||
* Need to use a different base language for some locales...
|
||||
*/
|
||||
|
||||
if (!strcmp(lang->language, "zh_HK"))
|
||||
strlcpy(ll, "zh_TW.", sizeof(ll));
|
||||
else
|
||||
snprintf(ll, sizeof(ll), "%2.2s.", lang->language);
|
||||
|
||||
ll_CC_len = strlen(ll_CC);
|
||||
ll_len = strlen(ll);
|
||||
@@ -3346,5 +3356,5 @@ ppd_update_filters(ppd_file_t *ppd,/* I - PPD file */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: ppd.c 11558 2014-02-06 18:33:34Z msweet $".
|
||||
* End of "$Id: ppd.c 12848 2015-08-26 18:51:57Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: string-private.h 11889 2014-05-22 13:54:15Z msweet $"
|
||||
* "$Id: string-private.h 12928 2015-10-23 21:31:58Z msweet $"
|
||||
*
|
||||
* Private string definitions for CUPS.
|
||||
*
|
||||
* Copyright 2007-2014 by Apple Inc.
|
||||
* Copyright 2007-2015 by Apple Inc.
|
||||
* Copyright 1997-2006 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -147,6 +147,7 @@ extern int _cups_toupper(int ch);
|
||||
* Prototypes...
|
||||
*/
|
||||
|
||||
extern ssize_t _cups_safe_vsnprintf(char *, size_t, const char *, va_list);
|
||||
extern void _cups_strcpy(char *dst, const char *src);
|
||||
|
||||
# ifndef HAVE_STRDUP
|
||||
@@ -218,5 +219,5 @@ extern char *_cupsStrDate(char *buf, size_t bufsize, time_t timeval);
|
||||
#endif /* !_CUPS_STRING_H_ */
|
||||
|
||||
/*
|
||||
* End of "$Id: string-private.h 11889 2014-05-22 13:54:15Z msweet $".
|
||||
* End of "$Id: string-private.h 12928 2015-10-23 21:31:58Z msweet $".
|
||||
*/
|
||||
|
||||
+47
-5
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: testlang.c 10996 2013-05-29 11:51:34Z msweet $"
|
||||
* "$Id: testlang.c 12841 2015-08-10 17:07:30Z msweet $"
|
||||
*
|
||||
* Localization test program for CUPS.
|
||||
*
|
||||
* Copyright 2007-2010 by Apple Inc.
|
||||
* Copyright 2007-2015 by Apple Inc.
|
||||
* Copyright 1997-2006 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -50,8 +50,6 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
};
|
||||
|
||||
|
||||
_cupsSetLocale(argv);
|
||||
|
||||
if (argc == 1)
|
||||
{
|
||||
language = cupsLangDefault();
|
||||
@@ -61,8 +59,13 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
{
|
||||
language = cupsLangGet(argv[1]);
|
||||
language2 = cupsLangGet(argv[1]);
|
||||
|
||||
setenv("LANG", argv[1], 1);
|
||||
setenv("SOFTWARE", "CUPS/" CUPS_SVERSION, 1);
|
||||
}
|
||||
|
||||
_cupsSetLocale(argv);
|
||||
|
||||
if (language != language2)
|
||||
{
|
||||
errors ++;
|
||||
@@ -105,10 +108,49 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
}
|
||||
}
|
||||
|
||||
if (argc == 3)
|
||||
{
|
||||
ppd_file_t *ppd; /* PPD file */
|
||||
ppd_option_t *option; /* PageSize option */
|
||||
ppd_choice_t *choice; /* PageSize/Letter choice */
|
||||
|
||||
if ((ppd = ppdOpenFile(argv[2])) == NULL)
|
||||
{
|
||||
printf("Unable to open PPD file \"%s\".\n", argv[2]);
|
||||
errors ++;
|
||||
}
|
||||
else
|
||||
{
|
||||
ppdLocalize(ppd);
|
||||
|
||||
if ((option = ppdFindOption(ppd, "PageSize")) == NULL)
|
||||
{
|
||||
puts("No PageSize option.");
|
||||
errors ++;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("PageSize: %s\n", option->text);
|
||||
|
||||
if ((choice = ppdFindChoice(option, "Letter")) == NULL)
|
||||
{
|
||||
puts("No Letter PageSize choice.");
|
||||
errors ++;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("Letter: %s\n", choice->text);
|
||||
}
|
||||
}
|
||||
|
||||
ppdClose(ppd);
|
||||
}
|
||||
}
|
||||
|
||||
return (errors > 0);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: testlang.c 10996 2013-05-29 11:51:34Z msweet $".
|
||||
* End of "$Id: testlang.c 12841 2015-08-10 17:07:30Z msweet $".
|
||||
*/
|
||||
|
||||
+5
-6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: util.c 12448 2015-01-29 20:32:07Z msweet $"
|
||||
* "$Id: util.c 12884 2015-10-07 20:31:46Z msweet $"
|
||||
*
|
||||
* Printing utilities for CUPS.
|
||||
*
|
||||
@@ -1528,10 +1528,9 @@ cups_get_printer_uri(
|
||||
}
|
||||
|
||||
if (device_uri &&
|
||||
(!strncmp(device_uri, "ipp://", 6) ||
|
||||
!strncmp(device_uri, "ipps://", 7) ||
|
||||
((strstr(device_uri, "._ipp.") != NULL ||
|
||||
strstr(device_uri, "._ipps.") != NULL) &&
|
||||
(((!strncmp(device_uri, "ipp://", 6) || !strncmp(device_uri, "ipps://", 7)) &&
|
||||
(strstr(device_uri, "/printers/") != NULL || strstr(device_uri, "/classes/") != NULL)) ||
|
||||
((strstr(device_uri, "._ipp.") != NULL || strstr(device_uri, "._ipps.") != NULL) &&
|
||||
!strcmp(device_uri + strlen(device_uri) - 5, "/cups"))))
|
||||
{
|
||||
/*
|
||||
@@ -1655,5 +1654,5 @@ cups_get_printer_uri(
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: util.c 12448 2015-01-29 20:32:07Z msweet $".
|
||||
* End of "$Id: util.c 12884 2015-10-07 20:31:46Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -26,7 +26,7 @@ options determine whether and how quotas are enforced for a printer.
|
||||
The <CODE>job-quota-period</CODE> option determines the time interval for
|
||||
quota tracking. The interval is expressed in seconds, so a day is
|
||||
86,400, a week is 604,800, and a month is 2,592,000 seconds. The
|
||||
<CODE>job-k-limit</CODE> option specifies the job size limit in killobytes. The
|
||||
<CODE>job-k-limit</CODE> option specifies the job size limit in kilobytes. The
|
||||
<CODE>job-page-limit</CODE> option specifies the number of pages limit.</P>
|
||||
|
||||
<P>For quotas to be enforced, the period and at least one of the limits
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>Array API </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>CGI API </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>CUPS API </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
@@ -3675,6 +3675,8 @@ locale ID.</p>
|
||||
constants</p>
|
||||
<h4 class="constants">Constants</h4>
|
||||
<dl>
|
||||
<dt>CUPS_PRINTER_3D <span class="info"> CUPS 2.1 </span></dt>
|
||||
<dd class="description">3D Printing </dd>
|
||||
<dt>CUPS_PRINTER_AUTHENTICATED <span class="info"> CUPS 1.2/OS X 10.5 </span></dt>
|
||||
<dd class="description">Printer requires authentication
|
||||
</dd>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>File and Directory APIs </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>Filter and Backend Programming </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>HTTP and IPP APIs </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
@@ -2206,7 +2206,7 @@ const char *httpGetCookie (<br>
|
||||
<h4 class="parameters">Parameters</h4>
|
||||
<dl>
|
||||
<dt>http</dt>
|
||||
<dd class="description">HTTP connecion</dd>
|
||||
<dd class="description">HTTP connection</dd>
|
||||
</dl>
|
||||
<h4 class="returnvalue">Return Value</h4>
|
||||
<p class="description">Cookie data or NULL</p>
|
||||
@@ -5984,7 +5984,7 @@ are server-oriented...</p>
|
||||
<dt>HTTP_STATUS_OK </dt>
|
||||
<dd class="description">OPTIONS/GET/HEAD/POST/TRACE command was successful</dd>
|
||||
<dt>HTTP_STATUS_PARTIAL_CONTENT </dt>
|
||||
<dd class="description">Only a partial file was recieved/sent</dd>
|
||||
<dd class="description">Only a partial file was received/sent</dd>
|
||||
<dt>HTTP_STATUS_PAYMENT_REQUIRED </dt>
|
||||
<dd class="description">Payment required</dd>
|
||||
<dt>HTTP_STATUS_PRECONDITION </dt>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>MIME API </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>Introduction to CUPS Programming </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>PPD API (DEPRECATED) </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
@@ -416,7 +416,7 @@ marked option choices.">ppdConflicts</a></li>
|
||||
<li><a href="#ppdEmitJCL" title="Emit code for JCL options to a file.">ppdEmitJCL</a></li>
|
||||
<li><a href="#ppdEmitJCLEnd" title="Emit JCLEnd code to a file.">ppdEmitJCLEnd</a></li>
|
||||
<li><a href="#ppdEmitString" title="Get a string containing the code for marked options.">ppdEmitString</a></li>
|
||||
<li><a href="#ppdErrorString" title="Returns the text assocated with a status.">ppdErrorString</a></li>
|
||||
<li><a href="#ppdErrorString" title="Returns the text associated with a status.">ppdErrorString</a></li>
|
||||
<li><a href="#ppdFindAttr" title="Find the first matching attribute.">ppdFindAttr</a></li>
|
||||
<li><a href="#ppdFindChoice" title="Return a pointer to an option choice.">ppdFindChoice</a></li>
|
||||
<li><a href="#ppdFindCustomOption" title="Find a custom option.">ppdFindCustomOption</a></li>
|
||||
@@ -1051,7 +1051,7 @@ The return string is allocated on the heap and should be freed using
|
||||
|
||||
</p>
|
||||
<h3 class="function"><span class="info"> CUPS 1.1.19/OS X 10.3 </span><a name="ppdErrorString">ppdErrorString</a></h3>
|
||||
<p class="description">Returns the text assocated with a status.</p>
|
||||
<p class="description">Returns the text associated with a status.</p>
|
||||
<p class="code">
|
||||
const char *ppdErrorString (<br>
|
||||
<a href="#ppd_status_t">ppd_status_t</a> status<br>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>PPD Compiler API </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>Raster API </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -60,7 +60,7 @@ DNS server(s).</li>
|
||||
|
||||
<H2 CLASS="title"><A NAME="CUPS">Configuring CUPS to Use Kerberos</A></H2>
|
||||
|
||||
<P>Once youhave configured Kerberos on your system(s), you can then enable Kerberos authentication by selecting the <tt>Negotiate</tt> authentication type. The simplest way to do this is using the <tt>cupsctl(8)</tt> command on your server(s):</P>
|
||||
<P>Once you have configured Kerberos on your system(s), you can then enable Kerberos authentication by selecting the <tt>Negotiate</tt> authentication type. The simplest way to do this is using the <tt>cupsctl(8)</tt> command on your server(s):</P>
|
||||
|
||||
<PRE CLASS="command">
|
||||
<KBD>cupsctl DefaultAuthType=Negotiate</KBD>
|
||||
|
||||
@@ -91,7 +91,7 @@ network URIs.
|
||||
<dt><b>serial</b>
|
||||
<dd style="margin-left: 5.0em">The device-uri refers to a serial device with configurable baud rate and other options. If the device-uri contains a baud value, it represents the maximum baud rate supported by the device.
|
||||
</dl>
|
||||
<p>The
|
||||
<p>The
|
||||
<i>scheme</i>
|
||||
field provides the URI scheme that is supported by the backend. Backends should use this form only when the backend supports any URI using that scheme. The
|
||||
<i>device-uri</i>
|
||||
@@ -173,7 +173,7 @@ for more information.
|
||||
<br>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -83,7 +83,7 @@ Administrators wishing to prevent unauthorized cancellation of jobs via the <i>-
|
||||
<a href="man-lpstat.html?TOPIC=Man+Pages"><b>lpstat</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -24,7 +24,7 @@ The name, location, and format of this file are an implementation detail that wi
|
||||
<a href="man-subscriptions.conf.html?TOPIC=Man+Pages"><b>subscriptions.conf</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -94,7 +94,7 @@ Compile a simple one-file CUPS filter:
|
||||
<a href="man-cups.html?TOPIC=Man+Pages"><b>cups</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -108,7 +108,7 @@ service using the corresponding control program.
|
||||
CUPS Online Help (<a href="http://localhost:631/help)">http://localhost:631/help)</a>,
|
||||
RFC 2569
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -49,7 +49,7 @@ The default is 120 seconds (2 minutes).
|
||||
<a href="man-cups-snmp.html?TOPIC=Man+Pages"><b>cups-snmp</b>(8),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -48,7 +48,7 @@ The CUPS SNMP backend uses the information from the Host, Printer, and Port Moni
|
||||
<a href="man-lpinfo.html?TOPIC=Man+Pages"><b>lpinfo</b>(8),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -113,7 +113,7 @@ CUPS Online Help (<a href="http://localhost:631/help)">http://localhost:631/help
|
||||
CUPS Web Site (<a href="http://www.CUPS.org)">http://www.CUPS.org)</a>,
|
||||
PWG Internet Printing Protocol Workgroup (<a href="http://www.pwg.org/ipp">http://www.pwg.org/ipp</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -78,7 +78,7 @@ Also, printer and class names are <i>not</i> case-sensitive.
|
||||
<br>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -115,7 +115,7 @@ This is useful for debugging SAMBA configuration problems.
|
||||
<b>smb.conf</b>(5),
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -88,7 +88,7 @@ You cannot set the Listen or Port directives using <b>cupsctl</b>.
|
||||
<br>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -78,7 +78,7 @@ archives to further reduce their size.
|
||||
<a href="man-ppdcfile.html?TOPIC=Man+Pages"><b>ppdcfile</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -188,7 +188,7 @@ For printers that cannot produce copies on their own, the num-copies field will
|
||||
<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -14,7 +14,7 @@ cupsd - cups scheduler
|
||||
[
|
||||
<b>-c</b>
|
||||
<i>config-file</i>
|
||||
] [
|
||||
] [
|
||||
<b>-f</b>
|
||||
] [
|
||||
<b>-F</b>
|
||||
@@ -111,7 +111,7 @@ in the foreground with a test configuration file called
|
||||
<b>systemd</b>(8),
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -86,7 +86,7 @@ This differs from the System V versions which require the root user to execute t
|
||||
<a href="man-lpstat.html?TOPIC=Man+Pages"><b>lpstat</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
|
||||
</body>
|
||||
|
||||
@@ -120,7 +120,7 @@ The following command will generate a PDF preview of job 42 for a printer named
|
||||
<a href="man-mime.types.html?TOPIC=Man+Pages"><b>mime.types</b>(7),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -38,7 +38,7 @@ CUPS Online Help (<a href="http://localhost:631/help)">http://localhost:631/help
|
||||
Adobe PostScript Language Document Structuring Conventions
|
||||
Specification, Version 3.0.
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -121,7 +121,7 @@ The next command tests all PPD files under the current directory and print detai
|
||||
CUPS Online Help (<a href="http://localhost:631/help)">http://localhost:631/help)</a>,
|
||||
Adobe PostScript Printer Description File Format Specification, Version 4.3.
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -60,7 +60,7 @@ Options are passed in <i>argv[5]</i> and are encoded from the corresponding IPP
|
||||
function to load the options into a <b>cups_option_t</b> array and the
|
||||
<b>cupsGetOption</b>()
|
||||
function to get the value of a specific attribute.
|
||||
Be careful to look for common aliases of IPP attributes such as "lansdscape" for the IPP "orientation-requested" attribute.
|
||||
Be careful to look for common aliases of IPP attributes such as "landscape" for the IPP "orientation-requested" attribute.
|
||||
<p>Options passed on the command-line typically do not include the default choices the printer's PPD file. Use the
|
||||
<b>ppdMarkDefaults</b>()
|
||||
and
|
||||
@@ -183,7 +183,7 @@ program to use the appropriate filters to do the conversions you need.
|
||||
<br>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -198,7 +198,7 @@ Similarly, to send a PostScript test page to every PostScript printer, run:
|
||||
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
|
||||
<a href="man-ipptool.html?TOPIC=Man+Pages"><b>ipptool</b>(1)</a>
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2013-2014 by Apple Inc.
|
||||
Copyright © 2013-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -157,7 +157,7 @@ This is the default for XML output.
|
||||
<h2 class="title"><a name="EXIT_STATUS">Exit Status</a></h2>
|
||||
The
|
||||
<b>ipptool</b>
|
||||
program returns 0 if all tests were sucessful and 1 otherwise.
|
||||
program returns 0 if all tests were successful and 1 otherwise.
|
||||
<h2 class="title"><a name="FILES">Files</a></h2>
|
||||
The following standard files are available:
|
||||
<pre class="man">
|
||||
|
||||
@@ -187,7 +187,7 @@ Print a presentation document 2-up to a printer called "foo":
|
||||
<a href="man-lpstat.html?TOPIC=Man+Pages"><b>lpstat</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -48,7 +48,7 @@ command or another CUPS-compatible client with that functionality.
|
||||
<a href="man-lpstat.html?TOPIC=Man+Pages"><b>lpstat</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -117,7 +117,7 @@ List drivers matching "HP LaserJet":
|
||||
<a href="man-lpadmin.html?TOPIC=Man+Pages"><b>lpadmin</b>(8),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -69,7 +69,7 @@ Move all jobs from "oldprinter" to "newprinter":
|
||||
<br>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -119,7 +119,7 @@ The <b>lpoptions</b> command is unique to CUPS.
|
||||
<a href="man-lprm.html?TOPIC=Man+Pages"><b>lprm</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -55,7 +55,7 @@ Jobs queued on the default destination will be shown if no printer or class is s
|
||||
<a href="man-lpstat.html?TOPIC=Man+Pages"><b>lpstat</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -124,7 +124,7 @@ Print a presentation document 2-up to a printer called "foo":
|
||||
<a href="man-lpstat.html?TOPIC=Man+Pages"><b>lpstat</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -76,7 +76,7 @@ Cancel all jobs:
|
||||
<a href="man-lpstat.html?TOPIC=Man+Pages"><b>lpstat</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -123,7 +123,7 @@ Also, printer and class names are <i>not</i> case-sensitive.
|
||||
<a href="man-lprm.html?TOPIC=Man+Pages"><b>lprm</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -36,7 +36,7 @@ If multiple lines are present, only the last one is used.
|
||||
<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -23,7 +23,7 @@ Filter lines specify the source and destination MIME types along with a relative
|
||||
|
||||
</pre>
|
||||
The <i>source/type</i> field specifies the source MIME media type that is consumed by the filter.
|
||||
<p>The <i>destination/type</i> field specifies the destiantion MIME media type that is produced by the filter.
|
||||
<p>The <i>destination/type</i> field specifies the destination MIME media type that is produced by the filter.
|
||||
<p>The <i>cost</i> field specifies the relative cost for running the filter.
|
||||
A value of 100 means that the filter uses a large amount of resources while a value of 0 means that the filter uses very few resources.
|
||||
<p>The <i>filter</i> field specifies the filter program filename.
|
||||
@@ -49,7 +49,7 @@ Define a filter that converts PostScript documents to CUPS Raster format:
|
||||
<a href="man-mime.types.html?TOPIC=Man+Pages"><b>mime.types</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -91,7 +91,7 @@ Define two MIME media types for raster data, with one being a subset with higher
|
||||
<a href="man-mime.convs.html?TOPIC=Man+Pages"><b>mime.convs</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -31,7 +31,7 @@ Notifiers inherit the environment and can use the logging mechanism documented i
|
||||
<a href="man-filter.html?TOPIC=Man+Pages"><b>filter</b>(7),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -85,7 +85,7 @@ The default is to use the line feed character alone.
|
||||
<a href="man-ppdcfile.html?TOPIC=Man+Pages"><b>ppdcfile</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -89,7 +89,7 @@ This man page provides a quick reference to the supported keywords and should be
|
||||
<a href="man-ppdpo.html?TOPIC=Man+Pages"><b>ppdpo</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -39,7 +39,7 @@ Multiple <i>-I</i> options can be supplied to add additional directories.
|
||||
<a href="man-ppdpo.html?TOPIC=Man+Pages"><b>ppdpo</b>(1),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -46,7 +46,7 @@ If no source file is specified, the filename <i>ppdi.drv</i> is used.
|
||||
<a href="man-ppdcfile.html?TOPIC=Man+Pages"><b>ppdcfile</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -43,7 +43,7 @@ Merging of different device PPDs will yield unpredictable results.
|
||||
<a href="man-ppdcfile.html?TOPIC=Man+Pages"><b>ppdcfile</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -45,7 +45,7 @@ The supported extensions are <i>.po</i> or <i>.po.gz</i> for GNU gettext format
|
||||
<b>ppdcfile(5),</b>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -24,7 +24,7 @@ The name, location, and format of this file are an implementation detail that wi
|
||||
<a href="man-subscriptions.conf.html?TOPIC=Man+Pages"><b>subscriptions.conf</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -24,7 +24,7 @@ The name, location, and format of this file are an implementation detail that wi
|
||||
<a href="man-printers.conf.html?TOPIC=Man+Pages"><b>printers.conf</b>(5),</a>
|
||||
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
|
||||
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
|
||||
Copyright © 2007-2014 by Apple Inc.
|
||||
Copyright © 2007-2015 by Apple Inc.
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>Developing PostScript Printer Drivers </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>Introduction to the PPD Compiler </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>Developing Raster Printer Drivers </title>
|
||||
<meta name="keywords" content="Programming">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
|
||||
@@ -148,7 +148,7 @@ CUPS_SERVERBIN/notifier/foo recipient user-data
|
||||
|
||||
<P>Backends (<A HREF="man-backend.html">backend(7)</A>) send print data to the printer and enumerate available printers/devices as needed. Backends use the same interface as filters.</P>
|
||||
|
||||
<P>CUPS includes backends for AppSocket (JetDirect), IPP, LPD, parallel, SCSI, serial, and USB connections. Additional backends can be added as needed without additional configuration.</P>
|
||||
<P>CUPS includes backends for AppSocket (JetDirect), IPP, LPD, and USB connections and DNS-SD and SNMP for discovery. Additional backends can be added as needed without additional configuration.</P>
|
||||
|
||||
|
||||
<H2 CLASS="title"><A NAME="PROGRAMMING">Programming Interfaces</A></H2>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>CUPS PPD Extensions </title>
|
||||
<meta name="keywords" content="Specifications">
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<meta name="creator" content="Mini-XML v2.8">
|
||||
<meta name="creator" content="Mini-XML v2.7">
|
||||
<style type="text/css"><!--
|
||||
BODY {
|
||||
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
|
||||
@@ -2027,7 +2027,7 @@ PPD file extensions was used. Currently it must be the string
|
||||
|
||||
<p class="summary">*JCLToPDFInterpreter: "JCL"</p>
|
||||
|
||||
<p>This keyword provfides the JCL command to insert a PDF job file into a printer-ready data stream. The JCL command is added after the <tt>JCLBegin</tt> value and any commands for JCL options in the PPD file.</p>
|
||||
<p>This keyword provides the JCL command to insert a PDF job file into a printer-ready data stream. The JCL command is added after the <tt>JCLBegin</tt> value and any commands for JCL options in the PPD file.</p>
|
||||
|
||||
<p>Example:</p>
|
||||
|
||||
|
||||
+26
-9
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: raster.c 12747 2015-06-24 15:55:05Z msweet $"
|
||||
* "$Id: raster.c 12945 2015-10-26 19:46:02Z msweet $"
|
||||
*
|
||||
* Raster file routines for CUPS.
|
||||
*
|
||||
@@ -64,7 +64,7 @@ static ssize_t cups_raster_io(cups_raster_t *r, unsigned char *buf, size_t bytes
|
||||
static unsigned cups_raster_read_header(cups_raster_t *r);
|
||||
static ssize_t cups_raster_read(cups_raster_t *r, unsigned char *buf,
|
||||
size_t bytes);
|
||||
static void cups_raster_update(cups_raster_t *r);
|
||||
static int cups_raster_update(cups_raster_t *r);
|
||||
static ssize_t cups_raster_write(cups_raster_t *r,
|
||||
const unsigned char *pixels);
|
||||
static ssize_t cups_read_fd(void *ctx, unsigned char *buf, size_t bytes);
|
||||
@@ -566,7 +566,8 @@ cupsRasterWriteHeader(
|
||||
memset(&(r->header), 0, sizeof(r->header));
|
||||
memcpy(&(r->header), h, sizeof(cups_page_header_t));
|
||||
|
||||
cups_raster_update(r);
|
||||
if (!cups_raster_update(r))
|
||||
return (0);
|
||||
|
||||
/*
|
||||
* Write the raster header...
|
||||
@@ -682,7 +683,8 @@ cupsRasterWriteHeader2(
|
||||
|
||||
memcpy(&(r->header), h, sizeof(cups_page_header2_t));
|
||||
|
||||
cups_raster_update(r);
|
||||
if (!cups_raster_update(r))
|
||||
return (0);
|
||||
|
||||
/*
|
||||
* Write the raster header...
|
||||
@@ -1015,11 +1017,12 @@ cups_raster_read_header(
|
||||
* Update the header and row count...
|
||||
*/
|
||||
|
||||
cups_raster_update(r);
|
||||
if (!cups_raster_update(r))
|
||||
return (0);
|
||||
|
||||
DEBUG_printf(("4cups_raster_read_header: cupsBitsPerPixel=%u, cupsBitsPerColor=%u, cupsBytesPerLine=%u, cupsWidth=%u, cupsHeight=%u, r->bpp=%d", r->header.cupsBitsPerPixel, r->header.cupsBitsPerColor, r->header.cupsBytesPerLine, r->header.cupsWidth, r->header.cupsHeight, r->bpp));
|
||||
|
||||
return (r->header.cupsBitsPerPixel != 0 && r->header.cupsBitsPerColor != 0 && r->header.cupsBytesPerLine != 0 && r->header.cupsHeight != 0 && (r->header.cupsBytesPerLine % r->bpp) == 0);
|
||||
return (r->header.cupsBitsPerPixel > 0 && r->header.cupsBitsPerPixel <= 240 && r->header.cupsBitsPerColor > 0 && r->header.cupsBitsPerColor <= 16 && r->header.cupsBytesPerLine > 0 && r->header.cupsBytesPerLine <= 0x7fffffff && r->header.cupsHeight != 0 && (r->header.cupsBytesPerLine % r->bpp) == 0);
|
||||
}
|
||||
|
||||
|
||||
@@ -1219,7 +1222,7 @@ cups_raster_read(cups_raster_t *r, /* I - Raster stream */
|
||||
* current page.
|
||||
*/
|
||||
|
||||
static void
|
||||
static int /* O - 1 on success, 0 on failure */
|
||||
cups_raster_update(cups_raster_t *r) /* I - Raster stream */
|
||||
{
|
||||
if (r->sync == CUPS_RASTER_SYNCv1 || r->sync == CUPS_RASTER_REVSYNCv1 ||
|
||||
@@ -1300,6 +1303,10 @@ cups_raster_update(cups_raster_t *r) /* I - Raster stream */
|
||||
r->header.cupsNumColors = r->header.cupsColorSpace -
|
||||
CUPS_CSPACE_DEVICE1 + 1;
|
||||
break;
|
||||
|
||||
default :
|
||||
/* Unknown color space */
|
||||
return (0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1333,11 +1340,21 @@ cups_raster_update(cups_raster_t *r) /* I - Raster stream */
|
||||
if (r->pixels != NULL)
|
||||
free(r->pixels);
|
||||
|
||||
r->pixels = calloc(r->header.cupsBytesPerLine, 1);
|
||||
if ((r->pixels = calloc(r->header.cupsBytesPerLine, 1)) == NULL)
|
||||
{
|
||||
r->pcurrent = NULL;
|
||||
r->pend = NULL;
|
||||
r->count = 0;
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
||||
r->pcurrent = r->pixels;
|
||||
r->pend = r->pixels + r->header.cupsBytesPerLine;
|
||||
r->count = 0;
|
||||
}
|
||||
|
||||
return (1);
|
||||
}
|
||||
|
||||
|
||||
@@ -1546,5 +1563,5 @@ cups_write_fd(void *ctx, /* I - File descriptor pointer */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: raster.c 12747 2015-06-24 15:55:05Z msweet $".
|
||||
* End of "$Id: raster.c 12945 2015-10-26 19:46:02Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: rastertoepson.c 12617 2015-05-06 20:28:22Z msweet $"
|
||||
* "$Id: rastertoepson.c 12945 2015-10-26 19:46:02Z msweet $"
|
||||
*
|
||||
* EPSON ESC/P and ESC/P2 filter for CUPS.
|
||||
*
|
||||
@@ -119,6 +119,30 @@ StartPage(
|
||||
unsigned plane; /* Looping var */
|
||||
|
||||
|
||||
/*
|
||||
* Show page device dictionary...
|
||||
*/
|
||||
|
||||
fprintf(stderr, "DEBUG: StartPage...\n");
|
||||
fprintf(stderr, "DEBUG: Duplex = %d\n", header->Duplex);
|
||||
fprintf(stderr, "DEBUG: HWResolution = [ %d %d ]\n", header->HWResolution[0], header->HWResolution[1]);
|
||||
fprintf(stderr, "DEBUG: ImagingBoundingBox = [ %d %d %d %d ]\n", header->ImagingBoundingBox[0], header->ImagingBoundingBox[1], header->ImagingBoundingBox[2], header->ImagingBoundingBox[3]);
|
||||
fprintf(stderr, "DEBUG: Margins = [ %d %d ]\n", header->Margins[0], header->Margins[1]);
|
||||
fprintf(stderr, "DEBUG: ManualFeed = %d\n", header->ManualFeed);
|
||||
fprintf(stderr, "DEBUG: MediaPosition = %d\n", header->MediaPosition);
|
||||
fprintf(stderr, "DEBUG: NumCopies = %d\n", header->NumCopies);
|
||||
fprintf(stderr, "DEBUG: Orientation = %d\n", header->Orientation);
|
||||
fprintf(stderr, "DEBUG: PageSize = [ %d %d ]\n", header->PageSize[0], header->PageSize[1]);
|
||||
fprintf(stderr, "DEBUG: cupsWidth = %d\n", header->cupsWidth);
|
||||
fprintf(stderr, "DEBUG: cupsHeight = %d\n", header->cupsHeight);
|
||||
fprintf(stderr, "DEBUG: cupsMediaType = %d\n", header->cupsMediaType);
|
||||
fprintf(stderr, "DEBUG: cupsBitsPerColor = %d\n", header->cupsBitsPerColor);
|
||||
fprintf(stderr, "DEBUG: cupsBitsPerPixel = %d\n", header->cupsBitsPerPixel);
|
||||
fprintf(stderr, "DEBUG: cupsBytesPerLine = %d\n", header->cupsBytesPerLine);
|
||||
fprintf(stderr, "DEBUG: cupsColorOrder = %d\n", header->cupsColorOrder);
|
||||
fprintf(stderr, "DEBUG: cupsColorSpace = %d\n", header->cupsColorSpace);
|
||||
fprintf(stderr, "DEBUG: cupsCompression = %d\n", header->cupsCompression);
|
||||
|
||||
/*
|
||||
* Send a reset sequence.
|
||||
*/
|
||||
@@ -263,7 +287,7 @@ StartPage(
|
||||
* Allocate memory for a line/row of graphics...
|
||||
*/
|
||||
|
||||
if ((Planes[0] = malloc(header->cupsBytesPerLine)) == NULL)
|
||||
if ((Planes[0] = malloc(header->cupsBytesPerLine + NumPlanes)) == NULL)
|
||||
{
|
||||
fputs("ERROR: Unable to allocate memory\n", stderr);
|
||||
exit(1);
|
||||
@@ -1150,5 +1174,5 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: rastertoepson.c 12617 2015-05-06 20:28:22Z msweet $".
|
||||
* End of "$Id: rastertoepson.c 12945 2015-10-26 19:46:02Z msweet $".
|
||||
*/
|
||||
|
||||
+6
-30
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: rastertohp.c 12574 2015-03-26 16:36:18Z msweet $"
|
||||
* "$Id: rastertohp.c 12945 2015-10-26 19:46:02Z msweet $"
|
||||
*
|
||||
* Hewlett-Packard Page Control Language filter for CUPS.
|
||||
*
|
||||
@@ -90,39 +90,15 @@ StartPage(ppd_file_t *ppd, /* I - PPD file */
|
||||
*/
|
||||
|
||||
fprintf(stderr, "DEBUG: StartPage...\n");
|
||||
fprintf(stderr, "DEBUG: MediaClass = \"%s\"\n", header->MediaClass);
|
||||
fprintf(stderr, "DEBUG: MediaColor = \"%s\"\n", header->MediaColor);
|
||||
fprintf(stderr, "DEBUG: MediaType = \"%s\"\n", header->MediaType);
|
||||
fprintf(stderr, "DEBUG: OutputType = \"%s\"\n", header->OutputType);
|
||||
|
||||
fprintf(stderr, "DEBUG: AdvanceDistance = %d\n", header->AdvanceDistance);
|
||||
fprintf(stderr, "DEBUG: AdvanceMedia = %d\n", header->AdvanceMedia);
|
||||
fprintf(stderr, "DEBUG: Collate = %d\n", header->Collate);
|
||||
fprintf(stderr, "DEBUG: CutMedia = %d\n", header->CutMedia);
|
||||
fprintf(stderr, "DEBUG: Duplex = %d\n", header->Duplex);
|
||||
fprintf(stderr, "DEBUG: HWResolution = [ %d %d ]\n", header->HWResolution[0],
|
||||
header->HWResolution[1]);
|
||||
fprintf(stderr, "DEBUG: ImagingBoundingBox = [ %d %d %d %d ]\n",
|
||||
header->ImagingBoundingBox[0], header->ImagingBoundingBox[1],
|
||||
header->ImagingBoundingBox[2], header->ImagingBoundingBox[3]);
|
||||
fprintf(stderr, "DEBUG: InsertSheet = %d\n", header->InsertSheet);
|
||||
fprintf(stderr, "DEBUG: Jog = %d\n", header->Jog);
|
||||
fprintf(stderr, "DEBUG: LeadingEdge = %d\n", header->LeadingEdge);
|
||||
fprintf(stderr, "DEBUG: Margins = [ %d %d ]\n", header->Margins[0],
|
||||
header->Margins[1]);
|
||||
fprintf(stderr, "DEBUG: HWResolution = [ %d %d ]\n", header->HWResolution[0], header->HWResolution[1]);
|
||||
fprintf(stderr, "DEBUG: ImagingBoundingBox = [ %d %d %d %d ]\n", header->ImagingBoundingBox[0], header->ImagingBoundingBox[1], header->ImagingBoundingBox[2], header->ImagingBoundingBox[3]);
|
||||
fprintf(stderr, "DEBUG: Margins = [ %d %d ]\n", header->Margins[0], header->Margins[1]);
|
||||
fprintf(stderr, "DEBUG: ManualFeed = %d\n", header->ManualFeed);
|
||||
fprintf(stderr, "DEBUG: MediaPosition = %d\n", header->MediaPosition);
|
||||
fprintf(stderr, "DEBUG: MediaWeight = %d\n", header->MediaWeight);
|
||||
fprintf(stderr, "DEBUG: MirrorPrint = %d\n", header->MirrorPrint);
|
||||
fprintf(stderr, "DEBUG: NegativePrint = %d\n", header->NegativePrint);
|
||||
fprintf(stderr, "DEBUG: NumCopies = %d\n", header->NumCopies);
|
||||
fprintf(stderr, "DEBUG: Orientation = %d\n", header->Orientation);
|
||||
fprintf(stderr, "DEBUG: OutputFaceUp = %d\n", header->OutputFaceUp);
|
||||
fprintf(stderr, "DEBUG: PageSize = [ %d %d ]\n", header->PageSize[0],
|
||||
header->PageSize[1]);
|
||||
fprintf(stderr, "DEBUG: Separations = %d\n", header->Separations);
|
||||
fprintf(stderr, "DEBUG: TraySwitch = %d\n", header->TraySwitch);
|
||||
fprintf(stderr, "DEBUG: Tumble = %d\n", header->Tumble);
|
||||
fprintf(stderr, "DEBUG: PageSize = [ %d %d ]\n", header->PageSize[0], header->PageSize[1]);
|
||||
fprintf(stderr, "DEBUG: cupsWidth = %d\n", header->cupsWidth);
|
||||
fprintf(stderr, "DEBUG: cupsHeight = %d\n", header->cupsHeight);
|
||||
fprintf(stderr, "DEBUG: cupsMediaType = %d\n", header->cupsMediaType);
|
||||
@@ -871,5 +847,5 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: rastertohp.c 12574 2015-03-26 16:36:18Z msweet $".
|
||||
* End of "$Id: rastertohp.c 12945 2015-10-26 19:46:02Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
* "$Id: rastertolabel.c 11755 2014-03-27 17:06:12Z msweet $"
|
||||
* "$Id: rastertolabel.c 12945 2015-10-26 19:46:02Z msweet $"
|
||||
*
|
||||
* Label printer filter for CUPS.
|
||||
*
|
||||
* Copyright 2007-2014 by Apple Inc.
|
||||
* Copyright 2007-2015 by Apple Inc.
|
||||
* Copyright 2001-2007 by Easy Software Products.
|
||||
*
|
||||
* These coded instructions, statements, and computer programs are the
|
||||
@@ -166,39 +166,15 @@ StartPage(ppd_file_t *ppd, /* I - PPD file */
|
||||
*/
|
||||
|
||||
fprintf(stderr, "DEBUG: StartPage...\n");
|
||||
fprintf(stderr, "DEBUG: MediaClass = \"%s\"\n", header->MediaClass);
|
||||
fprintf(stderr, "DEBUG: MediaColor = \"%s\"\n", header->MediaColor);
|
||||
fprintf(stderr, "DEBUG: MediaType = \"%s\"\n", header->MediaType);
|
||||
fprintf(stderr, "DEBUG: OutputType = \"%s\"\n", header->OutputType);
|
||||
|
||||
fprintf(stderr, "DEBUG: AdvanceDistance = %d\n", header->AdvanceDistance);
|
||||
fprintf(stderr, "DEBUG: AdvanceMedia = %d\n", header->AdvanceMedia);
|
||||
fprintf(stderr, "DEBUG: Collate = %d\n", header->Collate);
|
||||
fprintf(stderr, "DEBUG: CutMedia = %d\n", header->CutMedia);
|
||||
fprintf(stderr, "DEBUG: Duplex = %d\n", header->Duplex);
|
||||
fprintf(stderr, "DEBUG: HWResolution = [ %d %d ]\n", header->HWResolution[0],
|
||||
header->HWResolution[1]);
|
||||
fprintf(stderr, "DEBUG: ImagingBoundingBox = [ %d %d %d %d ]\n",
|
||||
header->ImagingBoundingBox[0], header->ImagingBoundingBox[1],
|
||||
header->ImagingBoundingBox[2], header->ImagingBoundingBox[3]);
|
||||
fprintf(stderr, "DEBUG: InsertSheet = %d\n", header->InsertSheet);
|
||||
fprintf(stderr, "DEBUG: Jog = %d\n", header->Jog);
|
||||
fprintf(stderr, "DEBUG: LeadingEdge = %d\n", header->LeadingEdge);
|
||||
fprintf(stderr, "DEBUG: Margins = [ %d %d ]\n", header->Margins[0],
|
||||
header->Margins[1]);
|
||||
fprintf(stderr, "DEBUG: HWResolution = [ %d %d ]\n", header->HWResolution[0], header->HWResolution[1]);
|
||||
fprintf(stderr, "DEBUG: ImagingBoundingBox = [ %d %d %d %d ]\n", header->ImagingBoundingBox[0], header->ImagingBoundingBox[1], header->ImagingBoundingBox[2], header->ImagingBoundingBox[3]);
|
||||
fprintf(stderr, "DEBUG: Margins = [ %d %d ]\n", header->Margins[0], header->Margins[1]);
|
||||
fprintf(stderr, "DEBUG: ManualFeed = %d\n", header->ManualFeed);
|
||||
fprintf(stderr, "DEBUG: MediaPosition = %d\n", header->MediaPosition);
|
||||
fprintf(stderr, "DEBUG: MediaWeight = %d\n", header->MediaWeight);
|
||||
fprintf(stderr, "DEBUG: MirrorPrint = %d\n", header->MirrorPrint);
|
||||
fprintf(stderr, "DEBUG: NegativePrint = %d\n", header->NegativePrint);
|
||||
fprintf(stderr, "DEBUG: NumCopies = %d\n", header->NumCopies);
|
||||
fprintf(stderr, "DEBUG: Orientation = %d\n", header->Orientation);
|
||||
fprintf(stderr, "DEBUG: OutputFaceUp = %d\n", header->OutputFaceUp);
|
||||
fprintf(stderr, "DEBUG: PageSize = [ %d %d ]\n", header->PageSize[0],
|
||||
header->PageSize[1]);
|
||||
fprintf(stderr, "DEBUG: Separations = %d\n", header->Separations);
|
||||
fprintf(stderr, "DEBUG: TraySwitch = %d\n", header->TraySwitch);
|
||||
fprintf(stderr, "DEBUG: Tumble = %d\n", header->Tumble);
|
||||
fprintf(stderr, "DEBUG: PageSize = [ %d %d ]\n", header->PageSize[0], header->PageSize[1]);
|
||||
fprintf(stderr, "DEBUG: cupsWidth = %d\n", header->cupsWidth);
|
||||
fprintf(stderr, "DEBUG: cupsHeight = %d\n", header->cupsHeight);
|
||||
fprintf(stderr, "DEBUG: cupsMediaType = %d\n", header->cupsMediaType);
|
||||
@@ -208,9 +184,6 @@ StartPage(ppd_file_t *ppd, /* I - PPD file */
|
||||
fprintf(stderr, "DEBUG: cupsColorOrder = %d\n", header->cupsColorOrder);
|
||||
fprintf(stderr, "DEBUG: cupsColorSpace = %d\n", header->cupsColorSpace);
|
||||
fprintf(stderr, "DEBUG: cupsCompression = %d\n", header->cupsCompression);
|
||||
fprintf(stderr, "DEBUG: cupsRowCount = %d\n", header->cupsRowCount);
|
||||
fprintf(stderr, "DEBUG: cupsRowFeed = %d\n", header->cupsRowFeed);
|
||||
fprintf(stderr, "DEBUG: cupsRowStep = %d\n", header->cupsRowStep);
|
||||
|
||||
switch (ModelNumber)
|
||||
{
|
||||
@@ -1294,5 +1267,5 @@ main(int argc, /* I - Number of command-line arguments */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: rastertolabel.c 11755 2014-03-27 17:06:12Z msweet $".
|
||||
* End of "$Id: rastertolabel.c 12945 2015-10-26 19:46:02Z msweet $".
|
||||
*/
|
||||
|
||||
+35
-6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* "$Id: rastertopwg.c 12609 2015-05-06 12:24:47Z msweet $"
|
||||
* "$Id: rastertopwg.c 12945 2015-10-26 19:46:02Z msweet $"
|
||||
*
|
||||
* CUPS raster to PWG raster format filter for CUPS.
|
||||
*
|
||||
@@ -89,6 +89,29 @@ main(int argc, /* I - Number of command-line args */
|
||||
|
||||
while (cupsRasterReadHeader2(inras, &inheader))
|
||||
{
|
||||
/*
|
||||
* Show page device dictionary...
|
||||
*/
|
||||
|
||||
fprintf(stderr, "DEBUG: Duplex = %d\n", inheader.Duplex);
|
||||
fprintf(stderr, "DEBUG: HWResolution = [ %d %d ]\n", inheader.HWResolution[0], inheader.HWResolution[1]);
|
||||
fprintf(stderr, "DEBUG: ImagingBoundingBox = [ %d %d %d %d ]\n", inheader.ImagingBoundingBox[0], inheader.ImagingBoundingBox[1], inheader.ImagingBoundingBox[2], inheader.ImagingBoundingBox[3]);
|
||||
fprintf(stderr, "DEBUG: Margins = [ %d %d ]\n", inheader.Margins[0], inheader.Margins[1]);
|
||||
fprintf(stderr, "DEBUG: ManualFeed = %d\n", inheader.ManualFeed);
|
||||
fprintf(stderr, "DEBUG: MediaPosition = %d\n", inheader.MediaPosition);
|
||||
fprintf(stderr, "DEBUG: NumCopies = %d\n", inheader.NumCopies);
|
||||
fprintf(stderr, "DEBUG: Orientation = %d\n", inheader.Orientation);
|
||||
fprintf(stderr, "DEBUG: PageSize = [ %d %d ]\n", inheader.PageSize[0], inheader.PageSize[1]);
|
||||
fprintf(stderr, "DEBUG: cupsWidth = %d\n", inheader.cupsWidth);
|
||||
fprintf(stderr, "DEBUG: cupsHeight = %d\n", inheader.cupsHeight);
|
||||
fprintf(stderr, "DEBUG: cupsMediaType = %d\n", inheader.cupsMediaType);
|
||||
fprintf(stderr, "DEBUG: cupsBitsPerColor = %d\n", inheader.cupsBitsPerColor);
|
||||
fprintf(stderr, "DEBUG: cupsBitsPerPixel = %d\n", inheader.cupsBitsPerPixel);
|
||||
fprintf(stderr, "DEBUG: cupsBytesPerLine = %d\n", inheader.cupsBytesPerLine);
|
||||
fprintf(stderr, "DEBUG: cupsColorOrder = %d\n", inheader.cupsColorOrder);
|
||||
fprintf(stderr, "DEBUG: cupsColorSpace = %d\n", inheader.cupsColorSpace);
|
||||
fprintf(stderr, "DEBUG: cupsCompression = %d\n", inheader.cupsCompression);
|
||||
|
||||
/*
|
||||
* Compute the real raster size...
|
||||
*/
|
||||
@@ -105,6 +128,13 @@ main(int argc, /* I - Number of command-line args */
|
||||
linesize = (page_width * inheader.cupsBitsPerPixel + 7) / 8;
|
||||
lineoffset = page_left * inheader.cupsBitsPerPixel / 8; /* Round down */
|
||||
|
||||
if (page_left > page_width || page_top > page_height || page_bottom > page_height)
|
||||
{
|
||||
_cupsLangPrintFilter(stderr, "ERROR", _("Unsupported raster data."));
|
||||
fprintf(stderr, "DEBUG: Bad bottom/left/top margin on page %d.\n", page);
|
||||
return (1);
|
||||
}
|
||||
|
||||
switch (inheader.cupsColorSpace)
|
||||
{
|
||||
case CUPS_CSPACE_W :
|
||||
@@ -184,7 +214,7 @@ main(int argc, /* I - Number of command-line args */
|
||||
sizeof(outheader.OutputType));
|
||||
else
|
||||
{
|
||||
fprintf(stderr, "DEBUG: Unsupported print-content-type \"%s\".\n", val);
|
||||
fputs("DEBUG: Unsupported print-content-optimize value.\n", stderr);
|
||||
outheader.OutputType[0] = '\0';
|
||||
}
|
||||
}
|
||||
@@ -225,8 +255,7 @@ main(int argc, /* I - Number of command-line args */
|
||||
sizeof(outheader.cupsRenderingIntent));
|
||||
else
|
||||
{
|
||||
fprintf(stderr, "DEBUG: Unsupported print-rendering-intent \"%s\".\n",
|
||||
val);
|
||||
fputs("DEBUG: Unsupported print-rendering-intent value.\n", stderr);
|
||||
outheader.cupsRenderingIntent[0] = '\0';
|
||||
}
|
||||
}
|
||||
@@ -360,7 +389,7 @@ main(int argc, /* I - Number of command-line args */
|
||||
* Unsupported value...
|
||||
*/
|
||||
|
||||
fprintf(stderr, "DEBUG: Unsupported cupsBackSide \"%s\".\n", back->value);
|
||||
fputs("DEBUG: Unsupported cupsBackSide value.\n", stderr);
|
||||
|
||||
outheader.cupsInteger[1] = 1; /* CrossFeedTransform */
|
||||
outheader.cupsInteger[2] = 1; /* FeedTransform */
|
||||
@@ -459,5 +488,5 @@ main(int argc, /* I - Number of command-line args */
|
||||
|
||||
|
||||
/*
|
||||
* End of "$Id: rastertopwg.c 12609 2015-05-06 12:24:47Z msweet $".
|
||||
* End of "$Id: rastertopwg.c 12945 2015-10-26 19:46:02Z msweet $".
|
||||
*/
|
||||
|
||||
@@ -1569,7 +1569,7 @@ PPD file extensions was used. Currently it must be the string
|
||||
|
||||
<p class="summary">*JCLToPDFInterpreter: "JCL"</p>
|
||||
|
||||
<p>This keyword provfides the JCL command to insert a PDF job file into a printer-ready data stream. The JCL command is added after the <tt>JCLBegin</tt> value and any commands for JCL options in the PPD file.</p>
|
||||
<p>This keyword provides the JCL command to insert a PDF job file into a printer-ready data stream. The JCL command is added after the <tt>JCLBegin</tt> value and any commands for JCL options in the PPD file.</p>
|
||||
|
||||
<p>Example:</p>
|
||||
|
||||
|
||||
+2
-2
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# Message catalog template for the Common UNIX Printing System (CUPS).
|
||||
#
|
||||
# Copyright 2007-2009 by Apple Inc.
|
||||
# Copyright 2007-2015 by Apple Inc.
|
||||
# Copyright 2005-2007 by Easy Software Products.
|
||||
#
|
||||
# These coded instructions, statements, and computer programs are the
|
||||
@@ -4371,7 +4371,7 @@ msgid "The printer is not connected."
|
||||
msgstr "La impressora no està connectada."
|
||||
|
||||
msgid "The printer is not responding."
|
||||
msgstr "La impressora no respòn."
|
||||
msgstr "La impressora no respon."
|
||||
|
||||
msgid "The printer is now connected."
|
||||
msgstr "Ara la impressora està connectada."
|
||||
|
||||
+4
-4
@@ -1,5 +1,5 @@
|
||||
.\"
|
||||
.\" "$Id: backend.man 11793 2014-04-04 19:02:20Z msweet $"
|
||||
.\" "$Id: backend.man 12854 2015-08-28 14:08:00Z msweet $"
|
||||
.\"
|
||||
.\" Backend man page for CUPS.
|
||||
.\"
|
||||
@@ -106,7 +106,7 @@ network URIs.
|
||||
.B serial
|
||||
The device-uri refers to a serial device with configurable baud rate and other options. If the device-uri contains a baud value, it represents the maximum baud rate supported by the device.
|
||||
.LP
|
||||
The
|
||||
The
|
||||
.I scheme
|
||||
field provides the URI scheme that is supported by the backend. Backends should use this form only when the backend supports any URI using that scheme. The
|
||||
.I device-uri
|
||||
@@ -199,7 +199,7 @@ for more information.
|
||||
.br
|
||||
CUPS Online Help (http://localhost:631/help)
|
||||
.SH COPYRIGHT
|
||||
Copyright \[co] 2007-2014 by Apple Inc.
|
||||
Copyright \[co] 2007-2015 by Apple Inc.
|
||||
.\"
|
||||
.\" End of "$Id: backend.man 11793 2014-04-04 19:02:20Z msweet $".
|
||||
.\" End of "$Id: backend.man 12854 2015-08-28 14:08:00Z msweet $".
|
||||
.\"
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
.\"
|
||||
.\" "$Id: cancel.man 11905 2014-06-03 18:46:30Z msweet $"
|
||||
.\" "$Id: cancel.man 12854 2015-08-28 14:08:00Z msweet $"
|
||||
.\"
|
||||
.\" cancel man page for CUPS.
|
||||
.\"
|
||||
@@ -93,7 +93,7 @@ Administrators wishing to prevent unauthorized cancellation of jobs via the \fI\
|
||||
.BR lpstat (1),
|
||||
CUPS Online Help (http://localhost:631/help)
|
||||
.SH COPYRIGHT
|
||||
Copyright \[co] 2007-2014 by Apple Inc.
|
||||
Copyright \[co] 2007-2015 by Apple Inc.
|
||||
.\"
|
||||
.\" End of "$Id: cancel.man 11905 2014-06-03 18:46:30Z msweet $".
|
||||
.\" End of "$Id: cancel.man 12854 2015-08-28 14:08:00Z msweet $".
|
||||
.\"
|
||||
|
||||
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