DI_DEVLINK_DUP(3DEVINFO) | Device Information Library Functions | DI_DEVLINK_DUP(3DEVINFO) |
di_devlink_dup, di_devlink_free - copy and free a devlink object
cc [ flag... ] file... -ldevinfo [ library... ] #include <libdevinfo.h> di_devlink_t di_devlink_dup(di_devlink_t devlink);
int di_devlink_free(di_devlink_t devlink);
devlink
Typically, a di_devlink_t object is only accessible from within the scope of the di_devlink_walk(3DEVINFO) callback function. The di_devlink_dup() function allows the callback function implementation to make a duplicate copy of the di_devlink_t object. The duplicate copy is valid and accessible until di_devlink_free() is called.
The di_devlink_dup() function returns a copy of a devlink object. The di_devlink_free() function frees this copy.
Upon successful completion, di_devlink_dup() returns a copy of the devlink object passed in. Otherwise, NULL is returned and errno is set to indicate the error.
Upon successful completion, di_devlink_free() returns 0. Otherwise, -1 is returned and errno is set to indicate the error.
The di_devlink_dup() and di_devlink_free() functions will fail if:
EINVAL
The di_devlink_dup() function can set errno to any error value that can also be set by malloc(3C).
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Committed |
MT-Level | Safe |
malloc(3C), di_devlink_init(3DEVINFO), di_devlink_path(3DEVINFO), di_devlink_walk(3DEVINFO), libdevinfo(3LIB), attributes(7)
May 15, 2008 | OmniOS |