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 )