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,
                          char ***bufp, int *nentries)

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 later disk layouts.