LOCK_SH
(void) flock(fileno(df), LOCK_SH);
# ifndef LOCK_SH
locktype = LOCK_SH;
(void) lockfile(dfd, map->map_file, ".dir", LOCK_SH);
if (!lockfile(fd, buf, NULL, mode == O_RDONLY ? LOCK_SH : LOCK_EX))
(void) lockfile(fd, buf, ".db", LOCK_SH);
"", LOCK_SH|LOCK_NB);
LOCK_SH|LOCK_NB);
LOCK_SH|LOCK_NB);
#ifndef LOCK_SH
lock_flag = LOCK_SH;
case LOCK_SH:
acq_flock(fd, is_exclusive ? LOCK_EX : LOCK_SH);
VERIFY3S(flock(afd1.lf_fd, LOCK_SH), ==, 0);
VERIFY3S(flock(afd2.lf_fd, LOCK_SH), ==, 0);
VERIFY3S(flock(afd3.lf_fd, LOCK_SH), ==, 0);
VERIFY3S(flock(afd3.lf_fd, LOCK_SH), ==, 0);
VERIFY3S(flock(afd1.lf_fd, LOCK_SH), ==, 0);
VERIFY3S(flock(afd2.lf_fd, LOCK_SH), ==, 0);
case LOCK_SH: