DI_LINK_NEXT_BY_NODE(3DEVINFO) Device Information Library Functions DI_LINK_NEXT_BY_NODE(3DEVINFO)

di_link_next_by_node, di_link_next_by_lnode - libdevinfo link traversal functions

cc [ flag... ] file... -ldevinfo [ library... ]
#include <libdevinfo.h>
di_link_t di_link_next_by_node(di_lnode_t node, di_link_t link,
     uint_t endpoint);

di_link_t di_link_next_by_lnode(di_node_t lnode, di_link_t link,
     uint_t endpoint);

link
The handle to the current the link or DI_LINK_NIL.

endpoint

Specify which endpoint of the link the node or lnode should correspond to, either DI_LINK_TGT or DI_LINK_SRC.

node

The device node with which the link is associated.

lnode

The lnode with which the link is associated.

The di_link_next_by_node() function returns a handle to the next link that has the same endpoint node as link. If link is DI_LINK_NIL, a handle is returned to the first link whose endpoint specified by endpoint matches the node specified by node.

The di_link_next_by_lnode() function returns a handle to the next link that has the same endpoint lnode as link. If link is DI_LINK_NIL, a handle is returned to the first link whose endpoint specified by endpoint matches the lnode specified by lnode.

Upon successful completion, a handle to the next link is returned. Otherwise, DI_LINK_NIL is returned and errno is set to indicate the error.

The di_link_next_by_node() and di_link_next_by_lnode() functions will fail if:

EINVAL

An argument is invalid.

ENXIO

The end of the link list has been reached.

The di_link_next_by_node() function will fail if:

ENOTSUP

Device usage information is not available in snapshot.

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
Interface Stability Evolving
MT-Level Safe

di_init(3DEVINFO), libdevinfo(3LIB), attributes(7)

July 12, 2004 OmniOS