diff --git a/cups-hp-deviceid-oid.patch b/cups-hp-deviceid-oid.patch new file mode 100644 index 0000000..29f0781 --- /dev/null +++ b/cups-hp-deviceid-oid.patch @@ -0,0 +1,21 @@ +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 : diff --git a/cups-str3541.patch b/cups-str3541.patch index 49ed2e6..668ce34 100644 --- a/cups-str3541.patch +++ b/cups-str3541.patch @@ -1,17 +1,12 @@ -diff -up cups-1.4.2/systemv/lpstat.c.str3541 cups-1.4.2/systemv/lpstat.c ---- cups-1.4.2/systemv/lpstat.c.str3541 2009-02-04 23:54:22.000000000 +0100 -+++ cups-1.4.2/systemv/lpstat.c 2010-03-30 17:38:09.000000000 +0200 -@@ -581,11 +581,11 @@ match_list(const char *list, /* I - Lis - - - /* -- * An empty list always matches... -+ * An empty list never matches... - */ - - if (!list || !*list) -- return (1); -+ return (0); - - while (*list) - { +diff -up cups-1.4.3/systemv/lpstat.c.str3541 cups-1.4.3/systemv/lpstat.c +--- cups-1.4.3/systemv/lpstat.c.str3541 2009-12-15 23:40:37.000000000 +0100 ++++ cups-1.4.3/systemv/lpstat.c 2010-04-16 12:56:04.000000000 +0200 +@@ -1423,7 +1423,7 @@ show_jobs(const char *dests, /* I - Des + + rank ++; + +- if (match_list(dests, dest) || match_list(users, username)) ++ if (match_list(dests, dest) && match_list(users, username)) + { + jobdate = localtime(&jobtime); + snprintf(temp, sizeof(temp), "%s-%d", dest, jobid); diff --git a/cups.spec b/cups.spec index 0a2eeb5..5577d0a 100644 --- a/cups.spec +++ b/cups.spec @@ -8,7 +8,7 @@ Summary: Common Unix Printing System Name: cups Version: 1.4.3 -Release: 3%{?dist} +Release: 5%{?dist} License: GPLv2 Group: System Environment/Daemons Source: http://ftp.easysw.com/pub/cups/%{version}/cups-%{version}-source.tar.bz2 @@ -64,6 +64,7 @@ Patch30: cups-EAI_AGAIN.patch Patch31: cups-str3505.patch Patch32: cups-str3541.patch Patch33: cups-snmp-quirks.patch +Patch34: cups-hp-deviceid-oid.patch Patch100: cups-lspp.patch @@ -263,7 +264,10 @@ module. %patch31 -p1 -b .str3505 # Fix lpstat to adhere to -o option. %patch32 -p1 -b .str3541 +# 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 %if %lspp # LSPP support. @@ -564,6 +568,12 @@ rm -rf $RPM_BUILD_ROOT %{php_extdir}/phpcups.so %changelog +* Fri Apr 16 2010 Jiri Popelka 1:1.4.3-5 +- Fixed str3541.patch + +* Tue Apr 13 2010 Tim Waugh 1:1.4.3-4 +- Add an SNMP query for HP's device ID OID (STR #3552). + * Tue Apr 13 2010 Tim Waugh 1:1.4.3-3 - Handle SNMP supply level quirks (bug #581825).