[packages/cups] - up to 1.7.4; SECURITY fixes

arekm arekm at pld-linux.org
Tue Jul 22 10:23:23 CEST 2014


commit f25528457311fc46b394417fffc077286200489a
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Tue Jul 22 10:23:20 2014 +0200

    - up to 1.7.4; SECURITY fixes

 cups-avahi-no-threaded.patch | 111 ++++++++++++++++++++++++----------------
 cups-systemd-socket.patch    | 119 ++++++++++++++++++++++---------------------
 cups.spec                    |   4 +-
 3 files changed, 130 insertions(+), 104 deletions(-)
---
diff --git a/cups.spec b/cups.spec
index e069762..f36bd66 100644
--- a/cups.spec
+++ b/cups.spec
@@ -10,13 +10,13 @@
 Summary(pl.UTF-8):	Ogólny system druku dla Uniksa
 Summary(pt_BR.UTF-8):	Sistema Unix de Impressão
 Name:		cups
-Version:	1.7.1
+Version:	1.7.4
 Release:	1
 Epoch:		1
 License:	LGPL v2 (libraries), GPL v2 (the rest) + openssl exception
 Group:		Applications/Printing
 Source0:	http://www.cups.org/software/%{version}/%{name}-%{version}-source.tar.bz2
-# Source0-md5:	55277c40fd4b7183dc3671d39c5c42b7
+# Source0-md5:	1a2295c2b2d2f422db2e50f40ed2fb99
 Source1:	%{name}.init
 Source2:	%{name}.pamd
 Source3:	%{name}.logrotate
diff --git a/cups-avahi-no-threaded.patch b/cups-avahi-no-threaded.patch
index a818c5f..f9e7b2d 100644
--- a/cups-avahi-no-threaded.patch
+++ b/cups-avahi-no-threaded.patch
@@ -1,6 +1,6 @@
-diff -up cups-1.7rc1/scheduler/avahi.c.avahi-no-threaded cups-1.7rc1/scheduler/avahi.c
---- cups-1.7rc1/scheduler/avahi.c.avahi-no-threaded	2013-07-22 11:47:27.599101572 +0100
-+++ cups-1.7rc1/scheduler/avahi.c	2013-07-22 11:47:27.599101572 +0100
+diff -up cups-1.7.2/scheduler/avahi.c.avahi-no-threaded cups-1.7.2/scheduler/avahi.c
+--- cups-1.7.2/scheduler/avahi.c.avahi-no-threaded	2014-04-14 13:56:52.632617316 +0200
++++ cups-1.7.2/scheduler/avahi.c	2014-04-14 13:56:52.631617331 +0200
 @@ -0,0 +1,441 @@
 +/*
 + * "$Id$"
@@ -443,9 +443,9 @@ diff -up cups-1.7rc1/scheduler/avahi.c.avahi-no-threaded cups-1.7rc1/scheduler/a
 +/*
 + * End of "$Id$".
 + */
-diff -up cups-1.7rc1/scheduler/avahi.h.avahi-no-threaded cups-1.7rc1/scheduler/avahi.h
---- cups-1.7rc1/scheduler/avahi.h.avahi-no-threaded	2013-07-22 11:47:27.599101572 +0100
-+++ cups-1.7rc1/scheduler/avahi.h	2013-07-22 11:47:27.599101572 +0100
+diff -up cups-1.7.2/scheduler/avahi.h.avahi-no-threaded cups-1.7.2/scheduler/avahi.h
+--- cups-1.7.2/scheduler/avahi.h.avahi-no-threaded	2014-04-14 13:56:52.632617316 +0200
++++ cups-1.7.2/scheduler/avahi.h	2014-04-14 13:56:52.632617316 +0200
 @@ -0,0 +1,69 @@
 +/*
 + * "$Id$"
@@ -516,9 +516,9 @@ diff -up cups-1.7rc1/scheduler/avahi.h.avahi-no-threaded cups-1.7rc1/scheduler/a
 +/*
 + * End of "$Id$".
 + */
-diff -up cups-1.7rc1/scheduler/cupsd.h.avahi-no-threaded cups-1.7rc1/scheduler/cupsd.h
---- cups-1.7rc1/scheduler/cupsd.h.avahi-no-threaded	2013-05-29 12:51:34.000000000 +0100
-+++ cups-1.7rc1/scheduler/cupsd.h	2013-07-22 11:47:31.319118984 +0100
+diff -up cups-1.7.2/scheduler/cupsd.h.avahi-no-threaded cups-1.7.2/scheduler/cupsd.h
+--- cups-1.7.2/scheduler/cupsd.h.avahi-no-threaded	2013-05-29 13:51:34.000000000 +0200
++++ cups-1.7.2/scheduler/cupsd.h	2014-04-14 13:56:52.632617316 +0200
 @@ -119,6 +119,7 @@ extern const char *cups_hstrerror(int);
  #include "colorman.h"
  #include "conf.h"
