OBS User unknown 2007-02-15 17:03:34 +00:00 committed by Git OBS Bridge
parent 8c6878a6ae
commit 57707c0dda
12 changed files with 212 additions and 52 deletions

View File

@ -0,0 +1,11 @@
--- cups-1.2.7/scheduler/conf.c.orig 2007-02-13 18:27:44.000000000 +0100
+++ cups-1.2.7/scheduler/conf.c 2007-02-13 18:47:27.000000000 +0100
@@ -1995,6 +1995,8 @@
protocols |= BROWSE_DNSSD;
else if (!strcasecmp(valstart, "all"))
protocols |= BROWSE_ALL;
+ else if (!strcasecmp(valstart, "none"))
+ return (-1);
else
return (-1);

11
cups-1.2.7-browsing.patch Normal file
View File

@ -0,0 +1,11 @@
--- cups-1.2.7/scheduler/dirsvc.c.orig 2006-11-14 17:35:27.000000000 +0100
+++ cups-1.2.7/scheduler/dirsvc.c 2007-02-13 18:22:01.000000000 +0100
@@ -163,7 +163,7 @@ cupsdLoadRemoteCache(void)
* Don't load the cache if the CUPS remote protocol is disabled...
*/
- if (!(BrowseRemoteProtocols & BROWSE_CUPS))
+ if (!Browsing || !(BrowseRemoteProtocols & BROWSE_CUPS))
{
cupsdLogMessage(CUPSD_LOG_DEBUG,
"cupsdLoadRemoteCache: Not loading remote cache.");

View File

@ -0,0 +1,14 @@
--- cups-1.2.7/cups/ipp.c.orig 2006-06-02 17:15:23.000000000 +0200
+++ cups-1.2.7/cups/ipp.c 2007-02-13 18:34:13.000000000 +0100
@@ -1098,8 +1098,10 @@
break;
case IPP_ATTRIBUTE :
- while ((*cb)(src, buffer, 1) > 0)
+ for (;;)
{
+ if((*cb)(src, buffer, 1) < 1)
+ return (IPP_ERROR);
DEBUG_printf(("ippReadIO: ipp->current=%p, ipp->prev=%p\n",
ipp->current, ipp->prev));

View File

@ -0,0 +1,27 @@
--- cups-1.2.7/filter/interpret.c.orig 2006-09-05 22:45:47.000000000 +0200
+++ cups-1.2.7/filter/interpret.c 2007-02-13 18:17:52.000000000 +0100
@@ -570,21 +570,21 @@ exec_code(
h->cupsBorderlessScalingFactor = atof(value);
else if (!strncmp(name, "cupsInteger", 11) && type == CUPS_TYPE_NUMBER)
{
- if ((i = atoi(name + 11)) >= 0 || i > 15)
+ if ((i = atoi(name + 11)) < 0 || i > 15)
return (-1);
h->cupsInteger[i] = atoi(value);
}
else if (!strncmp(name, "cupsReal", 8) && type == CUPS_TYPE_NUMBER)
{
- if ((i = atoi(name + 8)) >= 0 || i > 15)
+ if ((i = atoi(name + 8)) < 0 || i > 15)
return (-1);
h->cupsReal[i] = atof(value);
}
else if (!strncmp(name, "cupsString", 10) && type == CUPS_TYPE_STRING)
{
- if ((i = atoi(name + 10)) >= 0 || i > 15)
+ if ((i = atoi(name + 10)) < 0 || i > 15)
return (-1);
if (sscanf(value, "(%63[^)])", h->cupsString[i]) != 1)

View File

@ -0,0 +1,20 @@
--- cups-1.2.7/scheduler/conf.c.orig 2007-02-13 17:56:55.000000000 +0100
+++ cups-1.2.7/scheduler/conf.c 2007-02-13 18:27:44.000000000 +0100
@@ -1321,7 +1321,7 @@
* Get the address...
*/
- ip[0] = ip[1] = ip[2] = ip[2] = 0x00000000;
+ ip[0] = ip[1] = ip[2] = ip[3] = 0x00000000;
mask[0] = mask[1] = mask[2] = mask[3] = 0xffffffff;
if ((maskval = strchr(value, '/')) != NULL)
@@ -1506,7 +1506,7 @@
cupsdLogMessage(CUPSD_LOG_DEBUG2,
"get_addr_and_mask(value=\"%s\", "
- "ip=[%08x:%08x:%08x:%08x], mask=[%08x:%08x:%08x:%08x]",
+ "ip=[%08x:%08x:%08x:%08x], mask=[%08x:%08x:%08x:%08x])",
value, ip[0], ip[1], ip[2], ip[3], mask[0], mask[1], mask[2],
mask[3]);

54
cups-1.2.7-libwrap.patch Normal file
View File

@ -0,0 +1,54 @@
*** cups-1.2.7/scheduler/Makefile.orig Mon Sep 11 20:30:09 2006
--- cups-1.2.7/scheduler/Makefile Tue Feb 13 17:56:10 2007
*************** TARGETS = \
*** 77,82 ****
--- 77,83 ----
testspeed \
testsub
+ CUPSDLIBS += -lwrap
#
# Make everything...
--- cups-1.2.7/scheduler/client.c.orig 2006-11-15 21:28:39.000000000 +0100
+++ cups-1.2.7/scheduler/client.c 2007-02-13 19:10:38.000000000 +0100
@@ -65,6 +65,11 @@
# include <gnutls/x509.h>
#endif /* HAVE_GNUTLS */
+#include <tcpd.h>
+#include <syslog.h>
+int allow_severity = LOG_INFO;
+int deny_severity = LOG_WARNING;
+
/*
* Local functions...
@@ -180,6 +185,27 @@ cupsdAcceptClient(cupsd_listener_t *lis)
con->http.hostaddr->ipv4.sin_port = lis->address.ipv4.sin_port;
/*
+ * libwrap/tcp_wrappers:
+ * draht@suse.de, Tue Jan 29 2002
+ * kssingvo@suse.de, Thu Feb 01 2007
+ */
+
+ if (lis->address.addr.sa_family == AF_INET || lis->address.addr.sa_family == AF_INET6) {
+ struct request_info wrap_req;
+
+ request_init(&wrap_req, RQ_DAEMON, "cupsd" , RQ_FILE, con->http.fd, NULL);
+ fromhost(&wrap_req);
+ if (!hosts_access(&wrap_req)) { /* we do not accept the connection: */
+ cupsdLogMessage(CUPSD_LOG_WARN,
+ "tcp_wrappers refused connection from %s, ip=%s. See /etc/hosts.allow and /etc/hosts.deny.",
+ eval_client(&wrap_req), eval_hostaddr(wrap_req.client));
+ close(con->http.fd);
+ free(con);
+ return;
+ }
+ }
+
+ /*
* Check the number of clients on the same address...
*/

11
cups-1.2.7-next_day.patch Normal file
View File

@ -0,0 +1,11 @@
--- cups-1.2.7/scheduler/job.c.orig 2006-10-23 02:26:52.000000000 +0200
+++ cups-1.2.7/scheduler/job.c 2007-02-13 18:29:44.000000000 +0100
@@ -1497,7 +1497,7 @@
*/
if (job->hold_until < curtime)
- job->hold_until += 24 * 60 * 60 * 60;
+ job->hold_until += 24 * 60 * 60;
}
cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdSetJobHoldUntil: hold_until = %d",

View File

@ -0,0 +1,21 @@
--- cups-1.2.7/scheduler/job.c.orig 2007-02-13 18:55:40.000000000 +0100
+++ cups-1.2.7/scheduler/job.c 2007-02-13 18:56:16.000000000 +0100
@@ -373,13 +373,11 @@
pclass = printer;
- if (!(pclass->type & CUPS_PRINTER_REMOTE))
- {
- if (pclass->state != IPP_PRINTER_STOPPED)
- printer = cupsdFindAvailablePrinter(job->dest);
- else
- printer = NULL;
- }
+ if (!(pclass->type & CUPS_PRINTER_REMOTE) &&
+ pclass->state != IPP_PRINTER_STOPPED)
+ printer = cupsdFindAvailablePrinter(job->dest);
+ else
+ printer = NULL;
}
if (!printer && !pclass)

View File

@ -0,0 +1,13 @@
--- cups-1.2.7/scheduler/ipp.c.orig 2006-10-20 22:35:41.000000000 +0200
+++ cups-1.2.7/scheduler/ipp.c 2007-02-13 18:25:21.000000000 +0100
@@ -5372,7 +5372,10 @@
return;
}
else
+ {
+ dtype &= CUPS_PRINTER_CLASS;
dmask = CUPS_PRINTER_CLASS;
+ }
/*
* Check policy...

View File

@ -1,50 +0,0 @@
--- cups-1.2rc3/scheduler/Makefile.orig 2006-03-05 17:48:12.000000000 +0100
+++ cups-1.2rc3/scheduler/Makefile 2006-04-26 16:52:06.000000000 +0200
@@ -73,6 +73,7 @@
testmime \
testspeed
+CUPSDLIBS += -lwrap
#
# Make everything...
--- cups-1.2rc3/scheduler/client.c.orig 2006-04-17 23:24:17.000000000 +0200
+++ cups-1.2rc3/scheduler/client.c 2006-04-26 16:34:40.000000000 +0200
@@ -59,6 +59,11 @@
# include <gnutls/x509.h>
#endif /* HAVE_GNUTLS */
+#include <tcpd.h>
+#include <syslog.h>
+int allow_severity = LOG_INFO;
+int deny_severity = LOG_WARNING;
+
/*
* Local functions...
@@ -149,6 +154,25 @@
return;
}
+ /*
+ * libwrap/tcp_wrappers:
+ * draht@suse.de, Tue Jan 29 2002
+ */
+
+ {
+ struct request_info wrap_req;
+
+ request_init(&wrap_req, RQ_DAEMON, "cupsd" , RQ_FILE, con->http.fd, NULL);
+ fromhost(&wrap_req);
+ if (!hosts_access(&wrap_req)) { /* we do not accept the connection: */
+ cupsdLogMessage(CUPSD_LOG_WARN,
+ "tcp_wrappers refused connection from %s. See /etc/hosts.allow and /etc/hosts.deny.",
+ eval_client(&wrap_req));
+ close(con->http.fd);
+ return;
+ }
+ }
+
#ifdef AF_INET6
if (lis->address.addr.sa_family == AF_INET6)
{

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Tue Feb 13 19:16:38 CET 2007 - kssingvo@suse.de
- fixed tcp_wrapper warnings (bugzilla#230730)
- fixed ps interpretation (bugzilla#242042)
- backported fixes from various issues, only in svn avail atm
-------------------------------------------------------------------
Mon Jan 22 19:32:26 CET 2007 - kssingvo@suse.de

View File

@ -17,7 +17,7 @@ License: GNU General Public License (GPL)
Group: Hardware/Printing
Summary: The Common UNIX Printing System
Version: 1.2.7
Release: 14
Release: 17
Requires: cups-libs = %{version}, cups-client = %{version}
Requires: ghostscript_any, ghostscript-fonts-std, foomatic-filters
Requires: util-linux, /usr/bin/ionice
@ -40,7 +40,7 @@ Source17: rccupsrenice
Patch1: cups-1.2rc3-mime.patch
Patch2: cups-1.2.0-ppdsdat_generation.patch
Patch3: cups-1.2rc1-template.patch
Patch4: cups-1.2rc3-libwrap.patch
Patch4: cups-1.2.7-libwrap.patch
Patch5: cups-pam.diff
Patch6: cups-1.2b2-access_conf.patch
Patch9: cups-1.1.21rc2-preauth_security.patch
@ -52,6 +52,14 @@ Patch15: cups-1.2.2-testppd_filename.patch
Patch16: cups-1.2.5-desktop_file.patch
Patch17: cups-1.2.6-lppasswd_permission.patch
Patch18: cups-1.2.6-xpdf_CVE_2007_0104.patch
Patch19: cups-1.2.7-filter_array.patch
Patch20: cups-1.2.7-browsing.patch
Patch21: cups-1.2.7-remote_job.patch
Patch22: cups-1.2.7-ipv6_parse.patch
Patch23: cups-1.2.7-next_day.patch
Patch24: cups-1.2.7-busy_loop_client.patch
Patch25: cups-1.2.7-browseprotocol_none.patch
Patch26: cups-1.2.7-remote_class.patch
Patch100: cups-1.1.23-testpage.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %suse_version >= 801
@ -144,6 +152,15 @@ Authors:
%patch15 -p1
%patch16 -p1
%patch17 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
%patch25 -p1
%patch26 -p1
if [ -f /.buildenv ]; then
. /.buildenv
else
@ -372,6 +389,10 @@ rm -rf $RPM_BUILD_ROOT/%{_mandir}/cat?
%{_datadir}/locale/*/cups_*
%changelog -n cups
* Tue Feb 13 2007 - kssingvo@suse.de
- fixed tcp_wrapper warnings (bugzilla#230730)
- fixed ps interpretation (bugzilla#242042)
- backported fixes from various issues, only in svn avail atm
* Mon Jan 22 2007 - kssingvo@suse.de
- enabled LDAP on request (bugzilla#223007), no build cycle present
* Tue Jan 16 2007 - kssingvo@suse.de