diff options
author | Simon Glass | 2021-11-12 12:28:04 -0700 |
---|---|---|
committer | Simon Glass | 2022-01-26 08:50:43 -0700 |
commit | e291a5c9a2acff16ba3b976198bba7da9828c9e9 (patch) | |
tree | c41e834a1be7d72454de82bcb7dc8dc8c7301609 /tools/fit_image.c | |
parent | 195f7893da9608931cfee63bc2f7a6aaa5169049 (diff) |
tools: Move copyfile() into a common file
This function is useful in other places. Move it to a common file.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools/fit_image.c')
-rw-r--r-- | tools/fit_image.c | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/tools/fit_image.c b/tools/fit_image.c index 9ac525623bc..0e31f7dca6e 100644 --- a/tools/fit_image.c +++ b/tools/fit_image.c @@ -656,62 +656,6 @@ err: return ret; } -static int copyfile(const char *src, const char *dst) -{ - int fd_src = -1, fd_dst = -1; - void *buf = NULL; - ssize_t size; - size_t count; - int ret = -1; - - fd_src = open(src, O_RDONLY); - if (fd_src < 0) { - printf("Can't open file %s (%s)\n", src, strerror(errno)); - goto out; - } - - fd_dst = open(dst, O_WRONLY | O_CREAT, 0666); - if (fd_dst < 0) { - printf("Can't open file %s (%s)\n", dst, strerror(errno)); - goto out; - } - - buf = calloc(1, 512); - if (!buf) { - printf("Can't allocate buffer to copy file\n"); - goto out; - } - - while (1) { - size = read(fd_src, buf, 512); - if (size < 0) { - printf("Can't read file %s\n", src); - goto out; - } - if (!size) - break; - - count = size; - size = write(fd_dst, buf, count); - if (size < 0) { - printf("Can't write file %s\n", dst); - goto out; - } - } - - ret = 0; - - out: - if (fd_src >= 0) - close(fd_src); - if (fd_dst >= 0) - close(fd_dst); - if (buf) - free(buf); - - return ret; -} - /** * fit_handle_file - main FIT file processing function * |