@@ -573,11 +573,11 @@ diff -up cups-1.7rc1/scheduler/cupsd.h.avahi-no-threaded cups-1.7rc1/scheduler/c
  
  /*
   * End of "$Id: cupsd.h 10996 2013-05-29 11:51:34Z msweet $".
-diff -up cups-1.7rc1/scheduler/dirsvc.c.avahi-no-threaded cups-1.7rc1/scheduler/dirsvc.c
---- cups-1.7rc1/scheduler/dirsvc.c.avahi-no-threaded	2013-05-29 12:51:34.000000000 +0100
-+++ cups-1.7rc1/scheduler/dirsvc.c	2013-07-22 11:47:27.600101576 +0100
-@@ -212,7 +212,7 @@ cupsdStartBrowsing(void)
-     }
+diff -up cups-1.7.2/scheduler/dirsvc.c.avahi-no-threaded cups-1.7.2/scheduler/dirsvc.c
+--- cups-1.7.2/scheduler/dirsvc.c.avahi-no-threaded	2014-03-05 22:11:32.000000000 +0100
++++ cups-1.7.2/scheduler/dirsvc.c	2014-04-14 14:21:11.121344106 +0200
+@@ -195,7 +195,7 @@ cupsdStartBrowsing(void)
+     cupsdUpdateDNSSDName();
  
  #  else /* HAVE_AVAHI */
 -    if ((DNSSDMaster = avahi_threaded_poll_new()) == NULL)
