]> git.sven.stormbind.net Git - sven/exfat-utils.git/commitdiff
Remove quilt patch files.
authorSven Hoexter <sven@timegate.de>
Fri, 30 Oct 2015 09:12:06 +0000 (10:12 +0100)
committerSven Hoexter <sven@timegate.de>
Fri, 30 Oct 2015 09:12:06 +0000 (10:12 +0100)
debian/patches/check-sector-and-cluster-size [deleted file]
debian/patches/detect-infinite-loop [deleted file]
debian/patches/series [deleted file]

diff --git a/debian/patches/check-sector-and-cluster-size b/debian/patches/check-sector-and-cluster-size
deleted file mode 100644 (file)
index 98280d1..0000000
+++ /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))
-       {
diff --git a/debian/patches/detect-infinite-loop b/debian/patches/detect-infinite-loop
deleted file mode 100644 (file)
index a50f38c..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-Patch for https://github.com/relan/exfat/issues/6
-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
-@@ -30,23 +30,32 @@
- static uint64_t rootdir_size(const struct exfat* ef)
- {
--      uint64_t clusters = 0;
-+      uint32_t clusters = 0;
-+      uint32_t clusters_max = le32_to_cpu(ef->sb->cluster_count);
-       cluster_t rootdir_cluster = le32_to_cpu(ef->sb->rootdir_cluster);
--      while (!CLUSTER_INVALID(rootdir_cluster))
-+      /* Iterate all clusters of the root directory to calculate its size.
-+         It can't be contiguous because there is no flag to indicate this. */
-+      do
-       {
--              clusters++;
--              /* root directory cannot be contiguous because there is no flag
--                 to indicate this */
-+              if (clusters == clusters_max) /* infinite loop detected */
-+              {
-+                      exfat_error("root directory cannot occupy all %d clusters",
-+                                      clusters);
-+                      return 0;
-+              }
-+              if (CLUSTER_INVALID(rootdir_cluster))
-+              {
-+                      exfat_error("bad cluster %#x while reading root directory",
-+                                      rootdir_cluster);
-+                      return 0;
-+              }
-               rootdir_cluster = exfat_next_cluster(ef, ef->root, rootdir_cluster);
-+              clusters++;
-       }
--      if (rootdir_cluster != EXFAT_CLUSTER_END)
--      {
--              exfat_error("bad cluster %#x while reading root directory",
--                              rootdir_cluster);
--              return 0;
--      }
--      return clusters * CLUSTER_SIZE(*ef->sb);
-+      while (rootdir_cluster != EXFAT_CLUSTER_END);
-+
-+      return (uint64_t) clusters * CLUSTER_SIZE(*ef->sb);
- }
- static const char* get_option(const char* options, const char* option_name)
diff --git a/debian/patches/series b/debian/patches/series
deleted file mode 100644 (file)
index d86ff4a..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-check-sector-and-cluster-size
-detect-infinite-loop