[packages/cups] - up to 2.0.2; some SECURITY fixes

arekm arekm at pld-linux.org
Sat Feb 14 18:14:59 CET 2015


commit a04566f30c114d826c3b665665849ac3d847bf6a
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Sat Feb 14 18:14:53 2015 +0100

    - up to 2.0.2; some SECURITY fixes

 cups-avahi-no-threaded.patch | 79 +++++++++++++++++++++++---------------------
 cups-systemd-socket.patch    | 53 +++++++++++++++--------------
 cups.spec                    |  6 ++--
 3 files changed, 74 insertions(+), 64 deletions(-)
---
diff --git a/cups.spec b/cups.spec
index ff989ee..758229a 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:	2.0.1
+Version:	2.0.2
 Release:	1
 Epoch:		1
 License:	LGPL v2 (libraries), GPL v2 (the rest)
 Group:		Applications/Printing
 Source0:	http://www.cups.org/software/%{version}/%{name}-%{version}-source.tar.bz2
-# Source0-md5:	7f7c33071035fb20d0879929a42da711
+# Source0-md5:	6e0ea72dbafcf5baaa1cf4178e71096d
 Source1:	%{name}.init
 Source2:	%{name}.pamd
 Source3:	%{name}.logrotate
@@ -458,6 +458,7 @@ fi
 %{_ulibdir}/cups/cgi-bin/*.png
 %{_ulibdir}/cups/cgi-bin/*.txt
 %lang(es) %{_ulibdir}/cups/cgi-bin/es
+%lang(ja) %{_ulibdir}/cups/cgi-bin/ja
 
 %dir %{_ulibdir}/cups/daemon
 %attr(755,root,root) %{_ulibdir}/cups/daemon/cups-deviced
@@ -511,6 +512,7 @@ fi
 %dir %{_datadir}/cups/templates
 %{_datadir}/cups/templates/*.tmpl
 %lang(es) %{_datadir}/cups/templates/es
+%lang(ja) %{_datadir}/cups/templates/ja
 %{_mandir}/man1/cups.1*
 %{_mandir}/man1/cupstestppd.1*
 %{_mandir}/man1/cupstestdsc.1*
diff --git a/cups-avahi-no-threaded.patch b/cups-avahi-no-threaded.patch
index 9f5e35c..0a8ea62 100644
--- a/cups-avahi-no-threaded.patch
+++ b/cups-avahi-no-threaded.patch
@@ -1,6 +1,6 @@
-diff -up cups-2.0rc1/scheduler/avahi.c.avahi-no-threaded cups-2.0rc1/scheduler/avahi.c
---- cups-2.0rc1/scheduler/avahi.c.avahi-no-threaded	2014-09-12 15:45:28.772280006 +0200
-+++ cups-2.0rc1/scheduler/avahi.c	2014-09-12 15:45:28.772280006 +0200
+diff -up cups-2.0.2/scheduler/avahi.c.KUoOri cups-2.0.2/scheduler/avahi.c
+--- cups-2.0.2/scheduler/avahi.c.KUoOri	2015-02-10 13:47:38.620396709 +0100
++++ cups-2.0.2/scheduler/avahi.c	2015-02-10 13:47:38.620396709 +0100
 @@ -0,0 +1,441 @@
 +/*
 + * "$Id$"
@@ -443,9 +443,9 @@ diff -up cups-2.0rc1/scheduler/avahi.c.avahi-no-threaded cups-2.0rc1/scheduler/a
 +/*
 + * End of "$Id$".
 + */
-diff -up cups-2.0rc1/scheduler/avahi.h.avahi-no-threaded cups-2.0rc1/scheduler/avahi.h
---- cups-2.0rc1/scheduler/avahi.h.avahi-no-threaded	2014-09-12 15:45:28.772280006 +0200
-+++ cups-2.0rc1/scheduler/avahi.h	2014-09-12 15:45:28.772280006 +0200
+diff -up cups-2.0.2/scheduler/avahi.h.KUoOri cups-2.0.2/scheduler/avahi.h
+--- cups-2.0.2/scheduler/avahi.h.KUoOri	2015-02-10 13:47:38.620396709 +0100
++++ cups-2.0.2/scheduler/avahi.h	2015-02-10 13:47:38.620396709 +0100
 @@ -0,0 +1,69 @@
 +/*
 + * "$Id$"
@@ -516,9 +516,9 @@ diff -up cups-2.0rc1/scheduler/avahi.h.avahi-no-threaded cups-2.0rc1/scheduler/a
 +/*
 + * End of "$Id$".
 + */
