summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Convert H5F haddr_t macros to H5 (#3039)Dana Robinson2023-06-05123-948/+945
| | | | | | | | | | | | | | | | | | | | | | Several macros for handling haddr_t values exist in H5Fprivate.h and have H5F prefixes, even though they have nothing to do with a particular file (e.g., H5F_addr_lt()). These macros have been moved to H5private.h and renamed to have an H5 prefix. Affected macros: H5F_addr_overflow H5F_addr_defined H5F_addr_eq H5F_addr_ne H5F_addr_lt H5F_addr_le H5F_addr_gt H5F_addr_ge H5F_addr_cmp H5F_addr_overlap H5F_addr_pow2 was unused and removed instead of converted.
* Add casts to type conversion to fix long dbl bug (#3038)Dana Robinson2023-06-031-2/+22
| | | | | | If a user buffer is misaligned in the type conversion code, memcpy could fail if the call is SSE-optimized by the compiler. This change adds uint8_t * casts so the compiler won't make optimistic assumptions about buffer alignment.
* Only pass efc pointer to H5F__efc_open (#3026)Dana Robinson2023-05-303-22/+21
| | | | The H5F__efc_open() API call only needs the efc pointer, so there is no need to pass the entire file struct in.
* Remove unused H5F_EN|DECODE_OFFSET macros (#3027)Dana Robinson2023-05-301-26/+0
|
* API test updates (#3018)jhendersonHDF2023-05-261-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | * Remove macros from api tests (#2929) * Remove macros and undefined callbacks (#2959) * Remove remaining macros from H5_api_tests_disabled.h (#2968) * Put some vol capability checks in testpar tests and remove remaining warnings (#2995) * API tests datatype generation cleanup * Clean up API tests' random datatype generation and fix bug with enum datatype generation * Init parallel API tests with MPI_THREAD_MULTIPLE * HDF5 API tests - Check VOL connector registration * Determine whether a VOL connector failed to load before running API tests * Cleanup some usages of H5VL_CAP_FLAG_CREATION_ORDER in API tests * Remove some now-unused macros from H5_api_tests_disabled.h * Enable HDF5 API tests by default * Implement CMake option to install HDF5 API tests * Check for invalid AAPL from H5Acreate * Enable building of VOL connectors alongside HDF5 in CMake * Prepend CMake VOL URL option indices with 0s so they come in order * Don't turn on API tests by default yet * Document VOL connector FetchContent functionality * Add release note for API test updates * Only install testing library if API tests are installed * Fix grammar
* Fix release version for some H5Pfapl routines (#3023)jhendersonHDF2023-05-261-3/+3
|
* Remove src/.indent.pro (#3008)Dana Robinson2023-05-251-150/+0
| | | | | There is no need for this since we use clang-format Fixes #3004
* Fix missing/misplaced h5_reset calls (#3001)Dana Robinson2023-05-231-6/+0
| | | | | | Fixes failures when running tests after building with thread-safety w/ code stacks on. Fixes #2990
* Fix FUNC_ENTER macro mismatch in H5VL_object_inc_rc() (#2991)bazimo2023-05-231-1/+1
|
* Fix 'datatype' misspellings ('dataype') (#2984)Dana Robinson2023-05-193-14/+14
|
* Add test for HDstrcasestr macro (#2115)jhendersonHDF2023-05-192-1/+24
|
* Change UBSAN for undefined instaed of address (#2964)Allen Byrne2023-05-171-2/+2
|
* Remove unnecessary fields from cache structs (#2951)Quincey Koziol2023-05-1526-524/+36
| | | | | | | | | | | | * Remove unnecessary 'magic' field from cache structs Signed-off-by: Quincey Koziol <quincey@koziol.cc> * Committing clang-format changes --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Warn about changing collections during iteration (#2950)mattjala2023-05-157-15/+37
| | | Resolves #92
* Prevent buffer overrun in H5S_select_deserialize (#2931)mattjala2023-05-1212-104/+233
| | | | | | | | | | | | | | | | | | | | | * Prevent buffer overrun in H5S_select_deserialize The call to H5S_select_deserialize from H5S_decode doesn't have the buffer size available to it, so to allow decoding there I set it to assume a max size buffer for now. Making the buffer size known in H5S_decode could be done by modifying the external API's H5Sdecode, or splitting H5Sdecode into two functions using a macro (similar to H5Sencode), with the macro taking one argument and assuming a max buffer size. * Conditional buffer check in H5S_select_deserialize Moved and renamed a macro for only checking buffer overflow when buffer size is known from H5Odtype.c to H5private.h, so it can be used throughout the library. Also silenced some build warnings about types.
* Move functions into more focused source code modules (#2936)Quincey Koziol2023-05-1216-7442/+7508
| | | | | | | | | | | | | | * Move functions into more focused source code modules, along with a small # of directly secondary effects. No actual changes to the contents of any moved routines. Signed-off-by: Quincey Koziol <quincey@koziol.cc> * Committing clang-format changes --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* More code duplication reduction (#2930)Quincey Koziol2023-05-094-2210/+1523
| | | | | | | | | | | | | | | | | | | | | | | | * Add failure value where it's missing from 1+ macros. Clean up whitespace / continuation characters ('\'). Made hash-table macros generic for use in both the package header and test header. Remove duplicated copy & pasted macros (by hoisting difference into #ifdef'd macro). Updated and re-flowed comments to read better. Also clean up a few compiler warnings in production builds. Signed-off-by: Quincey Koziol <quincey@koziol.cc> * Committing clang-format changes * Remove unused variable warning in H5C.c (#2844) * Remove trailing /* NDEBUG */ comment from #endif's * Committing clang-format changes --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Remove unused variable warning in H5C.c (#2844)H. Joe Lee2023-05-091-2/+2
|
* Reduce code duplication in macros (#2914)Quincey Koziol2023-05-081-539/+126
| | | | | | | | | | | | | | | | | | * Reduce code duplication in macros Signed-off-by: Quincey Koziol <quincey@koziol.cc> * "insert" -> "remove" in error string Signed-off-by: Quincey Koziol <koziol@lbl.gov> * Remove unused macro also Signed-off-by: Quincey Koziol <quincey@koziol.cc> --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Signed-off-by: Quincey Koziol <quincey@koziol.cc>
* Public header cleanup (#2923)Dana Robinson2023-05-0721-93/+59
| | | | | | Removes unnecessary headers and adds missing headers, ensuring that headers can be included independently and in any order. Fixes #2789
* Add Doxygen for H5ES_NONE _WAIT_NONE/FOREVER (#2922)Dana Robinson2023-05-061-10/+13
|
* Add Doxygen for H5S_ALL, _PLIST, and _BLOCK (#2921)Dana Robinson2023-05-061-3/+24
| | | Fixes #688
* Fix CMake generator expression syntax (#2909)Allen Byrne2023-05-051-11/+11
|
* Remove H5TB discussion (#2899)Dana Robinson2023-05-051-10/+0
|
* Fix Autotools internal-debug=all builds (#2886)jhendersonHDF2023-05-031-1/+1
|
* Harden H5O cache deserialize calls (#2856)Dana Robinson2023-05-011-295/+237
|
* Fix memory leaks in H5Dwrite w/ selection I/O (#2859)Dana Robinson2023-04-301-0/+7
|
* Fix TRACE macros in selection I/O plist calls (#2857)Dana Robinson2023-04-301-2/+2
|
* Don't use strnlen when len is not known (#2855)Dana Robinson2023-04-291-15/+41
| | | | | | | | | | The datatype object header message decode function was updated to do bounds checking on the decode buffer. This buffer may arrive with no buffer size via H5Tdecode(), in which case the buffer size will have been set to SIZE_MAX by the library. This fix changes the string length calls to strlen when we don't know the buffer size (and avoids a potential compiler bug with icc 17).
* Converted H5D asserts to normal error checking (#2842)Dana Robinson2023-04-292-57/+45
| | | | These cases can trip when processing malformed files and it's better to invoke normal HDF5 error handling than crash a process.
* Implement selection I/O with type conversion (#2823)Neil Fortner2023-04-2823-336/+2167
| | | | | Initial implementation of selection I/O with type conversion. Allows Parallel collective I/O with type conversion, as long as selection I/O is enabled.
* Update H5Dget_space_status bug note to reference 1.14.0 (#2839)jhendersonHDF2023-04-281-1/+1
|
* Subfiling VFD - check if MPI is finalized during VFD termination (#2683)jhendersonHDF2023-04-273-28/+87
|
* Harden superblock cache deserialization (#2809)Dana Robinson2023-04-271-214/+146
|
* Fix v1 object header gap bug in H5Ocopy (#2785)jhendersonHDF2023-04-261-2/+7
|
* Harden H5G cache deserialization (#2810)Dana Robinson2023-04-261-68/+45
|
* Allow H5P_DEFAULT in H5Pget_vol_cap_flags and H5Pget_vol_id (#2807)jhendersonHDF2023-04-251-0/+6
|
* Sanitize H5HG cache deserialization code (#2808)Dana Robinson2023-04-252-153/+173
|
* Harden the v1 B-tree and local heap cache clients (#2803)Dana Robinson2023-04-254-96/+90
| | | | * Hardens v1 B-tree deserialize function * Harden the H5HL deserialize functionality
* H5Odtype.c decode cleanup (#2797)Dana Robinson2023-04-251-85/+234
| | | | * Adds bounds checking to H5Odtype.c * Minor tidy of dtypes test
* Sanitize object header message decode functions (#2795)Dana Robinson2023-04-2514-409/+407
| | | | | * Add buffer bounds checks * Convert asserts to real error handling to better detect broken files * General cleanup
* Add bug note to H5Dget_space_status documentation (#2788)jhendersonHDF2023-04-231-0/+14
|
* Sanitize the attribute object header msg code (#2749)Dana Robinson2023-04-191-39/+75
| | | | | Adds: * Bounds checks on buffer access * Better memory cleanup
* Sanitize the H5Oname decode function (#2757)Dana Robinson2023-04-191-20/+14
| | | | * Add bounds checking * Add memory cleanup
* Sanitize the ohdr modification time decode fxns (#2762)Dana Robinson2023-04-181-36/+38
|
* Clean up H5Oefl decode function (#2755)Dana Robinson2023-04-181-27/+28
| | | | * Use the H5_IS_BUFFER_OVERFLOW macro * Attempt to close local heap on errors if left open
* Removes programmer/date lines from src headers (#2747)Dana Robinson2023-04-1877-542/+203
|
* Check for invalid AAPL in H5Aopen (#2712)jhendersonHDF2023-04-171-5/+9
|
* Sanitize B-tree k ohdr message decode call (#2754)Dana Robinson2023-04-171-13/+20
| | | | * Check buffer bounds * Clean up memory on errors
* Sanitize the attribute info message decode fxn (#2748)Dana Robinson2023-04-171-13/+24
| | | | Adds bounds checking on the buffer in the attribute info message's decode function (H5O__ainfo_decode).