[PATCH 2/2] efi_runtime: add checking variable_name input
Ivan Hu
ivan.hu at canonical.com
Tue Aug 9 06:29:31 UTC 2016
Add checking variable name userspace input before copy from it.
Signed-off-by: Ivan Hu <ivan.hu at canonical.com>
---
efi_runtime/efi_runtime.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/efi_runtime/efi_runtime.c b/efi_runtime/efi_runtime.c
index 86076d3..4f2b372 100644
--- a/efi_runtime/efi_runtime.c
+++ b/efi_runtime/efi_runtime.c
@@ -251,7 +251,7 @@ static long efi_runtime_set_variable(unsigned long arg)
struct efi_setvariable setvariable_local;
efi_guid_t vendor_guid;
efi_status_t status;
- uint16_t *name;
+ uint16_t *name = NULL;
void *data;
int rv;
@@ -264,9 +264,11 @@ static long efi_runtime_set_variable(unsigned long arg)
sizeof(vendor_guid)))
return -EFAULT;
- rv = copy_ucs2_from_user(&name, setvariable_local.variable_name);
- if (rv)
- return rv;
+ if (setvariable_local.variable_name) {
+ rv = copy_ucs2_from_user(&name, setvariable_local.variable_name);
+ if (rv)
+ return rv;
+ }
data = kmalloc(setvariable_local.data_size, GFP_KERNEL);
if (!data) {
--
1.9.1
More information about the fwts-devel
mailing list