[PATCH] uefirtvariable: fix the unchecked return value
Ivan Hu
ivan.hu at canonical.com
Wed May 8 03:06:30 UTC 2013
Coverity CID #997310: Unchecked return value
Need to check the return value for calling function "ioctl".
Signed-off-by: Ivan Hu <ivan.hu at canonical.com>
---
src/uefi/uefirtvariable/uefirtvariable.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/uefi/uefirtvariable/uefirtvariable.c b/src/uefi/uefirtvariable/uefirtvariable.c
index 16cd240..7c2fc1f 100644
--- a/src/uefi/uefirtvariable/uefirtvariable.c
+++ b/src/uefi/uefirtvariable/uefirtvariable.c
@@ -858,6 +858,7 @@ static int setvariable_invalidattr(
EFI_GUID *gtestguid,
const uint8_t datadiff)
{
+ long ioret;
struct efi_setvariable setvariable;
uint64_t status;
uint64_t dataindex;
@@ -873,9 +874,9 @@ static int setvariable_invalidattr(
setvariable.Data = data;
setvariable.status = &status;
- ioctl(fd, EFI_RUNTIME_SET_VARIABLE, &setvariable);
+ ioret = ioctl(fd, EFI_RUNTIME_SET_VARIABLE, &setvariable);
- if (status == EFI_SUCCESS) {
+ if ((status == EFI_SUCCESS) && (ioret != -1)) {
fwts_warning(fw,
"After ExitBootServices() is performed, the "
"attributes %" PRIu32 ", "
--
1.7.9.5
More information about the fwts-devel
mailing list