* commit '3768566139df18928aa29ece0eff3010b224633b':
Add release notes.
Correct hid_t error value to H5I_INVALID_HID in tests related to libver_bounds.
Fix for HDFFV-10808 H5Pset_file_space_strategy succeeds when using H5Pset_libver_bounds v18,v18. Fails file creation when non-default free-space info is set in fcpl and the library version high bound is less than v110 because free-space info message is introduced in library release v110.
Fails file creation when non-default free-space info is set in fcpl and the library version
high bound is less than v110 because free-space info message is introduced in library release v110.
* commit '35fd0ec8ceffe96cee352187154da15c967fb990':
Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
Fix fortran test and test library linking
Update GCC 6 & 7 flags for CMake builds
Move -Wnormalized down into GCC 6.x flags
Put the memcpy overlap check back into H5MM.
Fixed the heap overflow in t_filters_parallel
Fixed some low-hanging fruit from -fsanitize in t_filters_parallel.
Add lib dir for testing plugins
Add support for GCC 7.x warnings, update warnhist script to account for them, clean up warnings.
Add H5_HLDLL prefix for windows link
HDFFV-10805 cleanup examples and test code
Fix minor typo in H5S_select_iter_release
Add missing fortran mods
HDFFV-10805 Fix test of library libinfo
Cleanup possible CMake target conflicts
Correct CMake issues
* commit '2e973f7e12301975f9d8dfdd5534682525554e77':
Fix minor typo in H5S_select_iter_release
Fix memory leak in objcopy test after H5Aread of vlen data
* commit '6a1e9a1fbe9606d0dd3452092cab17794e131e64':
Fixed a problem in the ohdr test where hard-coded strings passed to H5Awrite() triggered -fsanitize failures.
* commit '712a2a13d8add828d053135a172abb2e819d59ad':
Fixed a warning in H5CX.c concerning incorrect use of freeing VOL connector info.
Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to share dataspace's selection with iterator (and with caution about not modifying or closing the dataspace while the iterator is open).
Fix misc. typos, etc. from code review
New hyperslab selection routines and new public selection iterator routines.
* commit 'dfdc27b04b2e8bcd1985ba90ce6553d8b3805fda':
Fix release notes based on feedback from pull request.
Fix for HDFFV-10800 H5Ocopy failure: The value for the H5F_LIBVER_V18 index in H5O_fill_ver_bounds[], the format version bounds array for fill value message, should be version 3 not 2.
* H5VLconnector.h for terminal connector things
* H5VLconnector_passthru.h for passthrough connector things
Note that these headers are arranged such that they are included in
hdf5.h so VOL connectors only need to include that. The separation into
multiple headers is mainly for readability.
* commit '08b009cc4ab2a8d8d289697d6d4688c0e5c53c6e':
Clean up if-else chain.
Remove thread-local copy of hyperslab operation generation value.
Core changes to selection code from the hyperslab_updates branch.
* commit 'e66bf948a7acba0ddc76239f6d02f17c8b10eb0f':
Fix for split VFD and file cleanup when testing H5Fis_hdf5 and H5Fis_accessible in tfile.c.
Improvements to the H5Fis_accessible() and H5Fis_hdf5() tests in tfile.c. * General code tidying. * Expanded tests to work with multi-file VFDs.
* commit '62198c2436ac3787afb49fa990d1ba8204264dba':
Add an 'unwrap' VOL callback, so that connectors can unwrap an underlying object without closing it. (Especially needed for pass-through connectors)
* commit '53a5c3be903ce7c24d02a6bd3a8d9b07a3f82404':
Change the checking to H5I_INVALID_HID in test_attr_dense_rename().
Fix for HDFFV-10579 H5Arename fails when creation order of attributes is tracked. The attribute needs to be removed from the creation order index v2 B-tree before re-inserting the renamed attribute via H5A__dense_insert().
* commit 'b5ef82a1786605ae86502bc82086047720b7d4ca': (21 commits)
Moving the handling of null prefix into H5_combine_path.
Changing the prefix of external file and VDS from empty string to null for performance improvement.
Improving the condition checking of empty string.
Replacing string operation strdup with assignment for empty string.
Adding back links_env.out which I accidentally removed in my previous commit.
Taking out two unnecessary diff output files.
Taking out unnecessary diff files for output.
Adding some comments.
Some coding style changes.
Adding the standard output files for the external_env.c and vds_env.c tests.
Small correction for my previous commit.
Forgot to add external_common.c and external_common.h.
Updated CMake for the splitting of external.c and vds.c.
Minor fix: removal of unnecessary enum values.
Minor fixes: updating the test vds_env.c according to the set up of vds.c.
Left out this file in previous commit.
HDFFV-10658 - setting and getting properties in API context: 1. switched to use the existing H5F_prefix_open_t for enum type; 2. put the common private function used by external.c and external_env.c into external_common.c
This commit basically has the following changes: 1. restored the datatype, dataspace, and LCPL of the dataset for VOL connector back to the properties. 2. splitted external.c and vds.c because they called HDsetenv in the program, instead using shell scripts to set the environment variables. 3. changed H5CX_get_vds_prefix and H5CX_get_ext_file_prefix to use H5P_peek instead of H5P_get.
HDFFV-10658: I left out this file in my previous commit.
HDFFV-10658: 1. moving HDgetenv to dataset initialization stage to reduce the overhead; 2. restoring the retrieval of three vol properties to H5P_get instead of using API context to prepare for Quincey's upcoming refactoring work.
...
* commit '9ee3d472113fc3e66ef34e40a0990ed07a2824bc':
Renamed the HDF5_TEST_VOL option to HDF5_TEST_PASSTHROUGH_VOL.
Renamed the autotools check-vol target to check-passthrough-vol.
1. switched to use the existing H5F_prefix_open_t for enum type;
2. put the common private function used by external.c and external_env.c into external_common.c
1. restored the datatype, dataspace, and LCPL of the dataset for VOL connector back to the properties.
2. splitted external.c and vds.c because they called HDsetenv in the program, instead using shell scripts to set the environment variables.
3. changed H5CX_get_vds_prefix and H5CX_get_ext_file_prefix to use H5P_peek instead of H5P_get.
* commit 'fe104cc38ffbdb39d3e04da107d86ebfc7e8b622':
Test improvement Description Moved the new tests to a more appropriate test function. Platforms tested: Linux/64 (jelly)
Fixed HDFFV-10210 and HDFFV-10587 Description: - Added parameter validation (HDFFV-10210) - Added detection of division by zero (HDFFV-10587 - CVE-2018-17438) - Fixed typos in various tests Platforms tested: Linux/64 (jelly) Linux/64 (platypus) Darwin (osx1011test)
Description:
- Added parameter validation (HDFFV-10210)
- Added detection of division by zero (HDFFV-10587 - CVE-2018-17438)
- Fixed typos in various tests
Platforms tested:
Linux/64 (jelly)
Linux/64 (platypus)
Darwin (osx1011test)
This implicitly adds support for changing the VOL connector for command-line
tools or any application linked with the library.
Also, add 'make check-vol' support for all directories, clearing up necessary
issues in testing scripts, etc.
* commit '5ad3891d9b861593ebe25d540bed2d913eb83aba':
Remove ' ' (typo).
Code improvement
Removed an extra "using" statement
Adding documentation
More changes to align with incoming selection improvements.
Added C++ wrapper for H5Ovisit2
Adding a C++ wrapper
HDFFV-10586 and HDFFV-10588
* commit '25cd1ab02b9ddaf58a4f5422f4ab4fde411e050a':
Added test for HDFFV-10588
Fixed HDFFV-10684
Fixed HDFFV-10586 and HDFFV-10588 Description: HDFFV-10586 CVE-2018-17434 Divide by zero inh5repack_filters Added a check for zero value HDFFV-10588 CVE-2018-17437 Memory leak in H5O_dtype_decode_helper This is actually an Invalid read issue. It was found that the attribute name length in an attribute message was corrupted, which caused the buffer pointer to be advanced too far and later caused an invalid read. Added a check to detect attribute name and its length mismatch. The fix is not perfect, but it'll reduce the chance of this issue when a name length is corrupted or the attribute name is corrupted. Platforms tested: Linux/64 (jelly) Linux/64 (platypus) Darwin (osx1010test)
* commit 'b02de315b93ac29d2483a91d526b110a25073505':
NNSA Tri-LabsTRILAB-98: Another two test cases out.
NNSA Tri-Labs TRILAB-98: Taking out a few more test cases.
NNSA Tri-Labs TRILAB-98 dt_arith and cpp_testhdf5 tests fail on sierra.llnl.gov: According to the group decision, simply provide a macro to disable some failing test cases on sierra (IBM power9 cpu). All failing cases involve long double data type.
the message type until we've verified we understand the message type.
Reduce size of H5O_msg_class_g to *not* include space for
H5O_BOGUS_INVALID. Make bogus messages shareable. Add new bogus
message test with shareable messages to cover the formerly problematic
code. Re-run gen_bogus.c to add this test case and also to fix the
bogus_invalid messages that were no longer H5O_BOGUS_INVLAID due to a
new message class being added in a previous commit. Added comment to
remind developers to run gen_bogus.c when adding a new message class.
src/H5VLpassthru.c, switched to stashing VOL connector ID & info in
API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and
src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work
with 'check-vfd' (and 'check-vol' again).
* commit 'd6c2a96ac2f103d90b96d5b39814810e6a31ef99':
Updated the parallel install docs.
Eliminated the need for a separate script variable.
Added a helpful message to the flush script.
Added a shell script so we can run the parallel flush test on OpenMPI.
* commit '3ca19cca5395d79be69209f8d7d0a2b06834a648':
Flipped swapped testing strings.
Added test_vol_plugin.sh to the list of scripts to clean
Fixed a CMake build issue (CMake still doesn't run the VOL plugin tests)
Added more sub-tests to the VOL plugin test.
Added a simple test for registration of VOL connector plugins. Autotools only for right now, but this will be fleshed out in future work.
after deleting attributes in densed storage.
The fix: When deleting attribute nodes from the name index v2 B-tree,
if an attribute is found in the intermediate B-tree nodes, which may be
merged/redistributed in the process, we need to free the dynamically
allocated spaces for the intermediate decoded attribute.