summaryrefslogtreecommitdiffstats
path: root/src/H5Pocpl.c
diff options
context:
space:
mode:
authorBinh-Minh Ribler <bmribler@hdfgroup.org>2020-10-26 13:36:27 (GMT)
committerBinh-Minh Ribler <bmribler@hdfgroup.org>2020-10-26 13:36:27 (GMT)
commit7bfa10018ecf5efe54b4a699bb684d31468c8b42 (patch)
tree46ae17c8595a0f1ba500b48ec760eac0e6f78bb5 /src/H5Pocpl.c
parent58d8eae182ac764ef15c3ed040a12a96aa4d16f0 (diff)
downloadhdf5-7bfa10018ecf5efe54b4a699bb684d31468c8b42.zip
hdf5-7bfa10018ecf5efe54b4a699bb684d31468c8b42.tar.gz
hdf5-7bfa10018ecf5efe54b4a699bb684d31468c8b42.tar.bz2
Fix HDFFV-10590
Description This is to fix the CVE issue CVE-2018-17432. h5repack produced a segfault on a corrupted file. This fix modified the dataspace encode and decode functions per Quincey's suggestion to prevent the segfault. h5repack only failed for the corrupted file now. Platforms tested: Linux/64 (jelly)
Diffstat (limited to 'src/H5Pocpl.c')
-rw-r--r--src/H5Pocpl.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/H5Pocpl.c b/src/H5Pocpl.c
index bd6be75..b7312f2 100644
--- a/src/H5Pocpl.c
+++ b/src/H5Pocpl.c
@@ -807,7 +807,8 @@ H5Pget_filter2(hid_t plist_id, unsigned idx, unsigned int *flags /*out*/, size_t
H5Z_filter_t ret_value; /* return value */
FUNC_ENTER_API(H5Z_FILTER_ERROR)
- H5TRACE8("Zf", "iIux*zxzxx", plist_id, idx, flags, cd_nelmts, cd_values, namelen, name, filter_config);
+ H5TRACE8("Zf", "iIux*zxzxx", plist_id, idx, flags, cd_nelmts, cd_values,
+ namelen, name, filter_config);
/* Check args */
if (cd_nelmts || cd_values) {
@@ -937,7 +938,8 @@ H5Pget_filter_by_id2(hid_t plist_id, H5Z_filter_t id, unsigned int *flags /*out*
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_API(FAIL)
- H5TRACE8("e", "iZfx*zxzx*Iu", plist_id, id, flags, cd_nelmts, cd_values, namelen, name, filter_config);
+ H5TRACE8("e", "iZfx*zxzx*Iu", plist_id, id, flags, cd_nelmts, cd_values,
+ namelen, name, filter_config);
/* Check args */
if (cd_nelmts || cd_values) {
@@ -1755,7 +1757,8 @@ H5Pget_filter1(hid_t plist_id, unsigned idx, unsigned int *flags /*out*/, size_t
H5Z_filter_t ret_value; /* return value */
FUNC_ENTER_API(H5Z_FILTER_ERROR)
- H5TRACE7("Zf", "iIux*zxzx", plist_id, idx, flags, cd_nelmts, cd_values, namelen, name);
+ H5TRACE7("Zf", "iIux*zxzx", plist_id, idx, flags, cd_nelmts, cd_values, namelen,
+ name);
/* Check args */
if (cd_nelmts || cd_values) {
@@ -1835,7 +1838,8 @@ H5Pget_filter_by_id1(hid_t plist_id, H5Z_filter_t id, unsigned int *flags /*out*
herr_t ret_value = SUCCEED; /* Return value */
FUNC_ENTER_API(FAIL)
- H5TRACE7("e", "iZfx*zxzx", plist_id, id, flags, cd_nelmts, cd_values, namelen, name);
+ H5TRACE7("e", "iZfx*zxzx", plist_id, id, flags, cd_nelmts, cd_values, namelen,
+ name);
/* Check args */
if (cd_nelmts || cd_values) {