Changeset View
Changeset View
Standalone View
Standalone View
usr.bin/lockf/lockf.c
Context not available. | |||||
pid_t child; | pid_t child; | ||||
silent = keep = 0; | silent = keep = 0; | ||||
flags = O_CREAT; | flags = O_CREAT | O_RDONLY; | ||||
waitsec = -1; /* Infinite. */ | waitsec = -1; /* Infinite. */ | ||||
while ((ch = getopt(argc, argv, "sknt:")) != -1) { | while ((ch = getopt(argc, argv, "sknt:w")) != -1) { | ||||
switch (ch) { | switch (ch) { | ||||
case 'k': | case 'k': | ||||
keep = 1; | keep = 1; | ||||
Context not available. | |||||
"invalid timeout \"%s\"", optarg); | "invalid timeout \"%s\"", optarg); | ||||
} | } | ||||
break; | break; | ||||
case 'w': | |||||
flags = (flags & ~O_RDONLY) | O_WRONLY; | |||||
break; | |||||
default: | default: | ||||
usage(); | usage(); | ||||
} | } | ||||
Context not available. | |||||
{ | { | ||||
int fd; | int fd; | ||||
if ((fd = open(name, O_RDONLY|O_EXLOCK|flags, 0666)) == -1) { | if ((fd = open(name, O_EXLOCK|flags, 0666)) == -1) { | ||||
if (errno == EAGAIN || errno == EINTR) | if (errno == EAGAIN || errno == EINTR) | ||||
return (-1); | return (-1); | ||||
else if (errno == ENOENT && (flags & O_CREAT) == 0) | else if (errno == ENOENT && (flags & O_CREAT) == 0) | ||||
Context not available. |