- 1.4.3.
- No longer need CVE-2009-3553, str3381, str3390, str3391, str3403,
str3407, str3413, str3418, str3422, str3425, str3428, str3431, str3435,
str3436, str3439, str3440, str3442, str3448, str3458, str3460,
cups-sidechannel-intrs, negative-snmp-string-length,
cups-media-empty-warning patches.
2010-03-31 13:10:46 +00:00
|
|
|
diff -up cups-1.4.3/scheduler/select.c.CVE-2010-0302 cups-1.4.3/scheduler/select.c
|
|
|
|
--- cups-1.4.3/scheduler/select.c.CVE-2010-0302 2010-01-14 23:40:19.000000000 +0100
|
|
|
|
+++ cups-1.4.3/scheduler/select.c 2010-03-31 13:54:30.000000000 +0200
|
2010-03-05 10:53:16 +00:00
|
|
|
@@ -454,7 +454,8 @@ cupsdDoSelect(long timeout) /* I - Time
|
|
|
|
if (fdptr->read_cb && event->filter == EVFILT_READ)
|
|
|
|
(*(fdptr->read_cb))(fdptr->data);
|
|
|
|
|
|
|
|
- if (fdptr->use > 1 && fdptr->write_cb && event->filter == EVFILT_WRITE)
|
|
|
|
+ if (fdptr->use > 1 && fdptr->write_cb && event->filter == EVFILT_WRITE &&
|
|
|
|
+ !cupsArrayFind(cupsd_inactive_fds, fdptr))
|
|
|
|
(*(fdptr->write_cb))(fdptr->data);
|
|
|
|
|
|
|
|
release_fd(fdptr);
|
- 1.4.3.
- No longer need CVE-2009-3553, str3381, str3390, str3391, str3403,
str3407, str3413, str3418, str3422, str3425, str3428, str3431, str3435,
str3436, str3439, str3440, str3442, str3448, str3458, str3460,
cups-sidechannel-intrs, negative-snmp-string-length,
cups-media-empty-warning patches.
2010-03-31 13:10:46 +00:00
|
|
|
@@ -500,7 +501,8 @@ cupsdDoSelect(long timeout) /* I - Time
|
2010-03-05 10:53:16 +00:00
|
|
|
(*(fdptr->read_cb))(fdptr->data);
|
|
|
|
|
- 1.4.3.
- No longer need CVE-2009-3553, str3381, str3390, str3391, str3403,
str3407, str3413, str3418, str3422, str3425, str3428, str3431, str3435,
str3436, str3439, str3440, str3442, str3448, str3458, str3460,
cups-sidechannel-intrs, negative-snmp-string-length,
cups-media-empty-warning patches.
2010-03-31 13:10:46 +00:00
|
|
|
if (fdptr->use > 1 && fdptr->write_cb &&
|
|
|
|
- (event->events & (EPOLLOUT | EPOLLERR | EPOLLHUP)))
|
2010-03-05 10:53:16 +00:00
|
|
|
+ (event->events & (EPOLLOUT | EPOLLERR | EPOLLHUP)) &&
|
|
|
|
+ !cupsArrayFind(cupsd_inactive_fds, fdptr))
|
|
|
|
(*(fdptr->write_cb))(fdptr->data);
|
|
|
|
|
|
|
|
release_fd(fdptr);
|