mirror of
https://abf.rosa.ru/djam/cups.git
synced 2025-02-23 13:52:46 +00:00
Automatic import for version 1.5.2
This commit is contained in:
parent
b56418a103
commit
46d8c633c4
19 changed files with 530 additions and 242 deletions
2
.abf.yml
2
.abf.yml
|
@ -1,4 +1,4 @@
|
||||||
sources:
|
sources:
|
||||||
"cups-1.5.0-source.tar.bz2": 628f549867751e373fc20c7558fec422f9eb942b
|
"cups-1.5.2-source.tar.bz2": 56fdb4f58e676607845321c0296c1e90e416883f
|
||||||
"pap-backend.tar.bz2": 89e1e7eb4258d47069d2a60c383b8bd555a11e63
|
"pap-backend.tar.bz2": 89e1e7eb4258d47069d2a60c383b8bd555a11e63
|
||||||
"pap-docu.pdf.bz2": 7e7d44bb58532ab2fc4c1ca3581787877f1b5733
|
"pap-docu.pdf.bz2": 7e7d44bb58532ab2fc4c1ca3581787877f1b5733
|
||||||
|
|
|
@ -1,33 +0,0 @@
|
||||||
diff -up cups-1.4.8/filter/image-gif.c.CVE-2011-2896 cups-1.4.8/filter/image-gif.c
|
|
||||||
--- cups-1.4.8/filter/image-gif.c.CVE-2011-2896 2011-06-20 21:37:51.000000000 +0100
|
|
||||||
+++ cups-1.4.8/filter/image-gif.c 2011-08-19 11:33:37.547911212 +0100
|
|
||||||
@@ -648,11 +648,13 @@ gif_read_lzw(FILE *fp, /* I - File to
|
|
||||||
|
|
||||||
if (code == max_code)
|
|
||||||
{
|
|
||||||
- *sp++ = firstcode;
|
|
||||||
- code = oldcode;
|
|
||||||
+ if (sp < (stack + 8192))
|
|
||||||
+ *sp++ = firstcode;
|
|
||||||
+
|
|
||||||
+ code = oldcode;
|
|
||||||
}
|
|
||||||
|
|
||||||
- while (code >= clear_code)
|
|
||||||
+ while (code >= clear_code && sp < (stack + 8192))
|
|
||||||
{
|
|
||||||
*sp++ = table[1][code];
|
|
||||||
if (code == table[0][code])
|
|
||||||
@@ -661,8 +663,10 @@ gif_read_lzw(FILE *fp, /* I - File to
|
|
||||||
code = table[0][code];
|
|
||||||
}
|
|
||||||
|
|
||||||
- *sp++ = firstcode = table[1][code];
|
|
||||||
- code = max_code;
|
|
||||||
+ if (sp < (stack + 8192))
|
|
||||||
+ *sp++ = firstcode = table[1][code];
|
|
||||||
+
|
|
||||||
+ code = max_code;
|
|
||||||
|
|
||||||
if (code < 4096)
|
|
||||||
{
|
|
|
@ -1,6 +1,6 @@
|
||||||
diff -up cups-1.5.0/config.h.in.avahi-1-config cups-1.5.0/config.h.in
|
diff -up cups-1.5.2/config.h.in.avahi-1-config cups-1.5.2/config.h.in
|
||||||
--- cups-1.5.0/config.h.in.avahi-1-config 2011-06-16 21:12:16.000000000 +0100
|
--- cups-1.5.2/config.h.in.avahi-1-config 2011-06-16 21:12:16.000000000 +0100
|
||||||
+++ cups-1.5.0/config.h.in 2011-08-05 15:04:09.535759988 +0100
|
+++ cups-1.5.2/config.h.in 2012-03-14 15:04:51.365347165 +0000
|
||||||
@@ -390,6 +390,13 @@
|
@@ -390,6 +390,13 @@
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,9 +15,9 @@ diff -up cups-1.5.0/config.h.in.avahi-1-config cups-1.5.0/config.h.in
|
||||||
* Do we have <sys/ioctl.h>?
|
* Do we have <sys/ioctl.h>?
|
||||||
*/
|
*/
|
||||||
|
|
||||||
diff -up cups-1.5.0/config-scripts/cups-dnssd.m4.avahi-1-config cups-1.5.0/config-scripts/cups-dnssd.m4
|
diff -up cups-1.5.2/config-scripts/cups-dnssd.m4.avahi-1-config cups-1.5.2/config-scripts/cups-dnssd.m4
|
||||||
--- cups-1.5.0/config-scripts/cups-dnssd.m4.avahi-1-config 2011-05-12 06:21:56.000000000 +0100
|
--- cups-1.5.2/config-scripts/cups-dnssd.m4.avahi-1-config 2011-05-12 06:21:56.000000000 +0100
|
||||||
+++ cups-1.5.0/config-scripts/cups-dnssd.m4 2011-08-05 15:04:09.525760307 +0100
|
+++ cups-1.5.2/config-scripts/cups-dnssd.m4 2012-03-14 15:04:51.365347165 +0000
|
||||||
@@ -23,6 +23,21 @@ AC_ARG_WITH(dnssd-includes, [ --with-dn
|
@@ -23,6 +23,21 @@ AC_ARG_WITH(dnssd-includes, [ --with-dn
|
||||||
DNSSDLIBS=""
|
DNSSDLIBS=""
|
||||||
DNSSD_BACKEND=""
|
DNSSD_BACKEND=""
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
diff -up cups-1.5.0/backend/dnssd.c.avahi-2-backend cups-1.5.0/backend/dnssd.c
|
diff -up cups-1.5.2/backend/dnssd.c.avahi-2-backend cups-1.5.2/backend/dnssd.c
|
||||||
--- cups-1.5.0/backend/dnssd.c.avahi-2-backend 2011-08-05 15:04:46.182591844 +0100
|
--- cups-1.5.2/backend/dnssd.c.avahi-2-backend 2012-03-14 15:04:17.692305593 +0000
|
||||||
+++ cups-1.5.0/backend/dnssd.c 2011-08-05 15:05:13.868710181 +0100
|
+++ cups-1.5.2/backend/dnssd.c 2012-03-14 15:05:38.966405938 +0000
|
||||||
@@ -15,14 +15,21 @@
|
@@ -15,14 +15,21 @@
|
||||||
*
|
*
|
||||||
* Contents:
|
* Contents:
|
||||||
|
@ -174,7 +174,7 @@ diff -up cups-1.5.0/backend/dnssd.c.avahi-2-backend cups-1.5.0/backend/dnssd.c
|
||||||
+ */
|
+ */
|
||||||
+
|
+
|
||||||
+ datalen = *data++;
|
+ datalen = *data++;
|
||||||
+ if (!datalen || (data + datalen) >= txt->dataend)
|
+ if (!datalen || (data + datalen) > txt->dataend)
|
||||||
+ return NULL;
|
+ return NULL;
|
||||||
+ txt->datanext = data + datalen;
|
+ txt->datanext = data + datalen;
|
||||||
+
|
+
|
||||||
|
@ -779,7 +779,7 @@ diff -up cups-1.5.0/backend/dnssd.c.avahi-2-backend cups-1.5.0/backend/dnssd.c
|
||||||
-
|
-
|
||||||
- datalen = *data++;
|
- datalen = *data++;
|
||||||
-
|
-
|
||||||
- if (!datalen || (data + datalen) >= dataend)
|
- if (!datalen || (data + datalen) > dataend)
|
||||||
- break;
|
- break;
|
||||||
-
|
-
|
||||||
- datanext = data + datalen;
|
- datanext = data + datalen;
|
||||||
|
@ -841,9 +841,9 @@ diff -up cups-1.5.0/backend/dnssd.c.avahi-2-backend cups-1.5.0/backend/dnssd.c
|
||||||
/*
|
/*
|
||||||
* 'sigterm_handler()' - Handle termination signals...
|
* 'sigterm_handler()' - Handle termination signals...
|
||||||
*/
|
*/
|
||||||
diff -up cups-1.5.0/cups/http-support.c.avahi-2-backend cups-1.5.0/cups/http-support.c
|
diff -up cups-1.5.2/cups/http-support.c.avahi-2-backend cups-1.5.2/cups/http-support.c
|
||||||
--- cups-1.5.0/cups/http-support.c.avahi-2-backend 2011-06-10 23:06:26.000000000 +0100
|
--- cups-1.5.2/cups/http-support.c.avahi-2-backend 2011-09-26 19:46:46.000000000 +0100
|
||||||
+++ cups-1.5.0/cups/http-support.c 2011-08-05 15:05:13.870710117 +0100
|
+++ cups-1.5.2/cups/http-support.c 2012-03-14 15:05:38.997405971 +0000
|
||||||
@@ -43,6 +43,10 @@
|
@@ -43,6 +43,10 @@
|
||||||
* http_copy_decode() - Copy and decode a URI.
|
* http_copy_decode() - Copy and decode a URI.
|
||||||
* http_copy_encode() - Copy and encode a URI.
|
* http_copy_encode() - Copy and encode a URI.
|
||||||
|
@ -998,7 +998,7 @@ diff -up cups-1.5.0/cups/http-support.c.avahi-2-backend cups-1.5.0/cups/http-sup
|
||||||
|
|
||||||
if ((options & _HTTP_RESOLVE_STDERR) && !uri)
|
if ((options & _HTTP_RESOLVE_STDERR) && !uri)
|
||||||
_cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer."));
|
_cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer."));
|
||||||
@@ -1895,6 +1974,116 @@ http_resolve_cb(
|
@@ -1914,6 +1993,116 @@ http_resolve_cb(
|
||||||
#endif /* HAVE_DNSSD */
|
#endif /* HAVE_DNSSD */
|
||||||
|
|
||||||
|
|
||||||
|
@ -1113,5 +1113,5 @@ diff -up cups-1.5.0/cups/http-support.c.avahi-2-backend cups-1.5.0/cups/http-sup
|
||||||
+
|
+
|
||||||
+
|
+
|
||||||
/*
|
/*
|
||||||
* End of "$Id: http-support.c 9820 2011-06-10 22:06:26Z mike $".
|
* End of "$Id: http-support.c 10017 2011-09-26 18:46:46Z mike $".
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
diff -up cups-1.5.0/scheduler/cupsd.h.avahi-3-timeouts cups-1.5.0/scheduler/cupsd.h
|
diff -up cups-1.5.2/scheduler/cupsd.h.avahi-3-timeouts cups-1.5.2/scheduler/cupsd.h
|
||||||
--- cups-1.5.0/scheduler/cupsd.h.avahi-3-timeouts 2011-05-11 23:17:34.000000000 +0100
|
--- cups-1.5.2/scheduler/cupsd.h.avahi-3-timeouts 2011-05-11 23:17:34.000000000 +0100
|
||||||
+++ cups-1.5.0/scheduler/cupsd.h 2011-10-07 13:20:41.522867324 +0100
|
+++ cups-1.5.2/scheduler/cupsd.h 2012-03-14 15:06:36.509476983 +0000
|
||||||
@@ -140,6 +140,15 @@ extern const char *cups_hstrerror(int);
|
@@ -140,6 +140,15 @@ extern const char *cups_hstrerror(int);
|
||||||
|
|
||||||
typedef void (*cupsd_selfunc_t)(void *data);
|
typedef void (*cupsd_selfunc_t)(void *data);
|
||||||
|
@ -50,9 +50,9 @@ diff -up cups-1.5.0/scheduler/cupsd.h.avahi-3-timeouts cups-1.5.0/scheduler/cups
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* End of "$Id: cupsd.h 9766 2011-05-11 22:17:34Z mike $".
|
* End of "$Id: cupsd.h 9766 2011-05-11 22:17:34Z mike $".
|
||||||
diff -up cups-1.5.0/scheduler/main.c.avahi-3-timeouts cups-1.5.0/scheduler/main.c
|
diff -up cups-1.5.2/scheduler/main.c.avahi-3-timeouts cups-1.5.2/scheduler/main.c
|
||||||
--- cups-1.5.0/scheduler/main.c.avahi-3-timeouts 2011-10-07 13:20:36.875954675 +0100
|
--- cups-1.5.2/scheduler/main.c.avahi-3-timeouts 2012-03-14 15:04:17.655305548 +0000
|
||||||
+++ cups-1.5.0/scheduler/main.c 2011-10-07 13:20:41.524867282 +0100
|
+++ cups-1.5.2/scheduler/main.c 2012-03-14 15:06:36.511476986 +0000
|
||||||
@@ -146,6 +146,10 @@ main(int argc, /* I - Number of comm
|
@@ -146,6 +146,10 @@ main(int argc, /* I - Number of comm
|
||||||
int launchd_idle_exit;
|
int launchd_idle_exit;
|
||||||
/* Idle exit on select timeout? */
|
/* Idle exit on select timeout? */
|
||||||
|
@ -116,8 +116,8 @@ diff -up cups-1.5.0/scheduler/main.c.avahi-3-timeouts cups-1.5.0/scheduler/main.
|
||||||
+ * See if there are any scheduled timed callbacks to run.
|
+ * See if there are any scheduled timed callbacks to run.
|
||||||
+ */
|
+ */
|
||||||
+
|
+
|
||||||
+ tmo = cupsdNextTimeout (&tmo_delay);
|
+ if ((tmo = cupsdNextTimeout(&tmo_delay)) != NULL &&
|
||||||
+ if (tmo)
|
+ (now + tmo_delay) < timeout)
|
||||||
+ {
|
+ {
|
||||||
+ timeout = tmo_delay;
|
+ timeout = tmo_delay;
|
||||||
+ why = "run a timed callback";
|
+ why = "run a timed callback";
|
||||||
|
@ -127,9 +127,9 @@ diff -up cups-1.5.0/scheduler/main.c.avahi-3-timeouts cups-1.5.0/scheduler/main.
|
||||||
/*
|
/*
|
||||||
* Check whether we are accepting new connections...
|
* Check whether we are accepting new connections...
|
||||||
*/
|
*/
|
||||||
diff -up cups-1.5.0/scheduler/Makefile.avahi-3-timeouts cups-1.5.0/scheduler/Makefile
|
diff -up cups-1.5.2/scheduler/Makefile.avahi-3-timeouts cups-1.5.2/scheduler/Makefile
|
||||||
--- cups-1.5.0/scheduler/Makefile.avahi-3-timeouts 2011-10-07 13:20:36.955953170 +0100
|
--- cups-1.5.2/scheduler/Makefile.avahi-3-timeouts 2012-03-14 15:04:17.685305586 +0000
|
||||||
+++ cups-1.5.0/scheduler/Makefile 2011-10-07 13:20:41.521867343 +0100
|
+++ cups-1.5.2/scheduler/Makefile 2012-03-14 15:06:36.508476980 +0000
|
||||||
@@ -39,7 +39,8 @@ CUPSDOBJS = \
|
@@ -39,7 +39,8 @@ CUPSDOBJS = \
|
||||||
server.o \
|
server.o \
|
||||||
statbuf.o \
|
statbuf.o \
|
||||||
|
@ -140,9 +140,9 @@ diff -up cups-1.5.0/scheduler/Makefile.avahi-3-timeouts cups-1.5.0/scheduler/Mak
|
||||||
LIBOBJS = \
|
LIBOBJS = \
|
||||||
filter.o \
|
filter.o \
|
||||||
mime.o \
|
mime.o \
|
||||||
diff -up cups-1.5.0/scheduler/timeout.c.avahi-3-timeouts cups-1.5.0/scheduler/timeout.c
|
diff -up cups-1.5.2/scheduler/timeout.c.avahi-3-timeouts cups-1.5.2/scheduler/timeout.c
|
||||||
--- cups-1.5.0/scheduler/timeout.c.avahi-3-timeouts 2011-10-07 13:20:41.525867259 +0100
|
--- cups-1.5.2/scheduler/timeout.c.avahi-3-timeouts 2012-03-14 15:06:36.552477037 +0000
|
||||||
+++ cups-1.5.0/scheduler/timeout.c 2011-10-07 13:20:41.525867259 +0100
|
+++ cups-1.5.2/scheduler/timeout.c 2012-03-14 15:06:36.552477037 +0000
|
||||||
@@ -0,0 +1,235 @@
|
@@ -0,0 +1,235 @@
|
||||||
+/*
|
+/*
|
||||||
+ * "$Id$"
|
+ * "$Id$"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
diff -up cups-1.5.0/scheduler/avahi.c.avahi-4-poll cups-1.5.0/scheduler/avahi.c
|
diff -up cups-1.5.2/scheduler/avahi.c.avahi-4-poll cups-1.5.2/scheduler/avahi.c
|
||||||
--- cups-1.5.0/scheduler/avahi.c.avahi-4-poll 2011-10-11 10:56:50.102288037 +0100
|
--- cups-1.5.2/scheduler/avahi.c.avahi-4-poll 2012-03-14 15:07:29.477542381 +0000
|
||||||
+++ cups-1.5.0/scheduler/avahi.c 2011-10-11 10:56:50.102288037 +0100
|
+++ cups-1.5.2/scheduler/avahi.c 2012-03-14 15:07:29.477542381 +0000
|
||||||
@@ -0,0 +1,441 @@
|
@@ -0,0 +1,441 @@
|
||||||
+/*
|
+/*
|
||||||
+ * "$Id$"
|
+ * "$Id$"
|
||||||
|
@ -443,9 +443,9 @@ diff -up cups-1.5.0/scheduler/avahi.c.avahi-4-poll cups-1.5.0/scheduler/avahi.c
|
||||||
+/*
|
+/*
|
||||||
+ * End of "$Id$".
|
+ * End of "$Id$".
|
||||||
+ */
|
+ */
|
||||||
diff -up cups-1.5.0/scheduler/avahi.h.avahi-4-poll cups-1.5.0/scheduler/avahi.h
|
diff -up cups-1.5.2/scheduler/avahi.h.avahi-4-poll cups-1.5.2/scheduler/avahi.h
|
||||||
--- cups-1.5.0/scheduler/avahi.h.avahi-4-poll 2011-10-11 10:56:50.102288037 +0100
|
--- cups-1.5.2/scheduler/avahi.h.avahi-4-poll 2012-03-14 15:07:29.477542381 +0000
|
||||||
+++ cups-1.5.0/scheduler/avahi.h 2011-10-11 10:56:50.119287724 +0100
|
+++ cups-1.5.2/scheduler/avahi.h 2012-03-14 15:07:29.477542381 +0000
|
||||||
@@ -0,0 +1,69 @@
|
@@ -0,0 +1,69 @@
|
||||||
+/*
|
+/*
|
||||||
+ * "$Id$"
|
+ * "$Id$"
|
||||||
|
@ -516,9 +516,9 @@ diff -up cups-1.5.0/scheduler/avahi.h.avahi-4-poll cups-1.5.0/scheduler/avahi.h
|
||||||
+/*
|
+/*
|
||||||
+ * End of "$Id$".
|
+ * End of "$Id$".
|
||||||
+ */
|
+ */
|
||||||
diff -up cups-1.5.0/scheduler/Makefile.avahi-4-poll cups-1.5.0/scheduler/Makefile
|
diff -up cups-1.5.2/scheduler/Makefile.avahi-4-poll cups-1.5.2/scheduler/Makefile
|
||||||
--- cups-1.5.0/scheduler/Makefile.avahi-4-poll 2011-10-11 10:56:45.868365861 +0100
|
--- cups-1.5.2/scheduler/Makefile.avahi-4-poll 2012-03-14 15:06:36.508476980 +0000
|
||||||
+++ cups-1.5.0/scheduler/Makefile 2011-10-11 10:56:50.101288055 +0100
|
+++ cups-1.5.2/scheduler/Makefile 2012-03-14 15:07:29.476542380 +0000
|
||||||
@@ -17,6 +17,7 @@ include ../Makedefs
|
@@ -17,6 +17,7 @@ include ../Makedefs
|
||||||
|
|
||||||
CUPSDOBJS = \
|
CUPSDOBJS = \
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
diff -up cups-1.5.0/cgi-bin/admin.c.avahi-5-services cups-1.5.0/cgi-bin/admin.c
|
diff -up cups-1.5.2/cgi-bin/admin.c.avahi-5-services cups-1.5.2/cgi-bin/admin.c
|
||||||
--- cups-1.5.0/cgi-bin/admin.c.avahi-5-services 2011-05-20 04:49:49.000000000 +0100
|
--- cups-1.5.2/cgi-bin/admin.c.avahi-5-services 2011-08-17 22:01:53.000000000 +0100
|
||||||
+++ cups-1.5.0/cgi-bin/admin.c 2011-10-19 11:53:32.123177998 +0100
|
+++ cups-1.5.2/cgi-bin/admin.c 2012-03-14 15:08:25.701611799 +0000
|
||||||
@@ -1643,7 +1643,7 @@ do_config_server(http_t *http) /* I - H
|
@@ -1643,7 +1643,7 @@ do_config_server(http_t *http) /* I - H
|
||||||
else
|
else
|
||||||
local_protocols[0] = '\0';
|
local_protocols[0] = '\0';
|
||||||
|
@ -31,10 +31,75 @@ diff -up cups-1.5.0/cgi-bin/admin.c.avahi-5-services cups-1.5.0/cgi-bin/admin.c
|
||||||
|
|
||||||
#ifdef HAVE_LDAP
|
#ifdef HAVE_LDAP
|
||||||
cgiSetVariable("HAVE_LDAP", "1");
|
cgiSetVariable("HAVE_LDAP", "1");
|
||||||
diff -up cups-1.5.0/scheduler/client.c.avahi-5-services cups-1.5.0/scheduler/client.c
|
diff -up cups-1.5.2/scheduler/avahi.h.avahi-5-services cups-1.5.2/scheduler/avahi.h
|
||||||
--- cups-1.5.0/scheduler/client.c.avahi-5-services 2011-06-10 22:16:18.000000000 +0100
|
--- cups-1.5.2/scheduler/avahi.h.avahi-5-services 2012-03-14 15:07:29.477542381 +0000
|
||||||
+++ cups-1.5.0/scheduler/client.c 2011-10-19 11:53:32.127177926 +0100
|
+++ cups-1.5.2/scheduler/avahi.h 2012-03-14 15:08:25.701611799 +0000
|
||||||
@@ -4987,7 +4987,7 @@ valid_host(cupsd_client_t *con) /* I -
|
@@ -3,7 +3,7 @@
|
||||||
|
*
|
||||||
|
* Avahi poll implementation for the CUPS scheduler.
|
||||||
|
*
|
||||||
|
- * Copyright (C) 2010, 2011 Red Hat, Inc.
|
||||||
|
+ * Copyright (C) 2010, 2011, 2012 Red Hat, Inc.
|
||||||
|
* Authors:
|
||||||
|
* Tim Waugh <twaugh@redhat.com>
|
||||||
|
*
|
||||||
|
@@ -32,37 +32,40 @@
|
||||||
|
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
-#include <config.h>
|
||||||
|
+#ifndef _CUPS_AVAHI_H_
|
||||||
|
+# define _CUPS_AVAHI_H_
|
||||||
|
|
||||||
|
-#ifdef HAVE_AVAHI
|
||||||
|
-# include <avahi-client/client.h>
|
||||||
|
-# include <avahi-client/publish.h>
|
||||||
|
-#endif /* HAVE_AVAHI */
|
||||||
|
+/*
|
||||||
|
+ * Include necessary headers...
|
||||||
|
+ */
|
||||||
|
|
||||||
|
-#ifdef HAVE_AUTHORIZATION_H
|
||||||
|
-# include <Security/Authorization.h>
|
||||||
|
-#endif /* HAVE_AUTHORIZATION_H */
|
||||||
|
+# include <config.h>
|
||||||
|
|
||||||
|
+# ifdef HAVE_AVAHI
|
||||||
|
+# include <avahi-client/client.h>
|
||||||
|
+# include <avahi-client/publish.h>
|
||||||
|
+# endif /* HAVE_AVAHI */
|
||||||
|
|
||||||
|
-#ifdef HAVE_AVAHI
|
||||||
|
+# ifdef HAVE_AVAHI
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
AvahiPoll api;
|
||||||
|
cups_array_t *watched_fds;
|
||||||
|
cups_array_t *timeouts;
|
||||||
|
} AvahiCupsPoll;
|
||||||
|
-#endif /* HAVE_AVAHI */
|
||||||
|
+# endif /* HAVE_AVAHI */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Prototypes...
|
||||||
|
*/
|
||||||
|
|
||||||
|
-#ifdef HAVE_AVAHI
|
||||||
|
+# ifdef HAVE_AVAHI
|
||||||
|
extern AvahiCupsPoll * avahi_cups_poll_new(void);
|
||||||
|
extern void avahi_cups_poll_free(AvahiCupsPoll *cups_poll);
|
||||||
|
extern const AvahiPoll *avahi_cups_poll_get(AvahiCupsPoll *cups_poll);
|
||||||
|
-#endif /* HAVE_AVAHI */
|
||||||
|
+# endif /* HAVE_AVAHI */
|
||||||
|
|
||||||
|
+#endif /* !_CUPS_AVAHI_H_ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* End of "$Id$".
|
||||||
|
diff -up cups-1.5.2/scheduler/client.c.avahi-5-services cups-1.5.2/scheduler/client.c
|
||||||
|
--- cups-1.5.2/scheduler/client.c.avahi-5-services 2012-01-13 23:00:22.000000000 +0000
|
||||||
|
+++ cups-1.5.2/scheduler/client.c 2012-03-14 15:08:25.703611797 +0000
|
||||||
|
@@ -4989,7 +4989,7 @@ valid_host(cupsd_client_t *con) /* I -
|
||||||
!strncmp(host, "[::1]:", 6));
|
!strncmp(host, "[::1]:", 6));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -43,7 +108,7 @@ diff -up cups-1.5.0/scheduler/client.c.avahi-5-services cups-1.5.0/scheduler/cli
|
||||||
/*
|
/*
|
||||||
* Check if the hostname is something.local (Bonjour); if so, allow it.
|
* Check if the hostname is something.local (Bonjour); if so, allow it.
|
||||||
*/
|
*/
|
||||||
@@ -4996,7 +4996,7 @@ valid_host(cupsd_client_t *con) /* I -
|
@@ -4998,7 +4998,7 @@ valid_host(cupsd_client_t *con) /* I -
|
||||||
(!_cups_strcasecmp(end, ".local") || !_cups_strncasecmp(end, ".local:", 7) ||
|
(!_cups_strcasecmp(end, ".local") || !_cups_strncasecmp(end, ".local:", 7) ||
|
||||||
!_cups_strcasecmp(end, ".local.") || !_cups_strncasecmp(end, ".local.:", 8)))
|
!_cups_strcasecmp(end, ".local.") || !_cups_strncasecmp(end, ".local.:", 8)))
|
||||||
return (1);
|
return (1);
|
||||||
|
@ -52,10 +117,10 @@ diff -up cups-1.5.0/scheduler/client.c.avahi-5-services cups-1.5.0/scheduler/cli
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Check if the hostname is an IP address...
|
* Check if the hostname is an IP address...
|
||||||
diff -up cups-1.5.0/scheduler/conf.c.avahi-5-services cups-1.5.0/scheduler/conf.c
|
diff -up cups-1.5.2/scheduler/conf.c.avahi-5-services cups-1.5.2/scheduler/conf.c
|
||||||
--- cups-1.5.0/scheduler/conf.c.avahi-5-services 2011-10-19 11:53:31.895182225 +0100
|
--- cups-1.5.2/scheduler/conf.c.avahi-5-services 2012-03-14 15:04:17.636305526 +0000
|
||||||
+++ cups-1.5.0/scheduler/conf.c 2011-10-19 11:53:32.131177850 +0100
|
+++ cups-1.5.2/scheduler/conf.c 2012-03-14 15:08:25.706611803 +0000
|
||||||
@@ -651,7 +651,7 @@ cupsdReadConfiguration(void)
|
@@ -652,7 +652,7 @@ cupsdReadConfiguration(void)
|
||||||
Browsing = CUPS_DEFAULT_BROWSING;
|
Browsing = CUPS_DEFAULT_BROWSING;
|
||||||
DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED;
|
DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED;
|
||||||
|
|
||||||
|
@ -64,9 +129,9 @@ diff -up cups-1.5.0/scheduler/conf.c.avahi-5-services cups-1.5.0/scheduler/conf.
|
||||||
cupsdSetString(&DNSSDRegType, "_ipp._tcp,_cups");
|
cupsdSetString(&DNSSDRegType, "_ipp._tcp,_cups");
|
||||||
#endif /* HAVE_DNSSD */
|
#endif /* HAVE_DNSSD */
|
||||||
|
|
||||||
diff -up cups-1.5.0/scheduler/dirsvc.c.avahi-5-services cups-1.5.0/scheduler/dirsvc.c
|
diff -up cups-1.5.2/scheduler/dirsvc.c.avahi-5-services cups-1.5.2/scheduler/dirsvc.c
|
||||||
--- cups-1.5.0/scheduler/dirsvc.c.avahi-5-services 2011-10-19 11:53:32.011180075 +0100
|
--- cups-1.5.2/scheduler/dirsvc.c.avahi-5-services 2012-03-14 15:04:17.674305572 +0000
|
||||||
+++ cups-1.5.0/scheduler/dirsvc.c 2011-10-19 11:53:58.916681461 +0100
|
+++ cups-1.5.2/scheduler/dirsvc.c 2012-03-14 15:08:25.709611806 +0000
|
||||||
@@ -27,6 +27,7 @@
|
@@ -27,6 +27,7 @@
|
||||||
* ldap_connect() - Start new LDAP connection
|
* ldap_connect() - Start new LDAP connection
|
||||||
* ldap_reconnect() - Reconnect to LDAP Server
|
* ldap_reconnect() - Reconnect to LDAP Server
|
||||||
|
@ -799,15 +864,31 @@ diff -up cups-1.5.0/scheduler/dirsvc.c.avahi-5-services cups-1.5.0/scheduler/dir
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* De-register the individual printers
|
* De-register the individual printers
|
||||||
@@ -2906,6 +3292,7 @@ dnssdStop(void)
|
@@ -2910,12 +3296,23 @@ dnssdStop(void)
|
||||||
p = (cupsd_printer_t *)cupsArrayNext(Printers))
|
|
||||||
dnssdDeregisterPrinter(p);
|
|
||||||
|
|
||||||
+#ifdef HAVE_DNSSD
|
|
||||||
/*
|
|
||||||
* Shutdown the rest of the service refs...
|
* Shutdown the rest of the service refs...
|
||||||
*/
|
*/
|
||||||
@@ -2926,14 +3313,17 @@ dnssdStop(void)
|
|
||||||
|
+#ifdef HAVE_DNSSD
|
||||||
|
if (WebIFRef)
|
||||||
|
{
|
||||||
|
DNSServiceRefDeallocate(WebIFRef);
|
||||||
|
WebIFRef = NULL;
|
||||||
|
}
|
||||||
|
+#endif /* HAVE_DNSSD */
|
||||||
|
+#ifdef HAVE_AVAHI
|
||||||
|
+ if (AvahiWebIFGroup)
|
||||||
|
+ {
|
||||||
|
+ avahi_entry_group_reset (AvahiWebIFGroup);
|
||||||
|
+ avahi_entry_group_free (AvahiWebIFGroup);
|
||||||
|
+ AvahiWebIFGroup = NULL;
|
||||||
|
+ }
|
||||||
|
+#endif /* HAVE_AVAHI */
|
||||||
|
|
||||||
|
+#ifdef HAVE_DNSSD
|
||||||
|
if (RemoteRef)
|
||||||
|
{
|
||||||
|
DNSServiceRefDeallocate(RemoteRef);
|
||||||
|
@@ -2926,14 +3323,17 @@ dnssdStop(void)
|
||||||
|
|
||||||
DNSServiceRefDeallocate(DNSSDRef);
|
DNSServiceRefDeallocate(DNSSDRef);
|
||||||
DNSSDRef = NULL;
|
DNSSDRef = NULL;
|
||||||
|
@ -825,7 +906,7 @@ diff -up cups-1.5.0/scheduler/dirsvc.c.avahi-5-services cups-1.5.0/scheduler/dir
|
||||||
/*
|
/*
|
||||||
* 'dnssdUpdate()' - Handle DNS-SD queries.
|
* 'dnssdUpdate()' - Handle DNS-SD queries.
|
||||||
*/
|
*/
|
||||||
@@ -2955,6 +3345,153 @@ dnssdUpdate(void)
|
@@ -2955,6 +3355,153 @@ dnssdUpdate(void)
|
||||||
#endif /* HAVE_DNSSD */
|
#endif /* HAVE_DNSSD */
|
||||||
|
|
||||||
|
|
||||||
|
@ -979,9 +1060,9 @@ diff -up cups-1.5.0/scheduler/dirsvc.c.avahi-5-services cups-1.5.0/scheduler/dir
|
||||||
/*
|
/*
|
||||||
* 'get_auth_info_required()' - Get the auth-info-required value to advertise.
|
* 'get_auth_info_required()' - Get the auth-info-required value to advertise.
|
||||||
*/
|
*/
|
||||||
diff -up cups-1.5.0/scheduler/dirsvc.h.avahi-5-services cups-1.5.0/scheduler/dirsvc.h
|
diff -up cups-1.5.2/scheduler/dirsvc.h.avahi-5-services cups-1.5.2/scheduler/dirsvc.h
|
||||||
--- cups-1.5.0/scheduler/dirsvc.h.avahi-5-services 2011-03-21 02:12:14.000000000 +0000
|
--- cups-1.5.2/scheduler/dirsvc.h.avahi-5-services 2011-03-21 02:12:14.000000000 +0000
|
||||||
+++ cups-1.5.0/scheduler/dirsvc.h 2011-10-19 11:53:32.138177721 +0100
|
+++ cups-1.5.2/scheduler/dirsvc.h 2012-03-14 15:08:25.711611808 +0000
|
||||||
@@ -31,6 +31,10 @@
|
@@ -31,6 +31,10 @@
|
||||||
# endif /* HAVE_LDAP_SSL_H */
|
# endif /* HAVE_LDAP_SSL_H */
|
||||||
#endif /* HAVE_LDAP */
|
#endif /* HAVE_LDAP */
|
||||||
|
@ -1054,10 +1135,10 @@ diff -up cups-1.5.0/scheduler/dirsvc.h.avahi-5-services cups-1.5.0/scheduler/dir
|
||||||
#ifdef HAVE_LDAP
|
#ifdef HAVE_LDAP
|
||||||
extern void cupsdUpdateLDAPBrowse(void);
|
extern void cupsdUpdateLDAPBrowse(void);
|
||||||
#endif /* HAVE_LDAP */
|
#endif /* HAVE_LDAP */
|
||||||
diff -up cups-1.5.0/scheduler/ipp.c.avahi-5-services cups-1.5.0/scheduler/ipp.c
|
diff -up cups-1.5.2/scheduler/ipp.c.avahi-5-services cups-1.5.2/scheduler/ipp.c
|
||||||
--- cups-1.5.0/scheduler/ipp.c.avahi-5-services 2011-10-19 11:53:31.978180686 +0100
|
--- cups-1.5.2/scheduler/ipp.c.avahi-5-services 2012-03-14 15:04:17.665305560 +0000
|
||||||
+++ cups-1.5.0/scheduler/ipp.c 2011-10-19 11:53:32.147177555 +0100
|
+++ cups-1.5.2/scheduler/ipp.c 2012-03-14 15:08:25.715611813 +0000
|
||||||
@@ -6096,7 +6096,7 @@ copy_printer_attrs(
|
@@ -6099,7 +6099,7 @@ copy_printer_attrs(
|
||||||
ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time",
|
ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time",
|
||||||
ippTimeToDate(curtime));
|
ippTimeToDate(curtime));
|
||||||
|
|
||||||
|
@ -1066,7 +1147,7 @@ diff -up cups-1.5.0/scheduler/ipp.c.avahi-5-services cups-1.5.0/scheduler/ipp.c
|
||||||
if (!ra || cupsArrayFind(ra, "printer-dns-sd-name"))
|
if (!ra || cupsArrayFind(ra, "printer-dns-sd-name"))
|
||||||
{
|
{
|
||||||
if (printer->reg_name)
|
if (printer->reg_name)
|
||||||
@@ -6106,7 +6106,7 @@ copy_printer_attrs(
|
@@ -6109,7 +6109,7 @@ copy_printer_attrs(
|
||||||
ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE,
|
ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE,
|
||||||
"printer-dns-sd-name", 0);
|
"printer-dns-sd-name", 0);
|
||||||
}
|
}
|
||||||
|
@ -1075,9 +1156,9 @@ diff -up cups-1.5.0/scheduler/ipp.c.avahi-5-services cups-1.5.0/scheduler/ipp.c
|
||||||
|
|
||||||
if (!ra || cupsArrayFind(ra, "printer-error-policy"))
|
if (!ra || cupsArrayFind(ra, "printer-error-policy"))
|
||||||
ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME,
|
ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME,
|
||||||
diff -up cups-1.5.0/scheduler/main.c.avahi-5-services cups-1.5.0/scheduler/main.c
|
diff -up cups-1.5.2/scheduler/main.c.avahi-5-services cups-1.5.2/scheduler/main.c
|
||||||
--- cups-1.5.0/scheduler/main.c.avahi-5-services 2011-10-19 11:53:32.101178406 +0100
|
--- cups-1.5.2/scheduler/main.c.avahi-5-services 2012-03-14 15:06:36.511476986 +0000
|
||||||
+++ cups-1.5.0/scheduler/main.c 2011-10-19 11:53:32.151177479 +0100
|
+++ cups-1.5.2/scheduler/main.c 2012-03-14 15:08:25.718611817 +0000
|
||||||
@@ -120,6 +120,10 @@ main(int argc, /* I - Number of comm
|
@@ -120,6 +120,10 @@ main(int argc, /* I - Number of comm
|
||||||
cupsd_listener_t *lis; /* Current listener */
|
cupsd_listener_t *lis; /* Current listener */
|
||||||
time_t current_time, /* Current time */
|
time_t current_time, /* Current time */
|
||||||
|
@ -1116,9 +1197,9 @@ diff -up cups-1.5.0/scheduler/main.c.avahi-5-services cups-1.5.0/scheduler/main.
|
||||||
#endif /* HAVE_AVAHI */
|
#endif /* HAVE_AVAHI */
|
||||||
|
|
||||||
#ifndef __APPLE__
|
#ifndef __APPLE__
|
||||||
diff -up cups-1.5.0/scheduler/printers.c.avahi-5-services cups-1.5.0/scheduler/printers.c
|
diff -up cups-1.5.2/scheduler/printers.c.avahi-5-services cups-1.5.2/scheduler/printers.c
|
||||||
--- cups-1.5.0/scheduler/printers.c.avahi-5-services 2011-10-19 11:53:31.916181835 +0100
|
--- cups-1.5.2/scheduler/printers.c.avahi-5-services 2012-03-14 15:04:17.646305537 +0000
|
||||||
+++ cups-1.5.0/scheduler/printers.c 2011-10-19 11:53:32.156177388 +0100
|
+++ cups-1.5.2/scheduler/printers.c 2012-03-14 15:08:25.720611819 +0000
|
||||||
@@ -883,9 +883,9 @@ cupsdDeletePrinter(
|
@@ -883,9 +883,9 @@ cupsdDeletePrinter(
|
||||||
cupsdClearString(&p->alert);
|
cupsdClearString(&p->alert);
|
||||||
cupsdClearString(&p->alert_description);
|
cupsdClearString(&p->alert_description);
|
||||||
|
@ -1149,9 +1230,9 @@ diff -up cups-1.5.0/scheduler/printers.c.avahi-5-services cups-1.5.0/scheduler/p
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
diff -up cups-1.5.0/scheduler/printers.h.avahi-5-services cups-1.5.0/scheduler/printers.h
|
diff -up cups-1.5.2/scheduler/printers.h.avahi-5-services cups-1.5.2/scheduler/printers.h
|
||||||
--- cups-1.5.0/scheduler/printers.h.avahi-5-services 2011-03-18 18:42:46.000000000 +0000
|
--- cups-1.5.2/scheduler/printers.h.avahi-5-services 2011-03-18 18:42:46.000000000 +0000
|
||||||
+++ cups-1.5.0/scheduler/printers.h 2011-10-19 11:53:32.157177369 +0100
|
+++ cups-1.5.2/scheduler/printers.h 2012-03-14 15:08:25.721611820 +0000
|
||||||
@@ -16,6 +16,9 @@
|
@@ -16,6 +16,9 @@
|
||||||
#ifdef HAVE_DNSSD
|
#ifdef HAVE_DNSSD
|
||||||
# include <dns_sd.h>
|
# include <dns_sd.h>
|
||||||
|
|
|
@ -1,15 +1,3 @@
|
||||||
diff -up cups-1.5.0/cups/http.c.driverd-timeout cups-1.5.0/cups/http.c
|
|
||||||
--- cups-1.5.0/cups/http.c.driverd-timeout 2011-10-10 17:03:54.181458460 +0100
|
|
||||||
+++ cups-1.5.0/cups/http.c 2011-10-10 17:04:01.452321912 +0100
|
|
||||||
@@ -1314,7 +1314,7 @@ httpGets(char *line, /* I - Line to
|
|
||||||
* No newline; see if there is more data to be read...
|
|
||||||
*/
|
|
||||||
|
|
||||||
- while (!_httpWait(http, http->blocking ? 30000 : 10000, 1))
|
|
||||||
+ while (!_httpWait(http, http->blocking ? 70000 : 10000, 1))
|
|
||||||
{
|
|
||||||
if (http->timeout_cb && (*http->timeout_cb)(http, http->timeout_data))
|
|
||||||
continue;
|
|
||||||
diff -up cups-1.5.0/scheduler/ipp.c.driverd-timeout cups-1.5.0/scheduler/ipp.c
|
diff -up cups-1.5.0/scheduler/ipp.c.driverd-timeout cups-1.5.0/scheduler/ipp.c
|
||||||
--- cups-1.5.0/scheduler/ipp.c.driverd-timeout 2011-10-10 17:03:41.801690962 +0100
|
--- cups-1.5.0/scheduler/ipp.c.driverd-timeout 2011-10-10 17:03:41.801690962 +0100
|
||||||
+++ cups-1.5.0/scheduler/ipp.c 2011-10-10 17:03:41.861689834 +0100
|
+++ cups-1.5.0/scheduler/ipp.c 2011-10-10 17:03:41.861689834 +0100
|
||||||
|
|
11
cups-polld-reconnect.patch
Normal file
11
cups-polld-reconnect.patch
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
diff -up cups-1.5.0/cups/ppd-cache.c.ps-command-filter cups-1.5.0/cups/ppd-cache.c
|
|
||||||
--- cups-1.5.0/cups/ppd-cache.c.ps-command-filter 2011-11-04 13:10:34.405729542 +0000
|
|
||||||
+++ cups-1.5.0/cups/ppd-cache.c 2011-11-04 13:11:58.502184096 +0000
|
|
||||||
@@ -1272,7 +1272,8 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd)
|
|
||||||
|
|
||||||
if (filter)
|
|
||||||
cupsArrayAdd(pc->filters,
|
|
||||||
- "application/vnd.cups-command application/postscript 0 -");
|
|
||||||
+ "application/vnd.cups-command application/postscript 100 "
|
|
||||||
+ "commandtops");
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((ppd_attr = ppdFindAttr(ppd, "cupsPreFilter", NULL)) != NULL)
|
|
43
cups-revision10277.patch
Normal file
43
cups-revision10277.patch
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
From 19e2adf8307c8a908da80ceef335517139e5bf64 Mon Sep 17 00:00:00 2001
|
||||||
|
From: mike <mike@7a7537e8-13f0-0310-91df-b6672ffda945>
|
||||||
|
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
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
diff -up cups-1.5b1/backend/snmp-supplies.c.snmp-quirks cups-1.5b1/backend/snmp-supplies.c
|
diff -up cups-1.5.2/backend/snmp-supplies.c.snmp-quirks cups-1.5.2/backend/snmp-supplies.c
|
||||||
--- cups-1.5b1/backend/snmp-supplies.c.snmp-quirks 2011-05-20 05:49:49.000000000 +0200
|
--- cups-1.5.2/backend/snmp-supplies.c.snmp-quirks 2011-10-07 23:41:07.000000000 +0200
|
||||||
+++ cups-1.5b1/backend/snmp-supplies.c 2011-05-24 17:15:55.000000000 +0200
|
+++ cups-1.5.2/backend/snmp-supplies.c 2012-02-06 10:48:47.543906526 +0100
|
||||||
@@ -47,6 +47,13 @@
|
@@ -47,6 +47,13 @@
|
||||||
|
|
||||||
|
|
||||||
|
@ -59,7 +59,7 @@ diff -up cups-1.5b1/backend/snmp-supplies.c.snmp-quirks cups-1.5b1/backend/snmp-
|
||||||
+ if (quirks & QUIRK_CAPACITY)
|
+ if (quirks & QUIRK_CAPACITY)
|
||||||
+ supplies[i].max_capacity = 100;
|
+ supplies[i].max_capacity = 100;
|
||||||
+
|
+
|
||||||
if (supplies[i].max_capacity > 0)
|
if (supplies[i].max_capacity > 0 && supplies[i].level >= 0)
|
||||||
percent = 100 * supplies[i].level / supplies[i].max_capacity;
|
percent = 100 * supplies[i].level / supplies[i].max_capacity;
|
||||||
else
|
else
|
||||||
@@ -401,6 +427,7 @@ backend_init_supplies(
|
@@ -401,6 +427,7 @@ backend_init_supplies(
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
diff -up cups-1.5.0/scheduler/cups-driverd.cxx.str3921 cups-1.5.0/scheduler/cups-driverd.cxx
|
|
||||||
--- cups-1.5.0/scheduler/cups-driverd.cxx.str3921 2011-06-08 22:19:11.000000000 +0100
|
|
||||||
+++ cups-1.5.0/scheduler/cups-driverd.cxx 2011-10-11 12:07:34.979538544 +0100
|
|
||||||
@@ -1411,9 +1411,7 @@ load_drv(const char *filename, /* I -
|
|
||||||
* Add a dummy entry for the file...
|
|
||||||
*/
|
|
||||||
|
|
||||||
- httpAssembleURIf(HTTP_URI_CODING_ALL, uri, sizeof(uri), "drv", "", "", 0,
|
|
||||||
- "/%s", name);
|
|
||||||
- add_ppd(name, uri, "", "", "", "", "", "", mtime, size, 0,
|
|
||||||
+ add_ppd(name, name, "", "", "", "", "", "", mtime, size, 0,
|
|
||||||
PPD_TYPE_DRV, "drv");
|
|
||||||
ChangedPPD = 1;
|
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
diff -up cups-1.5.0/notifier/dbus.c.str3947 cups-1.5.0/notifier/dbus.c
|
|
||||||
--- cups-1.5.0/notifier/dbus.c.str3947 2011-03-04 16:55:59.000000000 +0000
|
|
||||||
+++ cups-1.5.0/notifier/dbus.c 2011-09-28 10:42:56.298760622 +0100
|
|
||||||
@@ -4,7 +4,7 @@
|
|
||||||
* D-Bus notifier for CUPS.
|
|
||||||
*
|
|
||||||
* Copyright 2008-2010 by Apple Inc.
|
|
||||||
- * Copyright (C) 2007 Red Hat, Inc.
|
|
||||||
+ * Copyright (C) 2011 Red Hat, Inc.
|
|
||||||
* Copyright (C) 2007 Tim Waugh <twaugh@redhat.com>
|
|
||||||
* Copyright 1997-2005 by Easy Software Products.
|
|
||||||
*
|
|
||||||
@@ -423,10 +423,11 @@ main(int argc, /* I - Number of comm
|
|
||||||
p = printer_reasons;
|
|
||||||
for (i = 0; i < attr->num_values; i++)
|
|
||||||
{
|
|
||||||
- strcpy(p, attr->values[i].string.text);
|
|
||||||
- p += strlen(p);
|
|
||||||
if (i)
|
|
||||||
*p++ = ',';
|
|
||||||
+
|
|
||||||
+ strcpy(p, attr->values[i].string.text);
|
|
||||||
+ p += strlen(p);
|
|
||||||
}
|
|
||||||
dbus_message_iter_append_string(&iter, &printer_reasons);
|
|
||||||
}
|
|
74
cups-str3985.patch
Normal file
74
cups-str3985.patch
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
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);
|
16
cups-str4014.patch
Normal file
16
cups-str4014.patch
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
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...
|
|
@ -1,6 +1,6 @@
|
||||||
diff -up cups-1.5.0/config.h.in.systemd-socket cups-1.5.0/config.h.in
|
diff -up cups-1.5.2/config.h.in.systemd-socket cups-1.5.2/config.h.in
|
||||||
--- cups-1.5.0/config.h.in.systemd-socket 2011-10-18 15:32:40.741672460 +0100
|
--- cups-1.5.2/config.h.in.systemd-socket 2012-03-16 14:50:57.089449755 +0000
|
||||||
+++ cups-1.5.0/config.h.in 2011-10-18 15:32:40.843670530 +0100
|
+++ cups-1.5.2/config.h.in 2012-03-16 14:50:57.146449787 +0000
|
||||||
@@ -503,6 +503,13 @@
|
@@ -503,6 +503,13 @@
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,9 +15,9 @@ diff -up cups-1.5.0/config.h.in.systemd-socket cups-1.5.0/config.h.in
|
||||||
* Various scripting languages...
|
* Various scripting languages...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
diff -up cups-1.5.0/config-scripts/cups-systemd.m4.systemd-socket cups-1.5.0/config-scripts/cups-systemd.m4
|
diff -up cups-1.5.2/config-scripts/cups-systemd.m4.systemd-socket cups-1.5.2/config-scripts/cups-systemd.m4
|
||||||
--- cups-1.5.0/config-scripts/cups-systemd.m4.systemd-socket 2011-10-18 15:32:40.844670511 +0100
|
--- cups-1.5.2/config-scripts/cups-systemd.m4.systemd-socket 2012-03-16 14:50:57.146449787 +0000
|
||||||
+++ cups-1.5.0/config-scripts/cups-systemd.m4 2011-10-18 15:33:16.861989058 +0100
|
+++ cups-1.5.2/config-scripts/cups-systemd.m4 2012-03-16 14:50:57.146449787 +0000
|
||||||
@@ -0,0 +1,36 @@
|
@@ -0,0 +1,36 @@
|
||||||
+dnl
|
+dnl
|
||||||
+dnl "$Id$"
|
+dnl "$Id$"
|
||||||
|
@ -55,9 +55,9 @@ diff -up cups-1.5.0/config-scripts/cups-systemd.m4.systemd-socket cups-1.5.0/con
|
||||||
+dnl
|
+dnl
|
||||||
+dnl "$Id$"
|
+dnl "$Id$"
|
||||||
+dnl
|
+dnl
|
||||||
diff -up cups-1.5.0/configure.in.systemd-socket cups-1.5.0/configure.in
|
diff -up cups-1.5.2/configure.in.systemd-socket cups-1.5.2/configure.in
|
||||||
--- cups-1.5.0/configure.in.systemd-socket 2010-11-20 01:03:46.000000000 +0000
|
--- cups-1.5.2/configure.in.systemd-socket 2011-08-31 02:36:33.000000000 +0100
|
||||||
+++ cups-1.5.0/configure.in 2011-10-18 15:32:40.844670511 +0100
|
+++ cups-1.5.2/configure.in 2012-03-16 14:50:57.146449787 +0000
|
||||||
@@ -37,6 +37,7 @@ sinclude(config-scripts/cups-pam.m4)
|
@@ -37,6 +37,7 @@ sinclude(config-scripts/cups-pam.m4)
|
||||||
sinclude(config-scripts/cups-largefile.m4)
|
sinclude(config-scripts/cups-largefile.m4)
|
||||||
sinclude(config-scripts/cups-dnssd.m4)
|
sinclude(config-scripts/cups-dnssd.m4)
|
||||||
|
@ -76,10 +76,10 @@ diff -up cups-1.5.0/configure.in.systemd-socket cups-1.5.0/configure.in
|
||||||
desktop/cups.desktop
|
desktop/cups.desktop
|
||||||
doc/help/ref-cupsd-conf.html
|
doc/help/ref-cupsd-conf.html
|
||||||
doc/help/standard.html
|
doc/help/standard.html
|
||||||
diff -up cups-1.5.0/cups/usersys.c.systemd-socket cups-1.5.0/cups/usersys.c
|
diff -up cups-1.5.2/cups/usersys.c.systemd-socket cups-1.5.2/cups/usersys.c
|
||||||
--- cups-1.5.0/cups/usersys.c.systemd-socket 2011-10-18 15:32:40.645674277 +0100
|
--- cups-1.5.2/cups/usersys.c.systemd-socket 2012-03-16 14:50:57.054449734 +0000
|
||||||
+++ cups-1.5.0/cups/usersys.c 2011-10-18 15:32:40.845670492 +0100
|
+++ cups-1.5.2/cups/usersys.c 2012-03-16 14:50:57.148449788 +0000
|
||||||
@@ -770,7 +770,7 @@ cups_read_client_conf(
|
@@ -778,7 +778,7 @@ cups_read_client_conf(
|
||||||
struct stat sockinfo; /* Domain socket information */
|
struct stat sockinfo; /* Domain socket information */
|
||||||
|
|
||||||
if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) &&
|
if (!stat(CUPS_DEFAULT_DOMAINSOCKET, &sockinfo) &&
|
||||||
|
@ -88,9 +88,9 @@ diff -up cups-1.5.0/cups/usersys.c.systemd-socket cups-1.5.0/cups/usersys.c
|
||||||
cups_server = CUPS_DEFAULT_DOMAINSOCKET;
|
cups_server = CUPS_DEFAULT_DOMAINSOCKET;
|
||||||
else
|
else
|
||||||
#endif /* CUPS_DEFAULT_DOMAINSOCKET */
|
#endif /* CUPS_DEFAULT_DOMAINSOCKET */
|
||||||
diff -up cups-1.5.0/data/cups.path.in.systemd-socket cups-1.5.0/data/cups.path.in
|
diff -up cups-1.5.2/data/cups.path.in.systemd-socket cups-1.5.2/data/cups.path.in
|
||||||
--- cups-1.5.0/data/cups.path.in.systemd-socket 2011-10-18 15:32:40.846670473 +0100
|
--- cups-1.5.2/data/cups.path.in.systemd-socket 2012-03-16 14:50:57.148449788 +0000
|
||||||
+++ cups-1.5.0/data/cups.path.in 2011-10-18 15:32:40.846670473 +0100
|
+++ cups-1.5.2/data/cups.path.in 2012-03-16 14:50:57.148449788 +0000
|
||||||
@@ -0,0 +1,8 @@
|
@@ -0,0 +1,8 @@
|
||||||
+[Unit]
|
+[Unit]
|
||||||
+Description=CUPS Printer Service Spool
|
+Description=CUPS Printer Service Spool
|
||||||
|
@ -100,36 +100,38 @@ diff -up cups-1.5.0/data/cups.path.in.systemd-socket cups-1.5.0/data/cups.path.i
|
||||||
+
|
+
|
||||||
+[Install]
|
+[Install]
|
||||||
+WantedBy=multi-user.target
|
+WantedBy=multi-user.target
|
||||||
diff -up cups-1.5.0/data/cups.service.in.systemd-socket cups-1.5.0/data/cups.service.in
|
diff -up cups-1.5.2/data/cups.service.in.systemd-socket cups-1.5.2/data/cups.service.in
|
||||||
--- cups-1.5.0/data/cups.service.in.systemd-socket 2011-10-18 15:32:40.846670473 +0100
|
--- cups-1.5.2/data/cups.service.in.systemd-socket 2012-03-16 14:50:57.149449788 +0000
|
||||||
+++ cups-1.5.0/data/cups.service.in 2011-10-18 15:32:40.846670473 +0100
|
+++ cups-1.5.2/data/cups.service.in 2012-03-16 14:50:57.149449788 +0000
|
||||||
@@ -0,0 +1,9 @@
|
@@ -0,0 +1,10 @@
|
||||||
+[Unit]
|
+[Unit]
|
||||||
+Description=CUPS Printing Service
|
+Description=CUPS Printing Service
|
||||||
+
|
+
|
||||||
+[Service]
|
+[Service]
|
||||||
+ExecStart=@sbindir@/cupsd -f
|
+ExecStart=@sbindir@/cupsd -f
|
||||||
|
+PrivateTmp=true
|
||||||
+
|
+
|
||||||
+[Install]
|
+[Install]
|
||||||
+Also=cups.socket cups.path
|
+Also=cups.socket cups.path
|
||||||
+WantedBy=printer.target
|
+WantedBy=printer.target
|
||||||
diff -up cups-1.5.0/data/cups.socket.in.systemd-socket cups-1.5.0/data/cups.socket.in
|
diff -up cups-1.5.2/data/cups.socket.in.systemd-socket cups-1.5.2/data/cups.socket.in
|
||||||
--- cups-1.5.0/data/cups.socket.in.systemd-socket 2011-10-18 15:32:40.847670454 +0100
|
--- cups-1.5.2/data/cups.socket.in.systemd-socket 2012-03-16 14:50:57.150449788 +0000
|
||||||
+++ cups-1.5.0/data/cups.socket.in 2011-10-18 15:32:40.847670454 +0100
|
+++ cups-1.5.2/data/cups.socket.in 2012-03-16 14:50:57.150449788 +0000
|
||||||
@@ -0,0 +1,10 @@
|
@@ -0,0 +1,11 @@
|
||||||
+[Unit]
|
+[Unit]
|
||||||
+Description=CUPS Printing Service Sockets
|
+Description=CUPS Printing Service Sockets
|
||||||
+
|
+
|
||||||
+[Socket]
|
+[Socket]
|
||||||
+ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@
|
+ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@
|
||||||
+ListenStream=631
|
+ListenStream=631
|
||||||
|
+ListenDatagram=0.0.0.0:631
|
||||||
+BindIPv6Only=ipv6-only
|
+BindIPv6Only=ipv6-only
|
||||||
+
|
+
|
||||||
+[Install]
|
+[Install]
|
||||||
+WantedBy=sockets.target
|
+WantedBy=sockets.target
|
||||||
diff -up cups-1.5.0/data/Makefile.systemd-socket cups-1.5.0/data/Makefile
|
diff -up cups-1.5.2/data/Makefile.systemd-socket cups-1.5.2/data/Makefile
|
||||||
--- cups-1.5.0/data/Makefile.systemd-socket 2011-05-12 06:21:56.000000000 +0100
|
--- cups-1.5.2/data/Makefile.systemd-socket 2011-05-12 06:21:56.000000000 +0100
|
||||||
+++ cups-1.5.0/data/Makefile 2011-10-18 15:32:40.847670454 +0100
|
+++ cups-1.5.2/data/Makefile 2012-03-16 14:50:57.151449789 +0000
|
||||||
@@ -112,6 +112,12 @@ install-data:
|
@@ -112,6 +112,12 @@ install-data:
|
||||||
$(INSTALL_DATA) $$file $(DATADIR)/ppdc; \
|
$(INSTALL_DATA) $$file $(DATADIR)/ppdc; \
|
||||||
done
|
done
|
||||||
|
@ -153,9 +155,9 @@ diff -up cups-1.5.0/data/Makefile.systemd-socket cups-1.5.0/data/Makefile
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
diff -up cups-1.5.0/Makedefs.in.systemd-socket cups-1.5.0/Makedefs.in
|
diff -up cups-1.5.2/Makedefs.in.systemd-socket cups-1.5.2/Makedefs.in
|
||||||
--- cups-1.5.0/Makedefs.in.systemd-socket 2011-10-18 15:32:40.719672876 +0100
|
--- cups-1.5.2/Makedefs.in.systemd-socket 2012-03-16 14:50:57.081449751 +0000
|
||||||
+++ cups-1.5.0/Makedefs.in 2011-10-18 15:32:40.848670435 +0100
|
+++ cups-1.5.2/Makedefs.in 2012-03-16 14:50:57.152449790 +0000
|
||||||
@@ -143,6 +143,7 @@ CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@
|
@@ -143,6 +143,7 @@ CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@
|
||||||
CXXLIBS = @CXXLIBS@
|
CXXLIBS = @CXXLIBS@
|
||||||
DBUS_NOTIFIER = @DBUS_NOTIFIER@
|
DBUS_NOTIFIER = @DBUS_NOTIFIER@
|
||||||
|
@ -180,9 +182,9 @@ diff -up cups-1.5.0/Makedefs.in.systemd-socket cups-1.5.0/Makedefs.in
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
diff -up cups-1.5.0/scheduler/client.h.systemd-socket cups-1.5.0/scheduler/client.h
|
diff -up cups-1.5.2/scheduler/client.h.systemd-socket cups-1.5.2/scheduler/client.h
|
||||||
--- cups-1.5.0/scheduler/client.h.systemd-socket 2011-03-25 21:25:38.000000000 +0000
|
--- cups-1.5.2/scheduler/client.h.systemd-socket 2011-03-25 21:25:38.000000000 +0000
|
||||||
+++ cups-1.5.0/scheduler/client.h 2011-10-18 15:32:40.848670435 +0100
|
+++ cups-1.5.2/scheduler/client.h 2012-03-16 14:50:57.153449791 +0000
|
||||||
@@ -75,6 +75,9 @@ typedef struct
|
@@ -75,6 +75,9 @@ typedef struct
|
||||||
int fd; /* File descriptor for this server */
|
int fd; /* File descriptor for this server */
|
||||||
http_addr_t address; /* Bind address of socket */
|
http_addr_t address; /* Bind address of socket */
|
||||||
|
@ -193,9 +195,99 @@ diff -up cups-1.5.0/scheduler/client.h.systemd-socket cups-1.5.0/scheduler/clien
|
||||||
} cupsd_listener_t;
|
} cupsd_listener_t;
|
||||||
|
|
||||||
|
|
||||||
diff -up cups-1.5.0/scheduler/listen.c.systemd-socket cups-1.5.0/scheduler/listen.c
|
diff -up cups-1.5.2/scheduler/dirsvc.c.systemd-socket cups-1.5.2/scheduler/dirsvc.c
|
||||||
--- cups-1.5.0/scheduler/listen.c.systemd-socket 2011-04-16 00:38:13.000000000 +0100
|
--- cups-1.5.2/scheduler/dirsvc.c.systemd-socket 2012-03-16 14:50:57.112449768 +0000
|
||||||
+++ cups-1.5.0/scheduler/listen.c 2011-10-18 15:32:40.849670416 +0100
|
+++ cups-1.5.2/scheduler/dirsvc.c 2012-03-16 14:50:57.155449792 +0000
|
||||||
|
@@ -1512,7 +1512,7 @@ cupsdStartBrowsing(void)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (BrowseSocket >= 0)
|
||||||
|
+ if (BrowseSocket >= 0 && !BrowseSocketIsSystemd)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Bind the socket to browse port...
|
||||||
|
@@ -1556,13 +1556,17 @@ cupsdStartBrowsing(void)
|
||||||
|
cupsdLogMessage(CUPSD_LOG_ERROR, "Unable to set broadcast mode - %s.",
|
||||||
|
strerror(errno));
|
||||||
|
|
||||||
|
+ if (!BrowseSocketIsSystemd)
|
||||||
|
+ {
|
||||||
|
#ifdef WIN32
|
||||||
|
- closesocket(BrowseSocket);
|
||||||
|
+ closesocket(BrowseSocket);
|
||||||
|
#else
|
||||||
|
- close(BrowseSocket);
|
||||||
|
+ close(BrowseSocket);
|
||||||
|
#endif /* WIN32 */
|
||||||
|
|
||||||
|
- BrowseSocket = -1;
|
||||||
|
+ BrowseSocket = -1;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
BrowseLocalProtocols &= ~BROWSE_CUPS;
|
||||||
|
BrowseRemoteProtocols &= ~BROWSE_CUPS;
|
||||||
|
|
||||||
|
@@ -1885,15 +1889,22 @@ cupsdStopBrowsing(void)
|
||||||
|
if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_CUPS) &&
|
||||||
|
BrowseSocket >= 0)
|
||||||
|
{
|
||||||
|
- /*
|
||||||
|
- * Close the socket and remove it from the input selection set.
|
||||||
|
- */
|
||||||
|
+ if (!BrowseSocketIsSystemd)
|
||||||
|
+ {
|
||||||
|
+ /*
|
||||||
|
+ * Close the socket.
|
||||||
|
+ */
|
||||||
|
|
||||||
|
#ifdef WIN32
|
||||||
|
- closesocket(BrowseSocket);
|
||||||
|
+ closesocket(BrowseSocket);
|
||||||
|
#else
|
||||||
|
- close(BrowseSocket);
|
||||||
|
+ close(BrowseSocket);
|
||||||
|
#endif /* WIN32 */
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Remove it from the input selection set.
|
||||||
|
+ */
|
||||||
|
|
||||||
|
cupsdRemoveSelect(BrowseSocket);
|
||||||
|
BrowseSocket = -1;
|
||||||
|
@@ -5693,11 +5704,14 @@ update_cups_browse(void)
|
||||||
|
strerror(errno));
|
||||||
|
cupsdLogMessage(CUPSD_LOG_ERROR, "CUPS browsing turned off.");
|
||||||
|
|
||||||
|
+ if (!BrowseSocketIsSystemd)
|
||||||
|
+ {
|
||||||
|
#ifdef WIN32
|
||||||
|
- closesocket(BrowseSocket);
|
||||||
|
+ closesocket(BrowseSocket);
|
||||||
|
#else
|
||||||
|
- close(BrowseSocket);
|
||||||
|
+ close(BrowseSocket);
|
||||||
|
#endif /* WIN32 */
|
||||||
|
+ }
|
||||||
|
|
||||||
|
cupsdRemoveSelect(BrowseSocket);
|
||||||
|
BrowseSocket = -1;
|
||||||
|
diff -up cups-1.5.2/scheduler/dirsvc.h.systemd-socket cups-1.5.2/scheduler/dirsvc.h
|
||||||
|
--- cups-1.5.2/scheduler/dirsvc.h.systemd-socket 2012-03-16 14:50:57.113449769 +0000
|
||||||
|
+++ cups-1.5.2/scheduler/dirsvc.h 2012-03-16 14:50:57.157449792 +0000
|
||||||
|
@@ -100,6 +100,8 @@ VAR int Browsing VALUE(TRUE),
|
||||||
|
/* Short names for remote printers? */
|
||||||
|
BrowseSocket VALUE(-1),
|
||||||
|
/* Socket for browsing */
|
||||||
|
+ BrowseSocketIsSystemd VALUE(0),
|
||||||
|
+ /* BrowseSocket is systemd-provided? */
|
||||||
|
BrowsePort VALUE(IPP_PORT),
|
||||||
|
/* Port number for broadcasts */
|
||||||
|
BrowseInterval VALUE(DEFAULT_INTERVAL),
|
||||||
|
diff -up cups-1.5.2/scheduler/listen.c.systemd-socket cups-1.5.2/scheduler/listen.c
|
||||||
|
--- cups-1.5.2/scheduler/listen.c.systemd-socket 2011-04-16 00:38:13.000000000 +0100
|
||||||
|
+++ cups-1.5.2/scheduler/listen.c 2012-03-16 14:50:57.158449792 +0000
|
||||||
@@ -401,7 +401,11 @@ cupsdStopListening(void)
|
@@ -401,7 +401,11 @@ cupsdStopListening(void)
|
||||||
lis;
|
lis;
|
||||||
lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
|
lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
|
||||||
|
@ -209,9 +301,9 @@ diff -up cups-1.5.0/scheduler/listen.c.systemd-socket cups-1.5.0/scheduler/liste
|
||||||
{
|
{
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
closesocket(lis->fd);
|
closesocket(lis->fd);
|
||||||
diff -up cups-1.5.0/scheduler/main.c.systemd-socket cups-1.5.0/scheduler/main.c
|
diff -up cups-1.5.2/scheduler/main.c.systemd-socket cups-1.5.2/scheduler/main.c
|
||||||
--- cups-1.5.0/scheduler/main.c.systemd-socket 2011-10-18 15:32:40.802671306 +0100
|
--- cups-1.5.2/scheduler/main.c.systemd-socket 2012-03-16 14:50:57.121449773 +0000
|
||||||
+++ cups-1.5.0/scheduler/main.c 2011-10-18 15:32:40.851670379 +0100
|
+++ cups-1.5.2/scheduler/main.c 2012-03-16 14:51:55.409483636 +0000
|
||||||
@@ -26,6 +26,8 @@
|
@@ -26,6 +26,8 @@
|
||||||
* launchd_checkin() - Check-in with launchd and collect the listening
|
* launchd_checkin() - Check-in with launchd and collect the listening
|
||||||
* fds.
|
* fds.
|
||||||
|
@ -272,7 +364,7 @@ diff -up cups-1.5.0/scheduler/main.c.systemd-socket cups-1.5.0/scheduler/main.c
|
||||||
/*
|
/*
|
||||||
* Startup the server...
|
* Startup the server...
|
||||||
*/
|
*/
|
||||||
@@ -1584,6 +1609,100 @@ launchd_checkout(void)
|
@@ -1584,6 +1609,139 @@ launchd_checkout(void)
|
||||||
}
|
}
|
||||||
#endif /* HAVE_LAUNCHD */
|
#endif /* HAVE_LAUNCHD */
|
||||||
|
|
||||||
|
@ -304,14 +396,53 @@ diff -up cups-1.5.0/scheduler/main.c.systemd-socket cups-1.5.0/scheduler/main.c
|
||||||
+ char s[256];
|
+ char s[256];
|
||||||
+
|
+
|
||||||
+ r = sd_is_socket(fd, AF_UNSPEC, SOCK_STREAM, 1);
|
+ r = sd_is_socket(fd, AF_UNSPEC, SOCK_STREAM, 1);
|
||||||
+ if (r < 0) {
|
+ if (r < 0)
|
||||||
|
+ {
|
||||||
+ cupsdLogMessage(CUPSD_LOG_ERROR,
|
+ cupsdLogMessage(CUPSD_LOG_ERROR,
|
||||||
+ "systemd_checkin: Unable to verify socket type - %s",
|
+ "systemd_checkin: Unable to verify socket type - %s",
|
||||||
+ strerror(-r));
|
+ strerror(-r));
|
||||||
+ continue;
|
+ continue;
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ if (!r) {
|
+ if (!r)
|
||||||
|
+ {
|
||||||
|
+ if (Browsing &&
|
||||||
|
+ ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_CUPS))
|
||||||
|
+ {
|
||||||
|
+ r = sd_is_socket(fd, AF_UNSPEC, SOCK_DGRAM, 0);
|
||||||
|
+ if (r < 0)
|
||||||
|
+ {
|
||||||
|
+ cupsdLogMessage(CUPSD_LOG_ERROR,
|
||||||
|
+ "systemd_checkin: Unable to verify socket type - %s",
|
||||||
|
+ strerror(-r));
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (r)
|
||||||
|
+ {
|
||||||
|
+ /*
|
||||||
|
+ * This is the browse socket.
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
+ char addrstr[256];
|
||||||
|
+ if (getsockname(fd, (struct sockaddr*) &addr, &addrlen))
|
||||||
|
+ {
|
||||||
|
+ cupsdLogMessage(CUPSD_LOG_ERROR,
|
||||||
|
+ "systemd_checkin: Unable to get local address - %s",
|
||||||
|
+ strerror(errno));
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ httpAddrString (&addr, addrstr, sizeof (addrstr));
|
||||||
|
+ BrowseSocket = fd;
|
||||||
|
+ BrowseSocketIsSystemd = 1;
|
||||||
|
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
|
||||||
|
+ "systemd_checkin: Matched browse (port %d) with fd %d:%s...",
|
||||||
|
+ BrowsePort, fd, addrstr);
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ }
|
||||||
+ cupsdLogMessage(CUPSD_LOG_ERROR,
|
+ cupsdLogMessage(CUPSD_LOG_ERROR,
|
||||||
+ "systemd_checkin: Socket not of the right type");
|
+ "systemd_checkin: Socket not of the right type");
|
||||||
+ continue;
|
+ continue;
|
||||||
|
@ -325,7 +456,7 @@ diff -up cups-1.5.0/scheduler/main.c.systemd-socket cups-1.5.0/scheduler/main.c
|
||||||
+ continue;
|
+ continue;
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ /*
|
+ /*
|
||||||
+ * Try to match the systemd socket address to one of the listeners...
|
+ * Try to match the systemd socket address to one of the listeners...
|
||||||
+ */
|
+ */
|
||||||
+
|
+
|
||||||
|
@ -333,7 +464,7 @@ diff -up cups-1.5.0/scheduler/main.c.systemd-socket cups-1.5.0/scheduler/main.c
|
||||||
+ lis;
|
+ lis;
|
||||||
+ lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
|
+ lis = (cupsd_listener_t *)cupsArrayNext(Listeners))
|
||||||
+ if (httpAddrEqual(&lis->address, &addr))
|
+ if (httpAddrEqual(&lis->address, &addr))
|
||||||
+ break;
|
+ break;
|
||||||
+
|
+
|
||||||
+ if (lis)
|
+ if (lis)
|
||||||
+ {
|
+ {
|
||||||
|
@ -373,9 +504,9 @@ diff -up cups-1.5.0/scheduler/main.c.systemd-socket cups-1.5.0/scheduler/main.c
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 'parent_handler()' - Catch USR1/CHLD signals...
|
* 'parent_handler()' - Catch USR1/CHLD signals...
|
||||||
diff -up cups-1.5.0/scheduler/Makefile.systemd-socket cups-1.5.0/scheduler/Makefile
|
diff -up cups-1.5.2/scheduler/Makefile.systemd-socket cups-1.5.2/scheduler/Makefile
|
||||||
--- cups-1.5.0/scheduler/Makefile.systemd-socket 2011-10-18 15:32:40.817671022 +0100
|
--- cups-1.5.2/scheduler/Makefile.systemd-socket 2012-03-16 14:50:57.130449778 +0000
|
||||||
+++ cups-1.5.0/scheduler/Makefile 2011-10-18 15:32:40.852670360 +0100
|
+++ cups-1.5.2/scheduler/Makefile 2012-03-16 14:50:57.160449794 +0000
|
||||||
@@ -382,7 +382,7 @@ cupsd: $(CUPSDOBJS) $(LIBCUPSMIME) ../cu
|
@@ -382,7 +382,7 @@ cupsd: $(CUPSDOBJS) $(LIBCUPSMIME) ../cu
|
||||||
$(CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) -L. -lcupsmime \
|
$(CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) -L. -lcupsmime \
|
||||||
$(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
|
$(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
|
||||||
|
|
12
cups-translation.patch
Normal file
12
cups-translation.patch
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
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);
|
44
cups.spec
44
cups.spec
|
@ -13,12 +13,12 @@
|
||||||
|
|
||||||
Summary: Common Unix Printing System - Server package
|
Summary: Common Unix Printing System - Server package
|
||||||
Name: cups
|
Name: cups
|
||||||
Version: 1.5.0
|
Version: 1.5.2
|
||||||
Release: 2
|
Release: 1
|
||||||
License: GPLv2 and LGPLv2
|
License: GPLv2 and LGPLv2
|
||||||
Group: System/Printing
|
Group: System/Printing
|
||||||
Url: http://www.cups.org
|
Url: http://www.cups.org
|
||||||
Source0: ftp://ftp.easysw.com/pub/cups/%{version}/%{name}-%{version}-source.tar.bz2
|
Source0: ftp://ftp.easysw.com/pub/cups/%{version}/%{name}-%{version}-source.tar.bz2
|
||||||
|
|
||||||
# Small C program to get list of all installed PPD files
|
# Small C program to get list of all installed PPD files
|
||||||
Source1: poll_ppd_base.c
|
Source1: poll_ppd_base.c
|
||||||
|
@ -83,7 +83,7 @@ Patch1020: cups-filter-debug.patch
|
||||||
Patch1021: cups-uri-compat.patch
|
Patch1021: cups-uri-compat.patch
|
||||||
Patch1022: cups-cups-get-classes.patch
|
Patch1022: cups-cups-get-classes.patch
|
||||||
Patch1023: cups-str3382.patch
|
Patch1023: cups-str3382.patch
|
||||||
Patch1024: cups-str3947.patch
|
#NOT_IN_FEDPatch1024: cups-str3947.patch
|
||||||
#same as mdv patch cups-1.4-permissions.patch
|
#same as mdv patch cups-1.4-permissions.patch
|
||||||
#Patch1025: cups-0755.patch
|
#Patch1025: cups-0755.patch
|
||||||
Patch1026: cups-snmp-quirks.patch
|
Patch1026: cups-snmp-quirks.patch
|
||||||
|
@ -99,9 +99,13 @@ Patch1034: cups-avahi-5-services.patch
|
||||||
|
|
||||||
Patch1035: cups-icc.patch
|
Patch1035: cups-icc.patch
|
||||||
Patch1036: cups-systemd-socket.patch
|
Patch1036: cups-systemd-socket.patch
|
||||||
Patch1037: cups-CVE-2011-2896.patch
|
Patch1037: cups-str4014.patch
|
||||||
Patch1038: cups-str3921.patch
|
Patch1038: cups-polld-reconnect.patch
|
||||||
Patch1039: cups-ps-command-filter.patch
|
Patch1039: cups-translation.patch
|
||||||
|
Patch1040: cups-str3985.patch
|
||||||
|
Patch1041: cups-revision10277.patch
|
||||||
|
# selinux
|
||||||
|
#Patch1100: cups-lspp.patch
|
||||||
|
|
||||||
BuildRequires: htmldoc
|
BuildRequires: htmldoc
|
||||||
BuildRequires: php-cli
|
BuildRequires: php-cli
|
||||||
|
@ -109,7 +113,7 @@ BuildRequires: xdg-utils
|
||||||
Buildrequires: xinetd
|
Buildrequires: xinetd
|
||||||
BuildRequires: acl-devel
|
BuildRequires: acl-devel
|
||||||
BuildRequires: jpeg-devel
|
BuildRequires: jpeg-devel
|
||||||
BuildRequires: krb-devel
|
BuildRequires: krb5-devel
|
||||||
BuildRequires: libldap-devel
|
BuildRequires: libldap-devel
|
||||||
BuildRequires: openslp-devel
|
BuildRequires: openslp-devel
|
||||||
BuildRequires: pam-devel
|
BuildRequires: pam-devel
|
||||||
|
@ -117,10 +121,11 @@ BuildRequires: php-devel >= 5.1.0
|
||||||
BuildRequires: tiff-devel
|
BuildRequires: tiff-devel
|
||||||
BuildRequires: pkgconfig(avahi-compat-libdns_sd)
|
BuildRequires: pkgconfig(avahi-compat-libdns_sd)
|
||||||
BuildRequires: pkgconfig(dbus-1) >= 0.50
|
BuildRequires: pkgconfig(dbus-1) >= 0.50
|
||||||
BuildRequires: pkgconfig(gnutls)
|
BuildRequires: pkgconfig(gnutls) >= 3.0
|
||||||
BuildRequires: pkgconfig(libcrypto)
|
BuildRequires: pkgconfig(libcrypto)
|
||||||
BuildRequires: pkgconfig(libpng)
|
BuildRequires: pkgconfig(libpng)
|
||||||
BuildRequires: pkgconfig(libssl)
|
BuildRequires: pkgconfig(libssl)
|
||||||
|
BuildRequires: pkgconfig(libusb) < 1.0
|
||||||
BuildRequires: pkgconfig(libusb-1.0)
|
BuildRequires: pkgconfig(libusb-1.0)
|
||||||
BuildRequires: pkgconfig(zlib)
|
BuildRequires: pkgconfig(zlib)
|
||||||
%if !%{bootstrap}
|
%if !%{bootstrap}
|
||||||
|
@ -130,7 +135,6 @@ BuildRequires: systemd-units
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Requires: %{libname} >= %{version}-%{release}
|
|
||||||
Requires: %{name}-common >= %{version}-%{release}
|
Requires: %{name}-common >= %{version}-%{release}
|
||||||
Requires: net-tools
|
Requires: net-tools
|
||||||
%if !%{bootstrap}
|
%if !%{bootstrap}
|
||||||
|
@ -356,7 +360,6 @@ EOF
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
rm -rf %{buildroot}
|
|
||||||
# Debug mode
|
# Debug mode
|
||||||
%if %{debug}
|
%if %{debug}
|
||||||
export DONT_STRIP=1
|
export DONT_STRIP=1
|
||||||
|
@ -672,7 +675,7 @@ fi
|
||||||
%{_libdir}/cups
|
%{_libdir}/cups
|
||||||
%endif
|
%endif
|
||||||
%if %{_with_systemd}
|
%if %{_with_systemd}
|
||||||
/lib/systemd/system/cups.service
|
/lib/systemd/system/cups.*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%files common
|
%files common
|
||||||
|
@ -723,6 +726,21 @@ fi
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat May 12 2012 Matthew Dawkins <mattydaw@mandriva.org> 1.5.2-1
|
||||||
|
+ Revision: 798495
|
||||||
|
- new version 1.5.2
|
||||||
|
- sync'd patchset with fedora
|
||||||
|
|
||||||
|
* Mon Mar 19 2012 Bernhard Rosenkraenzer <bero@bero.eu> 1.5.0-4
|
||||||
|
+ Revision: 785746
|
||||||
|
- Build for gnutls 3.x
|
||||||
|
- Fix missing files when building with current systemd
|
||||||
|
- Fix BuildRequires: line, nothing provides krb-devel these days
|
||||||
|
|
||||||
|
* Wed Feb 01 2012 Bernhard Rosenkraenzer <bero@bero.eu> 1.5.0-3
|
||||||
|
+ Revision: 770462
|
||||||
|
- Adjust build requirements. cups needs libusb 0.x, not 1.x for now
|
||||||
|
|
||||||
* Thu Dec 22 2011 Oden Eriksson <oeriksson@mandriva.com> 1.5.0-2
|
* Thu Dec 22 2011 Oden Eriksson <oeriksson@mandriva.com> 1.5.0-2
|
||||||
+ Revision: 744391
|
+ Revision: 744391
|
||||||
- rebuilt against libtiff.so.5
|
- rebuilt against libtiff.so.5
|
||||||
|
|
Loading…
Add table
Reference in a new issue