Comment 0 for bug 1790724

[Impact]
All UEFI users.

[Test case]

== shim ==
1) Enable Secure Boot in firmware.
2) Update to new shim and shim-signed packages (shim 15+, shim-signed 1.37~)
3) Validate that the system still boots and validates the shim image as well as the grub binary.

== MokManager ==
0) Generate a new self-signed certificate. You can use "sudo update-secureboot-policy --new-mok" for that purpose, the DER file will be in /var/lib/shim-signed/mok.
1) Run 'sudo mokutil --enable-validation'
2) Follow prompts on screen to enable validation if applicable.
3) Run 'sudo mokutil --import <certificate.der>'
4) Follow the prompts on screen to import a new certificate.
5) Reboot
6) Follow prompts to import the new certificate and enable validation.
7) Validate that the system boots all the way to userland.
8) Verify that the certificate has been correctly imported, it should be listed in the output of 'sudo mokutil --list-enrolled'.

== mokutil ==
1) Run 'sudo mokutil --timeout 14' (or any other arbitrary value).
2) follow the steps for MokManager tests above.
3) Validate that the MokManager prompt happens and shows a timeout appropriate for the timeout value set using the mokutil command.

Also validate 'mokutil --timeout 0' works correctly, where the MokManager never times out.

[Regression potential]
Possible regressions might include failure to load shim or MokManager, or failure to validate an EFI binary (which usually translates in a Security Violation message. Any such issues should be investigated as possible regressions caused by this update.

---

Backport shim to all supported releases of Ubuntu.

Include mokutil changes to support new timeout feature.