\r
while ((Variable[Index] != NULL) && (Variable[Index] <= GetEndPointer (VariableStoreHeader[Index]))) {\r
if (Variable[Index]->StartId == VARIABLE_DATA && Variable[Index]->State == VAR_ADDED) {\r
- if (!(EfiAtRuntime () && !(Variable[Index]->Attributes & EFI_VARIABLE_RUNTIME_ACCESS))) {\r
+ if (!(EfiAtRuntime () && (Variable[Index]->Attributes & EFI_VARIABLE_RUNTIME_ACCESS == 0))) {\r
if (VariableName[0] == 0) {\r
PtrTrack->CurrPtr = Variable[Index];\r
PtrTrack->Volatile = (BOOLEAN) Index;\r
return EFI_SUCCESS;\r
} else {\r
if (CompareGuid (VendorGuid, &Variable[Index]->VendorGuid)) {\r
- if (!CompareMem (VariableName, GET_VARIABLE_NAME_PTR (Variable[Index]), Variable[Index]->NameSize)) {\r
+ if (CompareMem (VariableName, GET_VARIABLE_NAME_PTR (Variable[Index]), Variable[Index]->NameSize) == 0) {\r
PtrTrack->CurrPtr = Variable[Index];\r
PtrTrack->Volatile = (BOOLEAN) Index;\r
return EFI_SUCCESS;\r
// Variable is found\r
//\r
if (Variable.CurrPtr->StartId == VARIABLE_DATA && Variable.CurrPtr->State == VAR_ADDED) {\r
- if (!(EfiAtRuntime () && !(Variable.CurrPtr->Attributes & EFI_VARIABLE_RUNTIME_ACCESS))) {\r
+ if (!(EfiAtRuntime () && (Variable.CurrPtr->Attributes & EFI_VARIABLE_RUNTIME_ACCESS == 0))) {\r
VarNameSize = Variable.CurrPtr->NameSize;\r
if (VarNameSize <= *VariableNameSize) {\r
CopyMem (\r
//\r
// Only variable have NV attribute can be updated/deleted in Runtime\r
//\r
- if (!(Variable.CurrPtr->Attributes & EFI_VARIABLE_NON_VOLATILE)) {\r
+ if ((Variable.CurrPtr->Attributes & EFI_VARIABLE_NON_VOLATILE) == 0) {\r
Status = EFI_INVALID_PARAMETER;\r
goto Done;\r
}\r
// then return to the caller immediately.\r
//\r
if (Variable.CurrPtr->DataSize == DataSize &&\r
- !CompareMem (Data, GetVariableDataPtr (Variable.CurrPtr), DataSize)\r
+ CompareMem (Data, GetVariableDataPtr (Variable.CurrPtr), DataSize) == 0\r
) {\r
Status = EFI_SUCCESS;\r
goto Done;\r
\r
VARIABLE_INFO_ENTRY *gVariableInfo = NULL;\r
\r
-EFI_STATUS\r
-FtwVariableSpace (\r
- IN EFI_PHYSICAL_ADDRESS VariableBaseAddress,\r
- IN UINT8 *Buffer,\r
- IN UINTN BufferSize\r
- );\r
-\r
-\r
/**\r
Acquires lock only at boot time. Simply returns at runtime.\r
\r
if (Variable[Index]->State == VAR_ADDED || \r
Variable[Index]->State == (VAR_IN_DELETED_TRANSITION & VAR_ADDED)\r
) {\r
- if (!EfiAtRuntime () || (Variable[Index]->Attributes & EFI_VARIABLE_RUNTIME_ACCESS)) {\r
+ if (!EfiAtRuntime () || (Variable[Index]->Attributes & EFI_VARIABLE_RUNTIME_ACCESS != 0)) {\r
if (VariableName[0] == 0) {\r
if (Variable[Index]->State == (VAR_IN_DELETED_TRANSITION & VAR_ADDED)) {\r
InDeletedVariable = Variable[Index];\r
Point = (VOID *) GetVariableNamePtr (Variable[Index]);\r
\r
ASSERT (NameSizeOfVariable (Variable[Index]) != 0);\r
- if (!CompareMem (VariableName, Point, NameSizeOfVariable (Variable[Index]))) {\r
+ if (CompareMem (VariableName, Point, NameSizeOfVariable (Variable[Index])) == 0) {\r
if (Variable[Index]->State == (VAR_IN_DELETED_TRANSITION & VAR_ADDED)) {\r
InDeletedVariable = Variable[Index];\r
InDeletedStorageIndex = Index;\r
// Variable is found\r
//\r
if (IsValidVariableHeader (Variable.CurrPtr) && Variable.CurrPtr->State == VAR_ADDED) {\r
- if (!(EfiAtRuntime () && !(Variable.CurrPtr->Attributes & EFI_VARIABLE_RUNTIME_ACCESS))) {\r
+ if ((EfiAtRuntime () && ((Variable.CurrPtr->Attributes & EFI_VARIABLE_RUNTIME_ACCESS) == 0)) == 0) {\r
VarNameSize = NameSizeOfVariable (Variable.CurrPtr);\r
ASSERT (VarNameSize != 0);\r
\r
//\r
// Only variable have NV attribute can be updated/deleted in Runtime\r
//\r
- if (!(Variable.CurrPtr->Attributes & EFI_VARIABLE_NON_VOLATILE)) {\r
+ if ((Variable.CurrPtr->Attributes & EFI_VARIABLE_NON_VOLATILE) == 0) {\r
Status = EFI_INVALID_PARAMETER;\r
goto Done; \r
}\r
VOID *Data;\r
} VARIABLE_CACHE_ENTRY;\r
\r
+/**\r
+ Writes a buffer to variable storage space, in the working block.\r
+\r
+ This function writes a buffer to variable storage space into firmware\r
+ volume block device. The destination is specified by parameter\r
+ VariableBase. Fault Tolerant Write protocol is used for writing.\r
+\r
+ @param VariableBase Base address of variable to write\r
+ @param Buffer Point to the data buffer\r
+ @param BufferSize The number of bytes of the data Buffer\r
+\r
+ @retval EFI_SUCCESS The function completed successfully\r
+ @retval EFI_NOT_FOUND Fail to locate Fault Tolerant Write protocol\r
+ @retval EFI_ABORTED The function could not complete successfully\r
+\r
+**/\r
+EFI_STATUS\r
+FtwVariableSpace (\r
+ IN EFI_PHYSICAL_ADDRESS VariableBase,\r
+ IN UINT8 *Buffer,\r
+ IN UINTN BufferSize\r
+ );\r
+\r
+\r
#endif\r