rpms/cups/F-11 cups-0755.patch, NONE, 1.1 cups-dnssd-deviceid.patch, NONE, 1.1 cups-hostnamelookups.patch, NONE, 1.1 cups-hp-deviceid-oid.patch, NONE, 1.1 cups-ricoh-deviceid-oid.patch, NONE, 1.1 cups-snmp-quirks.patch, NONE, 1.1 .cvsignore, 1.48, 1.49 cups-getpass.patch, 1.2, 1.3 cups-lspp.patch, 1.47, 1.48 cups-page-label.patch, 1.1, 1.2 cups-paps.patch, 1.4, 1.5 cups-str3382.patch, 1.1, 1.2 cups.spec, 1.574, 1.575 sources, 1.53, 1.54 cups-CVE-2010-0302.patch, 1.1, NONE cups-str3399.patch, 1.2, NONE cups-str3505.patch, 1.1, NONE cups-str3541.patch, 1.2, NONE
Tim Waugh
twaugh at fedoraproject.org
Fri Jun 18 10:41:30 UTC 2010
- Previous message: rpms/libebml/devel .cvsignore, 1.10, 1.11 libebml.spec, 1.22, 1.23 sources, 1.11, 1.12
- Next message: rpms/nrpe/devel nrpe-0001-Add-reload-target-to-the-init-script.patch, NONE, 1.1 nrpe-0002-Read-extra-configuration-from-etc-sysconfig-nrpe.patch, NONE, 1.1 nrpe-0003-Include-etc-npre.d-config-directory.patch, NONE, 1.1 nrpe-0004-Fix-initscript-return-codes.patch, NONE, 1.1 nrpe-0005-Do-not-start-by-default.patch, NONE, 1.1 nrpe-0006-Relocate-pid-file.patch, NONE, 1.1 import.log, 1.3, 1.4 nrpe.spec, 1.17, 1.18 nrpe-directory_for_configs.diff, 1.1, NONE nrpe-initreload.patch, 1.1, NONE nrpe-read-extra-conf.patch, 1.1, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: twaugh
Update of /cvs/pkgs/rpms/cups/F-11
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv18412
Modified Files:
.cvsignore cups-getpass.patch cups-lspp.patch
cups-page-label.patch cups-paps.patch cups-str3382.patch
cups.spec sources
Added Files:
cups-0755.patch cups-dnssd-deviceid.patch
cups-hostnamelookups.patch cups-hp-deviceid-oid.patch
cups-ricoh-deviceid-oid.patch cups-snmp-quirks.patch
Removed Files:
cups-CVE-2010-0302.patch cups-str3399.patch cups-str3505.patch
cups-str3541.patch
Log Message:
* Fri Jun 18 2010 Tim Waugh <twaugh at redhat.com> 1:1.4.4-1
- 1.4.4. Fixes several security vulnerabilities (bug #605399):
CVE-2010-0540, CVE-2010-0542, CVE-2010-1748. No longer need str3503,
str3399, str3505, str3541, str3425p2 or CVE-2010-0302 patches.
- Fix lpd provides.
- Added comments for all sources and patches.
- Reset status after successful ipp job (bug #548219, STR #3460).
- Install udev rules in correct place (bug #530378).
- Removed unapplied gnutls-gcrypt-threads patch. Fixed typos in
descriptions for lpd and php sub-packages.
- Add an SNMP query for Ricoh's device ID OID (STR #3552).
- Mark DNS-SD Device IDs that have been guessed at with "FZY:1;".
- Add an SNMP query for HP's device ID OID (STR #3552).
- Don't mark initscript as config file.
- Use %{_initddir}, %{_sysconfdir} and SMP make flags.
- Use mode 0755 for binaries and libraries where appropriate.
- Removed use of prereq and buildprereq.
- Fixed use of '%' in changelog.
- Versioned explicit obsoletes/provides.
- Use tabs throughout.
- Install udev rules in correct place (bug #530378).
- Fix locale code for Norwegian (bug #520379).
- Fixed cups.init to be LSB compliant (bug #521641)
- Changed cups.init to be LSB compliant (bug #521641), i.e.
return code "2" (instead of "3") if invalid arguments
return code "4" if restarting service under nonprivileged user
return code "5" if cupsd not exist or is not executable
return code "6" if cupsd.conf not exist
- Use password-auth common PAM configuration instead of system-auth
when available.
- Fixed 'service cups status' to check for correct subsys name
(bug #521641).
- Renumbered patches and sources.
- Use upstream method of handling SNMP quirks in PPDs (STR #3551,
bug #581825).
- Added back still useful str3425.patch.
Second part of STR #3425 is still not fixed in 1.4.3
- Use numeric addresses for interfaces unless HostNameLookups are
turned on (bug #583054).
- Handle SNMP supply level quirks (bug #581825).
- No longer need CVE-2009-3553, str3381, str3390, str3391,
str3403, str3407, str3413, str3418, str3422, str3425,
str3428, str3431, str3435, str3436, str3439, str3440,
str3442, str3448, str3458, str3460, cups-sidechannel-intrs,
negative-snmp-string-length, cups-media-empty-warning patches.
cups-0755.patch:
Makedefs.in | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
--- NEW FILE cups-0755.patch ---
diff -up cups-1.4.2/Makedefs.in.0755 cups-1.4.2/Makedefs.in
--- cups-1.4.2/Makedefs.in.0755 2010-01-13 17:06:48.507913044 +0000
+++ cups-1.4.2/Makedefs.in 2010-01-13 17:07:10.049912905 +0000
@@ -41,13 +41,13 @@ SHELL = /bin/sh
# Installation programs...
#
-INSTALL_BIN = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@
+INSTALL_BIN = $(LIBTOOL) $(INSTALL) -c -m 755 @INSTALL_STRIP@
INSTALL_CONFIG = $(INSTALL) -c -m @CUPS_CONFIG_FILE_PERM@
INSTALL_DATA = $(INSTALL) -c -m 444
INSTALL_DIR = $(INSTALL) -d
-INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@
+INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 755 @INSTALL_STRIP@
INSTALL_MAN = $(INSTALL) -c -m 444
-INSTALL_SCRIPT = $(INSTALL) -c -m 555
+INSTALL_SCRIPT = $(INSTALL) -c -m 755
#
# Default user, group, and system groups for the scheduler...
cups-dnssd-deviceid.patch:
dnssd.c | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
--- NEW FILE cups-dnssd-deviceid.patch ---
diff -up cups-1.4.3/backend/dnssd.c.dnssd-deviceid.patch cups-1.4.3/backend/dnssd.c
--- cups-1.4.3/backend/dnssd.c.dnssd-deviceid.patch 2010-04-16 19:36:12.226148774 +0100
+++ cups-1.4.3/backend/dnssd.c 2010-04-16 19:39:53.314148240 +0100
@@ -1192,15 +1192,22 @@ find_device (cups_array_t *devices,
if (device->device_id)
free(device->device_id);
+ if (device_id[0])
+ {
+ /* Mark this as the real device ID. */
+ ptr = device_id + strlen(device_id);
+ snprintf(ptr, sizeof(device_id) - (ptr - device_id), "FZY:0;");
+ }
+
if (!device_id[0] && strcmp(model, "Unknown"))
{
if (make_and_model[0])
- snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s;",
+ snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s;FZY:1;",
make_and_model, model);
else if (!strncasecmp(model, "designjet ", 10))
- snprintf(device_id, sizeof(device_id), "MFG:HP;MDL:%s", model + 10);
+ snprintf(device_id, sizeof(device_id), "MFG:HP;MDL:%s;FZY:1;", model + 10);
else if (!strncasecmp(model, "stylus ", 7))
- snprintf(device_id, sizeof(device_id), "MFG:EPSON;MDL:%s", model + 7);
+ snprintf(device_id, sizeof(device_id), "MFG:EPSON;MDL:%s;FZY:1;", model + 7);
else if ((ptr = strchr(model, ' ')) != NULL)
{
/*
@@ -1210,7 +1217,7 @@ find_device (cups_array_t *devices,
memcpy(make_and_model, model, ptr - model);
make_and_model[ptr - model] = '\0';
- snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s",
+ snprintf(device_id, sizeof(device_id), "MFG:%s;MDL:%s;FZY:1;",
make_and_model, ptr + 1);
}
}
cups-hostnamelookups.patch:
network.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
--- NEW FILE cups-hostnamelookups.patch ---
diff -up cups-1.4.4/scheduler/network.c.hostnamelookups cups-1.4.4/scheduler/network.c
--- cups-1.4.4/scheduler/network.c.hostnamelookups 2010-04-09 23:42:09.000000000 +0100
+++ cups-1.4.4/scheduler/network.c 2010-06-18 11:13:02.331979867 +0100
@@ -154,11 +154,7 @@ cupsdNetIFUpdate(void)
* Try looking up the hostname for the address as needed...
*/
-#ifdef __APPLE__
if (HostNameLookups)
-#else
- if (HostNameLookups || RemotePort)
-#endif /* __APPLE__ */
httpAddrLookup((http_addr_t *)(addr->ifa_addr), hostname,
sizeof(hostname));
else
@@ -166,7 +162,7 @@ cupsdNetIFUpdate(void)
/*
* Map the default server address and localhost to the server name
* and localhost, respectively; for all other addresses, use the
- * dotted notation...
+ * numeric address...
*/
if (httpAddrLocalhost((http_addr_t *)(addr->ifa_addr)))
cups-hp-deviceid-oid.patch:
snmp.c | 4 ++++
1 file changed, 4 insertions(+)
--- NEW FILE cups-hp-deviceid-oid.patch ---
diff -up cups-1.4.3/backend/snmp.c.hp-deviceid-oid cups-1.4.3/backend/snmp.c
--- cups-1.4.3/backend/snmp.c.hp-deviceid-oid 2009-12-08 02:13:42.000000000 +0000
+++ cups-1.4.3/backend/snmp.c 2010-04-13 15:00:26.486148914 +0100
@@ -194,6 +194,7 @@ static const int UriOID[] = { CUPS_OID_p
static const int LexmarkProductOID[] = { 1,3,6,1,4,1,641,2,1,2,1,2,1,-1 };
static const int LexmarkProductOID2[] = { 1,3,6,1,4,1,674,10898,100,2,1,2,1,2,1,-1 };
static const int LexmarkDeviceIdOID[] = { 1,3,6,1,4,1,641,2,1,2,1,3,1,-1 };
+static const int HPDeviceIdOID[] = { 1,3,6,1,4,1,11,2,3,9,1,1,7,0,-1 };
static const int XeroxProductOID[] = { 1,3,6,1,4,1,128,2,1,3,1,2,0,-1 };
static cups_array_t *DeviceURIs = NULL;
static int HostNameLookups = 0;
@@ -1003,6 +1004,9 @@ read_snmp_response(int fd) /* I - SNMP
_cupsSNMPWrite(fd, &(packet.address), CUPS_SNMP_VERSION_1,
packet.community, CUPS_ASN1_GET_REQUEST,
DEVICE_PRODUCT, XeroxProductOID);
+ _cupsSNMPWrite(fd, &(packet.address), CUPS_SNMP_VERSION_1,
+ packet.community, CUPS_ASN1_GET_REQUEST,
+ DEVICE_ID, HPDeviceIdOID);
break;
case DEVICE_DESCRIPTION :
cups-ricoh-deviceid-oid.patch:
snmp.c | 4 ++++
1 file changed, 4 insertions(+)
--- NEW FILE cups-ricoh-deviceid-oid.patch ---
diff -up cups-1.4.3/backend/snmp.c.ricoh-deviceid-oid cups-1.4.3/backend/snmp.c
--- cups-1.4.3/backend/snmp.c.ricoh-deviceid-oid 2010-05-11 17:30:57.266120467 +0100
+++ cups-1.4.3/backend/snmp.c 2010-05-11 17:31:16.267120141 +0100
@@ -195,6 +195,7 @@ static const int LexmarkProductOID[] = {
static const int LexmarkProductOID2[] = { 1,3,6,1,4,1,674,10898,100,2,1,2,1,2,1,-1 };
static const int LexmarkDeviceIdOID[] = { 1,3,6,1,4,1,641,2,1,2,1,3,1,-1 };
static const int HPDeviceIdOID[] = { 1,3,6,1,4,1,11,2,3,9,1,1,7,0,-1 };
+static const int RicohDeviceIdOID[] = { 1,3,6,1,4,1,367,3,2,1,1,1,11,0,-1 };
static const int XeroxProductOID[] = { 1,3,6,1,4,1,128,2,1,3,1,2,0,-1 };
static cups_array_t *DeviceURIs = NULL;
static int HostNameLookups = 0;
@@ -1002,6 +1003,9 @@ read_snmp_response(int fd) /* I - SNMP
packet.community, CUPS_ASN1_GET_REQUEST,
DEVICE_ID, LexmarkDeviceIdOID);
_cupsSNMPWrite(fd, &(packet.address), CUPS_SNMP_VERSION_1,
+ packet.community, CUPS_ASN1_GET_REQUEST,
+ DEVICE_ID, RicohDeviceIdOID);
+ _cupsSNMPWrite(fd, &(packet.address), CUPS_SNMP_VERSION_1,
packet.community, CUPS_ASN1_GET_REQUEST,
DEVICE_PRODUCT, XeroxProductOID);
_cupsSNMPWrite(fd, &(packet.address), CUPS_SNMP_VERSION_1,
cups-snmp-quirks.patch:
snmp-supplies.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
--- NEW FILE cups-snmp-quirks.patch ---
diff -up cups-1.4.2/backend/snmp-supplies.c.snmp-quirks cups-1.4.2/backend/snmp-supplies.c
--- cups-1.4.2/backend/snmp-supplies.c.snmp-quirks 2010-06-09 15:55:05.320019839 +0100
+++ cups-1.4.2/backend/snmp-supplies.c 2010-06-09 15:55:15.638146234 +0100
@@ -38,6 +38,13 @@
/*
+ * Printer quirks...
+ */
+
+#define QUIRK_CAPACITY (1<<0)
+
+
+/*
* Local structures...
*/
@@ -57,6 +64,12 @@ typedef struct /**** Printer state ta
const char *keyword; /* IPP printer-state-reasons keyword */
} backend_state_t;
+typedef struct /**** Quirk names table ****/
+{
+ int bit; /* Quirk bit */
+ const char *keyword; /* cupsSNMPQuirks keyword */
+} quirk_name_t;
+
/*
* Local globals...
@@ -68,6 +81,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 const quirk_name_t const quirk_names[] =
+ {
+ /*
+ * The prtMarkerSuppliesLevel values are
+ * percentages, not levels relative to the
+ * stated capacity.
+ */
+ { QUIRK_CAPACITY, "capacity" }
+ };
/*
* Local functions...
@@ -208,6 +231,9 @@ backendSNMPSupplies(
if (i)
*ptr++ = ',';
+ if (quirks & QUIRK_CAPACITY)
+ 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(
http_addr_t *addr) /* I - Printer address */
{
int i, /* Looping var */
+ len, /* Quirk name length */
type; /* Current marker type */
cups_file_t *cachefile; /* Cache file */
const char *cachedir; /* CUPS_CACHEDIR value */
@@ -366,6 +393,7 @@ backend_init_supplies(
current_state = -1;
num_supplies = -1;
charset = -1;
+ quirks = 0;
memset(supplies, 0, sizeof(supplies));
@@ -381,6 +409,34 @@ backend_init_supplies(
return;
}
+ if (ppd &&
+ (ppdattr = ppdFindAttr(ppd, "cupsSNMPQuirks", NULL)) != NULL &&
+ ppdattr->value)
+ {
+ ptr = ppdattr->value;
+ while (*ptr != '\0')
+ {
+ /*
+ * Match keyword against quirk_names table.
+ */
+
+ for (i = 0; i < sizeof (quirk_names) / sizeof (quirk_names[0]); i++)
+ {
+ len = strlen (quirk_names[i].keyword);
+ if (!strncmp (value, quirk_names[i].keyword, len) &&
+ (value[len] == '\0' || value[len] == ' '))
+ quirks |= quirk_names[i].bit;
+ }
+
+ /*
+ * Advance to next keyword.
+ */
+
+ ptr += strcspn (ptr, " ");
+ ptr += strspn (ptr, " ");
+ }
+ }
+
ppdClose(ppd);
/*
Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/.cvsignore,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -p -r1.48 -r1.49
--- .cvsignore 10 Nov 2009 13:26:17 -0000 1.48
+++ .cvsignore 18 Jun 2010 10:41:28 -0000 1.49
@@ -43,3 +43,4 @@ cups-1.4b2-source.tar.bz2
cups-1.4b2-svn8404-source.tar.bz2
cups-1.4b2-source.tar.bz2
cups-1.4b2-svn8404-source.tar.bz2
+cups-1.4.4-source.tar.bz2
cups-getpass.patch:
usersys.c | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
Index: cups-getpass.patch
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/cups-getpass.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -p -r1.2 -r1.3
--- cups-getpass.patch 13 Nov 2006 16:26:25 -0000 1.2
+++ cups-getpass.patch 18 Jun 2010 10:41:29 -0000 1.3
@@ -1,6 +1,7 @@
---- cups-1.2.6/cups/usersys.c.getpass 2006-08-29 16:51:19.000000000 +0100
-+++ cups-1.2.6/cups/usersys.c 2006-11-13 16:19:32.000000000 +0000
-@@ -46,6 +46,8 @@
+diff -up cups-1.4.4/cups/usersys.c.getpass cups-1.4.4/cups/usersys.c
+--- cups-1.4.4/cups/usersys.c.getpass 2010-03-30 23:07:33.000000000 +0100
++++ cups-1.4.4/cups/usersys.c 2010-06-18 09:38:08.368096897 +0100
+@@ -41,6 +41,8 @@
#include "globals.h"
#include <stdlib.h>
#include <sys/stat.h>
@@ -8,11 +9,11 @@
+#include <signal.h>
#ifdef WIN32
# include <windows.h>
- #endif /* WIN32 */
-@@ -455,7 +457,29 @@
- const char * /* O - Password */
- _cupsGetPassword(const char *prompt) /* I - Prompt string */
- {
+ #else
+@@ -406,7 +408,29 @@ _cupsGetPassword(const char *prompt) /*
+ * Use the standard getpass function to get a password from the console.
+ */
+
- return (getpass(prompt));
+ static char password[100];
+ struct termios oldtio, newtio;
@@ -37,6 +38,6 @@
+ else
+ password[0] ='\0';
+ return password;
- }
#endif /* WIN32 */
+ }
cups-lspp.patch:
Makedefs.in | 4
config-scripts/cups-lspp.m4 | 36 +++
config.h.in | 7
configure.in | 2
cups/cups.h | 9
data/Makefile | 5
data/mls | 261 +++++++++++++++++++++++++
data/selinux | 261 +++++++++++++++++++++++++
data/te | 261 +++++++++++++++++++++++++
filter/common.c | 139 +++++++++++++
filter/pstops.c | 133 ++++++++++++
scheduler/client.c | 171 ++++++++++++++++
scheduler/client.h | 14 +
scheduler/conf.c | 56 +++++
scheduler/conf.h | 9
scheduler/ipp.c | 456 ++++++++++++++++++++++++++++++++++++++++++++
scheduler/job.c | 303 ++++++++++++++++++++++++++++-
scheduler/job.h | 11 +
scheduler/main.c | 32 +++
scheduler/printers.c | 53 +++++
20 files changed, 2215 insertions(+), 8 deletions(-)
Index: cups-lspp.patch
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/cups-lspp.patch,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -p -r1.47 -r1.48
--- cups-lspp.patch 23 Nov 2009 13:11:16 -0000 1.47
+++ cups-lspp.patch 18 Jun 2010 10:41:29 -0000 1.48
@@ -1,7 +1,7 @@
-diff -up cups-1.4.1/config.h.in.lspp cups-1.4.1/config.h.in
---- cups-1.4.1/config.h.in.lspp 2009-09-14 16:59:30.108873598 +0100
-+++ cups-1.4.1/config.h.in 2009-09-14 16:59:30.122873526 +0100
-@@ -619,6 +619,13 @@
+diff -up cups-1.4.4/config.h.in.lspp cups-1.4.4/config.h.in
+--- cups-1.4.4/config.h.in.lspp 2010-06-18 09:38:22.645104842 +0100
++++ cups-1.4.4/config.h.in 2010-06-18 09:38:22.681104733 +0100
+@@ -646,6 +646,13 @@
#undef HAVE_TCPD_H
@@ -15,9 +15,9 @@ diff -up cups-1.4.1/config.h.in.lspp cup
#endif /* !_CUPS_CONFIG_H_ */
/*
-diff -up /dev/null cups-1.4.1/config-scripts/cups-lspp.m4
---- /dev/null 2009-09-14 09:02:25.290577766 +0100
-+++ cups-1.4.1/config-scripts/cups-lspp.m4 2009-09-14 16:59:30.124872629 +0100
+diff -up cups-1.4.4/config-scripts/cups-lspp.m4.lspp cups-1.4.4/config-scripts/cups-lspp.m4
+--- cups-1.4.4/config-scripts/cups-lspp.m4.lspp 2010-06-18 09:38:22.681104733 +0100
++++ cups-1.4.4/config-scripts/cups-lspp.m4 2010-06-18 09:38:22.681104733 +0100
@@ -0,0 +1,36 @@
+dnl
+dnl LSPP code for the Common UNIX Printing System (CUPS).
@@ -55,9 +55,9 @@ diff -up /dev/null cups-1.4.1/config-scr
+ ;;
+ esac
+fi
-diff -up cups-1.4.1/configure.in.lspp cups-1.4.1/configure.in
---- cups-1.4.1/configure.in.lspp 2008-11-14 19:32:22.000000000 +0000
-+++ cups-1.4.1/configure.in 2009-09-14 16:59:30.125879233 +0100
+diff -up cups-1.4.4/configure.in.lspp cups-1.4.4/configure.in
+--- cups-1.4.4/configure.in.lspp 2010-06-16 01:39:16.000000000 +0100
++++ cups-1.4.4/configure.in 2010-06-18 09:38:22.682104565 +0100
@@ -42,6 +42,8 @@ sinclude(config-scripts/cups-pap.m4)
sinclude(config-scripts/cups-pdf.m4)
sinclude(config-scripts/cups-scripting.m4)
@@ -67,9 +67,9 @@ diff -up cups-1.4.1/configure.in.lspp cu
INSTALL_LANGUAGES=""
UNINSTALL_LANGUAGES=""
LANGFILES=""
-diff -up cups-1.4.1/cups/cups.h.lspp cups-1.4.1/cups/cups.h
---- cups-1.4.1/cups/cups.h.lspp 2009-08-28 18:51:05.000000000 +0100
-+++ cups-1.4.1/cups/cups.h 2009-09-14 16:59:30.127873074 +0100
+diff -up cups-1.4.4/cups/cups.h.lspp cups-1.4.4/cups/cups.h
+--- cups-1.4.4/cups/cups.h.lspp 2010-04-23 19:56:34.000000000 +0100
++++ cups-1.4.4/cups/cups.h 2010-06-18 09:38:22.682104565 +0100
@@ -15,6 +15,9 @@
* This file is subject to the Apple OS-Developed Software exception.
*/
@@ -80,7 +80,7 @@ diff -up cups-1.4.1/cups/cups.h.lspp cup
#ifndef _CUPS_CUPS_H_
# define _CUPS_CUPS_H_
-@@ -84,6 +87,12 @@ extern "C" {
+@@ -86,6 +89,12 @@ extern "C" {
# define CUPS_WHICHJOBS_COMPLETED 1
@@ -93,9 +93,9 @@ diff -up cups-1.4.1/cups/cups.h.lspp cup
/*
* Types and structures...
*/
-diff -up cups-1.4.1/data/Makefile.lspp cups-1.4.1/data/Makefile
---- cups-1.4.1/data/Makefile.lspp 2008-11-12 19:30:57.000000000 +0000
-+++ cups-1.4.1/data/Makefile 2009-09-14 16:59:30.129874067 +0100
+diff -up cups-1.4.4/data/Makefile.lspp cups-1.4.4/data/Makefile
+--- cups-1.4.4/data/Makefile.lspp 2008-11-12 19:30:57.000000000 +0000
++++ cups-1.4.4/data/Makefile 2010-06-18 09:38:22.686104153 +0100
@@ -25,7 +25,10 @@ BANNERS = \
secret \
standard \
@@ -108,9 +108,9 @@ diff -up cups-1.4.1/data/Makefile.lspp c
CHARMAPS = \
euc-cn.txt \
-diff -up /dev/null cups-1.4.1/data/mls
---- /dev/null 2009-09-14 09:02:25.290577766 +0100
-+++ cups-1.4.1/data/mls 2009-09-14 16:59:30.131873095 +0100
+diff -up cups-1.4.4/data/mls.lspp cups-1.4.4/data/mls
+--- cups-1.4.4/data/mls.lspp 2010-06-18 09:38:22.686104153 +0100
++++ cups-1.4.4/data/mls 2010-06-18 09:38:22.687104566 +0100
@@ -0,0 +1,261 @@
+%!PS-Adobe-3.0
+%%BoundingBox: 0 0 612 792
@@ -373,9 +373,9 @@ diff -up /dev/null cups-1.4.1/data/mls
+% End of "$Id$".
+%
+%%EOF
-diff -up /dev/null cups-1.4.1/data/selinux
---- /dev/null 2009-09-14 09:02:25.290577766 +0100
-+++ cups-1.4.1/data/selinux 2009-09-14 16:59:30.133872489 +0100
+diff -up cups-1.4.4/data/selinux.lspp cups-1.4.4/data/selinux
+--- cups-1.4.4/data/selinux.lspp 2010-06-18 09:38:22.687104566 +0100
++++ cups-1.4.4/data/selinux 2010-06-18 09:38:22.687104566 +0100
@@ -0,0 +1,261 @@
+%!PS-Adobe-3.0
+%%BoundingBox: 0 0 612 792
@@ -638,9 +638,9 @@ diff -up /dev/null cups-1.4.1/data/selin
+% End of "$Id$".
+%
+%%EOF
-diff -up /dev/null cups-1.4.1/data/te
---- /dev/null 2009-09-14 09:02:25.290577766 +0100
-+++ cups-1.4.1/data/te 2009-09-14 16:59:30.135873116 +0100
+diff -up cups-1.4.4/data/te.lspp cups-1.4.4/data/te
+--- cups-1.4.4/data/te.lspp 2010-06-18 09:38:22.688105441 +0100
++++ cups-1.4.4/data/te 2010-06-18 09:38:22.688105441 +0100
@@ -0,0 +1,261 @@
+%!PS-Adobe-3.0
+%%BoundingBox: 0 0 612 792
@@ -903,9 +903,9 @@ diff -up /dev/null cups-1.4.1/data/te
+% End of "$Id$".
+%
+%%EOF
-diff -up cups-1.4.1/filter/common.c.lspp cups-1.4.1/filter/common.c
---- cups-1.4.1/filter/common.c.lspp 2007-07-11 22:46:42.000000000 +0100
-+++ cups-1.4.1/filter/common.c 2009-09-14 16:59:30.137872500 +0100
+diff -up cups-1.4.4/filter/common.c.lspp cups-1.4.4/filter/common.c
+--- cups-1.4.4/filter/common.c.lspp 2007-07-11 22:46:42.000000000 +0100
++++ cups-1.4.4/filter/common.c 2010-06-18 09:38:22.689104687 +0100
@@ -30,6 +30,12 @@
* Include necessary headers...
*/
@@ -1074,10 +1074,10 @@ diff -up cups-1.4.1/filter/common.c.lspp
/*
-diff -up cups-1.4.1/filter/pstops.c.lspp cups-1.4.1/filter/pstops.c
---- cups-1.4.1/filter/pstops.c.lspp 2009-09-14 16:59:29.803998275 +0100
-+++ cups-1.4.1/filter/pstops.c 2009-09-14 16:59:30.141872862 +0100
-@@ -3242,6 +3242,18 @@ write_label_prolog(pstops_doc_t *doc, /*
+diff -up cups-1.4.4/filter/pstops.c.lspp cups-1.4.4/filter/pstops.c
+--- cups-1.4.4/filter/pstops.c.lspp 2010-06-18 09:38:22.579980230 +0100
++++ cups-1.4.4/filter/pstops.c 2010-06-18 09:38:22.693979174 +0100
+@@ -3314,6 +3314,18 @@ write_label_prolog(pstops_doc_t *doc, /*
{
const char *classification; /* CLASSIFICATION environment variable */
const char *ptr; /* Temporary string pointer */
@@ -1096,7 +1096,7 @@ diff -up cups-1.4.1/filter/pstops.c.lspp
/*
-@@ -3264,6 +3276,124 @@ write_label_prolog(pstops_doc_t *doc, /*
+@@ -3336,6 +3348,124 @@ write_label_prolog(pstops_doc_t *doc, /*
return;
}
@@ -1221,7 +1221,7 @@ diff -up cups-1.4.1/filter/pstops.c.lspp
/*
* Set the classification + page label string...
*/
-@@ -3342,7 +3472,10 @@ write_label_prolog(pstops_doc_t *doc, /*
+@@ -3414,7 +3544,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");
@@ -1232,9 +1232,9 @@ diff -up cups-1.4.1/filter/pstops.c.lspp
/*
-diff -up cups-1.4.1/Makedefs.in.lspp cups-1.4.1/Makedefs.in
---- cups-1.4.1/Makedefs.in.lspp 2009-09-14 16:59:30.024872775 +0100
-+++ cups-1.4.1/Makedefs.in 2009-09-14 16:59:30.143872406 +0100
+diff -up cups-1.4.4/Makedefs.in.lspp cups-1.4.4/Makedefs.in
+--- cups-1.4.4/Makedefs.in.lspp 2010-06-18 09:38:22.654104605 +0100
++++ cups-1.4.4/Makedefs.in 2010-06-18 09:38:22.698980378 +0100
@@ -146,7 +146,7 @@ LIBCUPSORDER = @LIBCUPSORDER@
LIBCUPSIMAGEORDER = @LIBCUPSIMAGEORDER@
LINKCUPS = @LINKCUPS@ $(SSLLIBS) $(DNSSDLIBS)
@@ -1253,9 +1253,9 @@ diff -up cups-1.4.1/Makedefs.in.lspp cup
.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.1/scheduler/client.c.lspp cups-1.4.1/scheduler/client.c
---- cups-1.4.1/scheduler/client.c.lspp 2009-07-15 00:02:05.000000000 +0100
-+++ cups-1.4.1/scheduler/client.c 2009-09-14 16:59:30.148872510 +0100
+diff -up cups-1.4.4/scheduler/client.c.lspp cups-1.4.4/scheduler/client.c
+--- cups-1.4.4/scheduler/client.c.lspp 2010-04-23 19:56:34.000000000 +0100
++++ cups-1.4.4/scheduler/client.c 2010-06-18 09:38:22.705980063 +0100
@@ -44,6 +44,7 @@
* valid_host() - Is the Host: field valid?
* write_file() - Send a file via HTTP.
@@ -1425,7 +1425,7 @@ diff -up cups-1.4.1/scheduler/client.c.l
}
if (con->http.state != HTTP_POST_SEND)
-@@ -4472,6 +4599,50 @@ make_certificate(cupsd_client_t *con) /*
+@@ -4481,6 +4608,50 @@ make_certificate(cupsd_client_t *con) /*
#endif /* HAVE_SSL */
@@ -1476,9 +1476,9 @@ diff -up cups-1.4.1/scheduler/client.c.l
/*
* 'pipe_command()' - Pipe the output of a command to the remote client.
*/
-diff -up cups-1.4.1/scheduler/client.h.lspp cups-1.4.1/scheduler/client.h
---- cups-1.4.1/scheduler/client.h.lspp 2009-05-26 23:01:23.000000000 +0100
-+++ cups-1.4.1/scheduler/client.h 2009-09-14 16:59:30.150872942 +0100
+diff -up cups-1.4.4/scheduler/client.h.lspp cups-1.4.4/scheduler/client.h
+--- cups-1.4.4/scheduler/client.h.lspp 2009-05-26 23:01:23.000000000 +0100
++++ cups-1.4.4/scheduler/client.h 2010-06-18 09:38:22.711104323 +0100
@@ -18,6 +18,13 @@
#endif /* HAVE_AUTHORIZATION_H */
@@ -1514,9 +1514,9 @@ diff -up cups-1.4.1/scheduler/client.h.l
/*
-diff -up cups-1.4.1/scheduler/conf.c.lspp cups-1.4.1/scheduler/conf.c
---- cups-1.4.1/scheduler/conf.c.lspp 2009-09-14 16:59:29.837998036 +0100
-+++ cups-1.4.1/scheduler/conf.c 2009-09-14 16:59:30.155872264 +0100
+diff -up cups-1.4.4/scheduler/conf.c.lspp cups-1.4.4/scheduler/conf.c
+--- cups-1.4.4/scheduler/conf.c.lspp 2010-06-18 09:38:22.526979999 +0100
++++ cups-1.4.4/scheduler/conf.c 2010-06-18 09:38:22.713979624 +0100
@@ -29,6 +29,7 @@
* read_configuration() - Read a configuration file.
* read_location() - Read a <Location path> definition.
@@ -1535,7 +1535,7 @@ diff -up cups-1.4.1/scheduler/conf.c.lsp
/*
* Configuration variable structure...
-@@ -174,6 +178,10 @@ static const cupsd_var_t variables[] =
+@@ -172,6 +176,10 @@ static const cupsd_var_t variables[] =
# if defined(HAVE_LIBSSL) || defined(HAVE_GNUTLS)
{ "ServerKey", &ServerKey, CUPSD_VARTYPE_PATHNAME },
# endif /* HAVE_LIBSSL || HAVE_GNUTLS */
@@ -1546,7 +1546,7 @@ diff -up cups-1.4.1/scheduler/conf.c.lsp
#endif /* HAVE_SSL */
{ "ServerName", &ServerName, CUPSD_VARTYPE_STRING },
{ "ServerRoot", &ServerRoot, CUPSD_VARTYPE_PATHNAME },
-@@ -432,6 +440,9 @@ cupsdReadConfiguration(void)
+@@ -430,6 +438,9 @@ cupsdReadConfiguration(void)
const char *tmpdir; /* TMPDIR environment variable */
struct stat tmpinfo; /* Temporary directory info */
cupsd_policy_t *p; /* Policy */
@@ -1556,7 +1556,7 @@ diff -up cups-1.4.1/scheduler/conf.c.lsp
/*
-@@ -718,6 +729,25 @@ cupsdReadConfiguration(void)
+@@ -713,6 +724,25 @@ cupsdReadConfiguration(void)
RunUser = getuid();
@@ -1582,7 +1582,7 @@ diff -up cups-1.4.1/scheduler/conf.c.lsp
cupsdLogMessage(CUPSD_LOG_INFO, "Remote access is %s.",
RemotePort ? "enabled" : "disabled");
-@@ -1083,11 +1113,23 @@ cupsdReadConfiguration(void)
+@@ -1081,11 +1111,23 @@ cupsdReadConfiguration(void)
* Update classification setting as needed...
*/
@@ -1607,7 +1607,7 @@ diff -up cups-1.4.1/scheduler/conf.c.lsp
/*
* Check the MaxClients setting, and then allocate memory for it...
-@@ -3646,6 +3688,18 @@ read_location(cups_file_t *fp, /* I - C
+@@ -3644,6 +3686,18 @@ read_location(cups_file_t *fp, /* I - C
return ((FatalErrors & CUPSD_FATAL_CONFIG) ? 0 : linenum);
}
@@ -1626,10 +1626,10 @@ diff -up cups-1.4.1/scheduler/conf.c.lsp
/*
* 'read_policy()' - Read a <Policy name> definition.
-diff -up cups-1.4.1/scheduler/conf.h.lspp cups-1.4.1/scheduler/conf.h
---- cups-1.4.1/scheduler/conf.h.lspp 2009-09-14 16:59:29.839997456 +0100
-+++ cups-1.4.1/scheduler/conf.h 2009-09-14 16:59:30.157872484 +0100
-@@ -253,6 +253,12 @@ VAR char *ServerKey VALUE(NULL);
+diff -up cups-1.4.4/scheduler/conf.h.lspp cups-1.4.4/scheduler/conf.h
+--- cups-1.4.4/scheduler/conf.h.lspp 2010-06-18 09:38:22.527979881 +0100
++++ cups-1.4.4/scheduler/conf.h 2010-06-18 09:38:22.715979172 +0100
+@@ -250,6 +250,12 @@ VAR char *ServerKey VALUE(NULL);
VAR int SSLOptions VALUE(CUPSD_SSL_NONE);
/* SSL/TLS options */
#endif /* HAVE_SSL */
@@ -1642,7 +1642,7 @@ diff -up cups-1.4.1/scheduler/conf.h.lsp
#ifdef HAVE_LAUNCHD
VAR int LaunchdTimeout VALUE(DEFAULT_KEEPALIVE);
-@@ -271,6 +277,9 @@ VAR char *SystemGroupAuthKey VALUE(NULL
+@@ -266,6 +272,9 @@ VAR char *SystemGroupAuthKey VALUE(NULL
/* System group auth key */
#endif /* HAVE_AUTHORIZATION_H */
@@ -1652,9 +1652,9 @@ diff -up cups-1.4.1/scheduler/conf.h.lsp
/*
* Prototypes...
-diff -up cups-1.4.1/scheduler/ipp.c.lspp cups-1.4.1/scheduler/ipp.c
---- cups-1.4.1/scheduler/ipp.c.lspp 2009-09-14 16:59:29.974871379 +0100
-+++ cups-1.4.1/scheduler/ipp.c 2009-09-14 16:59:30.168872218 +0100
+diff -up cups-1.4.4/scheduler/ipp.c.lspp cups-1.4.4/scheduler/ipp.c
+--- cups-1.4.4/scheduler/ipp.c.lspp 2010-06-18 09:38:22.599103898 +0100
++++ cups-1.4.4/scheduler/ipp.c 2010-06-18 09:39:08.308979874 +0100
@@ -41,6 +41,7 @@
* cancel_all_jobs() - Cancel all print jobs.
* cancel_job() - Cancel a print job.
@@ -1698,10 +1698,10 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
static int check_quotas(cupsd_client_t *con, cupsd_printer_t *p);
static ipp_attribute_t *copy_attribute(ipp_t *to, ipp_attribute_t *attr,
int quickcopy);
-@@ -1338,6 +1353,21 @@ add_job(cupsd_client_t *con, /* I - Cl
- int kbytes; /* Size of print file */
- int i; /* Looping var */
- int lowerpagerange; /* Page range bound */
+@@ -1355,6 +1370,21 @@ add_job(cupsd_client_t *con, /* I - Cl
+ ipp_attribute_t *media_col, /* media-col attribute */
+ *media_margin; /* media-*-margin attribute */
+ ipp_t *unsup_col; /* media-col in unsupported response */
+#ifdef WITH_LSPP
+ char *audit_message; /* Audit message string */
+ char *printerfile; /* device file pointed to by the printer */
@@ -1720,9 +1720,9 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
cupsdLogMessage(CUPSD_LOG_DEBUG2, "add_job(%p[%d], %p(%s), %p(%s/%s))",
-@@ -1554,6 +1584,104 @@ add_job(cupsd_client_t *con, /* I - Cl
+@@ -1625,6 +1655,104 @@ add_job(cupsd_client_t *con, /* I - Cl
ippAddString(con->request, IPP_TAG_JOB, IPP_TAG_NAME, "job-name", NULL,
- title = "Untitled");
+ "Untitled");
+#ifdef WITH_LSPP
+ if (is_lspp_config())
@@ -1825,7 +1825,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
if ((job = cupsdAddJob(priority, printer->name)) == NULL)
{
send_ipp_status(con, IPP_INTERNAL_ERROR,
-@@ -1562,6 +1690,32 @@ add_job(cupsd_client_t *con, /* I - Cl
+@@ -1633,6 +1761,32 @@ add_job(cupsd_client_t *con, /* I - Cl
return (NULL);
}
@@ -1858,7 +1858,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
job->dtype = printer->type & (CUPS_PRINTER_CLASS | CUPS_PRINTER_IMPLICIT |
CUPS_PRINTER_REMOTE);
job->attrs = con->request;
-@@ -1769,6 +1923,29 @@ add_job(cupsd_client_t *con, /* I - Cl
+@@ -1838,6 +1992,29 @@ add_job(cupsd_client_t *con, /* I - Cl
attr->values[0].string.text = _cupsStrRetain(printer->job_sheets[0]);
attr->values[1].string.text = _cupsStrRetain(printer->job_sheets[1]);
}
@@ -1888,7 +1888,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
job->job_sheets = attr;
-@@ -1799,6 +1976,9 @@ add_job(cupsd_client_t *con, /* I - Cl
+@@ -1868,6 +2045,9 @@ add_job(cupsd_client_t *con, /* I - Cl
"job-sheets=\"%s,none\", "
"job-originating-user-name=\"%s\"",
Classification, job->username);
@@ -1898,7 +1898,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
}
else if (attr->num_values == 2 &&
strcmp(attr->values[0].string.text,
-@@ -1817,6 +1997,9 @@ add_job(cupsd_client_t *con, /* I - Cl
+@@ -1886,6 +2066,9 @@ add_job(cupsd_client_t *con, /* I - Cl
"job-originating-user-name=\"%s\"",
attr->values[0].string.text,
attr->values[1].string.text, job->username);
@@ -1908,7 +1908,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
}
else if (strcmp(attr->values[0].string.text, Classification) &&
strcmp(attr->values[0].string.text, "none") &&
-@@ -1837,6 +2020,9 @@ add_job(cupsd_client_t *con, /* I - Cl
+@@ -1906,6 +2089,9 @@ add_job(cupsd_client_t *con, /* I - Cl
"job-originating-user-name=\"%s\"",
attr->values[0].string.text,
attr->values[1].string.text, job->username);
@@ -1918,7 +1918,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
}
}
else if (strcmp(attr->values[0].string.text, Classification) &&
-@@ -1877,8 +2063,52 @@ add_job(cupsd_client_t *con, /* I - Cl
+@@ -1946,8 +2132,52 @@ add_job(cupsd_client_t *con, /* I - Cl
"job-sheets=\"%s\", "
"job-originating-user-name=\"%s\"",
Classification, job->username);
@@ -1971,7 +1971,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
/*
* See if we need to add the starting sheet...
-@@ -4210,6 +4440,103 @@ check_rss_recipient(
+@@ -4300,6 +4530,103 @@ check_rss_recipient(
}
@@ -2075,7 +2075,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
/*
* 'check_quotas()' - Check quotas for a printer and user.
*/
-@@ -4761,6 +5088,15 @@ copy_banner(cupsd_client_t *con, /* I -
+@@ -4853,6 +5180,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 +2091,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
cupsdLogMessage(CUPSD_LOG_DEBUG2,
-@@ -4796,6 +5132,82 @@ copy_banner(cupsd_client_t *con, /* I -
+@@ -4888,6 +5224,82 @@ copy_banner(cupsd_client_t *con, /* I -
fchmod(cupsFileNumber(out), 0640);
fchown(cupsFileNumber(out), RunUser, Group);
@@ -2174,7 +2174,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
/*
* Try the localized banner file under the subdirectory...
-@@ -4890,6 +5302,24 @@ copy_banner(cupsd_client_t *con, /* I -
+@@ -4982,6 +5394,24 @@ copy_banner(cupsd_client_t *con, /* I -
else
s = attrname;
@@ -2199,7 +2199,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
if (!strcmp(s, "printer-name"))
{
cupsFilePuts(out, job->dest);
-@@ -6829,6 +7259,22 @@ get_job_attrs(cupsd_client_t *con, /* I
+@@ -6940,6 +7370,22 @@ get_job_attrs(cupsd_client_t *con, /* I
return;
}
@@ -2222,7 +2222,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
/*
* Copy attributes...
*/
-@@ -7048,6 +7494,11 @@ get_jobs(cupsd_client_t *con, /* I - C
+@@ -7170,6 +7616,11 @@ get_jobs(cupsd_client_t *con, /* I - C
if (username[0] && strcasecmp(username, job->username))
continue;
@@ -2234,7 +2234,7 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
if (count > 0)
ippAddSeparator(con->response);
-@@ -11430,6 +11881,11 @@ validate_user(cupsd_job_t *job, /* I
+@@ -11572,6 +12023,11 @@ validate_user(cupsd_job_t *job, /* I
strlcpy(username, get_username(con), userlen);
@@ -2246,9 +2246,9 @@ diff -up cups-1.4.1/scheduler/ipp.c.lspp
/*
* Check the username against the owner...
*/
-diff -up cups-1.4.1/scheduler/job.c.lspp cups-1.4.1/scheduler/job.c
---- cups-1.4.1/scheduler/job.c.lspp 2009-09-14 16:59:30.058872907 +0100
-+++ cups-1.4.1/scheduler/job.c 2009-09-14 17:00:42.616998003 +0100
+diff -up cups-1.4.4/scheduler/job.c.lspp cups-1.4.4/scheduler/job.c
+--- cups-1.4.4/scheduler/job.c.lspp 2010-06-18 09:38:22.629104109 +0100
++++ cups-1.4.4/scheduler/job.c 2010-06-18 09:38:22.734978722 +0100
@@ -66,6 +66,9 @@
* update_job_attrs() - Update the job-printer-* attributes.
*/
@@ -2403,7 +2403,7 @@ diff -up cups-1.4.1/scheduler/job.c.lspp
job->sheets = ippFindAttribute(job->attrs, "job-media-sheets-completed",
IPP_TAG_INTEGER);
job->job_sheets = ippFindAttribute(job->attrs, "job-sheets", IPP_TAG_NAME);
-@@ -1975,6 +2069,14 @@ cupsdSaveJob(cupsd_job_t *job) /* I - J
+@@ -2013,6 +2107,14 @@ cupsdSaveJob(cupsd_job_t *job) /* I - J
{
char filename[1024]; /* Job control filename */
cups_file_t *fp; /* Job file */
@@ -2418,7 +2418,7 @@ diff -up cups-1.4.1/scheduler/job.c.lspp
cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdSaveJob(job=%p(%d)): job->attrs=%p",
-@@ -1993,6 +2095,76 @@ cupsdSaveJob(cupsd_job_t *job) /* I - J
+@@ -2031,6 +2133,76 @@ cupsdSaveJob(cupsd_job_t *job) /* I - J
fchmod(cupsFileNumber(fp), 0600);
fchown(cupsFileNumber(fp), RunUser, Group);
@@ -2495,7 +2495,7 @@ diff -up cups-1.4.1/scheduler/job.c.lspp
job->attrs->state = IPP_IDLE;
if (ippWriteIO(fp, (ipp_iocb_t)cupsFileWrite, 1, NULL,
-@@ -3138,6 +3310,18 @@ get_options(cupsd_job_t *job, /* I - Jo
+@@ -3188,6 +3360,18 @@ get_options(cupsd_job_t *job, /* I - Jo
banner_page)
continue;
@@ -2514,7 +2514,7 @@ diff -up cups-1.4.1/scheduler/job.c.lspp
/*
* Otherwise add them to the list...
*/
-@@ -3810,6 +3994,19 @@ static void
+@@ -3860,6 +4044,19 @@ static void
start_job(cupsd_job_t *job, /* I - Job ID */
cupsd_printer_t *printer) /* I - Printer to print job */
{
@@ -2534,7 +2534,7 @@ diff -up cups-1.4.1/scheduler/job.c.lspp
cupsdLogMessage(CUPSD_LOG_DEBUG2, "start_job(job=%p(%d), printer=%p(%s))",
job, job->id, printer, printer->name);
-@@ -3932,6 +4129,106 @@ start_job(cupsd_job_t *job, /* I -
+@@ -3982,6 +4179,106 @@ start_job(cupsd_job_t *job, /* I -
fcntl(job->side_pipes[1], F_SETFD,
fcntl(job->side_pipes[1], F_GETFD) | FD_CLOEXEC);
@@ -2641,9 +2641,9 @@ diff -up cups-1.4.1/scheduler/job.c.lspp
/*
* Now start the first file in the job...
*/
-diff -up cups-1.4.1/scheduler/job.h.lspp cups-1.4.1/scheduler/job.h
---- cups-1.4.1/scheduler/job.h.lspp 2009-05-11 23:46:01.000000000 +0100
-+++ cups-1.4.1/scheduler/job.h 2009-09-14 16:59:30.177872674 +0100
+diff -up cups-1.4.4/scheduler/job.h.lspp cups-1.4.4/scheduler/job.h
+--- cups-1.4.4/scheduler/job.h.lspp 2009-05-11 23:46:01.000000000 +0100
++++ cups-1.4.4/scheduler/job.h 2010-06-18 09:38:22.734978722 +0100
@@ -13,6 +13,13 @@
* file is missing or damaged, see the license at "http://www.cups.org/".
*/
@@ -2669,11 +2669,11 @@ diff -up cups-1.4.1/scheduler/job.h.lspp
};
typedef struct cupsd_joblog_s /**** Job log message ****/
-diff -up cups-1.4.1/scheduler/main.c.lspp cups-1.4.1/scheduler/main.c
---- cups-1.4.1/scheduler/main.c.lspp 2009-09-14 16:59:29.925872130 +0100
-+++ cups-1.4.1/scheduler/main.c 2009-09-14 16:59:30.180872667 +0100
-@@ -35,6 +35,8 @@
- * usage() - Show scheduler usage.
+diff -up cups-1.4.4/scheduler/main.c.lspp cups-1.4.4/scheduler/main.c
+--- cups-1.4.4/scheduler/main.c.lspp 2010-06-18 09:38:22.574980424 +0100
++++ cups-1.4.4/scheduler/main.c 2010-06-18 09:39:26.548103442 +0100
+@@ -37,6 +37,8 @@
+ * usage() - Show scheduler usage.
*/
+/* (c) Copyright 2005-2006 Hewlett-Packard Development Company, L.P. */
@@ -2681,7 +2681,7 @@ diff -up cups-1.4.1/scheduler/main.c.lsp
/*
* Include necessary headers...
*/
-@@ -73,6 +75,9 @@
+@@ -76,6 +78,9 @@
# include <dlfcn.h>
#endif /* __APPLE__ && HAVE_DLFCN_H */
@@ -2691,7 +2691,7 @@ diff -up cups-1.4.1/scheduler/main.c.lsp
/*
* Local functions...
-@@ -156,6 +161,9 @@ main(int argc, /* I - Number of comm
+@@ -161,6 +166,9 @@ main(int argc, /* I - Number of comm
int launchd_idle_exit;
/* Idle exit on select timeout? */
#endif /* HAVE_LAUNCHD */
@@ -2701,7 +2701,7 @@ diff -up cups-1.4.1/scheduler/main.c.lsp
#ifdef HAVE_GETEUID
-@@ -462,6 +470,25 @@ main(int argc, /* I - Number of comm
+@@ -470,6 +478,25 @@ main(int argc, /* I - Number of comm
#endif /* DEBUG */
}
@@ -2727,7 +2727,7 @@ diff -up cups-1.4.1/scheduler/main.c.lsp
/*
* Set the timezone info...
*/
-@@ -1230,6 +1257,11 @@ main(int argc, /* I - Number of comm
+@@ -1214,6 +1241,11 @@ main(int argc, /* I - Number of comm
cupsdStopSelect();
@@ -2739,10 +2739,10 @@ diff -up cups-1.4.1/scheduler/main.c.lsp
return (!stop_scheduler);
}
-diff -up cups-1.4.1/scheduler/printers.c.lspp cups-1.4.1/scheduler/printers.c
---- cups-1.4.1/scheduler/printers.c.lspp 2009-09-14 16:59:29.866997809 +0100
-+++ cups-1.4.1/scheduler/printers.c 2009-09-14 16:59:30.185871787 +0100
-@@ -58,6 +58,8 @@
+diff -up cups-1.4.4/scheduler/printers.c.lspp cups-1.4.4/scheduler/printers.c
+--- cups-1.4.4/scheduler/printers.c.lspp 2010-06-18 09:38:22.556104527 +0100
++++ cups-1.4.4/scheduler/printers.c 2010-06-18 09:38:22.740980299 +0100
+@@ -59,6 +59,8 @@
* write_xml_string() - Write a string with XML escaping.
*/
@@ -2751,7 +2751,7 @@ diff -up cups-1.4.1/scheduler/printers.c
/*
* Include necessary headers...
*/
-@@ -86,6 +88,10 @@ static void write_irix_state(cupsd_print
+@@ -88,6 +90,10 @@ static void write_irix_state(cupsd_print
#endif /* __sgi */
static void write_xml_string(cups_file_t *fp, const char *s);
@@ -2762,7 +2762,7 @@ diff -up cups-1.4.1/scheduler/printers.c
/*
* 'cupsdAddPrinter()' - Add a printer to the system.
-@@ -2166,6 +2172,13 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)
+@@ -2211,6 +2217,13 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)
"username",
"password"
};
@@ -2776,7 +2776,7 @@ diff -up cups-1.4.1/scheduler/printers.c
DEBUG_printf(("cupsdSetPrinterAttrs: entering name = %s, type = %x\n", p->name,
-@@ -2296,6 +2309,45 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)
+@@ -2341,6 +2354,45 @@ cupsdSetPrinterAttrs(cupsd_printer_t *p)
attr->values[1].string.text = _cupsStrAlloc(Classification ?
Classification : p->job_sheets[1]);
}
@@ -2822,7 +2822,7 @@ diff -up cups-1.4.1/scheduler/printers.c
}
p->raw = 0;
-@@ -4827,7 +4876,6 @@ write_irix_state(cupsd_printer_t *p) /*
+@@ -5320,7 +5372,6 @@ write_irix_state(cupsd_printer_t *p) /*
}
#endif /* __sgi */
cups-page-label.patch:
pstops.c | 40 +++++++++++++++++++++++++++++++++++-----
1 file changed, 35 insertions(+), 5 deletions(-)
Index: cups-page-label.patch
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/cups-page-label.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- cups-page-label.patch 2 Oct 2009 11:54:13 -0000 1.1
+++ cups-page-label.patch 18 Jun 2010 10:41:29 -0000 1.2
@@ -1,6 +1,6 @@
-diff -up cups-1.4.1/filter/pstops.c.page-label cups-1.4.1/filter/pstops.c
---- cups-1.4.1/filter/pstops.c.page-label 2009-10-02 12:33:33.410719651 +0100
-+++ cups-1.4.1/filter/pstops.c 2009-10-02 12:34:11.399594180 +0100
+diff -up cups-1.4.4/filter/pstops.c.page-label cups-1.4.4/filter/pstops.c
+--- cups-1.4.4/filter/pstops.c.page-label 2010-03-30 23:07:33.000000000 +0100
++++ cups-1.4.4/filter/pstops.c 2010-06-18 09:36:18.239126341 +0100
@@ -108,6 +108,7 @@ typedef struct /**** Document informa
int num_options; /* Number of document-wide options */
cups_option_t *options; /* Document-wide options */
@@ -9,7 +9,7 @@ diff -up cups-1.4.1/filter/pstops.c.page
saw_eof, /* Saw the %%EOF comment? */
slow_collate, /* Collate copies by hand? */
slow_duplex, /* Duplex pages slowly? */
-@@ -2048,7 +2049,7 @@ do_setup(pstops_doc_t *doc, /* I - Docu
+@@ -2083,7 +2084,7 @@ do_setup(pstops_doc_t *doc, /* I - Docu
* of the pages...
*/
@@ -18,7 +18,7 @@ diff -up cups-1.4.1/filter/pstops.c.page
write_label_prolog(doc, doc->page_label, PageBottom,
PageWidth - PageLength + PageTop, PageLength);
else
-@@ -2056,7 +2057,30 @@ do_setup(pstops_doc_t *doc, /* I - Docu
+@@ -2091,7 +2092,30 @@ do_setup(pstops_doc_t *doc, /* I - Docu
PageLength);
}
else
@@ -50,7 +50,7 @@ diff -up cups-1.4.1/filter/pstops.c.page
}
-@@ -2141,7 +2165,7 @@ end_nup(pstops_doc_t *doc, /* I - Docum
+@@ -2176,7 +2200,7 @@ end_nup(pstops_doc_t *doc, /* I - Docum
case 1 :
if (doc->use_ESPshowpage)
{
@@ -59,7 +59,7 @@ diff -up cups-1.4.1/filter/pstops.c.page
doc_puts(doc, "ESPshowpage\n");
}
break;
-@@ -2156,7 +2180,7 @@ end_nup(pstops_doc_t *doc, /* I - Docum
+@@ -2191,7 +2215,7 @@ end_nup(pstops_doc_t *doc, /* I - Docum
* Rotate the labels back to portrait...
*/
@@ -68,7 +68,7 @@ diff -up cups-1.4.1/filter/pstops.c.page
}
else if (Orientation == 0)
{
-@@ -2182,7 +2206,7 @@ end_nup(pstops_doc_t *doc, /* I - Docum
+@@ -2217,7 +2241,7 @@ end_nup(pstops_doc_t *doc, /* I - Docum
default :
if (is_last_page(number) && doc->use_ESPshowpage)
{
@@ -77,7 +77,7 @@ diff -up cups-1.4.1/filter/pstops.c.page
doc_puts(doc, "ESPshowpage\n");
}
break;
-@@ -2385,6 +2409,12 @@ set_pstops_options(
+@@ -2420,6 +2444,12 @@ set_pstops_options(
doc->new_bounding_box[3] = INT_MIN;
/*
@@ -87,6 +87,6 @@ diff -up cups-1.4.1/filter/pstops.c.page
+ doc->orientation = Orientation;
+
+ /*
- * AP_FIRSTPAGE_InputSlot
+ * AP_FIRSTPAGE_* and the corresponding non-first-page options.
*/
cups-paps.patch:
mime.convs.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: cups-paps.patch
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/cups-paps.patch,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -p -r1.4 -r1.5
--- cups-paps.patch 12 Nov 2008 16:09:54 -0000 1.4
+++ cups-paps.patch 18 Jun 2010 10:41:29 -0000 1.5
@@ -1,12 +1,12 @@
-diff -up cups-1.4b1/conf/mime.convs.in.paps cups-1.4b1/conf/mime.convs.in
---- cups-1.4b1/conf/mime.convs.in.paps 2008-10-08 22:07:45.000000000 +0100
-+++ cups-1.4b1/conf/mime.convs.in 2008-11-11 15:42:18.000000000 +0000
+diff -up cups-1.4.4/conf/mime.convs.in.paps cups-1.4.4/conf/mime.convs.in
+--- cups-1.4.4/conf/mime.convs.in.paps 2009-12-08 02:13:42.000000000 +0000
++++ cups-1.4.4/conf/mime.convs.in 2010-06-18 11:22:36.553980050 +0100
@@ -45,7 +45,7 @@ application/x-cshell application/postsc
application/x-csource application/postscript 33 texttops
application/x-perl application/postscript 33 texttops
application/x-shell application/postscript 33 texttops
-text/plain application/postscript 33 texttops
+text/plain application/postscript 33 texttopaps
+ text/css application/postscript 33 texttops
text/html application/postscript 33 texttops
image/gif application/vnd.cups-postscript 66 imagetops
- image/png application/vnd.cups-postscript 66 imagetops
cups-str3382.patch:
tempfile.c | 31 ++++++++++++-------------------
1 file changed, 12 insertions(+), 19 deletions(-)
Index: cups-str3382.patch
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/cups-str3382.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- cups-str3382.patch 20 Oct 2009 13:44:07 -0000 1.1
+++ cups-str3382.patch 18 Jun 2010 10:41:29 -0000 1.2
@@ -1,6 +1,6 @@
-diff -up cups-1.4.1/cups/tempfile.c.str3382 cups-1.4.1/cups/tempfile.c
---- cups-1.4.1/cups/tempfile.c.str3382 2008-12-10 06:03:11.000000000 +0100
-+++ cups-1.4.1/cups/tempfile.c 2009-10-20 15:08:39.000000000 +0200
+diff -up cups-1.4.3/cups/tempfile.c.str3382 cups-1.4.3/cups/tempfile.c
+--- cups-1.4.3/cups/tempfile.c.str3382 2010-01-18 19:47:12.000000000 +0100
++++ cups-1.4.3/cups/tempfile.c 2010-03-31 13:26:52.000000000 +0200
@@ -35,6 +35,7 @@
# include <io.h>
#else
@@ -33,8 +33,8 @@ diff -up cups-1.4.1/cups/tempfile.c.str3
- * Format a string using the hex time values...
- */
-
-- snprintf(filename, len - 1, "%s/%08lx%05lx", tmpdir,
-- (unsigned long)curtime.tv_sec, (unsigned long)curtime.tv_usec);
+- snprintf(filename, len - 1, "%s/%05x%08x", tmpdir, (unsigned)getpid(),
+- (unsigned)(curtime.tv_sec + curtime.tv_usec + tries));
-#endif /* WIN32 */
/*
Index: cups.spec
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/cups.spec,v
retrieving revision 1.574
retrieving revision 1.575
diff -u -p -r1.574 -r1.575
--- cups.spec 18 May 2010 16:07:16 -0000 1.574
+++ cups.spec 18 Jun 2010 10:41:29 -0000 1.575
@@ -1,102 +1,91 @@
%define php_extdir %(php-config --extension-dir 2>/dev/null || echo %{_libdir}/php4)
%global php_apiver %((echo 0; php -i 2>/dev/null | sed -n 's/^PHP API => //p') | tail -1)
-%define initdir /etc/rc.d/init.d
%define use_alternatives 1
%define lspp 1
%define cups_serverbin %{_exec_prefix}/lib/cups
Summary: Common Unix Printing System
Name: cups
-Version: 1.4.2
-Release: 31%{?dist}
+Version: 1.4.4
+Release: 1%{?dist}
License: GPLv2
Group: System Environment/Daemons
Source: http://ftp.easysw.com/pub/cups/%{version}/cups-%{version}-source.tar.bz2
+# Our initscript
Source1: cups.init
+# Pixmap for desktop file
Source2: cupsprinter.png
+# udev rules for libusb devices
Source3: cups-libusb.rules
+# LSPP-required ps->pdf filter
Source4: pstopdf
+# xinetd config file for cups-lpd service
Source5: cups-lpd
-Source6: pstoraster
-Source7: pstoraster.convs
-Source9: cups.logrotate
-Source10: ncp.backend
-Source12: cups.cron
-Source14: textonly.filter
-Source15: textonly.ppd
+# Logrotate configuration
+Source6: cups.logrotate
+# Backend for NCP protocol
+Source7: ncp.backend
+# Cron-based tmpwatch for /var/spool/cups/tmp
+Source8: cups.cron
+# Filter and PPD for textonly printing
+Source9: textonly.filter
+Source10: textonly.ppd
+# pstoraster filter from ghostscript.
+Source11: pstoraster
+Source12: pstoraster.convs
Patch1: cups-no-gzip-man.patch
Patch2: cups-1.1.16-system-auth.patch
Patch3: cups-multilib.patch
-Patch4: cups-str3448.patch
-Patch5: cups-serial.patch
-Patch6: cups-banners.patch
-Patch7: cups-serverbin-compat.patch
-Patch8: cups-no-export-ssllibs.patch
-Patch9: cups-paps.patch
-Patch10: cups-str3460.patch
-Patch11: cups-direct-usb.patch
-Patch12: cups-lpr-help.patch
-Patch13: cups-peercred.patch
-Patch14: cups-pid.patch
-Patch15: cups-page-label.patch
-Patch16: cups-eggcups.patch
-Patch17: cups-getpass.patch
-Patch18: cups-driverd-timeout.patch
-Patch19: cups-strict-ppd-line-length.patch
-Patch20: cups-logrotate.patch
-Patch21: cups-usb-paperout.patch
-Patch22: cups-build.patch
-Patch23: cups-res_init.patch
-Patch25: cups-filter-debug.patch
-Patch30: cups-uri-compat.patch
-Patch35: cups-cups-get-classes.patch
-Patch37: cups-avahi.patch
-Patch40: cups-str3382.patch
-Patch41: cups-str3285_v2-str3503.patch
-Patch42: cups-str3390.patch
-Patch43: cups-str3391.patch
-Patch44: cups-str3381.patch
-Patch45: cups-str3399.patch
-Patch46: cups-str3403.patch
-Patch47: cups-str3407.patch
-Patch48: cups-str3418.patch
-Patch49: cups-CVE-2009-3553.patch
-Patch50: cups-str3422.patch
-Patch51: cups-str3413.patch
-Patch52: cups-str3439.patch
-Patch53: cups-str3440.patch
-Patch54: cups-str3442.patch
-Patch55: cups-negative-snmp-string-length.patch
-Patch56: cups-sidechannel-intrs.patch
-Patch57: cups-media-empty-warning.patch
-Patch58: cups-str3435.patch
-Patch59: cups-str3436.patch
-Patch60: cups-str3425.patch
-Patch61: cups-str3428.patch
-Patch62: cups-str3431.patch
-Patch63: cups-gnutls-gcrypt-threads.patch
-Patch64: cups-str3458.patch
-Patch65: cups-EAI_AGAIN.patch
-Patch66: cups-str3505.patch
-Patch67: cups-CVE-2010-0302.patch
-Patch68: cups-str3541.patch
-Patch69: cups-texttops-rotate-page.patch
+Patch4: cups-serial.patch
+Patch5: cups-banners.patch
+Patch6: cups-serverbin-compat.patch
+Patch7: cups-no-export-ssllibs.patch
+Patch8: cups-direct-usb.patch
+Patch9: cups-lpr-help.patch
+Patch10: cups-peercred.patch
+Patch11: cups-pid.patch
+Patch12: cups-page-label.patch
+Patch13: cups-eggcups.patch
+Patch14: cups-getpass.patch
+Patch15: cups-driverd-timeout.patch
+Patch16: cups-strict-ppd-line-length.patch
+Patch17: cups-logrotate.patch
+Patch18: cups-usb-paperout.patch
+Patch19: cups-build.patch
+Patch20: cups-res_init.patch
+Patch21: cups-filter-debug.patch
+Patch22: cups-uri-compat.patch
+Patch23: cups-cups-get-classes.patch
+Patch24: cups-avahi.patch
+Patch25: cups-str3382.patch
+Patch26: cups-paps.patch
+Patch29: cups-0755.patch
+Patch30: cups-EAI_AGAIN.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
Patch100: cups-lspp.patch
+
+## SECURITY PATCHES:
+
Epoch: 1
Url: http://www.cups.org/
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-PreReq: /sbin/chkconfig /sbin/service
+Requires: /sbin/chkconfig /sbin/service
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
%if %use_alternatives
Provides: /usr/bin/lpq /usr/bin/lpr /usr/bin/lp /usr/bin/cancel /usr/bin/lprm /usr/bin/lpstat
-Prereq: /usr/sbin/alternatives
+Requires: /usr/sbin/alternatives
%endif
# Unconditionally obsolete LPRng so that upgrades work properly.
-Obsoletes: lpd lpr LPRng <= 3.8.15-3
-Provides: lpd lpr
+Obsoletes: lpd <= 3.8.15-3, lpr <= 3.8.15-3, LPRng <= 3.8.15-3
+Provides: lpd = 3.8.15-4, lpr = 3.8.15-4
Obsoletes: cupsddk < 1.2.3-7
Provides: cupsddk = 1.2.3-7
@@ -106,8 +95,8 @@ Provides: cupsddk-drivers = 1.2.3-7
# kdelibs conflict for bug #192585.
Conflicts: kdelibs < 6:3.5.2-6
-BuildPrereq: pam-devel pkgconfig
-BuildPrereq: gnutls-devel libacl-devel
+BuildRequires: pam-devel pkgconfig
+BuildRequires: gnutls-devel libacl-devel
BuildRequires: openldap-devel
BuildRequires: make >= 1:3.80
BuildRequires: php-devel, pcre-devel
@@ -118,15 +107,18 @@ BuildRequires: krb5-devel
BuildRequires: avahi-devel
BuildRequires: poppler-utils
+# Make sure we get postscriptdriver tags.
+BuildRequires: pycups
+
%if %lspp
-BuildPrereq: libselinux-devel >= 1.23
-BuildPrereq: audit-libs-devel >= 1.1
+BuildRequires: libselinux-devel >= 1.23
+BuildRequires: audit-libs-devel >= 1.1
%endif
# -fstack-protector-all requires GCC 4.0.1
BuildRequires: gcc >= 4.0.1
-BuildPrereq: dbus-devel >= 0.90
+BuildRequires: dbus-devel >= 0.90
Requires: dbus >= 0.90
# The paps package uses pango to render UTF-8 text to PostScript.
@@ -148,6 +140,9 @@ Requires: ghostscript
Requires: udev
Requires: acl
+# Make sure we have some filters for converting to raster format.
+Requires: ghostscript-cups
+
%package devel
Summary: Common Unix Printing System - development environment
Group: Development/Libraries
@@ -204,78 +199,95 @@ natively, without needing the lp/lpr com
%description lpd
The Common UNIX Printing System provides a portable printing layer for
-UNIX® operating systems. This is the package that provices standard
+UNIX® operating systems. This is the package that provides standard
lpd emulation.
%description php
The Common UNIX Printing System provides a portable printing layer for
-UNIX® operating systems. This is the package that provices a PHP
+UNIX® operating systems. This is the package that provides a PHP
module.
%prep
%setup -q
+# Don't gzip man pages in the Makefile, let rpmbuild do it.
%patch1 -p1 -b .no-gzip-man
+# Use the system pam configuration.
%patch2 -p1 -b .system-auth
+# Prevent multilib conflict in cups-config script.
%patch3 -p1 -b .multilib
-%patch4 -p1 -b .str3448
-%patch5 -p1 -b .serial
-%patch6 -p1 -b .banners
-%patch7 -p1 -b .serverbin-compat
-%patch8 -p1 -b .no-export-ssllibs
-%patch9 -p1 -b .paps
-%patch10 -p1 -b .str3460
-%patch11 -p1 -b .direct-usb
-%patch12 -p1 -b .lpr-help
-%patch13 -p1 -b .peercred
-%patch14 -p1 -b .pid
-%patch15 -p1 -b .page-label
-%patch16 -p1 -b .eggcups
-%patch17 -p1 -b .getpass
-%patch18 -p1 -b .driverd-timeout
-%patch19 -p1 -b .strict-ppd-line-length
-%patch20 -p1 -b .logrotate
-%patch21 -p1 -b .usb-paperout
-%patch22 -p1 -b .build
-%patch23 -p1 -b .res_init
-%patch25 -p1 -b .filter-debug
-%patch30 -p1 -b .uri-compat
-%patch35 -p1 -b .cups-get-classes
-%patch37 -p1 -b .avahi
-%patch40 -p1 -b .str3382
-%patch41 -p1 -b .str3285_v2-str3503
-%patch42 -p1 -b .str3390
-%patch43 -p1 -b .str3391
-%patch44 -p1 -b .str3381
-%patch45 -p1 -b .str3399
-%patch46 -p1 -b .str3403
-%patch47 -p1 -b .str3407
-%patch48 -p1 -b .str3418
-%patch49 -p1 -b .CVE-2009-3553
-%patch50 -p1 -b .str3422
-%patch51 -p1 -b .str3413
-%patch52 -p1 -b .str3439
-%patch53 -p1 -b .str3440
-%patch54 -p1 -b .str3442
-%patch55 -p1 -b .negative-snmp-string-length
-%patch56 -p1 -b .sidechannel-intrs
-%patch57 -p1 -b .media-empty-warning
-%patch58 -p1 -b .str3435
-%patch59 -p1 -b .str3436
-%patch60 -p1 -b .str3425
-%patch61 -p1 -b .str3428
-%patch62 -p1 -b .str3431
-#%patch63 -p1 -b .gnutls-gcrypt-threads
-%patch64 -p1 -b .str3458
-%patch65 -p1 -b .EAI_AGAIN
-%patch66 -p1 -b .str3505
-%patch67 -p1 -b .CVE-2010-0302
-%patch68 -p1 -b .str3541
-%patch69 -p1 -b .texttops-rotate-page
+# Fix compilation of serial backend.
+%patch4 -p1 -b .serial
+# Ignore rpm save/new files in the banners directory.
+%patch5 -p1 -b .banners
+# Use compatibility fallback path for ServerBin.
+%patch6 -p1 -b .serverbin-compat
+# Don't export SSLLIBS to cups-config.
+%patch7 -p1 -b .no-export-ssllibs
+# Allow file-based usb device URIs.
+%patch8 -p1 -b .direct-usb
+# Add --help option to lpr.
+%patch9 -p1 -b .lpr-help
+# Fix compilation of peer credentials support.
+%patch10 -p1 -b .peercred
+# Maintain a cupsd.pid file.
+%patch11 -p1 -b .pid
+# Fix orientation of page labels.
+%patch12 -p1 -b .page-label
+# Fix implementation of com.redhat.PrinterSpooler D-Bus object.
+%patch13 -p1 -b .eggcups
+# More sophisticated implementation of cupsGetPassword than getpass.
+%patch14 -p1 -b .getpass
+# Increase driverd timeout to 70s to accommodate foomatic.
+%patch15 -p1 -b .driverd-timeout
+# Only enforce maximum PPD line length when in strict mode.
+%patch16 -p1 -b .strict-ppd-line-length
+# Re-open the log if it has been logrotated under us.
+%patch17 -p1 -b .logrotate
+# Support for errno==ENOSPACE-based USB paper-out reporting.
+%patch18 -p1 -b .usb-paperout
+# Simplify the DNSSD parts so they can build using the compat library.
+%patch19 -p1 -b .build
+# Re-initialise the resolver on failure in httpAddrGetList().
+%patch20 -p1 -b .res_init
+# Log extra debugging information if no filters are available.
+%patch21 -p1 -b .filter-debug
+# Allow the usb backend to understand old-style URI formats.
+%patch22 -p1 -b .uri-compat
+# Fix support for older CUPS servers in cupsGetDests.
+%patch23 -p1 -b .cups-get-classes
+# Avahi support in the dnssd backend.
+%patch24 -p1 -b .avahi
+# Fix temporary filename creation.
+%patch25 -p1 -b .str3382
+# Use paps for text conversion.
+%patch26 -p1 -b .paps
+# Use mode 0755 for binaries and libraries where appropriate.
+%patch29 -p1 -b .0755
+# Re-initialise the resolver on failure in httpAddrLookup().
+%patch30 -p1 -b .EAI_AGAIN
+# Use numeric addresses for interfaces unless HostNameLookups are
+# turned on (bug #583054).
+%patch31 -p1 -b .hostnamelookups
+# Handle SNMP supply level quirks (bug #581825).
+%patch33 -p1 -b .snmp-quirks
+# Add an SNMP query for HP's device ID OID (STR #3552).
+%patch34 -p1 -b .hp-deviceid-oid
+# Mark DNS-SD Device IDs that have been guessed at with "FZY:1;".
+%patch35 -p1 -b .dnssd-deviceid
+# Add an SNMP query for Ricoh's device ID OID (STR #3552).
+%patch36 -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
%if %lspp
+# LSPP support.
%patch100 -p1 -b .lspp
%endif
+# SECURITY PATCHES:
+
sed -i -e '1iMaxLogSize 0' conf/cupsd.conf.in
cp %{SOURCE5} cups-lpd.real
@@ -284,6 +296,9 @@ perl -pi -e "s,\@LIBDIR\@,%{_libdir},g"
# Let's look at the compilation command lines.
perl -pi -e "s,^.SILENT:,," Makedefs.in
+# Fix locale code for Norwegian (bug #520379).
+mv locale/cups_no.po locale/cups_nb.po
+
# Rebuild configure script for --enable-avahi.
aclocal -I config-scripts
autoconf -I config-scripts
@@ -302,7 +317,7 @@ export CFLAGS="$RPM_OPT_FLAGS -fstack-pr
localedir=%{_datadir}/locale
# If we got this far, all prerequisite libraries must be here.
-make
+make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
@@ -312,13 +327,13 @@ make BUILDROOT=$RPM_BUILD_ROOT install
# Serial backend needs to run as root (bug #212577).
chmod 700 $RPM_BUILD_ROOT%{cups_serverbin}/backend/serial
-rm -rf $RPM_BUILD_ROOT%{initdir} \
+rm -rf $RPM_BUILD_ROOT%{_initddir} \
$RPM_BUILD_ROOT%{_sysconfdir}/init.d \
$RPM_BUILD_ROOT%{_sysconfdir}/rc?.d
-mkdir -p $RPM_BUILD_ROOT%{initdir}
-install -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{initdir}/cups
+mkdir -p $RPM_BUILD_ROOT%{_initddir}
+install -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initddir}/cups
-find $RPM_BUILD_ROOT/usr/share/cups/model -name "*.ppd" |xargs gzip -n9f
+find $RPM_BUILD_ROOT%{_datadir}/cups/model -name "*.ppd" |xargs gzip -n9f
%if %use_alternatives
pushd $RPM_BUILD_ROOT%{_bindir}
@@ -339,11 +354,11 @@ popd
mkdir -p $RPM_BUILD_ROOT%{_datadir}/pixmaps $RPM_BUILD_ROOT%{_sysconfdir}/X11/sysconfig $RPM_BUILD_ROOT%{_sysconfdir}/X11/applnk/System $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily
install -c -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -c -m 644 cups-lpd.real $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d/cups-lpd
-install -c -m 644 %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/cups
-install -c -m 755 %{SOURCE10} $RPM_BUILD_ROOT%{cups_serverbin}/backend/ncp
-install -c -m 755 %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily/cups
-install -c -m 755 %{SOURCE14} $RPM_BUILD_ROOT%{cups_serverbin}/filter/textonly
-install -c -m 644 %{SOURCE15} $RPM_BUILD_ROOT%{_datadir}/cups/model/textonly.ppd
+install -c -m 644 %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/cups
+install -c -m 755 %{SOURCE7} $RPM_BUILD_ROOT%{cups_serverbin}/backend/ncp
+install -c -m 755 %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily/cups
+install -c -m 755 %{SOURCE9} $RPM_BUILD_ROOT%{cups_serverbin}/filter/textonly
+install -c -m 644 %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/cups/model/textonly.ppd
# Ship pstopdf for LSPP systems to deal with malicious postscript
%if %lspp
@@ -351,8 +366,8 @@ install -c -m 755 %{SOURCE4} $RPM_BUILD_
%endif
# Ship pstoraster (bug #69573).
-install -c -m 755 %{SOURCE6} $RPM_BUILD_ROOT%{cups_serverbin}/filter
-install -c -m 644 %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/cups
+install -c -m 755 %{SOURCE11} $RPM_BUILD_ROOT%{cups_serverbin}/filter
+install -c -m 644 %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/cups
# Ship a printers.conf file, and a client.conf file. That way, they get
# their SELinux file contexts set correctly.
@@ -364,11 +379,12 @@ touch $RPM_BUILD_ROOT%{_sysconfdir}/cups
# This is %%ghost'ed, but needs to be created in %%install anyway.
touch $RPM_BUILD_ROOT%{_sysconfdir}/cups/lpoptions
+# Tell portreserve which port we want it to protect.
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/portreserve
+
# LSB 3.2 printer driver directory
mkdir -p $RPM_BUILD_ROOT%{_datadir}/ppd
-# Tell portreserve which port we want it to protect.
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/portreserve
echo ipp > $RPM_BUILD_ROOT%{_sysconfdir}/portreserve/%{name}
# Handle https:// device URIs (bug #478677, STR #3122).
@@ -387,16 +403,16 @@ extension=phpcups.so
__EOF__
# Install the udev rules.
-%{__mkdir_p} %{buildroot}%{_sysconfdir}/udev/rules.d
+%{__mkdir_p} %{buildroot}/lib/udev/rules.d
install -m644 %{SOURCE3} \
- %{buildroot}%{_sysconfdir}/udev/rules.d/70-cups-libusb.rules
+ %{buildroot}/lib/udev/rules.d/70-cups-libusb.rules
%post
/sbin/chkconfig --del cupsd 2>/dev/null || true # Make sure old versions aren't there anymore
/sbin/chkconfig --add cups || true
# Remove old-style certs directory; new-style is /var/run
# (see bug #194581 for why this is necessary).
-/bin/rm -rf /etc/cups/certs
+/bin/rm -rf %{_sysconfdir}/cups/certs
%if %use_alternatives
/usr/sbin/alternatives --install %{_bindir}/lpr print %{_bindir}/lpr.cups 40 \
--slave %{_bindir}/lp print-lp %{_bindir}/lp.cups \
@@ -426,7 +442,7 @@ if [ "$1" = "0" ]; then
/sbin/service cups stop > /dev/null 2>&1
/sbin/chkconfig --del cups
%if %use_alternatives
- /usr/sbin/alternatives --remove print %{_bindir}/lpr.cups
+ /usr/sbin/alternatives --remove print %{_bindir}/lpr.cups
%endif
fi
exit 0
@@ -451,23 +467,23 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%doc LICENSE.txt README.txt CREDITS.txt CHANGES.txt
-%{_sysconfdir}/udev/rules.d/70-cups-libusb.rules
-%dir %attr(0755,root,lp) /etc/cups
+/lib/udev/rules.d/70-cups-libusb.rules
+%dir %attr(0755,root,lp) %{_sysconfdir}/cups
%dir %attr(0755,root,lp) /var/run/cups
%dir %attr(0511,lp,sys) /var/run/cups/certs
-%verify(not md5 size mtime) %config(noreplace) %attr(0640,root,lp) /etc/cups/cupsd.conf
-%attr(0640,root,lp) /etc/cups/cupsd.conf.default
-%verify(not md5 size mtime) %config(noreplace) %attr(0644,root,lp) /etc/cups/client.conf
-%verify(not md5 size mtime) %config(noreplace) %attr(0600,root,lp) /etc/cups/classes.conf
-%verify(not md5 size mtime) %config(noreplace) %attr(0600,root,lp) /etc/cups/printers.conf
-%verify(not md5 size mtime) %config(noreplace) %attr(0644,root,lp) /etc/cups/snmp.conf
-%verify(not md5 size mtime) %config(noreplace) %attr(0644,root,lp) /etc/cups/subscriptions.conf
-/etc/cups/interfaces
-%verify(not md5 size mtime) %config(noreplace) %attr(0644,root,lp) /etc/cups/lpoptions
-%dir %attr(0755,root,lp) /etc/cups/ppd
-%dir %attr(0700,root,lp) /etc/cups/ssl
-/etc/cups/pstoraster.convs
-%config(noreplace) /etc/pam.d/cups
+%verify(not md5 size mtime) %config(noreplace) %attr(0640,root,lp) %{_sysconfdir}/cups/cupsd.conf
+%attr(0640,root,lp) %{_sysconfdir}/cups/cupsd.conf.default
+%verify(not md5 size mtime) %config(noreplace) %attr(0644,root,lp) %{_sysconfdir}/cups/client.conf
+%verify(not md5 size mtime) %config(noreplace) %attr(0600,root,lp) %{_sysconfdir}/cups/classes.conf
+%verify(not md5 size mtime) %config(noreplace) %attr(0600,root,lp) %{_sysconfdir}/cups/printers.conf
+%verify(not md5 size mtime) %config(noreplace) %attr(0644,root,lp) %{_sysconfdir}/cups/snmp.conf
+%verify(not md5 size mtime) %config(noreplace) %attr(0644,root,lp) %{_sysconfdir}/cups/subscriptions.conf
+%{_sysconfdir}/cups/interfaces
+%verify(not md5 size mtime) %config(noreplace) %attr(0644,root,lp) %{_sysconfdir}/cups/lpoptions
+%dir %attr(0755,root,lp) %{_sysconfdir}/cups/ppd
+%dir %attr(0700,root,lp) %{_sysconfdir}/cups/ssl
+%{_sysconfdir}/cups/pstoraster.convs
+%config(noreplace) %{_sysconfdir}/pam.d/cups
%config(noreplace) %{_sysconfdir}/logrotate.d/cups
%config(noreplace) %{_sysconfdir}/portreserve/%{name}
%dir %{_datadir}/%{name}/www
@@ -484,10 +500,12 @@ rm -rf $RPM_BUILD_ROOT
%config(noreplace) %doc %{_datadir}/%{name}/www/de/index.html
%config(noreplace) %doc %{_datadir}/%{name}/www/es/index.html
%config(noreplace) %doc %{_datadir}/%{name}/www/eu/index.html
+%config(noreplace) %doc %{_datadir}/%{name}/www/id/index.html
+%config(noreplace) %doc %{_datadir}/%{name}/www/it/index.html
%config(noreplace) %doc %{_datadir}/%{name}/www/ja/index.html
%config(noreplace) %doc %{_datadir}/%{name}/www/pl/index.html
%config(noreplace) %doc %{_datadir}/%{name}/www/ru/index.html
-%config(noreplace) %{initdir}/cups
+%{_initddir}/cups
%{_bindir}/cupstestppd
%{_bindir}/cupstestdsc
%{_bindir}/cancel*
@@ -519,6 +537,8 @@ rm -rf $RPM_BUILD_ROOT
%config(noreplace) %{_datadir}/cups/templates/de/*.tmpl
%config(noreplace) %{_datadir}/cups/templates/es/*.tmpl
%config(noreplace) %{_datadir}/cups/templates/eu/*.tmpl
+%config(noreplace) %{_datadir}/cups/templates/id/*.tmpl
+%config(noreplace) %{_datadir}/cups/templates/it/*.tmpl
%config(noreplace) %{_datadir}/cups/templates/ja/*.tmpl
%config(noreplace) %{_datadir}/cups/templates/pl/*.tmpl
%config(noreplace) %{_datadir}/cups/templates/ru/*.tmpl
@@ -562,6 +582,52 @@ rm -rf $RPM_BUILD_ROOT
%{php_extdir}/phpcups.so
%changelog
+* Fri Jun 18 2010 Tim Waugh <twaugh at redhat.com> 1:1.4.4-1
+- 1.4.4. Fixes several security vulnerabilities (bug #605399):
+ CVE-2010-0540, CVE-2010-0542, CVE-2010-1748. No longer need str3503,
+ str3399, str3505, str3541, str3425p2 or CVE-2010-0302 patches.
+- Fix lpd provides.
+- Added comments for all sources and patches.
+- Reset status after successful ipp job (bug #548219, STR #3460).
+- Install udev rules in correct place (bug #530378).
+- Removed unapplied gnutls-gcrypt-threads patch. Fixed typos in
+ descriptions for lpd and php sub-packages.
+- Add an SNMP query for Ricoh's device ID OID (STR #3552).
+- Mark DNS-SD Device IDs that have been guessed at with "FZY:1;".
+- Add an SNMP query for HP's device ID OID (STR #3552).
+- Don't mark initscript as config file.
+- Use %%{_initddir}, %%{_sysconfdir} and SMP make flags.
+- Use mode 0755 for binaries and libraries where appropriate.
+- Removed use of prereq and buildprereq.
+- Fixed use of '%%' in changelog.
+- Versioned explicit obsoletes/provides.
+- Use tabs throughout.
+- Install udev rules in correct place (bug #530378).
+- Fix locale code for Norwegian (bug #520379).
+- Fixed cups.init to be LSB compliant (bug #521641)
+- Changed cups.init to be LSB compliant (bug #521641), i.e.
+ return code "2" (instead of "3") if invalid arguments
+ return code "4" if restarting service under nonprivileged user
+ return code "5" if cupsd not exist or is not executable
+ return code "6" if cupsd.conf not exist
+- Use password-auth common PAM configuration instead of system-auth
+ when available.
+- Fixed 'service cups status' to check for correct subsys name
+ (bug #521641).
+- Renumbered patches and sources.
+- Use upstream method of handling SNMP quirks in PPDs (STR #3551,
+ bug #581825).
+- Added back still useful str3425.patch.
+ Second part of STR #3425 is still not fixed in 1.4.3
+- Use numeric addresses for interfaces unless HostNameLookups are
+ turned on (bug #583054).
+- Handle SNMP supply level quirks (bug #581825).
+- No longer need CVE-2009-3553, str3381, str3390, str3391,
+ str3403, str3407, str3413, str3418, str3422, str3425,
+ str3428, str3431, str3435, str3436, str3439, str3440,
+ str3442, str3448, str3458, str3460, cups-sidechannel-intrs,
+ negative-snmp-string-length, cups-media-empty-warning patches.
+
* Tue May 18 2010 Tim Waugh <twaugh at redhat.com> 1:1.4.2-31
- Adjust texttops output to be in natural orientation (STR #3563).
This fixes page-label orientation when texttops is used in the
@@ -2074,7 +2140,7 @@ rm -rf $RPM_BUILD_ROOT
- Start cupsd before nfs server processes (bug #97767).
* Tue Jun 17 2003 Tim Waugh <twaugh at redhat.com> 1:1.1.19-7
-- Add some %if %use_dbus / %endif's to make it compile without dbus
+- Add some %%if %%use_dbus / %%endif's to make it compile without dbus
(bug #97397). Patch from Jos Vos.
* Mon Jun 16 2003 Tim Waugh <twaugh at redhat.com> 1:1.1.19-6
@@ -2293,8 +2359,8 @@ rm -rf $RPM_BUILD_ROOT
* Thu Feb 28 2002 Bill Nottingham <notting at redhat.com> 1.1.14-7
- lpc man page is alternative too
-- run ldconfig in -libs %post/%postun, not main
-- remove alternatives in %preun
+- run ldconfig in -libs %%post/%%postun, not main
+- remove alternatives in %%preun
* Wed Feb 27 2002 Bill Nottingham <notting at redhat.com> 1.1.14-6
- don't source /etc/sysconfig/network in cups.init, we don't use any
@@ -2386,7 +2452,7 @@ rm -rf $RPM_BUILD_ROOT
- rebuilt against libpng-1.0.8
* Tue Aug 01 2000 Than Ngo <than at redhat.de>
-- fix permission, add missing ldconfig in %post and %postun (Bug #14963)
+- fix permission, add missing ldconfig in %%post and %%postun (Bug #14963)
* Sat Jul 29 2000 Bernhard Rosenkraenzer <bero at redhat.com>
- 1.1.1 (this has some major bugfixes)
Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/cups/F-11/sources,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -p -r1.53 -r1.54
--- sources 10 Nov 2009 13:26:17 -0000 1.53
+++ sources 18 Jun 2010 10:41:29 -0000 1.54
@@ -1 +1,2 @@
d95e2d588e3d36e563027a963b117b1b cups-1.4.2-source.tar.bz2
+8776403ad60fea9e85eab9c04d88560d cups-1.4.4-source.tar.bz2
--- cups-CVE-2010-0302.patch DELETED ---
--- cups-str3399.patch DELETED ---
--- cups-str3505.patch DELETED ---
--- cups-str3541.patch DELETED ---
- Previous message: rpms/libebml/devel .cvsignore, 1.10, 1.11 libebml.spec, 1.22, 1.23 sources, 1.11, 1.12
- Next message: rpms/nrpe/devel nrpe-0001-Add-reload-target-to-the-init-script.patch, NONE, 1.1 nrpe-0002-Read-extra-configuration-from-etc-sysconfig-nrpe.patch, NONE, 1.1 nrpe-0003-Include-etc-npre.d-config-directory.patch, NONE, 1.1 nrpe-0004-Fix-initscript-return-codes.patch, NONE, 1.1 nrpe-0005-Do-not-start-by-default.patch, NONE, 1.1 nrpe-0006-Relocate-pid-file.patch, NONE, 1.1 import.log, 1.3, 1.4 nrpe.spec, 1.17, 1.18 nrpe-directory_for_configs.diff, 1.1, NONE nrpe-initreload.patch, 1.1, NONE nrpe-read-extra-conf.patch, 1.1, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list