提交 2419b161 编写于 作者: A AKASHI Takahiro 提交者: Alexander Graf

efi_loader: allow device == NULL in efi_dp_from_name()

This is a preparatory patch for use in efi_serialize_load_option()
as a load option's file_path should have both a device path and
a file path.
Signed-off-by: NAKASHI Takahiro <takahiro.akashi@linaro.org>
Signed-off-by: NAlexander Graf <agraf@suse.de>
上级 b989648c
......@@ -955,7 +955,7 @@ efi_status_t efi_dp_from_name(const char *dev, const char *devnr,
char filename[32] = { 0 }; /* dp->str is u16[32] long */
char *s;
if (!device || (path && !file))
if (path && !file)
return EFI_INVALID_PARAMETER;
is_net = !strcmp(dev, "Net");
......@@ -965,10 +965,12 @@ efi_status_t efi_dp_from_name(const char *dev, const char *devnr,
if (part < 0)
return EFI_INVALID_PARAMETER;
*device = efi_dp_from_part(desc, part);
if (device)
*device = efi_dp_from_part(desc, part);
} else {
#ifdef CONFIG_NET
*device = efi_dp_from_eth();
if (device)
*device = efi_dp_from_eth();
#endif
}
......@@ -985,7 +987,8 @@ efi_status_t efi_dp_from_name(const char *dev, const char *devnr,
s = filename;
while ((s = strchr(s, '/')))
*s++ = '\\';
*file = efi_dp_from_file(NULL, 0, filename);
*file = efi_dp_from_file(((!is_net && device) ? desc : NULL),
part, filename);
return EFI_SUCCESS;
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册