-
-
Notifications
You must be signed in to change notification settings - Fork 265
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Segmentation violation with H5Fget_intent when passing in a dataset id (in HDF5 1.14.4.3) #4656
Comments
Hi @abhibaruah, |
In some API functions, the internal function H5I_object() was used instead of H5I_object_verify(), which verifies the type of an ID argument. So when an inappropriate ID was passed in to the affected API, it was accepted. This behavior can cause issues at a later time, including a segfault, as reported in issue #HDFGroupGH-4656. The fix was applied to the following functions: H5Fget_intent() H5Fget_fileno() H5Fget_freespace() H5Fget_create_plist() H5Fget_access_plist() H5Fget_vfd_handle() H5Dvlen_get_buf_size() H5Fget_mdc_config() H5Fset_mdc_config() H5Freset_mdc_hit_rate_stats() Fixes HDFGroupGH-4662
* Replace incorrect use of an internal function In some API functions, the internal function H5I_object() was used instead of H5I_object_verify(), which verifies the type of an ID argument. So when an inappropriate ID was passed in to the affected API, it was accepted. This behavior can cause issues at a later time, including a segfault, as reported in issue #GH-4656. The fix was applied to the following functions: H5Fget_intent() H5Fget_fileno() H5Fget_freespace() H5Fget_create_plist() H5Fget_access_plist() H5Fget_vfd_handle() H5Dvlen_get_buf_size() H5Fget_mdc_config() H5Fset_mdc_config() H5Freset_mdc_hit_rate_stats() Fixes GH-4662
@abhibaruah |
* Replace incorrect use of an internal function In some API functions, the internal function H5I_object() was used instead of H5I_object_verify(), which verifies the type of an ID argument. So when an inappropriate ID was passed in to the affected API, it was accepted. This behavior can cause issues at a later time, including a segfault, as reported in issue #HDFGroupGH-4656. The fix was applied to the following functions: H5Fget_intent() H5Fget_fileno() H5Fget_freespace() H5Fget_create_plist() H5Fget_access_plist() H5Fget_vfd_handle() H5Dvlen_get_buf_size() H5Fget_mdc_config() H5Fset_mdc_config() H5Freset_mdc_hit_rate_stats() Fixes HDFGroupGH-4662
* publish msi binary (#4663) * Add publish from branch workflow (#4664) * Replace incorrect use of an internal function (#4668) * Replace incorrect use of an internal function In some API functions, the internal function H5I_object() was used instead of H5I_object_verify(), which verifies the type of an ID argument. So when an inappropriate ID was passed in to the affected API, it was accepted. This behavior can cause issues at a later time, including a segfault, as reported in issue #GH-4656. The fix was applied to the following functions: H5Fget_intent() H5Fget_fileno() H5Fget_freespace() H5Fget_create_plist() H5Fget_access_plist() H5Fget_vfd_handle() H5Dvlen_get_buf_size() H5Fget_mdc_config() H5Fset_mdc_config() H5Freset_mdc_hit_rate_stats() Fixes GH-4662 * Fix incorrect indentation for permissions. (#4669) * Remove outdated line from Copyright header in new files. (#4676) * Fix binary examples process (#4666) --------- Co-authored-by: Allen Byrne <[email protected]> Co-authored-by: bmribler <[email protected]>
@abhibaruah Can this issue be closed? |
Thanks Binh-Minh. If this has been fixed then yes it can be closed. |
This will be fixed in 1.14.5 |
HDF5 version - 1.14.4.3
OS : Debian 11
Compiler : gcc
I have a simple reproduction script where I accidently passed in the dataset Id to H5Fget_intent instead of file ID.
In HDF5 1.10.11, H5Fget_intent errored out with the message:
“HDF5-DIAG: Error detected in HDF5 (1.10.11) thread 0:
#000: H5F.c line 649 in H5Fget_intent(): not a file
major: Invalid arguments to routine
minor: Inappropriate type”
But, in HDF5 1.14.4.3, the program crashed (segmentation violation) on H5Fget_intent. While I would have expected the error, the segV seems like buggy behavior.
Please find my reproduction code below.
Also, I could reproduce it with any h5 file.
The text was updated successfully, but these errors were encountered: