rpms/cups/F-11 cups-CVE-2009-0164.patch, 1.1, 1.2 cups.spec, 1.471, 1.472

Tim Waugh twaugh at fedoraproject.org
Sun Apr 26 12:56:00 UTC 2009


Author: twaugh

Update of /cvs/pkgs/rpms/cups/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv2337

Modified Files:
	cups-CVE-2009-0164.patch cups.spec 
Log Message:
* Sun Apr 26 2009 Tim Waugh <twaugh at redhat.com> 1:1.4-0.b2.15
- Accept "Host: ::1" (bug #497393).
- Accept Host: fields set to the ServerName value (bug #497301).


cups-CVE-2009-0164.patch:

Index: cups-CVE-2009-0164.patch
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/cups-CVE-2009-0164.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cups-CVE-2009-0164.patch	17 Apr 2009 16:29:10 -0000	1.1
+++ cups-CVE-2009-0164.patch	26 Apr 2009 12:55:27 -0000	1.2
@@ -1,6 +1,6 @@
 diff -up cups-1.4b2-svn8404/CHANGES-1.3.txt.CVE-2009-0164 cups-1.4b2-svn8404/CHANGES-1.3.txt
 --- cups-1.4b2-svn8404/CHANGES-1.3.txt.CVE-2009-0164	2009-03-05 10:54:00.000000000 +0000
-+++ cups-1.4b2-svn8404/CHANGES-1.3.txt	2009-04-17 16:47:18.000000000 +0100
++++ cups-1.4b2-svn8404/CHANGES-1.3.txt	2009-04-26 13:22:11.000000000 +0100
 @@ -69,11 +69,6 @@ CHANGES IN CUPS V1.3.10
  	- The scheduler now rejects ATTR: messages with empty values.
  	- The scheduler could consume all CPU handling closed connections
@@ -15,7 +15,7 @@
  	- The Epson sample driver PPDs contained errors (STR #2979)
 diff -up cups-1.4b2-svn8404/cups/http-addr.c.CVE-2009-0164 cups-1.4b2-svn8404/cups/http-addr.c
 --- cups-1.4b2-svn8404/cups/http-addr.c.CVE-2009-0164	2009-02-17 17:45:27.000000000 +0000
-+++ cups-1.4b2-svn8404/cups/http-addr.c	2009-04-17 16:47:18.000000000 +0100
++++ cups-1.4b2-svn8404/cups/http-addr.c	2009-04-26 13:22:11.000000000 +0100
 @@ -154,7 +154,7 @@ httpAddrLocalhost(
  #endif /* AF_LOCAL */
  
@@ -26,8 +26,8 @@
  
    return (0);
 diff -up cups-1.4b2-svn8404/cups/http.c.CVE-2009-0164 cups-1.4b2-svn8404/cups/http.c
---- cups-1.4b2-svn8404/cups/http.c.CVE-2009-0164	2009-04-17 16:47:18.000000000 +0100
-+++ cups-1.4b2-svn8404/cups/http.c	2009-04-17 16:47:18.000000000 +0100
+--- cups-1.4b2-svn8404/cups/http.c.CVE-2009-0164	2009-04-26 13:22:11.000000000 +0100
++++ cups-1.4b2-svn8404/cups/http.c	2009-04-26 13:22:11.000000000 +0100
 @@ -1842,18 +1842,35 @@ httpSetField(http_t       *http,	/* I - 
  
    strlcpy(http->fields[field], value, HTTP_MAX_VALUE);
@@ -71,7 +71,7 @@
  
 diff -up cups-1.4b2-svn8404/man/cupsd.conf.man.in.CVE-2009-0164 cups-1.4b2-svn8404/man/cupsd.conf.man.in
 --- cups-1.4b2-svn8404/man/cupsd.conf.man.in.CVE-2009-0164	2009-02-17 17:45:27.000000000 +0000
-+++ cups-1.4b2-svn8404/man/cupsd.conf.man.in	2009-04-17 16:47:18.000000000 +0100
++++ cups-1.4b2-svn8404/man/cupsd.conf.man.in	2009-04-26 13:22:11.000000000 +0100
 @@ -617,6 +617,11 @@ ServerAdmin user at domain.com
  .br
  Specifies the email address of the server administrator.
@@ -86,7 +86,7 @@
  Specifies the directory where backends, CGIs, daemons, and filters may
 diff -up cups-1.4b2-svn8404/scheduler/client.c.CVE-2009-0164 cups-1.4b2-svn8404/scheduler/client.c
 --- cups-1.4b2-svn8404/scheduler/client.c.CVE-2009-0164	2009-03-05 10:54:00.000000000 +0000
-+++ cups-1.4b2-svn8404/scheduler/client.c	2009-04-17 16:47:48.000000000 +0100
++++ cups-1.4b2-svn8404/scheduler/client.c	2009-04-26 13:38:34.000000000 +0100
 @@ -39,6 +39,7 @@
   *   is_path_absolute()      - Is a path absolute and free of relative elements.
   *   make_certificate()      - Make a self-signed SSL/TLS certificate.
@@ -138,7 +138,7 @@
      {
        unlink(seedfile);
        return (0);
-@@ -4862,6 +4862,165 @@ pipe_command(cupsd_client_t *con,	/* I -
+@@ -4862,6 +4862,166 @@ pipe_command(cupsd_client_t *con,	/* I -
  
  
  /*
@@ -174,7 +174,8 @@
 +            !strcmp(host, "127.0.0.1") ||
 +	    !strncmp(host, "127.0.0.1:", 10) ||
 +	    !strcmp(host, "[::1]") ||
-+	    !strncmp(host, "[::1]:", 6));
++	    !strncmp(host, "[::1]:", 6) ||
++	    !strcmp(host, "::1"));
 +  }
 +
 +#ifdef HAVE_DNSSD
@@ -305,8 +306,8 @@
   */
  
 diff -up cups-1.4b2-svn8404/scheduler/conf.c.CVE-2009-0164 cups-1.4b2-svn8404/scheduler/conf.c
---- cups-1.4b2-svn8404/scheduler/conf.c.CVE-2009-0164	2009-04-17 16:47:18.000000000 +0100
-+++ cups-1.4b2-svn8404/scheduler/conf.c	2009-04-17 16:47:18.000000000 +0100
+--- cups-1.4b2-svn8404/scheduler/conf.c.CVE-2009-0164	2009-04-26 13:22:11.000000000 +0100
++++ cups-1.4b2-svn8404/scheduler/conf.c	2009-04-26 13:43:59.000000000 +0100
 @@ -14,13 +14,15 @@
   *
   * Contents:
@@ -411,58 +412,62 @@
      {
        cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to get hostname: %s",
                        strerror(errno));
-@@ -684,6 +731,50 @@ cupsdReadConfiguration(void)
-     }
- 
+@@ -686,6 +733,54 @@ cupsdReadConfiguration(void)
      cupsdSetString(&ServerName, temp);
+   }
+ 
++  if (!ServerAlias)
++    ServerAlias = cupsArrayNew(NULL, NULL);
 +
-+    if (!ServerAlias)
-+      ServerAlias = cupsArrayNew(NULL, NULL);
++  cupsdAddAlias(ServerAlias, ServerName);
++  cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s", ServerName);
 +
-+    cupsdAddAlias(ServerAlias, temp);
-+    cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s", temp);
++  if (HostNameLookups || RemoteAccessEnabled)
++  {
++    struct hostent	*host;		/* Host entry to get FQDN */
 +
-+    if (HostNameLookups || RemoteAccessEnabled)
++    if ((host = gethostbyname(ServerName)) != NULL)
 +    {
-+      struct hostent	*host;		/* Host entry to get FQDN */
++      if (strcasecmp(ServerName, host->h_name))
++      {
++	cupsdSetString(&ServerName, host->h_name);
++	cupsdAddAlias(ServerAlias, host->h_name);
++	cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s",
++			host->h_name);
++      }
 +
-+      if ((host = gethostbyname(temp)) != NULL)
++      if (host->h_aliases)
 +      {
-+        if (strcasecmp(temp, host->h_name))
-+        {
-+	  cupsdSetString(&ServerName, host->h_name);
-+	  cupsdAddAlias(ServerAlias, host->h_name);
-+          cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s",
-+	                  host->h_name);
-+	}
-+
-+        if (host->h_aliases)
-+	{
-+          for (i = 0; host->h_aliases[i]; i ++)
-+	    if (strcasecmp(temp, host->h_aliases[i]))
-+	    {
-+	      cupsdAddAlias(ServerAlias, host->h_aliases[i]);
-+	      cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s",
-+	                      host->h_aliases[i]);
-+	    }
-+	}
++	for (i = 0; host->h_aliases[i]; i ++)
++	  if (strcasecmp(ServerName, host->h_aliases[i]))
++	  {
++	    cupsdAddAlias(ServerAlias, host->h_aliases[i]);
++	    cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s",
++			    host->h_aliases[i]);
++	  }
 +      }
 +    }
++  }
 +
-+   /*
-+    * Make sure we have the base hostname added as an alias, too!
-+    */
++ /*
++  * Make sure we have the base hostname added as an alias, too!
++  */
++
++  if ((slash = strchr(ServerName, '.')) != NULL)
++  {
++    size_t n = slash - ServerName;
++    if (n > sizeof(temp) - 1)
++      n = sizeof(temp) - 1;
++    memcpy (temp, ServerName, n);
++    temp[n] = '\0';
++    cupsdAddAlias(ServerAlias, temp);
++    cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s", temp);
++  }
 +
-+    if ((slash = strchr(temp, '.')) != NULL)
-+    {
-+      *slash = '\0';
-+      cupsdAddAlias(ServerAlias, temp);
-+      cupsdLogMessage(CUPSD_LOG_DEBUG, "Added auto ServerAlias %s", temp);
-+    }
-   }
- 
    for (slash = ServerName; isdigit(*slash & 255) || *slash == '.'; slash ++);
-@@ -3278,6 +3369,13 @@ read_configuration(cups_file_t *fp)	/* I
+ 
+   ServerNameIsIP = !*slash;
+@@ -3278,6 +3373,13 @@ read_configuration(cups_file_t *fp)	/* I
  	    break;
        }
      }
@@ -477,8 +482,8 @@
      {
       /*
 diff -up cups-1.4b2-svn8404/scheduler/conf.h.CVE-2009-0164 cups-1.4b2-svn8404/scheduler/conf.h
---- cups-1.4b2-svn8404/scheduler/conf.h.CVE-2009-0164	2009-04-17 16:47:18.000000000 +0100
-+++ cups-1.4b2-svn8404/scheduler/conf.h	2009-04-17 16:47:18.000000000 +0100
+--- cups-1.4b2-svn8404/scheduler/conf.h.CVE-2009-0164	2009-04-26 13:22:11.000000000 +0100
++++ cups-1.4b2-svn8404/scheduler/conf.h	2009-04-26 13:22:11.000000000 +0100
 @@ -82,6 +82,17 @@ typedef enum
  
  
@@ -520,8 +525,8 @@
  #ifdef HAVE_GSSAPI
  extern int	cupsdLogGSSMessage(int level, int major_status,
 diff -up cups-1.4b2-svn8404/scheduler/dirsvc.c.CVE-2009-0164 cups-1.4b2-svn8404/scheduler/dirsvc.c
---- cups-1.4b2-svn8404/scheduler/dirsvc.c.CVE-2009-0164	2009-04-17 16:47:18.000000000 +0100
-+++ cups-1.4b2-svn8404/scheduler/dirsvc.c	2009-04-17 16:47:18.000000000 +0100
+--- cups-1.4b2-svn8404/scheduler/dirsvc.c.CVE-2009-0164	2009-04-26 13:22:11.000000000 +0100
++++ cups-1.4b2-svn8404/scheduler/dirsvc.c	2009-04-26 13:22:11.000000000 +0100
 @@ -38,6 +38,7 @@
   *   cupsdUpdateLDAPBrowse()    - Scan for new printers via LDAP...
   *   cupsdUpdateSLPBrowse()     - Get browsing information via SLP.
@@ -582,7 +587,7 @@
   */
 diff -up cups-1.4b2-svn8404/scheduler/dirsvc.h.CVE-2009-0164 cups-1.4b2-svn8404/scheduler/dirsvc.h
 --- cups-1.4b2-svn8404/scheduler/dirsvc.h.CVE-2009-0164	2009-02-17 17:45:27.000000000 +0000
