DI_DEVLINK_INIT(3DEVINFO) | Device Information Library Functions | DI_DEVLINK_INIT(3DEVINFO) |
di_devlink_init, di_devlink_fini - create and destroy a snapshot of devlinks
cc [ flag... ] file... -ldevinfo [ library... ] #include <libdevinfo.h> di_devlink_handle_t di_devlink_init(const char *name,
uint_t flags);
int di_devlink_fini(di_devlink_handle_t *hdlp);
flags
DI_MAKE_LINK
name
hdlp
System management applications often need to map a "/devices" path to a minor node to a public "/dev" device name. The di_devlink_*() functions provide an efficient way to accomplish this.
The di_devlink_init() function takes a snapshot of devlinks and returns a handle to this snapshot.
The di_devlink_fini() function destroys the devlink snapshot and frees the associated memory.
Upon successful completion, di_devlink_init() returns a handle to a devlink snapshot. Otherwise, DI_LINK_NIL is returned and errno is set to indicate the error.
Upon successful completion, di_devlink_fini() returns 0. Otherwise, -1 is returned and errno is set to indicate the error.
The di_devlink_init() function will fail if:
EINVAL
The di_devlink_init() function with DI_MAKE_LINK can also fail if:
EPERM
The di_devlink_init() function can set errno to any error value that can also be set by malloc(3C), open(2), ioctl(2), or mmap(2).
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Committed |
MT-Level | Safe |
ioctl(2), mmap(2), open(2), malloc(3C), di_devlink_path(3DEVINFO), di_devlink_walk(3DEVINFO), libdevinfo(3LIB), attributes(7)
July 21, 2008 | OmniOS |