summaryrefslogtreecommitdiff
path: root/source3/tests/fcntl_lock.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>1999-12-13 13:27:58 +0000
committerAndrew Tridgell <tridge@samba.org>1999-12-13 13:27:58 +0000
commit3db52feb1f3b2c07ce0b06ad4a7099fa6efe3fc7 (patch)
tree866dd15416c3d8554bb207709f433a87ad0c012d /source3/tests/fcntl_lock.c
parentf6276724bafdb6145c0c7b565172d80cb04516ea (diff)
downloadsamba-3db52feb1f3b2c07ce0b06ad4a7099fa6efe3fc7.tar.gz
samba-3db52feb1f3b2c07ce0b06ad4a7099fa6efe3fc7.tar.bz2
samba-3db52feb1f3b2c07ce0b06ad4a7099fa6efe3fc7.zip
first pass at updating head branch to be to be the same as the SAMBA_2_0 branch
(This used to be commit 453a822a76780063dff23526c35408866d0c0154)
Diffstat (limited to 'source3/tests/fcntl_lock.c')
-rw-r--r--source3/tests/fcntl_lock.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/source3/tests/fcntl_lock.c b/source3/tests/fcntl_lock.c
index a90e00aa00..32aecb8743 100644
--- a/source3/tests/fcntl_lock.c
+++ b/source3/tests/fcntl_lock.c
@@ -1,5 +1,9 @@
/* test whether fcntl locking works on this system */
+#if defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
@@ -33,7 +37,8 @@ static int sys_waitpid(pid_t pid,int *status,int options)
int main(int argc, char *argv[])
{
struct flock lock;
- int fd, pid, ret, status=1;
+ int fd, ret, status=1;
+ pid_t pid;
if (!(pid=fork())) {
sleep(2);
@@ -75,5 +80,15 @@ int main(int argc, char *argv[])
unlink(DATA);
+#if defined(WIFEXITED) && defined(WEXITSTATUS)
+ if(WIFEXITED(status)) {
+ status = WEXITSTATUS(status);
+ } else {
+ status = 1;
+ }
+#else /* defined(WIFEXITED) && defined(WEXITSTATUS) */
+ status = (status == 0) ? 0 : 1;
+#endif /* defined(WIFEXITED) && defined(WEXITSTATUS) */
+
exit(status);
}