diff options
author | Vailin Choi <vchoi@jam.ad.hdfgroup.org> | 2017-03-07 15:59:39 (GMT) |
---|---|---|
committer | Vailin Choi <vchoi@jam.ad.hdfgroup.org> | 2017-03-07 15:59:39 (GMT) |
commit | d5fea5b80a2ccc21fb4f187d0efeda80b9134156 (patch) | |
tree | 8cc95b236a40ce0567887d189bc077136cf0e2e6 /src | |
parent | 503ab9d88d6fb4b0866cb8bb77ee1df68dd735c1 (diff) | |
download | hdf5-d5fea5b80a2ccc21fb4f187d0efeda80b9134156.zip hdf5-d5fea5b80a2ccc21fb4f187d0efeda80b9134156.tar.gz hdf5-d5fea5b80a2ccc21fb4f187d0efeda80b9134156.tar.bz2 |
Bring fix for HDFFV-9697 from develop branch.
Populate the fix for HDFFV-9697: Fix for unknown message from develop branch.
Tested on ostrich, platypus, kite, quail, osx1010test, emu, mayll, moohan, kituo.
Diffstat (limited to 'src')
-rw-r--r-- | src/H5Dint.c | 12 | ||||
-rw-r--r-- | src/H5Fpkg.h | 2 | ||||
-rw-r--r-- | src/H5Fsuper.c | 2 | ||||
-rw-r--r-- | src/H5O.c | 82 | ||||
-rw-r--r-- | src/H5Obogus.c | 66 | ||||
-rw-r--r-- | src/H5Ocache.c | 11 | ||||
-rw-r--r-- | src/H5Opkg.h | 8 | ||||
-rw-r--r-- | src/H5Oprivate.h | 70 |
8 files changed, 157 insertions, 96 deletions
diff --git a/src/H5Dint.c b/src/H5Dint.c index 16ced02..b5adfc4 100644 --- a/src/H5Dint.c +++ b/src/H5Dint.c @@ -869,16 +869,22 @@ H5D__update_oh_info(H5F_t *file, hid_t dxpl_id, H5D_t *dset, hid_t dapl_id) if(NULL == (dc_plist = (H5P_genplist_t *)H5I_object(dset->shared->dcpl_id))) HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "can't get dataset creation property list") - /* Check whether to add a "bogus" message */ - if(H5P_exist_plist(dc_plist, H5O_BOGUS_MSG_FLAGS_NAME) > 0) { + /* Check whether to add a "bogus" message */ + if( (H5P_exist_plist(dc_plist, H5O_BOGUS_MSG_FLAGS_NAME) > 0) && + (H5P_exist_plist(dc_plist, H5O_BOGUS_MSG_ID_NAME) > 0) ) { + uint8_t bogus_flags = 0; /* Flags for creating "bogus" message */ + unsigned bogus_id; /* "bogus" ID */ + /* Retrieve "bogus" message ID */ + if(H5P_get(dc_plist, H5O_BOGUS_MSG_ID_NAME, &bogus_id) < 0) + HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "can't get bogus ID options") /* Retrieve "bogus" message flags */ if(H5P_get(dc_plist, H5O_BOGUS_MSG_FLAGS_NAME, &bogus_flags) < 0) HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "can't get bogus message options") /* Add a "bogus" message (for error testing). */ - if(H5O_bogus_oh(file, dxpl_id, oh, (unsigned)bogus_flags) < 0) + if(H5O_bogus_oh(file, dxpl_id, oh, bogus_id, (unsigned)bogus_flags) < 0) HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "unable to create 'bogus' message") } /* end if */ } diff --git a/src/H5Fpkg.h b/src/H5Fpkg.h index 21034d7..3a343cc 100644 --- a/src/H5Fpkg.h +++ b/src/H5Fpkg.h @@ -310,7 +310,7 @@ H5_DLL herr_t H5F_super_free(H5F_super_t *sblock); /* Superblock extension related routines */ H5_DLL herr_t H5F_super_ext_open(H5F_t *f, haddr_t ext_addr, H5O_loc_t *ext_ptr); -H5_DLL herr_t H5F_super_ext_write_msg(H5F_t *f, hid_t dxpl_id, void *mesg, unsigned id, hbool_t may_create); +H5_DLL herr_t H5F_super_ext_write_msg(H5F_t *f, hid_t dxpl_id, unsigned id, void *mesg, hbool_t may_create); H5_DLL herr_t H5F_super_ext_close(H5F_t *f, H5O_loc_t *ext_ptr, hid_t dxpl_id, hbool_t was_created); diff --git a/src/H5Fsuper.c b/src/H5Fsuper.c index 3f2b33f..5f71f61 100644 --- a/src/H5Fsuper.c +++ b/src/H5Fsuper.c @@ -712,7 +712,7 @@ done: *------------------------------------------------------------------------- */ herr_t -H5F_super_ext_write_msg(H5F_t *f, hid_t dxpl_id, void *mesg, unsigned id, hbool_t may_create) +H5F_super_ext_write_msg(H5F_t *f, hid_t dxpl_id, unsigned id, void *mesg, hbool_t may_create) { hbool_t ext_created = FALSE; /* Whether superblock extension was created */ hbool_t ext_opened = FALSE; /* Whether superblock extension was opened */ @@ -98,34 +98,39 @@ static const H5O_obj_class_t *H5O_obj_class_real(H5O_t *oh); */ const H5O_msg_class_t *const H5O_msg_class_g[] = { - H5O_MSG_NULL, /*0x0000 Null */ - H5O_MSG_SDSPACE, /*0x0001 Dataspace */ - H5O_MSG_LINFO, /*0x0002 Link information */ - H5O_MSG_DTYPE, /*0x0003 Datatype */ - H5O_MSG_FILL, /*0x0004 Old data storage -- fill value */ - H5O_MSG_FILL_NEW, /*0x0005 New data storage -- fill value */ - H5O_MSG_LINK, /*0x0006 Link */ - H5O_MSG_EFL, /*0x0007 Data storage -- external data files */ - H5O_MSG_LAYOUT, /*0x0008 Data Layout */ + H5O_MSG_NULL, /*0x0000 Null */ + H5O_MSG_SDSPACE, /*0x0001 Dataspace */ + H5O_MSG_LINFO, /*0x0002 Link information */ + H5O_MSG_DTYPE, /*0x0003 Datatype */ + H5O_MSG_FILL, /*0x0004 Old data storage -- fill value */ + H5O_MSG_FILL_NEW, /*0x0005 New data storage -- fill value */ + H5O_MSG_LINK, /*0x0006 Link */ + H5O_MSG_EFL, /*0x0007 Data storage -- external data files */ + H5O_MSG_LAYOUT, /*0x0008 Data Layout */ #ifdef H5O_ENABLE_BOGUS - H5O_MSG_BOGUS, /*0x0009 "Bogus" (for testing) */ + H5O_MSG_BOGUS_VALID, /*0x0009 "Bogus valid" (for testing) */ #else /* H5O_ENABLE_BOGUS */ - NULL, /*0x0009 "Bogus" (for testing) */ + NULL, /*0x0009 "Bogus valid" (for testing) */ +#endif /* H5O_ENABLE_BOGUS */ + H5O_MSG_GINFO, /*0x000A Group information */ + H5O_MSG_PLINE, /*0x000B Data storage -- filter pipeline */ + H5O_MSG_ATTR, /*0x000C Attribute */ + H5O_MSG_NAME, /*0x000D Object name */ + H5O_MSG_MTIME, /*0x000E Object modification date and time */ + H5O_MSG_SHMESG, /*0x000F File-wide shared message table */ + H5O_MSG_CONT, /*0x0010 Object header continuation */ + H5O_MSG_STAB, /*0x0011 Symbol table */ + H5O_MSG_MTIME_NEW, /*0x0012 New Object modification date and time */ + H5O_MSG_BTREEK, /*0x0013 Non-default v1 B-tree 'K' values */ + H5O_MSG_DRVINFO, /*0x0014 Driver info settings */ + H5O_MSG_AINFO, /*0x0015 Attribute information */ + H5O_MSG_REFCOUNT, /*0x0016 Object's ref. count */ + H5O_MSG_UNKNOWN, /*0x0017 Placeholder for unknown message */ +#ifdef H5O_ENABLE_BOGUS + H5O_MSG_BOGUS_INVALID /*0x0018 "Bogus invalid" (for testing) */ +#else /* H5O_ENABLE_BOGUS */ + NULL /*0x0018 "Bogus invalid" (for testing) */ #endif /* H5O_ENABLE_BOGUS */ - H5O_MSG_GINFO, /*0x000A Group information */ - H5O_MSG_PLINE, /*0x000B Data storage -- filter pipeline */ - H5O_MSG_ATTR, /*0x000C Attribute */ - H5O_MSG_NAME, /*0x000D Object name */ - H5O_MSG_MTIME, /*0x000E Object modification date and time */ - H5O_MSG_SHMESG, /*0x000F File-wide shared message table */ - H5O_MSG_CONT, /*0x0010 Object header continuation */ - H5O_MSG_STAB, /*0x0011 Symbol table */ - H5O_MSG_MTIME_NEW, /*0x0012 New Object modification date and time */ - H5O_MSG_BTREEK, /*0x0013 Non-default v1 B-tree 'K' values */ - H5O_MSG_DRVINFO, /*0x0014 Driver info settings */ - H5O_MSG_AINFO, /*0x0015 Attribute information */ - H5O_MSG_REFCOUNT, /*0x0016 Object's ref. count */ - H5O_MSG_UNKNOWN /*0x0017 Placeholder for unknown message */ }; /* Declare a free list to manage the H5O_t struct */ @@ -2122,10 +2127,11 @@ done: *------------------------------------------------------------------------- */ herr_t -H5O_bogus_oh(H5F_t *f, hid_t dxpl_id, H5O_t *oh, unsigned mesg_flags) +H5O_bogus_oh(H5F_t *f, hid_t dxpl_id, H5O_t *oh, unsigned bogus_id, unsigned mesg_flags) { - size_t idx; /* Local index variable */ - herr_t ret_value = SUCCEED; /* Return value */ + size_t idx; /* Local index variable */ + H5O_msg_class_t *type; /* Message class type */ + herr_t ret_value = SUCCEED; /* Return value */ FUNC_ENTER_NOAPI(FAIL) @@ -2134,7 +2140,8 @@ H5O_bogus_oh(H5F_t *f, hid_t dxpl_id, H5O_t *oh, unsigned mesg_flags) /* Look for existing message */ for(idx = 0; idx < oh->nmesgs; idx++) - if(H5O_MSG_BOGUS == oh->mesg[idx].type) + if(H5O_MSG_BOGUS_VALID == oh->mesg[idx].type || + H5O_MSG_BOGUS_INVALID == oh->mesg[idx].type) break; /* Create a new message */ @@ -2142,18 +2149,25 @@ H5O_bogus_oh(H5F_t *f, hid_t dxpl_id, H5O_t *oh, unsigned mesg_flags) H5O_bogus_t *bogus; /* Pointer to the bogus information */ /* Allocate the native message in memory */ - if(NULL == (bogus = H5MM_malloc(sizeof(H5O_bogus_t)))) - HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, FAIL, "memory allocation failed for 'bogus' message") + if(NULL == (bogus = H5MM_malloc(sizeof(H5O_bogus_t)))) + HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, FAIL, "memory allocation failed for 'bogus' message") /* Update the native value */ bogus->u = H5O_BOGUS_VALUE; + if(bogus_id == H5O_BOGUS_VALID_ID) + type = H5O_MSG_BOGUS_VALID; + else if(bogus_id == H5O_BOGUS_INVALID_ID) + type = H5O_MSG_BOGUS_INVALID; + else + HGOTO_ERROR(H5E_ATOM, H5E_BADATOM, FAIL, "invalid ID for 'bogus' message") + /* Allocate space in the object header for bogus message */ - if(H5O_msg_alloc(f, dxpl_id, oh, H5O_MSG_BOGUS, &mesg_flags, bogus, &idx) < 0) - HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, FAIL, "unable to allocate space for 'bogus' message") + if(H5O_msg_alloc(f, dxpl_id, oh, type, &mesg_flags, bogus, &idx) < 0) + HGOTO_ERROR(H5E_OHDR, H5E_CANTINIT, FAIL, "unable to allocate space for 'bogus' message") /* Point to "bogus" information (take it over) */ - oh->mesg[idx].native = bogus; + oh->mesg[idx].native = bogus; /* Set the appropriate flags for the message */ oh->mesg[idx].flags = mesg_flags; diff --git a/src/H5Obogus.c b/src/H5Obogus.c index b368ab6..3effae3 100644 --- a/src/H5Obogus.c +++ b/src/H5Obogus.c @@ -46,27 +46,51 @@ static herr_t H5O_bogus_debug(H5F_t *f, hid_t dxpl_id, const void *_mesg, FILE * int indent, int fwidth); /* This message derives from H5O message class */ -const H5O_msg_class_t H5O_MSG_BOGUS[1] = {{ - H5O_BOGUS_ID, /*message id number */ - "bogus", /*message name for debugging */ - 0, /*native message size */ - 0, /* messages are sharable? */ - H5O_bogus_decode, /*decode message */ - H5O_bogus_encode, /*encode message */ - NULL, /*copy the native value */ - H5O_bogus_size, /*raw message size */ - NULL, /*free internal memory */ - NULL, /*free method */ - NULL, /* file delete method */ - NULL, /* link method */ - NULL, /*set share method */ - NULL, /*can share method */ - NULL, /* pre copy native value to file */ - NULL, /* copy native value to file */ - NULL, /* post copy native value to file */ - NULL, /* get creation index */ - NULL, /* set creation index */ - H5O_bogus_debug /*debug the message */ +const H5O_msg_class_t H5O_MSG_BOGUS_VALID[1] = {{ + H5O_BOGUS_VALID_ID, /*message id number */ + "bogus valid", /*message name for debugging */ + 0, /*native message size */ + 0, /*messages are sharable? */ + H5O_bogus_decode, /*decode message */ + H5O_bogus_encode, /*encode message */ + NULL, /*copy the native value */ + H5O_bogus_size, /*raw message size */ + NULL, /*free internal memory */ + NULL, /*free method */ + NULL, /* file delete method */ + NULL, /* link method */ + NULL, /*set share method */ + NULL, /*can share method */ + NULL, /* pre copy native value to file */ + NULL, /* copy native value to file */ + NULL, /* post copy native value to file */ + NULL, /* get creation index */ + NULL, /* set creation index */ + H5O_bogus_debug /*debug the message */ +}}; + +/* This message derives from H5O message class */ +const H5O_msg_class_t H5O_MSG_BOGUS_INVALID[1] = {{ + H5O_BOGUS_INVALID_ID, /*message id number */ + "bogus invalid", /*message name for debugging */ + 0, /*native message size */ + 0, /*messages are sharable? */ + H5O_bogus_decode, /*decode message */ + H5O_bogus_encode, /*encode message */ + NULL, /*copy the native value */ + H5O_bogus_size, /*raw message size */ + NULL, /*free internal memory */ + NULL, /*free method */ + NULL, /* file delete method */ + NULL, /* link method */ + NULL, /*set share method */ + NULL, /*can share method */ + NULL, /* pre copy native value to file */ + NULL, /* copy native value to file */ + NULL, /* post copy native value to file */ + NULL, /* get creation index */ + NULL, /* set creation index */ + H5O_bogus_debug /*debug the message */ }}; diff --git a/src/H5Ocache.c b/src/H5Ocache.c index 2aaf933..0f22acb 100644 --- a/src/H5Ocache.c +++ b/src/H5Ocache.c @@ -1116,10 +1116,6 @@ H5O_chunk_deserialize(H5O_t *oh, haddr_t addr, size_t len, const uint8_t *image, else id = *p++; - /* Check for unknown message ID getting encoded in file */ - if(id == H5O_UNKNOWN_ID) - HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, FAIL, "'unknown' message ID encoded in file?!?") - /* Message size */ UINT16DECODE(p, mesg_size); HDassert(mesg_size == H5O_ALIGN_OH(oh, mesg_size)); @@ -1193,7 +1189,12 @@ H5O_chunk_deserialize(H5O_t *oh, haddr_t addr, size_t len, const uint8_t *image, /* Point unknown messages at 'unknown' message class */ /* (Usually from future versions of the library) */ - if(id >= NELMTS(H5O_msg_class_g) || NULL == H5O_msg_class_g[id]) { + if(id >= H5O_UNKNOWN_ID || +#ifdef H5O_ENABLE_BOGUS + id == H5O_BOGUS_VALID_ID || +#endif + NULL == H5O_msg_class_g[id]) { + H5O_unknown_t *unknown; /* Pointer to "unknown" message info */ /* Allocate "unknown" message info */ diff --git a/src/H5Opkg.h b/src/H5Opkg.h index 2c8c5a0..c7789fe 100644 --- a/src/H5Opkg.h +++ b/src/H5Opkg.h @@ -31,7 +31,7 @@ #define H5O_NMESGS 8 /*initial number of messages */ #define H5O_NCHUNKS 2 /*initial number of chunks */ #define H5O_MIN_SIZE 22 /* Min. obj header data size (must be big enough for a message prefix and a continuation message) */ -#define H5O_MSG_TYPES 24 /* # of types of messages */ +#define H5O_MSG_TYPES 25 /* # of types of messages */ #define H5O_MAX_CRT_ORDER_IDX 65535 /* Max. creation order index value */ /* Versions of object header structure */ @@ -441,11 +441,13 @@ H5_DLLVAR const H5O_msg_class_t H5O_MSG_EFL[1]; H5_DLLVAR const H5O_msg_class_t H5O_MSG_LAYOUT[1]; #ifdef H5O_ENABLE_BOGUS -/* "Bogus" Message. (0x0009) */ +/* "Bogus valid" Message. (0x0009) */ +/* "Bogus invalid" Message. (0x00018) */ /* * Used for debugging - should never be found in valid HDF5 file. */ -H5_DLLVAR const H5O_msg_class_t H5O_MSG_BOGUS[1]; +H5_DLLVAR const H5O_msg_class_t H5O_MSG_BOGUS_VALID[1]; +H5_DLLVAR const H5O_msg_class_t H5O_MSG_BOGUS_INVALID[1]; #endif /* H5O_ENABLE_BOGUS */ /* Group Information Message. (0x000a) */ diff --git a/src/H5Oprivate.h b/src/H5Oprivate.h index 94ba6a0..e749398 100644 --- a/src/H5Oprivate.h +++ b/src/H5Oprivate.h @@ -83,6 +83,9 @@ typedef struct H5O_t H5O_t; /* Hash value constants */ #define H5O_HASH_SIZE 32 +/* Enable reading/writing "bogus" messages */ +/* #define H5O_ENABLE_BOGUS */ + /* ========= Object Creation properties ============ */ #define H5O_CRT_ATTR_MAX_COMPACT_NAME "max compact attr" /* Max. # of attributes to store compactly */ #define H5O_CRT_ATTR_MIN_DENSE_NAME "min dense attr" /* Min. # of attributes to store densely */ @@ -92,6 +95,11 @@ typedef struct H5O_t H5O_t; #ifdef H5O_ENABLE_BOGUS #define H5O_BOGUS_MSG_FLAGS_NAME "bogus msg flags" /* Flags for 'bogus' message */ #define H5O_BOGUS_MSG_FLAGS_SIZE sizeof(uint8_t) + +/* bogus ID can be either (a) H5O_BOGUS_VALID_ID or (b) H5O_BOGUS_INVALID_ID */ +#define H5O_BOGUS_MSG_ID_NAME "bogus msg id" /* ID for 'bogus' message */ +#define H5O_BOGUS_MSG_ID_SIZE sizeof(unsigned) + #endif /* H5O_ENABLE_BOGUS */ #ifdef H5O_ENABLE_BAD_MESG_COUNT #define H5O_BAD_MESG_COUNT_NAME "bad message count" /* Flag setting bad message count */ @@ -168,32 +176,41 @@ typedef struct H5O_copy_t { } H5O_copy_t; /* Header message IDs */ -#define H5O_NULL_ID 0x0000 /* Null Message. */ -#define H5O_SDSPACE_ID 0x0001 /* Dataspace Message. */ -#define H5O_LINFO_ID 0x0002 /* Link info Message. */ -#define H5O_DTYPE_ID 0x0003 /* Datatype Message. */ -#define H5O_FILL_ID 0x0004 /* Fill Value Message. (Old) */ -#define H5O_FILL_NEW_ID 0x0005 /* Fill Value Message. (New) */ -#define H5O_LINK_ID 0x0006 /* Link Message. */ -#define H5O_EFL_ID 0x0007 /* External File List Message */ -#define H5O_LAYOUT_ID 0x0008 /* Data Layout Message. */ -#define H5O_BOGUS_ID 0x0009 /* "Bogus" Message. */ -#define H5O_GINFO_ID 0x000a /* Group info Message. */ -#define H5O_PLINE_ID 0x000b /* Filter pipeline message. */ -#define H5O_ATTR_ID 0x000c /* Attribute Message. */ -#define H5O_NAME_ID 0x000d /* Object name message. */ -#define H5O_MTIME_ID 0x000e /* Modification time message. (Old) */ -#define H5O_SHMESG_ID 0x000f /* Shared message "SOHM" table. */ -#define H5O_CONT_ID 0x0010 /* Object header continuation message. */ -#define H5O_STAB_ID 0x0011 /* Symbol table message. */ -#define H5O_MTIME_NEW_ID 0x0012 /* Modification time message. (New) */ -#define H5O_BTREEK_ID 0x0013 /* v1 B-tree 'K' values message. */ -#define H5O_DRVINFO_ID 0x0014 /* Driver info message. */ -#define H5O_AINFO_ID 0x0015 /* Attribute info message. */ -#define H5O_REFCOUNT_ID 0x0016 /* Reference count message. */ -#define H5O_UNKNOWN_ID 0x0017 /* Placeholder message ID for unknown message. */ +#define H5O_NULL_ID 0x0000 /* Null Message. */ +#define H5O_SDSPACE_ID 0x0001 /* Dataspace Message. */ +#define H5O_LINFO_ID 0x0002 /* Link info Message. */ +#define H5O_DTYPE_ID 0x0003 /* Datatype Message. */ +#define H5O_FILL_ID 0x0004 /* Fill Value Message. (Old) */ +#define H5O_FILL_NEW_ID 0x0005 /* Fill Value Message. (New) */ +#define H5O_LINK_ID 0x0006 /* Link Message. */ +#define H5O_EFL_ID 0x0007 /* External File List Message */ +#define H5O_LAYOUT_ID 0x0008 /* Data Layout Message. */ +#define H5O_BOGUS_VALID_ID 0x0009 /* "Bogus valid" Message. */ +#define H5O_GINFO_ID 0x000a /* Group info Message. */ +#define H5O_PLINE_ID 0x000b /* Filter pipeline message. */ +#define H5O_ATTR_ID 0x000c /* Attribute Message. */ +#define H5O_NAME_ID 0x000d /* Object name message. */ +#define H5O_MTIME_ID 0x000e /* Modification time message. (Old) */ +#define H5O_SHMESG_ID 0x000f /* Shared message "SOHM" table. */ +#define H5O_CONT_ID 0x0010 /* Object header continuation message. */ +#define H5O_STAB_ID 0x0011 /* Symbol table message. */ +#define H5O_MTIME_NEW_ID 0x0012 /* Modification time message. (New) */ +#define H5O_BTREEK_ID 0x0013 /* v1 B-tree 'K' values message. */ +#define H5O_DRVINFO_ID 0x0014 /* Driver info message. */ +#define H5O_AINFO_ID 0x0015 /* Attribute info message. */ +#define H5O_REFCOUNT_ID 0x0016 /* Reference count message. */ +#define H5O_UNKNOWN_ID 0x0017 /* Placeholder message ID for unknown message. */ /* (this should never exist in a file) */ +/* + * Note: Must increment H5O_MSG_TYPES in H5Opkg.h and update H5O_msg_class_g + * in H5O.c when creating a new message type. Also bump the value of + * H5O_BOGUS_INVALID_ID, below, to be one greater than the value of + * H5O_UNKNOWN_ID. + * + * (this should never exist in a file) + */ +#define H5O_BOGUS_INVALID_ID 0x0018 /* "Bogus invalid" Message. */ /* Shared object message types. * Shared objects can be committed, in which case the shared message contains @@ -425,9 +442,6 @@ typedef struct H5O_layout_t { H5O_storage_t storage; /* Information for storing dataset elements */ } H5O_layout_t; -/* Enable reading/writing "bogus" messages */ -/* #define H5O_ENABLE_BOGUS */ - #ifdef H5O_ENABLE_BOGUS /* * "Bogus" Message. @@ -641,7 +655,7 @@ H5_DLL herr_t H5O_touch(const H5O_loc_t *loc, hbool_t force, hid_t dxpl_id); H5_DLL herr_t H5O_touch_oh(H5F_t *f, hid_t dxpl_id, H5O_t *oh, hbool_t force); #ifdef H5O_ENABLE_BOGUS -H5_DLL herr_t H5O_bogus_oh(H5F_t *f, hid_t dxpl_id, H5O_t *oh, unsigned mesg_flags); +H5_DLL herr_t H5O_bogus_oh(H5F_t *f, hid_t dxpl_id, H5O_t *oh, unsigned mesg_id, unsigned mesg_flags); #endif /* H5O_ENABLE_BOGUS */ H5_DLL herr_t H5O_delete(H5F_t *f, hid_t dxpl_id, haddr_t addr); H5_DLL herr_t H5O_get_hdr_info(const H5O_loc_t *oloc, hid_t dxpl_id, H5O_hdr_info_t *hdr); |