- CVE-2007-4045 patch is not necessarily because cupsd_client_t objects are
not moved in array operations, only pointers to them.
This commit is contained in:
parent
b0dd15a49e
commit
3caba5fe91
@ -1,46 +0,0 @@
|
|||||||
diff -up cups-1.3.4/scheduler/client.c.CVE-2007-4045 cups-1.3.4/scheduler/client.c
|
|
||||||
--- cups-1.3.4/scheduler/client.c.CVE-2007-4045 2007-11-07 21:11:58.000000000 +0000
|
|
||||||
+++ cups-1.3.4/scheduler/client.c 2007-11-07 21:13:26.000000000 +0000
|
|
||||||
@@ -114,6 +114,25 @@ static int write_file(cupsd_client_t *c
|
|
||||||
static void write_pipe(cupsd_client_t *con);
|
|
||||||
|
|
||||||
|
|
||||||
+void
|
|
||||||
+_cupsdFixClientsBIO(void)
|
|
||||||
+{
|
|
||||||
+#ifdef HAVE_LIBSSL
|
|
||||||
+ cupsd_client_t *c;
|
|
||||||
+ BIO *bio;
|
|
||||||
+ cupsArraySave (Clients);
|
|
||||||
+ for (c = (cupsd_client_t *)cupsArrayFirst(Clients);
|
|
||||||
+ c;
|
|
||||||
+ c = (cupsd_client_t *)cupsArrayNext(Clients))
|
|
||||||
+ {
|
|
||||||
+ if (c->http.tls)
|
|
||||||
+ BIO_ctrl(SSL_get_wbio(c->http.tls), BIO_C_SET_FILE_PTR, 0, (char *)HTTP(c));
|
|
||||||
+ }
|
|
||||||
+ cupsArrayRestore (Clients);
|
|
||||||
+#endif
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+
|
|
||||||
/*
|
|
||||||
* 'cupsdAcceptClient()' - Accept a new client.
|
|
||||||
*/
|
|
||||||
@@ -451,6 +470,7 @@ cupsdAcceptClient(cupsd_listener_t *lis)
|
|
||||||
}
|
|
||||||
|
|
||||||
cupsArrayAdd(Clients, con);
|
|
||||||
+ _cupsdFixClientsBIO();
|
|
||||||
|
|
||||||
cupsdLogMessage(CUPSD_LOG_DEBUG2,
|
|
||||||
"cupsdAcceptClient: %d connected to server on %s:%d",
|
|
||||||
@@ -735,6 +755,7 @@ cupsdCloseClient(cupsd_client_t *con) /*
|
|
||||||
*/
|
|
||||||
|
|
||||||
cupsArrayRemove(Clients, con);
|
|
||||||
+ _cupsdFixClientsBIO();
|
|
||||||
|
|
||||||
free(con);
|
|
||||||
}
|
|
||||||
diff -up cups-1.3.4/scheduler/main.c.CVE-2007-4045 cups-1.3.4/scheduler/main.c
|
|
@ -45,7 +45,6 @@ Patch20: cups-getpass.patch
|
|||||||
Patch21: cups-driverd-timeout.patch
|
Patch21: cups-driverd-timeout.patch
|
||||||
Patch25: cups-usb-paperout.patch
|
Patch25: cups-usb-paperout.patch
|
||||||
Patch26: cups-CVE-2007-4352,5392,5393.patch
|
Patch26: cups-CVE-2007-4352,5392,5393.patch
|
||||||
Patch27: cups-CVE-2007-4045.patch
|
|
||||||
Patch100: cups-lspp.patch
|
Patch100: cups-lspp.patch
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
Url: http://www.cups.org/
|
Url: http://www.cups.org/
|
||||||
@ -157,7 +156,6 @@ lpd emulation.
|
|||||||
%patch21 -p1 -b .driverd-timeout
|
%patch21 -p1 -b .driverd-timeout
|
||||||
%patch25 -p1 -b .usb-paperout
|
%patch25 -p1 -b .usb-paperout
|
||||||
%patch26 -p1 -b .CVE-2007-4352,5392,5393
|
%patch26 -p1 -b .CVE-2007-4352,5392,5393
|
||||||
%patch27 -p1 -b .CVE-2007-4045
|
|
||||||
|
|
||||||
%if %lspp
|
%if %lspp
|
||||||
%patch100 -p1 -b .lspp
|
%patch100 -p1 -b .lspp
|
||||||
@ -449,6 +447,10 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{cups_serverbin}/daemon/cups-lpd
|
%{cups_serverbin}/daemon/cups-lpd
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Nov 30 2007 Tim Waugh <twaugh@redhat.com>
|
||||||
|
- CVE-2007-4045 patch is not necessarily because cupsd_client_t objects are
|
||||||
|
not moved in array operations, only pointers to them.
|
||||||
|
|
||||||
* Tue Nov 27 2007 Tim Waugh <twaugh@redhat.com>
|
* Tue Nov 27 2007 Tim Waugh <twaugh@redhat.com>
|
||||||
- Updated to improved dnssd backend from Till Kamppeter.
|
- Updated to improved dnssd backend from Till Kamppeter.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user