DI_DEVFS_PATH(3DEVINFO) Device Information Library Functions
NAME
di_devfs_path, di_devfs_minor_path, di_path_devfs_path,
di_path_client_devfs_path, di_devfs_path_free - generate and free path
names
SYNOPSIS
cc [
flag... ]
file...
-ldevinfo [
library... ]
#include <libdevinfo.h>
char *di_devfs_path(
di_node_t node);
char *di_devfs_minor_path(
di_minor_t minor);
char *di_path_devfs_path(
di_path_t path);
char *di_path_client_devfs_path(
di_path_t path);
void di_devfs_path_free(
char *path_buf);
PARAMETERS
node The handle to a device node in a
di_init(3DEVINFO) snapshot.
minor The handle to a device minor node in a snapshot.
path The handle to a device path node in a snapshot.
path_buf A pointer returned by
di_devfs_path(),
di_devfs_minor_path(),
di_path_devfs_path(), or
di_path_client_devfs_path().
DESCRIPTION
The
di_devfs_path() function generates the physical path of the device
node specified by
node.
The
di_devfs_minor_path() function generates the physical path of the
device minor node specified by
minor.
The
di_path_devfs_path() function generates the pHCI physical path to the
device associated with the specified path node. The returned string is
identical to the
di_devfs_path() for the device had the device not been
supported by multipath.
The
di_path_client_devfs_path() function generates the vHCI physical path
of the multipath client device node associated with the device identity
of the specified path node. The returned string is identical to the
di_devfs_path() of the multipath client device node.
The
di_devfs_path_free() function frees memory that was allocated to
store the path returned by
di_devfs_path(),
di_devfs_minor_path(),
di_path_devfs_path(), and
di_path_client_devfs_path(). The caller is
responsible for freeing this memory by calling
di_devfs_path_free().
RETURN VALUES
Upon successful completion, the
di_devfs_path(),
di_devfs_minor_path(),
di_path_devfs_path(), and
di_path_client_devfs_path() functions return a
pointer to the string containing the path to a device node, a device
minor node, or a device path node, respectively. Otherwise, they return
NULL and
errno is set to indicate the error. For a non-NULL return, the
path will not have a "/
devices" prefix.
ERRORS
The
di_devfs_path(),
di_devfs_minor_path(),
di_path_devfs_path(), and
di_path_client_devfs_path() functions will fail if:
EINVAL The
node,
minor, or
path argument is not a valid handle.
The
di_devfs_path(),
di_devfs_minor_path(),
di_path_devfs_path(), and
di_path_client_devfs_path() functions can also return any error value
returned by
malloc(3C).
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Committed |
+--------------------+-----------------+
|MT-Level | Safe |
+--------------------+-----------------+
SEE ALSO
malloc(3C),
di_init(3DEVINFO),
libdevinfo(3LIB),
attributes(7) Writing Device Drivers May 15, 2008
DI_DEVFS_PATH(3DEVINFO)