diff --git a/.gitignore b/.gitignore index da362d0..d1cef6a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /exfatprogs-1.1.2.tar.xz /exfatprogs-1.1.3.tar.xz +/exfatprogs-1.2.0.tar.xz diff --git a/0001-fsck-fix-memory-leak.patch b/0001-fsck-fix-memory-leak.patch deleted file mode 100644 index 07c9044..0000000 --- a/0001-fsck-fix-memory-leak.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/fsck/fsck.c 2021-11-17 10:13:55.729267514 +0100 -+++ b/fsck/fsck.c 2022-05-10 12:19:36.397415101 +0200 -@@ -796,6 +796,7 @@ - if (exfat_read(exfat->blk_dev->dev_fd, boot_sect, - sizeof(*boot_sect), 0) != (ssize_t)sizeof(*boot_sect)) { - exfat_err("failed to read Main boot sector\n"); -+ free(boot_sect); - return -EIO; - } - diff --git a/0002.patch b/0002.patch deleted file mode 100644 index 0e75caf..0000000 --- a/0002.patch +++ /dev/null @@ -1,83 +0,0 @@ -From 88a334ac2f98affcc526e861c2ed1b8bd2c34b3c Mon Sep 17 00:00:00 2001 -From: Pavel Reichl -Date: Wed, 11 May 2022 23:20:43 +0200 -Subject: [PATCH] exfatprogs: fix some minor code issues - -* Add checking of function return value -* Fix potentially overflowing expression - -Signed-off-by: Pavel Reichl ---- - fsck/de_iter.c | 9 ++++++--- - lib/libexfat.c | 13 ++++++++++--- - 2 files changed, 16 insertions(+), 6 deletions(-) - -diff --git a/fsck/de_iter.c b/fsck/de_iter.c -index bc95c49..587b027 100644 ---- a/fsck/de_iter.c -+++ b/fsck/de_iter.c -@@ -82,6 +82,9 @@ static int read_ahead_next_blocks(struct exfat_de_iter *iter, - offset >= iter->ra_begin_offset) { - ret = get_next_clus(exfat, iter->parent, - p_clus, &ra_p_clus); -+ if (ret) -+ return ret; -+ - if (ra_p_clus == EXFAT_EOF_CLUSTER) - return -EIO; - -@@ -172,10 +175,10 @@ static ssize_t read_block(struct exfat_de_iter *iter, unsigned int block) - ret = get_next_clus(exfat, iter->parent, - prev_desc->p_clus, &desc->p_clus); - desc->offset = 0; -- if (!ret && desc->p_clus == EXFAT_EOF_CLUSTER) -- return EOF; -- else if (ret) -+ if (ret) - return ret; -+ else if (desc->p_clus == EXFAT_EOF_CLUSTER) -+ return EOF; - } - } - -diff --git a/lib/libexfat.c b/lib/libexfat.c -index 42e3fdc..ee48d3a 100644 ---- a/lib/libexfat.c -+++ b/lib/libexfat.c -@@ -470,7 +470,12 @@ int exfat_set_volume_label(struct exfat_blk_dev *bd, - exfat_err("volume entry write failed: %d\n", errno); - return -1; - } -- fsync(bd->dev_fd); -+ -+ if (fsync(bd->dev_fd) == -1) { -+ exfat_err("failed to sync volume entry: %d, %s\n", errno, -+ strerror(errno)); -+ return -1; -+ } - - exfat_info("new label: %s\n", label_input); - return 0; -@@ -479,7 +484,8 @@ int exfat_set_volume_label(struct exfat_blk_dev *bd, - int exfat_read_sector(struct exfat_blk_dev *bd, void *buf, unsigned int sec_off) - { - int ret; -- unsigned long long offset = sec_off * bd->sector_size; -+ unsigned long long offset = -+ (unsigned long long)sec_off * bd->sector_size; - - ret = pread(bd->dev_fd, buf, bd->sector_size, offset); - if (ret < 0) { -@@ -493,7 +499,8 @@ int exfat_write_sector(struct exfat_blk_dev *bd, void *buf, - unsigned int sec_off) - { - int bytes; -- unsigned long long offset = sec_off * bd->sector_size; -+ unsigned long long offset = -+ (unsigned long long)sec_off * bd->sector_size; - - bytes = pwrite(bd->dev_fd, buf, bd->sector_size, offset); - if (bytes != (int)bd->sector_size) { --- -2.35.3 - diff --git a/exfatprogs.spec b/exfatprogs.spec index 5890593..85d754a 100644 --- a/exfatprogs.spec +++ b/exfatprogs.spec @@ -1,13 +1,11 @@ Name: exfatprogs -Version: 1.1.3 -Release: 3%{?dist} +Version: 1.2.0 +Release: 1%{?dist} Summary: Userspace utilities for exFAT filesystems License: GPLv2 URL: https://github.com/%{name}/%{name} Source0: %{url}/releases/download/%{version}/%{name}-%{version}.tar.xz -Patch0: 0001-fsck-fix-memory-leak.patch -Patch1: 0002.patch BuildRequires: autoconf BuildRequires: automake @@ -36,16 +34,22 @@ autoreconf -vif %doc README.md %{_sbindir}/dump.exfat %{_sbindir}/exfatlabel +%{_sbindir}/exfat2img %{_sbindir}/fsck.exfat %{_sbindir}/mkfs.exfat %{_sbindir}/tune.exfat %{_mandir}/man8/dump.exfat.* %{_mandir}/man8/exfatlabel.* +%{_mandir}/man8/exfat2img.* %{_mandir}/man8/fsck.exfat.* %{_mandir}/man8/mkfs.exfat.* %{_mandir}/man8/tune.exfat.* %changelog +* Mon Mar 06 2023 Pavel Reichl - 1.2.0-1 +- Rebase + Related: rhbz#2173273 + * Tue May 24 2022 Pavel Reichl - 1.1.3-3.test - Fix some covscan issues diff --git a/sources b/sources index 5b8c1b5..906a00d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (exfatprogs-1.1.3.tar.xz) = d23bfe4d0233d944b0d5a484e1167746db77ea9b7fbacdbfac2dd4d37a8a1d747f2445b09baced9fd7b5d3dbfc7664bdc1efe16326d7e678d05294eee124efa3 +SHA512 (exfatprogs-1.2.0.tar.xz) = 61a78af024e1ff7e12f2d7449c3ee2ff9476c8746269e29c453c77dbc73d3f52af7ca8fc3e1bd85d6a75b6ed8b7712b5f80e5cc1dffc5ff00fb63455a57ca9bf