summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2010-04-29 11:34:59 +0000
committerSebastian Huber <sebastian.huber@embedded-brains.de>2010-04-29 11:34:59 +0000
commitb1d4e42eddcc60e671072d21942cc8a1f4619f25 (patch)
tree7859629568f0fe692ea7ea7391b7536a4d07c85a /cpukit
parent2010-04-29 Ralf Corsépius <ralf.corsepius@rtems.org> (diff)
downloadrtems-b1d4e42eddcc60e671072d21942cc8a1f4619f25.tar.bz2
2010-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de>
PR1507 * libblock/src/bdbuf.c: Avoid NULL pointer access. * libblock/src/diskdevs.c: Fixed bounds check in rtems_disk_next().
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/ChangeLog7
-rw-r--r--cpukit/libblock/src/bdbuf.c1
-rw-r--r--cpukit/libblock/src/diskdevs.c2
3 files changed, 9 insertions, 1 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog
index 93ef4a44b3..883833c166 100644
--- a/cpukit/ChangeLog
+++ b/cpukit/ChangeLog
@@ -1,3 +1,10 @@
+2010-04-29 Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+ PR1507
+ * libblock/src/bdbuf.c: Avoid NULL pointer access.
+
+ * libblock/src/diskdevs.c: Fixed bounds check in rtems_disk_next().
+
2010-04-29 Ralf Corsépius <ralf.corsepius@rtems.org>
* librpc/src/rpc/clnt_udp.c, librpc/src/xdr/xdr_mem.c:
diff --git a/cpukit/libblock/src/bdbuf.c b/cpukit/libblock/src/bdbuf.c
index e16c460250..3d3ecbee9e 100644
--- a/cpukit/libblock/src/bdbuf.c
+++ b/cpukit/libblock/src/bdbuf.c
@@ -2269,6 +2269,7 @@ rtems_bdbuf_swapout_write (rtems_bdbuf_swapout_transfer* transfer)
{
rtems_chain_node *node;
static rtems_disk_device null_disk = {
+ .phys_dev = &null_disk,
.capabilities = 0,
.ioctl = rtems_bdbuf_null_disk_ioctl
};
diff --git a/cpukit/libblock/src/diskdevs.c b/cpukit/libblock/src/diskdevs.c
index 24e01a8f80..74cc3e3b24 100644
--- a/cpukit/libblock/src/diskdevs.c
+++ b/cpukit/libblock/src/diskdevs.c
@@ -475,7 +475,7 @@ rtems_disk_next(dev_t dev)
dtab = disktab + major;
while (true)
{
- if ((dtab == NULL) || (minor > dtab->size))
+ if ((dtab == NULL) || (minor >= dtab->size))
{
major++; minor = 0;
if (major >= disktab_size)