diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2020-09-04 19:26:31 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2020-09-16 09:34:35 +0200 |
commit | 0a0cbefc6ebb6174aad3e6f0b8a6dea87aed49da (patch) | |
tree | 7b1a69382f7480e442620b6176c1673abcf81b3c /lib/tar/write_retry.c | |
parent | 4b994ac359757098ebc09263fff9e2290a58de71 (diff) |
Remodel file extraction tools to use libfstream
This commit rewrites the libtar write paths to use libfstream insead of
a FILE pointer. Also, the libcommon file extraction function is remodeled
to use libfstream.
In accordance, rdsquashfs, sqfs2tar and sqfsdiff have some minor
adjustments made to work with the ported libtar and libcommon.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'lib/tar/write_retry.c')
-rw-r--r-- | lib/tar/write_retry.c | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/lib/tar/write_retry.c b/lib/tar/write_retry.c deleted file mode 100644 index f4f3166..0000000 --- a/lib/tar/write_retry.c +++ /dev/null @@ -1,35 +0,0 @@ -/* SPDX-License-Identifier: LGPL-3.0-or-later */ -/* - * write_retry.c - * - * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at> - */ -#include "config.h" - -#include <errno.h> -#include <stdio.h> - -#include "tar.h" - -int write_retry(const char *errstr, FILE *fp, const void *data, size_t size) -{ - size_t ret; - - while (size > 0) { - if (feof(fp)) { - fprintf(stderr, "%s: write truncated\n", errstr); - return -1; - } - - if (ferror(fp)) { - fprintf(stderr, "%s: error writing to file\n", errstr); - return -1; - } - - ret = fwrite(data, 1, size, fp); - data = (const char *)data + ret; - size -= ret; - } - - return 0; -} |