summaryrefslogtreecommitdiffstats
path: root/NetworkPkg/HttpBootDxe/HttpBootClient.c
diff options
context:
space:
mode:
authorJiaxin Wu <jiaxin.wu@intel.com>2018-01-17 11:25:41 +0800
committerJiaxin Wu <jiaxin.wu@intel.com>2018-01-25 13:37:26 +0800
commit7ee089f604a17b839c290b5481d8e5101cf85c03 (patch)
tree6329f1c48d929daab55e27b842c22064bbc652fc /NetworkPkg/HttpBootDxe/HttpBootClient.c
parent6945837e4c30231b82c85d71df69f8aaab88f352 (diff)
downloadedk2-7ee089f604a17b839c290b5481d8e5101cf85c03.tar.gz
edk2-7ee089f604a17b839c290b5481d8e5101cf85c03.tar.bz2
edk2-7ee089f604a17b839c290b5481d8e5101cf85c03.zip
NetworkPkg/HttpBootDxe: Avoid to corrupt HttpBootDxe setup screen.
When giving an invalid URI in Boot URI field within HTTP Boot configuration page, the AsciiPrint will corrupt the setup screen. This patch is to resolve the issue. Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Ye Ting <ting.ye@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Karunakar P <karunakarp@amiindia.co.in> Reviewed-by: Jiaxin Wu <jiaxin.wu@intel.com>
Diffstat (limited to 'NetworkPkg/HttpBootDxe/HttpBootClient.c')
-rw-r--r--NetworkPkg/HttpBootDxe/HttpBootClient.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.c b/NetworkPkg/HttpBootDxe/HttpBootClient.c
index 5c871717da..15e0ab9d69 100644
--- a/NetworkPkg/HttpBootDxe/HttpBootClient.c
+++ b/NetworkPkg/HttpBootDxe/HttpBootClient.c
@@ -238,6 +238,11 @@ HttpBootDhcp4ExtractUriInfo (
Status = HttpBootCheckUriScheme (Private->BootFileUri);
if (EFI_ERROR (Status)) {
DEBUG ((EFI_D_ERROR, "HttpBootDhcp4ExtractUriInfo: %r.\n", Status));
+ if (Status == EFI_INVALID_PARAMETER) {
+ AsciiPrint ("\n Error: Invalid URI address.\n");
+ } else if (Status == EFI_ACCESS_DENIED) {
+ AsciiPrint ("\n Error: Access forbidden, only HTTPS connection is allowed.\n");
+ }
return Status;
}
@@ -373,6 +378,11 @@ HttpBootDhcp6ExtractUriInfo (
Status = HttpBootCheckUriScheme (Private->BootFileUri);
if (EFI_ERROR (Status)) {
DEBUG ((EFI_D_ERROR, "HttpBootDhcp6ExtractUriInfo: %r.\n", Status));
+ if (Status == EFI_INVALID_PARAMETER) {
+ AsciiPrint ("\n Error: Invalid URI address.\n");
+ } else if (Status == EFI_ACCESS_DENIED) {
+ AsciiPrint ("\n Error: Access forbidden, only HTTPS connection is allowed.\n");
+ }
return Status;
}