From: Lennart Poettering Date: Fri, 22 Jun 2018 17:33:42 +0000 (+0200) Subject: bootspec: access EFI variables on on EFI boots X-Git-Tag: v240~610^2~12 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9c4a6c131962fd5c5553e83bfc83a4c8ceec0211;p=thirdparty%2Fsystemd.git bootspec: access EFI variables on on EFI boots --- diff --git a/src/shared/bootspec.c b/src/shared/bootspec.c index ed4cd20bc86..445cc378ff5 100644 --- a/src/shared/bootspec.c +++ b/src/shared/bootspec.c @@ -377,13 +377,15 @@ int boot_entries_load_config(const char *esp_path, BootConfig *config) { if (r < 0) return log_error_errno(r, "Failed to uniquify boot entries: %m"); - r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderEntryOneShot", &config->entry_oneshot); - if (r < 0 && r != -ENOENT) - return log_error_errno(r, "Failed to read EFI var \"LoaderEntryOneShot\": %m"); - - r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderEntryDefault", &config->entry_default); - if (r < 0 && r != -ENOENT) - return log_error_errno(r, "Failed to read EFI var \"LoaderEntryDefault\": %m"); + if (is_efi_boot()) { + r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderEntryOneShot", &config->entry_oneshot); + if (r < 0 && r != -ENOENT) + return log_error_errno(r, "Failed to read EFI var \"LoaderEntryOneShot\": %m"); + + r = efi_get_variable_string(EFI_VENDOR_LOADER, "LoaderEntryDefault", &config->entry_default); + if (r < 0 && r != -ENOENT) + return log_error_errno(r, "Failed to read EFI var \"LoaderEntryDefault\": %m"); + } config->default_entry = boot_entries_select_default(config); return 0;