-+++ cups-1.4b2-svn8404/scheduler/dirsvc.h	2009-04-17 16:47:18.000000000 +0100
++++ cups-1.4b2-svn8404/scheduler/dirsvc.h	2009-04-26 13:22:11.000000000 +0100
 @@ -4,7 +4,7 @@
   *   Directory services definitions for the Common UNIX Printing System
   *   (CUPS) scheduler.
@@ -603,7 +608,7 @@
  VAR cups_array_t	*DNSSDPrinters	VALUE(NULL);
 diff -up cups-1.4b2-svn8404/scheduler/network.c.CVE-2009-0164 cups-1.4b2-svn8404/scheduler/network.c
 --- cups-1.4b2-svn8404/scheduler/network.c.CVE-2009-0164	2009-02-05 10:57:28.000000000 +0000
-+++ cups-1.4b2-svn8404/scheduler/network.c	2009-04-17 16:47:18.000000000 +0100
++++ cups-1.4b2-svn8404/scheduler/network.c	2009-04-26 13:22:11.000000000 +0100
 @@ -101,6 +101,7 @@ cupsdNetIFUpdate(void)
    struct ifaddrs	*addrs,		/* Interface address list */
  			*addr;		/* Current interface address */
@@ -633,7 +638,7 @@
      if (addr->ifa_addr->sa_family == AF_INET)
 diff -up cups-1.4b2-svn8404/scheduler/network.h.CVE-2009-0164 cups-1.4b2-svn8404/scheduler/network.h
 --- cups-1.4b2-svn8404/scheduler/network.h.CVE-2009-0164	2008-12-03 15:39:53.000000000 +0000
