1, For Pcd_PPI, UnregistedCallBack should return EFI_INVALID_PARAMETER if Callback function can not be found.

2, PCD_PPI/PROTOCOL should return EFI_INVALID_PARAMETER if size is unmatched

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10276 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
klu2
2010-03-18 06:24:53 +00:00
parent 2db63cd4fa
commit 8ec8bed439
2 changed files with 18 additions and 5 deletions

View File

@@ -740,8 +740,14 @@ SetWorker (
//
ASSERT (TokenNumber + 1 < PCD_TOTAL_TOKEN_NUMBER + 1);
if ((!PtrType) && (*Size != DxePcdGetSize (TokenNumber + 1))) {
return EFI_INVALID_PARAMETER;
if (PtrType) {
if (*Size > DxePcdGetSize (TokenNumber + 1)) {
return EFI_INVALID_PARAMETER;
}
} else {
if (*Size != DxePcdGetSize (TokenNumber + 1)) {
return EFI_INVALID_PARAMETER;
}
}
//