https://git.reactos.org/?p=reactos.git;a=commitdiff;h=b0f3e623b7efdd04fca9523d0168ab14f5bae8ab

commit b0f3e623b7efdd04fca9523d0168ab14f5bae8ab
Author:     Timo Kreuzer <[email protected]>
AuthorDate: Fri Jan 17 11:42:45 2025 +0200
Commit:     Timo Kreuzer <[email protected]>
CommitDate: Sun Jan 26 18:08:55 2025 +0200

    [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(+)

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 <intrin.h>
+#include <ntrtl.h>
+
+#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
 )
 

Reply via email to