-diff -up cups-2.0rc1/scheduler/cupsd.h.avahi-no-threaded cups-2.0rc1/scheduler/cupsd.h
---- cups-2.0rc1/scheduler/cupsd.h.avahi-no-threaded	2014-03-21 17:42:53.000000000 +0100
-+++ cups-2.0rc1/scheduler/cupsd.h	2014-09-12 15:47:02.886945551 +0200
+diff -up cups-2.0.2/scheduler/cupsd.h.KUoOri cups-2.0.2/scheduler/cupsd.h
+--- cups-2.0.2/scheduler/cupsd.h.KUoOri	2014-03-21 17:42:53.000000000 +0100
++++ cups-2.0.2/scheduler/cupsd.h	2015-02-10 13:47:38.624396652 +0100
 @@ -119,6 +119,7 @@ extern const char *cups_hstrerror(int);
  #include "colorman.h"
  #include "conf.h"
@@ -572,9 +572,9 @@ diff -up cups-2.0rc1/scheduler/cupsd.h.avahi-no-threaded cups-2.0rc1/scheduler/c
  
  /*
   * End of "$Id: cupsd.h 11717 2014-03-21 16:42:53Z msweet $".
-diff -up cups-2.0rc1/scheduler/dirsvc.c.avahi-no-threaded cups-2.0rc1/scheduler/dirsvc.c
---- cups-2.0rc1/scheduler/dirsvc.c.avahi-no-threaded	2014-05-09 22:57:11.000000000 +0200
-+++ cups-2.0rc1/scheduler/dirsvc.c	2014-09-12 15:45:28.773279992 +0200
+diff -up cups-2.0.2/scheduler/dirsvc.c.KUoOri cups-2.0.2/scheduler/dirsvc.c
+--- cups-2.0.2/scheduler/dirsvc.c.KUoOri	2015-01-30 17:16:12.000000000 +0100
++++ cups-2.0.2/scheduler/dirsvc.c	2015-02-10 13:50:47.131728120 +0100
 @@ -195,7 +195,7 @@ cupsdStartBrowsing(void)
      cupsdUpdateDNSSDName();
  
@@ -656,23 +656,28 @@ diff -up cups-2.0rc1/scheduler/dirsvc.c.avahi-no-threaded cups-2.0rc1/scheduler/
  #  endif /* HAVE_DNSSD */
  
    if (error)
-@@ -1296,12 +1279,10 @@ dnssdStop(void)
+@@ -1296,9 +1279,6 @@ dnssdStop(void)
    DNSSDMaster = NULL;
  
  #  else /* HAVE_AVAHI */
--  avahi_threaded_poll_stop(DNSSDMaster);
+-  if (DNSSDMaster)
+-    avahi_threaded_poll_stop(DNSSDMaster);
 -
