[PATCH 2/5] dmesg: error out on unknown loglevels
Marco Felsch
m.felsch at pengutronix.de
Mon Jun 12 23:34:39 PDT 2023
Hi Sascha,
On 23-06-12, Sascha Hauer wrote:
> The user deserves an error when an unknown loglevel is given, so
> print an error instead of silently ignoring unknown loglevels.
>
> Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
> ---
> commands/dmesg.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/commands/dmesg.c b/commands/dmesg.c
> index 339910bb76..2a36710b98 100644
> --- a/commands/dmesg.c
> +++ b/commands/dmesg.c
> @@ -32,6 +32,8 @@ static int str_to_loglevel(const char *str)
> if (!strcmp(str, "emerg"))
> return MSG_EMERG;
>
> + printf("dmesg: unknown loglevel %s\n", str);
> +
> return -EINVAL;
> }
>
> @@ -51,6 +53,8 @@ static unsigned dmesg_get_levels(const char *__args)
> level = str_to_loglevel(str);
> if (level >= 0)
> flags |= BIT(level);
> + else
> + return 0;
This is more explicit but wouldn't be required since we initialized
'flags = 0'.
> }
>
> free(args);
> @@ -81,7 +85,7 @@ static int do_dmesg(int argc, char *argv[])
> case 'l':
> levels = dmesg_get_levels(optarg);
> if (!levels)
> - return COMMAND_ERROR_USAGE;
> + return COMMAND_ERROR;
Out of curiosity what's the difference between COMMAND_ERROR and
COMMAND_ERROR_USAGE?
Regards,
Marco
> break;
> case 'r':
> flags |= BAREBOX_LOG_PRINT_RAW | BAREBOX_LOG_PRINT_TIME;
> --
> 2.39.2
>
>
>
More information about the barebox
mailing list