[arch-commits] Commit in cups/trunk (4 files)
andyrtr at archlinux.org
andyrtr at archlinux.org
Sun Aug 5 08:30:05 UTC 2012
Date: Sunday, August 5, 2012 @ 04:30:04
Author: andyrtr
Revision: 164781
upgpkg: cups 1.6.1-2
fix some browsing related issues solved in upstream tracker
Added:
cups/trunk/avahi-missing-in-conditionals.patch
cups/trunk/cupsd-conf-remove-obsolete-browse-directives.patch
cups/trunk/recognize-remote-cups-queue-via-dnssd-uri.patch
Modified:
cups/trunk/PKGBUILD
----------------------------------------------------+
PKGBUILD | 20 ++-
avahi-missing-in-conditionals.patch | 118 +++++++++++++++++++
cupsd-conf-remove-obsolete-browse-directives.patch | 12 +
recognize-remote-cups-queue-via-dnssd-uri.patch | 25 ++++
4 files changed, 172 insertions(+), 3 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2012-08-04 21:55:24 UTC (rev 164780)
+++ PKGBUILD 2012-08-05 08:30:04 UTC (rev 164781)
@@ -4,7 +4,7 @@
pkgbase="cups"
pkgname=('libcups' 'cups')
pkgver=1.6.1
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
license=('GPL')
url="http://www.cups.org/"
@@ -15,7 +15,10 @@
cups-no-gcrypt.patch
cups-no-gzip-man.patch
cups-systemd-socket.patch
- cups cups.logrotate cups.pam)
+ cups cups.logrotate cups.pam
+ cupsd-conf-remove-obsolete-browse-directives.patch
+ avahi-missing-in-conditionals.patch
+ recognize-remote-cups-queue-via-dnssd-uri.patch)
#options=('!emptydirs')
md5sums=('87ade07e3d1efd03c9c3add949cf9c00'
'9b8467a1e51d360096b70e2c3c081e6c'
@@ -24,7 +27,10 @@
'a81573a429b98e16670d7fea47e528c4'
'9657daa21760bb0b5fa3d8b51d5e01a1'
'f861b18f4446c43918c8643dcbbd7f6d'
- '96f82c38f3f540b53f3e5144900acf17')
+ '96f82c38f3f540b53f3e5144900acf17'
+ '6bef262b5081051e88cd2ae94fed1867'
+ '9c91b1319f4b20dc323986cb4abbe806'
+ 'dcef8dd5614461166cada8a706eebb49')
build() {
cd ${srcdir}/${pkgbase}-${pkgver}
@@ -40,6 +46,14 @@
patch -Np1 -i "${srcdir}/cups-no-gcrypt.patch"
# don't zip man pages in make install, let makepkg do that / Fedora
patch -Np1 -i ${srcdir}/cups-no-gzip-man.patch
+
+ # upstream bugtracker patches
+ # http://www.cups.org/str.php?L4157 - fix broken default server config
+ patch -Np1 -i ${srcdir}/cupsd-conf-remove-obsolete-browse-directives.patch
+ # http://www.cups.org/str.php?L4156 - In many DNS-SD/Bonjour conditionals Avahi is not considered
+ patch -Np1 -i ${srcdir}/avahi-missing-in-conditionals.patch
+ # http://www.cups.org/str.php?L4158 - DNS-SD-based print queues pointing to CUPS server are not considered remote printers with driver on server
+ patch -Np1 -i ${srcdir}/recognize-remote-cups-queue-via-dnssd-uri.patch
# Rebuild configure script for not zipping man-pages.
aclocal -I config-scripts
Added: avahi-missing-in-conditionals.patch
===================================================================
--- avahi-missing-in-conditionals.patch (rev 0)
+++ avahi-missing-in-conditionals.patch 2012-08-05 08:30:04 UTC (rev 164781)
@@ -0,0 +1,118 @@
+diff -uraN cups/scheduler/client.c cups-new/scheduler/client.c
+--- cups/scheduler/client.c 2012-05-25 15:28:49.000000000 +0200
++++ cups-new/scheduler/client.c 2012-08-04 20:13:17.082220961 +0200
+@@ -4021,7 +4021,7 @@
+ !strncmp(host, "[::1]:", 6));
+ }
+
+-#ifdef HAVE_DNSSD
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ /*
+ * Check if the hostname is something.local (Bonjour); if so, allow it.
+ */
+@@ -4040,7 +4040,7 @@
+ !_cups_strcasecmp(end, ".local.") ||
+ !_cups_strncasecmp(end, ".local.:", 8)))
+ return (1);
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ /*
+ * Check if the hostname is an IP address...
+@@ -4101,7 +4101,7 @@
+ }
+ }
+
+-#ifdef HAVE_DNSSD
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ for (a = (cupsd_alias_t *)cupsArrayFirst(DNSSDAlias);
+ a;
+ a = (cupsd_alias_t *)cupsArrayNext(DNSSDAlias))
+@@ -4126,7 +4126,7 @@
+ return (1);
+ }
+ }
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ /*
+ * Check for interface hostname matches...
+diff -uraN cups/scheduler/conf.c cups-new/scheduler/conf.c
+--- cups/scheduler/conf.c 2012-05-25 15:28:49.000000000 +0200
++++ cups-new/scheduler/conf.c 2012-08-04 20:15:49.830978405 +0200
+@@ -89,9 +89,9 @@
+ {
+ { "AccessLog", &AccessLog, CUPSD_VARTYPE_STRING },
+ { "AutoPurgeJobs", &JobAutoPurge, CUPSD_VARTYPE_BOOLEAN },
+-#ifdef HAVE_DNSSD
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ { "BrowseDNSSDSubTypes", &DNSSDSubTypes, CUPSD_VARTYPE_STRING },
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+ { "BrowseWebIF", &BrowseWebIF, CUPSD_VARTYPE_BOOLEAN },
+ { "Browsing", &Browsing, CUPSD_VARTYPE_BOOLEAN },
+ { "CacheDir", &CacheDir, CUPSD_VARTYPE_STRING },
+@@ -735,9 +735,9 @@
+ Browsing = CUPS_DEFAULT_BROWSING;
+ DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED;
+
+-#ifdef HAVE_DNSSD
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ cupsdSetString(&DNSSDSubTypes, "_cups,_print");
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ cupsdSetString(&LPDConfigFile, CUPS_DEFAULT_LPD_CONFIG_FILE);
+ cupsdSetString(&SMBConfigFile, CUPS_DEFAULT_SMB_CONFIG_FILE);
+diff -uraN cups/scheduler/ipp.c cups-new/scheduler/ipp.c
+--- cups/scheduler/ipp.c 2012-05-25 15:28:49.000000000 +0200
++++ cups-new/scheduler/ipp.c 2012-08-04 20:13:17.086220978 +0200
+@@ -4813,7 +4813,7 @@
+ ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time",
+ ippTimeToDate(curtime));
+
+-#ifdef HAVE_DNSSD
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ if (!ra || cupsArrayFind(ra, "printer-dns-sd-name"))
+ {
+ if (printer->reg_name)
+@@ -4823,7 +4823,7 @@
+ ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE,
+ "printer-dns-sd-name", 0);
+ }
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ if (!ra || cupsArrayFind(ra, "printer-error-policy"))
+ ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME,
+diff -uraN cups/scheduler/main.c cups-new/scheduler/main.c
+--- cups/scheduler/main.c 2012-05-25 15:28:49.000000000 +0200
++++ cups-new/scheduler/main.c 2012-08-04 20:13:17.090221001 +0200
+@@ -781,9 +781,9 @@
+ * Got an error from select!
+ */
+
+-#ifdef HAVE_DNSSD
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ cupsd_printer_t *p; /* Current printer */
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+
+ if (errno == EINTR) /* Just interrupted by a signal */
+@@ -824,13 +824,13 @@
+ job->print_pipes[0], job->print_pipes[1],
+ job->back_pipes[0], job->back_pipes[1]);
+
+-#ifdef HAVE_DNSSD
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
+ for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
+ p;
+ p = (cupsd_printer_t *)cupsArrayNext(Printers))
+ cupsdLogMessage(CUPSD_LOG_EMERG, "printer[%s] reg_name=\"%s\"", p->name,
+ p->reg_name ? p->reg_name : "(null)");
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ break;
+ }
Added: cupsd-conf-remove-obsolete-browse-directives.patch
===================================================================
--- cupsd-conf-remove-obsolete-browse-directives.patch (rev 0)
+++ cupsd-conf-remove-obsolete-browse-directives.patch 2012-08-05 08:30:04 UTC (rev 164781)
@@ -0,0 +1,12 @@
+diff -uraN cups/conf/cupsd.conf.in cups-new/conf/cupsd.conf.in
+--- cups/conf/cupsd.conf.in 2012-05-25 15:28:25.000000000 +0200
++++ cups-new/conf/cupsd.conf.in 2012-08-04 20:56:26.699062177 +0200
+@@ -19,8 +19,6 @@
+
+ # Show shared printers on the local network.
+ Browsing On
+-BrowseOrder allow,deny
+-BrowseAllow all
+ BrowseLocalProtocols @CUPS_BROWSE_LOCAL_PROTOCOLS@
+
+ # Default authentication type, when authentication is required...
Added: recognize-remote-cups-queue-via-dnssd-uri.patch
===================================================================
--- recognize-remote-cups-queue-via-dnssd-uri.patch (rev 0)
+++ recognize-remote-cups-queue-via-dnssd-uri.patch 2012-08-05 08:30:04 UTC (rev 164781)
@@ -0,0 +1,25 @@
+diff -uraN cups/scheduler/printers.c cups-new/scheduler/printers.c
+--- cups/scheduler/printers.c 2012-05-25 15:28:49.000000000 +0200
++++ cups-new/scheduler/printers.c 2012-08-04 20:58:40.475725544 +0200
+@@ -4829,13 +4829,14 @@
+ "printer-make-and-model", NULL,
+ "Local System V Printer");
+ }
+- else if (!strncmp(p->device_uri, "ipp://", 6) &&
+- (strstr(p->device_uri, "/printers/") != NULL ||
+- strstr(p->device_uri, "/classes/") != NULL ||
+- ((strstr(p->device_uri, "._ipp.") != NULL ||
+- strstr(p->device_uri, "._ipps.") != NULL) &&
+- !strcmp(p->device_uri + strlen(p->device_uri) - 5,
+- "/cups"))))
++ else if ((!strncmp(p->device_uri, "ipp://", 6) &&
++ (strstr(p->device_uri, "/printers/") != NULL ||
++ strstr(p->device_uri, "/classes/") != NULL)) ||
++ (!strncmp(p->device_uri, "dnssd://", 8) &&
++ (strstr(p->device_uri, "._ipp.") != NULL ||
++ strstr(p->device_uri, "._ipps.") != NULL) &&
++ !strcmp(p->device_uri + strlen(p->device_uri) - 5,
++ "/cups")))
+ {
+ /*
+ * Tell the client this is really a hard-wired remote printer.
More information about the arch-commits
mailing list