X-Git-Url: https://git.sven.stormbind.net/?a=blobdiff_plain;f=debian%2Fpatches%2Fcheck-sector-and-cluster-size;fp=debian%2Fpatches%2Fcheck-sector-and-cluster-size;h=0000000000000000000000000000000000000000;hb=15bb212d54882bd4dd8ceddf3a88358aa9166d45;hp=98280d1777dfee9078932de7589ce7ee2e026d6a;hpb=9a48a6b25a9dee22fc8aaa154ab737622d7d4bbc;p=sven%2Fexfat-utils.git

diff --git a/debian/patches/check-sector-and-cluster-size b/debian/patches/check-sector-and-cluster-size
deleted file mode 100644
index 98280d1..0000000
--- a/debian/patches/check-sector-and-cluster-size
+++ /dev/null
@@ -1,48 +0,0 @@
-Patch for https://github.com/relan/exfat/issues/5
-See also:
-https://blog.fuzzing-project.org/25-Heap-overflow-and-endless-loop-in-exfatfsck-exfat-utils.html
-Index: exfat-utils/libexfat/mount.c
-===================================================================
---- exfat-utils.orig/libexfat/mount.c
-+++ exfat-utils/libexfat/mount.c
-@@ -208,6 +208,23 @@ int exfat_mount(struct exfat* ef, const
- 		exfat_error("exFAT file system is not found");
- 		return -EIO;
- 	}
-+	/* sector cannot be smaller than 512 bytes */
-+	if (ef->sb->sector_bits < 9)
-+	{
-+		exfat_close(ef->dev);
-+		exfat_error("too small sector size: 2^%hhd", ef->sb->sector_bits);
-+		free(ef->sb);
-+		return -EIO;
-+	}
-+	/* officially exFAT supports cluster size up to 32 MB */
-+	if ((int) ef->sb->sector_bits + (int) ef->sb->spc_bits > 25)
-+	{
-+		exfat_close(ef->dev);
-+		exfat_error("too big cluster size: 2^(%hhd+%hhd)",
-+				ef->sb->sector_bits, ef->sb->spc_bits);
-+		free(ef->sb);
-+		return -EIO;
-+	}
- 	ef->zero_cluster = malloc(CLUSTER_SIZE(*ef->sb));
- 	if (ef->zero_cluster == NULL)
- 	{
-@@ -242,16 +259,6 @@ int exfat_mount(struct exfat* ef, const
- 		free(ef->sb);
- 		return -EIO;
- 	}
--	/* officially exFAT supports cluster size up to 32 MB */
--	if ((int) ef->sb->sector_bits + (int) ef->sb->spc_bits > 25)
--	{
--		free(ef->zero_cluster);
--		exfat_close(ef->dev);
--		exfat_error("too big cluster size: 2^%d",
--				(int) ef->sb->sector_bits + (int) ef->sb->spc_bits);
--		free(ef->sb);
--		return -EIO;
--	}
- 	if (le64_to_cpu(ef->sb->sector_count) * SECTOR_SIZE(*ef->sb) >
- 			exfat_get_size(ef->dev))
- 	{