diff options
author | Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com> | 2017-10-05 11:54:45 +0530 |
---|---|---|
committer | Ruiyu Ni <ruiyu.ni@intel.com> | 2017-10-13 17:14:50 +0800 |
commit | 120fd64781d2c0810ce41c0d4a6ecd348ff7bc49 (patch) | |
tree | 6d15e23045cb9cf5bc4288334b52746bda061972 /ShellPkg | |
parent | 152e8d7670d5e6d2f9e5ca936eaf1568a7a53c4d (diff) | |
download | edk2-120fd64781d2c0810ce41c0d4a6ecd348ff7bc49.zip edk2-120fd64781d2c0810ce41c0d4a6ecd348ff7bc49.tar.gz edk2-120fd64781d2c0810ce41c0d4a6ecd348ff7bc49.tar.bz2 |
Ifconfig : Fixed False information about Media State.
Issue : We were setting MediaPresent as TRUE (default) and
not checking return status of NetLibDetectMedia().
NetLibDetectMedia() sets MediaPresent FLAG in case of success
only and dont change flag on error.
So, Media State will display as 'Media Present', in case of
error also.
Fix : Check return value of NetLibDetectMedia(), if error then
print "Media State Unknown"
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
Diffstat (limited to 'ShellPkg')
-rw-r--r-- | ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c b/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c index 4db07b2..082ab72 100644 --- a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c +++ b/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c @@ -576,11 +576,14 @@ IfConfigShowInterfaceInfo ( //
// Get Media State.
//
- NetLibDetectMedia (IfCb->NicHandle, &MediaPresent);
- if (!MediaPresent) {
- ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_IFCONFIG_INFO_MEDIA_STATE), gShellNetwork1HiiHandle, L"Media disconnected");
+ if (EFI_SUCCESS == NetLibDetectMedia (IfCb->NicHandle, &MediaPresent)) {
+ if (!MediaPresent) {
+ ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_IFCONFIG_INFO_MEDIA_STATE), gShellNetwork1HiiHandle, L"Media disconnected");
+ } else {
+ ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_IFCONFIG_INFO_MEDIA_STATE), gShellNetwork1HiiHandle, L"Media present");
+ }
} else {
- ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_IFCONFIG_INFO_MEDIA_STATE), gShellNetwork1HiiHandle, L"Media present");
+ ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_IFCONFIG_INFO_MEDIA_STATE), gShellNetwork1HiiHandle, L"Media state unknown");
}
//
|