summaryrefslogtreecommitdiff
path: root/shim.c
diff options
context:
space:
mode:
Diffstat (limited to 'shim.c')
-rw-r--r--shim.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/shim.c b/shim.c
index 502a91dd..c8759a58 100644
--- a/shim.c
+++ b/shim.c
@@ -1767,18 +1767,24 @@ EFI_STATUS efi_main (EFI_HANDLE image_handle, EFI_SYSTEM_TABLE *passed_systab)
efi_status = init_grub(image_handle);
+#if defined(OVERRIDE_SECURITY_POLICY)
+ /*
+ * Clean up the security protocol hook
+ */
+ security_policy_uninstall();
+#endif
+
/*
* If we're back here then clean everything up before exiting
*/
uefi_call_wrapper(BS->UninstallProtocolInterface, 3, handle,
&shim_lock_guid, &shim_lock_interface);
-#if defined(OVERRIDE_SECURITY_POLICY)
+
/*
- * Clean up the security protocol hook
+ * Remove our hooks from system services.
*/
- security_policy_uninstall();
-#endif
+ unhook_system_services();
/*
* Free the space allocated for the alternative 2nd stage loader