diff --git a/.gitignore b/.gitignore index 45a1c75..2bf96dc 100644 --- a/.gitignore +++ b/.gitignore @@ -50,3 +50,4 @@ cups-1.4.4-source.tar.bz2 /cups-1.5rc1-source.tar.bz2 /cups-1.5.0-source.tar.bz2 /cups-1.5.2-source.tar.bz2 +/cups-1.5.3-source.tar.bz2 diff --git a/cups-0755.patch b/cups-0755.patch index 8e66476..dcb6255 100644 --- a/cups-0755.patch +++ b/cups-0755.patch @@ -1,13 +1,14 @@ -diff -up cups-1.5b1/Makedefs.in.0755 cups-1.5b1/Makedefs.in ---- cups-1.5b1/Makedefs.in.0755 2011-05-24 16:43:27.000000000 +0200 -+++ cups-1.5b1/Makedefs.in 2011-05-24 16:43:27.000000000 +0200 -@@ -41,13 +41,13 @@ SHELL = /bin/sh +diff -up cups-1.5.3/Makedefs.in.0755 cups-1.5.3/Makedefs.in +--- cups-1.5.3/Makedefs.in.0755 2012-05-15 16:51:31.000000000 +0200 ++++ cups-1.5.3/Makedefs.in 2012-05-15 16:52:59.246906315 +0200 +@@ -41,14 +41,14 @@ 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_COMPDATA = $(INSTALL) -c -m 444 @INSTALL_GZIP@ INSTALL_DATA = $(INSTALL) -c -m 444 INSTALL_DIR = $(INSTALL) -d -INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@ @@ -18,9 +19,9 @@ diff -up cups-1.5b1/Makedefs.in.0755 cups-1.5b1/Makedefs.in # # Default user, group, and system groups for the scheduler... -diff -up cups-1.5b1/scheduler/Makefile.0755 cups-1.5b1/scheduler/Makefile ---- cups-1.5b1/scheduler/Makefile.0755 2011-05-12 00:17:34.000000000 +0200 -+++ cups-1.5b1/scheduler/Makefile 2011-05-24 16:43:27.000000000 +0200 +diff -up cups-1.5.3/scheduler/Makefile.0755 cups-1.5.3/scheduler/Makefile +--- cups-1.5.3/scheduler/Makefile.0755 2011-05-12 00:17:34.000000000 +0200 ++++ cups-1.5.3/scheduler/Makefile 2012-05-15 16:51:31.703516547 +0200 @@ -213,7 +213,7 @@ install-data: install-exec: echo Installing programs in $(SBINDIR)... diff --git a/cups-avahi-2-backend.patch b/cups-avahi-2-backend.patch index 08f6186..9fa3677 100644 --- a/cups-avahi-2-backend.patch +++ b/cups-avahi-2-backend.patch @@ -1,6 +1,6 @@ -diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c ---- cups-1.5.2/backend/dnssd.c.avahi-2-backend 2012-03-14 15:04:17.692305593 +0000 -+++ cups-1.5.2/backend/dnssd.c 2012-03-14 15:05:38.966405938 +0000 +diff -up cups-1.5.3/backend/dnssd.c.avahi-2-backend cups-1.5.3/backend/dnssd.c +--- cups-1.5.3/backend/dnssd.c.avahi-2-backend 2012-05-15 16:53:18.164774446 +0200 ++++ cups-1.5.3/backend/dnssd.c 2012-05-15 17:09:07.684155704 +0200 @@ -15,14 +15,21 @@ * * Contents: @@ -85,23 +85,24 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c static void browse_callback(DNSServiceRef sdRef, DNSServiceFlags flags, uint32_t interfaceIndex, -@@ -93,12 +131,6 @@ static void browse_local_callback(DNSSe - const char *regtype, +@@ -95,13 +133,6 @@ static void browse_local_callback(DNSSe const char *replyDomain, - void *context); + void *context) + __attribute__((nonnull(1,5,6,7,8))); -static int compare_devices(cups_device_t *a, cups_device_t *b); -static void exec_backend(char **argv); -static cups_device_t *get_device(cups_array_t *devices, - const char *serviceName, - const char *regtype, -- const char *replyDomain); +- const char *replyDomain) +- __attribute__((nonnull(1,2,3,4))); static void query_callback(DNSServiceRef sdRef, DNSServiceFlags flags, uint32_t interfaceIndex, -@@ -107,9 +139,118 @@ static void query_callback(DNSServiceRe - uint16_t rrclass, uint16_t rdlen, +@@ -111,10 +142,119 @@ static void query_callback(DNSServiceRe const void *rdata, uint32_t ttl, - void *context); + void *context) + __attribute__((nonnull(1,5,9,11))); +#endif /* HAVE_DNSSD */ +#ifdef HAVE_AVAHI +static void avahi_client_callback (AvahiClient *client, @@ -117,7 +118,6 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c + AvahiLookupResultFlags flags, + void *context); +#endif /* HAVE_AVAHI */ -+ +static cups_device_t * find_device (cups_array_t *devices, + cups_txt_records_t *txt, + cups_device_t *dkey); @@ -126,9 +126,11 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c +static cups_device_t *get_device(cups_array_t *devices, + const char *serviceName, + const char *regtype, -+ const char *replyDomain); ++ const char *replyDomain) ++ __attribute__((nonnull(1,2,3,4))); static void sigterm_handler(int sig); - static void unquote(char *dst, const char *src, size_t dstsize); + static void unquote(char *dst, const char *src, size_t dstsize) + __attribute__((nonnull(1,2))); +#ifdef HAVE_AVAHI +static AvahiSimplePoll *simple_poll = NULL; @@ -217,7 +219,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c /* * 'main()' - Browse for printers. -@@ -120,6 +261,13 @@ main(int argc, /* I - Number of comm +@@ -125,6 +265,13 @@ main(int argc, /* I - Number of comm char *argv[]) /* I - Command-line arguments */ { const char *name; /* Backend name */ @@ -231,7 +233,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c DNSServiceRef main_ref, /* Main service reference */ fax_ipp_ref, /* IPP fax service reference */ ipp_ref, /* IPP service reference */ -@@ -133,12 +281,11 @@ main(int argc, /* I - Number of comm +@@ -138,12 +285,11 @@ main(int argc, /* I - Number of comm pdl_datastream_ref, /* AppSocket service reference */ printer_ref, /* LPD service reference */ riousbprint_ref; /* Remote IO service reference */ @@ -249,7 +251,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET) struct sigaction action; /* Actions for POSIX signals */ #endif /* HAVE_SIGACTION && !HAVE_SIGSET */ -@@ -198,6 +345,49 @@ main(int argc, /* I - Number of comm +@@ -203,6 +349,49 @@ main(int argc, /* I - Number of comm * Browse for different kinds of printers... */ @@ -299,7 +301,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError) { perror("ERROR: Unable to create service connection"); -@@ -258,6 +448,7 @@ main(int argc, /* I - Number of comm +@@ -263,6 +452,7 @@ main(int argc, /* I - Number of comm riousbprint_ref = main_ref; DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0, "_riousbprint._tcp", NULL, browse_callback, devices); @@ -307,7 +309,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c /* * Loop until we are killed... -@@ -265,6 +456,9 @@ main(int argc, /* I - Number of comm +@@ -270,6 +460,9 @@ main(int argc, /* I - Number of comm while (!job_canceled) { @@ -317,7 +319,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c FD_ZERO(&input); FD_SET(fd, &input); -@@ -284,11 +478,35 @@ main(int argc, /* I - Number of comm +@@ -289,11 +482,35 @@ main(int argc, /* I - Number of comm } else { @@ -353,7 +355,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c cups_device_t *best; /* Best matching device */ char device_uri[1024]; /* Device URI */ int count; /* Number of queries */ -@@ -302,6 +520,7 @@ main(int argc, /* I - Number of comm +@@ -307,6 +524,7 @@ main(int argc, /* I - Number of comm if (device->sent) sent ++; @@ -361,7 +363,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c if (device->ref) count ++; -@@ -333,14 +552,23 @@ main(int argc, /* I - Number of comm +@@ -338,14 +556,23 @@ main(int argc, /* I - Number of comm count ++; } } @@ -386,7 +388,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c if (!best) best = device; -@@ -401,6 +629,7 @@ main(int argc, /* I - Number of comm +@@ -406,6 +633,7 @@ main(int argc, /* I - Number of comm } @@ -394,7 +396,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c /* * 'browse_callback()' - Browse devices. */ -@@ -489,6 +718,7 @@ browse_local_callback( +@@ -494,6 +722,7 @@ browse_local_callback( device->fullName); device->sent = 1; } @@ -402,7 +404,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c /* -@@ -569,6 +799,41 @@ exec_backend(char **argv) /* I - Comman +@@ -574,6 +803,41 @@ exec_backend(char **argv) /* I - Comman /* @@ -444,7 +446,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c * 'get_device()' - Create or update a device. */ -@@ -589,20 +854,7 @@ get_device(cups_array_t *devices, /* I - +@@ -594,20 +858,7 @@ get_device(cups_array_t *devices, /* I - */ key.name = (char *)serviceName; @@ -466,7 +468,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c for (device = cupsArrayFind(devices, &key); device; -@@ -622,8 +874,14 @@ get_device(cups_array_t *devices, /* I - +@@ -627,8 +878,14 @@ get_device(cups_array_t *devices, /* I - free(device->domain); device->domain = strdup(replyDomain); @@ -481,7 +483,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c free(device->fullName); device->fullName = strdup(fullName); } -@@ -643,6 +901,9 @@ get_device(cups_array_t *devices, /* I - +@@ -648,6 +905,9 @@ get_device(cups_array_t *devices, /* I - device->domain = strdup(replyDomain); device->type = key.type; device->priority = 50; @@ -491,7 +493,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c cupsArrayAdd(devices, device); -@@ -650,13 +911,20 @@ get_device(cups_array_t *devices, /* I - +@@ -655,13 +915,20 @@ get_device(cups_array_t *devices, /* I - * Set the "full name" of this service, which is used for queries... */ @@ -512,7 +514,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c /* * 'query_callback()' - Process query data. */ -@@ -680,7 +948,7 @@ query_callback( +@@ -685,7 +952,7 @@ query_callback( *ptr; /* Pointer into string */ cups_device_t dkey, /* Search key */ *device; /* Device */ @@ -521,7 +523,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, " "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", " -@@ -714,94 +982,233 @@ query_callback( +@@ -719,94 +986,233 @@ query_callback( if ((ptr = strstr(name, "._")) != NULL) *ptr = '\0'; @@ -638,7 +640,8 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c else - dkey.type = CUPS_DEVICE_RIOUSBPRINT; + fprintf (stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", name); -+ + +- for (device = cupsArrayFind(devices, &dkey); + avahi_service_resolver_free (resolver); +} + @@ -713,8 +716,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c +} +#endif /* HAVE_AVAHI */ + - -- for (device = cupsArrayFind(devices, &dkey); ++ +/* + * 'find_device()' - Find a device from its name and domain. + */ @@ -817,7 +819,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c { /* * Add USB device ID information... -@@ -856,6 +1263,10 @@ query_callback( +@@ -861,6 +1267,10 @@ query_callback( if (device->type == CUPS_DEVICE_PRINTER) device->sent = 1; } @@ -828,7 +830,7 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c } if (device->device_id) -@@ -912,11 +1323,9 @@ query_callback( +@@ -917,11 +1327,9 @@ query_callback( } } @@ -841,9 +843,9 @@ diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c /* * 'sigterm_handler()' - Handle termination signals... */ -diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-support.c ---- cups-1.5.2/cups/http-support.c.avahi-2-backend 2011-09-26 19:46:46.000000000 +0100 -+++ cups-1.5.2/cups/http-support.c 2012-03-14 15:05:38.997405971 +0000 +diff -up cups-1.5.3/cups/http-support.c.avahi-2-backend cups-1.5.3/cups/http-support.c +--- cups-1.5.3/cups/http-support.c.avahi-2-backend 2012-02-15 02:06:12.000000000 +0100 ++++ cups-1.5.3/cups/http-support.c 2012-05-15 17:04:51.045944634 +0200 @@ -43,6 +43,10 @@ * http_copy_decode() - Copy and decode a URI. * http_copy_encode() - Copy and encode a URI. @@ -892,7 +894,7 @@ diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-sup /* * 'httpAssembleURI()' - Assemble a uniform resource identifier from its -@@ -1431,6 +1458,9 @@ _httpResolveURI( +@@ -1434,6 +1461,9 @@ _httpResolveURI( if (strstr(hostname, "._tcp")) { @@ -902,7 +904,7 @@ diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-sup #ifdef HAVE_DNSSD # ifdef WIN32 # pragma comment(lib, "dnssd.lib") -@@ -1449,6 +1479,17 @@ _httpResolveURI( +@@ -1452,6 +1482,17 @@ _httpResolveURI( fd_set input_set; /* Input set for select() */ struct timeval stimeout; /* Timeout value for select() */ #endif /* HAVE_POLL */ @@ -920,7 +922,7 @@ diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-sup if (options & _HTTP_RESOLVE_STDERR) fprintf(stderr, "DEBUG: Resolving \"%s\"...\n", hostname); -@@ -1485,9 +1526,16 @@ _httpResolveURI( +@@ -1488,9 +1529,16 @@ _httpResolveURI( if (domain) *domain++ = '\0'; @@ -937,7 +939,7 @@ diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-sup resolved_uri[0] = '\0'; DEBUG_printf(("6_httpResolveURI: Resolving hostname=\"%s\", regtype=\"%s\", " -@@ -1501,6 +1549,7 @@ _httpResolveURI( +@@ -1504,6 +1552,7 @@ _httpResolveURI( uri = NULL; @@ -945,7 +947,7 @@ diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-sup if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError) { localref = ref; -@@ -1608,6 +1657,36 @@ _httpResolveURI( +@@ -1611,6 +1660,36 @@ _httpResolveURI( DNSServiceRefDeallocate(ref); } @@ -982,7 +984,7 @@ diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-sup if (options & _HTTP_RESOLVE_STDERR) { -@@ -1619,13 +1698,13 @@ _httpResolveURI( +@@ -1622,13 +1701,13 @@ _httpResolveURI( fputs("STATE: -connecting-to-device,offline-report\n", stderr); } @@ -998,10 +1000,10 @@ diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-sup if ((options & _HTTP_RESOLVE_STDERR) && !uri) _cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer.")); -@@ -1914,6 +1993,116 @@ http_resolve_cb( +@@ -1916,6 +1995,115 @@ http_resolve_cb( + } #endif /* HAVE_DNSSD */ - +#ifdef HAVE_AVAHI +/* + * 'avahi_resolve_uri_client_cb()' - Avahi client callback for resolving URI. @@ -1111,7 +1113,6 @@ diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-sup +} +#endif /* HAVE_AVAHI */ + -+ + /* - * End of "$Id: http-support.c 10017 2011-09-26 18:46:46Z mike $". - */ + * End of "$Id: http-support.c 10284 2012-02-15 01:06:12Z mike $". diff --git a/cups-eggcups.patch b/cups-eggcups.patch index de413f9..981d920 100644 --- a/cups-eggcups.patch +++ b/cups-eggcups.patch @@ -1,7 +1,7 @@ -diff -up cups-1.5b1/backend/ipp.c.eggcups cups-1.5b1/backend/ipp.c ---- cups-1.5b1/backend/ipp.c.eggcups 2011-05-21 06:02:41.000000000 +0200 -+++ cups-1.5b1/backend/ipp.c 2011-05-23 18:07:45.000000000 +0200 -@@ -133,6 +133,70 @@ static cups_array_t *state_reasons; /* A +diff -up cups-1.5.3/backend/ipp.c.eggcups cups-1.5.3/backend/ipp.c +--- cups-1.5.3/backend/ipp.c.eggcups 2012-05-05 01:00:01.000000000 +0200 ++++ cups-1.5.3/backend/ipp.c 2012-05-15 16:50:41.142868986 +0200 +@@ -138,6 +138,70 @@ static cups_array_t *state_reasons; /* A static char tmpfilename[1024] = ""; /* Temporary spool file name */ @@ -72,7 +72,7 @@ diff -up cups-1.5b1/backend/ipp.c.eggcups cups-1.5b1/backend/ipp.c /* * Local functions... -@@ -1461,6 +1525,15 @@ main(int argc, /* I - Number of comm +@@ -1520,6 +1584,15 @@ main(int argc, /* I - Number of comm _("Print file accepted - job ID %d."), job_id); } @@ -85,12 +85,12 @@ diff -up cups-1.5b1/backend/ipp.c.eggcups cups-1.5b1/backend/ipp.c + getenv ("PRINTER")); +#endif /* HAVE_DBUS */ + + fprintf(stderr, "DEBUG: job-id=%d\n", job_id); ippDelete(response); - if (job_canceled) -diff -up cups-1.5b1/backend/Makefile.eggcups cups-1.5b1/backend/Makefile ---- cups-1.5b1/backend/Makefile.eggcups 2011-05-04 06:28:00.000000000 +0200 -+++ cups-1.5b1/backend/Makefile 2011-05-23 18:03:22.000000000 +0200 +diff -up cups-1.5.3/backend/Makefile.eggcups cups-1.5.3/backend/Makefile +--- cups-1.5.3/backend/Makefile.eggcups 2012-04-23 19:42:12.000000000 +0200 ++++ cups-1.5.3/backend/Makefile 2012-05-15 16:48:17.253871982 +0200 @@ -212,7 +212,7 @@ dnssd: dnssd.o ../cups/$(LIBCUPS) libbac ipp: ipp.o ../cups/$(LIBCUPS) libbackend.a @@ -100,10 +100,10 @@ diff -up cups-1.5b1/backend/Makefile.eggcups cups-1.5b1/backend/Makefile $(RM) http $(LN) ipp http -diff -up cups-1.5b1/scheduler/subscriptions.c.eggcups cups-1.5b1/scheduler/subscriptions.c ---- cups-1.5b1/scheduler/subscriptions.c.eggcups 2011-05-20 05:49:49.000000000 +0200 -+++ cups-1.5b1/scheduler/subscriptions.c 2011-05-23 18:03:22.000000000 +0200 -@@ -1310,13 +1310,13 @@ cupsd_send_dbus(cupsd_eventmask_t event, +diff -up cups-1.5.3/scheduler/subscriptions.c.eggcups cups-1.5.3/scheduler/subscriptions.c +--- cups-1.5.3/scheduler/subscriptions.c.eggcups 2012-02-12 06:48:09.000000000 +0100 ++++ cups-1.5.3/scheduler/subscriptions.c 2012-05-15 16:48:17.253871982 +0200 +@@ -1314,13 +1314,13 @@ cupsd_send_dbus(cupsd_eventmask_t event, what = "PrinterAdded"; else if (event & CUPSD_EVENT_PRINTER_DELETED) what = "PrinterRemoved"; @@ -119,7 +119,7 @@ diff -up cups-1.5b1/scheduler/subscriptions.c.eggcups cups-1.5b1/scheduler/subsc else return; -@@ -1352,7 +1352,7 @@ cupsd_send_dbus(cupsd_eventmask_t event, +@@ -1356,7 +1356,7 @@ cupsd_send_dbus(cupsd_eventmask_t event, dbus_message_append_iter_init(message, &iter); if (dest) dbus_message_iter_append_string(&iter, dest->name); diff --git a/cups-no-export-ssllibs.patch b/cups-no-export-ssllibs.patch index 9be3c81..de277d8 100644 --- a/cups-no-export-ssllibs.patch +++ b/cups-no-export-ssllibs.patch @@ -1,7 +1,7 @@ -diff -up cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5b1/config-scripts/cups-ssl.m4 ---- cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs 2011-05-11 02:52:08.000000000 +0200 -+++ cups-1.5b1/config-scripts/cups-ssl.m4 2011-05-23 17:47:27.000000000 +0200 -@@ -164,7 +164,7 @@ AC_SUBST(IPPALIASES) +diff -up cups-1.5.3/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5.3/config-scripts/cups-ssl.m4 +--- cups-1.5.3/config-scripts/cups-ssl.m4.no-export-ssllibs 2012-03-21 05:45:48.000000000 +0100 ++++ cups-1.5.3/config-scripts/cups-ssl.m4 2012-05-15 16:47:13.753314620 +0200 +@@ -173,7 +173,7 @@ AC_SUBST(IPPALIASES) AC_SUBST(SSLFLAGS) AC_SUBST(SSLLIBS) @@ -9,4 +9,4 @@ diff -up cups-1.5b1/config-scripts/cups-ssl.m4.no-export-ssllibs cups-1.5b1/conf +EXPORT_SSLLIBS="" AC_SUBST(EXPORT_SSLLIBS) - + dnl diff --git a/cups-polld-reconnect.patch b/cups-polld-reconnect.patch deleted file mode 100644 index 5e966d1..0000000 --- a/cups-polld-reconnect.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up cups-1.5.2/scheduler/cups-polld.c.polld-reconnect cups-1.5.2/scheduler/cups-polld.c ---- cups-1.5.2/scheduler/cups-polld.c.polld-reconnect 2011-05-07 00:07:28.000000000 +0100 -+++ cups-1.5.2/scheduler/cups-polld.c 2012-02-23 10:50:57.272513141 +0000 -@@ -291,6 +291,7 @@ poll_server(http_t *http, /* I - H - fprintf(stderr, "ERROR: %s CUPS-Get-Printers failed: %s\n", prefix, - cupsLastErrorString()); - ippDelete(response); -+ restart_polling = 1; - return (-1); - } - diff --git a/cups-revision10277.patch b/cups-revision10277.patch deleted file mode 100644 index 4c6e418..0000000 --- a/cups-revision10277.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 19e2adf8307c8a908da80ceef335517139e5bf64 Mon Sep 17 00:00:00 2001 -From: mike -Date: Mon, 13 Feb 2012 23:43:07 +0000 -Subject: [PATCH] Detect authentication errors for all requests. - -git-svn-id: http://svn.easysw.com/public/cups/trunk@10277 7a7537e8-13f0-0310-91df-b6672ffda945 ---- - backend/ipp.c | 9 ++++++--- - 1 files changed, 6 insertions(+), 3 deletions(-) - -diff --git a/backend/ipp.c b/backend/ipp.c -index bcaab37..d4719e4 100644 ---- a/backend/ipp.c -+++ b/backend/ipp.c -@@ -898,7 +898,9 @@ main(int argc, /* I - Number of command-line args */ - - return (CUPS_BACKEND_STOP); - } -- else if (ipp_status == IPP_NOT_AUTHORIZED || ipp_status == IPP_FORBIDDEN) -+ else if (ipp_status == IPP_NOT_AUTHORIZED || -+ ipp_status == IPP_FORBIDDEN || -+ ipp_status == IPP_AUTHENTICATION_CANCELED) - { - const char *www_auth = httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE); - /* WWW-Authenticate field value */ -@@ -1472,11 +1474,12 @@ main(int argc, /* I - Number of command-line args */ - _cupsLangPrintFilter(stderr, "ERROR", - _("Print file was not accepted.")); - -- if (ipp_status == IPP_NOT_AUTHORIZED || ipp_status == IPP_FORBIDDEN) -+ if (ipp_status == IPP_NOT_AUTHORIZED || ipp_status == IPP_FORBIDDEN || -+ ipp_status == IPP_AUTHENTICATION_CANCELED) - { - const char *www_auth = httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE); - /* WWW-Authenticate field value */ -- -+ - if (!strncmp(www_auth, "Negotiate", 9)) - auth_info_required = "negotiate"; - else if (www_auth[0]) --- -1.7.7.6 - diff --git a/cups-str3985.patch b/cups-str3985.patch deleted file mode 100644 index 4c7da14..0000000 --- a/cups-str3985.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff -up cups-1.5.2/backend/ipp.c.str3985 cups-1.5.2/backend/ipp.c ---- cups-1.5.2/backend/ipp.c.str3985 2012-04-05 10:28:12.568898781 +0200 -+++ cups-1.5.2/backend/ipp.c 2012-04-05 10:32:07.165612536 +0200 -@@ -957,9 +957,13 @@ main(int argc, /* I - Number of comm - } - else if (ipp_status == IPP_NOT_AUTHORIZED || ipp_status == IPP_FORBIDDEN) - { -- if (!strncmp(httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE), -- "Negotiate", 9)) -+ const char *www_auth = httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE); -+ /* WWW-Authenticate field value */ -+ -+ if (!strncmp(www_auth, "Negotiate", 9)) - auth_info_required = "negotiate"; -+ else if (www_auth[0]) -+ auth_info_required = "username,password"; - - fprintf(stderr, "ATTR: auth-info-required=%s\n", auth_info_required); - return (CUPS_BACKEND_AUTH_REQUIRED); -@@ -1315,23 +1319,13 @@ main(int argc, /* I - Number of comm - else if (ipp_status == IPP_NOT_AUTHORIZED || ipp_status == IPP_FORBIDDEN || - ipp_status == IPP_AUTHENTICATION_CANCELED) - { -- /* -- * Update auth-info-required as needed... -- */ -- -- fprintf(stderr, "DEBUG: WWW-Authenticate=\"%s\"\n", -- httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE)); -- -- /* -- * Normal authentication goes through the password callback, which sets -- * auth_info_required to "username,password". Kerberos goes directly -- * through GSSAPI, so look for Negotiate in the WWW-Authenticate header -- * here and set auth_info_required as needed... -- */ -+ const char *www_auth = httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE); -+ /* WWW-Authenticate field value */ - -- if (!strncmp(httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE), -- "Negotiate", 9)) -+ if (!strncmp(www_auth, "Negotiate", 9)) - auth_info_required = "negotiate"; -+ else if (www_auth[0]) -+ auth_info_required = "username,password"; - - goto cleanup; - } -@@ -1486,19 +1480,13 @@ main(int argc, /* I - Number of comm - - if (ipp_status == IPP_NOT_AUTHORIZED || ipp_status == IPP_FORBIDDEN) - { -- fprintf(stderr, "DEBUG: WWW-Authenticate=\"%s\"\n", -- httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE)); -- -- /* -- * Normal authentication goes through the password callback, which sets -- * auth_info_required to "username,password". Kerberos goes directly -- * through GSSAPI, so look for Negotiate in the WWW-Authenticate header -- * here and set auth_info_required as needed... -- */ -- -- if (!strncmp(httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE), -- "Negotiate", 9)) -+ const char *www_auth = httpGetField(http, HTTP_FIELD_WWW_AUTHENTICATE); -+ /* WWW-Authenticate field value */ -+ -+ if (!strncmp(www_auth, "Negotiate", 9)) - auth_info_required = "negotiate"; -+ else if (www_auth[0]) -+ auth_info_required = "username,password"; - } - else - sleep(10); diff --git a/cups-str4014.patch b/cups-str4014.patch deleted file mode 100644 index 6e50c25..0000000 --- a/cups-str4014.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up cups-1.5.2/scheduler/subscriptions.c.str4014 cups-1.5.2/scheduler/subscriptions.c ---- cups-1.5.2/scheduler/subscriptions.c.str4014 2012-02-15 13:17:24.065004731 +0000 -+++ cups-1.5.2/scheduler/subscriptions.c 2012-02-15 13:17:34.021009331 +0000 -@@ -146,7 +146,11 @@ cupsdAddEvent( - temp->time = time(NULL); - temp->attrs = ippNew(); - temp->job = job; -- temp->dest = dest; -+ -+ if (dest) -+ temp->dest = dest; -+ else if (job) -+ temp->dest = dest = cupsdFindPrinter(job->dest); - - /* - * Add common event notification attributes... diff --git a/cups-translation.patch b/cups-translation.patch deleted file mode 100644 index 69ccc62..0000000 --- a/cups-translation.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up cups-1.5.2/cups/language.c.translation cups-1.5.2/cups/language.c ---- cups-1.5.2/cups/language.c.translation 2011-11-01 07:06:15.000000000 +0100 -+++ cups-1.5.2/cups/language.c 2012-02-28 10:54:58.448744034 +0100 -@@ -1134,7 +1134,7 @@ _cupsMessageLookup(cups_array_t *a, /* I - } - #endif /* __APPLE__ && CUPS_BUNDLEDIR */ - -- if (match && match->str) -+ if (match && match->str && (strlen(match->str) > 0)) - return (match->str); - else - return (m); diff --git a/cups.spec b/cups.spec index 2f1f532..b08587f 100644 --- a/cups.spec +++ b/cups.spec @@ -11,8 +11,8 @@ Summary: Common Unix Printing System Name: cups -Version: 1.5.2 -Release: 13%{?dist} +Version: 1.5.3 +Release: 1%{?dist} License: GPLv2 Group: System Environment/Daemons Source: http://ftp.easysw.com/pub/cups/%{version}/cups-%{version}-source.tar.bz2 @@ -69,11 +69,6 @@ Patch34: cups-avahi-5-services.patch Patch35: cups-icc.patch Patch36: cups-systemd-socket.patch -Patch37: cups-str4014.patch -Patch38: cups-polld-reconnect.patch -Patch39: cups-translation.patch -Patch40: cups-str3985.patch -Patch41: cups-revision10277.patch Patch100: cups-lspp.patch @@ -292,22 +287,6 @@ Sends IPP requests to the specified URI and tests and/or displays the results. # Poettering). %patch36 -p1 -b .systemd-socket -# Synthesize notify-printer-uri for job-completed events where the job -# never started processing (bug #784786, STR #4014). -%patch37 -p1 -b .str4014 - -# cups-polld: restart polling on error (bug #769292, STR #4031). -%patch38 -p1 -b .polld-reconnect - -# If the translated message is empty return the original message (bug #797570, STR #4033). -%patch39 -p1 -b .translation - -# The IPP backend did not always setup username/password authentication for printers (bug #810007, STR #3985) -%patch40 -p1 -b .str3985 - -# Detect authentication errors for all requests. -%patch41 -p1 -b .revision10277 - %if %lspp # LSPP support. %patch100 -p1 -b .lspp @@ -676,6 +655,9 @@ rm -f %{cups_serverbin}/backend/smb %{_mandir}/man1/ipptool.1.gz %changelog +* Tue May 15 2012 Jiri Popelka 1:1.5.3-1 +- 1.5.3 + * Wed May 09 2012 Jiri Popelka 1:1.5.2-13 - Add triggers for samba4-client. (#817110) - No need to define BuildRoot and clean it in clean and install section anymore. diff --git a/sources b/sources index 7ad8505..ffc3098 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9471d2a7c920cfbb17133c32d2e6866f cups-1.5.2-source.tar.bz2 +e1ad15257aa6f162414ea3beae0c5df8 cups-1.5.3-source.tar.bz2