X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=libcfs%2Flibcfs%2Futil%2Fparser.c;h=861f97a3c51e69d27957e567997de4e8c891bff9;hb=caba6b9af07567ff4cdae9f6450f399cd3ca445e;hp=3fbb09e0fde33d46420d9a0963cc73ecb34fd9e4;hpb=ccabce23bd9e366c345c852f565766a799f61238;p=fs%2Flustre-release.git diff --git a/libcfs/libcfs/util/parser.c b/libcfs/libcfs/util/parser.c index 3fbb09e..861f97a 100644 --- a/libcfs/libcfs/util/parser.c +++ b/libcfs/libcfs/util/parser.c @@ -549,7 +549,6 @@ int Parser_list_commands(const command_t *cmdlist, char *buffer, int col = col_start; int char_max; int len; - char fmt[6]; int count = 0; int rc; @@ -572,9 +571,9 @@ int Parser_list_commands(const command_t *cmdlist, char *buffer, /* Add trailing spaces to pad the entry to the column size */ if (len < char_max) { - snprintf(fmt, 6, "%%-%2ds", char_max - len); snprintf(&buffer[col * char_max] + len, - char_max - len + 1, fmt, " "); + char_max - len + 1, "%*s", char_max - len, + " "); } else { buffer[(col + 1) * char_max - 1] = ' '; } @@ -769,40 +768,41 @@ int Parser_arg2int(const char *inp, long *result, int base) } /* Convert human readable size string to and int; "1k" -> 1000 */ -int Parser_size (int *sizep, char *str) { - int size; - char mod[32]; +int Parser_size(unsigned long *sizep, char *str) +{ + unsigned long size; + char mod[32]; - switch (sscanf (str, "%d%1[gGmMkK]", &size, mod)) { - default: - return (-1); + switch (sscanf(str, "%lu%1[gGmMkK]", &size, mod)) { + default: + return -1; - case 1: - *sizep = size; - return (0); + case 1: + *sizep = size; + return 0; - case 2: - switch (*mod) { - case 'g': - case 'G': - *sizep = size << 30; - return (0); - - case 'm': - case 'M': - *sizep = size << 20; - return (0); - - case 'k': - case 'K': - *sizep = size << 10; - return (0); - - default: - *sizep = size; - return (0); - } - } + case 2: + switch (*mod) { + case 'g': + case 'G': + *sizep = size << 30; + return 0; + + case 'm': + case 'M': + *sizep = size << 20; + return 0; + + case 'k': + case 'K': + *sizep = size << 10; + return 0; + + default: + *sizep = size; + return 0; + } + } } /* Convert a string boolean to an int; "enable" -> 1 */