Lines Matching refs:readwrite
258 * The 'readwrite' argument is interpreted as follows on a successful
265 * Except when 'readwrite' == 0, the caller must explicitly release the
269 __nis_insert_item_mt(void *arg, __nis_hash_table_mt *table, int readwrite) {
286 if (readwrite < 0) {
290 } else if (readwrite > 0) {
337 * readwrite: < 0 Exclusive access
347 __nis_find_item_mt(nis_name name, __nis_hash_table_mt *table, int readwrite,
361 * 'readwrite' == 0 (verify existence only)
370 if (readwrite == 0 ||
373 if (item->writer == 0 && readwrite > 0)
386 if (readwrite < 0) {
392 } else if (readwrite > 0) {
576 * Note that 'readwrite' can assume any integer value, and thus can be
581 __nis_release_item(void *arg, __nis_hash_table_mt *table, int readwrite) {
589 if ((readwrite < 0 && abs(readwrite) > item->writer) ||
590 (readwrite < 0 && item->writer > 0 &&
592 (readwrite > 0 && readwrite > item->readers)) {
598 if (readwrite < 0) {
599 item->writer += readwrite;
605 } else if (readwrite > 0) {
606 item->readers -= readwrite;