add more user input verification to connect and vol commands.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11458 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
jcarsey
2011-03-30 16:36:42 +00:00
parent 16751bb43d
commit 6b825919f1
2 changed files with 26 additions and 2 deletions

View File

@ -44,6 +44,28 @@ HandleVol(
ShellStatus = SHELL_SUCCESS;
if (
StrStr(Name, L"%") != NULL ||
StrStr(Name, L"^") != NULL ||
StrStr(Name, L"*") != NULL ||
StrStr(Name, L"+") != NULL ||
StrStr(Name, L"=") != NULL ||
StrStr(Name, L"[") != NULL ||
StrStr(Name, L"]") != NULL ||
StrStr(Name, L"|") != NULL ||
StrStr(Name, L":") != NULL ||
StrStr(Name, L";") != NULL ||
StrStr(Name, L"\"") != NULL ||
StrStr(Name, L"<") != NULL ||
StrStr(Name, L">") != NULL ||
StrStr(Name, L"?") != NULL ||
StrStr(Name, L"/") != NULL ||
StrStr(Name, L" ") != NULL
){
ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM), gShellLevel2HiiHandle, Name);
return (SHELL_INVALID_PARAMETER);
}
Status = gEfiShellProtocol->OpenFileByName(
Path,
&ShellFileHandle,
@ -51,8 +73,7 @@ HandleVol(
if (EFI_ERROR(Status) || ShellFileHandle == NULL) {
ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_FILE_OPEN_FAIL), gShellLevel2HiiHandle, Path);
ShellStatus = SHELL_ACCESS_DENIED;
return (ShellStatus);
return (SHELL_ACCESS_DENIED);
}
//