Lines Matching refs:lock

234      db->lock = &lockp->lockinfo;  in osa_adb_init_db()
235 db->lock->refcnt++; in osa_adb_init_db()
250 if (db->lock->refcnt == 0) { in osa_adb_fini_db()
254 db->lock->refcnt--; in osa_adb_fini_db()
257 if (db->lock->refcnt == 0) { in osa_adb_fini_db()
265 if (db->lock->lockmode != KRB5_DB_LOCKMODE_PERMANENT) in osa_adb_fini_db()
266 (void) fclose(db->lock->lockfile); in osa_adb_fini_db()
267 db->lock->lockfile = NULL; in osa_adb_fini_db()
268 krb5_free_context(db->lock->context); in osa_adb_fini_db()
281 if (db->lock->lockmode >= mode) { in osa_adb_get_lock()
283 db->lock->lockcnt++; in osa_adb_get_lock()
303 if ((ret = krb5_lock_file(db->lock->context, in osa_adb_get_lock()
304 fileno(db->lock->lockfile), in osa_adb_get_lock()
329 if (access(db->lock->filename, F_OK) < 0) { in osa_adb_get_lock()
330 (void) krb5_lock_file(db->lock->context, in osa_adb_get_lock()
331 fileno(db->lock->lockfile), in osa_adb_get_lock()
339 if (unlink(db->lock->filename) < 0) { in osa_adb_get_lock()
344 (void) krb5_lock_file(db->lock->context, in osa_adb_get_lock()
345 fileno(db->lock->lockfile), in osa_adb_get_lock()
355 (void) fclose(db->lock->lockfile); in osa_adb_get_lock()
358 db->lock->lockmode = mode; in osa_adb_get_lock()
359 db->lock->lockcnt++; in osa_adb_get_lock()
367 if (!db->lock->lockcnt) /* lock already unlocked */ in osa_adb_release_lock()
370 if (--db->lock->lockcnt == 0) { in osa_adb_release_lock()
371 if (db->lock->lockmode == KRB5_DB_LOCKMODE_PERMANENT) { in osa_adb_release_lock()
373 fd = THREEPARAMOPEN(db->lock->filename,O_RDWR | O_CREAT | O_EXCL, in osa_adb_release_lock()
375 if ((db->lock->lockfile = fdopen(fd, "w+F")) == NULL) in osa_adb_release_lock()
377 } else if ((ret = krb5_lock_file(db->lock->context, in osa_adb_release_lock()
378 fileno(db->lock->lockfile), in osa_adb_release_lock()
382 db->lock->lockmode = 0; in osa_adb_release_lock()