summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/libc-internal.h4
-rw-r--r--libc/sysdeps/linux/common/ssp-local.c2
-rw-r--r--libc/sysdeps/linux/common/ssp.c1
3 files changed, 4 insertions, 3 deletions
diff --git a/include/libc-internal.h b/include/libc-internal.h
index 9fb1ea2a3..dfd1dfc55 100644
--- a/include/libc-internal.h
+++ b/include/libc-internal.h
@@ -70,6 +70,10 @@ extern void __chk_fail(void) attribute_noreturn;
libc_hidden_proto(__chk_fail)
# endif
+# ifdef __UCLIBC_HAS_SSP__
+extern void __stack_chk_fail(void) attribute_noreturn __cold;
+# endif
+
# endif /* IS_IN_libc */
#endif /* __ASSEMBLER__ */
diff --git a/libc/sysdeps/linux/common/ssp-local.c b/libc/sysdeps/linux/common/ssp-local.c
index 202d956a5..6b1809a76 100644
--- a/libc/sysdeps/linux/common/ssp-local.c
+++ b/libc/sysdeps/linux/common/ssp-local.c
@@ -23,8 +23,6 @@
#include <features.h>
-extern void __stack_chk_fail (void) attribute_noreturn;
-
/* On some architectures, this helps needless PIC pointer setup
that would be needed just for the __stack_chk_fail call. */
diff --git a/libc/sysdeps/linux/common/ssp.c b/libc/sysdeps/linux/common/ssp.c
index df242cc69..07513e7c4 100644
--- a/libc/sysdeps/linux/common/ssp.c
+++ b/libc/sysdeps/linux/common/ssp.c
@@ -88,7 +88,6 @@ void __stack_smash_handler(char func[], int damaged)
#endif
#ifdef __UCLIBC_HAS_SSP__
-void __stack_chk_fail(void) attribute_noreturn __cold;
void __stack_chk_fail(void)
{
static const char msg1[] = "stack smashing detected: ";