Message ID | 1461122407-9772-3-git-send-email-ivan.hu@canonical.com |
---|---|
State | Accepted |
Headers | show |
On 2016-04-20 11:20 AM, Ivan Hu wrote: > Signed-off-by: Ivan Hu <ivan.hu@canonical.com> > --- > src/uefi/uefidump/uefidump.c | 21 ++++++++++++--------- > 1 file changed, 12 insertions(+), 9 deletions(-) > > diff --git a/src/uefi/uefidump/uefidump.c b/src/uefi/uefidump/uefidump.c > index 43f70cf..6a3fcdb 100644 > --- a/src/uefi/uefidump/uefidump.c > +++ b/src/uefi/uefidump/uefidump.c > @@ -807,7 +807,6 @@ static void uefidump_info_bootdev(fwts_framework *fw, fwts_uefi_var *var) > { > fwts_uefi_load_option *load_option; > char tmp[2048]; > - char *path; > size_t len, offset; > > if (var->datalen < sizeof(fwts_uefi_load_option)) > @@ -820,15 +819,19 @@ static void uefidump_info_bootdev(fwts_framework *fw, fwts_uefi_var *var) > len = fwts_uefi_str16len(load_option->description); > fwts_log_info_verbatum(fw, " Info: %s\n", tmp); > > - /* Skip over description to get to packed path, unpack path and print */ > - offset = sizeof(load_option->attributes) + > - sizeof(load_option->file_path_list_length) + > - (sizeof(uint16_t) * (len + 1)); > + if (load_option->file_path_list_length != 0) { > + char *path; > > - path = uefidump_build_dev_path(NULL, > - (fwts_uefi_dev_path *)(var->data + offset), var->datalen - offset); > - fwts_log_info_verbatum(fw, " Path: %s.", path); > - free(path); > + /* Skip over description to get to packed path, unpack path and print */ > + offset = sizeof(load_option->attributes) + > + sizeof(load_option->file_path_list_length) + > + (sizeof(uint16_t) * (len + 1)); > + > + path = uefidump_build_dev_path(NULL, > + (fwts_uefi_dev_path *)(var->data + offset), var->datalen - offset); > + fwts_log_info_verbatum(fw, " Path: %s.", path); > + free(path); > + } > > offset = sizeof(load_option->attributes) + > sizeof(load_option->file_path_list_length) + > Acked-by: Alex Hung <alex.hung@canonical.com>
On 20/04/16 06:26, Alex Hung wrote: > On 2016-04-20 11:20 AM, Ivan Hu wrote: >> Signed-off-by: Ivan Hu <ivan.hu@canonical.com> >> --- >> src/uefi/uefidump/uefidump.c | 21 ++++++++++++--------- >> 1 file changed, 12 insertions(+), 9 deletions(-) >> >> diff --git a/src/uefi/uefidump/uefidump.c b/src/uefi/uefidump/uefidump.c >> index 43f70cf..6a3fcdb 100644 >> --- a/src/uefi/uefidump/uefidump.c >> +++ b/src/uefi/uefidump/uefidump.c >> @@ -807,7 +807,6 @@ static void uefidump_info_bootdev(fwts_framework >> *fw, fwts_uefi_var *var) >> { >> fwts_uefi_load_option *load_option; >> char tmp[2048]; >> - char *path; >> size_t len, offset; >> >> if (var->datalen < sizeof(fwts_uefi_load_option)) >> @@ -820,15 +819,19 @@ static void uefidump_info_bootdev(fwts_framework >> *fw, fwts_uefi_var *var) >> len = fwts_uefi_str16len(load_option->description); >> fwts_log_info_verbatum(fw, " Info: %s\n", tmp); >> >> - /* Skip over description to get to packed path, unpack path and >> print */ >> - offset = sizeof(load_option->attributes) + >> - sizeof(load_option->file_path_list_length) + >> - (sizeof(uint16_t) * (len + 1)); >> + if (load_option->file_path_list_length != 0) { >> + char *path; >> >> - path = uefidump_build_dev_path(NULL, >> - (fwts_uefi_dev_path *)(var->data + offset), var->datalen >> - offset); >> - fwts_log_info_verbatum(fw, " Path: %s.", path); >> - free(path); >> + /* Skip over description to get to packed path, unpack path >> and print */ >> + offset = sizeof(load_option->attributes) + >> + sizeof(load_option->file_path_list_length) + >> + (sizeof(uint16_t) * (len + 1)); >> + >> + path = uefidump_build_dev_path(NULL, >> + (fwts_uefi_dev_path *)(var->data + offset), >> var->datalen - offset); >> + fwts_log_info_verbatum(fw, " Path: %s.", path); >> + free(path); >> + } >> >> offset = sizeof(load_option->attributes) + >> sizeof(load_option->file_path_list_length) + >> > > > Acked-by: Alex Hung <alex.hung@canonical.com> > Acked-by: Colin Ian King <colin.king@canonical.com>
diff --git a/src/uefi/uefidump/uefidump.c b/src/uefi/uefidump/uefidump.c index 43f70cf..6a3fcdb 100644 --- a/src/uefi/uefidump/uefidump.c +++ b/src/uefi/uefidump/uefidump.c @@ -807,7 +807,6 @@ static void uefidump_info_bootdev(fwts_framework *fw, fwts_uefi_var *var) { fwts_uefi_load_option *load_option; char tmp[2048]; - char *path; size_t len, offset; if (var->datalen < sizeof(fwts_uefi_load_option)) @@ -820,15 +819,19 @@ static void uefidump_info_bootdev(fwts_framework *fw, fwts_uefi_var *var) len = fwts_uefi_str16len(load_option->description); fwts_log_info_verbatum(fw, " Info: %s\n", tmp); - /* Skip over description to get to packed path, unpack path and print */ - offset = sizeof(load_option->attributes) + - sizeof(load_option->file_path_list_length) + - (sizeof(uint16_t) * (len + 1)); + if (load_option->file_path_list_length != 0) { + char *path; - path = uefidump_build_dev_path(NULL, - (fwts_uefi_dev_path *)(var->data + offset), var->datalen - offset); - fwts_log_info_verbatum(fw, " Path: %s.", path); - free(path); + /* Skip over description to get to packed path, unpack path and print */ + offset = sizeof(load_option->attributes) + + sizeof(load_option->file_path_list_length) + + (sizeof(uint16_t) * (len + 1)); + + path = uefidump_build_dev_path(NULL, + (fwts_uefi_dev_path *)(var->data + offset), var->datalen - offset); + fwts_log_info_verbatum(fw, " Path: %s.", path); + free(path); + } offset = sizeof(load_option->attributes) + sizeof(load_option->file_path_list_length) +
Signed-off-by: Ivan Hu <ivan.hu@canonical.com> --- src/uefi/uefidump/uefidump.c | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-)