hexdump: accept hex numbers in -n, closes 16195

function                                             old     new   delta
hexdump_main                                         366     383     +17

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2024-10-08 04:23:29 +02:00
parent 49d9e06fba
commit 75ca8d074b

View File

@ -127,15 +127,20 @@ int hexdump_main(int argc, char **argv)
if (ch == 'f') {
bb_dump_addfile(dumper, optarg);
} /* else */
if (ch == 'n') {
dumper->dump_length = xatoi_positive(optarg);
if (ch == 'n') { /* compat: -n accepts hex numbers too */
dumper->dump_length = xstrtou_range_sfx(
optarg,
/*base:*/ 0,
/*lo:*/ 0, /*hi:*/ INT_MAX,
kmg_i_suffixes
);
} /* else */
if (ch == 's') { /* compat: -s accepts hex numbers too */
dumper->dump_skip = xstrtoull_range_sfx(
optarg,
/*base:*/ 0,
/*lo:*/ 0, /*hi:*/ OFF_T_MAX,
bkm_suffixes
kmg_i_suffixes
);
} /* else */
if (ch == 'v') {