From 0aac2f777a688a146050bed47753e2dcf801d3c7 Mon Sep 17 00:00:00 2001 From: "Yao, Jiewen" Date: Fri, 22 Feb 2019 21:30:34 +0800 Subject: MdePkg/BaseLib: Add Shadow Stack Support for X86. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1521 This patch adds SSP - shadow stack pointer to JumpBuffer. It will be used for the platform that enabled CET/ShadowStack. We add gEfiMdePkgTokenSpaceGuid.PcdControlFlowEnforcementPropertyMask to control the global enable/disable. Cc: Michael D Kinney Cc: Liming Gao Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yao Jiewen Reviewed-by: Ray Ni Regression-tested-by: Laszlo Ersek --- MdePkg/Include/Library/BaseLib.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'MdePkg/Include') diff --git a/MdePkg/Include/Library/BaseLib.h b/MdePkg/Include/Library/BaseLib.h index 9c42f82a7d..616ba2e95b 100644 --- a/MdePkg/Include/Library/BaseLib.h +++ b/MdePkg/Include/Library/BaseLib.h @@ -31,6 +31,7 @@ typedef struct { UINT32 Ebp; UINT32 Esp; UINT32 Eip; + UINT32 Ssp; } BASE_LIBRARY_JUMP_BUFFER; #define BASE_LIBRARY_JUMP_BUFFER_ALIGNMENT 4 @@ -54,6 +55,7 @@ typedef struct { UINT64 Rip; UINT64 MxCsr; UINT8 XmmBuffer[160]; ///< XMM6-XMM15. + UINT64 Ssp; } BASE_LIBRARY_JUMP_BUFFER; #define BASE_LIBRARY_JUMP_BUFFER_ALIGNMENT 8 -- cgit v1.2.3