Fix security check.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7519 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
lgao4 2009-02-13 05:20:55 +00:00
parent 2fead09fae
commit 1fef733cc7

View File

@ -123,8 +123,8 @@ GetWorker (
VariableHead = (VARIABLE_HEAD *) (PcdDb + Offset); VariableHead = (VARIABLE_HEAD *) (PcdDb + Offset);
Guid = &(GuidTable[VariableHead->GuidTableIndex]); Guid = GuidTable + VariableHead->GuidTableIndex;
Name = &(StringTable[VariableHead->StringIndex]); Name = StringTable + VariableHead->StringIndex;
VaraiableDefaultBuffer = (UINT8 *) PcdDb + VariableHead->DefaultValueOffset; VaraiableDefaultBuffer = (UINT8 *) PcdDb + VariableHead->DefaultValueOffset;
Status = GetHiiVariable (Guid, Name, &Data, &DataSize); Status = GetHiiVariable (Guid, Name, &Data, &DataSize);
@ -154,7 +154,7 @@ GetWorker (
case PCD_TYPE_STRING: case PCD_TYPE_STRING:
StringTableIdx = (UINT16) *((UINT8 *) PcdDb + Offset); StringTableIdx = (UINT16) *((UINT8 *) PcdDb + Offset);
RetPtr = (VOID *) &StringTable[StringTableIdx]; RetPtr = (VOID *) (StringTable + StringTableIdx);
break; break;
case PCD_TYPE_DATA: case PCD_TYPE_DATA:
@ -774,7 +774,7 @@ SetWorker (
case PCD_TYPE_STRING: case PCD_TYPE_STRING:
if (SetPtrTypeSize (TmpTokenNumber, Size)) { if (SetPtrTypeSize (TmpTokenNumber, Size)) {
CopyMem (&StringTable[*((UINT16 *)InternalData)], Data, *Size); CopyMem (StringTable + *((UINT16 *)InternalData), Data, *Size);
Status = EFI_SUCCESS; Status = EFI_SUCCESS;
} else { } else {
Status = EFI_INVALID_PARAMETER; Status = EFI_INVALID_PARAMETER;
@ -794,8 +794,8 @@ SetWorker (
VariableHead = (VARIABLE_HEAD *) (PcdDb + Offset); VariableHead = (VARIABLE_HEAD *) (PcdDb + Offset);
Guid = &(GuidTable[VariableHead->GuidTableIndex]); Guid = GuidTable + VariableHead->GuidTableIndex;
Name = &(StringTable[VariableHead->StringIndex]); Name = StringTable + VariableHead->StringIndex;
VariableOffset = VariableHead->Offset; VariableOffset = VariableHead->Offset;
Status = SetHiiVariable (Guid, Name, Data, *Size, VariableOffset); Status = SetHiiVariable (Guid, Name, Data, *Size, VariableOffset);