summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix new codespell issues (#2521) (#2533)Larry Knox2023-03-103-3/+3
| | | | | | | * Fix new codespell issues * Have codespell ignore ./config/sanitizer/sanitizers.cmake Co-authored-by: Mark Kittisopikul <mkitti@users.noreply.github.com>
* 1.14 Merge doxygen plist tables changes #2470 from develop (#2503)Allen Byrne2023-03-017-20/+22
| | | | | * Merge doxygen plist tables changes from develop * Doxy corrections
* Fix issue with collective metadata writes of global heap data (#2480) (#2486)jhendersonHDF2023-02-211-0/+8
|
* 1.14 Merge Correct pkgconfig variables and libraries #2259 (#2477)Allen Byrne2023-02-171-4/+14
| | | | | | | * Merge Correct pkgconfig variables and libraries #290 * Fix typo * Fix spacing
* 1.14 Correct VERS compatible (#2460)Allen Byrne2023-02-171-2/+2
| | | | | | | | | * Correct VERS compatible * Remove FAIL check in CMake test * Remove unnecessary value in vers array * revert empty list
* Adds RELEASE.txt notes and updates Doxygen (#2377) (#2378)Dana Robinson2022-12-292-8/+10
|
* Adds Doxygen markup for H5FDdriver_query() (#2375)Dana Robinson2022-12-282-4/+23
|
* Brings Doxygen changes from develop (#2366)Dana Robinson2022-12-2710-51/+104
|
* Brings HL GIF tools configure changes from develop (#2361)Dana Robinson2022-12-241-0/+1
|
* Adds Doxygen VOL flag markup (#2340) (#2341)Dana Robinson2022-12-211-55/+63
| | | | | | | | | | | | | * Initial doxygen markup * Committing clang-format changes * Adds Doxygen comments to VOL flags * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Onion VFD header cleanup (#2337) (#2338)Dana Robinson2022-12-213-112/+85
| | | | | | | | | | | * Partial work towards cleaning up the onion VFD code * Committing clang-format changes * A few minor tweaks to the onion VFD public header Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* 1.14 Fix some doxygen warnings (#2323)Allen Byrne2022-12-215-6/+6
| | | | | | | | | | | | | | | * Fix some doxygen warnings * Remove javadocs * Fix spelling * Fix section format * Correct doxygen function name * Remove duplicate Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
* Brings the following changesets over from develop: (#2328)Dana Robinson2022-12-218-44/+57
| | | | | | | | | | | | b9244a85d9f1cc5e9bbec61ca73c0cbd9c4cf249 Align arg types of H5D_chunk_iter_op_t with H5Dget_chunk_info (#2074) 70cf2c390bc2eef8e57f8fa023341011e2d02d9d Removed idioms and misc. text clean-up (#2320) 8102fa8c972bdc0d8fd8f3dae604e070893150d6 Only document Fortran functions (#2319) 784061b15e176b9919c19a220ce278a9f4cddf0e moved onion VFD to FAPL group (#2321) 6b6bcdead66f0456ac0528683faac6a8e48b6565 Hdffv 11052 (#2315) 10c693a04ff0c4a5219879d7f8900157dcbece66 Update hdf5_header.html 0cb58080875070db09b5ecae92482519d58872bc Hdffv 11052 (#2303) a1c81eda203addced514ef655f7a9079f3f0bb04 added doc. warning for H5Literate_async return value (#2295) 502b32b0f22a4bcf6333c85c256db34162c2764a Updated H5ES documenation (#2293) a9036005c3916e6fda0296026323f00d043300f8 Fix for HDFFV-11052: h5debug fails on a corrupted file (h5_nrefs_POC)… (#2291)
* Adds 'unused' hints for MDS io_info parameters (#2301) (#2306)Dana Robinson2022-12-163-18/+17
| | | | | | | | | | | | | | | | | * Adds 'unused' hints for MDS io_info parameters * Committing clang-format changes * Fix issue with formatter * Committing clang-format changes * Final fix for formatter * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Update versions for hdf5_1_14 develop branch after creation of (#2294)Larry Knox2022-12-131-3/+3
| | | hdf5_1-14_0 branch for 1.14.0 release.
* added doc. warning for H5Oflush in parallel (#2289)Scot Breitenfeld2022-12-101-0/+3
|
* Check for size==0 for all datatypes read from disk, not just compound (#2287)Neil Fortner2022-12-081-9/+5
| | | members
* Compound datatypes may not have members of size 0 (#2243)Egbert Eich2022-12-071-55/+100
| | | | | | | | | | | | | | | | | | | | | | * Compound datatypes may not have members of size 0 A member size of 0 may lead to an FPE later on as reported in CVE-2021-46244. To avoid this, check for this as soon as the member is decoded. This should probably be done in H5O_dtype_decode_helper() already, however it is not clear whether all sizes are expected to be != 0. This fixes CVE-2021-46244 / Bug #2242. Signed-off-by: Egbert Eich <eich@suse.com> * Rework error recovery code in H5O__dtype_decode_helper() and H5O__dtype_decode(). * Format changes for src/H5Odtype.c. Signed-off-by: Egbert Eich <eich@suse.com> Co-authored-by: Neil Fortner <nfortne2@hdfgroup.org> Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
* Fixes warnings in H5Opline.c error messages (#2281)Dana Robinson2022-12-061-3/+5
| | | | | | | * Fixes warnings in H5Opline.c error messages * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* H5E_ERR_CLS_g symbol missing when compiling C++ plugins (#2269)V. Armando Solé2022-12-061-0/+7
| | | | C++ HDF5 filter plugin SZ3 fails to build under windows with failure at linking time unless that extern "C" block is added.
* return error message related to calling API (#2276)Scot Breitenfeld2022-12-021-2/+2
|
* CVE 2021 46242 develop (#2255)Egbert Eich2022-12-021-2/+6
| | | | | | | | | | | | | | | | | | | | | | * When evicting driver info block, NULL the corresponding entry Since H5C_expunge_entry() called (from H5AC_expunge_entry()) sets the flag H5C__FLUSH_INVALIDATE_FLAG, the driver info block will be freed. NULLing the pointer in f->shared->drvinfo will prevent use-after-free when it is used in other functions (like H5F__dest()) - as other places will check whether the pointer is initialized before using its value. This fixes CVE-2021-46242 / Bug #2254 Signed-off-by: Egbert Eich <eich@suse.com> * When evicting the superblock, NULL the corresponding entry The call to H5AC_expunge_entry() will free the corresonding structure, to avoid a use-after-free, the corrsponding pointer entry will be NULLed. Signed-off-by: Egbert Eich <eich@suse.com> Signed-off-by: Egbert Eich <eich@suse.com>
* Report error if dimensions of chunked storage in data layout < 2 (#2241)Egbert Eich2022-12-021-0/+4
| | | | | | | | | | | | | | | | For Data Layout Messages version 1 & 2 the specification state that the value stored in the data field is 1 greater than the number of dimensions in the dataspace. For version 3 this is not explicitly stated but the implementation suggests it to be the case. Thus the set value needs to be at least 2. For dimensionality < 2 an out-of-bounds access occurs as in CVE-2021-45833. This fixes CVE-2021-45833 / Bug #2240. Signed-off-by: Egbert Eich <eich@suse.com> Signed-off-by: Egbert Eich <eich@suse.com> Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
* Bug Fix: Segfault in H5CX_get_vol_wrap_ctx when H5VLwrap_register is called ↵raylu-hdf2022-11-172-2/+35
| | | | | | | | | | | | | | | | from an application (#2248) * Jira HDFFV-10881: Segfault in H5CX_get_vol_wrap_ctx when H5VLwrap_register is called from an application. A quick and simple fix to make it fail with a relevant error message. * Format changes. * Committing clang-format changes * Minor change: split one condition check into two for clarity. * Adding doxygen comment for H5VLwrap_register. * Minor change: adding a little more detail to the Doxygen comment for H5VLwrap_register.
* H5O_dtype_decode_helper: Parent of enum needs to have same size as enum ↵Egbert Eich2022-11-111-0/+2
| | | | | | | | | | | | | | itself (#2237) The size of the enumeration values is determined by the size of the parent. Functions accessing the enumeration values use the size of the enumeration to determine the size of each element and how much data to copy. Thus the size of the enumeration and its parent need to match. Check here to avoid unpleasant surprises later. This fixes CVE-2018-14031 / Bug #2236. Signed-off-by: Egbert Eich <eich@suse.com>
* Make sure info block for external links has at least 3 bytes (#2234)Egbert Eich2022-11-111-0/+2
| | | | | | | | | | | | According to the specification, the information block for external links contains 1 byte of version/flag information and two 0 terminated strings for the object linked to and the full path. Although not very useful, the minimum string length for each (with terminating 0) would be one byte. Checking this will help to avoid SEGVs triggered by bogus files. This fixes CVE-2018-16438 / Bug #2233. Signed-off-by: Egbert Eich <eich@suse.com>
* Validate location (offset) of the accumulated metadata when comparing (#2231)Egbert Eich2022-11-111-7/+9
| | | | | | | | | | | | | | | Initially, the accumulated metadata location is initialized to HADDR_UNDEF - the highest available address. Bogus input files may provide a location or size matching this value. Comparing this address against such bogus values may provide false positives. This make sure, the value has been initilized or fail the comparison early and let other parts of the code deal with the bogus address/size. Note: To avoid unnecessary checks, we have assumed that if the 'dirty' member in the same structure is true the location is valid. This fixes CVE-2018-13867 / Bug #2230. Signed-off-by: Egbert Eich <eich@suse.com>
* Make H5O__fsinfo_decode() more resilient to out-of-bound reads. (#2229)Egbert Eich2022-11-111-3/+13
| | | | | | | | | | | | | | | | When decoding a file space info message in H5O__fsinfo_decode() make sure each element to be decoded is still within the message. Malformed hdf5 files may have trunkated content which does not match the expected size. Checking this will prevent attempting to decode unrelated data and heap overflows. So far, only free space manager address data was checked before decoding. This fixes CVE-2021-45830 / Bug #2228. Signed-off-by: Egbert Eich <eich@suse.com> Additions Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
* Removes MPE instrumentation support. (#2245)Dana Robinson2022-11-093-114/+4
| | | | | | | | | | | * Removes MPE instrumentation support. The Autotools will no longer accept --with-mpe= and the logging commands have been removed from the FUNC_ENTER macros. CMake has never supported instrumenting for MPE. * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* H5O__pline_decode() Make more resilient to out-of-bounds read (#2210)Egbert Eich2022-11-092-2/+18
| | | | | | | | | | | | | Malformed hdf5 files may have trunkated content which does not match the expected size. When this function attempts to decode these it may read past the end of the allocated space leading to heap overflows as bounds checking is incomplete. Make sure each element is within bounds before reading. This fixes CVE-2019-8396 / HDFFV-10712 / github bug #2209. Signed-off-by: Egbert Eich <eich@suse.com> Signed-off-by: Egbert Eich <eich@suse.com>
* Removes dmalloc support (#2239)Dana Robinson2022-11-092-8/+0
| | | | | | | | | | This has not been used to debug the library in a very long time. Most developers use valgrind, -fsanitize=address, or some other memory checker instead of this library. This removes: * dmalloc.h include from H5private.h * --with-dmalloc= Autotools configure option * HDF5_ENABLE_USING_DMALLOC CMake option
* Removes the memory allocation sanity checks feature (#2218)Dana Robinson2022-11-038-534/+22
| | | | | | | | | | | | | | | * Removes the memory allocation sanity checks feature * Committing clang-format changes * Removes zero size checks for H5MM_(c|m)alloc() * Explicitly return NULL when size == 0 in H5allocate_memory() * Committing clang-format changes * Format fix Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* correct H5Ropen_object_reference (#2212)Scot Breitenfeld2022-11-031-1/+1
|
* Fixed a Doxygen param in H5EScancel (#2213)Dana Robinson2022-11-031-1/+1
|
* Use ctest_test and APPEND to correctly report passed and failed test numbers ↵Larry Knox2022-11-021-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in CDash (#2208) * Change how HPC tests are executed * Move ctest_test commands for serial and parallel tests into cmake files. * Update checks for uploading Test.xml to CDash. * Correct cmake scripots. * Remove extraneous characters. * Add ctest_start (APPEND). * Add binary directories to scripts running ctest_test. * Correct parameters for appending Test.xml. * Set CTEST_SITE and CTEST_BUILD_NAME. * Try to pass site and build_name to ctest_test sripts. * Add site name and build name for ctest_test commands vi environment. * Revert "Try to pass site and build_name to ctest_test sripts." This reverts commit d364aaf0fa65ee7f9e222b2633ee916d50afbc42. * Correct typo in src/CMakeLists.txt. * Update batch scripts to run ctest_test scripts. Co-authored-by: Allen Byrne <byrn@hdfgroup.org>
* Correct the CMake link for MPI (#2198)Allen Byrne2022-11-011-6/+6
|
* Update copyright headers (#2184)Larry Knox2022-11-01446-454/+46
| | | | | * Updated source file copyright headers to remove "Copyright by the Board of Trustees of the University of Illinois", which is kept in the top-level COPYING file.
* Fix for documentation misunderstanding on m1 Intel builds (#2188)Allen Byrne2022-10-261-4/+4
|
* Update develop branch version to 1.13.4-1 (#2189)Larry Knox2022-10-262-4/+4
| | | | | | * Updated version to 1.13.4-1 after creating hdf5_1_13_3 branch for 1.13.3 release. Added new version to exceptions in lines 74-5 of src/H5.c
* Removed the file, func, line args in the _async APIs fpr doxygen (#2179)Scot Breitenfeld2022-10-2511-8/+287
| | | | | | | | | | | | | | | | | | | | | | | | | * Removed the: file, func, line args in the _async APIs from the doxygen arguments. Documented H5ESclean. * format fixes * fixed DOXYGEN_PREDEFINED * Fixed the #ifdet logic for doxygen, added missing multi-dataset va_args * format fixes * Use H5_DOXYGEN instead of H5_DOXYGEN_FORTRAN * reordered multidataset declarations * alt. for H5Aclose_async and H5Acreate_async * made doxgyen API into seperate blocks * updated codespell * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Port VOL User Guide to doxygen (#2165)Allen Byrne2022-10-251-11/+526
| | | | | | | | | * Port VOL User Guide to doxygen * Fix spelling * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Implement option for using CMake GNUInstallDirs (#2175)Allen Byrne2022-10-251-2/+2
| | | | | * Implement option for using CMake GNUInstallDirs * Add release notes
* fixed error code returned for H5Aexits (#2180)Scot Breitenfeld2022-10-251-2/+2
|
* Fix problem with variable length attributes being accessed through multiple ↵Neil Fortner2022-10-251-0/+4
| | | | | | | | | | | file handles (#2181) * Fix bug with variable length attributes being accessed through multiple file handles. * Committing clang-format changes Co-authored-by: Neil Fortner <nfortne2@localhost.localdomain> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Multi Dataset (#2120)Neil Fortner2022-10-1923-2961/+4384
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix bug with cross platform compatibility of references within vlens. No testing yet. * Merge from multi_rd_wd_coll_io to a more recent branch from develop. Untested, probably does not work yet. * Committing clang-format changes * Committing clang-format changes * Fix many bugs in multi dataset branch. Mostly works, some issues in SWMR tests. * Committing clang-format changes * Disable test in swmr.c that was failing due to bug in HDF5 unrelated to multi dataset. * Committing clang-format changes * Fixed fortran multi-dataset tests * Fixed xlf errors * Added benchmark code for multi-datasets * loops over datasets * added missing error arg. * Added gnuplot formatting * Jonathan Kim original MD benchmarking code * updated MD benchmarking code * code clean-up * Only make files in feature test mode * misc clean-up * removed TEST_MDSET_NO_LAST_DSET_2ND_PROC option * Committing clang-format changes * Change multi dataset API to use arrays of individual parameters instead of the parameter struct. * Committing clang-format changes * Update to new multi dataset Fortran API and tests. (#1724) * Update to new multi dataset Fortran API and tests. * Sync Fortran with develop. * skipping h5pget_mpio_actual_io_mode_f for now * Fixed issue with dxpl_id, changed to variable size dim. (#1770) * Remove "is_coll_broken" field from H5D_io_info_t struct * Committing clang-format changes * Minor cleanup in multi dataset code. * Committing clang-format changes * Clean up in multi dataset code. * Committing clang-format changes * Committing clang-format changes * Fix speeling * Fix bug in parallel compression. Switch base_maddr in io_info to be a union. * Committing clang-format changes * Implement selection I/O support with multi dataset. Will be broken in parallel until PR 1803 is merged to develop then the MDS branch. * Committing clang-format changes * Spelling * Fix bug in multi dataset that could cause errors when only some of the datasets in the multi dataset I/O used type conversion. * Committing clang-format changes * Integrate multi dataset APIs with VOL layer. Add async versions of multi dataset APIs. * Committing clang-format changes * Spelling fixes * Fix bug in non-parallel HDF5 compilation. * Committing clang-format changes * Fix potential memory/free list error. Minor performance fix. Other minor changes. * Committing clang-format changes * Fix memory leak with memory dataspace for I/O. * Committing clang-format changes * Fix stack variables too large. Rename H5D_dset_info_t to H5D_dset_io_info_t. * Committing clang-format changes * Remove mem_space_alloc field from H5D_dset_io_info_t. Each function is now responsible for freeing any spaces it adds to dset_info. * Committing clang-format changes * fixed _multi Fortran declaration * Refactor various things in (mostly) the serial I/O code path to make things more maintainable. * Committing clang-format changes * updated to array based, doxygen, and examples * Reinstate H5D_chunk_map_t, stored (via pointer) inside H5D_dset_io_info_t. * Change from calloc to malloc for H5D_dset_io_info_t and H5D_chunk_map_t. Switch temporary dset_infos to be local stack variables. * Committing clang-format changes * format cleanup * format cleanup * added coll and ind * Modify all parallel I/O paths to take dset_info instead of assuming dset_info[0]. * Committing clang-format changes * fixed output * Rework parallel I/O code to work properly with multi dataset in more cases. Fix bug in parallel compression. * Committing clang-format changes * Prevent H5D__multi_chunk_collective_io() from messing up collective opt property for other datasets in I/O. Other minor cleanup. Add new test case to t_pmulti_dset.c for H5FD_MPIO_INDIVIDUAL_IO, disabled for now due to failures apparently unrelated to multi dataset code. * Fix spelling * Committing clang-format changes * Replace N log N algorithm for finding chunk in H5D__multi_chunk_collective_io() with O(N) algorithm, and remove use of io_info->sel_pieces in that function. * Committing clang-format changes * Replace sel_pieces skiplist in io_info with flat array of pointers, use qsort in I/O routine only when necessary. * Committing clang-format changes * Add new test case to mdset.c * Committing clang-format changes * Fix spelling * Very minor fix in H5VL__native_dataset_read() * Fix bug that could affect filtered parallel multi-dataset I/O. * Add RM entries for H5Dread_multi(), H5Dread_multi_async(), H5Dwrite_multi(), and H5Dwrite_multi_async() * Unskip test in swmr.c * Committing clang-format changes * Eliminate H5D__pre_read and H5D__pre_write * Remove examples/ph5mdsettest.c. Will fix and re-add as a test. * Enable hyperslab combinations in mdset test * Committing clang-format changes * Clarify H5Dread/write_multi documentation. * Fix bugs in multi-dataset I/O. Expand serial multi dataset test. Update macro in parallel multi dataset test. * Committing clang-format changes * Spelling * Remove obsolete entry in bin/trace * Rework type conversion buffer allocation. Only one buffer is shared between datasets in mdset mode, and it is malloced instead of calloced. * Committing clang-format changes * Fix bug in error handling in H5D__read/write * added multi-dataset fortran check with optional dataset creation id (#2150) * removed dup. dll entry * Address comments from code review. * Remove spurious changes in H5Fmpi.c * Fix issue with reading unallocated datasets in multi-dataset mode. Address other comments from code review. * Committing clang-format changes * Delay chunk index lookup from io_init to mdio_init so it doesn't add overhead to single dataset I/O. * Committing clang-format changes * Fix inappropriate use of piece_count * updated copyright on new file, removed benchmark from testing dir. Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: M. Scot Breitenfeld <brtnfld@hdfgroup.org> Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
* Fix for HDFFV-10840: Instead of using fill->buf for datatype conversion (#2153)vchoi-hdfgroup2022-10-141-14/+11
| | | | | | | | | | * Fix for HDFFV-10840: Instead of using fill->buf for datatype conversion if it is large enough, a buffer is allocated regardless so that the element in fill->buf can later be reclaimed. Valgrind is run on test/set_extent.c and there is no memory leak. * Add information of this fix to release notes. Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
* Cleans final production mode warnings from H5Shyper.c (#2163)Dana Robinson2022-10-141-160/+226
| | | | | | | | | | | | | | | | | | | * H5S__hyper_free_span_info() returns herr_t (not checked) * Set up H5S__hyper_free_span_info() error handling * Set up H5S__hyper_free_span() error handling * Added error handling to H5S_HYPER_ADVANCE_SPAN * Handled errors in H5S__hyper_iter_get_seq_list_gen() * Added a production mode build target for -Werror * Committing clang-format changes * Updated names for -Werror checks Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Subfiling Fortran wrapper work. (#2143)Scot Breitenfeld2022-10-061-0/+1
| | | | | | | | | | | | | | | | | * added C ref. for Fortran constants * added C ref. for Fortran constants * move constant paramters to H5* module listing * added back comment * Fortran subfiling and ioc FD with tests. H5Pset/get_mpi_params wrappers with tests, misc.. parallel test clean-up. * misc. fixes * fixed CMake testpar issues, formatted, misc. updates * updated tests
* Subfiling testing fix and documentation (#2132)jhendersonHDF2022-09-304-9/+59
| | | | | | | | | * Fix a sporadic failure in Subfiling VFD tests * Subfiling VFD - add note to H5Pget_fapl_subfiling documentation Adds note about how H5Pget_fapl_subfiling only returns the original settings on a FAPL and those settings could have been modified by the Subfiling VFD's environment variables
* Fixed an issue that could occur when combining hyperslab selections (#2122)Neil Fortner2022-09-271-2/+2
|