[edk2] [PATCH] ShellPkg/alias: Return status for alias deletion

Ruiyu Ni posted 1 patch 6 years, 9 months ago
Failed in applying to current master (apply log)
ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
[edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
Posted by Ruiyu Ni 6 years, 9 months ago
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Tapan Shah <tapandshah@hpe.com>
---
 ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
index 5a3b7e5913..7277bd4b90 100644
--- a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
+++ b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
@@ -2,7 +2,7 @@
   Main file for Alias shell level 3 function.
 
   (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
-  Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved. <BR>
+  Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved. <BR>
   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD License
   which accompanies this distribution.  The full text of the license may be found at
@@ -151,6 +151,15 @@ ShellCommandRunAlias (
       // delete an alias
       //
       Status = gEfiShellProtocol->SetAlias(Param1, NULL, TRUE, FALSE);
+      if (EFI_ERROR(Status)) {
+        if (Status == EFI_ACCESS_DENIED) {
+          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_AD), gShellLevel3HiiHandle, L"alias");  
+          ShellStatus = SHELL_ACCESS_DENIED;
+        } else {
+          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_UK), gShellLevel3HiiHandle, L"alias", Status);  
+          ShellStatus = SHELL_DEVICE_ERROR;
+        }
+      }
     } else if (ShellCommandLineGetCount(Package) == 3) {
       //
       // must be adding an alias
-- 
2.12.2.windows.2

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
Posted by Ni, Ruiyu 6 years, 9 months ago
Including Tapan.

Thanks/Ray

> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ruiyu
> Ni
> Sent: Tuesday, June 6, 2017 4:29 PM
> To: edk2-devel@lists.01.org
> Subject: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
> 
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
> Cc: Tapan Shah <tapandshah@hpe.com>
> ---
>  ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c | 11 ++++++++++-
>  1 file changed, 10 insertions(+), 1 deletion(-)
> 
> diff --git a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> index 5a3b7e5913..7277bd4b90 100644
> --- a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> +++ b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> @@ -2,7 +2,7 @@
>    Main file for Alias shell level 3 function.
> 
>    (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
> -  Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved. <BR>
> +  Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
> + <BR>
>    This program and the accompanying materials
>    are licensed and made available under the terms and conditions of the BSD
> License
>    which accompanies this distribution.  The full text of the license may be found
> at @@ -151,6 +151,15 @@ ShellCommandRunAlias (
>        // delete an alias
>        //
>        Status = gEfiShellProtocol->SetAlias(Param1, NULL, TRUE, FALSE);
> +      if (EFI_ERROR(Status)) {
> +        if (Status == EFI_ACCESS_DENIED) {
> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_AD),
> gShellLevel3HiiHandle, L"alias");
> +          ShellStatus = SHELL_ACCESS_DENIED;
> +        } else {
> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_UK),
> gShellLevel3HiiHandle, L"alias", Status);
> +          ShellStatus = SHELL_DEVICE_ERROR;
> +        }
> +      }
>      } else if (ShellCommandLineGetCount(Package) == 3) {
>        //
>        // must be adding an alias
> --
> 2.12.2.windows.2
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
Posted by Ni, Ruiyu 6 years, 9 months ago
Including Jaben for review.

Send from mobile phone

> 在 2017年6月6日,下午4:43,Ni, Ruiyu <ruiyu.ni@intel.com> 写道:
> 
> Including Tapan.
> 
> Thanks/Ray
> 
>> -----Original Message-----
>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ruiyu
>> Ni
>> Sent: Tuesday, June 6, 2017 4:29 PM
>> To: edk2-devel@lists.01.org
>> Subject: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
>> 
>> Contributed-under: TianoCore Contribution Agreement 1.0
>> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
>> Cc: Tapan Shah <tapandshah@hpe.com>
>> ---
>> ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c | 11 ++++++++++-
>> 1 file changed, 10 insertions(+), 1 deletion(-)
>> 
>> diff --git a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
>> b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
>> index 5a3b7e5913..7277bd4b90 100644
>> --- a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
>> +++ b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
>> @@ -2,7 +2,7 @@
>>   Main file for Alias shell level 3 function.
>> 
>>   (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
>> -  Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved. <BR>
>> +  Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
>> + <BR>
>>   This program and the accompanying materials
>>   are licensed and made available under the terms and conditions of the BSD
>> License
>>   which accompanies this distribution.  The full text of the license may be found
>> at @@ -151,6 +151,15 @@ ShellCommandRunAlias (
>>       // delete an alias
>>       //
>>       Status = gEfiShellProtocol->SetAlias(Param1, NULL, TRUE, FALSE);
>> +      if (EFI_ERROR(Status)) {
>> +        if (Status == EFI_ACCESS_DENIED) {
>> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_AD),
>> gShellLevel3HiiHandle, L"alias");
>> +          ShellStatus = SHELL_ACCESS_DENIED;
>> +        } else {
>> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_UK),
>> gShellLevel3HiiHandle, L"alias", Status);
>> +          ShellStatus = SHELL_DEVICE_ERROR;
>> +        }
>> +      }
>>     } else if (ShellCommandLineGetCount(Package) == 3) {
>>       //
>>       // must be adding an alias
>> --
>> 2.12.2.windows.2
>> 
>> _______________________________________________
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
Posted by Carsey, Jaben 6 years, 9 months ago
I am good with more clear error information coming to the user.
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>

> -----Original Message-----
> From: Ni, Ruiyu
> Sent: Tuesday, June 06, 2017 2:26 PM
> To: Ni, Ruiyu <ruiyu.ni@intel.com>; edk2-devel@lists.01.org
> Cc: Tapan Shah <tapandshah@hpe.com>; Carsey, Jaben
> <jaben.carsey@intel.com>
> Subject: Re: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
> Importance: High
> 
> Including Jaben for review.
> 
> Send from mobile phone
> 
> > 在 2017年6月6日,下午4:43,Ni, Ruiyu <ruiyu.ni@intel.com> 写道:
> >
> > Including Tapan.
> >
> > Thanks/Ray
> >
> >> -----Original Message-----
> >> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
> Ruiyu
> >> Ni
> >> Sent: Tuesday, June 6, 2017 4:29 PM
> >> To: edk2-devel@lists.01.org
> >> Subject: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
> >>
> >> Contributed-under: TianoCore Contribution Agreement 1.0
> >> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
> >> Cc: Tapan Shah <tapandshah@hpe.com>
> >> ---
> >> ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c | 11 ++++++++++-
> >> 1 file changed, 10 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> >> b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> >> index 5a3b7e5913..7277bd4b90 100644
> >> --- a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> >> +++ b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> >> @@ -2,7 +2,7 @@
> >>   Main file for Alias shell level 3 function.
> >>
> >>   (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
> >> -  Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved. <BR>
> >> +  Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
> >> + <BR>
> >>   This program and the accompanying materials
> >>   are licensed and made available under the terms and conditions of the
> BSD
> >> License
> >>   which accompanies this distribution.  The full text of the license may be
> found
> >> at @@ -151,6 +151,15 @@ ShellCommandRunAlias (
> >>       // delete an alias
> >>       //
> >>       Status = gEfiShellProtocol->SetAlias(Param1, NULL, TRUE, FALSE);
> >> +      if (EFI_ERROR(Status)) {
> >> +        if (Status == EFI_ACCESS_DENIED) {
> >> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_AD),
> >> gShellLevel3HiiHandle, L"alias");
> >> +          ShellStatus = SHELL_ACCESS_DENIED;
> >> +        } else {
> >> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_UK),
> >> gShellLevel3HiiHandle, L"alias", Status);
> >> +          ShellStatus = SHELL_DEVICE_ERROR;
> >> +        }
> >> +      }
> >>     } else if (ShellCommandLineGetCount(Package) == 3) {
> >>       //
> >>       // must be adding an alias
> >> --
> >> 2.12.2.windows.2
> >>
> >> _______________________________________________
> >> edk2-devel mailing list
> >> edk2-devel@lists.01.org
> >> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
Posted by Shah, Tapan 6 years, 9 months ago
Instead of using  STR_GEN_ERR_UK here, it would be better to define a new string token as "alias: '<alias_name>' does not exist."

> >> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_UK),
> >> gShellLevel3HiiHandle, L"alias", Status);

