The vxfs_inotopath_gen
function takes a mount point name, inode number, and inode generation count and returns a buffer that contains one or more (in the case of multiple links to an inode) full path names representing the inode. The inode generation count parameter ensures that the returned path name is not a false value of a re-used inode. Because of this, use the vxfs_inotopath_gen
function whenever possible.
The vxfs_inotopath
function is included only for backward compatibility. The vxfs_inotopath
function does not take the inode generation count.
The following is the syntax for vxfs_inotopath
and vxfs_inotopath_gen
:
int vxfs_inotopath(char *mount_point, uint64_t inode_number,
int all, char ***bufp, int *inentries)
int vxfs_inotopath_gen(char *mnt_pt, uint64_t inode_number,
unint32_t inode_generation, int all,
For the vxfs_inotopath
call, the all argument must be "0" to obtain a single path name or "1" to obtain all path names. The mount_point argument specifies the file system mount point. Upon successful return, bufp points to a two-dimensional character pointer containing the path names and nentries contains the number of entries. Each entry of the returned two-dimensional array is MAXPATHLEN in size and must be freed, along with the array itself, by the calling application.
The vxfs_inotopath_gen
call is identical to the vxfs_inotopath
call, except that it uses an additional parameter, inode_generation. The vxfs_inotopath_gen
function returns one or more path names associated with the given inode number, if the inode_generation passed matches the current generation of the inode number. If the generations differ, it returns an error. Specify inode_generation=0 when the generation count is unknown. This is equivalent to using the vxfs_inotopath
call.
The vxfs_inotopath_gen
and vxfs_inotopath
calls are supported only on Version 6 and 7 disk layouts.