Content-type: text/html
cc [ flag... ] file... -ldevinfo [ library... ] #include <libdevinfo.h>
int di_walk_lnode(di_node_t root, uint_t flag, void *arg, int (*lnode_callback)(di_lnode_t link, void *arg));
root The handle to the root node of the subtree to visit.
flag Specify 0. Reserved for future use.
arg A pointer to caller-specific data.
lnode_callback The caller-supplied callback function.
The di_walk_lnode() function visits all nodes in the subtree rooted at root. For each node found, the caller-supplied function lnode_callback() is invoked for each lnode associated with that node. The return value of lnode_callback() specifies subsequent walking behavior where that node is the specified endpoint of the link.
Upon successful completion, di_walk_lnode() returns 0. Otherwise, -1 is returned and errno is set to indicate the error.
The callback function lnode_callback() can return one of the following:
DI_WALK_CONTINUE Continue walking.
DI_WALK_TERMINATE Terminate the walk immediately.
The di_walk_lnode() function will fail if:
EINVAL An argument is invalid.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Evolving |
MT-Level | Safe |
di_init(3DEVINFO), libdevinfo(3LIB), attributes(5)