-+++ cups-1.4b2-svn8404/scheduler/network.h	2009-04-17 16:47:18.000000000 +0100
++++ cups-1.4b2-svn8404/scheduler/network.h	2009-04-26 13:22:11.000000000 +0100
 @@ -4,7 +4,7 @@
   *   Network interface definitions for the Common UNIX Printing System
   *   (CUPS) scheduler.


Index: cups.spec
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/cups.spec,v
retrieving revision 1.471
retrieving revision 1.472
diff -u -r1.471 -r1.472
--- cups.spec	21 Apr 2009 15:53:53 -0000	1.471
+++ cups.spec	26 Apr 2009 12:55:28 -0000	1.472
@@ -8,7 +8,7 @@
 Summary: Common Unix Printing System
 Name: cups
 Version: 1.4
-Release: 0.%{pre}.14%{?dist}
+Release: 0.%{pre}.15%{?dist}
 License: GPLv2
 Group: System Environment/Daemons
 Source: ftp://ftp.easysw.com/pub/cups/test//cups-%{version}%{?pre}%{?svn}-source.tar.bz2
@@ -478,7 +478,9 @@
 %{_libdir}/php/modules/*.so
 
 %changelog
-* Tue Apr 21 2009 Tim Waugh <twaugh at redhat.com>
+* Sun Apr 26 2009 Tim Waugh <twaugh at redhat.com> 1:1.4-0.b2.15
+- Accept "Host: ::1" (bug #497393).
+- Accept Host: fields set to the ServerName value (bug #497301).
 - Specify that we want poppler's pdftops (not ghostscript) for the
   pdftops wrapper when calling configure.
 




More information about the scm-commits mailing list