Name | Synopsis | Parameters | Description | Return Values | Errors | Attributes | See Also
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);
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:
The devlink argument is not a valid handle.
The di_devlink_dup() function can set errno to any error value that can also be set by malloc(3C).
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE |
ATTRIBUTE VALUE |
---|---|
Interface Stability |
Committed |
MT-Level |
Safe |
di_devlink_init(3DEVINFO), di_devlink_path(3DEVINFO), di_devlink_walk(3DEVINFO), libdevinfo(3LIB), malloc(3C), attributes(5)
Name | Synopsis | Parameters | Description | Return Values | Errors | Attributes | See Also