cfglock
static int cfglock(uintptr_t, uint_t, int, const mdb_arg_t *);
static int cfglock(uintptr_t, uint_t, int, const mdb_arg_t *);
"display cfglock structure", cfglock },
nscd_cfg_lock_t *cfglock)
if (cfglock == NULL)
if (cfglock->global != NULL) {
(lockfunc)(cfglock->global);
if (cfglock->alldb != NULL)
(lockfunc)(cfglock->alldb);
if (cfglock->nswdb != NULL)
(lockfunc)(cfglock->nswdb);
nscd_cfg_lock_t *cfglock)
if (cfglock == NULL)
if (cfglock->global != NULL) {
(void) rw_unlock(cfglock->global);
free(cfglock);
if (cfglock->nswdb != NULL)
(void) rw_unlock(cfglock->nswdb);
if (cfglock->alldb != NULL)
(void) rw_unlock(cfglock->alldb);
free(cfglock);
nscd_cfg_lock_t **cfglock)
if (cfglock != NULL) {
*cfglock = calloc(1, sizeof (nscd_cfg_lock_t));
if (*cfglock == NULL)
if (cfglock != NULL)
(*cfglock)->global = nscd_cfg_global_rwlock;
if (cfglock != NULL)
(*cfglock)->alldb = nscd_cfg_nsw_alldb_rwlock;
if (cfglock != NULL) {
(*cfglock)->nswdb =
(*cfglock)->alldb = nscd_cfg_nsw_alldb_rwlock;
if (cfglock != NULL)
_nscd_cfg_lock(is_read, *cfglock);