1 /* Test 14. unlinking an open file. */
13 char name
[20] = {"TMP14."};
17 _PROTOTYPE(int main
, (void));
18 _PROTOTYPE(void e
, (int n
));
19 _PROTOTYPE(void quit
, (void));
28 system("rm -rf DIR_14; mkdir DIR_14");
32 sprintf(&name
[6], "%x", pid
);
34 for (i
= 0; i
< TRIALS
; i
++) {
35 if ( (fd0
= creat(name
, 0777)) < 0) e(1);
36 if (write(fd0
, name
, 20) != 20) e(2);
37 if (unlink(name
) != 0) e(3);
38 if (close(fd0
) != 0) e(4);
41 fd0
= creat(name
, 0777);
45 return(-1); /* impossible */
51 int err_num
= errno
; /* save errno in case printf clobbers it */
53 printf("Subtest %d, error %d errno=%d ", subtest
, n
, errno
);
54 errno
= err_num
; /* restore errno, just in case */
56 if (errct
++ > MAX_ERROR
) {
57 printf("Too many errors; test aborted\n");
59 system("rm -rf DIR*");
68 system("rm -rf DIR*");
74 printf("%d errors\n", errct
);