-   avahi_client_free(DNSSDClient);
-   DNSSDClient = NULL;
+   if (DNSSDClient)
+   {
+     avahi_client_free(DNSSDClient);
+@@ -1307,7 +1287,7 @@ dnssdStop(void)
  
--  avahi_threaded_poll_free(DNSSDMaster);
-+  avahi_cups_poll_free(DNSSDMaster);
-   DNSSDMaster = NULL;
+   if (DNSSDMaster)
+   {
+-    avahi_threaded_poll_free(DNSSDMaster);
++    avahi_cups_poll_free(DNSSDMaster);
+     DNSSDMaster = NULL;
+   }
  #  endif /* HAVE_DNSSD */
- 
-diff -up cups-2.0rc1/scheduler/dirsvc.h.avahi-no-threaded cups-2.0rc1/scheduler/dirsvc.h
---- cups-2.0rc1/scheduler/dirsvc.h.avahi-no-threaded	2013-05-29 13:51:34.000000000 +0200
-+++ cups-2.0rc1/scheduler/dirsvc.h	2014-09-12 15:45:28.773279992 +0200
+diff -up cups-2.0.2/scheduler/dirsvc.h.KUoOri cups-2.0.2/scheduler/dirsvc.h
+--- cups-2.0.2/scheduler/dirsvc.h.KUoOri	2013-05-29 13:51:34.000000000 +0200
++++ cups-2.0.2/scheduler/dirsvc.h	2015-02-10 13:47:38.640396426 +0100
 @@ -51,7 +51,7 @@ VAR cups_array_t	*DNSSDPrinters	VALUE(NU
  VAR DNSServiceRef	DNSSDMaster	VALUE(NULL);
  					/* Master DNS-SD service reference */
@@ -682,10 +687,10 @@ diff -up cups-2.0rc1/scheduler/dirsvc.h.avahi-no-threaded cups-2.0rc1/scheduler/
  					/* Master polling interface for Avahi */
  VAR AvahiClient		*DNSSDClient	VALUE(NULL);
  					/* Client information */
-diff -up cups-2.0rc1/scheduler/main.c.avahi-no-threaded cups-2.0rc1/scheduler/main.c
---- cups-2.0rc1/scheduler/main.c.avahi-no-threaded	2014-09-12 15:45:28.736280516 +0200
-+++ cups-2.0rc1/scheduler/main.c	2014-09-12 15:47:43.433370643 +0200
-@@ -127,6 +127,10 @@ main(int  argc,				/* I - Number of comm
+diff -up cups-2.0.2/scheduler/main.c.KUoOri cups-2.0.2/scheduler/main.c
+--- cups-2.0.2/scheduler/main.c.KUoOri	2015-02-10 13:40:24.295545063 +0100
++++ cups-2.0.2/scheduler/main.c	2015-02-10 13:47:38.641396412 +0100
+@@ -129,6 +129,10 @@ main(int  argc,				/* I - Number of comm
    int			service_idle_exit;
  					/* Idle exit on select timeout? */
  #endif /* HAVE_LAUNCHD || HAVE_SYSTEMD */
@@ -696,7 +701,7 @@ diff -up cups-2.0rc1/scheduler/main.c.avahi-no-threaded cups-2.0rc1/scheduler/ma
  
  
  #ifdef HAVE_GETEUID
-@@ -569,6 +573,14 @@ main(int  argc,				/* I - Number of comm
+@@ -577,6 +581,14 @@ main(int  argc,				/* I - Number of comm
  
    httpInitialize();
  
@@ -711,7 +716,7 @@ diff -up cups-2.0rc1/scheduler/main.c.avahi-no-threaded cups-2.0rc1/scheduler/ma
    cupsdStartServer();
  
   /*
-@@ -871,6 +883,16 @@ main(int  argc,				/* I - Number of comm
+@@ -883,6 +895,16 @@ main(int  argc,				/* I - Number of comm
      }
  #endif /* __APPLE__ */
  
@@ -728,7 +733,7 @@ diff -up cups-2.0rc1/scheduler/main.c.avahi-no-threaded cups-2.0rc1/scheduler/ma
  #ifndef __APPLE__
     /*
      * Update the network interfaces once a minute...
-@@ -1562,6 +1584,10 @@ select_timeout(int fds)			/* I - Number
+@@ -1574,6 +1596,10 @@ select_timeout(int fds)			/* I - Number
    cupsd_job_t		*job;		/* Job information */
    cupsd_subscription_t	*sub;		/* Subscription information */
    const char		*why;		/* Debugging aid */
@@ -739,7 +744,7 @@ diff -up cups-2.0rc1/scheduler/main.c.avahi-no-threaded cups-2.0rc1/scheduler/ma
  
  
    cupsdLogMessage(CUPSD_LOG_DEBUG2, "select_timeout: JobHistoryUpdate=%ld",
-@@ -1607,6 +1633,19 @@ select_timeout(int fds)			/* I - Number
+@@ -1619,6 +1645,19 @@ select_timeout(int fds)			/* I - Number
    }
  #endif /* __APPLE__ */
  
@@ -759,9 +764,9 @@ diff -up cups-2.0rc1/scheduler/main.c.avahi-no-threaded cups-2.0rc1/scheduler/ma
   /*
    * Check whether we are accepting new connections...
    */
-diff -up cups-2.0rc1/scheduler/Makefile.avahi-no-threaded cups-2.0rc1/scheduler/Makefile
---- cups-2.0rc1/scheduler/Makefile.avahi-no-threaded	2014-08-29 13:27:18.000000000 +0200
-+++ cups-2.0rc1/scheduler/Makefile	2014-09-12 15:48:35.367634265 +0200
+diff -up cups-2.0.2/scheduler/Makefile.KUoOri cups-2.0.2/scheduler/Makefile
+--- cups-2.0.2/scheduler/Makefile.KUoOri	2014-10-21 13:55:01.000000000 +0200
++++ cups-2.0.2/scheduler/Makefile	2015-02-10 13:47:38.646396341 +0100
 @@ -17,6 +17,7 @@ include ../Makedefs
  
  CUPSDOBJS =	\
@@ -780,9 +785,9 @@ diff -up cups-2.0rc1/scheduler/Makefile.avahi-no-threaded cups-2.0rc1/scheduler/
  LIBOBJS =	\
  		filter.o \
  		mime.o \
-diff -up cups-2.0rc1/scheduler/timeout.c.avahi-no-threaded cups-2.0rc1/scheduler/timeout.c
---- cups-2.0rc1/scheduler/timeout.c.avahi-no-threaded	2014-09-12 15:45:28.775279963 +0200
-+++ cups-2.0rc1/scheduler/timeout.c	2014-09-12 15:45:28.775279963 +0200
+diff -up cups-2.0.2/scheduler/timeout.c.KUoOri cups-2.0.2/scheduler/timeout.c
+--- cups-2.0.2/scheduler/timeout.c.KUoOri	2015-02-10 13:47:38.646396341 +0100
++++ cups-2.0.2/scheduler/timeout.c	2015-02-10 13:47:38.646396341 +0100
 @@ -0,0 +1,235 @@
 +/*
 + * "$Id$"
diff --git a/cups-systemd-socket.patch b/cups-systemd-socket.patch
index 7f1b0b2..6d8d60a 100644
--- a/cups-systemd-socket.patch
+++ b/cups-systemd-socket.patch
@@ -1,34 +1,38 @@
-diff -up cups-2.0.1/cups/usersys.c.systemd-socket cups-2.0.1/cups/usersys.c
---- cups-2.0.1/cups/usersys.c.systemd-socket	2014-10-20 20:24:56.000000000 +0200
-+++ cups-2.0.1/cups/usersys.c	2014-11-15 15:19:11.108125832 +0100
-@@ -1078,7 +1078,7 @@ cups_read_client_conf(
+diff -up cups-2.0.2/cups/usersys.c.ustTJg cups-2.0.2/cups/usersys.c
+--- cups-2.0.2/cups/usersys.c.ustTJg	2015-02-10 13:40:24.294545077 +0100
++++ cups-2.0.2/cups/usersys.c	2015-02-10 13:46:56.763989233 +0100
+@@ -1017,7 +1017,7 @@ cups_finalize_client_conf(
      struct stat	sockinfo;		/* Domain socket information */
  
      if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) &&
 -	(sockinfo.st_mode & S_IRWXO) == S_IRWXO)
 +	(sockinfo.st_mode & (S_IROTH | S_IWOTH)) == (S_IROTH | S_IWOTH))
-       cups_server = CUPS_DEFAULT_DOMAINSOCKET;
+       cups_set_server_name(cc, CUPS_DEFAULT_DOMAINSOCKET);
      else
  #endif /* CUPS_DEFAULT_DOMAINSOCKET */
-diff -up cups-2.0.1/scheduler/main.c.systemd-socket cups-2.0.1/scheduler/main.c
---- cups-2.0.1/scheduler/main.c.systemd-socket	2014-11-15 15:19:11.057126510 +0100
-+++ cups-2.0.1/scheduler/main.c	2014-11-15 15:19:11.108125832 +0100
-@@ -661,6 +661,12 @@ main(int  argc,				/* I - Number of comm
+diff -up cups-2.0.2/scheduler/main.c.ustTJg cups-2.0.2/scheduler/main.c
+--- cups-2.0.2/scheduler/main.c.ustTJg	2015-02-10 13:40:24.121547526 +0100
++++ cups-2.0.2/scheduler/main.c	2015-02-10 13:40:24.295545063 +0100
+@@ -658,8 +658,15 @@ main(int  argc,				/* I - Number of comm
+ 
+ #if defined(HAVE_LAUNCHD) || defined(HAVE_SYSTEMD)
+   if (OnDemand)
++  {
      cupsdAddEvent(CUPSD_EVENT_SERVER_STARTED, NULL, NULL, "Scheduler started on demand.");
-   else
+-  else
++# ifdef HAVE_SYSTEMD
++    sd_notifyf(0, "READY=1\n"
++               "STATUS=Scheduler is running...\n"
++               "MAINPID=%lu",
++               (unsigned long) getpid());
++# endif /* HAVE_SYSTEMD */
++  } else
  #endif /* HAVE_LAUNCHD || HAVE_SYSTEMD */
-+#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.");
-   else
-diff -up cups-2.0.1/scheduler/org.cups.cupsd.path.in.systemd-socket cups-2.0.1/scheduler/org.cups.cupsd.path.in
---- cups-2.0.1/scheduler/org.cups.cupsd.path.in.systemd-socket	2014-03-21 15:50:24.000000000 +0100
-+++ cups-2.0.1/scheduler/org.cups.cupsd.path.in	2014-11-15 15:19:11.108125832 +0100
+diff -up cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.path.in
+--- cups-2.0.2/scheduler/org.cups.cupsd.path.in.ustTJg	2014-03-21 15:50:24.000000000 +0100
++++ cups-2.0.2/scheduler/org.cups.cupsd.path.in	2015-02-10 13:40:24.295545063 +0100
 @@ -2,7 +2,7 @@
  Description=CUPS Scheduler
  
@@ -38,9 +42,9 @@ diff -up cups-2.0.1/scheduler/org.cups.cupsd.path.in.systemd-socket cups-2.0.1/s
  
  [Install]
  WantedBy=multi-user.target
-diff -up cups-2.0.1/scheduler/org.cups.cupsd.service.in.systemd-socket cups-2.0.1/scheduler/org.cups.cupsd.service.in
---- cups-2.0.1/scheduler/org.cups.cupsd.service.in.systemd-socket	2014-11-15 15:19:11.109125818 +0100
-+++ cups-2.0.1/scheduler/org.cups.cupsd.service.in	2014-11-15 15:19:56.480528155 +0100
+diff -up cups-2.0.2/scheduler/org.cups.cupsd.service.in.ustTJg cups-2.0.2/scheduler/org.cups.cupsd.service.in
+--- cups-2.0.2/scheduler/org.cups.cupsd.service.in.ustTJg	2014-10-21 13:55:01.000000000 +0200
++++ cups-2.0.2/scheduler/org.cups.cupsd.service.in	2015-02-10 13:40:24.296545049 +0100
 @@ -1,10 +1,11 @@
  [Unit]
  Description=CUPS Scheduler
@@ -48,9 +52,8 @@ diff -up cups-2.0.1/scheduler/org.cups.cupsd.service.in.systemd-socket cups-2.0.
 +After=network.target
  
  [Service]
--ExecStart=@sbindir@/cupsd -l
+ ExecStart=@sbindir@/cupsd -l
 -Type=simple
-+ExecStart=@sbindir@/cupsd -f
 +Type=notify
  
  [Install]
================================================================

---- gitweb:

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



More information about the pld-cvs-commit mailing list