]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
mkfs.cramfs: check blocksize user input [cppcheck]
authorSami Kerola <kerolasa@iki.fi>
Tue, 7 Feb 2012 20:10:33 +0000 (21:10 +0100)
committerKarel Zak <kzak@redhat.com>
Wed, 8 Feb 2012 11:46:11 +0000 (12:46 +0100)
Enhance user input checking and error messaging, while fixing
cppcheck warning.

[disk-utils/mkfs.cramfs.c:729]: (style) Checking if unsigned variable 'blksize' is less than zero.

[kzak@redhat.com: fix coding style]

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
Signed-off-by: Karel Zak <kzak@redhat.com>
disk-utils/mkfs.cramfs.c

index 2fe95bf82ff59e75cc0e155772cdde89788eb811..37895a380d56a6a05c3445c589b748b4b4613ebf 100644 (file)
@@ -725,10 +725,15 @@ int main(int argc, char **argv)
                case 'h':
                        usage(MKFS_OK);
                case 'b':
-                       blksize = strtoll_or_err(optarg, _("failed to parse blocksize argument"));
-                       if (blksize <= 0)
-                               usage(MKFS_USAGE);
+               {
+                       long long tmp = strtoll_or_err(optarg,
+                                       _("failed to parse blocksize argument"));
+
+                       if (tmp <= 0 || UINT_MAX < tmp)
+                               errx(MKFS_USAGE, _("invalid block size"));
+                       blksize = tmp;
                        break;
+               }
                case 'E':
                        opt_errors = 1;
                        break;