Lines Matching +full:sync +full:- +full:1

1 /* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2 /* tests/unlockiter.c - test program for unlocked iteration */
57 /* Helper function for cb(): read a sync byte (with possible timeout), then
58 * write a sync byte. */
67 FD_SET(arg->inpipe, &rset); in syncpair_rw()
71 printf("cb: waiting for %s sync pair\n", name); in syncpair_rw()
72 nfds = select(arg->inpipe + 1, &rset, in syncpair_rw()
75 return -1; in syncpair_rw()
78 return -1; in syncpair_rw()
80 if (read(arg->inpipe, cp, 1) < 0) in syncpair_rw()
81 return -1; in syncpair_rw()
82 printf("cb: writing %s sync pair\n", name); in syncpair_rw()
83 if (write(arg->outpipe, cp, 1) < 0) in syncpair_rw()
84 return -1; in syncpair_rw()
88 /* On the first iteration only, receive and send sync bytes to the locking
96 if (arg->done) in cb()
100 com_err("cb", errno, "first sync pair"); in cb()
103 if (syncpair_rw("second", arg, &c, arg->timeout) < 0) { in cb()
104 com_err("cb", errno, "second sync pair"); in cb()
107 printf("cb: waiting for final sync byte\n"); in cb()
108 if (read(arg->inpipe, &c, 1) < 0) { in cb()
109 com_err("cb", errno, "final sync byte"); in cb()
112 arg->done = 1; in cb()
144 exit(1); in iterator()
149 /* Helper function for locker(): write, then receive a sync byte. */
153 printf("locker: writing %s sync pair\n", name); in syncpair_wr()
154 if (write(outpipe, cp, 1) < 0) in syncpair_wr()
155 return -1; in syncpair_wr()
156 printf("locker: waiting for %s sync pair\n", name); in syncpair_wr()
157 if (read(inpipe, cp, 1) < 0) in syncpair_wr()
158 return -1; in syncpair_wr()
195 printf("locker: writing final sync byte\n"); in locker()
196 if (write(outpipe, &c, 1) < 0) { in locker()
212 fprintf(stderr, "usage: %s [-lu] [-t timeout]\n", prog); in usage()
213 exit(1); in usage()
226 cb_arg.timeout = 1; in main()
228 while ((c = getopt(argc, argv, "lt:u")) != -1) { in main()
245 exit(1); in main()
249 exit(1); in main()
252 cb_arg.outpipe = pipe_to_locker[1]; in main()
255 case -1: in main()
257 exit(1); in main()
260 locker(pipe_to_locker[0], pipe_to_iterator[1], db_args); in main()
264 exit(1); in main()
267 exit(1); in main()
270 exit(1); in main()
272 exit(1); in main()