+exfatprogs 1.2.8 - released 2025-03-04
+======================================
+
+BUG FIXES :
+ * dump.exfat: fix an incorrect output of an entry
+ position in 32-bit system.
+ * mkfs.exfat: fill an oem sector with zero instead
+ of one.
+ * exfatprogs: fix compilation on musl based systems
+ due to loff_t type. And update the Github action
+ to validate builds on the system.
+
exfatprogs 1.2.7 - released 2025-02-03
======================================
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for exfatprogs 1.2.7.
+# Generated by GNU Autoconf 2.71 for exfatprogs 1.2.8.
#
# Report bugs to <linkinjeon@kernel.org>.
#
# Identity of this package.
PACKAGE_NAME='exfatprogs'
PACKAGE_TARNAME='exfatprogs'
-PACKAGE_VERSION='1.2.7'
-PACKAGE_STRING='exfatprogs 1.2.7'
+PACKAGE_VERSION='1.2.8'
+PACKAGE_STRING='exfatprogs 1.2.8'
PACKAGE_BUGREPORT='linkinjeon@kernel.org'
PACKAGE_URL='https://github.com/exfatprogs/exfatprogs'
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures exfatprogs 1.2.7 to adapt to many kinds of systems.
+\`configure' configures exfatprogs 1.2.8 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of exfatprogs 1.2.7:";;
+ short | recursive ) echo "Configuration of exfatprogs 1.2.8:";;
esac
cat <<\_ACEOF
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-exfatprogs configure 1.2.7
+exfatprogs configure 1.2.8
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by exfatprogs $as_me 1.2.7, which was
+It was created by exfatprogs $as_me 1.2.8, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
# Define the identity of the package.
PACKAGE='exfatprogs'
- VERSION='1.2.7'
+ VERSION='1.2.8'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by exfatprogs $as_me 1.2.7, which was
+This file was extended by exfatprogs $as_me 1.2.8, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
-exfatprogs config.status 1.2.7
+exfatprogs config.status 1.2.8
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
goto free_exfat;
if (ed.type == EXFAT_VOLUME) {
- exfat_info("Volume label entry position: \t\t0x%lx\n", off);
+ exfat_info("Volume label entry position: \t\t0x%llx\n", (unsigned long long)off);
exfat_info("Volume label character count: \t\t%u\n", ed.vol_char_cnt);
volume_label = exfat_conv_volume_label(&ed);
if (!volume_label)
goto free_exfat;
if (ed.type == EXFAT_UPCASE) {
- exfat_info("Upcase table entry position: \t\t0x%lx\n", off);
+ exfat_info("Upcase table entry position: \t\t0x%llx\n", (unsigned long long)off);
exfat_info("Upcase table start cluster: \t\t%x\n",
le32_to_cpu(ed.upcase_start_clu));
exfat_info("Upcase table size: \t\t\t%" PRIu64 "\n",
bitmap_len = le64_to_cpu(ed.bitmap_size);
bitmap_clu = le32_to_cpu(ed.bitmap_start_clu);
- exfat_info("Bitmap entry position: \t\t\t0x%lx\n", off);
+ exfat_info("Bitmap entry position: \t\t\t0x%llx\n", (unsigned long long)off);
exfat_info("Bitmap start cluster: \t\t\t%x\n", bitmap_clu);
exfat_info("Bitmap size: \t\t\t\t%llu\n", bitmap_len);
}
static int exfat_repair_upcase_table(struct exfat *exfat,
- struct exfat_dentry *dentry, loff_t dentry_off)
+ struct exfat_dentry *dentry, off_t dentry_off)
{
clus_t clu;
int ret;
ssize_t size;
__le32 checksum;
clus_t start_clu;
- loff_t dentry_off;
+ off_t dentry_off;
retval = exfat_lookup_dentry_set(exfat, exfat->root, &filter);
if (retval == EOF) {
#ifndef _VERSION_H
-#define EXFAT_PROGS_VERSION "1.2.7"
+#define EXFAT_PROGS_VERSION "1.2.8"
#endif /* !_VERSION_H */
int ret = 0;
unsigned int sec_idx = OEM_SEC_IDX;
- oem = malloc(bd->sector_size);
+ oem = calloc(1, bd->sector_size);
if (!oem)
return -1;
if (is_backup)
sec_idx += BACKUP_BOOT_SEC_IDX;
- memset(oem, 0xFF, bd->sector_size);
ret = exfat_write_sector(bd, oem, sec_idx);
if (ret) {
exfat_err("oem sector write failed\n");
boot_calc_checksum((unsigned char *)oem, bd->sector_size, false,
checksum);
- /* Zero out reserved sector */
- memset(oem, 0, bd->sector_size);
+ /* Reuse zeroed out oem sector for reserved sector */
ret = exfat_write_sector(bd, oem, sec_idx + 1);
if (ret) {
exfat_err("reserved sector write failed\n");
struct exfat_user_input *ui)
{
int ret;
- unsigned long long total_written = 0;
unsigned long long size;
if (ui->quick)
}
exfat_debug("zero out written size : %llu, disk size : %llu\n",
- total_written, bd->size);
+ size, bd->size);
return 0;
}
}
if [ $# -eq 0 ]; then
- TESTCASE_LIST=($(find . -name "${IMAGE_FILE}.tar.xz" | xargs dirname))
+ TESTCASE_LIST=($(find . -name "${IMAGE_FILE}.tar.xz" -exec dirname {} \;))
TESTCASE_LIST+=($(find . -name "[[:digit:]]*.sh" | sort))
else
TESTCASE_LIST=($@)