summaryrefslogtreecommitdiff
path: root/extra/cups
diff options
context:
space:
mode:
Diffstat (limited to 'extra/cups')
-rw-r--r--extra/cups/PKGBUILD51
-rw-r--r--extra/cups/cups-no-gzip-man.patch2
-rw-r--r--extra/cups/cups-systemd-socket.patch223
-rw-r--r--extra/cups/cups.install7
4 files changed, 70 insertions, 213 deletions
diff --git a/extra/cups/PKGBUILD b/extra/cups/PKGBUILD
index 9d5563efa..a1f8b2b04 100644
--- a/extra/cups/PKGBUILD
+++ b/extra/cups/PKGBUILD
@@ -1,52 +1,37 @@
-# $Id: PKGBUILD 164175 2012-07-26 17:37:45Z andyrtr $
+# $Id: PKGBUILD 164328 2012-07-30 14:40:47Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgbase="cups"
pkgname=('libcups' 'cups')
-pkgver=1.5.4
+pkgver=1.6.1
pkgrel=1
arch=('i686' 'x86_64')
license=('GPL')
url="http://www.cups.org/"
makedepends=('libtiff>=4.0.0' 'libpng>=1.5.7' 'acl' 'openslp' 'pam' 'xdg-utils' 'krb5' 'gnutls>=2.8.3' 'cups-filters' 'bc'
- 'xinetd' 'gzip' 'autoconf' 'php' 'libusb' 'dbus-core' 'avahi' 'hicolor-icon-theme' 'systemd')
+ 'colord' 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus-core' 'avahi' 'hicolor-icon-theme' 'systemd')
source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2
- cups-avahi-1-config.patch
- cups-avahi-2-backend.patch
- cups-avahi-3-timeouts.patch
- cups-avahi-4-poll.patch
- cups-avahi-5-services.patch
cups-no-export-ssllibs.patch
cups-no-gcrypt.patch
cups-no-gzip-man.patch
cups-systemd-socket.patch
cups cups.logrotate cups.pam)
#options=('!emptydirs')
-md5sums=('de3006e5cf1ee78a9c6145ce62c4e982'
- '12c8af5bcd3b8f84240280b3dfaf9e89'
- 'cdc1322c8014297ae349e2db78a03c5a'
- '1a5112f63958643f2888abc9418dbcac'
- 'c37d1bf1bb76acc3fe93362c80d91b7c'
- '5d302860559960042f3b47a91b97c5fe'
+md5sums=('87ade07e3d1efd03c9c3add949cf9c00'
'9b8467a1e51d360096b70e2c3c081e6c'
'3733c23e77eb503bd94cc368e02830dc'
- 'c9159ba1233902ba6ddbbe6885a46b72'
- '4505b8b2c57a7c28ea79e08388bbbbb9'
+ '90c30380d4c8cd48a908cfdadae1ea24'
+ 'a81573a429b98e16670d7fea47e528c4'
'9657daa21760bb0b5fa3d8b51d5e01a1'
'f861b18f4446c43918c8643dcbbd7f6d'
'96f82c38f3f540b53f3e5144900acf17')
build() {
cd ${srcdir}/${pkgbase}-${pkgver}
- # http://www.cups.org/str.php?L3066
- # Avahi support in the dnssd backend. patches from upstream/FC RawHide
- patch -Np1 -i ${srcdir}/cups-avahi-1-config.patch
- patch -Np1 -i ${srcdir}/cups-avahi-2-backend.patch
- patch -Np1 -i ${srcdir}/cups-avahi-3-timeouts.patch
- patch -Np1 -i ${srcdir}/cups-avahi-4-poll.patch
- patch -Np1 -i ${srcdir}/cups-avahi-5-services.patch
# add systemd socket support - Fedora patch, also used in Gentoo
+ # modified now to the changes done by Gentoo in their svn ebuild
+ # http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-print/cups/files/cups-1.5.0-systemd-socket.patch?revision=1.1
patch -Np1 -i ${srcdir}/cups-systemd-socket.patch
# Do not export SSL libs in cups-config
@@ -56,7 +41,7 @@ build() {
# don't zip man pages in make install, let makepkg do that / Fedora
patch -Np1 -i ${srcdir}/cups-no-gzip-man.patch
- # Rebuild configure script for --enable-avahi.
+ # Rebuild configure script for not zipping man-pages.
aclocal -I config-scripts
autoconf -I config-scripts
@@ -68,14 +53,12 @@ build() {
--with-cups-user=daemon \
--with-cups-group=lp \
--enable-pam=yes \
- --disable-ldap \
--enable-raw-printing \
--enable-dbus --with-dbusdir=/etc/dbus-1 \
--enable-ssl=yes --enable-gnutls \
--enable-threads \
--enable-avahi\
--with-php=/usr/bin/php-cgi \
- --with-pdftops=pdftops \
--with-optim="$CFLAGS"
make
}
@@ -122,9 +105,8 @@ backup=(etc/cups/cupsd.conf
etc/logrotate.d/cups
etc/pam.d/cups
etc/xinetd.d/cups-lpd)
-depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' 'libusb' 'dbus-core' 'libsystemd' 'hicolor-icon-theme')
-optdepends=('php: for included phpcups.so module'
- 'xdg-utils: xdg .desktop file support')
+depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' 'colord' 'libusb' 'dbus-core' 'libsystemd' 'hicolor-icon-theme')
+optdepends=('xdg-utils: xdg .desktop file support')
cd ${srcdir}/${pkgbase}-${pkgver}
make BUILDROOT=${pkgdir} install-data install-exec
@@ -142,7 +124,7 @@ optdepends=('php: for included phpcups.so module'
# fix perms on /var/spool and /etc
chmod 755 ${pkgdir}/var/spool
chmod 755 ${pkgdir}/etc
-
+
# install ssl directory where to store the certs, solves some samba issues
install -dm700 -g lp ${pkgdir}/etc/cups/ssl
# remove directory from package, we create it in cups rc.d file
@@ -163,12 +145,9 @@ optdepends=('php: for included phpcups.so module'
# remove client.conf man page
rm -f ${pkgdir}/usr/share/man/man5/client.conf.5
- # remove files now part of cups-filters - check cups-filters INSTALL for packagers instructions
- rm -v ${pkgdir}/usr/lib/cups/backend/{parallel,serial}
- rm -v ${pkgdir}/usr/lib/cups/filter/{bannertops,commandtoescpx,commandtopclx,imagetops,imagetoraster,pdftops,rastertoescpx,rastertopclx,texttops}
+ # remove files now part of cups-filters
rm -v ${pkgdir}/usr/share/cups/banners/*
- rm -v ${pkgdir}/usr/share/cups/data/{testprint,psglyphs}
- rm -v ${pkgdir}/usr/share/cups/fonts/*
+ rm -v ${pkgdir}/usr/share/cups/data/testprint
# comment out all conversion rules which use any of the removed filters
- perl -p -i -e 's:^(.*\s+(pdftops|texttops|imagetops|bannertops|imagetoraster)\s*)$:#\1:' ${pkgdir}/usr/share/cups/mime/mime.convs
+ perl -p -i -e 's:^(.*\s+bannertops\s*)$:#\1:' /usr/share/cups/mime/mime.convs
}
diff --git a/extra/cups/cups-no-gzip-man.patch b/extra/cups/cups-no-gzip-man.patch
index 6786c4430..69899b9cb 100644
--- a/extra/cups/cups-no-gzip-man.patch
+++ b/extra/cups/cups-no-gzip-man.patch
@@ -4,7 +4,7 @@ diff -up cups-1.5b1/config-scripts/cups-manpages.m4.no-gzip-man cups-1.5b1/confi
@@ -69,10 +69,10 @@ case "$uname" in
;;
Linux* | GNU* | Darwin*)
- # Linux, GNU Hurd, and Mac OS X
+ # Linux, GNU Hurd, and OS X
- MAN1EXT=1.gz
- MAN5EXT=5.gz
- MAN7EXT=7.gz
diff --git a/extra/cups/cups-systemd-socket.patch b/extra/cups/cups-systemd-socket.patch
index 09d17d415..f699b9eda 100644
--- a/extra/cups/cups-systemd-socket.patch
+++ b/extra/cups/cups-systemd-socket.patch
@@ -1,6 +1,6 @@
-diff -up cups-1.5.2/config.h.in.systemd-socket cups-1.5.2/config.h.in
---- cups-1.5.2/config.h.in.systemd-socket 2012-03-16 14:50:57.089449755 +0000
-+++ cups-1.5.2/config.h.in 2012-03-16 14:50:57.146449787 +0000
+diff -up cups-1.5.0/config.h.in.systemd-socket cups-1.5.0/config.h.in
+--- cups-1.5.0/config.h.in.systemd-socket 2011-10-18 15:32:40.741672460 +0100
++++ cups-1.5.0/config.h.in 2011-10-18 15:32:40.843670530 +0100
@@ -503,6 +503,13 @@
@@ -15,9 +15,9 @@ diff -up cups-1.5.2/config.h.in.systemd-socket cups-1.5.2/config.h.in
* Various scripting languages...
*/
-diff -up cups-1.5.2/config-scripts/cups-systemd.m4.systemd-socket cups-1.5.2/config-scripts/cups-systemd.m4
---- cups-1.5.2/config-scripts/cups-systemd.m4.systemd-socket 2012-03-16 14:50:57.146449787 +0000
-+++ cups-1.5.2/config-scripts/cups-systemd.m4 2012-03-16 14:50:57.146449787 +0000
+diff -up cups-1.5.0/config-scripts/cups-systemd.m4.systemd-socket cups-1.5.0/config-scripts/cups-systemd.m4
+--- cups-1.5.0/config-scripts/cups-systemd.m4.systemd-socket 2011-10-18 15:32:40.844670511 +0100
++++ cups-1.5.0/config-scripts/cups-systemd.m4 2011-10-18 15:33:16.861989058 +0100
@@ -0,0 +1,36 @@
+dnl
+dnl "$Id$"
@@ -55,9 +55,9 @@ diff -up cups-1.5.2/config-scripts/cups-systemd.m4.systemd-socket cups-1.5.2/con
+dnl
+dnl "$Id$"
+dnl
-diff -up cups-1.5.2/configure.in.systemd-socket cups-1.5.2/configure.in
---- cups-1.5.2/configure.in.systemd-socket 2011-08-31 02:36:33.000000000 +0100
-+++ cups-1.5.2/configure.in 2012-03-16 14:50:57.146449787 +0000
+diff -up cups-1.5.0/configure.in.systemd-socket cups-1.5.0/configure.in
+--- cups-1.5.0/configure.in.systemd-socket 2010-11-20 01:03:46.000000000 +0000
++++ cups-1.5.0/configure.in 2011-10-18 15:32:40.844670511 +0100
@@ -37,6 +37,7 @@ sinclude(config-scripts/cups-pam.m4)
sinclude(config-scripts/cups-largefile.m4)
sinclude(config-scripts/cups-dnssd.m4)
@@ -76,10 +76,10 @@ diff -up cups-1.5.2/configure.in.systemd-socket cups-1.5.2/configure.in
desktop/cups.desktop
doc/help/ref-cupsd-conf.html
doc/help/standard.html
-diff -up cups-1.5.2/cups/usersys.c.systemd-socket cups-1.5.2/cups/usersys.c
---- cups-1.5.2/cups/usersys.c.systemd-socket 2012-03-16 14:50:57.054449734 +0000
-+++ cups-1.5.2/cups/usersys.c 2012-03-16 14:50:57.148449788 +0000
-@@ -778,7 +778,7 @@ cups_read_client_conf(
+diff -up cups-1.5.0/cups/usersys.c.systemd-socket cups-1.5.0/cups/usersys.c
+--- cups-1.5.0/cups/usersys.c.systemd-socket 2011-10-18 15:32:40.645674277 +0100
++++ cups-1.5.0/cups/usersys.c 2011-10-18 15:32:40.845670492 +0100
+@@ -770,7 +770,7 @@ cups_read_client_conf(
struct stat sockinfo; /* Domain socket information */
if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) &&
@@ -88,9 +88,9 @@ diff -up cups-1.5.2/cups/usersys.c.systemd-socket cups-1.5.2/cups/usersys.c
cups_server = CUPS_DEFAULT_DOMAINSOCKET;
else
#endif /* CUPS_DEFAULT_DOMAINSOCKET */
-diff -up cups-1.5.2/data/cups.path.in.systemd-socket cups-1.5.2/data/cups.path.in
---- cups-1.5.2/data/cups.path.in.systemd-socket 2012-03-16 14:50:57.148449788 +0000
-+++ cups-1.5.2/data/cups.path.in 2012-03-16 14:50:57.148449788 +0000
+diff -up cups-1.5.0/data/cups.path.in.systemd-socket cups-1.5.0/data/cups.path.in
+--- cups-1.5.0/data/cups.path.in.systemd-socket 2011-10-18 15:32:40.846670473 +0100
++++ cups-1.5.0/data/cups.path.in 2011-10-18 15:32:40.846670473 +0100
@@ -0,0 +1,8 @@
+[Unit]
+Description=CUPS Printer Service Spool
@@ -100,10 +100,10 @@ diff -up cups-1.5.2/data/cups.path.in.systemd-socket cups-1.5.2/data/cups.path.i
+
+[Install]
+WantedBy=multi-user.target
-diff -up cups-1.5.2/data/cups.service.in.systemd-socket cups-1.5.2/data/cups.service.in
---- cups-1.5.2/data/cups.service.in.systemd-socket 2012-03-16 14:50:57.149449788 +0000
-+++ cups-1.5.2/data/cups.service.in 2012-03-16 14:50:57.149449788 +0000
-@@ -0,0 +1,10 @@
+diff -up cups-1.5.0/data/cups.service.in.systemd-socket cups-1.5.0/data/cups.service.in
+--- cups-1.5.0/data/cups.service.in.systemd-socket 2011-10-18 15:32:40.846670473 +0100
++++ cups-1.5.0/data/cups.service.in 2011-10-18 15:32:40.846670473 +0100
+@@ -0,0 +1,9 @@
+[Unit]
+Description=CUPS Printing Service
+
@@ -114,10 +114,10 @@ diff -up cups-1.5.2/data/cups.service.in.systemd-socket cups-1.5.2/data/cups.ser
+[Install]
+Also=cups.socket cups.path
+WantedBy=printer.target
-diff -up cups-1.5.2/data/cups.socket.in.systemd-socket cups-1.5.2/data/cups.socket.in
---- cups-1.5.2/data/cups.socket.in.systemd-socket 2012-03-16 14:50:57.150449788 +0000
-+++ cups-1.5.2/data/cups.socket.in 2012-03-16 14:50:57.150449788 +0000
-@@ -0,0 +1,11 @@
+diff -up cups-1.5.0/data/cups.socket.in.systemd-socket cups-1.5.0/data/cups.socket.in
+--- cups-1.5.0/data/cups.socket.in.systemd-socket 2011-10-18 15:32:40.847670454 +0100
++++ cups-1.5.0/data/cups.socket.in 2011-10-18 15:32:40.847670454 +0100
+@@ -0,0 +1,10 @@
+[Unit]
+Description=CUPS Printing Service Sockets
+
@@ -129,9 +129,9 @@ diff -up cups-1.5.2/data/cups.socket.in.systemd-socket cups-1.5.2/data/cups.sock
+
+[Install]
+WantedBy=sockets.target
-diff -up cups-1.5.2/data/Makefile.systemd-socket cups-1.5.2/data/Makefile
---- cups-1.5.2/data/Makefile.systemd-socket 2011-05-12 06:21:56.000000000 +0100
-+++ cups-1.5.2/data/Makefile 2012-03-16 14:50:57.151449789 +0000
+diff -up cups-1.5.0/data/Makefile.systemd-socket cups-1.5.0/data/Makefile
+--- cups-1.5.0/data/Makefile.systemd-socket 2011-05-12 06:21:56.000000000 +0100
++++ cups-1.5.0/data/Makefile 2011-10-18 15:32:40.847670454 +0100
@@ -112,6 +112,12 @@ install-data:
$(INSTALL_DATA) $$file $(DATADIR)/ppdc; \
done
@@ -155,9 +155,9 @@ diff -up cups-1.5.2/data/Makefile.systemd-socket cups-1.5.2/data/Makefile
#
-diff -up cups-1.5.2/Makedefs.in.systemd-socket cups-1.5.2/Makedefs.in
---- cups-1.5.2/Makedefs.in.systemd-socket 2012-03-16 14:50:57.081449751 +0000
-+++ cups-1.5.2/Makedefs.in 2012-03-16 14:50:57.152449790 +0000
+diff -up cups-1.5.0/Makedefs.in.systemd-socket cups-1.5.0/Makedefs.in
+--- cups-1.5.0/Makedefs.in.systemd-socket 2011-10-18 15:32:40.719672876 +0100
++++ cups-1.5.0/Makedefs.in 2011-10-18 15:32:40.848670435 +0100
@@ -143,6 +143,7 @@ CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@
CXXLIBS = @CXXLIBS@
DBUS_NOTIFIER = @DBUS_NOTIFIER@
@@ -182,9 +182,9 @@ diff -up cups-1.5.2/Makedefs.in.systemd-socket cups-1.5.2/Makedefs.in
#
-diff -up cups-1.5.2/scheduler/client.h.systemd-socket cups-1.5.2/scheduler/client.h
---- cups-1.5.2/scheduler/client.h.systemd-socket 2011-03-25 21:25:38.000000000 +0000
-+++ cups-1.5.2/scheduler/client.h 2012-03-16 14:50:57.153449791 +0000
+diff -up cups-1.5.0/scheduler/client.h.systemd-socket cups-1.5.0/scheduler/client.h
+--- cups-1.5.0/scheduler/client.h.systemd-socket 2011-03-25 21:25:38.000000000 +0000
++++ cups-1.5.0/scheduler/client.h 2011-10-18 15:32:40.848670435 +0100
@@ -75,6 +75,9 @@ typedef struct
int fd; /* File descriptor for this server */
http_addr_t address; /* Bind address of socket */
@@ -195,99 +195,9 @@ diff -up cups-1.5.2/scheduler/client.h.systemd-socket cups-1.5.2/scheduler/clien
} cupsd_listener_t;
-diff -up cups-1.5.2/scheduler/dirsvc.c.systemd-socket cups-1.5.2/scheduler/dirsvc.c
---- cups-1.5.2/scheduler/dirsvc.c.systemd-socket 2012-03-16 14:50:57.112449768 +0000
-+++ cups-1.5.2/scheduler/dirsvc.c 2012-03-16 14:50:57.155449792 +0000
-@@ -1512,7 +1512,7 @@ cupsdStartBrowsing(void)
- }
- }
-
-- if (BrowseSocket >= 0)
-+ if (BrowseSocket >= 0 && !BrowseSocketIsSystemd)
- {
- /*
- * Bind the socket to browse port...
-@@ -1556,13 +1556,17 @@ cupsdStartBrowsing(void)
- cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to set broadcast mode - %s.",
- strerror(errno));
-
-+ if (!BrowseSocketIsSystemd)
-+ {
- #ifdef WIN32
-- closesocket(BrowseSocket);
-+ closesocket(BrowseSocket);
- #else
-- close(BrowseSocket);
-+ close(BrowseSocket);
- #endif /* WIN32 */
-
-- BrowseSocket = -1;
-+ BrowseSocket = -1;
-+ }
-+
- BrowseLocalProtocols &= ~BROWSE_CUPS;
- BrowseRemoteProtocols &= ~BROWSE_CUPS;
-
-@@ -1885,15 +1889,22 @@ cupsdStopBrowsing(void)
- if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_CUPS) &&
- BrowseSocket >= 0)
- {
-- /*
-- * Close the socket and remove it from the input selection set.
-- */
-+ if (!BrowseSocketIsSystemd)
-+ {
-+ /*
-+ * Close the socket.
-+ */
-
- #ifdef WIN32
-- closesocket(BrowseSocket);
-+ closesocket(BrowseSocket);
- #else
-- close(BrowseSocket);
-+ close(BrowseSocket);
- #endif /* WIN32 */
-+ }
-+
-+ /*
-+ * Remove it from the input selection set.
-+ */
-
- cupsdRemoveSelect(BrowseSocket);
- BrowseSocket = -1;
-@@ -5693,11 +5704,14 @@ update_cups_browse(void)
- strerror(errno));
- cupsdLogMessage(CUPSD_LOG_ERROR, "CUPS browsing turned off.");
-
-+ if (!BrowseSocketIsSystemd)
-+ {
- #ifdef WIN32
-- closesocket(BrowseSocket);
-+ closesocket(BrowseSocket);
- #else
-- close(BrowseSocket);
-+ close(BrowseSocket);
- #endif /* WIN32 */
-+ }
-
- cupsdRemoveSelect(BrowseSocket);
- BrowseSocket = -1;
-diff -up cups-1.5.2/scheduler/dirsvc.h.systemd-socket cups-1.5.2/scheduler/dirsvc.h
---- cups-1.5.2/scheduler/dirsvc.h.systemd-socket 2012-03-16 14:50:57.113449769 +0000
-+++ cups-1.5.2/scheduler/dirsvc.h 2012-03-16 14:50:57.157449792 +0000
-@@ -100,6 +100,8 @@ VAR int Browsing VALUE(TRUE),
- /* Short names for remote printers? */
- BrowseSocket VALUE(-1),
- /* Socket for browsing */
-+ BrowseSocketIsSystemd VALUE(0),
-+ /* BrowseSocket is systemd-provided? */
- BrowsePort VALUE(IPP_PORT),
- /* Port number for broadcasts */
- BrowseInterval VALUE(DEFAULT_INTERVAL),
-diff -up cups-1.5.2/scheduler/listen.c.systemd-socket cups-1.5.2/scheduler/listen.c
---- cups-1.5.2/scheduler/listen.c.systemd-socket 2011-04-16 00:38:13.000000000 +0100
-+++ cups-1.5.2/scheduler/listen.c 2012-03-16 14:50:57.158449792 +0000
+diff -up cups-1.5.0/scheduler/listen.c.systemd-socket cups-1.5.0/scheduler/listen.c
+--- cups-1.5.0/scheduler/listen.c.systemd-socket 2011-04-16 00:38:13.000000000 +0100
++++ cups-1.5.0/scheduler/listen.c 2011-10-18 15:32:40.849670416 +0100
@@ -401,7 +401,11 @@ cupsdStopListening(void)
lis;
lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
@@ -301,9 +211,9 @@ diff -up cups-1.5.2/scheduler/listen.c.systemd-socket cups-1.5.2/scheduler/liste
{
#ifdef WIN32
closesocket(lis->fd);
-diff -up cups-1.5.2/scheduler/main.c.systemd-socket cups-1.5.2/scheduler/main.c
---- cups-1.5.2/scheduler/main.c.systemd-socket 2012-03-16 14:50:57.121449773 +0000
-+++ cups-1.5.2/scheduler/main.c 2012-03-16 14:51:55.409483636 +0000
+diff -up cups-1.5.0/scheduler/main.c.systemd-socket cups-1.5.0/scheduler/main.c
+--- cups-1.5.0/scheduler/main.c.systemd-socket 2011-10-18 15:32:40.802671306 +0100
++++ cups-1.5.0/scheduler/main.c 2011-10-18 15:32:40.851670379 +0100
@@ -26,6 +26,8 @@
* launchd_checkin() - Check-in with launchd and collect the listening
* fds.
@@ -364,7 +274,7 @@ diff -up cups-1.5.2/scheduler/main.c.systemd-socket cups-1.5.2/scheduler/main.c
/*
* Startup the server...
*/
-@@ -1584,6 +1609,139 @@ launchd_checkout(void)
+@@ -1584,6 +1609,100 @@ launchd_checkout(void)
}
#endif /* HAVE_LAUNCHD */
@@ -396,53 +306,14 @@ diff -up cups-1.5.2/scheduler/main.c.systemd-socket cups-1.5.2/scheduler/main.c
+ char s[256];
+
+ r = sd_is_socket(fd, AF_UNSPEC, SOCK_STREAM, 1);
-+ if (r < 0)
-+ {
++ if (r < 0) {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "systemd_checkin: Unable to verify socket type - %s",
+ strerror(-r));
+ continue;
+ }
+
-+ if (!r)
-+ {
-+ if (Browsing &&
-+ ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_CUPS))
-+ {
-+ r = sd_is_socket(fd, AF_UNSPEC, SOCK_DGRAM, 0);
-+ if (r < 0)
-+ {
-+ cupsdLogMessage(CUPSD_LOG_ERROR,
-+ "systemd_checkin: Unable to verify socket type - %s",
-+ strerror(-r));
-+ continue;
-+ }
-+
-+ if (r)
-+ {
-+ /*
-+ * This is the browse socket.
-+ */
-+
-+ char addrstr[256];
-+ if (getsockname(fd, (struct sockaddr*) &addr, &addrlen))
-+ {
-+ cupsdLogMessage(CUPSD_LOG_ERROR,
-+ "systemd_checkin: Unable to get local address - %s",
-+ strerror(errno));
-+ continue;
-+ }
-+
-+ httpAddrString (&addr, addrstr, sizeof (addrstr));
-+ BrowseSocket = fd;
-+ BrowseSocketIsSystemd = 1;
-+ cupsdLogMessage(CUPSD_LOG_DEBUG,
-+ "systemd_checkin: Matched browse (port %d) with fd %d:%s...",
-+ BrowsePort, fd, addrstr);
-+ continue;
-+ }
-+
-+ }
++ if (!r) {
+ cupsdLogMessage(CUPSD_LOG_ERROR,
+ "systemd_checkin: Socket not of the right type");
+ continue;
@@ -456,7 +327,7 @@ diff -up cups-1.5.2/scheduler/main.c.systemd-socket cups-1.5.2/scheduler/main.c
+ continue;
+ }
+
-+ /*
++ /*
+ * Try to match the systemd socket address to one of the listeners...
+ */
+
@@ -464,7 +335,7 @@ diff -up cups-1.5.2/scheduler/main.c.systemd-socket cups-1.5.2/scheduler/main.c
+ lis;
+ lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
+ if (httpAddrEqual(&lis->address, &addr))
-+ break;
++ break;
+
+ if (lis)
+ {
@@ -504,9 +375,9 @@ diff -up cups-1.5.2/scheduler/main.c.systemd-socket cups-1.5.2/scheduler/main.c
/*
* 'parent_handler()' - Catch USR1/CHLD signals...
-diff -up cups-1.5.2/scheduler/Makefile.systemd-socket cups-1.5.2/scheduler/Makefile
---- cups-1.5.2/scheduler/Makefile.systemd-socket 2012-03-16 14:50:57.130449778 +0000
-+++ cups-1.5.2/scheduler/Makefile 2012-03-16 14:50:57.160449794 +0000
+diff -up cups-1.5.0/scheduler/Makefile.systemd-socket cups-1.5.0/scheduler/Makefile
+--- cups-1.5.0/scheduler/Makefile.systemd-socket 2011-10-18 15:32:40.817671022 +0100
++++ cups-1.5.0/scheduler/Makefile 2011-10-18 15:32:40.852670360 +0100
@@ -382,7 +382,7 @@ cupsd: $(CUPSDOBJS) $(LIBCUPSMIME) ../cu
$(CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) -L. -lcupsmime \
$(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
diff --git a/extra/cups/cups.install b/extra/cups/cups.install
index 47c3d9b82..cea52282e 100644
--- a/extra/cups/cups.install
+++ b/extra/cups/cups.install
@@ -17,6 +17,13 @@ post_upgrade() {
echo "daemon script has been renamed to /etc/rc.d/cupsd"
echo "change your entry in /etc/rc.conf"
fi
+ if [ "`vercmp $2 1.6.0`" -lt 0 ]; then
+ # important upgrade notice
+ echo "* avahi-daemon should now run before you start cupsd for"
+ echo " printer Browsing support"
+ echo "* check your config with cupsd -t"
+ echo " and fix all Browsing related settings"
+ fi
}
post_remove() {