Reviewed-by: Tapan Shah <tapandshah@hpe.com>

-----Original Message-----
From: Carsey, Jaben [mailto:jaben.carsey@intel.com] 
Sent: Tuesday, June 06, 2017 4:37 PM
To: Ni, Ruiyu <ruiyu.ni@intel.com>; edk2-devel@lists.01.org
Cc: Shah, Tapan <tapandshah@hpe.com>
Subject: RE: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion

I am good with more clear error information coming to the user.
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>

> -----Original Message-----
> From: Ni, Ruiyu
> Sent: Tuesday, June 06, 2017 2:26 PM
> To: Ni, Ruiyu <ruiyu.ni@intel.com>; edk2-devel@lists.01.org
> Cc: Tapan Shah <tapandshah@hpe.com>; Carsey, Jaben
> <jaben.carsey@intel.com>
> Subject: Re: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
> Importance: High
> 
> Including Jaben for review.
> 
> Send from mobile phone
> 
> > 在 2017年6月6日,下午4:43,Ni, Ruiyu <ruiyu.ni@intel.com> 写道:
> >
> > Including Tapan.
> >
> > Thanks/Ray
> >
> >> -----Original Message-----
> >> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
> Ruiyu
> >> Ni
> >> Sent: Tuesday, June 6, 2017 4:29 PM
> >> To: edk2-devel@lists.01.org
> >> Subject: [edk2] [PATCH] ShellPkg/alias: Return status for alias deletion
> >>
> >> Contributed-under: TianoCore Contribution Agreement 1.0
> >> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
> >> Cc: Tapan Shah <tapandshah@hpe.com>
> >> ---
> >> ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c | 11 ++++++++++-
> >> 1 file changed, 10 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> >> b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> >> index 5a3b7e5913..7277bd4b90 100644
> >> --- a/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> >> +++ b/ShellPkg/Library/UefiShellLevel3CommandsLib/Alias.c
> >> @@ -2,7 +2,7 @@
> >>   Main file for Alias shell level 3 function.
> >>
> >>   (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
> >> -  Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved. <BR>
> >> +  Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
> >> + <BR>
> >>   This program and the accompanying materials
> >>   are licensed and made available under the terms and conditions of the
> BSD
> >> License
> >>   which accompanies this distribution.  The full text of the license may be
> found
> >> at @@ -151,6 +151,15 @@ ShellCommandRunAlias (
> >>       // delete an alias
> >>       //
> >>       Status = gEfiShellProtocol->SetAlias(Param1, NULL, TRUE, FALSE);
> >> +      if (EFI_ERROR(Status)) {
> >> +        if (Status == EFI_ACCESS_DENIED) {
> >> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_AD),
> >> gShellLevel3HiiHandle, L"alias");
> >> +          ShellStatus = SHELL_ACCESS_DENIED;
> >> +        } else {
> >> +          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_UK),
> >> gShellLevel3HiiHandle, L"alias", Status);
> >> +          ShellStatus = SHELL_DEVICE_ERROR;
> >> +        }
> >> +      }
> >>     } else if (ShellCommandLineGetCount(Package) == 3) {
> >>       //
> >>       // must be adding an alias
> >> --
> >> 2.12.2.windows.2
> >>
> >> _______________________________________________
> >> edk2-devel mailing list
> >> edk2-devel@lists.01.org
> >> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel