From b5d3f2084461907ff3cd2df0eee5f0965be7d817 Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Sat, 16 Aug 2014 13:04:32 -0500
Subject: cups: 1.7.5

refs #961
---
 abs/extra/cups/PKGBUILD                  |  42 +++++------
 abs/extra/cups/cups-dbus-utf8.patch      | 106 --------------------------
 abs/extra/cups/cups-systemd-socket.patch | 123 ++++++++++++++++---------------
 3 files changed, 84 insertions(+), 187 deletions(-)
 delete mode 100644 abs/extra/cups/cups-dbus-utf8.patch

diff --git a/abs/extra/cups/PKGBUILD b/abs/extra/cups/PKGBUILD
index 08a3e19..3975850 100644
--- a/abs/extra/cups/PKGBUILD
+++ b/abs/extra/cups/PKGBUILD
@@ -1,17 +1,18 @@
-# $Id: PKGBUILD 199750 2013-11-15 15:38:18Z andyrtr $
+# $Id: PKGBUILD 218449 2014-07-31 13:11:09Z andyrtr $
 # Maintainer: Andreas Radke <andyrtr@archlinux.org>
 
 pkgbase="cups"
 pkgname=('libcups' 'cups')
-pkgver=1.7.0
-pkgrel=2
+pkgver=1.7.5
+pkgrel=1
 arch=('i686' 'x86_64')
 license=('GPL')
 url="http://www.cups.org/"
