summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/.cvsignore4
-rw-r--r--test/Makefile4
-rw-r--r--test/skodic.c6
-rw-r--r--test/vfork.c10
4 files changed, 20 insertions, 4 deletions
diff --git a/test/.cvsignore b/test/.cvsignore
new file mode 100644
index 0000000..5c0ba77
--- /dev/null
+++ b/test/.cvsignore
@@ -0,0 +1,4 @@
+fork
+sig
+skodic
+vfork
diff --git a/test/Makefile b/test/Makefile
index ddaa404..9d6a29e 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -2,8 +2,8 @@
# $Id$
#
-all: fork sig skodic
+all: vfork fork sig skodic
clean distclean:
- rm -f fork sig *.o core
+ rm -f vfork fork sig *.o core
diff --git a/test/skodic.c b/test/skodic.c
index 4e65d5d..6528ed8 100644
--- a/test/skodic.c
+++ b/test/skodic.c
@@ -15,7 +15,8 @@
void
main(void)
{
- char *c = 0x94000000;
+ char *c = (char*)0x94000000;
+ int fd;
open( "/tmp/delme", O_RDWR );
mmap( c, 4096, PROT_READ | PROT_WRITE, MAP_FIXED | MAP_SHARED, 3, 0 );
*c = 0;
@@ -26,5 +27,6 @@ main(void)
}
} else
while (1)
- open( c, 0 );
+ if ((fd=open( c, 0 ))!=-1)
+ close(fd);
}
diff --git a/test/vfork.c b/test/vfork.c
new file mode 100644
index 0000000..2c2d603
--- /dev/null
+++ b/test/vfork.c
@@ -0,0 +1,10 @@
+main()
+{
+ if (vfork() == 0)
+ write(1, "child\n", 6);
+ else {
+ wait(0);
+ write(1, "parent\n", 7);
+ }
+ exit(0);
+}