]> git.proxmox.com Git - efi-boot-shim.git/blobdiff - shim.c
New upstream version 15.4
[efi-boot-shim.git] / shim.c
diff --git a/shim.c b/shim.c
index 117c8f42421f91423b8d6b9189506feb6c4b1e5f..c5cfbb830d72e974b3a4c3730568d1fb1b5e82cc 100644 (file)
--- a/shim.c
+++ b/shim.c
@@ -1895,7 +1895,7 @@ efi_main (EFI_HANDLE passed_image_handle, EFI_SYSTEM_TABLE *passed_systab)
                L"shim_init() failed",
                L"import of SBAT data failed",
                L"SBAT self-check failed",
-               L"SBAT UEFI variable setting failed",
+               SBAT_VAR_NAME L" UEFI variable setting failed",
                NULL
        };
        enum {
@@ -1935,12 +1935,12 @@ efi_main (EFI_HANDLE passed_image_handle, EFI_SYSTEM_TABLE *passed_systab)
 
        efi_status = set_sbat_uefi_variable();
        if (EFI_ERROR(efi_status) && secure_mode()) {
-               perror(L"SBAT variable initialization failed\n");
+               perror(L"%s variable initialization failed\n", SBAT_VAR_NAME);
                msg = SET_SBAT;
                goto die;
        } else if (EFI_ERROR(efi_status)) {
-               dprint(L"SBAT variable initialization failed: %r\n",
-                      efi_status);
+               dprint(L"%s variable initialization failed: %r\n",
+                      SBAT_VAR_NAME, efi_status);
        }
 
        if (secure_mode()) {
@@ -1950,19 +1950,20 @@ efi_main (EFI_HANDLE passed_image_handle, EFI_SYSTEM_TABLE *passed_systab)
                INIT_LIST_HEAD(&sbat_var);
                efi_status = parse_sbat_var(&sbat_var);
                if (EFI_ERROR(efi_status)) {
-                       perror(L"Parsing SBAT variable failed: %r\n",
-                               efi_status);
+                       perror(L"Parsing %s variable failed: %r\n",
+                               SBAT_VAR_NAME, efi_status);
                        msg = IMPORT_SBAT;
                        goto die;
                }
 
-               efi_status = handle_sbat(sbat_start, sbat_end - sbat_start);
+               efi_status = handle_sbat(sbat_start, sbat_end - sbat_start - 1);
                if (EFI_ERROR(efi_status)) {
                        perror(L"Verifiying shim SBAT data failed: %r\n",
                               efi_status);
                        msg = SBAT_SELF_CHECK;
                        goto die;
                }
+               dprint(L"SBAT self-check succeeded\n");
        }
 
        init_openssl();