Commit 3baccc98 authored by Didier Raboud's avatar Didier Raboud

Merge tag 'upstream/2.0.4' into debian/master

Upstream version 2.0.4
parents 91e0246f 9896a68c
CHANGES.txt - 2.0.3 - 2015-06-08
CHANGES.txt - 2.0.4 - 2015-07-31
--------------------------------
CHANGES IN CUPS V2.0.4
- Fixed a bug in cupsRasterWritePixels (STR #4650)
- Fixed redirection in the web interface (STR #4538)
- The IPP backend did not respond to side-channel requests (STR #4645)
- The scheduler did not start all pending jobs at once (STR #4646)
- The web search incorrectly searched time-at-xxx values (STR #4652)
- Fixed an RPM spec file issue (STR #4657)
- The scheduler incorrectly started jobs while canceling multiple jobs
(STR #4648)
- Fixed processing of server overrides without port numbers (STR #4675)
- Documentation changes (STR #4651, STR #4674)
CHANGES IN CUPS V2.0.3
- Security: Fixed CERT VU #810572 exploiting the dynamic linker
......
INSTALL - CUPS v2.0.3 - 2015-06-08
INSTALL - CUPS v2.0.4 - 2015-07-31
----------------------------------
This file describes how to compile and install CUPS from source code. For more
......
README - CUPS v2.0.3 - 2015-06-08
README - CUPS v2.0.4 - 2015-07-31
---------------------------------
Looking for compile instructions? Read the file "INSTALL.txt" instead...
......
/*
* "$Id: ipp.c 12624 2015-05-06 23:50:20Z msweet $"
* "$Id: ipp.c 12759 2015-06-24 20:06:30Z msweet $"
*
* IPP backend for CUPS.
*
......@@ -1562,6 +1562,7 @@ main(int argc, /* I - Number of command-line args */
FD_ZERO(&input);
FD_SET(fd, &input);
FD_SET(snmp_fd, &input);
FD_SET(CUPS_SC_FD, &input);
while (select(fd > snmp_fd ? fd + 1 : snmp_fd + 1, &input, NULL, NULL,
NULL) <= 0 && !job_canceled);
......@@ -3769,5 +3770,5 @@ update_reasons(ipp_attribute_t *attr, /* I - printer-state-reasons or NULL */
}
/*
* End of "$Id: ipp.c 12624 2015-05-06 23:50:20Z msweet $".
* End of "$Id: ipp.c 12759 2015-06-24 20:06:30Z msweet $".
*/
/*
* "$Id: ipp-var.c 12701 2015-06-08 18:33:44Z msweet $"
* "$Id: ipp-var.c 12769 2015-06-30 16:13:48Z msweet $"
*
* CGI <-> IPP variable routines for CUPS.
*
......@@ -222,6 +222,9 @@ cgiGetIPPObjects(ipp_t *response, /* I - IPP response */
break;
case IPP_TAG_INTEGER :
if (!strncmp(ippGetName(attr), "time-at-", 8))
break; /* Ignore time-at-xxx */
for (i = 0; !add && i < attr->num_values; i ++)
{
char buf[255]; /* Number buffer */
......@@ -1547,5 +1550,5 @@ cgiText(const char *message) /* I - Message */
/*
* End of "$Id: ipp-var.c 12701 2015-06-08 18:33:44Z msweet $".
* End of "$Id: ipp-var.c 12769 2015-06-30 16:13:48Z msweet $".
*/
......@@ -20,7 +20,7 @@ dnl Set the name of the config header file...
AC_CONFIG_HEADER(config.h)
dnl Version number information...
CUPS_VERSION=2.0.3
CUPS_VERSION=2.0.4
CUPS_REVISION=
#if test -z "$CUPS_REVISION" -a -d .svn; then
# CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`"
......
dnl
dnl "$Id: cups-compiler.m4 12122 2014-08-28 12:55:52Z msweet $"
dnl "$Id: cups-compiler.m4 12743 2015-06-23 14:49:09Z msweet $"
dnl
dnl Compiler stuff for CUPS.
dnl
......@@ -156,6 +156,15 @@ if test -n "$GCC"; then
# Add useful warning options for tracking down problems...
OPTIM="-Wall -Wno-format-y2k -Wunused $OPTIM"
AC_MSG_CHECKING(whether compiler supports -Wno-unused-result)
OLDCFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Werror -Wno-unused-result"
AC_TRY_COMPILE(,,
[OPTIM="$OPTIM -Wno-unused-result"
AC_MSG_RESULT(yes)],
AC_MSG_RESULT(no))
CFLAGS="$OLDCFLAGS"
AC_MSG_CHECKING(whether compiler supports -Wsign-conversion)
OLDCFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Werror -Wsign-conversion"
......@@ -237,5 +246,5 @@ case $uname in
esac
dnl
dnl End of "$Id: cups-compiler.m4 12122 2014-08-28 12:55:52Z msweet $".
dnl End of "$Id: cups-compiler.m4 12743 2015-06-23 14:49:09Z msweet $".
dnl
This diff is collapsed.
/*
* "$Id: cups.h 12704 2015-06-08 19:08:01Z msweet $"
* "$Id: cups.h 12761 2015-06-24 20:10:19Z msweet $"
*
* API definitions for CUPS.
*
......@@ -49,10 +49,10 @@ extern "C" {
* Constants...
*/
# define CUPS_VERSION 2.0003
# define CUPS_VERSION 2.0004
# define CUPS_VERSION_MAJOR 2
# define CUPS_VERSION_MINOR 0
# define CUPS_VERSION_PATCH 3
# define CUPS_VERSION_PATCH 4
# define CUPS_BC_FD 3
/* Back-channel file descriptor for
......@@ -628,5 +628,5 @@ extern int cupsSetServerCredentials(const char *path, const char *common_name,
#endif /* !_CUPS_CUPS_H_ */
/*
* End of "$Id: cups.h 12704 2015-06-08 19:08:01Z msweet $".
* End of "$Id: cups.h 12761 2015-06-24 20:10:19Z msweet $".
*/
/*
* "$Id: usersys.c 12481 2015-02-03 12:45:14Z msweet $"
* "$Id: usersys.c 12813 2015-07-30 15:00:40Z msweet $"
*
* User, system, and password routines for CUPS.
*
......@@ -68,6 +68,7 @@ typedef struct _cups_client_conf_s /**** client.conf config data ****/
static void cups_finalize_client_conf(_cups_client_conf_t *cc);
static void cups_init_client_conf(_cups_client_conf_t *cc);
static void cups_read_client_conf(cups_file_t *fp, _cups_client_conf_t *cc);
static void cups_set_default_ipp_port(_cups_globals_t *cg);
static void cups_set_encryption(_cups_client_conf_t *cc, const char *value);
#ifdef HAVE_GSSAPI
static void cups_set_gss_service_name(_cups_client_conf_t *cc, const char *value);
......@@ -382,6 +383,9 @@ cupsSetServer(const char *server) /* I - Server name */
cg->ipp_port = atoi(port);
}
if (!cg->ipp_port)
cups_set_default_ipp_port(cg);
if (cg->server[0] == '/')
strlcpy(cg->servername, "localhost", sizeof(cg->servername));
else
......@@ -392,6 +396,7 @@ cupsSetServer(const char *server) /* I - Server name */
cg->server[0] = '\0';
cg->servername[0] = '\0';
cg->server_version = 20;
cg->ipp_port = 0;
}
if (cg->http)
......@@ -908,17 +913,7 @@ _cupsSetDefaults(void)
cupsSetServer(cc.server_name);
if (!cg->ipp_port)
{
const char *ipp_port; /* IPP_PORT environment variable */
if ((ipp_port = getenv("IPP_PORT")) != NULL)
{
if ((cg->ipp_port = atoi(ipp_port)) <= 0)
cg->ipp_port = CUPS_DEFAULT_IPP_PORT;
}
else
cg->ipp_port = CUPS_DEFAULT_IPP_PORT;
}
cups_set_default_ipp_port(cg);
if (!cg->user[0])
strlcpy(cg->user, cc.user, sizeof(cg->user));
......@@ -1150,6 +1145,26 @@ cups_read_client_conf(
}
/*
* 'cups_set_default_ipp_port()' - Set the default IPP port value.
*/
static void
cups_set_default_ipp_port(
_cups_globals_t *cg) /* I - Global data */
{
const char *ipp_port; /* IPP_PORT environment variable */
if ((ipp_port = getenv("IPP_PORT")) != NULL)
{
if ((cg->ipp_port = atoi(ipp_port)) <= 0)
cg->ipp_port = CUPS_DEFAULT_IPP_PORT;
}
else
cg->ipp_port = CUPS_DEFAULT_IPP_PORT;
}
/*
* 'cups_set_encryption()' - Set the Encryption value.
*/
......@@ -1264,5 +1279,5 @@ cups_set_user(
/*
* End of "$Id: usersys.c 12481 2015-02-03 12:45:14Z msweet $".
* End of "$Id: usersys.c 12813 2015-07-30 15:00:40Z msweet $".
*/
......@@ -240,7 +240,8 @@ The following percent sequences are recognized:
"%u" inserts the username.
</pre>
The default is "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".
The default is the empty string, which disables page logging.
The string "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}" creates a page log with the standard items.
<dt><a name="PassEnv"></a><b>PassEnv </b><i>variable </i>[ ... <i>variable </i>]
<dd style="margin-left: 5.0em">Passes the specified environment variable(s) to child processes.
<dt><a name="Policy"></a><b>&lt;Policy </b><i>name</i><b>> </b>... <b>&lt;/Policy></b>
......@@ -588,7 +589,7 @@ Require authentication for accesses from outside the 10. network:
<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 &copy; 2007-2014 by Apple Inc.
Copyright &copy; 2007-2015 by Apple Inc.
</body>
</html>
......@@ -14,7 +14,7 @@
<H2 CLASS="title"><A NAME="OVERVIEW">Overview</A></H2>
<P>CUPS is developed by Apple Inc. and distributed as open source software under a combination of GNU GPL2 and GNU LGPL2 licenses with exceptions to allow linking to OpenSSL (which has a GPL-incompatible license) and for developers on Apple's operating systems to develop CUPS-based software until alternate license terms. Significant contributions to CUPS must be licensed to Apple using the <A HREF="https://www.cups.org/AppleContributorAgreement_2011-03-10.pdf">Apple Contributor Agreement</A>.</P>
<P>CUPS is developed by Apple Inc. and distributed as open source software under a combination of GNU GPL2 and GNU LGPL2 licenses with exceptions to allow linking to OpenSSL (which has a GPL-incompatible license) and for developers on Apple's operating systems to develop CUPS-based software under alternate license terms. Significant contributions to CUPS must be licensed to Apple using the <A HREF="https://www.cups.org/AppleContributorAgreement_2011-03-10.pdf">Apple Contributor Agreement</A>.</P>
<P>Apple releases updates to the CUPS software approximately every three months. Each release has a version number consisting of the major version (currently 1), minor version (currently 6), and patch version (starting at 0) separated by the period, for example "1.6.0". Releases where only the patch version number changes will contain only bug fixes to the previous release, for example "1.6.1" includes bug fixes for the "1.6.0" release. New features require the major or minor version numbers to change, for example "1.6.0" release contains new features compared to the "1.5.3" release. Multiple beta and "candidate" releases generally precede each new feature release, for example "1.5b1", "1.5b2", and "1.5rc1" preceded the "1.5.0" release. Finally, we also post regular Subversion snapshot releases, for example "1.6svn-r10486", which represent a snapshot of the development for the next feature release.</P>
......
/*
* "$Id: error.c 11558 2014-02-06 18:33:34Z msweet $"
* "$Id: error.c 12748 2015-06-24 15:58:40Z msweet $"
*
* Raster error handling for CUPS.
*
* Copyright 2007-2014 by Apple Inc.
* Copyright 2007-2015 by Apple Inc.
* Copyright 2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
......@@ -56,6 +56,8 @@ _cupsRasterAddError(const char *f, /* I - Printf-style error message */
ssize_t bytes; /* Bytes in message string */
DEBUG_printf(("_cupsRasterAddError(f=\"%s\", ...)", f));
va_start(ap, f);
bytes = vsnprintf(s, sizeof(s), f, ap);
va_end(ap);
......@@ -63,6 +65,8 @@ _cupsRasterAddError(const char *f, /* I - Printf-style error message */
if (bytes <= 0)
return;
DEBUG_printf(("1_cupsRasterAddError: %s", s));
bytes ++;
if ((size_t)bytes >= sizeof(s))
......@@ -185,7 +189,7 @@ get_error_buffer(void)
* Initialize the global data exactly once...
*/
DEBUG_puts("get_error_buffer()");
DEBUG_puts("3get_error_buffer()");
pthread_once(&raster_key_once, raster_init);
......@@ -196,7 +200,7 @@ get_error_buffer(void)
if ((buf = (_cups_raster_error_t *)pthread_getspecific(raster_key))
== NULL)
{
DEBUG_puts("get_error_buffer: allocating memory for thread...");
DEBUG_puts("4get_error_buffer: allocating memory for thread.");
/*
* No, allocate memory as set the pointer for the key...
......@@ -205,7 +209,7 @@ get_error_buffer(void)
buf = calloc(1, sizeof(_cups_raster_error_t));
pthread_setspecific(raster_key, buf);
DEBUG_printf((" buf=%p\n", buf));
DEBUG_printf(("4get_error_buffer: buf=%p", buf));
}
/*
......@@ -225,8 +229,7 @@ raster_init(void)
{
pthread_key_create(&raster_key, raster_destructor);
DEBUG_printf(("raster_init(): raster_key=%x(%u)\n", (unsigned)raster_key,
(unsigned)raster_key));
DEBUG_printf(("3raster_init(): raster_key=%x(%u)", (unsigned)raster_key, (unsigned)raster_key));
}
......@@ -241,7 +244,7 @@ raster_destructor(void *value) /* I - Data to free */
/* Error buffer */
DEBUG_printf(("raster_destructor(value=%p)\n", value));
DEBUG_printf(("3raster_destructor(value=%p)", value));
if (buf->start)
free(buf->start);
......@@ -272,5 +275,5 @@ get_error_buffer(void)
/*
* End of "$Id: error.c 11558 2014-02-06 18:33:34Z msweet $".
* End of "$Id: error.c 12748 2015-06-24 15:58:40Z msweet $".
*/
/*
* "$Id: interpret.c 11848 2014-05-07 00:26:44Z msweet $"
* "$Id: interpret.c 12748 2015-06-24 15:58:40Z msweet $"
*
* PPD command interpreter for CUPS.
*
* Copyright 2007-2014 by Apple Inc.
* Copyright 2007-2015 by Apple Inc.
* Copyright 1993-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
......@@ -91,8 +91,8 @@ static int setpagedevice(_cups_ps_stack_t *st,
cups_page_header2_t *h,
int *preferred_bits);
#ifdef DEBUG
static void DEBUG_object(_cups_ps_obj_t *obj);
static void DEBUG_stack(_cups_ps_stack_t *st);
static void DEBUG_object(const char *prefix, _cups_ps_obj_t *obj);
static void DEBUG_stack(const char *prefix, _cups_ps_stack_t *st);
#endif /* DEBUG */
......@@ -547,8 +547,8 @@ _cupsRasterExecPS(
while ((obj = scan_ps(st, &codeptr)) != NULL)
{
#ifdef DEBUG
DEBUG_printf(("_cupsRasterExecPS: Stack (%d objects)\n", st->num_objs));
DEBUG_object(obj);
DEBUG_printf(("_cupsRasterExecPS: Stack (%d objects)", st->num_objs));
DEBUG_object("_cupsRasterExecPS", obj);
#endif /* DEBUG */
switch (obj->type)
......@@ -561,11 +561,11 @@ _cupsRasterExecPS(
pop_stack(st);
if (cleartomark_stack(st))
_cupsRasterAddError("cleartomark: Stack underflow!\n");
_cupsRasterAddError("cleartomark: Stack underflow.\n");
#ifdef DEBUG
DEBUG_puts(" dup: ");
DEBUG_stack(st);
DEBUG_puts("1_cupsRasterExecPS: dup");
DEBUG_stack("_cupsRasterExecPS", st);
#endif /* DEBUG */
break;
......@@ -577,7 +577,7 @@ _cupsRasterExecPS(
#ifdef DEBUG
DEBUG_puts("_cupsRasterExecPS: copy");
DEBUG_stack(st);
DEBUG_stack("_cupsRasterExecPS", st);
#endif /* DEBUG */
}
break;
......@@ -588,7 +588,7 @@ _cupsRasterExecPS(
#ifdef DEBUG
DEBUG_puts("_cupsRasterExecPS: dup");
DEBUG_stack(st);
DEBUG_stack("_cupsRasterExecPS", st);
#endif /* DEBUG */
break;
......@@ -600,7 +600,7 @@ _cupsRasterExecPS(
#ifdef DEBUG
DEBUG_puts("_cupsRasterExecPS: index");
DEBUG_stack(st);
DEBUG_stack("_cupsRasterExecPS", st);
#endif /* DEBUG */
}
break;
......@@ -611,7 +611,7 @@ _cupsRasterExecPS(
#ifdef DEBUG
DEBUG_puts("_cupsRasterExecPS: pop");
DEBUG_stack(st);
DEBUG_stack("_cupsRasterExecPS", st);
#endif /* DEBUG */
break;
......@@ -630,7 +630,7 @@ _cupsRasterExecPS(
#ifdef DEBUG
DEBUG_puts("_cupsRasterExecPS: roll");
DEBUG_stack(st);
DEBUG_stack("_cupsRasterExecPS", st);
#endif /* DEBUG */
}
}
......@@ -642,7 +642,7 @@ _cupsRasterExecPS(
#ifdef DEBUG
DEBUG_puts("_cupsRasterExecPS: setpagedevice");
DEBUG_stack(st);
DEBUG_stack("_cupsRasterExecPS", st);
#endif /* DEBUG */
break;
......@@ -653,10 +653,9 @@ _cupsRasterExecPS(
break;
case CUPS_PS_OTHER :
_cupsRasterAddError("Unknown operator \"%s\"!\n", obj->value.other);
_cupsRasterAddError("Unknown operator \"%s\".\n", obj->value.other);
error = 1;
DEBUG_printf(("_cupsRasterExecPS: Unknown operator \"%s\"!\n",
obj->value.other));
DEBUG_printf(("_cupsRasterExecPS: Unknown operator \"%s\".", obj->value.other));
break;
}
......@@ -675,8 +674,8 @@ _cupsRasterExecPS(
error_stack(st, "Stack not empty:");
#ifdef DEBUG
DEBUG_puts("_cupsRasterExecPS: Stack not empty:");
DEBUG_stack(st);
DEBUG_puts("_cupsRasterExecPS: Stack not empty");
DEBUG_stack("_cupsRasterExecPS", st);
#endif /* DEBUG */
delete_stack(st);
......@@ -977,7 +976,7 @@ roll_stack(_cups_ps_stack_t *st, /* I - Stack */
int n; /* Index into array */
DEBUG_printf((" roll_stack(st=%p, s=%d, c=%d)\n", st, s, c));
DEBUG_printf(("3roll_stack(st=%p, s=%d, c=%d)", st, s, c));
/*
* Range check input...
......@@ -1435,7 +1434,7 @@ setpagedevice(
* Now pull /name and value pairs from the dictionary...
*/
DEBUG_puts("setpagedevice: Dictionary:");
DEBUG_puts("3setpagedevice: Dictionary:");
for (obj ++; obj < end; obj ++)
{
......@@ -1450,8 +1449,8 @@ setpagedevice(
obj ++;
#ifdef DEBUG
DEBUG_printf(("setpagedevice: /%s ", name));
DEBUG_object(obj);
DEBUG_printf(("4setpagedevice: /%s ", name));
DEBUG_object("setpagedevice", obj);
#endif /* DEBUG */
/*
......@@ -1601,7 +1600,7 @@ setpagedevice(
* Ignore unknown name+value...
*/
DEBUG_printf((" Unknown name (\"%s\") or value...\n", name));
DEBUG_printf(("4setpagedevice: Unknown name (\"%s\") or value...\n", name));
while (obj[1].type != CUPS_PS_NAME && obj < end)
obj ++;
......@@ -1618,91 +1617,92 @@ setpagedevice(
*/
static void
DEBUG_object(_cups_ps_obj_t *obj) /* I - Object to print */
DEBUG_object(const char *prefix, /* I - Prefix string */
_cups_ps_obj_t *obj) /* I - Object to print */
{
switch (obj->type)
{
case CUPS_PS_NAME :
DEBUG_printf(("/%s\n", obj->value.name));
DEBUG_printf(("4%s: /%s\n", prefix, obj->value.name));
break;
case CUPS_PS_NUMBER :
DEBUG_printf(("%g\n", obj->value.number));
DEBUG_printf(("4%s: %g\n", prefix, obj->value.number));
break;
case CUPS_PS_STRING :
DEBUG_printf(("(%s)\n", obj->value.string));
DEBUG_printf(("4%s: (%s)\n", prefix, obj->value.string));
break;
case CUPS_PS_BOOLEAN :
if (obj->value.boolean)
DEBUG_puts("true");
DEBUG_printf(("4%s: true", prefix));
else
DEBUG_puts("false");
DEBUG_printf(("4%s: false", prefix));
break;
case CUPS_PS_NULL :
DEBUG_puts("null");
DEBUG_printf(("4%s: null", prefix));
break;
case CUPS_PS_START_ARRAY :
DEBUG_puts("[");
DEBUG_printf(("4%s: [", prefix));
break;
case CUPS_PS_END_ARRAY :
DEBUG_puts("]");
DEBUG_printf(("4%s: ]", prefix));
break;
case CUPS_PS_START_DICT :
DEBUG_puts("<<");
DEBUG_printf(("4%s: <<", prefix));
break;
case CUPS_PS_END_DICT :
DEBUG_puts(">>");
DEBUG_printf(("4%s: >>", prefix));
break;
case CUPS_PS_START_PROC :
DEBUG_puts("{");
DEBUG_printf(("4%s: {", prefix));
break;
case CUPS_PS_END_PROC :
DEBUG_puts("}");
DEBUG_printf(("4%s: }", prefix));
break;
case CUPS_PS_CLEARTOMARK :
DEBUG_puts("--cleartomark--");
DEBUG_printf(("4%s: --cleartomark--", prefix));
break;
case CUPS_PS_COPY :
DEBUG_puts("--copy--");
DEBUG_printf(("4%s: --copy--", prefix));
break;
case CUPS_PS_DUP :
DEBUG_puts("--dup--");
DEBUG_printf(("4%s: --dup--", prefix));
break;
case CUPS_PS_INDEX :
DEBUG_puts("--index--");
DEBUG_printf(("4%s: --index--", prefix));
break;
case CUPS_PS_POP :
DEBUG_puts("--pop--");
DEBUG_printf(("4%s: --pop--", prefix));
break;
case CUPS_PS_ROLL :
DEBUG_puts("--roll--");
DEBUG_printf(("4%s: --roll--", prefix));
break;
case CUPS_PS_SETPAGEDEVICE :
DEBUG_puts("--setpagedevice--");
DEBUG_printf(("4%s: --setpagedevice--", prefix));
break;
case CUPS_PS_STOPPED :
DEBUG_puts("--stopped--");
DEBUG_printf(("4%s: --stopped--", prefix));
break;
case CUPS_PS_OTHER :
DEBUG_printf(("--%s--\n", obj->value.other));
DEBUG_printf(("4%s: --%s--", prefix, obj->value.other));
break;
}
}
......@@ -1713,18 +1713,19 @@ DEBUG_object(_cups_ps_obj_t *obj) /* I - Object to print */
*/
static void
DEBUG_stack(_cups_ps_stack_t *st) /* I - Stack */
DEBUG_stack(const char *prefix, /* I - Prefix string */
_cups_ps_stack_t *st) /* I - Stack */
{
int c; /* Looping var */
_cups_ps_obj_t *obj; /* Current object on stack */
for (obj = st->objs, c = st->num_objs; c > 0; c --, obj ++)
DEBUG_object(obj);
DEBUG_object(prefix, obj);
}
#endif /* DEBUG */
/*
* End of "$Id: interpret.c 11848 2014-05-07 00:26:44Z msweet $".
* End of "$Id: interpret.c 12748 2015-06-24 15:58:40Z msweet $".
*/
This diff is collapsed.
#
# "$Id: Makefile 11919 2014-06-11 15:38:28Z msweet $"
# "$Id: Makefile 12815 2015-07-30 15:03:38Z msweet $"
#
# Man page makefile for CUPS.
#
# Copyright 2007-2014 by Apple Inc.
# Copyright 2007-2015 by Apple Inc.
# Copyright 1993-2006 by Easy Software Products.
#
# These coded instructions, statements, and computer programs are the
......@@ -43,6 +43,7 @@ MAN5 = classes.conf.$(MAN5EXT) \
cups-files.conf.$(MAN5EXT) \
cups-snmp.conf.$(MAN5EXT) \
cupsd.conf.$(MAN5EXT) \
cupsd-logs.$(MAN5EXT) \
ipptoolfile.$(MAN5EXT) \
mailto.conf.$(MAN5EXT) \
mime.convs.$(MAN5EXT) \
......@@ -61,7 +62,6 @@ MAN8 = cupsaccept.$(MAN8EXT) \
cups-snmp.$(MAN8EXT) \
cupsd.$(MAN8EXT) \
cupsd-helper.$(MAN8EXT) \
cupsd-logs.$(MAN8EXT) \
cupsenable.$(MAN8EXT) \
lpadmin.$(MAN8EXT) \
lpinfo.$(MAN8EXT) \
......@@ -228,5 +228,5 @@ mantohtml: mantohtml.o ../cups/$(LIBCUPSSTATIC)
#
# End of "$Id: Makefile 11919 2014-06-11 15:38:28Z msweet $".
# End of "$Id: Makefile 12815 2015-07-30 15:03:38Z msweet $".
#
.\"
.\" "$Id: cupsd.conf.man.in 12363 2014-12-12 19:51:33Z msweet $"
.\" "$Id: cupsd.conf.man.in 12769 2015-06-30 16:13:48Z msweet $"
.\"
.\" cupsd.conf man page 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
......@@ -12,7 +12,7 @@
.\" which should have been included with this file. If this file is
.\" file is missing or damaged, see the license at "http://www.cups.org/".
.\"
.TH cupsd.conf 5 "CUPS" "20 October 2014" "Apple Inc."
.TH cupsd.conf 5 "CUPS" "30 June 2015" "Apple Inc."
.SH NAME
cupsd.conf \- server configuration file for cups
.SH DESCRIPTION
......@@ -369,7 +369,8 @@ The following percent sequences are recognized:
"%u" inserts the username.
.fi
The default is "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".
The default is the empty string, which disables page logging.
The string "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}" creates a page log with the standard items.
.\"#PassEnv
.TP 5
\fBPassEnv \fIvariable \fR[ ... \fIvariable \fR]
......@@ -869,7 +870,7 @@ Require authentication for accesses from outside the 10. network:
.BR subscriptions.conf (5),
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: cupsd.conf.man.in 12363 2014-12-12 19:51:33Z msweet $".
.\" End of "$Id: cupsd.conf.man.in 12769 2015-06-30 16:13:48Z msweet $".
.\"
#
# "$Id: cups.spec.in 12501 2015-02-09 15:23:13Z msweet $"
# "$Id: cups.spec.in 12770 2015-06-30 16:17:56Z msweet $"
#
# RPM "spec" file for CUPS.
#
# Original version by Jason McMullan <jmcc@ontv.com>.
#
# Copyright 2007-2014 by Apple Inc.
# Copyright 2007-2015 by Apple Inc.
# Copyright 1999-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
......@@ -44,12 +44,12 @@
Summary: CUPS
Name: cups
Version: 2.0.3
Version: 2.0.4
Release: 1
Epoch: 1
License: GPL
Group: System Environment/Daemons
Source: http://www.cups.org/software/2.0.3/cups-2.0.3-source.tar.bz2
Source: http://www.cups.org/software/2.0.4/cups-2.0.4-source.tar.bz2
Url: http://www.cups.org
Packager: Anonymous <anonymous@foo.com>
Vendor: Apple Inc.
......@@ -268,19 +268,23 @@ rm -rf $RPM_BUILD_ROOT
#/usr/share/doc/cups/ca/*
#%dir /usr/share/doc/cups/cs
#/usr/share/doc/cups/cs/*
%dir /usr/share/doc/cups/de
/usr/share/doc/cups/de/*
%dir /usr/share/doc/cups/es
/usr/share/doc/cups/es/*
#%dir /usr/share/doc/cups/fr
#/usr/share/doc/cups/fr/*
%dir /usr/share/doc/cups/ja
/usr/share/doc/cups/ja/*
#%dir /usr/share/doc/cups/ru
#/usr/share/doc/cups/ru/*
%dir /usr/share/doc/cups/ru
/usr/share/doc/cups/ru/*
%dir /usr/share/locale/ca
/usr/share/locale/ca/cups_ca.po
%dir /usr/share/locale/cs