2011-04-19 06:12:25

by Kazuya Mio

[permalink] [raw]
Subject: [PATCH] tune2fs: Fix overflow of interval check

Add the check of maximum check interval.
s_checkinterval is 32bit variable, so it cannot be set more than 2^32.

Signed-off-by: Kazuya Mio <[email protected]>
---
misc/tune2fs.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/misc/tune2fs.c b/misc/tune2fs.c
index bcada11..625866f 100644
--- a/misc/tune2fs.c
+++ b/misc/tune2fs.c
@@ -1705,6 +1705,12 @@ retry_open:
printf(_("Setting reserved blocks gid to %lu\n"), resgid);
}
if (i_flag) {
+ if (interval >= (1ULL << 32)) {
+ com_err(program_name, 0,
+ _("interval between checks is too big (%lu)"),
+ interval);
+ exit(1);
+ }
sb->s_checkinterval = interval;
ext2fs_mark_super_dirty(fs);
printf(_("Setting interval between checks to %lu seconds\n"),


2011-06-01 02:22:26

by Theodore Ts'o

[permalink] [raw]
Subject: Re: [PATCH] tune2fs: Fix overflow of interval check

On Tue, Apr 19, 2011 at 03:11:39PM +0900, Kazuya Mio wrote:
> Add the check of maximum check interval.
> s_checkinterval is 32bit variable, so it cannot be set more than 2^32.
>
> Signed-off-by: Kazuya Mio <[email protected]>

Applied, thanks.

- Ted