From: jyao1 Date: Mon, 14 Nov 2011 06:28:40 +0000 (+0000) Subject: Follow PI1.2c spec, check empty string and return EFI_INVALID_PARAMETER. X-Git-Tag: edk2-stable201903~13917 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=960729473e14c847526af94c430bc38f93105ec7 Follow PI1.2c spec, check empty string and return EFI_INVALID_PARAMETER. Clean up comment according to PI1.2c spec. signed-off-by: jyao1 reviewed-by: rsun3 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12690 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c b/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c index 8769509f76..aa20d6d302 100644 --- a/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c +++ b/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c @@ -1,7 +1,7 @@ /** @file Save the S3 data to S3 boot script. - Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
+ Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions @@ -1754,9 +1754,15 @@ S3BootScriptLabel ( EFI_BOOT_SCRIPT_TABLE_HEADER TableHeader; UINT32 LabelLength; // - // Assume Label is not NULL + // Check NULL Label // - if (Label == NULL) { + if (Label == NULL) { + return EFI_INVALID_PARAMETER; + } + // + // Check empty Label + // + if (Label[0] == '\0') { return EFI_INVALID_PARAMETER; } diff --git a/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c b/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c index 15c4b6b90f..249fb8caff 100644 --- a/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c +++ b/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c @@ -1,7 +1,7 @@ /** @file Implementation for S3 Boot Script Saver state driver. - Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
+ Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions @@ -827,7 +827,8 @@ BootScriptInsert ( @param Label Points to the label which will be inserted in the boot script table. @retval EFI_SUCCESS The label already exists or was inserted. - @retval EFI_INVALID_PARAMETER The Opcode is an invalid opcode value or the Position is not a valid position in the boot script table.. + @retval EFI_INVALID_PARAMETER The Label is NULL or points to an empty string. + @retval EFI_INVALID_PARAMETER The Position is not a valid position in the boot script table. **/ EFI_STATUS @@ -856,6 +857,7 @@ BootScriptLabel ( @retval EFI_SUCCESS The operation succeeded. @retval EFI_INVALID_PARAMETER The Position1 or Position2 is not a valid position in the boot script table. + @retval EFI_INVALID_PARAMETER The RelativePosition is NULL. **/ EFI_STATUS diff --git a/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c b/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c index 9879143e4b..d0652d3fd8 100644 --- a/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c +++ b/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c @@ -1,7 +1,7 @@ /** @file Implementation for S3 SMM Boot Script Saver state driver. - Copyright (c) 2010, Intel Corporation. All rights reserved.
+ Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions @@ -825,7 +825,8 @@ BootScriptInsert ( @param Label Points to the label which will be inserted in the boot script table. @retval EFI_SUCCESS The label already exists or was inserted. - @retval EFI_INVALID_PARAMETER The Opcode is an invalid opcode value or the Position is not a valid position in the boot script table.. + @retval EFI_INVALID_PARAMETER The Label is NULL or points to an empty string. + @retval EFI_INVALID_PARAMETER The Position is not a valid position in the boot script table. **/ EFI_STATUS @@ -854,6 +855,7 @@ BootScriptLabel ( @retval EFI_SUCCESS The operation succeeded. @retval EFI_INVALID_PARAMETER The Position1 or Position2 is not a valid position in the boot script table. + @retval EFI_INVALID_PARAMETER The RelativePosition is NULL. **/ EFI_STATUS diff --git a/MdePkg/Include/Protocol/S3SaveState.h b/MdePkg/Include/Protocol/S3SaveState.h index 1c8ba72e11..5a72dd860d 100644 --- a/MdePkg/Include/Protocol/S3SaveState.h +++ b/MdePkg/Include/Protocol/S3SaveState.h @@ -5,7 +5,7 @@ to be replayed during an S3 resume. This protocol is not required for all platforms. - Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
+ Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
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 @@ -125,7 +125,7 @@ EFI_STATUS @retval EFI_SUCCESS The label already exists or was inserted. @retval EFI_NOT_FOUND The label did not already exist and CreateifNotFound was FALSE. - @retval EFI_INVALID_PARAMETER The Opcode is an invalid opcode value. + @retval EFI_INVALID_PARAMETER The Label is NULL or points to an empty string. @retval EFI_INVALID_PARAMETER The Position is not a valid position in the boot script table. @retval EFI_OUT_OF_RESOURCES There is insufficient memory to store the boot script. **/ @@ -151,8 +151,9 @@ EFI_STATUS @param[in] Position2 The positions in the boot script table to compare. @param[out] RelativePosition On return, points to the result of the comparison. - @retval EFI_SUCCESS The label already exists or was inserted. + @retval EFI_SUCCESS The operation succeeded. @retval EFI_INVALID_PARAMETER The Position1 or Position2 is not a valid position in the boot script table. + @retval EFI_INVALID_PARAMETER The RelativePosition is NULL. **/ typedef EFI_STATUS