aboutsummaryrefslogtreecommitdiff
path: root/website/static/security/patches/EN-25:12
diff options
context:
space:
mode:
Diffstat (limited to 'website/static/security/patches/EN-25:12')
-rw-r--r--website/static/security/patches/EN-25:12/efi.patch59
-rw-r--r--website/static/security/patches/EN-25:12/efi.patch.asc16
2 files changed, 75 insertions, 0 deletions
diff --git a/website/static/security/patches/EN-25:12/efi.patch b/website/static/security/patches/EN-25:12/efi.patch
new file mode 100644
index 0000000000..cd15bf1b89
--- /dev/null
+++ b/website/static/security/patches/EN-25:12/efi.patch
@@ -0,0 +1,59 @@
+--- stand/efi/loader/bootinfo.c.orig
++++ stand/efi/loader/bootinfo.c
+@@ -447,9 +447,15 @@
+ module = *modulep;
+ file_addmetadata(kfp, MODINFOMD_MODULEP, sizeof(module), &module);
+ #endif
+-#if defined(EFI) && !defined(__i386__)
++#ifdef EFI
++#ifndef __i386__
+ file_addmetadata(kfp, MODINFOMD_FW_HANDLE, sizeof(ST), &ST);
+ #endif
++#if defined(__amd64__) || defined(__i386__)
++ file_addmetadata(kfp, MODINFOMD_EFI_ARCH, sizeof(MACHINE_ARCH),
++ MACHINE_ARCH);
++#endif
++#endif
+ #ifdef LOADER_GELI_SUPPORT
+ geli_export_key_metadata(kfp);
+ #endif
+--- sys/amd64/amd64/machdep.c.orig
++++ sys/amd64/amd64/machdep.c
+@@ -1691,6 +1691,27 @@
+ efi_map_sysctl_handler, "S,efi_map_header",
+ "Raw EFI Memory Map");
+
++static int
++efi_arch_sysctl_handler(SYSCTL_HANDLER_ARGS)
++{
++ char *arch;
++ caddr_t kmdp;
++
++ kmdp = preload_search_by_type("elf kernel");
++ if (kmdp == NULL)
++ kmdp = preload_search_by_type("elf64 kernel");
++
++ arch = (char *)preload_search_info(kmdp,
++ MODINFO_METADATA | MODINFOMD_EFI_ARCH);
++ if (arch == NULL)
++ return (0);
++
++ return (SYSCTL_OUT_STR(req, arch));
++}
++SYSCTL_PROC(_machdep, OID_AUTO, efi_arch,
++ CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, 0,
++ efi_arch_sysctl_handler, "A", "EFI Firmware Architecture");
++
+ void
+ spinlock_enter(void)
+ {
+--- sys/x86/include/metadata.h.orig
++++ sys/x86/include/metadata.h
+@@ -34,6 +34,7 @@
+ #define MODINFOMD_EFI_FB 0x1005
+ #define MODINFOMD_MODULEP 0x1006
+ #define MODINFOMD_VBE_FB 0x1007
++#define MODINFOMD_EFI_ARCH 0x1008
+
+ struct efi_map_header {
+ uint64_t memory_size;
diff --git a/website/static/security/patches/EN-25:12/efi.patch.asc b/website/static/security/patches/EN-25:12/efi.patch.asc
new file mode 100644
index 0000000000..ac25268b3a
--- /dev/null
+++ b/website/static/security/patches/EN-25:12/efi.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEthUnfoEIffdcgYM7bljekB8AGu8FAmiVShwACgkQbljekB8A
+Gu96qRAAw0SdIOM6CoKh6R91MNsbA4wBL4TtrlBG8pPBDkhP8N1zn3hYOFu10MA8
+hEMB08WdHm6ruLG8Hlb7toVIvs2xM83CUZnywDvAHryuCZ81/JrzPU7MKJCAhz8/
+wqhGN56qsn9R7jSNYS4KgGSZlK+742OJD9hRgbUQ57ZRlpN0/VLRovTPQ9KPVPEG
+OaNKZh4vcAKjIYHpLmKdtKnM7BY7Ep4r9ZUfIck147PiV1T6b4eC/k4ZjIXnKLX5
+EfxB93r7DaOYSsyBI8IDMMyJFD7JcsWWzacoOoLqak0YciuaJAFFObJ8r5EpOIH/
+YfC0r+siD4tL+RYd4DlSNdB9xLhLA9tGQ4x1IMJspMj0vXb2QY+docgUG6QUzqCI
+cUaZSm7kWnyELir4NfYHocpRZP8dTQzB0kLkXCz8DY8crhhhMEwfLBKoz7j7mMTL
+d+M5cSNqwbHRrSC1DG9BrC8r4LWmZ7Rtbj90sTtcTCv9Ue5K4TOW9+h8p08LpSHk
+p93Jp7SQxy8qniaANnciXgjXS48HlReWL1GbFXI372M01qNAxdP3ZysvUpm9OKuV
+KEyYsyhe+324fKKtEhq5hSJD3eyCycih3eN9/VCDOQqKEnfG4Y9+Mch7MiQt3Z3i
+1Nc+Ri9sUgpE3fXMa/OEapu6CX9QLUSkLwsscP/wIRvasbX1qQw=
+=rniG
+-----END PGP SIGNATURE-----