From b0f3e623b7efdd04fca9523d0168ab14f5bae8ab Mon Sep 17 00:00:00 2001 From: Timo Kreuzer Date: Fri, 17 Jan 2025 11:42:45 +0200 Subject: [PATCH] [UCRT:VCRUNTIME] Implement __report_gsfailure() --- sdk/lib/ucrt/vcruntime/__report_gsfailure.c | 21 +++++++++++++++++++++ sdk/lib/ucrt/vcruntime/vcruntime.cmake | 1 + 2 files changed, 22 insertions(+) create mode 100644 sdk/lib/ucrt/vcruntime/__report_gsfailure.c diff --git a/sdk/lib/ucrt/vcruntime/__report_gsfailure.c b/sdk/lib/ucrt/vcruntime/__report_gsfailure.c new file mode 100644 index 00000000000..d45f96df22f --- /dev/null +++ b/sdk/lib/ucrt/vcruntime/__report_gsfailure.c @@ -0,0 +1,21 @@ +// +// __report_gsfailure.c +// +// Copyright (c) 2024 Timo Kreuzer +// +// Implementation of __report_gsfailure. +// +// SPDX-License-Identifier: MIT +// + +#include +#include + +#if defined(_M_IX86) +__declspec(noreturn) void __cdecl __report_gsfailure(void) +#else +__declspec(noreturn) void __cdecl __report_gsfailure(_In_ uintptr_t _StackCookie) +#endif +{ + __fastfail(FAST_FAIL_STACK_COOKIE_CHECK_FAILURE); +} diff --git a/sdk/lib/ucrt/vcruntime/vcruntime.cmake b/sdk/lib/ucrt/vcruntime/vcruntime.cmake index e4857cfe95c..3e571e76517 100644 --- a/sdk/lib/ucrt/vcruntime/vcruntime.cmake +++ b/sdk/lib/ucrt/vcruntime/vcruntime.cmake @@ -1,5 +1,6 @@ list(APPEND UCRT_VCRUNTIME_SOURCES + vcruntime/__report_gsfailure.c vcruntime/__security_init_cookie.c )