diff options
68 files changed, 254 insertions, 156 deletions
diff --git a/CHANGES.md b/CHANGES.md index d79faa8b1..19947a2ef 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,4 +1,4 @@ -CHANGES - 2.2.5 - 2017-08-31 +CHANGES - 2.2.5 - 2017-10-02 ============================ CHANGES IN CUPS V2.2.5 @@ -40,6 +40,11 @@ CHANGES IN CUPS V2.2.5 - The scheduler woke up once per second to remove old temporary queues (Issue #5100) - Added USB quirk rule for Kyocera printer (Issue #5102, Issue #5103) +- Re-documented the limits of `file:///...` device URIs and moved the FileDevice + directive in `cups-files.conf` to the list of deprecated configuration + directives (Issue #5117) +- Added USB quirk rule for HP LaserJet 1160 printer (Issue #5121) +- The network backends now retry on more error conditions (Issue #5123) - `httpAddrConnect` leaked sockets in certain circumstances, causing some printers to hang (rdar://31965686) - Fixed an issue with Chinese localizations on macOS (rdar://32419311) @@ -55,7 +60,9 @@ CHANGES IN CUPS V2.2.5 - The `ippCopyAttribute` function did not copy out-of-band values correctly (rdar://33688003) - Fixed the localization fallback code on macOS (rdar://33583699) -- The `ipptool` program now offers an option to validate response headers. +- The scheduler did not run with a high enough priority, causing problems on + busy systems (rdar://33789342) +- Added support for Japanese Kaku 1 envelope size (rdar://34774110) - The `ipptool` program's `-P` option did not work correctly. - The `ipptool` program did not compare URI scheme or hostname components correctly for the WITH-ALL-HOSTNAMES, WITH-ALL-SCHEMES, WITH-HOSTNAME, or diff --git a/INSTALL.md b/INSTALL.md index 4a2529a06..ba5ab7253 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,14 +1,28 @@ -INSTALL - CUPS v2.2.4 - 2017-06-30 +INSTALL - CUPS v2.2.5 - 2017-09-25 ================================== This file describes how to compile and install CUPS from source code. For more information on CUPS see the file called "README.txt". A complete change log can be found in "CHANGES.txt". -> USING CUPS REQUIRES ADDITIONAL THIRD-PARTY SUPPORT SOFTWARE AND PRINTER -> DRIVERS. THESE ARE TYPICALLY INCLUDED WITH YOUR OPERATING SYSTEM -> DISTRIBUTION. APPLE DOES NOT ENDORSE OR SUPPORT THIRD-PARTY SUPPORT SOFTWARE -> FOR CUPS. +Using CUPS requires additional third-party support software and printer drivers. +These are typically included with your operating system distribution. Apple +does not endorse or support third-party support software for CUPS. + +> Note: Current versions of macOS DO NOT allow installation to /usr with the +> default System Integrity Protection (SIP) settings. In addition, we do not +> recommend replacing the CUPS supplied with macOS because: +> +> a. not all versions of CUPS are compatible with every macOS release, +> +> b. code signing prevents replacement of system libraries and access to the +> system keychain (needed for encrypted printer sharing), and +> +> c. software updates will often replace parts of your local installation, +> potentially rendering your system unusable. +> +> Apple only supports using the Clang supplied with Xcode to build CUPS on +> macOS. BEFORE YOU BEGIN @@ -52,12 +66,15 @@ main CUPS source directory. To configure CUPS for your system, type: The default installation will put the CUPS software in the "/etc", "/usr", and "/var" directories on your system, which will overwrite any existing printing -commands on your system. Use the "--prefix" option to install the CUPS software +commands on your system. Use the `--prefix` option to install the CUPS software in another location: ./configure --prefix=/some/directory -To see a complete list of configuration options, use the --help option: +> Note: Current versions of macOS DO NOT allow installation to /usr with the +> default System Integrity Protection (SIP) settings. + +To see a complete list of configuration options, use the `--help` option: ./configure --help @@ -82,26 +99,20 @@ or: LDFLAGS="-L/some/directory" \ ./configure ... -The "--enable-debug" option compiles CUPS with debugging information enabled. +The `--enable-debug` option compiles CUPS with debugging information enabled. Additional debug logging support can be enabled using the -"--enable-debug-printfs" option - these debug messages are enabled using the -CUPS_DEBUG_LOG environment variable at run-time. +`--enable-debug-printfs` option - these debug messages are enabled using the +`CUPS_DEBUG_xxx` environment variables at run-time. CUPS also includes an extensive set of unit tests that can be used to find and diagnose a variety of common problems - use the "--enable-unit-tests" configure option to run them at build time. -On macOS, use the "--with-archflags" option to build with the correct set of +On macOS, use the `--with-archflags` option to build with the correct set of architectures: ./configure --with-archflags="-arch i386 -arch x86_64" ... -> Note: Current versions of macOS DO NOT allow installation to /usr with the -> default system integrity settings. In addition, we do not recommend replacing -> the CUPS supplied with macOS because not all versions of CUPS are compatible -> with every macOS release, and because software updates will replace parts -> of your local installation potentially rendering your system unusable. - Once you have configured things, just type: make ENTER @@ -184,7 +195,7 @@ for FreeBSD, NetBSD, and OpenBSD. The <format> target is one of the following: GETTING DEBUG LOGGING FROM CUPS ------------------------------- -When configured with the "--enable-debug-printfs" option, CUPS compiles in +When configured with the `--enable-debug-printfs` option, CUPS compiles in additional debug logging support in the scheduler, CUPS API, and CUPS Imaging API. The following environment variables are used to enable and control debug logging: @@ -195,13 +206,14 @@ logging: the logging. The default level is 1. - `CUPS_DEBUG_LOG`: Specifies a log file to use. Specify the name "-" to send the messages to stderr. Prefix a filename with "+" to append to an existing - file. + file. You can include a single "%d" in the filename to embed the current + process ID. REPORTING PROBLEMS ------------------ -If you have problems, READ THE DOCUMENTATION FIRST! If the documentation does +If you have problems, *read the documentation first*! If the documentation does not solve your problems, please post a message on the users forum at: https://www.cups.org/ diff --git a/backend/ipp.c b/backend/ipp.c index 3b2451396..731d1cc9d 100644 --- a/backend/ipp.c +++ b/backend/ipp.c @@ -743,8 +743,7 @@ main(int argc, /* I - Number of command-line args */ fprintf(stderr, "DEBUG: Connection error: %s\n", strerror(errno)); - if (errno == ECONNREFUSED || errno == EHOSTDOWN || - errno == EHOSTUNREACH) + if (errno == ECONNREFUSED || errno == EHOSTDOWN || errno == EHOSTUNREACH || errno == ETIMEDOUT || errno == ENOTCONN) { if (contimeout && (time(NULL) - start_time) > contimeout) { @@ -763,13 +762,13 @@ main(int argc, /* I - Number of command-line args */ break; case EHOSTUNREACH : + default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is unreachable at this " "time.")); break; case ECONNREFUSED : - default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is in use.")); break; diff --git a/backend/lpd.c b/backend/lpd.c index 835f9eaee..4325b7c78 100644 --- a/backend/lpd.c +++ b/backend/lpd.c @@ -867,8 +867,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */ fprintf(stderr, "DEBUG: Connection error: %s\n", strerror(error)); - if (error == ECONNREFUSED || error == EHOSTDOWN || - error == EHOSTUNREACH) + if (errno == ECONNREFUSED || errno == EHOSTDOWN || errno == EHOSTUNREACH || errno == ETIMEDOUT || errno == ENOTCONN) { if (contimeout && (time(NULL) - start_time) > contimeout) { @@ -886,13 +885,13 @@ lpd_queue(const char *hostname, /* I - Host to connect to */ break; case EHOSTUNREACH : + default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is unreachable at " "this time.")); break; case ECONNREFUSED : - default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is in use.")); break; diff --git a/backend/org.cups.usb-quirks b/backend/org.cups.usb-quirks index 6df867116..fe3f62200 100644 --- a/backend/org.cups.usb-quirks +++ b/backend/org.cups.usb-quirks @@ -256,3 +256,6 @@ # Lexmark E260dn (Issue #4994) 0x043d 0x0123 no-reattach + +# HP LaserJet 1160 (Issue #5121) +0x03f0 0x1e17 delay-close diff --git a/backend/socket.c b/backend/socket.c index 7fc0880f1..c16a1a097 100644 --- a/backend/socket.c +++ b/backend/socket.c @@ -330,8 +330,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */ fprintf(stderr, "DEBUG: Connection error: %s\n", strerror(error)); - if (error == ECONNREFUSED || error == EHOSTDOWN || - error == EHOSTUNREACH) + if (errno == ECONNREFUSED || errno == EHOSTDOWN || errno == EHOSTUNREACH || errno == ETIMEDOUT || errno == ENOTCONN) { if (contimeout && (time(NULL) - start_time) > contimeout) { @@ -349,13 +348,13 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */ break; case EHOSTUNREACH : + default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is unreachable at this " "time.")); break; case ECONNREFUSED : - default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is in use.")); break; diff --git a/config-scripts/cups-compiler.m4 b/config-scripts/cups-compiler.m4 index bf4411e49..49963934f 100644 --- a/config-scripts/cups-compiler.m4 +++ b/config-scripts/cups-compiler.m4 @@ -185,6 +185,15 @@ if test -n "$GCC"; then AC_MSG_RESULT(no)) CFLAGS="$OLDCFLAGS" + AC_MSG_CHECKING(whether compiler supports -Wno-format-truncation) + OLDCFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror -Wno-format-truncation" + AC_TRY_COMPILE(,, + [OPTIM="$OPTIM -Wno-format-truncation" + AC_MSG_RESULT(yes)], + AC_MSG_RESULT(no)) + CFLAGS="$OLDCFLAGS" + # Additional warning options for development testing... if test -d .svn; then OPTIM="-Werror $OPTIM" diff --git a/config-scripts/cups-ssl.m4 b/config-scripts/cups-ssl.m4 index 1902e8a44..52f9c39f1 100644 --- a/config-scripts/cups-ssl.m4 +++ b/config-scripts/cups-ssl.m4 @@ -61,7 +61,6 @@ if test x$enable_ssl != xno; then dnl Then look for GNU TLS... if test $have_ssl = 0 -a "x$enable_gnutls" != "xno" -a "x$PKGCONFIG" != x; then AC_PATH_TOOL(LIBGNUTLSCONFIG,libgnutls-config) - AC_PATH_TOOL(LIBGCRYPTCONFIG,libgcrypt-config) if $PKGCONFIG --exists gnutls; then have_ssl=1 SSLLIBS=`$PKGCONFIG --libs gnutls` @@ -7069,6 +7069,32 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext CFLAGS="$OLDCFLAGS" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports -Wno-format-truncation" >&5 +$as_echo_n "checking whether compiler supports -Wno-format-truncation... " >&6; } + OLDCFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror -Wno-format-truncation" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + OPTIM="$OPTIM -Wno-format-truncation" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$OLDCFLAGS" + # Additional warning options for development testing... if test -d .svn; then OPTIM="-Werror $OPTIM" diff --git a/cups/file.c b/cups/file.c index 8cdf0368c..5d1505403 100644 --- a/cups/file.c +++ b/cups/file.c @@ -2477,6 +2477,8 @@ cups_fill(cups_file_t *fp) /* I - CUPS file */ * file header... */ + inflateEnd(&fp->stream); + fp->compressed = 0; } else if (status < Z_OK) diff --git a/cups/ipp.c b/cups/ipp.c index ed0909488..9d37bc8f6 100644 --- a/cups/ipp.c +++ b/cups/ipp.c @@ -1838,12 +1838,19 @@ ippDelete(ipp_t *ipp) /* I - IPP message */ ipp->use --; if (ipp->use > 0) + { + DEBUG_printf(("4debug_retain: %p IPP message (use=%d)", (void *)ipp, ipp->use)); return; + } + + DEBUG_printf(("4debug_free: %p IPP message", (void *)ipp)); for (attr = ipp->attrs; attr != NULL; attr = next) { next = attr->next; + DEBUG_printf(("4debug_free: %p %s %s%s (%d values)", (void *)attr, attr->name, attr->num_values > 1 ? "1setOf " : "", ippTagString(attr->value_tag), attr->num_values)); + ipp_free_values(attr, 0, attr->num_values); if (attr->name) @@ -1880,6 +1887,8 @@ ippDeleteAttribute( if (!attr) return; + DEBUG_printf(("4debug_free: %p %s %s%s (%d values)", (void *)attr, attr->name, attr->num_values > 1 ? "1setOf " : "", ippTagString(attr->value_tag), attr->num_values)); + /* * Find the attribute in the list... */ @@ -2715,6 +2724,8 @@ ippNew(void) * Set default version - usually 2.0... */ + DEBUG_printf(("4debug_alloc: %p IPP message", (void *)temp)); + if (cg->server_version == 0) _cupsSetDefaults(); @@ -6528,6 +6539,8 @@ ipp_add_attr(ipp_t *ipp, /* I - IPP message */ * Initialize attribute... */ + DEBUG_printf(("4debug_alloc: %p %s %s%s (%d values)", (void *)attr, name, num_values > 1 ? "1setOf " : "", ippTagString(value_tag), num_values)); + if (name) attr->name = _cupsStrAlloc(name); @@ -7084,6 +7097,9 @@ ipp_set_value(ipp_t *ipp, /* IO - IPP message */ * Reset pointers in the list... */ + DEBUG_printf(("4debug_free: %p %s %s%s (%d)", (void *)*attr, (*attr)->name, (*attr)->num_values > 1 ? "1setOf " : "", ippTagString((*attr)->value_tag), (*attr)->num_values)); + DEBUG_printf(("4debug_alloc: %p %s %s%s (%d)", (void *)temp, temp->name, temp->num_values > 1 ? "1setOf " : "", ippTagString(temp->value_tag), temp->num_values)); + if (ipp->current == *attr && ipp->prev) { /* diff --git a/cups/pwg-media.c b/cups/pwg-media.c index 73356fd73..62455ea6d 100644 --- a/cups/pwg-media.c +++ b/cups/pwg-media.c @@ -189,6 +189,7 @@ static pwg_media_t const cups_pwg_media[] = _PWG_MEDIA_MM("jis_b1_728x1030mm", "jis-b1", "B1", 728, 1030), _PWG_MEDIA_MM("jis_b0_1030x1456mm", "jis-b0", "B0", 1030, 1456), _PWG_MEDIA_MM("jis_exec_216x330mm", NULL, "216x330mm", 216, 330), + _PWG_MEDIA_MM("jpn_kaku1_270x382mm", NULL, "EnvKaku1", 270, 382), _PWG_MEDIA_MM("jpn_kaku2_240x332mm", NULL, "EnvKaku2", 240, 332), _PWG_MEDIA_MM("jpn_kaku3_216x277mm", NULL, "EnvKaku3", 216, 277), _PWG_MEDIA_MM("jpn_kaku4_197x267mm", NULL, "EnvKaku4", 197, 267), diff --git a/cups/thread-private.h b/cups/thread-private.h index ca4ef4cb4..79d243867 100644 --- a/cups/thread-private.h +++ b/cups/thread-private.h @@ -1,7 +1,7 @@ /* * Private threading definitions for CUPS. * - * Copyright 2009-2016 by Apple Inc. + * Copyright 2009-2017 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -99,6 +99,7 @@ extern void _cupsRWLockWrite(_cups_rwlock_t *rwlock); extern void _cupsRWUnlock(_cups_rwlock_t *rwlock); extern void _cupsThreadCancel(_cups_thread_t thread); extern _cups_thread_t _cupsThreadCreate(_cups_thread_func_t func, void *arg); +extern void _cupsThreadDetach(_cups_thread_t thread); extern void *_cupsThreadWait(_cups_thread_t thread); # ifdef __cplusplus diff --git a/cups/thread.c b/cups/thread.c index 77b44426e..65257aa11 100644 --- a/cups/thread.c +++ b/cups/thread.c @@ -1,7 +1,7 @@ /* * Threading primitives for CUPS. * - * Copyright 2009-2016 by Apple Inc. + * Copyright 2009-2017 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -173,6 +173,17 @@ _cupsThreadCreate( /* + * '_cupsThreadDetach()' - Tell the OS that the thread is running independently. + */ + +void +_cupsThreadDetach(_cups_thread_t thread)/* I - Thread ID */ +{ + pthread_detach(thread); +} + + +/* * '_cupsThreadWait()' - Wait for a thread to exit. */ @@ -344,6 +355,18 @@ _cupsThreadCreate( /* + * '_cupsThreadDetach()' - Tell the OS that the thread is running independently. + */ + +void +_cupsThreadDetach(_cups_thread_t thread)/* I - Thread ID */ +{ + // TODO: Implement me + (void)thread; +} + + +/* * '_cupsThreadWait()' - Wait for a thread to exit. */ diff --git a/cups/usersys.c b/cups/usersys.c index ff5cb3083..026b4a7cc 100644 --- a/cups/usersys.c +++ b/cups/usersys.c @@ -1175,7 +1175,7 @@ cups_init_client_conf( * everything...) */ -#ifdef __APPLE__ +#if defined(__APPLE__) && defined(HAVE_SSL) char sval[1024]; /* String value */ int bval; /* Boolean value */ @@ -1196,7 +1196,7 @@ cups_init_client_conf( if (cups_apple_get_boolean(kValidateCertsKey, &bval)) cc->validate_certs = bval; -#endif /* __APPLE__ */ +#endif /* __APPLE__ && HAVE_SSL */ } diff --git a/debian/.git-dpm b/debian/.git-dpm index 6c39f799c..9fcb8d940 100644 --- a/debian/.git-dpm +++ b/debian/.git-dpm @@ -1,8 +1,8 @@ # see git-dpm(1) from git-dpm package -35eec72c5ab9b1978ef85010b3d7d26bf8649c4b -35eec72c5ab9b1978ef85010b3d7d26bf8649c4b -2cb1fda9fe6c10da0653e439d86ead125c963720 -2cb1fda9fe6c10da0653e439d86ead125c963720 -cups_2.2.4-91-g2cb1fda9f.orig.tar.xz -5b3a3d8f48785da7e75ef84bd936cc249877bb51 -8435000 +018735beba4198055c3c151941fcdd43b3bfa1d4 +018735beba4198055c3c151941fcdd43b3bfa1d4 +4cf66fef48e992ae8f8196db50a742c6276e415b +4cf66fef48e992ae8f8196db50a742c6276e415b +cups_2.2.4-106-g4cf66fef4.orig.tar.xz +47d5b93b3204f2bfb1df8f08a65d7e6a7de86a4e +8432196 diff --git a/debian/patches/0037-Build-mantohtml-with-the-build-architecture-compiler.patch b/debian/patches/0037-Build-mantohtml-with-the-build-architecture-compiler.patch index 5d619a9ec..622fa422b 100644 --- a/debian/patches/0037-Build-mantohtml-with-the-build-architecture-compiler.patch +++ b/debian/patches/0037-Build-mantohtml-with-the-build-architecture-compiler.patch @@ -1,4 +1,4 @@ -From fc0dd5de5e3a1828fb1586e2623504af7dcea2a0 Mon Sep 17 00:00:00 2001 +From b0254759d09523aa367fba531588a0d30f374e70 Mon Sep 17 00:00:00 2001 From: Helmut Grohne <helmut@subdivi.de> Date: Tue, 9 Aug 2016 18:11:49 +0200 Subject: Build mantohtml with the build architecture compiler diff --git a/debian/patches/airprint-support.patch b/debian/patches/airprint-support.patch index ef63eca97..56453be68 100644 --- a/debian/patches/airprint-support.patch +++ b/debian/patches/airprint-support.patch @@ -1,4 +1,4 @@ -From cd21d71744b220a9fb0a3fbeb26848876acf3dfe Mon Sep 17 00:00:00 2001 +From ce056806558cb17aba4d4c40d04e679e55ec3be9 Mon Sep 17 00:00:00 2001 From: Till Kamppeter <till.kamppeter@gmail.com> Date: Tue, 9 Aug 2016 18:11:29 +0200 Subject: Patch to support Apple AirPrint (printing from iPhone, iPad, iPod diff --git a/debian/patches/confdirperms.patch b/debian/patches/confdirperms.patch index a63979dca..5228e6b49 100644 --- a/debian/patches/confdirperms.patch +++ b/debian/patches/confdirperms.patch @@ -1,4 +1,4 @@ -From bc11f9eb9472545d5cf0ff12aa47295c87177907 Mon Sep 17 00:00:00 2001 +From 37b4cd8d4560062ea8e8612ee6468d5c7a7bdf2e Mon Sep 17 00:00:00 2001 From: Martin Pitt <mpitt@debian.org> Date: Tue, 9 Aug 2016 18:11:41 +0200 Subject: Do not mess with the permissions of cupsd.conf. diff --git a/debian/patches/cups-deviced-allow-device-ids-with-newline.patch b/debian/patches/cups-deviced-allow-device-ids-with-newline.patch index 5f4703daf..8d56f8b07 100644 --- a/debian/patches/cups-deviced-allow-device-ids-with-newline.patch +++ b/debian/patches/cups-deviced-allow-device-ids-with-newline.patch @@ -1,4 +1,4 @@ -From d613ae49b5b2a87f6d50f080fb5c95146aba9e68 Mon Sep 17 00:00:00 2001 +From 40b1c1b3be59b7c348fb67378065def8e1beef05 Mon Sep 17 00:00:00 2001 From: Till Kamppeter <till.kamppeter@gmail.com> Date: Tue, 9 Aug 2016 18:11:28 +0200 Subject: Some printers have broken device IDs with newline diff --git a/debian/patches/cups-set-default-error-policy-retry-job.patch b/debian/patches/cups-set-default-error-policy-retry-job.patch index f24ee8046..9a8e5467d 100644 --- a/debian/patches/cups-set-default-error-policy-retry-job.patch +++ b/debian/patches/cups-set-default-error-policy-retry-job.patch @@ -1,4 +1,4 @@ -From d85980b7283b58bc305f101de33868f74e54db88 Mon Sep 17 00:00:00 2001 +From 8d9f2779404a6b0a6dcdf344bf2afdb9ab912abd Mon Sep 17 00:00:00 2001 From: Martin Pitt <martin.pitt@ubuntu.com> Date: Tue, 9 Aug 2016 18:11:47 +0200 Subject: Set default job error policy to "retry-job", since it is less diff --git a/debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch b/debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch index 02d74ab7d..4d19c1825 100644 --- a/debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch +++ b/debian/patches/cupsd-set-default-for-SyncOnClose-to-Yes.patch @@ -1,4 +1,4 @@ -From 931aac729a7cf626a30ba889ed915a71214b3e73 Mon Sep 17 00:00:00 2001 +From c29b346fb90835d6cb0f5418393703bf27020c0c Mon Sep 17 00:00:00 2001 From: Tim Waugh <twaugh@redhat.com> Date: Tue, 9 Aug 2016 18:11:46 +0200 Subject: Set the default for SyncOnClose to Yes @@ -40,10 +40,10 @@ index 42dae48b3..92812db5a 100644 <dd style="margin-left: 5.0em">Specifies the group(s) to use for <i>@SYSTEM</i> group authentication. The default contains "admin", "lpadmin", "root", "sys", and/or "system". diff --git a/man/cups-files.conf.man.in b/man/cups-files.conf.man.in -index 965450550..c11b43fe7 100644 +index 2ed468661..07446abd6 100644 --- a/man/cups-files.conf.man.in +++ b/man/cups-files.conf.man.in -@@ -211,7 +211,7 @@ The default is "/var/run/cups" or "/etc/cups" depending on the platform. +@@ -204,7 +204,7 @@ The default is "/var/run/cups" or "/etc/cups" depending on the platform. Specifies whether the scheduler calls .BR fsync (2) after writing configuration or state files. diff --git a/debian/patches/debianize_cups-config.patch b/debian/patches/debianize_cups-config.patch index 5fa141b76..450496ee0 100644 --- a/debian/patches/debianize_cups-config.patch +++ b/debian/patches/debianize_cups-config.patch @@ -1,4 +1,4 @@ -From 80649d663f8447e0867133651c2a44c4ba232fb1 Mon Sep 17 00:00:00 2001 +From 2b10fb5882ebb11be046a483bcf3c71c00f5c593 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:49 +0200 Subject: Use dpkg-architecture in cups-config to make it diff --git a/debian/patches/default_log_settings.patch b/debian/patches/default_log_settings.patch index 9aad32eda..c0d70dc9e 100644 --- a/debian/patches/default_log_settings.patch +++ b/debian/patches/default_log_settings.patch @@ -1,4 +1,4 @@ -From 9e1eef6c8eb86b4dc787898e70747280f0961245 Mon Sep 17 00:00:00 2001 +From 8401a65a9d528aaebb3cb9d95eaa92d121d4b7af Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:40 +0200 Subject: Deactivate CUPS' own log rotating as the system already provides a diff --git a/debian/patches/do-not-broadcast-with-hostnames.patch b/debian/patches/do-not-broadcast-with-hostnames.patch index a797c2370..a4b7badfc 100644 --- a/debian/patches/do-not-broadcast-with-hostnames.patch +++ b/debian/patches/do-not-broadcast-with-hostnames.patch @@ -1,4 +1,4 @@ -From 674770039f5fc03a10ce61f5fc7ffef379eaca74 Mon Sep 17 00:00:00 2001 +From 7208bfbe5f12afcaae6ed4f099b9353e97e24a08 Mon Sep 17 00:00:00 2001 From: Till Kampetter <till.kampetter@gmail.com> Date: Tue, 9 Aug 2016 18:11:35 +0200 Subject: Do not use host names for broadcasting print queues and diff --git a/debian/patches/drop_unnecessary_dependencies.patch b/debian/patches/drop_unnecessary_dependencies.patch index def9efad8..ddc34b803 100644 --- a/debian/patches/drop_unnecessary_dependencies.patch +++ b/debian/patches/drop_unnecessary_dependencies.patch @@ -1,4 +1,4 @@ -From d380ccfd36c6ca5f0286ab13c5bf4bfbee7968a1 Mon Sep 17 00:00:00 2001 +From 0115796ff9221a8f9264f861e1fa4cab442d4096 Mon Sep 17 00:00:00 2001 From: Martin Pitt <mpitt@debian.org> Date: Tue, 9 Aug 2016 18:11:25 +0200 Subject: Do not link libcups.so and libcupsimage.so against diff --git a/debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch b/debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch index 810305769..81220b519 100644 --- a/debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch +++ b/debian/patches/fixes-for-jobs-with-multiple-files-and-multiple-formats.patch @@ -1,4 +1,4 @@ -From 9940c23cf03002da6a5132e1687eb620efad1423 Mon Sep 17 00:00:00 2001 +From 1dab48c03380cc331b01034517a7103a7f99c49e Mon Sep 17 00:00:00 2001 From: Tim Waugh <twaugh@redhat.com> Date: Tue, 9 Aug 2016 18:11:07 +0200 Subject: Fix jobs with multiple files or multiple formats @@ -12,10 +12,10 @@ Patch-Name: fixes-for-jobs-with-multiple-files-and-multiple-formats.patch 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/backend/ipp.c b/backend/ipp.c -index 685d4d9df..3b2451396 100644 +index 588ad995e..731d1cc9d 100644 --- a/backend/ipp.c +++ b/backend/ipp.c -@@ -1779,7 +1779,10 @@ main(int argc, /* I - Number of command-line args */ +@@ -1778,7 +1778,10 @@ main(int argc, /* I - Number of command-line args */ ippAddBoolean(request, IPP_TAG_OPERATION, "last-document", (i + 1) >= num_files); diff --git a/debian/patches/log-debug-history-nearly-unlimited.patch b/debian/patches/log-debug-history-nearly-unlimited.patch index e5cae4668..121dfb770 100644 --- a/debian/patches/log-debug-history-nearly-unlimited.patch +++ b/debian/patches/log-debug-history-nearly-unlimited.patch @@ -1,4 +1,4 @@ -From 4896555a36f5b32229453a504a2e0a2464b151ba Mon Sep 17 00:00:00 2001 +From 33f27683186f5657817d7d06c68f669793fef46f Mon Sep 17 00:00:00 2001 From: Till Kampetter <till.kampetter@gmail.com> Date: Tue, 9 Aug 2016 18:11:45 +0200 Subject: Make log debug history nearly unlimited diff --git a/debian/patches/logfiles_adm_readable.patch b/debian/patches/logfiles_adm_readable.patch index 5783ccdae..33fcf4937 100644 --- a/debian/patches/logfiles_adm_readable.patch +++ b/debian/patches/logfiles_adm_readable.patch @@ -1,4 +1,4 @@ -From 13b2593a20bdc129a70423aa3ebeb3e9d5e7f6c4 Mon Sep 17 00:00:00 2001 +From 750f072d7a69f44197f3792dccf31c06bc3e9dad Mon Sep 17 00:00:00 2001 From: Martin Pitt <mpitt@debian.org> Date: Tue, 9 Aug 2016 18:11:38 +0200 Subject: Make log files readable to group "adm", if present. diff --git a/debian/patches/man-cups-lpd-drop-dangling-references.patch b/debian/patches/man-cups-lpd-drop-dangling-references.patch index b4b549079..61e5da29b 100644 --- a/debian/patches/man-cups-lpd-drop-dangling-references.patch +++ b/debian/patches/man-cups-lpd-drop-dangling-references.patch @@ -1,4 +1,4 @@ -From 5960f6f402acbd8d180c84fd52dda63d0a5b2ede Mon Sep 17 00:00:00 2001 +From 1eb7b9998f092faad34b1605e4a567b338611380 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastien=20ROUCARI=C3=88S?= <bastien.roucaries@u-cergy.fr> Date: Tue, 9 Aug 2016 18:11:48 +0200 Subject: Drop dangling references from cups-lpd.man diff --git a/debian/patches/manpage-hyphen-minus.patch b/debian/patches/manpage-hyphen-minus.patch index d7aa667cd..f9d91ca49 100644 --- a/debian/patches/manpage-hyphen-minus.patch +++ b/debian/patches/manpage-hyphen-minus.patch @@ -1,4 +1,4 @@ -From b42773e55b90a56936b9a2706b28d34e498914a7 Mon Sep 17 00:00:00 2001 +From baf7dc51077cde7d6d5fb7745510b4b449949aaf Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:05 +0200 Subject: Fix hyphen-used-as-minus-sign manpage errors diff --git a/debian/patches/manpage-translations.patch b/debian/patches/manpage-translations.patch index 7fe3ae8e2..2f679bf88 100644 --- a/debian/patches/manpage-translations.patch +++ b/debian/patches/manpage-translations.patch @@ -1,4 +1,4 @@ -From 35eec72c5ab9b1978ef85010b3d7d26bf8649c4b Mon Sep 17 00:00:00 2001 +From 018735beba4198055c3c151941fcdd43b3bfa1d4 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:50 +0200 Subject: po4a infrastructure and translations for manpages. diff --git a/debian/patches/move-cupsd-conf-default-to-share.patch b/debian/patches/move-cupsd-conf-default-to-share.patch index 59326794c..d7ea9b204 100644 --- a/debian/patches/move-cupsd-conf-default-to-share.patch +++ b/debian/patches/move-cupsd-conf-default-to-share.patch @@ -1,4 +1,4 @@ -From e13a54dfaf2aa5cbfb23a50133bac9436e11a402 Mon Sep 17 00:00:00 2001 +From 23f8af89f168f1344146f167a90dc49dd609f18b Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:24 +0200 Subject: Move cupsd.conf.default from SERVERROOT to DATADIR diff --git a/debian/patches/no-conffile-timestamp.patch b/debian/patches/no-conffile-timestamp.patch index fc6b129e6..c39ee8f2f 100644 --- a/debian/patches/no-conffile-timestamp.patch +++ b/debian/patches/no-conffile-timestamp.patch @@ -1,4 +1,4 @@ -From c7fbd44ba1871a841f6b63f6c4031ebd20483ad9 Mon Sep 17 00:00:00 2001 +From ce5336ae50738a1d53b8fd9df35499bf44e5029e Mon Sep 17 00:00:00 2001 From: Joey Hess <joeyh@debian.org> Date: Tue, 9 Aug 2016 18:11:31 +0200 Subject: Disable time stamps in conffiles, to avoid ever-changing files in @@ -30,7 +30,7 @@ index 57f9a8f44..74036fd46 100644 /* diff --git a/scheduler/job.c b/scheduler/job.c -index e69294d14..558cfd9cb 100644 +index fb599bf8f..b26f5f04b 100644 --- a/scheduler/job.c +++ b/scheduler/job.c @@ -2203,7 +2203,7 @@ cupsdSaveAllJobs(void) diff --git a/debian/patches/printer-filtering.patch b/debian/patches/printer-filtering.patch index c830b4057..50f11e148 100644 --- a/debian/patches/printer-filtering.patch +++ b/debian/patches/printer-filtering.patch @@ -1,4 +1,4 @@ -From 70b8cdcad81d7451d4cfb431e4c8bfa690e14357 Mon Sep 17 00:00:00 2001 +From f63355b9f7c3da85819d4193c5fbe1af1684d12e Mon Sep 17 00:00:00 2001 From: Julien Desfossez at Revolution Linux <Julien Desfossez at Revolution Linux> Date: Tue, 9 Aug 2016 18:11:42 +0200 @@ -13,10 +13,10 @@ Patch-Name: printer-filtering.patch 1 file changed, 116 insertions(+) diff --git a/cups/ipp.c b/cups/ipp.c -index 5fd587040..ed0909488 100644 +index d974bbab8..9d37bc8f6 100644 --- a/cups/ipp.c +++ b/cups/ipp.c -@@ -2728,6 +2728,120 @@ ippNew(void) +@@ -2739,6 +2739,120 @@ ippNew(void) return (temp); } @@ -137,7 +137,7 @@ index 5fd587040..ed0909488 100644 /* * 'ippNewRequest()' - Allocate a new IPP request message. -@@ -3074,6 +3188,8 @@ ippReadIO(void *src, /* I - Data source */ +@@ -3085,6 +3199,8 @@ ippReadIO(void *src, /* I - Data source */ */ DEBUG_puts("2ippReadIO: IPP_TAG_END."); diff --git a/debian/patches/pwg-raster-attributes.patch b/debian/patches/pwg-raster-attributes.patch index 744cf05d2..5f6a1ee5d 100644 --- a/debian/patches/pwg-raster-attributes.patch +++ b/debian/patches/pwg-raster-attributes.patch @@ -1,4 +1,4 @@ -From 33b48d18398572241844b751851f6235d18887b1 Mon Sep 17 00:00:00 2001 +From dba2914203d59349db22b49dd58579f51867e4da Mon Sep 17 00:00:00 2001 From: Till Kamppeter <till.kamppeter@gmail.com> Date: Tue, 9 Aug 2016 18:11:04 +0200 Subject: For PWG Raster, add required IPP attributes diff --git a/debian/patches/reactivate_recommended_driver.patch b/debian/patches/reactivate_recommended_driver.patch index 20c57d27b..94d3434e0 100644 --- a/debian/patches/reactivate_recommended_driver.patch +++ b/debian/patches/reactivate_recommended_driver.patch @@ -1,4 +1,4 @@ -From a90d2cdf361b6264b7f4dc3209be26c274728c4c Mon Sep 17 00:00:00 2001 +From da5f2f0fbfea00a27484a1896d2d9a152aa6e7f1 Mon Sep 17 00:00:00 2001 From: Till Kampetter <till.kampetter@gmail.com> Date: Tue, 9 Aug 2016 18:11:36 +0200 Subject: CUPS removes the "(recommended)" comments of the NickNames of diff --git a/debian/patches/read-embedded-options-from-incoming-postscript-and-add-to-ipp-attrs.patch b/debian/patches/read-embedded-options-from-incoming-postscript-and-add-to-ipp-attrs.patch index 3742af651..98e20be77 100644 --- a/debian/patches/read-embedded-options-from-incoming-postscript-and-add-to-ipp-attrs.patch +++ b/debian/patches/read-embedded-options-from-incoming-postscript-and-add-to-ipp-attrs.patch @@ -1,4 +1,4 @@ -From 840e16c2bfb89b8e1016f6e9f2c78cf22b1a7379 Mon Sep 17 00:00:00 2001 +From 210a6e3d23ee85864409a760691a03de19ace3f7 Mon Sep 17 00:00:00 2001 From: Till Kamppeter <till.kamppeter@gmail.com> Date: Tue, 9 Aug 2016 18:11:27 +0200 Subject: Make CUPS reading all option settings in PostScript print diff --git a/debian/patches/removecvstag.patch b/debian/patches/removecvstag.patch index 8bb6dadcb..d3566ae19 100644 --- a/debian/patches/removecvstag.patch +++ b/debian/patches/removecvstag.patch @@ -1,4 +1,4 @@ -From 8082fd4ebdd9fc498c853db87d4a3c62afad152a Mon Sep 17 00:00:00 2001 +From 29bf674a9a065a142809ba8588d455d23923cb33 Mon Sep 17 00:00:00 2001 From: Kenshi Muto <kmuto@debian.org> Date: Tue, 9 Aug 2016 18:11:33 +0200 Subject: Do not write VCS tags into installed conffiles diff --git a/debian/patches/rename-systemd-units.patch b/debian/patches/rename-systemd-units.patch index 6a758a673..d949ffd57 100644 --- a/debian/patches/rename-systemd-units.patch +++ b/debian/patches/rename-systemd-units.patch @@ -1,4 +1,4 @@ -From fede4fb5378b2cccb3ee8a0f20c47e10c55921e7 Mon Sep 17 00:00:00 2001 +From d308c9df7167c0bbb245da586960f48f35791376 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:34 +0200 Subject: Rename the systemd service file from org.cups.cups.* to cups.* diff --git a/debian/patches/rootbackends-worldreadable.patch b/debian/patches/rootbackends-worldreadable.patch index 76e24b417..2525fc0fb 100644 --- a/debian/patches/rootbackends-worldreadable.patch +++ b/debian/patches/rootbackends-worldreadable.patch @@ -1,4 +1,4 @@ -From 984c3c6245ae899a15ffb8213074327c784c7582 Mon Sep 17 00:00:00 2001 +From 5493a54038c68523dae7fecd0a761668c08d84de Mon Sep 17 00:00:00 2001 From: Martin Pitt <mpitt@debian.org> Date: Tue, 9 Aug 2016 18:11:06 +0200 Subject: Install root backends world-readable. @@ -55,7 +55,7 @@ index 13efa54ff..9a1b8d3e1 100644 cupsDirClose(dir); diff --git a/scheduler/job.c b/scheduler/job.c -index 9d281db6b..e69294d14 100644 +index 86e75e65c..fb599bf8f 100644 --- a/scheduler/job.c +++ b/scheduler/job.c @@ -1250,7 +1250,7 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */ diff --git a/debian/patches/show-compile-command-lines.patch b/debian/patches/show-compile-command-lines.patch index 80f49c55a..8f3d508c9 100644 --- a/debian/patches/show-compile-command-lines.patch +++ b/debian/patches/show-compile-command-lines.patch @@ -1,4 +1,4 @@ -From a96f30494633852873772e5c7d5a6d85543f20cf Mon Sep 17 00:00:00 2001 +From 25100690e5a86d96dcc8f849495752df180e0aae Mon Sep 17 00:00:00 2001 From: Till Kampetter <till.kampetter@gmail.com> Date: Tue, 9 Aug 2016 18:11:43 +0200 Subject: Show compile command lines diff --git a/debian/patches/test-i18n-nonlinux.patch b/debian/patches/test-i18n-nonlinux.patch index 1da0fb855..4260bd69d 100644 --- a/debian/patches/test-i18n-nonlinux.patch +++ b/debian/patches/test-i18n-nonlinux.patch @@ -1,4 +1,4 @@ -From f8c8931ff3d8a7a71491b4309f907e198189d3b8 Mon Sep 17 00:00:00 2001 +From 0cd5b1740b693c604bc9e275420a4238939a8a2c Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:16 +0200 Subject: Tests: Do not run the CUPS_EUC_JP test case on BSD/Hurd either, as diff --git a/debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch b/debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch index e74bde047..0b81f3bb4 100644 --- a/debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch +++ b/debian/patches/tests-fix-ppdLocalize-on-unclean-env.patch @@ -1,4 +1,4 @@ -From e6620e1f20db3d5f9db91d5a8ff93b748397ef25 Mon Sep 17 00:00:00 2001 +From b8f4e5a3de6374a85efd8ce904dd225c8adc1a00 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:18 +0200 Subject: Tests: Force LC_* environment variables when testing (non) diff --git a/debian/patches/tests-ignore-ipv6-address-family-not-supported.patch b/debian/patches/tests-ignore-ipv6-address-family-not-supported.patch index e63a97459..14afe471d 100644 --- a/debian/patches/tests-ignore-ipv6-address-family-not-supported.patch +++ b/debian/patches/tests-ignore-ipv6-address-family-not-supported.patch @@ -1,4 +1,4 @@ -From 52df77c659b7a373da0bf81afa940d1aee37b610 Mon Sep 17 00:00:00 2001 +From 445f879e0c07138dbed04a69838ded92725fcc89 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:33:56 +0200 Subject: Tests: ignore errors triggered on ipv6-deprived hosts diff --git a/debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch b/debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch index 742792792..b2becb3fc 100644 --- a/debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch +++ b/debian/patches/tests-ignore-kfreebsd-amd64-not-a-pdf.patch @@ -1,4 +1,4 @@ -From 8d67394308182443184fa6ffbfeff670a7b4e168 Mon Sep 17 00:00:00 2001 +From fa560812b6a41e35c298b23696a418c2cdbff735 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:30:48 +0200 Subject: Tests: ignore loadFile failures diff --git a/debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch b/debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch index 7215a84a0..3b51e8983 100644 --- a/debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch +++ b/debian/patches/tests-ignore-kfreebsd-unable-to-write-uncompressed-print-data.patch @@ -1,4 +1,4 @@ -From b39e0c16afdc06039e19c1b6ac9a7c2638e75705 Mon Sep 17 00:00:00 2001 +From 7e4afc193caf08242bdcfb9bb0ca725ae765ab91 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:36:02 +0200 Subject: Tests: ignore the failure to write uncompressed data diff --git a/debian/patches/tests-ignore-unknown-default-SystemGroup.patch b/debian/patches/tests-ignore-unknown-default-SystemGroup.patch index 962655f3b..2653f9431 100644 --- a/debian/patches/tests-ignore-unknown-default-SystemGroup.patch +++ b/debian/patches/tests-ignore-unknown-default-SystemGroup.patch @@ -1,4 +1,4 @@ -From 368c78a6817ad625498fe9c481d9295d39df35b1 Mon Sep 17 00:00:00 2001 +From 2b6a362ed61d7e91b47d38e9228f2235edc8f79c Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Mon, 28 Aug 2017 16:06:03 +0200 Subject: Tests: ignore unknown default SystemGroup diff --git a/debian/patches/tests-ignore-usb-crash.patch b/debian/patches/tests-ignore-usb-crash.patch index 44c36bf7f..beb425d04 100644 --- a/debian/patches/tests-ignore-usb-crash.patch +++ b/debian/patches/tests-ignore-usb-crash.patch @@ -1,4 +1,4 @@ -From d152625a4e7e6bf71b83eecbda5e483eb0ae0ff4 Mon Sep 17 00:00:00 2001 +From 39bb84c8b6d886fce2f90e26992cec6853e10cf2 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:10 +0200 Subject: Tests: ignore usb & dnssd backend unexpected exits diff --git a/debian/patches/tests-ignore-warnings.patch b/debian/patches/tests-ignore-warnings.patch index 53623a10c..c16c1fb73 100644 --- a/debian/patches/tests-ignore-warnings.patch +++ b/debian/patches/tests-ignore-warnings.patch @@ -1,4 +1,4 @@ -From 587a261bc3c7394115ab130b2545ec5d40474bb4 Mon Sep 17 00:00:00 2001 +From ccc8cb900ae4e876e87b838749d7fe5a0af8f69d Mon Sep 17 00:00:00 2001 From: Martin Pitt <mpitt@debian.org> Date: Tue, 9 Aug 2016 18:11:09 +0200 Subject: Tests: Ignore warnings from colord and Avahi diff --git a/debian/patches/tests-make-lpstat-call-reproducible.patch b/debian/patches/tests-make-lpstat-call-reproducible.patch index da75ab602..0492ff066 100644 --- a/debian/patches/tests-make-lpstat-call-reproducible.patch +++ b/debian/patches/tests-make-lpstat-call-reproducible.patch @@ -1,4 +1,4 @@ -From 0bc3cc82dc66aabcea753e74bdc9feed38f3764b Mon Sep 17 00:00:00 2001 +From 9a4a23d0159426e0acace73125058f1bb6049a1c Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:22 +0200 Subject: Force LC_ALL=C environment variable when grepping the output of diff --git a/debian/patches/tests-no-pdftourf.patch b/debian/patches/tests-no-pdftourf.patch index 4de7085bf..27c1d675e 100644 --- a/debian/patches/tests-no-pdftourf.patch +++ b/debian/patches/tests-no-pdftourf.patch @@ -1,4 +1,4 @@ -From 290e85479a4e4d16a650dc303adb07b5bd086db3 Mon Sep 17 00:00:00 2001 +From 9809095b99ce48db0b5d2739b176d24ca5e0b105 Mon Sep 17 00:00:00 2001 From: Michael Sweet <michael.r.sweet@gmail.com> Date: Tue, 9 Aug 2016 18:11:23 +0200 Subject: revert commit 830cfed95a5349b008999eebd34f5233bc35829c diff --git a/debian/patches/tests-use-ipv4-lo-address.patch b/debian/patches/tests-use-ipv4-lo-address.patch index 60094bcc6..fbf81d307 100644 --- a/debian/patches/tests-use-ipv4-lo-address.patch +++ b/debian/patches/tests-use-ipv4-lo-address.patch @@ -1,4 +1,4 @@ -From fac091ff395e024ed3545136a88162a084d50cc6 Mon Sep 17 00:00:00 2001 +From 94791b62c7d6867e60d19b9c7eb1edf988fd039d Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:21 +0200 Subject: Use 127.0.0.1 instead of localhost in the test-suite. This should diff --git a/debian/patches/tests-wait-on-unfinished-jobs-everytime.patch b/debian/patches/tests-wait-on-unfinished-jobs-everytime.patch index 9330e5d0e..004528303 100644 --- a/debian/patches/tests-wait-on-unfinished-jobs-everytime.patch +++ b/debian/patches/tests-wait-on-unfinished-jobs-everytime.patch @@ -1,4 +1,4 @@ -From 291d007a383ce7f6353729a0479e93c645b04ede Mon Sep 17 00:00:00 2001 +From ee70f9fd961b7428ead5bb674a5dc0efee7d2f11 Mon Sep 17 00:00:00 2001 From: Didier Raboud <odyx@debian.org> Date: Tue, 9 Aug 2016 18:11:17 +0200 Subject: Tests: Make sure that all scheduled jobs are finished before diff --git a/man/cups-files.conf.man.in b/man/cups-files.conf.man.in index c11b43fe7..07446abd6 100644 --- a/man/cups-files.conf.man.in +++ b/man/cups-files.conf.man.in @@ -10,7 +10,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 cups-files.conf 5 "CUPS" "28 August 2017" "Apple Inc." +.TH cups-files.conf 5 "CUPS" "21 September 2017" "Apple Inc." .SH NAME cups\-files.conf \- file and directory configuration file for cups .SH DESCRIPTION @@ -129,13 +129,6 @@ Log file creation or write errors are fatal. .B permissions Bad startup file permissions are fatal, for example shared TLS certificate and key files with world-read permissions. .RE -.\"#FileDevice -.TP 5 -\fBFileDevice Yes\fR -.TP 5 -\fBFileDevice No\fR -Specifies whether the file pseudo-device can be used for new printer queues. -The URI "file:///dev/null" is always allowed. .\"#Group .TP 5 \fBGroup \fIgroup-name-or-number\fR @@ -229,6 +222,16 @@ Specifies the user name or ID that is used when running external programs. The default is "lp". .SS DEPRECATED DIRECTIVES The following directives are deprecated and will be removed from a future version of CUPS: +.\"#FileDevice +.TP 5 +\fBFileDevice Yes\fR +.TP 5 +\fBFileDevice No\fR +Specifies whether the file pseudo-device can be used for new printer queues. +The URI "file:///dev/null" is always allowed. +File devices cannot be used with "raw" print queues - a PPD file is required. +The specified file is overwritten for every print job. +Writing to directories is not supported. .\"#FontPath .TP 5 \fBFontPath \fIdirectory[:...:directoryN]\fR diff --git a/scheduler/client.c b/scheduler/client.c index 78695ae65..d628dc6c3 100644 --- a/scheduler/client.c +++ b/scheduler/client.c @@ -85,6 +85,8 @@ cupsdAcceptClient(cupsd_listener_t *lis)/* I - Listener socket */ if (cupsArrayCount(Clients) == MaxClients) return; + cupsdSetBusyState(1); + /* * Get a pointer to the next available client... */ @@ -439,7 +441,7 @@ cupsdCloseClient(cupsd_client_t *con) /* I - Client to close */ if (httpGetFd(con->http) >= 0) { cupsArrayRemove(ActiveClients, con); - cupsdSetBusyState(); + cupsdSetBusyState(0); #ifdef HAVE_SSL /* @@ -760,7 +762,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */ if (!cupsArrayFind(ActiveClients, con)) { cupsArrayAdd(ActiveClients, con); - cupsdSetBusyState(); + cupsdSetBusyState(0); } case HTTP_STATE_OPTIONS : @@ -2082,7 +2084,7 @@ cupsdReadClient(cupsd_client_t *con) /* I - Client to read from */ else { cupsArrayRemove(ActiveClients, con); - cupsdSetBusyState(); + cupsdSetBusyState(0); } } } @@ -2807,7 +2809,7 @@ cupsdWriteClient(cupsd_client_t *con) /* I - Client connection */ else { cupsArrayRemove(ActiveClients, con); - cupsdSetBusyState(); + cupsdSetBusyState(0); } } } diff --git a/scheduler/cups-lpd.c b/scheduler/cups-lpd.c index 5d5e6f894..fbc69e102 100644 --- a/scheduler/cups-lpd.c +++ b/scheduler/cups-lpd.c @@ -103,7 +103,6 @@ main(int argc, /* I - Number of command-line arguments */ xpc_transaction_begin(); #endif /* __APPLE__ */ - /* * Don't buffer the output... */ diff --git a/scheduler/job.c b/scheduler/job.c index 558cfd9cb..b26f5f04b 100644 --- a/scheduler/job.c +++ b/scheduler/job.c @@ -2768,7 +2768,7 @@ cupsdSetJobState( * Update the server "busy" state... */ - cupsdSetBusyState(); + cupsdSetBusyState(0); } diff --git a/scheduler/main.c b/scheduler/main.c index 09735b83a..8925c8373 100644 --- a/scheduler/main.c +++ b/scheduler/main.c @@ -496,6 +496,12 @@ main(int argc, /* I - Number of command-line args */ } /* + * Let the system know we are busy while we bring up cupsd... + */ + + cupsdSetBusyState(1); + + /* * Set the timezone info... */ @@ -683,6 +689,8 @@ main(int argc, /* I - Number of command-line args */ else cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL, "Scheduler started in background."); + cupsdSetBusyState(0); + /* * Start any pending print jobs... */ diff --git a/scheduler/org.cups.cups-lpd.plist.in b/scheduler/org.cups.cups-lpd.plist.in index 76eb2eefd..0866b1555 100644 --- a/scheduler/org.cups.cups-lpd.plist.in +++ b/scheduler/org.cups.cups-lpd.plist.in @@ -7,7 +7,7 @@ <key>Label</key> <string>org.cups.cups-lpd</string> <key>ProcessType</key> - <string>Background</string> + <string>Adaptive</string> <key>EnableTransactions</key> <true/> <key>EnablePressuredExit</key> diff --git a/scheduler/org.cups.cupsd.plist b/scheduler/org.cups.cupsd.plist index abc91333c..8e1d0e96e 100644 --- a/scheduler/org.cups.cupsd.plist +++ b/scheduler/org.cups.cupsd.plist @@ -1,11 +1,11 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>org.cups.cupsd</string> <key>ProcessType</key> - <string>Background</string> + <string>Adaptive</string> <key>EnableTransactions</key> <true/> <key>EnablePressuredExit</key> @@ -25,7 +25,6 @@ <string>/usr/sbin/cupsd</string> <string>-l</string> </array> - <!-- These environment variables are only used when CUPS is compiled with debug-printfs support --> <key>EnvironmentVariables</key> <dict> <key>CUPS_DEBUG_LOG</key> diff --git a/scheduler/server.c b/scheduler/server.c index 04b26d64d..d28cd4a0b 100644 --- a/scheduler/server.c +++ b/scheduler/server.c @@ -1,7 +1,7 @@ /* * Server start/stop routines for the CUPS scheduler. * - * Copyright 2007-2012 by Apple Inc. + * Copyright 2007-2017 by Apple Inc. * Copyright 1997-2006 by Easy Software Products, all rights reserved. * * These coded instructions, statements, and computer programs are the @@ -78,7 +78,7 @@ cupsdStartServer(void) CUPSD_EVENT_SERVER_STARTED; started = 1; - cupsdSetBusyState(); + cupsdSetBusyState(0); } diff --git a/scheduler/sysman.c b/scheduler/sysman.c index 8b43975d6..46eb39a0b 100644 --- a/scheduler/sysman.c +++ b/scheduler/sysman.c @@ -1,7 +1,7 @@ /* * System management functions for the CUPS scheduler. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2017 by Apple Inc. * Copyright 2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -75,7 +75,7 @@ cupsdCleanDirty(void) DirtyFiles = CUPSD_DIRTY_NONE; DirtyCleanTime = 0; - cupsdSetBusyState(); + cupsdSetBusyState(0); } @@ -101,7 +101,7 @@ cupsdMarkDirty(int what) /* I - What file(s) are dirty? */ if (!DirtyCleanTime) DirtyCleanTime = time(NULL) + DirtyCleanInterval; - cupsdSetBusyState(); + cupsdSetBusyState(0); } @@ -110,7 +110,7 @@ cupsdMarkDirty(int what) /* I - What file(s) are dirty? */ */ void -cupsdSetBusyState(void) +cupsdSetBusyState(int working) /* I - Doing significant work? */ { int i; /* Looping var */ cupsd_job_t *job; /* Current job */ @@ -139,7 +139,7 @@ cupsdSetBusyState(void) */ newbusy = (DirtyCleanTime ? 1 : 0) | - (cupsArrayCount(ActiveClients) ? 4 : 0); + ((working || cupsArrayCount(ActiveClients) > 0) ? 4 : 0); for (job = (cupsd_job_t *)cupsArrayFirst(PrintingJobs); job; diff --git a/scheduler/sysman.h b/scheduler/sysman.h index 929ee7358..74c667b0d 100644 --- a/scheduler/sysman.h +++ b/scheduler/sysman.h @@ -1,7 +1,7 @@ /* * System management definitions for the CUPS scheduler. * - * Copyright 2007-2014 by Apple Inc. + * Copyright 2007-2017 by Apple Inc. * Copyright 2006 by Easy Software Products. * * These coded instructions, statements, and computer programs are the @@ -54,6 +54,6 @@ VAR int SysEventPipes[2] VALUE2(-1,-1); extern void cupsdAllowSleep(void); extern void cupsdCleanDirty(void); extern void cupsdMarkDirty(int what); -extern void cupsdSetBusyState(void); +extern void cupsdSetBusyState(int working); extern void cupsdStartSystemMonitor(void); extern void cupsdStopSystemMonitor(void); diff --git a/test/ippserver.c b/test/ippserver.c index 02dbdea50..38b304f80 100644 --- a/test/ippserver.c +++ b/test/ippserver.c @@ -1,7 +1,7 @@ /* * Sample IPP Everywhere server for CUPS. * - * Copyright 2010-2015 by Apple Inc. + * Copyright 2010-2017 by Apple Inc. * * These coded instructions, statements, and computer programs are the * property of Apple Inc. and are protected by Federal copyright @@ -3763,6 +3763,7 @@ ipp_print_job(_ipp_client_t *client) /* I - Client */ buffer[4096]; /* Copy buffer */ ssize_t bytes; /* Bytes read */ cups_array_t *ra; /* Attributes to send in response */ + _cups_thread_t t; /* Thread */ /* @@ -3873,7 +3874,13 @@ ipp_print_job(_ipp_client_t *client) /* I - Client */ * Process the job... */ - if (!_cupsThreadCreate((_cups_thread_func_t)process_job, job)) + t = _cupsThreadCreate((_cups_thread_func_t)process_job, job); + + if (t) + { + _cupsThreadDetach(t); + } + else { job->state = IPP_JSTATE_ABORTED; respond_ipp(client, IPP_STATUS_ERROR_INTERNAL, "Unable to process job."); @@ -4180,17 +4187,7 @@ ipp_print_uri(_ipp_client_t *client) /* I - Client */ * Process the job... */ -#if 0 - if (!_cupsThreadCreate((_cups_thread_func_t)process_job, job)) - { - job->state = IPP_JSTATE_ABORTED; - respond_ipp(client, IPP_STATUS_ERROR_INTERNAL, "Unable to process job."); - return; - } - -#else process_job(job); -#endif /* 0 */ /* * Return the job info... @@ -4382,17 +4379,7 @@ ipp_send_document(_ipp_client_t *client)/* I - Client */ * Process the job... */ -#if 0 - if (!_cupsThreadCreate((_cups_thread_func_t)process_job, job)) - { - job->state = IPP_JSTATE_ABORTED; - respond_ipp(client, IPP_STATUS_ERROR_INTERNAL, "Unable to process job."); - return; - } - -#else process_job(job); -#endif /* 0 */ /* * Return the job info... @@ -4751,17 +4738,7 @@ ipp_send_uri(_ipp_client_t *client) /* I - Client */ * Process the job... */ -#if 0 - if (!_cupsThreadCreate((_cups_thread_func_t)process_job, job)) - { - job->state = IPP_JSTATE_ABORTED; - respond_ipp(client, IPP_STATUS_ERROR_INTERNAL, "Unable to process job."); - return; - } - -#else process_job(job); -#endif /* 0 */ /* * Return the job info... @@ -6828,7 +6805,13 @@ run_printer(_ipp_printer_t *printer) /* I - Printer */ { if ((client = create_client(printer, printer->ipv4)) != NULL) { - if (!_cupsThreadCreate((_cups_thread_func_t)process_client, client)) + _cups_thread_t t = _cupsThreadCreate((_cups_thread_func_t)process_client, client); + + if (t) + { + _cupsThreadDetach(t); + } + else { perror("Unable to create client thread"); delete_client(client); @@ -6840,7 +6823,13 @@ run_printer(_ipp_printer_t *printer) /* I - Printer */ { if ((client = create_client(printer, printer->ipv6)) != NULL) { - if (!_cupsThreadCreate((_cups_thread_func_t)process_client, client)) + _cups_thread_t t = _cupsThreadCreate((_cups_thread_func_t)process_client, client); + + if (t) + { + _cupsThreadDetach(t); + } + else { perror("Unable to create client thread"); delete_client(client); diff --git a/test/ipptool.c b/test/ipptool.c index 40a71b772..658927ae0 100644 --- a/test/ipptool.c +++ b/test/ipptool.c @@ -3323,8 +3323,7 @@ do_tests(cups_file_t *outfile, /* I - Output file */ } /* - * If we are going to repeat this test, sleep 1 second so we don't flood - * the printer with requests... + * If we are going to repeat this test, display intermediate results... */ if (repeat_test) @@ -3357,6 +3356,9 @@ do_tests(cups_file_t *outfile, /* I - Output file */ { cupsFilePrintf(cupsFileStdout(), " %-68.68s [", name); } + + ippDelete(response); + response = NULL; } } while (repeat_test); diff --git a/xcode/CUPS.xcodeproj/project.pbxproj b/xcode/CUPS.xcodeproj/project.pbxproj index 2e9d39bb6..1f96704c7 100644 --- a/xcode/CUPS.xcodeproj/project.pbxproj +++ b/xcode/CUPS.xcodeproj/project.pbxproj @@ -3571,7 +3571,7 @@ 72E65BD918DC850A00097E89 /* Makefile */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.make; name = Makefile; path = ../Makefile; sourceTree = "<group>"; }; 72E65BDC18DC852700097E89 /* Makefile */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.make; name = Makefile; path = ../scheduler/Makefile; sourceTree = SOURCE_ROOT; }; 72E65BDD18DCA35700097E89 /* CHANGES-1.7.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = "CHANGES-1.7.txt"; path = "../CHANGES-1.7.txt"; sourceTree = "<group>"; }; - 72E65BDE18DCA35700097E89 /* CHANGES.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; name = CHANGES.md; path = ../CHANGES.md; sourceTree = "<group>"; }; + 72E65BDE18DCA35700097E89 /* CHANGES.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; name = CHANGES.md; path = ../CHANGES.md; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = "<none>"; }; 72E65BDF18DCA35700097E89 /* CREDITS.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; name = CREDITS.md; path = ../CREDITS.md; sourceTree = "<group>"; }; 72E65BE018DCA35700097E89 /* INSTALL.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; name = INSTALL.md; path = ../INSTALL.md; sourceTree = "<group>"; }; 72E65BE218DCA35700097E89 /* LICENSE.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = LICENSE.txt; path = ../LICENSE.txt; sourceTree = "<group>"; }; diff --git a/xcode/config.h b/xcode/config.h index 61593a9ac..6e28efd98 100644 --- a/xcode/config.h +++ b/xcode/config.h @@ -22,8 +22,8 @@ * Version of software... */ -#define CUPS_SVERSION "CUPS v2.2.4" -#define CUPS_MINIMAL "CUPS/2.2.4" +#define CUPS_SVERSION "CUPS v2.2.5" +#define CUPS_MINIMAL "CUPS/2.2.5" /* |