@@ -585,16 +585,16 @@ diff -up cups-1.7rc1/scheduler/dirsvc.c.avahi-no-threaded cups-1.7rc1/scheduler/
      {
        cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to create DNS-SD thread.");
  
-@@ -223,7 +223,7 @@ cupsdStartBrowsing(void)
+@@ -206,7 +206,7 @@ cupsdStartBrowsing(void)
      {
        int error;			/* Error code, if any */
  
--      DNSSDClient = avahi_client_new(avahi_threaded_poll_get(DNSSDMaster), 0,
-+      DNSSDClient = avahi_client_new(avahi_cups_poll_get(DNSSDMaster), 0,
-                                      NULL, NULL, &error);
+-      DNSSDClient = avahi_client_new(avahi_threaded_poll_get(DNSSDMaster), AVAHI_CLIENT_NO_FAIL, dnssdClientCallback, NULL, &error);
++      DNSSDClient = avahi_client_new(avahi_cups_poll_get(DNSSDMaster), AVAHI_CLIENT_NO_FAIL, dnssdClientCallback, NULL, &error);
  
        if (DNSSDClient == NULL)
-@@ -235,11 +235,9 @@ cupsdStartBrowsing(void)
+       {
+@@ -217,11 +217,9 @@ cupsdStartBrowsing(void)
          if (FatalErrors & CUPSD_FATAL_BROWSE)
  	  cupsdEndProcess(getpid(), 0);
  
@@ -606,42 +606,63 @@ diff -up cups-1.7rc1/scheduler/dirsvc.c.avahi-no-threaded cups-1.7rc1/scheduler/
 -	avahi_threaded_poll_start(DNSSDMaster);
      }
  #  endif /* HAVE_DNSSD */
+   }
+@@ -606,7 +604,7 @@ dnssdClientCallback(
+ 	  * Renew Avahi client...
+ 	  */
+ 
+-	  DNSSDClient = avahi_client_new(avahi_threaded_poll_get(DNSSDMaster), AVAHI_CLIENT_NO_FAIL, dnssdClientCallback, NULL, &error);
++	  DNSSDClient = avahi_client_new(avahi_cups_poll_get(DNSSDMaster), AVAHI_CLIENT_NO_FAIL, dnssdClientCallback, NULL, &error);
  
-@@ -746,9 +744,7 @@ dnssdDeregisterInstance(
+ 	  if (!DNSSDClient)
+ 	  {
+@@ -670,13 +668,7 @@ dnssdDeregisterInstance(
    DNSServiceRefDeallocate(*srv);
  
  #  else /* HAVE_AVAHI */
--  avahi_threaded_poll_lock(DNSSDMaster);
+-  if (!from_callback)
+-    avahi_threaded_poll_lock(DNSSDMaster);
+-
    avahi_entry_group_free(*srv);
--  avahi_threaded_poll_unlock(DNSSDMaster);
+-
+-  if (!from_callback)
+-    avahi_threaded_poll_unlock(DNSSDMaster);
  #  endif /* HAVE_DNSSD */
  
    *srv = NULL;
-@@ -1043,14 +1039,10 @@ dnssdRegisterInstance(
+@@ -997,16 +989,10 @@ dnssdRegisterInstance(
    (void)commit;
  
  #  else /* HAVE_AVAHI */
--  avahi_threaded_poll_lock(DNSSDMaster);
+-  if (!from_callback)
+-    avahi_threaded_poll_lock(DNSSDMaster);
 -
    if (!*srv)
      *srv = avahi_entry_group_new(DNSSDClient, dnssdRegisterCallback, NULL);
    if (!*srv)
    {
--    avahi_threaded_poll_unlock(DNSSDMaster);
+-    if (!from_callback)
+-      avahi_threaded_poll_unlock(DNSSDMaster);
 -
      cupsdLogMessage(CUPSD_LOG_WARN, "DNS-SD registration of \"%s\" failed: %s",
                      name, dnssdErrorString(avahi_client_errno(DNSSDClient)));
      return (0);
-@@ -1165,8 +1157,6 @@ dnssdRegisterInstance(
+@@ -1121,9 +1107,6 @@ dnssdRegisterInstance(
        cupsdLogMessage(CUPSD_LOG_DEBUG, "DNS-SD commit of \"%s\" failed.",
                        name);
    }
 -
--  avahi_threaded_poll_unlock(DNSSDMaster);
+-  if (!from_callback)
+-    avahi_threaded_poll_unlock(DNSSDMaster);
  #  endif /* HAVE_DNSSD */
  
    if (error)
-@@ -1338,7 +1328,7 @@ dnssdStop(void)
+@@ -1294,12 +1277,10 @@ dnssdStop(void)
+   DNSSDMaster = NULL;
+ 
+ #  else /* HAVE_AVAHI */
+-  avahi_threaded_poll_stop(DNSSDMaster);
+-
    avahi_client_free(DNSSDClient);
    DNSSDClient = NULL;
  
@@ -650,9 +671,9 @@ diff -up cups-1.7rc1/scheduler/dirsvc.c.avahi-no-threaded cups-1.7rc1/scheduler/
    DNSSDMaster = NULL;
  #  endif /* HAVE_DNSSD */
  
-diff -up cups-1.7rc1/scheduler/dirsvc.h.avahi-no-threaded cups-1.7rc1/scheduler/dirsvc.h
---- cups-1.7rc1/scheduler/dirsvc.h.avahi-no-threaded	2013-05-29 12:51:34.000000000 +0100
-+++ cups-1.7rc1/scheduler/dirsvc.h	2013-07-22 11:47:27.600101576 +0100
+diff -up cups-1.7.2/scheduler/dirsvc.h.avahi-no-threaded cups-1.7.2/scheduler/dirsvc.h
+--- cups-1.7.2/scheduler/dirsvc.h.avahi-no-threaded	2013-05-29 13:51:34.000000000 +0200
++++ cups-1.7.2/scheduler/dirsvc.h	2014-04-14 13:56:52.633617302 +0200
 @@ -51,7 +51,7 @@ VAR cups_array_t	*DNSSDPrinters	VALUE(NU
  VAR DNSServiceRef	DNSSDMaster	VALUE(NULL);
  					/* Master DNS-SD service reference */
@@ -662,10 +683,10 @@ diff -up cups-1.7rc1/scheduler/dirsvc.h.avahi-no-threaded cups-1.7rc1/scheduler/
  					/* Master polling interface for Avahi */
  VAR AvahiClient		*DNSSDClient	VALUE(NULL);
  					/* Client information */
-diff -up cups-1.7rc1/scheduler/main.c.avahi-no-threaded cups-1.7rc1/scheduler/main.c
---- cups-1.7rc1/scheduler/main.c.avahi-no-threaded	2013-07-22 11:47:27.578101474 +0100
-+++ cups-1.7rc1/scheduler/main.c	2013-07-22 11:47:27.601101581 +0100
-@@ -155,6 +155,10 @@ main(int  argc,				/* I - Number of comm
+diff -up cups-1.7.2/scheduler/main.c.avahi-no-threaded cups-1.7.2/scheduler/main.c
+--- cups-1.7.2/scheduler/main.c.avahi-no-threaded	2014-04-14 13:56:52.600617782 +0200
++++ cups-1.7.2/scheduler/main.c	2014-04-14 13:56:52.634617287 +0200
+@@ -134,6 +134,10 @@ main(int  argc,				/* I - Number of comm
    int			launchd_idle_exit;
  					/* Idle exit on select timeout? */
  #endif	/* HAVE_LAUNCHD */
@@ -676,7 +697,7 @@ diff -up cups-1.7rc1/scheduler/main.c.avahi-no-threaded cups-1.7rc1/scheduler/ma
  
  
  #ifdef HAVE_GETEUID
-@@ -596,6 +600,14 @@ main(int  argc,				/* I - Number of comm
+@@ -583,6 +587,14 @@ main(int  argc,				/* I - Number of comm
  
    httpInitialize();
  
@@ -691,7 +712,7 @@ diff -up cups-1.7rc1/scheduler/main.c.avahi-no-threaded cups-1.7rc1/scheduler/ma
    cupsdStartServer();
  
   /*
-@@ -917,6 +929,16 @@ main(int  argc,				/* I - Number of comm
+@@ -904,6 +916,16 @@ main(int  argc,				/* I - Number of comm
      }
  #endif /* __APPLE__ */
  
@@ -708,7 +729,7 @@ diff -up cups-1.7rc1/scheduler/main.c.avahi-no-threaded cups-1.7rc1/scheduler/ma
  #ifndef __APPLE__
     /*
      * Update the network interfaces once a minute...
-@@ -1897,6 +1919,10 @@ select_timeout(int fds)			/* I - Number
+@@ -1884,6 +1906,10 @@ select_timeout(int fds)			/* I - Number
    cupsd_job_t		*job;		/* Job information */
    cupsd_subscription_t	*sub;		/* Subscription information */
    const char		*why;		/* Debugging aid */
@@ -719,7 +740,7 @@ diff -up cups-1.7rc1/scheduler/main.c.avahi-no-threaded cups-1.7rc1/scheduler/ma
  
  
    cupsdLogMessage(CUPSD_LOG_DEBUG2, "select_timeout: JobHistoryUpdate=%ld",
-@@ -1942,6 +1968,19 @@ select_timeout(int fds)			/* I - Number
+@@ -1929,6 +1955,19 @@ select_timeout(int fds)			/* I - Number
    }
  #endif /* __APPLE__ */
  
@@ -739,9 +760,9 @@ diff -up cups-1.7rc1/scheduler/main.c.avahi-no-threaded cups-1.7rc1/scheduler/ma
   /*
    * Check whether we are accepting new connections...
    */
-diff -up cups-1.7rc1/scheduler/Makefile.avahi-no-threaded cups-1.7rc1/scheduler/Makefile
---- cups-1.7rc1/scheduler/Makefile.avahi-no-threaded	2013-07-22 11:47:27.578101474 +0100
-+++ cups-1.7rc1/scheduler/Makefile	2013-07-22 11:47:27.601101581 +0100
+diff -up cups-1.7.2/scheduler/Makefile.avahi-no-threaded cups-1.7.2/scheduler/Makefile
+--- cups-1.7.2/scheduler/Makefile.avahi-no-threaded	2014-04-14 13:56:52.600617782 +0200
++++ cups-1.7.2/scheduler/Makefile	2014-04-14 13:56:52.631617331 +0200
 @@ -17,6 +17,7 @@ include ../Makedefs
  
  CUPSDOBJS =	\
@@ -758,9 +779,9 @@ diff -up cups-1.7rc1/scheduler/Makefile.avahi-no-threaded cups-1.7rc1/scheduler/
  		tls.o
  LIBOBJS =	\
  		filter.o \
-diff -up cups-1.7rc1/scheduler/timeout.c.avahi-no-threaded cups-1.7rc1/scheduler/timeout.c
---- cups-1.7rc1/scheduler/timeout.c.avahi-no-threaded	2013-07-22 11:47:27.601101581 +0100
-+++ cups-1.7rc1/scheduler/timeout.c	2013-07-22 11:47:27.601101581 +0100
+diff -up cups-1.7.2/scheduler/timeout.c.avahi-no-threaded cups-1.7.2/scheduler/timeout.c
+--- cups-1.7.2/scheduler/timeout.c.avahi-no-threaded	2014-04-14 13:56:52.634617287 +0200
++++ cups-1.7.2/scheduler/timeout.c	2014-04-14 13:56:52.634617287 +0200
 @@ -0,0 +1,235 @@
 +/*
 + * "$Id$"
diff --git a/cups-systemd-socket.patch b/cups-systemd-socket.patch
index cfbe933..7adf2ef 100644
--- a/cups-systemd-socket.patch
+++ b/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,23 +100,24 @@ 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
+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,8 @@
 +[Unit]
 +Description=CUPS Printing Service Sockets
@@ -126,9 +127,9 @@ diff -up cups-1.7rc1/data/cups.socket.in.systemd-socket cups-1.7rc1/data/cups.so
 +
 +[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 +153,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 +172,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 +180,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 +193,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 +209,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 +223,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 +233,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 +247,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 +276,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 +379,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) \
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/cups.git/commitdiff/f25528457311fc46b394417fffc077286200489a



More information about the pld-cvs-commit mailing list