diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-08-21 12:23:01 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-08-21 12:24:06 +0200 |
commit | e14ffcf8e092758bc21d0d5c795b58ea0b1773f2 (patch) | |
tree | 3359d1e5939982a9695330c2dbf74e1609f28728 /difftool/compare_files_sqfs.c | |
parent | a7d22b83cf70eb500f52edb625e9c719a35b0134 (diff) |
Merge functionality of file on disk and file in sqfs compare functions
Moving towards unified sqfs vs sqfs, sqfs vs dir, dir vs sqfs
comparisions.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'difftool/compare_files_sqfs.c')
-rw-r--r-- | difftool/compare_files_sqfs.c | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/difftool/compare_files_sqfs.c b/difftool/compare_files_sqfs.c deleted file mode 100644 index 32b97b1..0000000 --- a/difftool/compare_files_sqfs.c +++ /dev/null @@ -1,54 +0,0 @@ -/* SPDX-License-Identifier: GPL-3.0-or-later */ -/* - * compare_file_sfqs.c - * - * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at> - */ -#include "difftool.h" - -static unsigned char a_buf[MAX_WINDOW_SIZE]; -static unsigned char b_buf[MAX_WINDOW_SIZE]; - -int compare_files(file_info_t *a, file_info_t *b, const char *path) -{ - uint64_t offset, diff; - ssize_t ret; - - if (a->size != b->size) - goto out_different; - - if (compare_flags & COMPARE_NO_CONTENTS) - return 0; - - for (offset = 0; offset < a->size; offset += diff) { - diff = a->size - offset; - - if (diff > MAX_WINDOW_SIZE) - diff = MAX_WINDOW_SIZE; - - ret = data_reader_read(sqfs_a.data, a, offset, a_buf, diff); - if (ret < 0 || (size_t)ret < diff) { - fprintf(stderr, "Failed to read %s from %s\n", - path, first_path); - return -1; - } - - ret = data_reader_read(sqfs_b.data, b, offset, b_buf, diff); - if (ret < 0 || (size_t)ret < diff) { - fprintf(stderr, "Failed to read %s from %s\n", - path, second_path); - return -1; - } - - if (memcmp(a_buf, b_buf, diff) != 0) - goto out_different; - } - - return 0; -out_different: - if (compare_flags & COMPARE_EXTRACT_FILES) { - if (extract_files(a, b, path)) - return -1; - } - return 1; -} |