size_t buff_size = 64 * 1024;
char *buff, *p;
const char *msg = sparse ? "sparse" : "non-sparse";
- int fd;
+ FILE *f;
buff = malloc(buff_size);
assert(buff != NULL);
/* Test the entry on disk. */
assert(0 == stat(archive_entry_pathname(ae), &st));
assertEqualInt(st.st_size, 8 * buff_size);
- fd = open(archive_entry_pathname(ae), O_RDONLY | O_BINARY);
- if (!assert(fd >= 0))
+ f = fopen(archive_entry_pathname(ae), "rb");
+ if (!assert(f != NULL))
return;
/* Check first block. */
- assertEqualInt(buff_size, read(fd, buff, buff_size));
+ assertEqualInt(buff_size, fread(buff, 1, buff_size, f));
failure("%s", msg);
assertEqualMem(buff, data, sizeof(data));
for (p = buff + sizeof(data); p < buff + buff_size; ++p) {
}
/* Check second block. */
- assertEqualInt(buff_size, read(fd, buff, buff_size));
+ assertEqualInt(buff_size, fread(buff, 1, buff_size, f));
for (p = buff; p < buff + buff_size; ++p) {
failure("offset: %d, %s", (int)(p - buff), msg);
if (p == buff + buff_size / 2 - 3) {
}
/* Check third block. */
- assertEqualInt(buff_size, read(fd, buff, buff_size));
+ assertEqualInt(buff_size, fread(buff, 1, buff_size, f));
for (p = buff; p < buff + buff_size - sizeof(data); ++p) {
failure("offset: %d, %s", (int)(p - buff), msg);
if (!assertEqualInt(0, *p))
/* XXX more XXX */
- assertEqualInt(0, close(fd));
+ assertEqualInt(0, fclose(f));
archive_entry_free(ae);
free(buff);
}
size_t buff_size = 64 * 1024;
char *buff, *p;
const char *msg = sparse ? "sparse" : "non-sparse";
- int fd;
+ FILE *f;
buff = malloc(buff_size);
assert(buff != NULL);
/* Test the entry on disk. */
assert(0 == stat(archive_entry_pathname(ae), &st));
assertEqualInt(st.st_size, 8 * buff_size);
- fd = open(archive_entry_pathname(ae), O_RDONLY | O_BINARY);
- if (!assert(fd >= 0))
+ f = fopen(archive_entry_pathname(ae), "rb");
+ if (!assert(f != NULL))
return;
/* Check 100-byte gap at beginning */
- assertEqualInt(100, read(fd, buff, 100));
+ assertEqualInt(100, fread(buff, 1, 100, f));
failure("%s", msg);
for (p = buff; p < buff + 100; ++p) {
failure("offset: %d, %s", (int)(p - buff), msg);
}
/* Check first block. */
- assertEqualInt(buff_size, read(fd, buff, buff_size));
+ assertEqualInt(buff_size, fread(buff, 1, buff_size, f));
failure("%s", msg);
assertEqualMem(buff, data, sizeof(data));
for (p = buff + sizeof(data); p < buff + buff_size; ++p) {
}
/* Check 100-byte gap */
- assertEqualInt(100, read(fd, buff, 100));
+ assertEqualInt(100, fread(buff, 1, 100, f));
failure("%s", msg);
for (p = buff; p < buff + 100; ++p) {
failure("offset: %d, %s", (int)(p - buff), msg);
}
/* Check second block. */
- assertEqualInt(buff_size, read(fd, buff, buff_size));
+ assertEqualInt(buff_size, fread(buff, 1, buff_size, f));
for (p = buff; p < buff + buff_size; ++p) {
failure("offset: %d, %s", (int)(p - buff), msg);
if (p == buff + buff_size / 2 - 3) {
}
/* Check 100-byte gap */
- assertEqualInt(100, read(fd, buff, 100));
+ assertEqualInt(100, fread(buff, 1, 100, f));
failure("%s", msg);
for (p = buff; p < buff + 100; ++p) {
failure("offset: %d, %s", (int)(p - buff), msg);
}
/* Check third block. */
- assertEqualInt(buff_size, read(fd, buff, buff_size));
+ assertEqualInt(buff_size, fread(buff, 1, buff_size, f));
for (p = buff; p < buff + buff_size - sizeof(data); ++p) {
failure("offset: %d, %s", (int)(p - buff), msg);
if (!assertEqualInt(0, *p))
assertEqualMem(buff + buff_size - sizeof(data), data, sizeof(data));
/* Check another block size beyond last we wrote. */
- assertEqualInt(buff_size, read(fd, buff, buff_size));
+ assertEqualInt(buff_size, fread(buff, 1, buff_size, f));
failure("%s", msg);
for (p = buff; p < buff + buff_size; ++p) {
failure("offset: %d, %s", (int)(p - buff), msg);
/* XXX more XXX */
- assertEqualInt(0, close(fd));
+ assertEqualInt(0, fclose(f));
free(buff);
archive_entry_free(ae);
}