[arch-commits] Commit in cups/trunk (PKGBUILD cupsGetDests.diff)

Andreas Radke andyrtr at archlinux.org
Fri Jul 7 18:45:24 UTC 2017


    Date: Friday, July 7, 2017 @ 18:45:19
  Author: andyrtr
Revision: 299811

upgpkg: cups 2.2.4-2

apply upstream fix for FS#54695

Added:
  cups/trunk/cupsGetDests.diff
Modified:
  cups/trunk/PKGBUILD

-------------------+
 PKGBUILD          |   12 ++-
 cupsGetDests.diff |  167 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 175 insertions(+), 4 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-07-07 17:29:35 UTC (rev 299810)
+++ PKGBUILD	2017-07-07 18:45:19 UTC (rev 299811)
@@ -4,7 +4,7 @@
 pkgbase="cups"
 pkgname=('libcups' 'cups')
 pkgver=2.2.4
-pkgrel=1
+pkgrel=2
 arch=('i686' 'x86_64')
 license=('GPL')
 url="https://www.cups.org/"
@@ -21,7 +21,7 @@
         cups-fix-install-perms.patch
         # bugfixes
         cups-systemd-socket.patch
-)
+        cupsGetDests.diff)
 sha256sums=('596d4db72651c335469ae5f37b0da72ac9f97d73e30838d787065f559dea98cc'
             'SKIP'
             'd87fa0f0b5ec677aae34668f260333db17ce303aa1a752cba5f8e72623d9acf9'
@@ -31,7 +31,8 @@
             'b8fc2e3bc603495f0278410350ea8f0161d9d83719feb64f573b63430cb4800b'
             '23349c96f2f7aeb7d48e3bcd35a969f5d5ac8f55a032b0cfaa0a03d7e37ea9af'
             '2496b683920417c922d58c1f70807f7a0f0c818db9ce75fe182104bd4484027b'
-            'cdad3c266cb2abb0f90af3113420fa47a09e3ed974a2ffa9fb6a642e11971d65')
+            'cdad3c266cb2abb0f90af3113420fa47a09e3ed974a2ffa9fb6a642e11971d65'
+            '25c1f212d0055848c9d46195d74ade64514675c83b2098e41ba1144bd6b8a05d')
 validpgpkeys=('3737FD0D0E63B30172440D2DDBA3A7AB08D76223') # CUPS.org (CUPS.org PGP key) <security at cups.org>
 
 prepare() {
@@ -58,7 +59,10 @@
   sed -i -e '5i\ ' conf/cupsd.conf.in
   sed -i -e '6i# Disable cups internal logging - use logrotate instead' conf/cupsd.conf.in
   sed -i -e '7iMaxLogSize 0' conf/cupsd.conf.in
-  
+
+  # upstream fix for https://bugs.archlinux.org/task/54695
+  patch -Np1 -i ../cupsGetDests.diff
+
   # Rebuild configure script for not zipping man-pages.
   aclocal -I config-scripts
   autoconf -I config-scripts

Added: cupsGetDests.diff
===================================================================
--- cupsGetDests.diff	                        (rev 0)
+++ cupsGetDests.diff	2017-07-07 18:45:19 UTC (rev 299811)
@@ -0,0 +1,167 @@
+diff --git a/cups/dest.c b/cups/dest.c
+index fc57ed342..9d7426ed3 100644
+--- a/cups/dest.c
++++ b/cups/dest.c
+@@ -1015,6 +1015,8 @@ cupsEnumDests(
+ #endif /* HAVE_DNSSD || HAVE_AVAHI */
+ 
+ 
++  DEBUG_printf(("cupsEnumDests(flags=%x, msec=%d, cancel=%p, type=%x, mask=%x, cb=%p, user_data=%p)", flags, msec, (void *)cancel, type, mask, (void *)cb, (void *)user_data));
++
+  /*
+   * Range check input...
+   */
+@@ -1022,7 +1024,10 @@ cupsEnumDests(
+   (void)flags;
+ 
+   if (!cb)
++  {
++    DEBUG_puts("1cupsEnumDests: No callback, returning 0.");
+     return (0);
++  }
+ 
+  /*
+   * Get ready to enumerate...
+@@ -1141,7 +1146,10 @@ cupsEnumDests(
+ 
+ #  ifdef HAVE_DNSSD
+   if (DNSServiceCreateConnection(&data.main_ref) != kDNSServiceErr_NoError)
++  {
++    DEBUG_puts("1cupsEnumDests: Unable to create service browser, returning 0.");
+     return (0);
++  }
+ 
+   main_fd = DNSServiceRefSockFD(data.main_ref);
+ 
+@@ -1172,8 +1180,8 @@ cupsEnumDests(
+ #  else /* HAVE_AVAHI */
+   if ((data.simple_poll = avahi_simple_poll_new()) == NULL)
+   {
+-    DEBUG_puts("cupsEnumDests: Unable to create Avahi simple poll object.");
+-    return (1);
++    DEBUG_puts("1cupsEnumDests: Unable to create Avahi poll, returning 0.");
++    return (0);
+   }
+ 
+   avahi_simple_poll_set_func(data.simple_poll, cups_dnssd_poll_cb, &data);
+@@ -1183,9 +1191,9 @@ cupsEnumDests(
+ 				 &error);
+   if (!data.client)
+   {
+-    DEBUG_puts("cupsEnumDests: Unable to create Avahi client.");
++    DEBUG_puts("1cupsEnumDests: Unable to create Avahi client, returning 0.");
+     avahi_simple_poll_free(data.simple_poll);
+-    return (1);
++    return (0);
+   }
+ 
+   data.browsers = 1;
+@@ -1374,6 +1382,8 @@ cupsEnumDests(
+ #  endif /* HAVE_DNSSD */
+ #endif /* HAVE_DNSSD || HAVE_AVAHI */
+ 
++  DEBUG_puts("1cupsEnumDests: Returning 1.");
++
+   return (1);
+ }
+ 
+@@ -2040,13 +2050,16 @@ cupsGetDests2(http_t      *http,	/* I - Connection to server or @code CUPS_HTTP_
+   _cups_globals_t *cg = _cupsGlobals();	/* Pointer to library globals */
+ 
+ 
+- /*
++  DEBUG_printf(("cupsGetDests2(http=%p, dests=%p)", (void *)http, (void *)dests));
++
++/*
+   * Range check the input...
+   */
+ 
+   if (!dests)
+   {
+     _cupsSetError(IPP_STATUS_ERROR_INTERNAL, _("Bad NULL dests pointer"), 1);
++    DEBUG_puts("1cupsGetDests2: NULL dests pointer, returning 0.");
+     return (0);
+   }
+ 
+@@ -2061,6 +2074,8 @@ cupsGetDests2(http_t      *http,	/* I - Connection to server or @code CUPS_HTTP_
+ 
+   if (cupsLastError() >= IPP_STATUS_REDIRECTION_OTHER_SITE)
+   {
++    DEBUG_printf(("1cupsGetDests2: cupsLastError() is %s, returning 0.", cupsLastErrorString()));
++
+     cupsFreeDests(data.num_dests, data.dests);
+ 
+     *dests = (cups_dest_t *)0;
+@@ -2178,6 +2193,8 @@ cupsGetDests2(http_t      *http,	/* I - Connection to server or @code CUPS_HTTP_
+   if (data.num_dests > 0)
+     _cupsSetError(IPP_STATUS_OK, NULL, 0);
+ 
++  DEBUG_printf(("1cupsGetDests2: Returning %d destinations.", data.num_dests));
++
+   return (data.num_dests);
+ }
+ 
+diff --git a/xcode/CUPS.xcodeproj/project.pbxproj b/xcode/CUPS.xcodeproj/project.pbxproj
+index 2edef8343..bdbb62d19 100644
+--- a/xcode/CUPS.xcodeproj/project.pbxproj
++++ b/xcode/CUPS.xcodeproj/project.pbxproj
+@@ -11049,8 +11049,6 @@
+ 			buildSettings = {
+ 				ASSETCATALOG_COMPRESSION = lossless;
+ 				CLANG_ANALYZER_SECURITY_INSECUREAPI_STRCPY = YES;
+-				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+-				CLANG_WARN_COMMA = YES;
+ 				CLANG_WARN_EMPTY_BODY = YES;
+ 				CLANG_WARN_ENUM_CONVERSION = YES;
+ 				CLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES;
+@@ -11067,7 +11065,7 @@
+ 				GCC_NO_COMMON_BLOCKS = YES;
+ 				GCC_PREPROCESSOR_DEFINITIONS = DEBUG;
+ 				GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
+-				GCC_TREAT_WARNINGS_AS_ERRORS = YES;
++				GCC_TREAT_WARNINGS_AS_ERRORS = NO;
+ 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
+ 				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+@@ -11096,8 +11094,6 @@
+ 			buildSettings = {
+ 				ASSETCATALOG_COMPRESSION = "respect-asset-catalog";
+ 				CLANG_ANALYZER_SECURITY_INSECUREAPI_STRCPY = YES;
+-				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+-				CLANG_WARN_COMMA = YES;
+ 				CLANG_WARN_EMPTY_BODY = YES;
+ 				CLANG_WARN_ENUM_CONVERSION = YES;
+ 				CLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES;
+@@ -11112,7 +11108,7 @@
+ 				ENABLE_STRICT_OBJC_MSGSEND = YES;
+ 				GCC_NO_COMMON_BLOCKS = YES;
+ 				GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
+-				GCC_TREAT_WARNINGS_AS_ERRORS = YES;
++				GCC_TREAT_WARNINGS_AS_ERRORS = NO;
+ 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
+ 				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+
+diff --git a/cups/dest.c b/cups/dest.c
+index 9d7426ed3..09bb76b73 100644
+--- a/cups/dest.c
++++ b/cups/dest.c
+@@ -2072,17 +2072,6 @@ cupsGetDests2(http_t      *http,	/* I - Connection to server or @code CUPS_HTTP_
+ 
+   cupsEnumDests(0, 1000, NULL, 0, 0, (cups_dest_cb_t)cups_get_cb, &data);
+ 
+-  if (cupsLastError() >= IPP_STATUS_REDIRECTION_OTHER_SITE)
+-  {
+-    DEBUG_printf(("1cupsGetDests2: cupsLastError() is %s, returning 0.", cupsLastErrorString()));
+-
+-    cupsFreeDests(data.num_dests, data.dests);
+-
+-    *dests = (cups_dest_t *)0;
+-
+-    return (0);
+-  }
+-
+  /*
+   * Make a copy of the "real" queues for a later sanity check...
+   */
+



More information about the arch-commits mailing list