-makedepends=('libtiff>=4.0.0' 'libpng>=1.5.7' 'acl' 'pam' 'xdg-utils' 'krb5' 'gnutls>=2.8.3' 'cups-filters' 'bc'
-             'colord' 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus-core' 'avahi'  'hicolor-icon-theme' 'systemd')
+makedepends=('libtiff>=4.0.0' 'libpng>=1.5.7' 'acl' 'pam' 'xdg-utils' 'krb5' 'openssl'
+             'cups-filters' 'bc' 'colord' 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus' 
+             'avahi'  'hicolor-icon-theme' 'systemd' 'inetutils' 'libpaper' 'valgrind')
 source=(#http://mirror.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2
-        http://www.cups.org/software/${pkgver}/cups-${pkgver}-source.tar.bz2
+        http://www.cups.org/software/${pkgver}/cups-${pkgver}-source.tar.bz2{,.sig}
         cups.logrotate cups.pam
         # improve build and linking
         cups-no-export-ssllibs.patch
@@ -19,7 +20,6 @@ source=(#http://mirror.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.b
         cups-no-gzip-man.patch
         # FC
         cups-systemd-socket.patch
-        cups-dbus-utf8.patch
         cups-res_init.patch
         cups-avahi-address.patch
         cups-enum-all.patch
@@ -31,14 +31,14 @@ source=(#http://mirror.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.b
         cupsd-no-crash-on-avahi-threaded-poll-shutdown.patch
         get-ppd-file-for-statically-configured-ipp-shared-queues.patch
         ppd-poll-with-client-conf.patch)
-md5sums=('5ab496a2ce27017fcdb3d7ec4818a75a'
-         'f861b18f4446c43918c8643dcbbd7f6d'
+md5sums=('5d893edc2957005f78e2b2423fdace2e'
+         'SKIP'
+         '26e9b4e65c0a4d76db5737c9b156fd80'
          '96f82c38f3f540b53f3e5144900acf17'
          '3ba9e3410df1dc3015463d615ef91b3b'
          'cc4101beccb5ed6deb1c92707a575925'
          '90c30380d4c8cd48a908cfdadae1ea24'
-         '555a1c71151ce990e176315b46e3de2f'
-         'a2a88b3a3257c3b5fd3edcc169e6aca4'
+         '8162e1d05947bd59fa29ba40ac565fec'
          '8fe27d4248cacbc02824e7937cab4088'
          'df0c367c0022e3c7d8e01827e8a6c5e7'
          'f30c2a161caaf27854581507cde8cac6'
@@ -52,7 +52,7 @@ md5sums=('5ab496a2ce27017fcdb3d7ec4818a75a'
 prepare() {
 
   cd ${pkgbase}-${pkgver}
-	
+#return 1	
   # 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
@@ -69,9 +69,6 @@ prepare() {
 
   # various bugfixes (upstream reports/SVN or Fedora/Debian
 
-  # Ensure attributes are valid UTF-8 in dbus notifier
-  patch -Np1 -i ${srcdir}/cups-dbus-utf8.patch
-
   # Fixed crash which sometimes happens on shutdown of the CUPS daemon, caused by a wrong shutdown sequence for shutting down the Avahi threaded poll.
 #  patch -Np1 -i ${srcdir}/cupsd-no-crash-on-avahi-threaded-poll-shutdown.patch
   # Applications could not get the PPD file for statically-configured IPP-shared print queues
@@ -112,9 +109,10 @@ build() {
      --enable-pam=yes \
      --enable-raw-printing \
      --enable-dbus --with-dbusdir=/etc/dbus-1 \
-     --enable-ssl=yes --enable-gnutls \
+     --enable-ssl=yes --enable-openssl \
      --enable-threads \
      --enable-avahi\
+     --enable-libpaper \
      --with-php=/usr/bin/php-cgi \
      --with-optim="$CFLAGS"
   make
@@ -122,15 +120,12 @@ build() {
 
 check() {
   cd ${pkgbase}-${pkgver}
-  #httpAddrGetList(workstation64): FAIL
-  #1 TESTS FAILED!
-  #make[1]: *** [testhttp] Error 1
   make -k check || /bin/true
 }
 
 package_libcups() {
 pkgdesc="The CUPS Printing System - client libraries and headers"
-depends=('gnutls>=2.8.3' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi')
+depends=('openssl' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi')
 backup=(etc/cups/client.conf)
 
   cd ${pkgbase}-${pkgver}
@@ -162,7 +157,8 @@ backup=(etc/cups/cupsd.conf
         etc/logrotate.d/cups
         etc/pam.d/cups
         etc/xinetd.d/cups-lpd)
-depends=('acl' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' 'colord' 'libusb' 'dbus-core' 'libsystemd' 'hicolor-icon-theme')
+depends=('acl' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' 'colord'
+         'libusb' 'dbus' 'systemd' 'libpaper' 'hicolor-icon-theme')
 optdepends=('xdg-utils: xdg .desktop file support')
 
   cd ${pkgbase}-${pkgver}
@@ -183,8 +179,8 @@ optdepends=('xdg-utils: xdg .desktop file support')
 
   # 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
-  rm -rf ${pkgdir}/var/run
+  # remove directory from package, it will be recreated at each server start
+  rm -rf ${pkgdir}/run
 
   # install some more configuration files that will get filled by cupsd
   touch ${pkgdir}/etc/cups/printers.conf
diff --git a/abs/extra/cups/cups-dbus-utf8.patch b/abs/extra/cups/cups-dbus-utf8.patch
deleted file mode 100644
index 0bcd4a1..0000000
--- a/abs/extra/cups/cups-dbus-utf8.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-diff -up cups-1.6.1/notifier/dbus.c.dbus-utf8 cups-1.6.1/notifier/dbus.c
---- cups-1.6.1/notifier/dbus.c.dbus-utf8	2012-01-20 19:00:32.000000000 +0000
-+++ cups-1.6.1/notifier/dbus.c	2012-10-31 11:04:47.686973616 +0000
-@@ -31,6 +31,9 @@
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <unistd.h>
-+#include <assert.h>
-+#include <locale.h>
-+#include <wchar.h>
- 
- #ifdef HAVE_DBUS
- #  include <dbus/dbus.h>
-@@ -157,10 +160,82 @@ enum
-  * Local functions...
-  */
- 
--static int	acquire_lock(int *fd, char *lockfile, size_t locksize);
-+static int		acquire_lock(int *fd, char *lockfile, size_t locksize);
-+static const char	*validate_utf8(const char *str);
- 
- 
- /*
-+ * 'validate_utf8()' - Convert to valid UTF-8
-+ */
-+
-+static const char *
-+validate_utf8 (const char *str)
-+{
-+  static char *buffer = NULL;
-+  static size_t buflen = 0;
-+  char *p;
-+  size_t str_len;
-+  unsigned int i;
-+  mbstate_t instate, outstate;
-+
-+  if (str == NULL)
-+  {
-+    free (buffer);
-+    return (NULL);
-+  }
-+
-+  /* Is it already valid? */
-+  if (mbstowcs (NULL, str, 0) != (size_t) -1)
-+    return str;
-+
-+  /* Make sure our buffer is at least as large as the input string */
-+  str_len = strlen (str);
-+  if (str_len > buflen)
-+  {
-+    if (buffer == NULL)
-+      /* Set encoding type to UTF-8 the first time we need to */
-+      setlocale (LC_CTYPE, "en_US.UTF-8");
-+
-+    buflen = str_len + 1;
-+    buffer = realloc (buffer, buflen);
-+  }
-+
-+  memset (&instate, '\0', sizeof (mbstate_t));
-+  memset (&outstate, '\0', sizeof (mbstate_t));
-+  p = buffer;
-+  i = 0;
-+  while (i < str_len)
-+  {
-+    wchar_t wc;
-+    size_t used, written;
-+    mbstate_t orig_instate = instate;
-+    used = mbrtowc (&wc, str + i, str_len - i, &instate);
-+    switch (used)
-+    {
-+    case (size_t) -2:
-+    case (size_t) -1:
-+      wc = L'?'; /* so replacement is never longer than original char */
-+      instate = orig_instate;
-+      /* fallthru */
-+    case 0:
-+      used = 1;
-+    }
-+
-+    written = wcrtomb (p, wc, &outstate);
-+    if (written != -1)
-+    {
-+      p += written;
-+      assert (p - buffer < buflen);
-+    }
-+
-+    i += used;
-+  }
-+
-+  *p = '\0';
-+  return buffer;
-+}
-+
-+/*
-  * 'main()' - Read events and send DBUS notifications.
-  */
- 
-@@ -366,7 +441,7 @@ main(int  argc,				/* I - Number of comm
-     attr = ippFindAttribute(msg, "notify-text", IPP_TAG_TEXT);
-     if (attr)
-     {
--      const char *val = ippGetString(attr, 0, NULL);
-+      const char *val = validate_utf8 (ippGetString(attr, 0, NULL));
-       if (!dbus_message_iter_append_string(&iter, &val))
-         goto bail;
-     }
diff --git a/abs/extra/cups/cups-systemd-socket.patch b/abs/extra/cups/cups-systemd-socket.patch
index cfbe933..2eef708 100644
--- a/abs/extra/cups/cups-systemd-socket.patch
+++ b/abs/extra/cups/cups-systemd-socket.patch
@@ -1,6 +1,6 @@
-diff -up cups-1.7rc1/config.h.in.systemd-socket cups-1.7rc1/config.h.in
---- cups-1.7rc1/config.h.in.systemd-socket	2013-05-29 13:51:34.000000000 +0200
-+++ cups-1.7rc1/config.h.in	2013-07-12 11:16:53.257546263 +0200
+diff -up cups-1.7.2/config.h.in.systemd-socket cups-1.7.2/config.h.in
+--- cups-1.7.2/config.h.in.systemd-socket	2014-02-27 16:57:59.000000000 +0100
++++ cups-1.7.2/config.h.in	2014-04-17 14:05:04.104472016 +0200
 @@ -451,6 +451,13 @@
  
  
@@ -15,9 +15,9 @@ diff -up cups-1.7rc1/config.h.in.systemd-socket cups-1.7rc1/config.h.in
   * Various scripting languages...
   */
  
-diff -up cups-1.7rc1/config-scripts/cups-systemd.m4.systemd-socket cups-1.7rc1/config-scripts/cups-systemd.m4
---- cups-1.7rc1/config-scripts/cups-systemd.m4.systemd-socket	2013-07-12 11:16:53.257546263 +0200
-+++ cups-1.7rc1/config-scripts/cups-systemd.m4	2013-07-12 11:16:53.257546263 +0200
+diff -up cups-1.7.2/config-scripts/cups-systemd.m4.systemd-socket cups-1.7.2/config-scripts/cups-systemd.m4
+--- cups-1.7.2/config-scripts/cups-systemd.m4.systemd-socket	2014-04-17 14:05:04.104472016 +0200
++++ cups-1.7.2/config-scripts/cups-systemd.m4	2014-04-17 14:05:04.104472016 +0200
 @@ -0,0 +1,36 @@
 +dnl
 +dnl "$Id$"
@@ -55,9 +55,9 @@ diff -up cups-1.7rc1/config-scripts/cups-systemd.m4.systemd-socket cups-1.7rc1/c
 +dnl
 +dnl "$Id$"
 +dnl
-diff -up cups-1.7rc1/configure.in.systemd-socket cups-1.7rc1/configure.in
---- cups-1.7rc1/configure.in.systemd-socket	2013-07-08 23:15:13.000000000 +0200
-+++ cups-1.7rc1/configure.in	2013-07-12 11:16:53.257546263 +0200
+diff -up cups-1.7.2/configure.in.systemd-socket cups-1.7.2/configure.in
+--- cups-1.7.2/configure.in.systemd-socket	2013-07-08 23:15:13.000000000 +0200
++++ cups-1.7.2/configure.in	2014-04-17 14:05:04.104472016 +0200
 @@ -33,6 +33,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.7rc1/configure.in.systemd-socket cups-1.7rc1/configure.in
  	  desktop/cups.desktop
  	  doc/help/ref-cups-files-conf.html
  	  doc/help/ref-cupsd-conf.html
-diff -up cups-1.7rc1/cups/usersys.c.systemd-socket cups-1.7rc1/cups/usersys.c
---- cups-1.7rc1/cups/usersys.c.systemd-socket	2013-07-10 16:08:39.000000000 +0200
-+++ cups-1.7rc1/cups/usersys.c	2013-07-12 11:16:53.258546249 +0200
-@@ -1046,7 +1046,7 @@ cups_read_client_conf(
+diff -up cups-1.7.2/cups/usersys.c.systemd-socket cups-1.7.2/cups/usersys.c
+--- cups-1.7.2/cups/usersys.c.systemd-socket	2014-03-05 22:22:12.000000000 +0100
++++ cups-1.7.2/cups/usersys.c	2014-04-17 14:05:04.105472002 +0200
+@@ -1050,7 +1050,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.7rc1/cups/usersys.c.systemd-socket cups-1.7rc1/cups/usersys.c
        cups_server = CUPS_DEFAULT_DOMAINSOCKET;
      else
  #endif /* CUPS_DEFAULT_DOMAINSOCKET */
-diff -up cups-1.7rc1/data/cups.path.in.systemd-socket cups-1.7rc1/data/cups.path.in
---- cups-1.7rc1/data/cups.path.in.systemd-socket	2013-07-12 11:16:53.258546249 +0200
-+++ cups-1.7rc1/data/cups.path.in	2013-07-12 11:16:53.258546249 +0200
+diff -up cups-1.7.2/data/cups.path.in.systemd-socket cups-1.7.2/data/cups.path.in
+--- cups-1.7.2/data/cups.path.in.systemd-socket	2014-04-17 14:05:04.105472002 +0200
++++ cups-1.7.2/data/cups.path.in	2014-04-17 14:05:04.105472002 +0200
 @@ -0,0 +1,8 @@
 +[Unit]
 +Description=CUPS Printer Service Spool
@@ -100,35 +100,38 @@ diff -up cups-1.7rc1/data/cups.path.in.systemd-socket cups-1.7rc1/data/cups.path
 +
 +[Install]
 +WantedBy=multi-user.target
-diff -up cups-1.7rc1/data/cups.service.in.systemd-socket cups-1.7rc1/data/cups.service.in
---- cups-1.7rc1/data/cups.service.in.systemd-socket	2013-07-12 11:16:53.258546249 +0200
-+++ cups-1.7rc1/data/cups.service.in	2013-07-12 11:16:53.258546249 +0200
-@@ -0,0 +1,10 @@
+diff -up cups-1.7.2/data/cups.service.in.systemd-socket cups-1.7.2/data/cups.service.in
+--- cups-1.7.2/data/cups.service.in.systemd-socket	2014-04-17 14:05:04.105472002 +0200
++++ cups-1.7.2/data/cups.service.in	2014-04-17 14:05:04.105472002 +0200
+@@ -0,0 +1,11 @@
 +[Unit]
 +Description=CUPS Printing Service
 +
 +[Service]
++Type=notify
 +ExecStart=@sbindir@/cupsd -f
 +PrivateTmp=true
 +
 +[Install]
 +Also=cups.socket cups.path
 +WantedBy=printer.target
-diff -up cups-1.7rc1/data/cups.socket.in.systemd-socket cups-1.7rc1/data/cups.socket.in
---- cups-1.7rc1/data/cups.socket.in.systemd-socket	2013-07-12 11:16:53.259546235 +0200
-+++ cups-1.7rc1/data/cups.socket.in	2013-07-12 11:16:53.259546235 +0200
-@@ -0,0 +1,8 @@
+diff -up cups-1.7.2/data/cups.socket.in.systemd-socket cups-1.7.2/data/cups.socket.in
+--- cups-1.7.2/data/cups.socket.in.systemd-socket	2014-04-17 14:05:04.105472002 +0200
++++ cups-1.7.2/data/cups.socket.in	2014-04-17 14:05:04.105472002 +0200
+@@ -0,0 +1,10 @@
 +[Unit]
 +Description=CUPS Printing Service Sockets
 +
 +[Socket]
 +ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@
++ListenStream=@DEFAULT_IPP_PORT@
++BindIPv6Only=ipv6-only
 +
 +[Install]
 +WantedBy=sockets.target
-diff -up cups-1.7rc1/data/Makefile.systemd-socket cups-1.7rc1/data/Makefile
---- cups-1.7rc1/data/Makefile.systemd-socket	2013-05-29 13:51:34.000000000 +0200
-+++ cups-1.7rc1/data/Makefile	2013-07-12 11:16:53.259546235 +0200
+diff -up cups-1.7.2/data/Makefile.systemd-socket cups-1.7.2/data/Makefile
+--- cups-1.7.2/data/Makefile.systemd-socket	2013-05-29 13:51:34.000000000 +0200
++++ cups-1.7.2/data/Makefile	2014-04-17 14:05:04.106471988 +0200
 @@ -100,6 +100,12 @@ install-data:
  		$(INSTALL_DATA) $$file $(DATADIR)/ppdc; \
  	done
@@ -152,9 +155,9 @@ diff -up cups-1.7rc1/data/Makefile.systemd-socket cups-1.7rc1/data/Makefile
  
  
  #
-diff -up cups-1.7rc1/Makedefs.in.systemd-socket cups-1.7rc1/Makedefs.in
---- cups-1.7rc1/Makedefs.in.systemd-socket	2013-07-12 11:16:53.246546416 +0200
-+++ cups-1.7rc1/Makedefs.in	2013-07-12 11:17:49.327768742 +0200
+diff -up cups-1.7.2/Makedefs.in.systemd-socket cups-1.7.2/Makedefs.in
+--- cups-1.7.2/Makedefs.in.systemd-socket	2014-04-17 14:05:04.092472182 +0200
++++ cups-1.7.2/Makedefs.in	2014-04-17 14:05:04.106471988 +0200
 @@ -134,6 +134,7 @@ CXXFLAGS	=	@CPPFLAGS@ @CXXFLAGS@
  CXXLIBS		=	@CXXLIBS@
  DBUS_NOTIFIER	=	@DBUS_NOTIFIER@
@@ -171,7 +174,7 @@ diff -up cups-1.7rc1/Makedefs.in.systemd-socket cups-1.7rc1/Makedefs.in
  LDFLAGS		=	-L../cgi-bin -L../cups -L../filter -L../ppdc \
  			-L../scheduler @LDARCHFLAGS@ \
  			@LDFLAGS@ @RELROFLAGS@ @PIEFLAGS@ $(OPTIM)
-@@ -231,6 +233,7 @@ PAMFILE		=	@PAMFILE@
+@@ -232,6 +234,7 @@ PAMFILE		=	@PAMFILE@
  
  DEFAULT_LAUNCHD_CONF =	@DEFAULT_LAUNCHD_CONF@
  DBUSDIR		=	@DBUSDIR@
@@ -179,10 +182,10 @@ diff -up cups-1.7rc1/Makedefs.in.systemd-socket cups-1.7rc1/Makedefs.in
  
  
  #
-diff -up cups-1.7rc1/scheduler/client.h.systemd-socket cups-1.7rc1/scheduler/client.h
---- cups-1.7rc1/scheduler/client.h.systemd-socket	2013-05-29 13:51:34.000000000 +0200
-+++ cups-1.7rc1/scheduler/client.h	2013-07-12 11:16:53.260546222 +0200
-@@ -77,6 +77,9 @@ typedef struct
+diff -up cups-1.7.2/scheduler/client.h.systemd-socket cups-1.7.2/scheduler/client.h
+--- cups-1.7.2/scheduler/client.h.systemd-socket	2013-08-02 00:23:18.000000000 +0200
++++ cups-1.7.2/scheduler/client.h	2014-04-17 14:05:04.106471988 +0200
+@@ -79,6 +79,9 @@ typedef struct
    int			fd;		/* File descriptor for this server */
    http_addr_t		address;	/* Bind address of socket */
    http_encryption_t	encryption;	/* To encrypt or not to encrypt... */
@@ -192,9 +195,9 @@ diff -up cups-1.7rc1/scheduler/client.h.systemd-socket cups-1.7rc1/scheduler/cli
  } cupsd_listener_t;
  
  
-diff -up cups-1.7rc1/scheduler/listen.c.systemd-socket cups-1.7rc1/scheduler/listen.c
---- cups-1.7rc1/scheduler/listen.c.systemd-socket	2013-05-29 13:51:34.000000000 +0200
-+++ cups-1.7rc1/scheduler/listen.c	2013-07-12 11:16:53.260546222 +0200
+diff -up cups-1.7.2/scheduler/listen.c.systemd-socket cups-1.7.2/scheduler/listen.c
+--- cups-1.7.2/scheduler/listen.c.systemd-socket	2013-05-29 13:51:34.000000000 +0200
++++ cups-1.7.2/scheduler/listen.c	2014-04-17 14:05:04.107471974 +0200
 @@ -401,7 +401,11 @@ cupsdStopListening(void)
         lis;
         lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
@@ -208,19 +211,10 @@ diff -up cups-1.7rc1/scheduler/listen.c.systemd-socket cups-1.7rc1/scheduler/lis
      {
  #ifdef WIN32
        closesocket(lis->fd);
-diff -up cups-1.7rc1/scheduler/main.c.systemd-socket cups-1.7rc1/scheduler/main.c
---- cups-1.7rc1/scheduler/main.c.systemd-socket	2013-07-12 11:16:53.212546887 +0200
-+++ cups-1.7rc1/scheduler/main.c	2013-07-12 11:16:53.261546208 +0200
-@@ -26,6 +26,8 @@
-  *   launchd_checkin()     - Check-in with launchd and collect the listening
-  *                           fds.
-  *   launchd_checkout()    - Update the launchd KeepAlive file as needed.
-+ *   systemd_checkin()     - Check-in with systemd and collect the
-+ *                           listening fds.
-  *   parent_handler()      - Catch USR1/CHLD signals...
-  *   process_children()    - Process all dead children...
-  *   select_timeout()      - Calculate the select timeout value.
-@@ -62,6 +64,10 @@
+diff -up cups-1.7.2/scheduler/main.c.systemd-socket cups-1.7.2/scheduler/main.c
+--- cups-1.7.2/scheduler/main.c.systemd-socket	2014-04-17 14:05:04.052472738 +0200
++++ cups-1.7.2/scheduler/main.c	2014-04-17 14:09:39.102634667 +0200
+@@ -39,6 +39,10 @@
  #  endif /* !LAUNCH_JOBKEY_SERVICEIPC */
  #endif /* HAVE_LAUNCH_H */
  
@@ -231,7 +225,7 @@ diff -up cups-1.7rc1/scheduler/main.c.systemd-socket cups-1.7rc1/scheduler/main.
  #if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO)
  #  include <malloc.h>
  #endif /* HAVE_MALLOC_H && HAVE_MALLINFO */
-@@ -83,6 +89,9 @@
+@@ -64,6 +68,9 @@
  static void		launchd_checkin(void);
  static void		launchd_checkout(void);
  #endif /* HAVE_LAUNCHD */
@@ -241,7 +235,7 @@ diff -up cups-1.7rc1/scheduler/main.c.systemd-socket cups-1.7rc1/scheduler/main.
  static void		parent_handler(int sig);
  static void		process_children(void);
  static void		sigchld_handler(int sig);
-@@ -574,6 +583,13 @@ main(int  argc,				/* I - Number of comm
+@@ -563,6 +570,13 @@ main(int  argc,				/* I - Number of comm
    }
  #endif /* HAVE_LAUNCHD */
  
@@ -255,7 +249,20 @@ diff -up cups-1.7rc1/scheduler/main.c.systemd-socket cups-1.7rc1/scheduler/main.
   /*
    * Startup the server...
    */
-@@ -762,6 +778,15 @@ main(int  argc,				/* I - Number of comm
+@@ -654,6 +668,12 @@ main(int  argc,				/* I - Number of comm
+                   "Scheduler started via launchd.");
+   else
+ #endif /* HAVE_LAUNCHD */
++#ifdef HAVE_SYSTEMD
++  sd_notifyf(0, "READY=1\n"
++             "STATUS=Scheduler is running...\n"
++             "MAINPID=%lu",
++             (unsigned long) getpid());
++#endif /* HAVE_SYSTEMD */
+   if (fg)
+     cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL,
+                   "Scheduler started in foreground.");
+@@ -751,6 +771,15 @@ main(int  argc,				/* I - Number of comm
  	}
  #endif /* HAVE_LAUNCHD */
  
@@ -271,7 +278,7 @@ diff -up cups-1.7rc1/scheduler/main.c.systemd-socket cups-1.7rc1/scheduler/main.
         /*
          * Startup the server...
          */
-@@ -1511,6 +1536,102 @@ launchd_checkout(void)
+@@ -1500,6 +1529,102 @@ launchd_checkout(void)
  }
  #endif /* HAVE_LAUNCHD */
  
@@ -374,9 +381,9 @@ diff -up cups-1.7rc1/scheduler/main.c.systemd-socket cups-1.7rc1/scheduler/main.
  
  /*
   * 'parent_handler()' - Catch USR1/CHLD signals...
-diff -up cups-1.7rc1/scheduler/Makefile.systemd-socket cups-1.7rc1/scheduler/Makefile
---- cups-1.7rc1/scheduler/Makefile.systemd-socket	2013-05-29 13:51:34.000000000 +0200
-+++ cups-1.7rc1/scheduler/Makefile	2013-07-12 11:16:53.261546208 +0200
+diff -up cups-1.7.2/scheduler/Makefile.systemd-socket cups-1.7.2/scheduler/Makefile
+--- cups-1.7.2/scheduler/Makefile.systemd-socket	2013-05-29 13:51:34.000000000 +0200
++++ cups-1.7.2/scheduler/Makefile	2014-04-17 14:05:04.108471960 +0200
 @@ -381,7 +381,7 @@ cupsd:	$(CUPSDOBJS) $(LIBCUPSMIME) ../cu
  	$(CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) -L. -lcupsmime \
  		$(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
-- 
cgit v0.12

