DI_WALK_NODE(3DEVINFO) | Device Information Library Functions | DI_WALK_NODE(3DEVINFO) |
di_walk_node - traverse libdevinfo device nodes
cc [ flag... ] file... -ldevinfo [ library... ] #include <libdevinfo.h> int di_walk_node(di_node_t root, uint_t flag, void *arg,
int (*node_callback)(di_node_t node, void *arg));
The di_walk_node() function visits all nodes in the subtree rooted at root. For each node found, the caller-supplied function node_callback() is invoked. The return value of node_callback() specifies subsequent walking behavior.
arg
flag
node
root
Upon successful completion, di_walk_node() returns 0. Otherwise, -1 is returned and errno is set to indicate the error.
The node_callback() function can return one of the following:
DI_WALK_CONTINUE
DI_WALK_PRUNESIB
DI_WALK_PRUNECHILD
DI_WALK_TERMINATE
The di_walk_node() function will fail if:
EINVAL
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Committed |
MT-Level | Safe |
di_init(3DEVINFO), libdevinfo(3LIB), attributes(7)
Writing Device Drivers
January 16, 2009 | OmniOS |