xref: /minix3/minix/tests/test14.c (revision 433d6423c39e34ec4b79c950597bb2d236f886be)
1 /* Test 14. unlinking an open file. */
2 
3 #include <sys/types.h>
4 #include <errno.h>
5 #include <fcntl.h>
6 #include <stdlib.h>
7 #include <unistd.h>
8 #include <stdio.h>
9 
10 #define TRIALS 100
11 int max_error = 4;
12 #include "common.h"
13 
14 
15 char name[20] = {"TMP14."};
16 int subtest = 1;
17 
18 
19 int main(void);
20 void quit(void);
21 
main()22 int main()
23 {
24   int fd0, i, pid;
25 
26   start(14);
27 
28   pid = getpid();
29   sprintf(&name[6], "%x", pid);
30 
31   for (i = 0; i < TRIALS; i++) {
32 	if ( (fd0 = creat(name, 0777)) < 0) e(1);
33 	if (write(fd0, name, 20) != 20) e(2);
34 	if (unlink(name) != 0) e(3);
35 	if (close(fd0) != 0) e(4);
36   }
37 
38   fd0 = creat(name, 0777);
39   write(fd0, name, 20);
40   unlink(name);
41   quit();
42   return(-1);			/* impossible */
43 }
44 
45