From 1e0306a7c9d0c52228e1544ff9251b3287f8e38e Mon Sep 17 00:00:00 2001 From: Neil Fortner Date: Sat, 24 Mar 2012 22:18:31 -0500 Subject: [svn-r22138] Add check for valid number of children in H5B_decode(). See HDFFV-5897. Tested: jam, durandal (too minor for full h5committest) --- src/H5Bcache.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/H5Bcache.c b/src/H5Bcache.c index c0fd121..68fb920 100644 --- a/src/H5Bcache.c +++ b/src/H5Bcache.c @@ -152,6 +152,10 @@ H5B_load(H5F_t *f, hid_t dxpl_id, haddr_t addr, void *_udata) /* entries used */ UINT16DECODE(p, bt->nchildren); + /* Check if bt->nchildren is greater than two_k */ + if(bt->nchildren > shared->two_k) + HGOTO_ERROR(H5E_BTREE, H5E_BADVALUE, NULL, "number of children is greater than maximum") + /* sibling pointers */ H5F_addr_decode(udata->f, (const uint8_t **)&p, &(bt->left)); H5F_addr_decode(udata->f, (const uint8_t **)&p, &(bt->right)); -- cgit v0.12