di_devlink_dup(3DEVINDevice Information Library Functidi_devlink_dup(3DEVINFO)NAME
di_devlink_dup, di_devlink_free - copy and free a devlink object
SYNOPSIS
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);
PARAMETERS
devlink An opaque handle to a devlink.
DESCRIPTION
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.
RETURN VALUES
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.
ERRORS
The di_devlink_dup() and di_devlink_free() functions will fail if:
EINVAL 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).
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Committed │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOdi_devlink_init(3DEVINFO), di_devlink_path(3DEVINFO),
di_devlink_walk(3DEVINFO), libdevinfo(3LIB), malloc(3C), attributes(5)SunOS 5.11 15 May 2008 di_devlink_dup(3DEVINFO)