diff options
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; -} |