| SPECIFICDATA(9) | Kernel Developer's Manual | SPECIFICDATA(9) |
specificdata,
specificdata_domain_create,
specificdata_domain_delete,
specificdata_key_create,
specificdata_key_delete,
specificdata_init,
specificdata_fini,
specificdata_getspecific,
specificdata_getspecific_unlocked,
specificdata_setspecific,
specificdata_setspecific_nowait —
#include <sys/specificdata.h>
specificdata_domain_t
specificdata_domain_create();
void
specificdata_domain_delete(specificdata_domain_t
sd);
int
specificdata_key_create(specificdata_domain_t
sd, specificdata_key_t
*keyp,
specificdata_dtor_t
dtor);
void
specificdata_key_delete(specificdata_domain_t
sd, specificdata_key_t
key);
int
specificdata_init(specificdata_domain_t
sd,
specificdata_reference
*ref);
void
specificdata_fini(specificdata_domain_t
sd,
specificdata_reference
*ref);
void *
specificdata_getspecific(specificdata_domain_t
sd,
specificdata_reference
*ref, specificdata_key_t
key);
void *
specificdata_getspecific_unlocked(specificdata_domain_t
sd,
specificdata_reference
*ref, specificdata_key_t
key);
void
specificdata_setspecific(specificdata_domain_t
sd,
specificdata_reference
*ref, specificdata_key_t
key, void
*data);
int
specificdata_setspecific_nowait(specificdata_domain_t
sd,
specificdata_reference
*ref, specificdata_key_t
key, void
*data);
specificdata facility provides a mechanism for
storing arbitrary data, identified by an index key, within containers which
exist within the objects associated with a particular domain.
specificdata_domain_create()specificdata_domain_delete(sd)specificdata_key_create(sd,
keyp, dtor)NULL,
it specifies a destructor which will be called when a datum associated
with the specified key is deleted from a container within the
sd. The unique identifier of the created key is
returned in keyp.specificdata_key_delete(sd,
key)specificdata_init(sd,
ref)specificdata_fini(sd,
ref)specificdata_getspecific(sd,
ref, key)specificdata_getspecific_unlocked(sd,
ref, key)setspecific() call or by destroying the
container.specificdata_setspecific(sd,
ref, key,
data)specificdata_setspecific_nowait(sd,
ref, key,
data)specificdata functionality is implemented in
sys/kern/subr_specificdata.c.
The header file
<sys/sys/specificdata.h>
describes the public interface.
specificdata subsystem first appeared in
NetBSD 4.0.
specificdata subsystem was written by
Jason Thorpe
<thorpej@NetBSD.org>.
This manual page was written by Paul Goyette
<pgoyette@NetBSD.org>.
| June 16, 2018 | NetBSD 9.4 |