H5Lunpack_elink_val
(
char *ext_linkval
,
size_t link_size
,
unsigned *flags
,
const char **filename
,
const char **obj_path
)
H5Lunpack_elink_val
decodes the external link
information returned by H5Lget_val
in
the ext_linkval
buffer.
ext_linkval
should be the buffer set by
H5Lget_val
and will consist of two NULL-terminated strings,
the filename and object path, one after the other.
Given this buffer, H5Lunpack_elink_val
creates
pointers to the filename and object path within the buffer
and returns them in filename
and obj_path
,
unless they are passed in as NULL.
H5Lunpack_elink_val
requires that ext_linkval
contain a concatenated pair of null-terminated strings, so use of
this function on a string that is not an external link
udata
buffer may result in a segmentation fault.
This failure can be avoided by adhering to the following procedure:
H5Lget_info
to get the link type
and the size of the link value.
H5L_TYPE_EXTERNAL
.
H5Lget_val
to get the link value.
H5Lunpack_elink_val
to unpack that value.
const char *ext_linkval
|
IN: Buffer containing external link information |
size_t link_size
|
IN: Size, in bytes, of the ext_linkval
buffer
|
unsigned *flags
|
OUT: External link flags, packed as a bitmap
(Reserved as a bitmap for flags; no flags are currently defined, so the only valid value is 0.) |
const char **filename
|
OUT: Returned filename |
const char **obj_path
|
OUT: Returned object path, relative to
filename
|
Release | C |
1.8.0 | Function introduced in this release. |