Sets up use of the Fletcher32 checksum filter
H5P_SET_FLETCHER32 ( plist_id )
herr_t H5Pset_fletcher32( hid_t plist_id )
Fortran90 Interface: h5pset_fletcher32_f SUBROUTINE h5pset_fletcher32_f(prp_id, hdferr) IMPLICIT NONE INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier INTEGER, INTENT(OUT) :: hdferr ! Error code ! 0 on success and -1 on failure END SUBROUTINE h5pset_fletcher32_f
plist_id IN: Dataset or group creation property list identifier
H5P_SET_FLETCHER32 sets the Fletcher32 checksum filter in the dataset or group creation property list
The Fletcher32 EDC checksum filter was added in HDF5 Release 1.6.0. In the original implementation, however, the checksum value was calculated incorrectly on little-endian systems. The error was fixed in HDF5 Release 1.6.3.
As a result of this fix, an HDF5 library of Release 1.6.0 through Release 1.6.2 cannot read a dataset created or written with Release 1.6.3 or later if the dataset was created with the checksum filter and the filter is enabled in the reading library. (Libraries of Release 1.6.3 and later understand the earlier error and compensate appropriately.)
Work-around: An HDF5 library of Release 1.6.2 or earlier will be able to read a dataset created or written with the checksum filter by an HDF5 library of Release 1.6.3 or later if the checksum filter is disabled for the read operation. This can be accomplished via a call to H5P_SET_EDC_CHECK with the value
H5Z_DISABLE_EDC in the second parameter. This has the obvious drawback that the application will be unable to verify the checksum, but the data does remain accessible.
Returns a non-negative value if successful; otherwise returns a negative value.
|1.6.0||Function introduced in this release.|
|1.6.3||Error in checksum calculation on little-endian systems corrected in this release.|
|1.8.5||Function extended to work with group creation property lists.|