[cups/f15] 1.4.7.

Jiří Popelka jpopelka at fedoraproject.org
Tue Jun 28 10:25:29 UTC 2011


commit 993cfb6a8aee335ed9cd00e917d217f2b184fdb6
Author: Jiri Popelka <jpopelka at redhat.com>
Date:   Tue Jun 28 12:12:17 2011 +0200

    1.4.7.

 cups-autotype-crash.patch    |   15 ---
 cups-avahi.patch             |  124 ++++++++++----------
 cups-hostnamelookups.patch   |   24 ----
 cups-job-state-changed.patch |   12 --
 cups-lspp.patch              |  263 +++++++++++++++++++++++-------------------
 cups-serverbin-compat.patch  |   76 ++++++------
 cups-snmp-quirks.patch       |   38 +++---
 cups-str3754.patch           |   11 --
 cups.spec                    |   70 +++++------
 9 files changed, 297 insertions(+), 336 deletions(-)
---
diff --git a/cups-avahi.patch b/cups-avahi.patch
index 031eb84..072f889 100644
--- a/cups-avahi.patch
+++ b/cups-avahi.patch
@@ -1,6 +1,6 @@
-diff -up cups-1.4.6/backend/dnssd.c.avahi cups-1.4.6/backend/dnssd.c
---- cups-1.4.6/backend/dnssd.c.avahi	2011-01-25 13:26:16.607114570 +0000
-+++ cups-1.4.6/backend/dnssd.c	2011-01-25 13:26:16.633115058 +0000
+diff -up cups-1.4.7/backend/dnssd.c.avahi cups-1.4.7/backend/dnssd.c
+--- cups-1.4.7/backend/dnssd.c.avahi	2011-06-28 11:55:27.024868568 +0200
++++ cups-1.4.7/backend/dnssd.c	2011-06-28 11:55:27.033868442 +0200
 @@ -15,14 +15,21 @@
   *
   * Contents:
@@ -824,10 +824,10 @@ diff -up cups-1.4.6/backend/dnssd.c.avahi cups-1.4.6/backend/dnssd.c
  /*
   * 'sigterm_handler()' - Handle termination signals...
   */
-diff -up cups-1.4.6/config.h.in.avahi cups-1.4.6/config.h.in
---- cups-1.4.6/config.h.in.avahi	2010-08-13 05:11:46.000000000 +0100
-+++ cups-1.4.6/config.h.in	2011-01-25 13:26:16.635115097 +0000
-@@ -344,6 +344,13 @@
+diff -up cups-1.4.7/config.h.in.avahi cups-1.4.7/config.h.in
+--- cups-1.4.7/config.h.in.avahi	2011-01-10 08:39:37.000000000 +0100
++++ cups-1.4.7/config.h.in	2011-06-28 11:55:27.033868442 +0200
+@@ -345,6 +345,13 @@
  
  
  /*
@@ -841,9 +841,9 @@ diff -up cups-1.4.6/config.h.in.avahi cups-1.4.6/config.h.in
   * Do we have <sys/ioctl.h>?
   */
  
-diff -up cups-1.4.6/config-scripts/cups-dnssd.m4.avahi cups-1.4.6/config-scripts/cups-dnssd.m4
---- cups-1.4.6/config-scripts/cups-dnssd.m4.avahi	2009-08-28 23:54:34.000000000 +0100
-+++ cups-1.4.6/config-scripts/cups-dnssd.m4	2011-01-25 13:26:16.636115116 +0000
+diff -up cups-1.4.7/config-scripts/cups-dnssd.m4.avahi cups-1.4.7/config-scripts/cups-dnssd.m4
+--- cups-1.4.7/config-scripts/cups-dnssd.m4.avahi	2009-08-29 00:54:34.000000000 +0200
++++ cups-1.4.7/config-scripts/cups-dnssd.m4	2011-06-28 11:55:27.034868428 +0200
 @@ -27,6 +27,21 @@ AC_ARG_WITH(dnssd-includes, [  --with-dn
  DNSSDLIBS=""
  DNSSD_BACKEND=""
@@ -866,9 +866,9 @@ diff -up cups-1.4.6/config-scripts/cups-dnssd.m4.avahi cups-1.4.6/config-scripts
  if test x$enable_dnssd != xno; then
  	AC_CHECK_HEADER(dns_sd.h, [
  		case "$uname" in
-diff -up cups-1.4.6/cups/http-support.c.avahi cups-1.4.6/cups/http-support.c
---- cups-1.4.6/cups/http-support.c.avahi	2010-10-01 23:40:38.000000000 +0100
-+++ cups-1.4.6/cups/http-support.c	2011-01-25 13:26:16.638115152 +0000
+diff -up cups-1.4.7/cups/http-support.c.avahi cups-1.4.7/cups/http-support.c
+--- cups-1.4.7/cups/http-support.c.avahi	2010-10-02 00:40:38.000000000 +0200
++++ cups-1.4.7/cups/http-support.c	2011-06-28 11:55:27.035868414 +0200
 @@ -41,6 +41,10 @@
   *   http_copy_decode()   - Copy and decode a URI.
   *   http_copy_encode()   - Copy and encode a URI.
@@ -1136,9 +1136,9 @@ diff -up cups-1.4.6/cups/http-support.c.avahi cups-1.4.6/cups/http-support.c
  /*
   * End of "$Id: http-support.c 9322 2010-10-01 22:40:38Z mike $".
   */
-diff -up cups-1.4.6/scheduler/avahi.c.avahi cups-1.4.6/scheduler/avahi.c
---- cups-1.4.6/scheduler/avahi.c.avahi	2011-01-25 13:26:16.640115190 +0000
-+++ cups-1.4.6/scheduler/avahi.c	2011-01-25 13:26:16.640115190 +0000
+diff -up cups-1.4.7/scheduler/avahi.c.avahi cups-1.4.7/scheduler/avahi.c
+--- cups-1.4.7/scheduler/avahi.c.avahi	2011-06-28 11:55:27.036868400 +0200
++++ cups-1.4.7/scheduler/avahi.c	2011-06-28 11:55:27.036868400 +0200
 @@ -0,0 +1,445 @@
 +/*
 + * "$Id$"
@@ -1585,9 +1585,9 @@ diff -up cups-1.4.6/scheduler/avahi.c.avahi cups-1.4.6/scheduler/avahi.c
 +/*
 + * End of "$Id$".
 + */
-diff -up cups-1.4.6/scheduler/avahi.h.avahi cups-1.4.6/scheduler/avahi.h
---- cups-1.4.6/scheduler/avahi.h.avahi	2011-01-25 13:26:16.640115190 +0000
-+++ cups-1.4.6/scheduler/avahi.h	2011-01-25 13:26:16.641115209 +0000
+diff -up cups-1.4.7/scheduler/avahi.h.avahi cups-1.4.7/scheduler/avahi.h
+--- cups-1.4.7/scheduler/avahi.h.avahi	2011-06-28 11:55:27.037868386 +0200
++++ cups-1.4.7/scheduler/avahi.h	2011-06-28 11:55:27.037868386 +0200
 @@ -0,0 +1,49 @@
 +/*
 + * "$Id$"
@@ -1638,9 +1638,9 @@ diff -up cups-1.4.6/scheduler/avahi.h.avahi cups-1.4.6/scheduler/avahi.h
 +/*
 + * End of "$Id$".
 + */
-diff -up cups-1.4.6/scheduler/cupsd.h.avahi cups-1.4.6/scheduler/cupsd.h
---- cups-1.4.6/scheduler/cupsd.h.avahi	2010-09-21 23:34:57.000000000 +0100
-+++ cups-1.4.6/scheduler/cupsd.h	2011-01-25 13:26:16.641115209 +0000
+diff -up cups-1.4.7/scheduler/cupsd.h.avahi cups-1.4.7/scheduler/cupsd.h
+--- cups-1.4.7/scheduler/cupsd.h.avahi	2011-01-11 08:05:58.000000000 +0100
++++ cups-1.4.7/scheduler/cupsd.h	2011-06-28 11:55:27.037868386 +0200
 @@ -147,6 +147,15 @@ extern const char *cups_hstrerror(int);
  
  typedef void (*cupsd_selfunc_t)(void *data);
@@ -1667,7 +1667,7 @@ diff -up cups-1.4.6/scheduler/cupsd.h.avahi cups-1.4.6/scheduler/cupsd.h
  
  
  
-@@ -240,6 +252,18 @@ extern void	cupsdRemoveSelect(int fd);
+@@ -241,6 +253,18 @@ extern void	cupsdRemoveSelect(int fd);
  extern void	cupsdStartSelect(void);
  extern void	cupsdStopSelect(void);
  
@@ -1686,9 +1686,9 @@ diff -up cups-1.4.6/scheduler/cupsd.h.avahi cups-1.4.6/scheduler/cupsd.h
  extern int	cupsdRemoveFile(const char *filename);
  
  
-diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
---- cups-1.4.6/scheduler/dirsvc.c.avahi	2011-01-25 13:26:16.534113189 +0000
-+++ cups-1.4.6/scheduler/dirsvc.c	2011-01-25 17:39:15.062315327 +0000
+diff -up cups-1.4.7/scheduler/dirsvc.c.avahi cups-1.4.7/scheduler/dirsvc.c
+--- cups-1.4.7/scheduler/dirsvc.c.avahi	2011-06-28 11:55:26.971869301 +0200
++++ cups-1.4.7/scheduler/dirsvc.c	2011-06-28 12:04:15.066420076 +0200
 @@ -27,6 +27,7 @@
   *   ldap_connect()             - Start new LDAP connection
   *   ldap_reconnect()           - Reconnect to LDAP Server
@@ -2159,7 +2159,7 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
  
   /*
    * Remove the printer from the array of DNS-SD printers, then clear the
-@@ -2526,133 +2493,46 @@ dnssdDeregisterPrinter(
+@@ -2526,136 +2493,46 @@ dnssdDeregisterPrinter(
  
  
  /*
@@ -2205,12 +2205,14 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
 +  if (!DNSSDRef)
 +    return;
  
+-  if (count <= 0)
+-    return (NULL);
++  cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name,
++                  !p->ipp_ref ? "new" : "update");
+ 
 -  for (length = i = 0; i < count; i++)
 -    length += 1 + strlen(keyvalue[i][0]) + 
 -	      (keyvalue[i][1] ? 1 + strlen(keyvalue[i][1]) : 0);
-+  cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name,
-+                  !p->ipp_ref ? "new" : "update");
-+
 +#endif /* HAVE_DNSSD */
 +#ifdef HAVE_AVAHI
 +  cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name,
@@ -2325,7 +2327,7 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
    */
  
    if (!p->shared)
-@@ -2694,6 +2574,7 @@ dnssdRegisterPrinter(cupsd_printer_t *p)
+@@ -2697,6 +2574,7 @@ dnssdRegisterPrinter(cupsd_printer_t *p)
    * Register IPP and (optionally) LPD...
    */
  
@@ -2333,7 +2335,7 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
    ipp_len = 0;				/* anti-compiler-warning-code */
    ipp_txt = dnssdBuildTxtRecord(&ipp_len, p, 0);
  
-@@ -2860,6 +2741,146 @@ dnssdRegisterPrinter(cupsd_printer_t *p)
+@@ -2863,6 +2741,146 @@ dnssdRegisterPrinter(cupsd_printer_t *p)
      if (printer_txt)
        free(printer_txt);
    }
@@ -2480,7 +2482,7 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
  }
  
  
-@@ -2872,6 +2893,10 @@ dnssdStop(void)
+@@ -2875,6 +2893,10 @@ dnssdStop(void)
  {
    cupsd_printer_t	*p;		/* Current printer */
  
@@ -2491,7 +2493,7 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
  
   /*
    * De-register the individual printers
-@@ -2882,6 +2907,7 @@ dnssdStop(void)
+@@ -2885,6 +2907,7 @@ dnssdStop(void)
         p = (cupsd_printer_t *)cupsArrayNext(Printers))
      dnssdDeregisterPrinter(p);
  
@@ -2499,7 +2501,7 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
   /*
    * Shutdown the rest of the service refs...
    */
-@@ -2902,6 +2928,7 @@ dnssdStop(void)
+@@ -2905,6 +2928,7 @@ dnssdStop(void)
  
    DNSServiceRefDeallocate(DNSSDRef);
    DNSSDRef = NULL;
@@ -2507,7 +2509,7 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
  
    cupsArrayDelete(DNSSDPrinters);
    DNSSDPrinters = NULL;
-@@ -2911,6 +2938,272 @@ dnssdStop(void)
+@@ -2914,6 +2938,272 @@ dnssdStop(void)
  
  
  /*
@@ -2780,7 +2782,7 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
   * 'dnssdUpdate()' - Handle DNS-SD queries.
   */
  
-@@ -2931,6 +3224,146 @@ dnssdUpdate(void)
+@@ -2934,6 +3224,146 @@ dnssdUpdate(void)
  #endif /* HAVE_DNSSD */
  
  
@@ -2927,9 +2929,9 @@ diff -up cups-1.4.6/scheduler/dirsvc.c.avahi cups-1.4.6/scheduler/dirsvc.c
  /*
   * 'get_auth_info_required()' - Get the auth-info-required value to advertise.
   */
-diff -up cups-1.4.6/scheduler/dirsvc.h.avahi cups-1.4.6/scheduler/dirsvc.h
---- cups-1.4.6/scheduler/dirsvc.h.avahi	2009-05-14 18:54:37.000000000 +0100
-+++ cups-1.4.6/scheduler/dirsvc.h	2011-01-25 17:39:15.063315332 +0000
+diff -up cups-1.4.7/scheduler/dirsvc.h.avahi cups-1.4.7/scheduler/dirsvc.h
+--- cups-1.4.7/scheduler/dirsvc.h.avahi	2009-05-14 19:54:37.000000000 +0200
++++ cups-1.4.7/scheduler/dirsvc.h	2011-06-28 11:55:27.042868318 +0200
 @@ -32,6 +32,10 @@
  #  endif /* HAVE_LDAP_SSL_H */
  #endif /* HAVE_LDAP */
@@ -3002,9 +3004,9 @@ diff -up cups-1.4.6/scheduler/dirsvc.h.avahi cups-1.4.6/scheduler/dirsvc.h
  #ifdef HAVE_LDAP
  extern void	cupsdUpdateLDAPBrowse(void);
  #endif /* HAVE_LDAP */
-diff -up cups-1.4.6/scheduler/main.c.avahi cups-1.4.6/scheduler/main.c
---- cups-1.4.6/scheduler/main.c.avahi	2011-01-25 13:26:16.487112302 +0000
-+++ cups-1.4.6/scheduler/main.c	2011-01-25 13:26:16.650115377 +0000
+diff -up cups-1.4.7/scheduler/main.c.avahi cups-1.4.7/scheduler/main.c
+--- cups-1.4.7/scheduler/main.c.avahi	2011-06-28 11:55:26.943869690 +0200
++++ cups-1.4.7/scheduler/main.c	2011-06-28 11:55:27.043868305 +0200
 @@ -135,6 +135,10 @@ main(int  argc,				/* I - Number of comm
    cupsd_listener_t	*lis;		/* Current listener */
    time_t		current_time,	/* Current time */
@@ -3110,9 +3112,9 @@ diff -up cups-1.4.6/scheduler/main.c.avahi cups-1.4.6/scheduler/main.c
   /*
    * Check whether we are accepting new connections...
    */
-diff -up cups-1.4.6/scheduler/Makefile.avahi cups-1.4.6/scheduler/Makefile
---- cups-1.4.6/scheduler/Makefile.avahi	2011-01-25 13:26:16.591114269 +0000
-+++ cups-1.4.6/scheduler/Makefile	2011-01-25 13:26:16.657115510 +0000
+diff -up cups-1.4.7/scheduler/Makefile.avahi cups-1.4.7/scheduler/Makefile
+--- cups-1.4.7/scheduler/Makefile.avahi	2011-06-28 11:55:27.007868803 +0200
++++ cups-1.4.7/scheduler/Makefile	2011-06-28 11:55:27.044868291 +0200
 @@ -17,6 +17,7 @@ include ../Makedefs
  
  CUPSDOBJS =	\
@@ -3131,10 +3133,10 @@ diff -up cups-1.4.6/scheduler/Makefile.avahi cups-1.4.6/scheduler/Makefile
  LIBOBJS =	\
  		filter.o \
  		mime.o \
-diff -up cups-1.4.6/scheduler/printers.c.avahi cups-1.4.6/scheduler/printers.c
---- cups-1.4.6/scheduler/printers.c.avahi	2011-01-25 13:26:16.628114966 +0000
-+++ cups-1.4.6/scheduler/printers.c	2011-01-25 13:26:16.659115546 +0000
-@@ -929,10 +929,10 @@ cupsdDeletePrinter(
+diff -up cups-1.4.7/scheduler/printers.c.avahi cups-1.4.7/scheduler/printers.c
+--- cups-1.4.7/scheduler/printers.c.avahi	2011-06-28 11:55:26.928869897 +0200
++++ cups-1.4.7/scheduler/printers.c	2011-06-28 11:55:27.046868263 +0200
+@@ -932,10 +932,10 @@ cupsdDeletePrinter(
    cupsdClearString(&p->alert);
    cupsdClearString(&p->alert_description);
  
@@ -3147,7 +3149,7 @@ diff -up cups-1.4.6/scheduler/printers.c.avahi cups-1.4.6/scheduler/printers.c
  
    cupsArrayDelete(p->filetypes);
  
-@@ -1301,9 +1301,9 @@ cupsdLoadAllPrinters(void)
+@@ -1304,9 +1304,9 @@ cupsdLoadAllPrinters(void)
      {
        if (value)
        {
@@ -3159,7 +3161,7 @@ diff -up cups-1.4.6/scheduler/printers.c.avahi cups-1.4.6/scheduler/printers.c
        }
        else
  	cupsdLogMessage(CUPSD_LOG_ERROR,
-@@ -1717,10 +1717,10 @@ cupsdSaveAllPrinters(void)
+@@ -1720,10 +1720,10 @@ cupsdSaveAllPrinters(void)
  
      cupsFilePrintf(fp, "Type %d\n", printer->type);
  
@@ -3172,7 +3174,7 @@ diff -up cups-1.4.6/scheduler/printers.c.avahi cups-1.4.6/scheduler/printers.c
  
      for (ptr = (char *)cupsArrayFirst(printer->filters);
           ptr;
-@@ -3860,7 +3860,7 @@ add_printer_formats(cupsd_printer_t *p)	
+@@ -3858,7 +3858,7 @@ add_printer_formats(cupsd_printer_t *p)	
      attr->values[i].string.text = _cupsStrAlloc(mimetype);
    }
  
@@ -3181,7 +3183,7 @@ diff -up cups-1.4.6/scheduler/printers.c.avahi cups-1.4.6/scheduler/printers.c
    {
      char		pdl[1024];	/* Buffer to build pdl list */
      mime_filter_t	*filter;	/* MIME filter looping var */
-@@ -3914,7 +3914,7 @@ add_printer_formats(cupsd_printer_t *p)	
+@@ -3912,7 +3912,7 @@ add_printer_formats(cupsd_printer_t *p)	
  
      cupsdSetString(&p->pdl, pdl);
    }
@@ -3190,7 +3192,7 @@ diff -up cups-1.4.6/scheduler/printers.c.avahi cups-1.4.6/scheduler/printers.c
  }
  
  
-@@ -4951,9 +4951,9 @@ load_ppd(cupsd_printer_t *p)		/* I - Pri
+@@ -4979,9 +4979,9 @@ load_ppd(cupsd_printer_t *p)		/* I - Pri
  	attr->values[i].string.text = _cupsStrAlloc("bcp");
      }
  
@@ -3202,9 +3204,9 @@ diff -up cups-1.4.6/scheduler/printers.c.avahi cups-1.4.6/scheduler/printers.c
  
      if (ppdFindAttr(ppd, "APRemoteQueueID", NULL))
        p->type |= CUPS_PRINTER_REMOTE;
-diff -up cups-1.4.6/scheduler/printers.h.avahi cups-1.4.6/scheduler/printers.h
---- cups-1.4.6/scheduler/printers.h.avahi	2010-03-30 23:07:33.000000000 +0100
-+++ cups-1.4.6/scheduler/printers.h	2011-01-25 13:26:16.665115661 +0000
+diff -up cups-1.4.7/scheduler/printers.h.avahi cups-1.4.7/scheduler/printers.h
+--- cups-1.4.7/scheduler/printers.h.avahi	2010-03-31 00:07:33.000000000 +0200
++++ cups-1.4.7/scheduler/printers.h	2011-06-28 11:55:27.048868235 +0200
 @@ -16,6 +16,9 @@
  #ifdef HAVE_DNSSD
  #  include <dns_sd.h>
@@ -3244,9 +3246,9 @@ diff -up cups-1.4.6/scheduler/printers.h.avahi cups-1.4.6/scheduler/printers.h
  } cupsd_printer_t;
  
  
-diff -up cups-1.4.6/scheduler/timeout.c.avahi cups-1.4.6/scheduler/timeout.c
---- cups-1.4.6/scheduler/timeout.c.avahi	2011-01-25 13:26:16.668115715 +0000
-+++ cups-1.4.6/scheduler/timeout.c	2011-01-25 13:26:16.668115715 +0000
+diff -up cups-1.4.7/scheduler/timeout.c.avahi cups-1.4.7/scheduler/timeout.c
+--- cups-1.4.7/scheduler/timeout.c.avahi	2011-06-28 11:55:27.049868221 +0200
++++ cups-1.4.7/scheduler/timeout.c	2011-06-28 11:55:27.049868221 +0200
 @@ -0,0 +1,195 @@
 +/*
 + * "$Id$"
diff --git a/cups-lspp.patch b/cups-lspp.patch
index 5ab87bd..f8a3b22 100644
--- a/cups-lspp.patch
+++ b/cups-lspp.patch
@@ -1,7 +1,7 @@
-diff -urNp cups-1.4.6.old/config.h.in cups-1.4.6/config.h.in
---- cups-1.4.6.old/config.h.in	2011-03-07 13:34:52.585876279 +0000
-+++ cups-1.4.6/config.h.in	2011-03-07 13:35:07.138875913 +0000
-@@ -672,6 +672,12 @@
+diff -up cups-1.4.7/config.h.in.lspp cups-1.4.7/config.h.in
+--- cups-1.4.7/config.h.in.lspp	2011-06-28 12:05:58.524936215 +0200
++++ cups-1.4.7/config.h.in	2011-06-28 12:05:58.566935614 +0200
+@@ -673,6 +673,12 @@
  #undef HAVE_SYS_STATVFS_H
  #undef HAVE_SYS_VFS_H
  
@@ -14,9 +14,9 @@ diff -urNp cups-1.4.6.old/config.h.in cups-1.4.6/config.h.in
  
  #endif /* !_CUPS_CONFIG_H_ */
  
-diff -urNp cups-1.4.6.old/config-scripts/cups-lspp.m4 cups-1.4.6/config-scripts/cups-lspp.m4
---- cups-1.4.6.old/config-scripts/cups-lspp.m4	1970-01-01 01:00:00.000000000 +0100
-+++ cups-1.4.6/config-scripts/cups-lspp.m4	2011-03-07 13:35:07.139875938 +0000
+diff -up cups-1.4.7/config-scripts/cups-lspp.m4.lspp cups-1.4.7/config-scripts/cups-lspp.m4
+--- cups-1.4.7/config-scripts/cups-lspp.m4.lspp	2011-06-28 12:05:58.566935614 +0200
++++ cups-1.4.7/config-scripts/cups-lspp.m4	2011-06-28 12:05:58.566935614 +0200
 @@ -0,0 +1,36 @@
 +dnl
 +dnl   LSPP code for the Common UNIX Printing System (CUPS).
@@ -54,9 +54,9 @@ diff -urNp cups-1.4.6.old/config-scripts/cups-lspp.m4 cups-1.4.6/config-scripts/
 +            ;;
 +    esac
 +fi
-diff -urNp cups-1.4.6.old/configure.in cups-1.4.6/configure.in
---- cups-1.4.6.old/configure.in	2011-03-07 13:34:52.521876279 +0000
-+++ cups-1.4.6/configure.in	2011-03-07 13:35:07.139875938 +0000
+diff -up cups-1.4.7/configure.in.lspp cups-1.4.7/configure.in
+--- cups-1.4.7/configure.in.lspp	2010-06-22 23:42:44.000000000 +0200
++++ cups-1.4.7/configure.in	2011-06-28 12:05:58.567935599 +0200
 @@ -42,6 +42,8 @@ sinclude(config-scripts/cups-pap.m4)
  sinclude(config-scripts/cups-pdf.m4)
  sinclude(config-scripts/cups-scripting.m4)
@@ -66,9 +66,9 @@ diff -urNp cups-1.4.6.old/configure.in cups-1.4.6/configure.in
  INSTALL_LANGUAGES=""
  UNINSTALL_LANGUAGES=""
  LANGFILES=""
-diff -urNp cups-1.4.6.old/cups/cups.h cups-1.4.6/cups/cups.h
---- cups-1.4.6.old/cups/cups.h	2011-03-07 13:34:53.042876279 +0000
-+++ cups-1.4.6/cups/cups.h	2011-03-07 13:35:07.140875960 +0000
+diff -up cups-1.4.7/cups/cups.h.lspp cups-1.4.7/cups/cups.h
+--- cups-1.4.7/cups/cups.h.lspp	2011-01-06 23:48:42.000000000 +0100
++++ cups-1.4.7/cups/cups.h	2011-06-28 12:05:58.567935599 +0200
 @@ -15,6 +15,9 @@
   *   This file is subject to the Apple OS-Developed Software exception.
   */
@@ -92,9 +92,9 @@ diff -urNp cups-1.4.6.old/cups/cups.h cups-1.4.6/cups/cups.h
  /*
   * Types and structures...
   */
-diff -urNp cups-1.4.6.old/data/Makefile cups-1.4.6/data/Makefile
---- cups-1.4.6.old/data/Makefile	2011-03-07 13:34:52.596876279 +0000
-+++ cups-1.4.6/data/Makefile	2011-03-07 13:35:07.140875960 +0000
+diff -up cups-1.4.7/data/Makefile.lspp cups-1.4.7/data/Makefile
+--- cups-1.4.7/data/Makefile.lspp	2008-11-12 20:30:57.000000000 +0100
++++ cups-1.4.7/data/Makefile	2011-06-28 12:05:58.568935584 +0200
 @@ -25,7 +25,10 @@ BANNERS	=	\
  		secret \
  		standard \
@@ -107,9 +107,9 @@ diff -urNp cups-1.4.6.old/data/Makefile cups-1.4.6/data/Makefile
  
  CHARMAPS =	\
  		euc-cn.txt \
-diff -urNp cups-1.4.6.old/data/mls cups-1.4.6/data/mls
---- cups-1.4.6.old/data/mls	1970-01-01 01:00:00.000000000 +0100
-+++ cups-1.4.6/data/mls	2011-03-07 13:35:07.141875981 +0000
+diff -up cups-1.4.7/data/mls.lspp cups-1.4.7/data/mls
+--- cups-1.4.7/data/mls.lspp	2011-06-28 12:05:58.569935569 +0200
++++ cups-1.4.7/data/mls	2011-06-28 12:05:58.569935569 +0200
 @@ -0,0 +1,261 @@
 +%!PS-Adobe-3.0
 +%%BoundingBox: 0 0 612 792
@@ -372,9 +372,9 @@ diff -urNp cups-1.4.6.old/data/mls cups-1.4.6/data/mls
 +% End of "$Id: mls_template,v 1.1 2005/06/27 18:44:46 colmo Exp $".
 +%
 +%%EOF
-diff -urNp cups-1.4.6.old/data/selinux cups-1.4.6/data/selinux
---- cups-1.4.6.old/data/selinux	1970-01-01 01:00:00.000000000 +0100
-+++ cups-1.4.6/data/selinux	2011-03-07 13:35:07.141875981 +0000
+diff -up cups-1.4.7/data/selinux.lspp cups-1.4.7/data/selinux
+--- cups-1.4.7/data/selinux.lspp	2011-06-28 12:05:58.576935469 +0200
++++ cups-1.4.7/data/selinux	2011-06-28 12:05:58.576935469 +0200
 @@ -0,0 +1,261 @@
 +%!PS-Adobe-3.0
 +%%BoundingBox: 0 0 612 792
@@ -637,9 +637,9 @@ diff -urNp cups-1.4.6.old/data/selinux cups-1.4.6/data/selinux
 +% End of "$Id: mls_template,v 1.1 2005/06/27 18:44:46 colmo Exp $".
 +%
 +%%EOF
-diff -urNp cups-1.4.6.old/data/te cups-1.4.6/data/te
---- cups-1.4.6.old/data/te	1970-01-01 01:00:00.000000000 +0100
-+++ cups-1.4.6/data/te	2011-03-07 13:35:07.142875996 +0000
+diff -up cups-1.4.7/data/te.lspp cups-1.4.7/data/te
+--- cups-1.4.7/data/te.lspp	2011-06-28 12:05:58.576935469 +0200
++++ cups-1.4.7/data/te	2011-06-28 12:05:58.576935469 +0200
 @@ -0,0 +1,261 @@
 +%!PS-Adobe-3.0
 +%%BoundingBox: 0 0 612 792
@@ -902,9 +902,9 @@ diff -urNp cups-1.4.6.old/data/te cups-1.4.6/data/te
 +% End of "$Id: mls_template,v 1.1 2005/06/27 18:44:46 colmo Exp $".
 +%
 +%%EOF
-diff -urNp cups-1.4.6.old/filter/common.c cups-1.4.6/filter/common.c
---- cups-1.4.6.old/filter/common.c	2011-03-07 13:34:53.361876279 +0000
-+++ cups-1.4.6/filter/common.c	2011-03-07 13:35:07.143876025 +0000
+diff -up cups-1.4.7/filter/common.c.lspp cups-1.4.7/filter/common.c
+--- cups-1.4.7/filter/common.c.lspp	2007-07-11 23:46:42.000000000 +0200
++++ cups-1.4.7/filter/common.c	2011-06-28 12:05:58.580935412 +0200
 @@ -30,6 +30,12 @@
   * Include necessary headers...
   */
@@ -957,7 +957,7 @@ diff -urNp cups-1.4.6.old/filter/common.c cups-1.4.6/filter/common.c
 +    {
 +      lines = 1 + (int)(label_len / max_width);
 +      line_len = (int)(label_len / lines);
-+      wrapped_label = malloc(sizeof(*wrapped_label) * lines);
++      wrapped_label = malloc(sizeof(wrapped_label) * lines);
 +      label_index = i = n = 0;
 +      while (classification[label_index])
 +      {
@@ -989,7 +989,7 @@ diff -urNp cups-1.4.6.old/filter/common.c cups-1.4.6/filter/common.c
 +    else
 +    {
 +      lines = 1;
-+      wrapped_label = malloc(sizeof(*wrapped_label));
++      wrapped_label = malloc(sizeof(wrapped_label));
 +      wrapped_label[0] = (char*)classification;
 +    }
 +
@@ -1073,10 +1073,10 @@ diff -urNp cups-1.4.6.old/filter/common.c cups-1.4.6/filter/common.c
  
  
  /*
-diff -urNp cups-1.4.6.old/filter/pstops.c cups-1.4.6/filter/pstops.c
---- cups-1.4.6.old/filter/pstops.c	2011-03-07 13:34:53.372876279 +0000
-+++ cups-1.4.6/filter/pstops.c	2011-03-07 13:35:07.144876057 +0000
-@@ -3326,6 +3326,18 @@ write_label_prolog(pstops_doc_t *doc,	/*
+diff -up cups-1.4.7/filter/pstops.c.lspp cups-1.4.7/filter/pstops.c
+--- cups-1.4.7/filter/pstops.c.lspp	2011-06-28 12:05:58.442937394 +0200
++++ cups-1.4.7/filter/pstops.c	2011-06-28 12:05:58.582935382 +0200
+@@ -3330,6 +3330,18 @@ write_label_prolog(pstops_doc_t *doc,	/*
  {
    const char	*classification;	/* CLASSIFICATION environment variable */
    const char	*ptr;			/* Temporary string pointer */
@@ -1095,7 +1095,7 @@ diff -urNp cups-1.4.6.old/filter/pstops.c cups-1.4.6/filter/pstops.c
  
  
   /*
-@@ -3348,6 +3360,124 @@ write_label_prolog(pstops_doc_t *doc,	/*
+@@ -3352,6 +3364,124 @@ write_label_prolog(pstops_doc_t *doc,	/*
      return;
    }
  
@@ -1115,7 +1115,7 @@ diff -urNp cups-1.4.6.old/filter/pstops.c cups-1.4.6/filter/pstops.c
 +    {
 +      lines = 1 + (int)(label_len / max_width);
 +      line_len = (int)(label_len / lines);
-+      wrapped_label = malloc(sizeof(*wrapped_label) * lines);
++      wrapped_label = malloc(sizeof(wrapped_label) * lines);
 +      label_index = i = n = 0;
 +      while (classification[label_index])
 +      {
@@ -1147,7 +1147,7 @@ diff -urNp cups-1.4.6.old/filter/pstops.c cups-1.4.6/filter/pstops.c
 +    else
 +    {
 +      lines = 1;
-+      wrapped_label = malloc(sizeof(*wrapped_label));
++      wrapped_label = malloc(sizeof(wrapped_label));
 +      wrapped_label[0] = (char*)classification;
 +    }
 +
@@ -1220,7 +1220,7 @@ diff -urNp cups-1.4.6.old/filter/pstops.c cups-1.4.6/filter/pstops.c
   /*
    * Set the classification + page label string...
    */
-@@ -3426,7 +3556,10 @@ write_label_prolog(pstops_doc_t *doc,	/*
+@@ -3430,7 +3560,10 @@ write_label_prolog(pstops_doc_t *doc,	/*
    doc_printf(doc, "  %.0f moveto ESPpl show\n", top - 14.0);
    doc_puts(doc, "pop\n");
    doc_puts(doc, "}bind put\n");
@@ -1231,9 +1231,9 @@ diff -urNp cups-1.4.6.old/filter/pstops.c cups-1.4.6/filter/pstops.c
  
  
  /*
-diff -urNp cups-1.4.6.old/Makedefs.in cups-1.4.6/Makedefs.in
---- cups-1.4.6.old/Makedefs.in	2011-03-07 13:34:53.424876279 +0000
-+++ cups-1.4.6/Makedefs.in	2011-03-07 13:35:07.145876086 +0000
+diff -up cups-1.4.7/Makedefs.in.lspp cups-1.4.7/Makedefs.in
+--- cups-1.4.7/Makedefs.in.lspp	2011-06-28 12:05:58.507936462 +0200
++++ cups-1.4.7/Makedefs.in	2011-06-28 12:05:58.583935367 +0200
 @@ -146,7 +146,7 @@ LIBCUPSORDER	=	@LIBCUPSORDER@
  LIBCUPSIMAGEORDER =	@LIBCUPSIMAGEORDER@
  LINKCUPS	=	@LINKCUPS@ $(SSLLIBS) $(DNSSDLIBS)
@@ -1243,9 +1243,18 @@ diff -urNp cups-1.4.6.old/Makedefs.in cups-1.4.6/Makedefs.in
  OPTIM		=	@OPTIM@
  OPTIONS		=
  PAMLIBS		=	@PAMLIBS@
-diff -urNp cups-1.4.6.old/scheduler/client.c cups-1.4.6/scheduler/client.c
---- cups-1.4.6.old/scheduler/client.c	2011-03-07 13:34:53.733876279 +0000
-+++ cups-1.4.6/scheduler/client.c	2011-03-07 13:35:07.150876188 +0000
+@@ -258,7 +258,7 @@ DBUSDIR		=	@DBUSDIR@
+ # Rules...
+ #
+ 
+-.SILENT:
++
+ .SUFFIXES:	.1 .1.gz .1m .1m.gz .3 .3.gz .5 .5.gz .7 .7.gz .8 .8.gz .a .c .cxx .h .man .o .32.o .64.o .gz
+ 
+ .c.o:
+diff -up cups-1.4.7/scheduler/client.c.lspp cups-1.4.7/scheduler/client.c
+--- cups-1.4.7/scheduler/client.c.lspp	2011-01-22 01:07:22.000000000 +0100
++++ cups-1.4.7/scheduler/client.c	2011-06-28 12:05:58.585935339 +0200
 @@ -44,6 +44,7 @@
   *   valid_host()           - Is the Host: field valid?
   *   write_file()           - Send a file via HTTP.
@@ -1261,8 +1270,8 @@ diff -urNp cups-1.4.6.old/scheduler/client.c cups-1.4.6/scheduler/client.c
 +#define _GNU_SOURCE
  #ifdef HAVE_CDSASSL
  #  include <Security/Security.h>
- #  include <Security/SecItem.h>
-@@ -90,6 +92,12 @@ extern const char *cssmErrorString(int e
+ #  ifdef HAVE_SECITEM_H
+@@ -92,6 +94,12 @@ extern const char *cssmErrorString(int e
  #  include <tcpd.h>
  #endif /* HAVE_TCPD_H */
  
@@ -1275,7 +1284,7 @@ diff -urNp cups-1.4.6.old/scheduler/client.c cups-1.4.6/scheduler/client.c
  
  /*
   * Local functions...
-@@ -391,6 +399,57 @@ cupsdAcceptClient(cupsd_listener_t *lis)
+@@ -393,6 +401,57 @@ cupsdAcceptClient(cupsd_listener_t *lis)
    }
  #endif /* HAVE_TCPD_H */
  
@@ -1333,7 +1342,7 @@ diff -urNp cups-1.4.6.old/scheduler/client.c cups-1.4.6/scheduler/client.c
  #ifdef AF_INET6
    if (con->http.hostaddr->addr.sa_family == AF_INET6)
      cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdAcceptClient: %d from %s:%d (IPv6)",
-@@ -781,6 +840,13 @@ cupsdReadClient(cupsd_client_t *con)	/* 
+@@ -783,6 +842,13 @@ cupsdReadClient(cupsd_client_t *con)	/* 
    mime_type_t		*type;		/* MIME type of file */
    cupsd_printer_t	*p;		/* Printer */
    static unsigned	request_id = 0;	/* Request ID for temp files */
@@ -1347,7 +1356,7 @@ diff -urNp cups-1.4.6.old/scheduler/client.c cups-1.4.6/scheduler/client.c
  
  
    status = HTTP_CONTINUE;
-@@ -2135,6 +2201,67 @@ cupsdReadClient(cupsd_client_t *con)	/* 
+@@ -2137,6 +2203,67 @@ cupsdReadClient(cupsd_client_t *con)	/* 
  	    fchmod(con->file, 0640);
  	    fchown(con->file, RunUser, Group);
              fcntl(con->file, F_SETFD, fcntl(con->file, F_GETFD) | FD_CLOEXEC);
@@ -1415,7 +1424,7 @@ diff -urNp cups-1.4.6.old/scheduler/client.c cups-1.4.6/scheduler/client.c
  	  }
  
  	  if (con->http.state != HTTP_POST_SEND)
-@@ -4641,6 +4768,50 @@ make_certificate(cupsd_client_t *con)	/*
+@@ -4647,6 +4774,50 @@ make_certificate(cupsd_client_t *con)	/*
  #endif /* HAVE_SSL */
  
  
@@ -1466,9 +1475,9 @@ diff -urNp cups-1.4.6.old/scheduler/client.c cups-1.4.6/scheduler/client.c
  /*
   * 'pipe_command()' - Pipe the output of a command to the remote client.
   */
-diff -urNp cups-1.4.6.old/scheduler/client.h cups-1.4.6/scheduler/client.h
---- cups-1.4.6.old/scheduler/client.h	2011-03-07 13:34:53.708876279 +0000
-+++ cups-1.4.6/scheduler/client.h	2011-03-07 13:35:07.155876256 +0000
+diff -up cups-1.4.7/scheduler/client.h.lspp cups-1.4.7/scheduler/client.h
+--- cups-1.4.7/scheduler/client.h.lspp	2009-05-27 00:01:23.000000000 +0200
++++ cups-1.4.7/scheduler/client.h	2011-06-28 12:05:58.586935325 +0200
 @@ -18,6 +18,13 @@
  #endif /* HAVE_AUTHORIZATION_H */
  
@@ -1504,9 +1513,9 @@ diff -urNp cups-1.4.6.old/scheduler/client.h cups-1.4.6/scheduler/client.h
  
  
  /*
-diff -urNp cups-1.4.6.old/scheduler/conf.c cups-1.4.6/scheduler/conf.c
---- cups-1.4.6.old/scheduler/conf.c	2011-03-07 13:34:53.540876279 +0000
-+++ cups-1.4.6/scheduler/conf.c	2011-03-07 13:35:07.157876274 +0000
+diff -up cups-1.4.7/scheduler/conf.c.lspp cups-1.4.7/scheduler/conf.c
+--- cups-1.4.7/scheduler/conf.c.lspp	2011-06-28 12:05:58.560935698 +0200
++++ cups-1.4.7/scheduler/conf.c	2011-06-28 12:05:58.588935297 +0200
 @@ -29,6 +29,7 @@
   *   read_configuration()     - Read a configuration file.
   *   read_location()          - Read a <Location path> definition.
@@ -1546,7 +1555,7 @@ diff -urNp cups-1.4.6.old/scheduler/conf.c cups-1.4.6/scheduler/conf.c
  
  
   /*
-@@ -713,6 +724,25 @@ cupsdReadConfiguration(void)
+@@ -719,6 +730,25 @@ cupsdReadConfiguration(void)
  
    RunUser = getuid();
  
@@ -1572,7 +1581,7 @@ diff -urNp cups-1.4.6.old/scheduler/conf.c cups-1.4.6/scheduler/conf.c
    cupsdLogMessage(CUPSD_LOG_INFO, "Remote access is %s.",
                    RemotePort ? "enabled" : "disabled");
  
-@@ -1081,11 +1111,23 @@ cupsdReadConfiguration(void)
+@@ -1087,11 +1117,23 @@ cupsdReadConfiguration(void)
    * Update classification setting as needed...
    */
  
@@ -1597,7 +1606,7 @@ diff -urNp cups-1.4.6.old/scheduler/conf.c cups-1.4.6/scheduler/conf.c
  
   /*
    * Check the MaxClients setting, and then allocate memory for it...
-@@ -3657,6 +3699,18 @@ read_location(cups_file_t *fp,		/* I - C
+@@ -3663,6 +3705,18 @@ read_location(cups_file_t *fp,		/* I - C
    return ((FatalErrors & CUPSD_FATAL_CONFIG) ? 0 : linenum);
  }
  
@@ -1616,9 +1625,9 @@ diff -urNp cups-1.4.6.old/scheduler/conf.c cups-1.4.6/scheduler/conf.c
  
  /*
   * 'read_policy()' - Read a <Policy name> definition.
-diff -urNp cups-1.4.6.old/scheduler/conf.h cups-1.4.6/scheduler/conf.h
---- cups-1.4.6.old/scheduler/conf.h	2011-03-07 13:34:53.561876277 +0000
-+++ cups-1.4.6/scheduler/conf.h	2011-03-07 13:35:07.158876277 +0000
+diff -up cups-1.4.7/scheduler/conf.h.lspp cups-1.4.7/scheduler/conf.h
+--- cups-1.4.7/scheduler/conf.h.lspp	2011-06-28 12:05:58.411937841 +0200
++++ cups-1.4.7/scheduler/conf.h	2011-06-28 12:05:58.589935283 +0200
 @@ -250,6 +250,12 @@ VAR char		*ServerKey		VALUE(NULL);
  VAR int			SSLOptions		VALUE(CUPSD_SSL_NONE);
  					/* SSL/TLS options */
@@ -1642,9 +1651,9 @@ diff -urNp cups-1.4.6.old/scheduler/conf.h cups-1.4.6/scheduler/conf.h
  
  /*
   * Prototypes...
-diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
---- cups-1.4.6.old/scheduler/ipp.c	2011-03-07 13:34:53.720876279 +0000
-+++ cups-1.4.6/scheduler/ipp.c	2011-03-07 13:35:07.167876275 +0000
+diff -up cups-1.4.7/scheduler/ipp.c.lspp cups-1.4.7/scheduler/ipp.c
+--- cups-1.4.7/scheduler/ipp.c.lspp	2011-06-28 12:05:58.547935884 +0200
++++ cups-1.4.7/scheduler/ipp.c	2011-06-28 12:05:58.593935224 +0200
 @@ -41,6 +41,7 @@
   *   cancel_all_jobs()           - Cancel all print jobs.
   *   cancel_job()                - Cancel a print job.
@@ -1963,7 +1972,7 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
  
     /*
      * See if we need to add the starting sheet...
-@@ -4295,6 +4527,111 @@ check_rss_recipient(
+@@ -4308,6 +4540,107 @@ check_rss_recipient(
  }
  
  
@@ -2022,11 +2031,7 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
 +    cupsdLogMessage(CUPSD_LOG_ERROR, "check_context: unable to convert %s to SELinux sid", con->scon);
 +    return -1;
 +  }
-+  if (avc_context_to_sid(job->scon, &jobsid) != 0)
-+  {
-+    cupsdLogMessage(CUPSD_LOG_ERROR, "check_context: unable to convert %s to SELinux sid", job->scon);
-+    return -1;
-+  }
++  avc_context_to_sid(job->scon, &jobsid);
 +  avc_entry_ref_init(&avcref);
 +  tclass = SECCLASS_FILE;
 +  avr = FILE__READ;
@@ -2075,7 +2080,7 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
  /*
   * 'check_quotas()' - Check quotas for a printer and user.
   */
-@@ -4849,6 +5182,15 @@ copy_banner(cupsd_client_t *con,	/* I - 
+@@ -4862,6 +5195,15 @@ copy_banner(cupsd_client_t *con,	/* I - 
    char		attrname[255],		/* Name of attribute */
  		*s;			/* Pointer into name */
    ipp_attribute_t *attr;		/* Attribute */
@@ -2091,7 +2096,7 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
  
  
    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-@@ -4884,6 +5226,82 @@ copy_banner(cupsd_client_t *con,	/* I - 
+@@ -4897,6 +5239,82 @@ copy_banner(cupsd_client_t *con,	/* I - 
  
    fchmod(cupsFileNumber(out), 0640);
    fchown(cupsFileNumber(out), RunUser, Group);
@@ -2174,7 +2179,7 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
  
   /*
    * Try the localized banner file under the subdirectory...
-@@ -4978,6 +5396,24 @@ copy_banner(cupsd_client_t *con,	/* I - 
+@@ -4991,6 +5409,24 @@ copy_banner(cupsd_client_t *con,	/* I - 
        else
          s = attrname;
  
@@ -2199,7 +2204,7 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
        if (!strcmp(s, "printer-name"))
        {
          cupsFilePuts(out, job->dest);
-@@ -6957,6 +7393,22 @@ get_job_attrs(cupsd_client_t  *con,	/* I
+@@ -6975,6 +7411,22 @@ get_job_attrs(cupsd_client_t  *con,	/* I
      return;
    }
  
@@ -2222,7 +2227,7 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
   /*
    * Copy attributes...
    */
-@@ -7187,6 +7639,11 @@ get_jobs(cupsd_client_t  *con,		/* I - C
+@@ -7205,6 +7657,11 @@ get_jobs(cupsd_client_t  *con,		/* I - C
      if (username[0] && strcasecmp(username, job->username))
        continue;
  
@@ -2234,7 +2239,7 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
      if (count > 0)
        ippAddSeparator(con->response);
  
-@@ -11606,6 +12063,11 @@ validate_user(cupsd_job_t    *job,	/* I 
+@@ -11624,6 +12081,11 @@ validate_user(cupsd_job_t    *job,	/* I 
  
    strlcpy(username, get_username(con), userlen);
  
@@ -2246,10 +2251,10 @@ diff -urNp cups-1.4.6.old/scheduler/ipp.c cups-1.4.6/scheduler/ipp.c
   /*
    * Check the username against the owner...
    */
-diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
---- cups-1.4.6.old/scheduler/job.c	2011-03-07 13:34:53.553876279 +0000
-+++ cups-1.4.6/scheduler/job.c	2011-03-07 13:35:07.175876275 +0000
-@@ -66,6 +66,9 @@
+diff -up cups-1.4.7/scheduler/job.c.lspp cups-1.4.7/scheduler/job.c
+--- cups-1.4.7/scheduler/job.c.lspp	2011-06-28 12:05:58.476936905 +0200
++++ cups-1.4.7/scheduler/job.c	2011-06-28 12:05:58.596935180 +0200
+@@ -64,6 +64,9 @@
   *   update_job_attrs()         - Update the job-printer-* attributes.
   */
  
@@ -2259,7 +2264,7 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
  /*
   * Include necessary headers...
   */
-@@ -75,6 +78,14 @@
+@@ -73,6 +76,14 @@
  #include <cups/backend.h>
  #include <cups/dir.h>
  
@@ -2274,7 +2279,7 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
  
  /*
   * Design Notes for Job Management
-@@ -508,6 +519,14 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
+@@ -505,6 +516,14 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
  					/* PRINTER env variable */
  			rip_max_cache[255];
  					/* RIP_MAX_CACHE env variable */
@@ -2289,7 +2294,7 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
  
  
    cupsdLogMessage(CUPSD_LOG_DEBUG2,
-@@ -932,6 +951,67 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
+@@ -929,6 +948,67 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
      }
    }
  
@@ -2357,7 +2362,32 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
    if (Classification && !banner_page)
    {
      if ((attr = ippFindAttribute(job->attrs, "job-sheets",
-@@ -1629,6 +1709,20 @@ cupsdLoadJob(cupsd_job_t *job)		/* I - J
+@@ -1165,13 +1245,13 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
+       if (access(command, F_OK))
+ 	{
+ 	  snprintf(command, sizeof(command), "%s/backend/%s", ServerBin_compat,
+-		   method);
++		   scheme);
+ 	  if (!access(command, F_OK))
+ 	    {
+ 	      /* Not in the correct directory, but we found it in the compat
+ 	       * directory.  Issue a warning. */
+ 	      cupsdLogMessage(CUPSD_LOG_INFO,
+-			      "Backend '%s' not in %s/backend!", method,
++			      "Backend '%s' not in %s/backend!", scheme,
+ 			      ServerBin);
+ 	    }
+ 	  else
+@@ -1179,7 +1259,7 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
+ 	      /* Not in the compat directory either; make any error
+ 		 messages use the correct directory name then. */
+ 	      snprintf(command, sizeof(command), "%s/backend/%s", ServerBin,
+-		       method);
++		       scheme);
+ 	    }
+ 	}
+ #endif /* __x86_64__ */
+@@ -1634,6 +1714,20 @@ cupsdLoadJob(cupsd_job_t *job)		/* I - J
      goto error;
    }
  
@@ -2378,7 +2408,7 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
    job->sheets     = ippFindAttribute(job->attrs, "job-media-sheets-completed",
                                       IPP_TAG_INTEGER);
    job->job_sheets = ippFindAttribute(job->attrs, "job-sheets", IPP_TAG_NAME);
-@@ -2016,6 +2110,14 @@ cupsdSaveJob(cupsd_job_t *job)		/* I - J
+@@ -2021,6 +2115,14 @@ cupsdSaveJob(cupsd_job_t *job)		/* I - J
  {
    char		filename[1024];		/* Job control filename */
    cups_file_t	*fp;			/* Job file */
@@ -2393,7 +2423,7 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
  
  
    cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdSaveJob(job=%p(%d)): job->attrs=%p",
-@@ -2034,6 +2136,76 @@ cupsdSaveJob(cupsd_job_t *job)		/* I - J
+@@ -2039,6 +2141,76 @@ cupsdSaveJob(cupsd_job_t *job)		/* I - J
    fchmod(cupsFileNumber(fp), 0600);
    fchown(cupsFileNumber(fp), RunUser, Group);
  
@@ -2470,7 +2500,7 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
    job->attrs->state = IPP_IDLE;
  
    if (ippWriteIO(fp, (ipp_iocb_t)cupsFileWrite, 1, NULL,
-@@ -3341,6 +3513,18 @@ get_options(cupsd_job_t *job,		/* I - Jo
+@@ -3353,6 +3525,18 @@ get_options(cupsd_job_t *job,		/* I - Jo
  	  banner_page)
          continue;
  
@@ -2489,7 +2519,7 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
       /*
        * Otherwise add them to the list...
        */
-@@ -4029,6 +4213,19 @@ static void
+@@ -3989,6 +4173,19 @@ static void
  start_job(cupsd_job_t     *job,		/* I - Job ID */
            cupsd_printer_t *printer)	/* I - Printer to print job */
  {
@@ -2509,7 +2539,7 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
    cupsdLogMessage(CUPSD_LOG_DEBUG2, "start_job(job=%p(%d), printer=%p(%s))",
                    job, job->id, printer, printer->name);
  
-@@ -4151,6 +4348,108 @@ start_job(cupsd_job_t     *job,		/* I - 
+@@ -4111,6 +4308,108 @@ start_job(cupsd_job_t     *job,		/* I - 
    fcntl(job->side_pipes[1], F_SETFD,
  	fcntl(job->side_pipes[1], F_GETFD) | FD_CLOEXEC);
  
@@ -2618,9 +2648,9 @@ diff -urNp cups-1.4.6.old/scheduler/job.c cups-1.4.6/scheduler/job.c
   /*
    * Now start the first file in the job...
    */
-diff -urNp cups-1.4.6.old/scheduler/job.h cups-1.4.6/scheduler/job.h
---- cups-1.4.6.old/scheduler/job.h	2011-03-07 13:34:53.530876279 +0000
-+++ cups-1.4.6/scheduler/job.h	2011-03-07 13:35:07.177876275 +0000
+diff -up cups-1.4.7/scheduler/job.h.lspp cups-1.4.7/scheduler/job.h
+--- cups-1.4.7/scheduler/job.h.lspp	2009-05-12 00:46:01.000000000 +0200
++++ cups-1.4.7/scheduler/job.h	2011-06-28 12:05:58.605935048 +0200
 @@ -13,6 +13,13 @@
   *   file is missing or damaged, see the license at "http://www.cups.org/".
   */
@@ -2646,9 +2676,9 @@ diff -urNp cups-1.4.6.old/scheduler/job.h cups-1.4.6/scheduler/job.h
  };
  
  typedef struct cupsd_joblog_s		/**** Job log message ****/
-diff -urNp cups-1.4.6.old/scheduler/main.c cups-1.4.6/scheduler/main.c
---- cups-1.4.6.old/scheduler/main.c	2011-03-07 13:34:53.671876279 +0000
-+++ cups-1.4.6/scheduler/main.c	2011-03-07 13:35:07.179876275 +0000
+diff -up cups-1.4.7/scheduler/main.c.lspp cups-1.4.7/scheduler/main.c
+--- cups-1.4.7/scheduler/main.c.lspp	2011-06-28 12:05:58.533936087 +0200
++++ cups-1.4.7/scheduler/main.c	2011-06-28 12:06:45.061266687 +0200
 @@ -37,6 +37,8 @@
   *   usage()               - Show scheduler usage.
   */
@@ -2668,16 +2698,16 @@ diff -urNp cups-1.4.6.old/scheduler/main.c cups-1.4.6/scheduler/main.c
  
  /*
   * Local functions...
-@@ -149,6 +154,9 @@ main(int  argc,				/* I - Number of comm
- #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
-   struct sigaction	action;		/* Actions for POSIX signals */
- #endif /* HAVE_SIGACTION && !HAVE_SIGSET */
+@@ -170,6 +175,9 @@ main(int  argc,				/* I - Number of comm
+   long			tmo_delay;	/* Time before it must be called */
+ #endif /* HAVE_AVAHI */
+ 
 +#if WITH_LSPP
 +  auditfail_t           failmode;       /* Action for audit_open failure */
 +#endif /* WITH_LSPP */
- #ifdef __sgi
-   cups_file_t		*fp;		/* Fake lpsched lock file */
-   struct stat		statbuf;	/* Needed for checking lpsched FIFO */
+ 
+ #ifdef HAVE_GETEUID
+  /*
 @@ -478,6 +486,25 @@ main(int  argc,				/* I - Number of comm
  #endif /* DEBUG */
    }
@@ -2716,10 +2746,10 @@ diff -urNp cups-1.4.6.old/scheduler/main.c cups-1.4.6/scheduler/main.c
    return (!stop_scheduler);
  }
  
-diff -urNp cups-1.4.6.old/scheduler/printers.c cups-1.4.6/scheduler/printers.c
---- cups-1.4.6.old/scheduler/printers.c	2011-03-07 13:34:53.708876279 +0000
-+++ cups-1.4.6/scheduler/printers.c	2011-03-07 13:35:07.182876275 +0000
-@@ -59,6 +59,8 @@
+diff -up cups-1.4.7/scheduler/printers.c.lspp cups-1.4.7/scheduler/printers.c
+--- cups-1.4.7/scheduler/printers.c.lspp	2011-06-28 12:05:58.551935828 +0200
++++ cups-1.4.7/scheduler/printers.c	2011-06-28 12:05:58.608935007 +0200
+@@ -61,6 +61,8 @@
   *   write_xml_string()         - Write a string with XML escaping.
   */
  
@@ -2728,19 +2758,18 @@ diff -urNp cups-1.4.6.old/scheduler/printers.c cups-1.4.6/scheduler/printers.c
  /*
   * Include necessary headers...
   */
-@@ -81,6 +83,11 @@
- #  include <sys/vfs.h>
- #endif /* HAVE_SYS_VFS_H */
+@@ -108,6 +110,10 @@ static void	write_irix_state(cupsd_print
+ #endif /* __sgi */
+ static void	write_xml_string(cups_file_t *fp, const char *s);
  
 +#ifdef WITH_LSPP
 +#  include <libaudit.h>
 +#  include <selinux/context.h>
 +#endif /* WITH_LSPP */
-+ 
- #ifdef HAVE_DBUS
- # include "colord.h"
- #endif /* HAVE_DBUS */
-@@ -2329,6 +2336,13 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)
+ 
+ /*
+  * 'cupsdAddPrinter()' - Add a printer to the system.
+@@ -2332,6 +2338,13 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)
  		  "username",
  		  "password"
  		};
@@ -2754,7 +2783,7 @@ diff -urNp cups-1.4.6.old/scheduler/printers.c cups-1.4.6/scheduler/printers.c
  
  
    DEBUG_printf(("cupsdSetPrinterAttrs: entering name = %s, type = %x\n", p->name,
-@@ -2459,6 +2473,45 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)
+@@ -2462,6 +2475,45 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)
        attr->values[1].string.text = _cupsStrAlloc(Classification ?
  	                                   Classification : p->job_sheets[1]);
      }
@@ -2800,7 +2829,7 @@ diff -urNp cups-1.4.6.old/scheduler/printers.c cups-1.4.6/scheduler/printers.c
    }
  
    p->raw    = 0;
-@@ -5605,7 +5658,6 @@ write_irix_state(cupsd_printer_t *p)	/* 
+@@ -5654,7 +5706,6 @@ write_irix_state(cupsd_printer_t *p)	/* 
  }
  #endif /* __sgi */
  
diff --git a/cups-serverbin-compat.patch b/cups-serverbin-compat.patch
index bf1bc99..5e95509 100644
--- a/cups-serverbin-compat.patch
+++ b/cups-serverbin-compat.patch
@@ -1,6 +1,6 @@
-diff -up cups-1.4.6/scheduler/conf.c.serverbin-compat cups-1.4.6/scheduler/conf.c
---- cups-1.4.6/scheduler/conf.c.serverbin-compat	2010-08-31 05:18:38.000000000 +0100
-+++ cups-1.4.6/scheduler/conf.c	2011-01-12 16:28:47.233270999 +0000
+diff -up cups-1.4.7/scheduler/conf.c.serverbin-compat cups-1.4.7/scheduler/conf.c
+--- cups-1.4.7/scheduler/conf.c.serverbin-compat	2011-01-11 08:05:58.000000000 +0100
++++ cups-1.4.7/scheduler/conf.c	2011-06-28 10:43:24.677053741 +0200
 @@ -488,6 +488,9 @@ cupsdReadConfiguration(void)
    cupsdClearString(&ServerName);
    cupsdClearString(&ServerAdmin);
@@ -11,7 +11,7 @@ diff -up cups-1.4.6/scheduler/conf.c.serverbin-compat cups-1.4.6/scheduler/conf.
    cupsdSetString(&RequestRoot, CUPS_REQUESTS);
    cupsdSetString(&CacheDir, CUPS_CACHEDIR);
    cupsdSetString(&DataDir, CUPS_DATADIR);
-@@ -1331,7 +1334,12 @@ cupsdReadConfiguration(void)
+@@ -1337,7 +1340,12 @@ cupsdReadConfiguration(void)
      * Read the MIME type and conversion database...
      */
  
@@ -24,9 +24,9 @@ diff -up cups-1.4.6/scheduler/conf.c.serverbin-compat cups-1.4.6/scheduler/conf.
      snprintf(mimedir, sizeof(mimedir), "%s/mime", DataDir);
  
      MimeDatabase = mimeLoadTypes(NULL, mimedir);
-diff -up cups-1.4.6/scheduler/conf.h.serverbin-compat cups-1.4.6/scheduler/conf.h
---- cups-1.4.6/scheduler/conf.h.serverbin-compat	2010-04-23 19:56:34.000000000 +0100
-+++ cups-1.4.6/scheduler/conf.h	2011-01-12 16:28:47.233270999 +0000
+diff -up cups-1.4.7/scheduler/conf.h.serverbin-compat cups-1.4.7/scheduler/conf.h
+--- cups-1.4.7/scheduler/conf.h.serverbin-compat	2010-04-23 20:56:34.000000000 +0200
++++ cups-1.4.7/scheduler/conf.h	2011-06-28 10:43:24.678053725 +0200
 @@ -105,6 +105,10 @@ VAR char		*ConfigurationFile	VALUE(NULL)
  					/* Root directory for scheduler */
  			*ServerBin		VALUE(NULL),
@@ -38,26 +38,26 @@ diff -up cups-1.4.6/scheduler/conf.h.serverbin-compat cups-1.4.6/scheduler/conf.
  			*StateDir		VALUE(NULL),
  					/* Root directory for state data */
  			*RequestRoot		VALUE(NULL),
-diff -up cups-1.4.6/scheduler/env.c.serverbin-compat cups-1.4.6/scheduler/env.c
---- cups-1.4.6/scheduler/env.c.serverbin-compat	2009-06-15 18:13:52.000000000 +0100
-+++ cups-1.4.6/scheduler/env.c	2011-01-12 16:28:47.234270949 +0000
-@@ -87,8 +87,13 @@ cupsdInitEnv(void)
-   cupsdSetEnv("LD_LIBRARY_PATH", NULL);
-   cupsdSetEnv("LD_PRELOAD", NULL);
-   cupsdSetEnv("NLSPATH", NULL);
+diff -up cups-1.4.7/scheduler/env.c.serverbin-compat cups-1.4.7/scheduler/env.c
+--- cups-1.4.7/scheduler/env.c.serverbin-compat	2011-01-11 08:05:58.000000000 +0100
++++ cups-1.4.7/scheduler/env.c	2011-06-28 10:49:25.638319580 +0200
+@@ -218,8 +218,13 @@ cupsdUpdateEnv(void)
+   set_if_undefined("LD_PRELOAD", NULL);
+   set_if_undefined("NLSPATH", NULL);
+   if (find_env("PATH") < 0)
 +#ifdef __x86_64__
-+  cupsdSetEnvf("PATH", "%s/filter:%s/filter:" CUPS_BINDIR ":" CUPS_SBINDIR
-+                       ":/bin:/usr/bin", ServerBin, ServerBin_compat);
++    cupsdSetEnvf("PATH", "%s/filter:%s/filter:" CUPS_BINDIR ":" CUPS_SBINDIR
++			 ":/bin:/usr/bin", ServerBin, ServerBin_compat);
 +#else /* ! defined(__x86_64__) */
-   cupsdSetEnvf("PATH", "%s/filter:" CUPS_BINDIR ":" CUPS_SBINDIR
-                        ":/bin:/usr/bin", ServerBin);
+     cupsdSetEnvf("PATH", "%s/filter:" CUPS_BINDIR ":" CUPS_SBINDIR
+ 			 ":/bin:/usr/bin", ServerBin);
 +#endif
-   cupsdSetEnv("SERVER_ADMIN", ServerAdmin);
-   cupsdSetEnv("SHLIB_PATH", NULL);
-   cupsdSetEnv("SOFTWARE", CUPS_MINIMAL);
-diff -up cups-1.4.6/scheduler/ipp.c.serverbin-compat cups-1.4.6/scheduler/ipp.c
---- cups-1.4.6/scheduler/ipp.c.serverbin-compat	2010-10-06 21:07:44.000000000 +0100
-+++ cups-1.4.6/scheduler/ipp.c	2011-01-12 16:28:47.246270349 +0000
+   set_if_undefined("SERVER_ADMIN", ServerAdmin);
+   set_if_undefined("SHLIB_PATH", NULL);
+   set_if_undefined("SOFTWARE", CUPS_MINIMAL);
+diff -up cups-1.4.7/scheduler/ipp.c.serverbin-compat cups-1.4.7/scheduler/ipp.c
+--- cups-1.4.7/scheduler/ipp.c.serverbin-compat	2011-02-15 00:47:29.000000000 +0100
++++ cups-1.4.7/scheduler/ipp.c	2011-06-28 10:43:24.682053664 +0200
 @@ -2602,9 +2602,18 @@ add_printer(cupsd_client_t  *con,	/* I -
          * Could not find device in list!
  	*/
@@ -77,10 +77,10 @@ diff -up cups-1.4.6/scheduler/ipp.c.serverbin-compat cups-1.4.6/scheduler/ipp.c
        }
      }
  
-diff -up cups-1.4.6/scheduler/job.c.serverbin-compat cups-1.4.6/scheduler/job.c
---- cups-1.4.6/scheduler/job.c.serverbin-compat	2010-11-30 22:35:02.000000000 +0000
-+++ cups-1.4.6/scheduler/job.c	2011-01-12 16:31:43.515443755 +0000
-@@ -975,8 +975,32 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
+diff -up cups-1.4.7/scheduler/job.c.serverbin-compat cups-1.4.7/scheduler/job.c
+--- cups-1.4.7/scheduler/job.c.serverbin-compat	2011-04-23 00:38:01.000000000 +0200
++++ cups-1.4.7/scheduler/job.c	2011-06-28 10:43:24.686053600 +0200
+@@ -972,8 +972,32 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
         i ++, filter = (mime_filter_t *)cupsArrayNext(filters))
    {
      if (filter->filter[0] != '/')
@@ -115,7 +115,7 @@ diff -up cups-1.4.6/scheduler/job.c.serverbin-compat cups-1.4.6/scheduler/job.c
      else
        strlcpy(command, filter->filter, sizeof(command));
  
-@@ -1122,6 +1146,28 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
+@@ -1119,6 +1143,28 @@ cupsdContinueJob(cupsd_job_t *job)	/* I 
        cupsdClosePipe(job->print_pipes);
        cupsdClosePipe(job->back_pipes);
        cupsdClosePipe(job->side_pipes);
@@ -123,13 +123,13 @@ diff -up cups-1.4.6/scheduler/job.c.serverbin-compat cups-1.4.6/scheduler/job.c
 +      if (access(command, F_OK))
 +	{
 +	  snprintf(command, sizeof(command), "%s/backend/%s", ServerBin_compat,
-+		   scheme);
++		   method);
 +	  if (!access(command, F_OK))
 +	    {
 +	      /* Not in the correct directory, but we found it in the compat
 +	       * directory.  Issue a warning. */
 +	      cupsdLogMessage(CUPSD_LOG_INFO,
-+			      "Backend '%s' not in %s/backend!", scheme,
++			      "Backend '%s' not in %s/backend!", method,
 +			      ServerBin);
 +	    }
 +	  else
@@ -137,17 +137,17 @@ diff -up cups-1.4.6/scheduler/job.c.serverbin-compat cups-1.4.6/scheduler/job.c
 +	      /* Not in the compat directory either; make any error
 +		 messages use the correct directory name then. */
 +	      snprintf(command, sizeof(command), "%s/backend/%s", ServerBin,
-+		       scheme);
++		       method);
 +	    }
 +	}
 +#endif /* __x86_64__ */
  
        close(job->status_pipes[1]);
        job->status_pipes[1] = -1;
-diff -up cups-1.4.6/scheduler/printers.c.serverbin-compat cups-1.4.6/scheduler/printers.c
---- cups-1.4.6/scheduler/printers.c.serverbin-compat	2010-09-22 19:35:07.000000000 +0100
-+++ cups-1.4.6/scheduler/printers.c	2011-01-12 16:28:47.261269599 +0000
-@@ -1114,9 +1114,19 @@ cupsdLoadAllPrinters(void)
+diff -up cups-1.4.7/scheduler/printers.c.serverbin-compat cups-1.4.7/scheduler/printers.c
+--- cups-1.4.7/scheduler/printers.c.serverbin-compat	2011-03-04 20:28:38.000000000 +0100
++++ cups-1.4.7/scheduler/printers.c	2011-06-28 10:43:24.688053568 +0200
+@@ -1118,9 +1118,19 @@ cupsdLoadAllPrinters(void)
  	    * Backend does not exist, stop printer...
  	    */
  
@@ -167,7 +167,7 @@ diff -up cups-1.4.6/scheduler/printers.c.serverbin-compat cups-1.4.6/scheduler/p
  	  }
          }
  
-@@ -3658,6 +3668,14 @@ add_printer_filter(
+@@ -3657,6 +3667,14 @@ add_printer_filter(
  
      if (stat(filename, &fileinfo))
      {
@@ -182,7 +182,7 @@ diff -up cups-1.4.6/scheduler/printers.c.serverbin-compat cups-1.4.6/scheduler/p
        memset(&fileinfo, 0, sizeof(fileinfo));
  
        snprintf(p->state_message, sizeof(p->state_message),
-@@ -3666,6 +3684,9 @@ add_printer_filter(
+@@ -3665,6 +3683,9 @@ add_printer_filter(
        cupsdSetPrinterReasons(p, "+cups-missing-filter-warning");
  
        cupsdLogMessage(CUPSD_LOG_ERROR, "%s", p->state_message);
diff --git a/cups-snmp-quirks.patch b/cups-snmp-quirks.patch
index 0308676..d7c82a4 100644
--- a/cups-snmp-quirks.patch
+++ b/cups-snmp-quirks.patch
@@ -1,7 +1,7 @@
-diff -up cups-1.4.3/backend/snmp-supplies.c.snmp-quirks cups-1.4.3/backend/snmp-supplies.c
---- cups-1.4.3/backend/snmp-supplies.c.snmp-quirks	2009-11-20 01:27:57.000000000 +0000
-+++ cups-1.4.3/backend/snmp-supplies.c	2010-06-09 16:27:05.515019804 +0100
-@@ -38,6 +38,13 @@
+diff -up cups-1.4.7/backend/snmp-supplies.c.snmp-quirks cups-1.4.7/backend/snmp-supplies.c
+--- cups-1.4.7/backend/snmp-supplies.c.snmp-quirks	2011-03-10 04:50:59.000000000 +0100
++++ cups-1.4.7/backend/snmp-supplies.c	2011-06-28 11:11:57.944155996 +0200
+@@ -49,6 +49,13 @@
  
  
  /*
@@ -15,7 +15,7 @@ diff -up cups-1.4.3/backend/snmp-supplies.c.snmp-quirks cups-1.4.3/backend/snmp-
   * Local structures...
   */
  
-@@ -57,6 +64,12 @@ typedef struct				/**** Printer state ta
+@@ -68,6 +75,12 @@ typedef struct				/**** Printer state ta
    const char	*keyword;		/* IPP printer-state-reasons keyword */
  } backend_state_t;
  
@@ -28,16 +28,16 @@ diff -up cups-1.4.3/backend/snmp-supplies.c.snmp-quirks cups-1.4.3/backend/snmp-
  
  /*
   * Local globals...
-@@ -68,6 +81,7 @@ static int		current_state = -1;
+@@ -79,6 +92,7 @@ static int		current_state = -1;
  static int		charset = -1;	/* Character set for supply names */
  static int		num_supplies = 0;
  					/* Number of supplies found */
 +static int		quirks = 0;	/* Printer quirks */
  static backend_supplies_t supplies[CUPS_MAX_SUPPLIES];
  					/* Supply information */
- 
-@@ -153,6 +167,15 @@ static const backend_state_t const print
- 			  { CUPS_TC_outputFull, "output-area-full-warning" }
+ static int		supply_state = -1;
+@@ -180,6 +194,15 @@ static const backend_state_t const suppl
+ 			  { CUPS_TONER_EMPTY, "toner-empty-warning" }
  			};
  
 +static const quirk_name_t const quirk_names[] =
@@ -52,17 +52,17 @@ diff -up cups-1.4.3/backend/snmp-supplies.c.snmp-quirks cups-1.4.3/backend/snmp-
  
  /*
   * Local functions...
-@@ -208,6 +231,9 @@ backendSNMPSupplies(
-       if (i)
-         *ptr++ = ',';
+@@ -233,6 +256,9 @@ backendSNMPSupplies(
  
+     for (i = 0, ptr = value; i < num_supplies; i ++, ptr += strlen(ptr))
+     {
 +      if (quirks & QUIRK_CAPACITY)
-+	supplies[i].max_capacity = 100;
++        supplies[i].max_capacity = 100;
 +
-       if (supplies[i].max_capacity > 0)
-         sprintf(ptr, "%d", 100 * supplies[i].level / supplies[i].max_capacity);
-       else
-@@ -305,6 +331,7 @@ backend_init_supplies(
+       percent = 100 * supplies[i].level / supplies[i].max_capacity;
+ 
+       if (percent <= 10)
+@@ -406,6 +432,7 @@ backend_init_supplies(
      http_addr_t *addr)			/* I - Printer address */
  {
    int		i,			/* Looping var */
@@ -70,7 +70,7 @@ diff -up cups-1.4.3/backend/snmp-supplies.c.snmp-quirks cups-1.4.3/backend/snmp-
  		type;			/* Current marker type */
    cups_file_t	*cachefile;		/* Cache file */
    const char	*cachedir;		/* CUPS_CACHEDIR value */
-@@ -366,6 +393,7 @@ backend_init_supplies(
+@@ -467,6 +494,7 @@ backend_init_supplies(
    current_state = -1;
    num_supplies  = -1;
    charset       = -1;
@@ -78,7 +78,7 @@ diff -up cups-1.4.3/backend/snmp-supplies.c.snmp-quirks cups-1.4.3/backend/snmp-
  
    memset(supplies, 0, sizeof(supplies));
  
-@@ -381,6 +409,34 @@ backend_init_supplies(
+@@ -482,6 +510,34 @@ backend_init_supplies(
      return;
    }
  
diff --git a/cups.spec b/cups.spec
index 078f0c2..4ce6d57 100644
--- a/cups.spec
+++ b/cups.spec
@@ -12,8 +12,8 @@
 
 Summary: Common Unix Printing System
 Name: cups
-Version: 1.4.6
-Release: 20%{?dist}
+Version: 1.4.7
+Release: 1%{?dist}
 License: GPLv2
 Group: System Environment/Daemons
 Source: http://ftp.easysw.com/pub/cups/%{version}/cups-%{version}-source.tar.bz2
@@ -59,23 +59,20 @@ Patch20: cups-res_init.patch
 Patch21: cups-filter-debug.patch
 Patch22: cups-uri-compat.patch
 Patch23: cups-cups-get-classes.patch
-Patch25: cups-str3382.patch
-Patch26: cups-force-gnutls.patch
-Patch27: cups-serialize-gnutls.patch
-Patch29: cups-0755.patch
-Patch31: cups-hostnamelookups.patch
-Patch33: cups-snmp-quirks.patch
-Patch34: cups-hp-deviceid-oid.patch
-Patch35: cups-dnssd-deviceid.patch
-Patch36: cups-ricoh-deviceid-oid.patch
-Patch37: cups-texttops-rotate-page.patch
-Patch38: cups-autotype-crash.patch
-Patch39: cups-str3754.patch
+Patch24: cups-str3382.patch
+Patch25: cups-force-gnutls.patch
+Patch26: cups-serialize-gnutls.patch
+Patch27: cups-0755.patch
+Patch28: cups-snmp-quirks.patch
+Patch29: cups-hp-deviceid-oid.patch
+Patch30: cups-dnssd-deviceid.patch
+Patch31: cups-ricoh-deviceid-oid.patch
+Patch32: cups-texttops-rotate-page.patch
+Patch33: cups-usb-parallel.patch
+Patch34: cups-str3535.patch
+
 Patch40: cups-avahi.patch
 Patch41: cups-icc.patch
-Patch42: cups-usb-parallel.patch
-Patch43: cups-job-state-changed.patch
-Patch44: cups-str3535.patch
 
 Patch100: cups-lspp.patch
 
@@ -261,43 +258,35 @@ module.
 # Fix support for older CUPS servers in cupsGetDests.
 %patch23 -p1 -b .cups-get-classes
 # Fix temporary filename creation.
-%patch25 -p1 -b .str3382
+%patch24 -p1 -b .str3382
 # Force the use of gnutls despite thread-safety concerns (bug #607159).
-%patch26 -p1 -b .force-gnutls
+%patch25 -p1 -b .force-gnutls
 # Perform locking for gnutls and avoid libgcrypt's broken
 # locking (bug #607159).
-%patch27 -p1 -b .serialize-gnutls
+%patch26 -p1 -b .serialize-gnutls
 # Use mode 0755 for binaries and libraries where appropriate.
-%patch29 -p1 -b .0755
-# Use numeric addresses for interfaces unless HostNameLookups are
-# turned on (bug #583054).
-%patch31 -p1 -b .hostnamelookups
+%patch27 -p1 -b .0755
 # Handle SNMP supply level quirks (bug #581825).
-%patch33 -p1 -b .snmp-quirks
+%patch28 -p1 -b .snmp-quirks
 # Add an SNMP query for HP's device ID OID (STR #3552).
-%patch34 -p1 -b .hp-deviceid-oid
+%patch29 -p1 -b .hp-deviceid-oid
 # Mark DNS-SD Device IDs that have been guessed at with "FZY:1;".
-%patch35 -p1 -b .dnssd-deviceid
+%patch30 -p1 -b .dnssd-deviceid
 # Add an SNMP query for Ricoh's device ID OID (STR #3552).
-%patch36 -p1 -b .ricoh-deviceid-oid
+%patch31 -p1 -b .ricoh-deviceid-oid
 # Adjust texttops output to be in natural orientation (STR #3563).
 # This fixes page-label orientation when texttops is used in the
 # filter chain (bug #572338).
-%patch37 -p1 -b .texttops-rotate-page
-# Don't crash when MIME database could not be loaded (bug #610088).
-%patch38 -p1 -b .autotype-crash
-# Don't crash when job queued for printer that times out (bug #660604).
-%patch39 -p1 -b .str3754
+%patch32 -p1 -b .texttops-rotate-page
+# Till's patch to fix USB-Parallel adapter cable problem (bug #624564).
+%patch33 -p1 -b .usb-parallel
+# Set the default RIPCache to 128m (STR #3535, bug #549901).
+%patch34 -p1 -b .str3535
+
 # Avahi support in the dnssd backend.
 %patch40 -p1 -b .avahi
 # ICC colord support.
 %patch41 -p1 -b .icc
-# Till's patch to fix USB-Parallel adapter cable problem (bug #624564).
-%patch42 -p1 -b .usb-parallel
-# Fixed dbus notifier support for job-state-changed.
-%patch43 -p1 -b .job-state-changed
-# Set the default RIPCache to 128m (STR #3535, bug #549901).
-%patch44 -p1 -b .str3535
 
 %if %lspp
 # LSPP support.
@@ -617,6 +606,9 @@ rm -rf $RPM_BUILD_ROOT
 %{php_extdir}/phpcups.so
 
 %changelog
+* Tue Jun 28 2011 Jiri Popelka <jpopelka at redhat.com> 1:1.4.7-1
+- 1.4.7.
+
 * Fri Jun  3 2011 Tim Waugh <twaugh at redhat.com> 1:1.4.6-20
 - Use correct port number when publishing services through Avahi
   (Ubuntu #792309).


More information about the scm-commits mailing list