]> git.ipfire.org Git - thirdparty/e2fsprogs.git/commitdiff
mke2fs: prevent creation of filesystem with unsupported revision
authorFrank Sorenson <fsorenso@redhat.com>
Fri, 4 Jul 2014 19:31:50 +0000 (15:31 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 5 Jul 2014 03:59:44 +0000 (23:59 -0400)
It's a bit strange to accept revision levels higher than
the code creating the filesystem can understand, so don't
allow it.

At least the kernel will mount the fs readonly if it's too
high, but no other utility will touch it, so you can't
fix the error.

Just reject anything > EXT2_MAX_SUPP_REV at mkfs time.

Signed-off-by: Frank Sorenson <fsorenso@redhat.com>
[sandeen@redhat.com: Add more verbose commit log]
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
misc/mke2fs.c

index da4ddace28ea1d44862d37f77354c8a2298f9662..883b8f2cb2910c2de9387965630f6ec4e46099e6 100644 (file)
@@ -1659,6 +1659,11 @@ profile_error:
                                        _("bad revision level - %s"), optarg);
                                exit(1);
                        }
+                       if (r_opt > EXT2_MAX_SUPP_REV) {
+                               com_err(program_name, EXT2_ET_REV_TOO_HIGH,
+                                       _("while trying to create revision %d"), r_opt);
+                               exit(1);
+                       }
                        fs_param.s_rev_level = r_opt;
                        break;
                case 's':       /* deprecated */