From 6aef469c197a4c5d7a3a8cd766ea04fccb14ed3c Mon Sep 17 00:00:00 2001 From: huangjian Date: Fri, 4 Nov 2022 20:37:04 +0800 Subject: [PATCH] nshlib:judge whether nsh login username is a valid input Signed-off-by: huangjian --- nshlib/nsh_login.c | 6 ++++++ nshlib/nsh_stdlogin.c | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/nshlib/nsh_login.c b/nshlib/nsh_login.c index 3e7e370ca..9793837c4 100644 --- a/nshlib/nsh_login.c +++ b/nshlib/nsh_login.c @@ -178,6 +178,12 @@ int nsh_login(FAR struct console_stdio_s *pstate) nsh_token(pstate, username, sizeof(username)); } + if (username[0] == '\0') + { + i--; + continue; + } + #ifdef CONFIG_NSH_PLATFORM_CHALLENGE platform_challenge(challenge, sizeof(challenge)); fputs(challenge, pstate->cn_outstream); diff --git a/nshlib/nsh_stdlogin.c b/nshlib/nsh_stdlogin.c index d4f93f599..0ae7ae43c 100644 --- a/nshlib/nsh_stdlogin.c +++ b/nshlib/nsh_stdlogin.c @@ -187,6 +187,12 @@ int nsh_stdlogin(FAR struct console_stdio_s *pstate) nsh_stdtoken(pstate, username, sizeof(username)); } + if (username[0] == '\0') + { + i--; + continue; + } + #ifdef CONFIG_NSH_PLATFORM_CHALLENGE platform_challenge(challenge, sizeof(challenge)); printf("%s", challenge);