- fprintf(stderr, "unlinking\n");
- rc = unlink(argv[1]);
- if (rc ) {
- fprintf(stderr, "open %s\n", strerror(errno));
- exit(1);
+ fprintf(stderr, "resetting fd offset\n");
+ rc = lseek(fd, 0, SEEK_SET);
+ if (rc) {
+ fprintf(stderr, "seek %s\n", strerror(errno));
+ exit(1);
+ }
+
+ if (access(fname, F_OK) == 0) {
+ fprintf(stderr, "%s still exists\n", fname);
+ exit(1);
+ }
+
+ fprintf(stderr, "fstat...\n");
+ rc = fstat(fd, &st);
+ if (rc) {
+ fprintf(stderr, "fstat (unlink) %s\n", strerror(errno));
+ exit(1);