From 892f17ce795b64ba024989785ca62ef72299df52 Mon Sep 17 00:00:00 2001 From: Brian Norris Date: Thu, 29 Oct 2015 17:12:01 -0700 Subject: nandtest: support hex/dec/oct for --offset and --length These two options are handled inconsistently, which caused an unnecessary amount of head scratching. Let's just use the simple helpers too, so we get the error handling right. Signed-off-by: Brian Norris --- nandtest.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/nandtest.c b/nandtest.c index 0805387..2ef7cc8 100644 --- a/nandtest.c +++ b/nandtest.c @@ -15,6 +15,7 @@ #include #include "mtd/mtd-user.h" +#include "common.h" void usage(int status) { @@ -154,6 +155,7 @@ int main(int argc, char **argv) int keep_contents = 0; uint32_t offset = 0; uint32_t length = -1; + int error = 0; seed = time(NULL); @@ -205,17 +207,19 @@ int main(int argc, char **argv) break; case 'o': - offset = atol(optarg); + offset = simple_strtoul(optarg, &error); break; case 'l': - length = strtol(optarg, NULL, 0); + length = simple_strtoul(optarg, &error); break; } } if (argc - optind != 1) usage(1); + if (error) + errmsg_die("Try --help for more information"); fd = open(argv[optind], O_RDWR); if (fd < 0) { -- cgit v1.2.3