diff options
author | Neil Fortner <nfortne2@hdfgroup.org> | 2016-07-11 18:19:35 (GMT) |
---|---|---|
committer | Neil Fortner <nfortne2@hdfgroup.org> | 2016-07-11 18:19:35 (GMT) |
commit | e1d50d498a0affbbd6e088b524fd495ea95dea88 (patch) | |
tree | e4397791c3dff3646a489accb3185c9473254e61 /src/H5Ocache.c | |
parent | 2bee235cf9a31fb12856eabfadd90a27eb2bb200 (diff) | |
download | hdf5-e1d50d498a0affbbd6e088b524fd495ea95dea88.zip hdf5-e1d50d498a0affbbd6e088b524fd495ea95dea88.tar.gz hdf5-e1d50d498a0affbbd6e088b524fd495ea95dea88.tar.bz2 |
[svn-r30166] Merge revision 30131 to 1.8 branch
Fix bug reported by Cisco Talos TALOS-CAN-0178. Added check for a message that
should not be sharable being marked as sharable on disk, returns failure in
this case. Needs testing.
Tested: ummon (trunk) h5committest (1.8)
Diffstat (limited to 'src/H5Ocache.c')
-rw-r--r-- | src/H5Ocache.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/H5Ocache.c b/src/H5Ocache.c index 9057223..2aaf933 100644 --- a/src/H5Ocache.c +++ b/src/H5Ocache.c @@ -1134,6 +1134,10 @@ H5O_chunk_deserialize(H5O_t *oh, haddr_t addr, size_t len, const uint8_t *image, HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, FAIL, "bad flag combination for message") if((flags & H5O_MSG_FLAG_WAS_UNKNOWN) && !(flags & H5O_MSG_FLAG_MARK_IF_UNKNOWN)) HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, FAIL, "bad flag combination for message") + if((flags & H5O_MSG_FLAG_SHAREABLE) + && H5O_msg_class_g[id] + && !(H5O_msg_class_g[id]->share_flags & H5O_SHARE_IS_SHARABLE)) + HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, FAIL, "message of unsharable class flagged as sharable") /* Reserved bytes/creation index */ if(oh->version == H5O_VERSION_1) |