summaryrefslogtreecommitdiff
path: root/source/a/elilo/elilo.zeroes.cc_blob_address.diff
diff options
context:
space:
mode:
Diffstat (limited to 'source/a/elilo/elilo.zeroes.cc_blob_address.diff')
-rw-r--r--source/a/elilo/elilo.zeroes.cc_blob_address.diff40
1 files changed, 40 insertions, 0 deletions
diff --git a/source/a/elilo/elilo.zeroes.cc_blob_address.diff b/source/a/elilo/elilo.zeroes.cc_blob_address.diff
new file mode 100644
index 00000000..5c98d756
--- /dev/null
+++ b/source/a/elilo/elilo.zeroes.cc_blob_address.diff
@@ -0,0 +1,40 @@
+diff -Naur elilo-3.16-source.orig/x86_64/sysdeps.h elilo-3.16-source/x86_64/sysdeps.h
+--- elilo-3.16-source.orig/x86_64/sysdeps.h 2012-11-19 19:01:04.000000000 -0200
++++ elilo-3.16-source/x86_64/sysdeps.h 2022-08-05 15:51:02.700147207 -0300
+@@ -184,7 +184,12 @@
+ /* 0xA0 */ UINT16 mca_info_len; /* LDR */
+ /* 0xA2 */ UINT8 mca_info_buf[0x10]; /* LDR */
+
+-/* 0xB2 */ UINT8 pad_4[0x10E]; /* unused */
++/* 0xB2 */ UINT8 pad_41[0x8A]; /* unused */
++
++/* Confidential Computing Blob */
++/* 0x13C */ UINT32 cc_blob_address; /* LDR */
++
++/* 0x140 */ UINT8 pad_42[0x80]; /* unused */
+
+ /* EFI boot loader signature. */
+ /* 0x1C0 */ UINT8 efi_loader_sig[4]; /* LDR */
+diff -Naur elilo-3.16-source.orig/x86_64/system.c elilo-3.16-source/x86_64/system.c
+--- elilo-3.16-source.orig/x86_64/system.c 2013-03-29 16:03:15.000000000 -0300
++++ elilo-3.16-source/x86_64/system.c 2022-08-05 15:50:45.772968102 -0300
+@@ -684,6 +684,11 @@
+ ZeroMem(bp->s.hd1_info, sizeof bp->s.hd1_info);
+
+ /*
++ * Disable Confidential Computing blob
++ */
++ bp->s.cc_blob_address = 0;
++
++ /*
+ * Memory info.
+ */
+
+@@ -826,6 +831,7 @@
+ CHECK_OFFSET(hd1_info, 0x90, L"");
+ CHECK_OFFSET(mca_info_len, 0xA0, L"%xh");
+ CHECK_OFFSET(mca_info_buf, 0xA2, L"");
++ CHECK_OFFSET(cc_blob_address, 0x13C, L"%xh");
+ CHECK_OFFSET(efi_loader_sig, 0x1C0, L"'%-4.4a'");
+ CHECK_OFFSET(efi_sys_tbl, 0x1C4, L"%xh");
+ CHECK_OFFSET(efi_mem_desc_size, 0x1C8, L"%xh");