aboutsummaryrefslogtreecommitdiffstats
path: root/main/libc0.9.32/compat-stack-guard.patch
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2011-03-18 15:33:32 +0200
committerTimo Teräs <timo.teras@iki.fi>2011-03-18 15:33:32 +0200
commit57009c41f7ffabb6e76c642ab267b835260045ff (patch)
treee0c48652139ad1c3788e3df9f208b57ac4481ba4 /main/libc0.9.32/compat-stack-guard.patch
parent666fcc262b9181a7abefdd4c2caeb4bd859cf71b (diff)
downloadaports-57009c41f7ffabb6e76c642ab267b835260045ff.tar.bz2
aports-57009c41f7ffabb6e76c642ab267b835260045ff.tar.xz
main/libc0.9.32: update to 0.9.32-rc3 and refresh patches
* patches merged upstream dropped * refreshed compat-stack-guard.patch (weird that we still need this; we should recompile all apps depending on the symbol) * added three more patches that will help building and running openjdk
Diffstat (limited to 'main/libc0.9.32/compat-stack-guard.patch')
-rw-r--r--main/libc0.9.32/compat-stack-guard.patch70
1 files changed, 37 insertions, 33 deletions
diff --git a/main/libc0.9.32/compat-stack-guard.patch b/main/libc0.9.32/compat-stack-guard.patch
index 71d78bac5a..c69a9c5350 100644
--- a/main/libc0.9.32/compat-stack-guard.patch
+++ b/main/libc0.9.32/compat-stack-guard.patch
@@ -1,51 +1,55 @@
diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
-index 125cf96..bb47952 100644
+index 2857f7e..dce6fd8 100644
--- a/ldso/ldso/ldso.c
+++ b/ldso/ldso/ldso.c
-@@ -101,10 +101,10 @@ extern void _start(void);
+@@ -103,11 +103,7 @@ extern void _start(void);
#ifdef __UCLIBC_HAS_SSP__
# include <dl-osinfo.h>
- uintptr_t stack_chk_guard;
-+uintptr_t __stack_chk_guard attribute_relro;
- # ifndef THREAD_SET_STACK_GUARD
- /* Only exported for architectures that don't store the stack guard canary
- * in local thread area. */
--uintptr_t __stack_chk_guard attribute_relro;
- # ifdef __UCLIBC_HAS_SSP_COMPAT__
- strong_alias(__stack_chk_guard,__guard)
- # endif
-@@ -935,13 +935,12 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
- #ifdef __UCLIBC_HAS_SSP__
- /* Set up the stack checker's canary. */
+ static uintptr_t stack_chk_guard;
+-# ifndef THREAD_SET_STACK_GUARD
+-/* Only exported for architectures that don't store the stack guard canary
+- * in local thread area. */
+ uintptr_t __stack_chk_guard attribute_relro;
+-# endif
+ # ifdef __UCLIBC_HAS_SSP_COMPAT__
+ uintptr_t __guard attribute_relro;
+ # endif
+@@ -953,9 +949,8 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
stack_chk_guard = _dl_setup_stack_chk_guard ();
-+ __stack_chk_guard = stack_chk_guard;
# ifdef THREAD_SET_STACK_GUARD
THREAD_SET_STACK_GUARD (stack_chk_guard);
- # ifdef __UCLIBC_HAS_SSP_COMPAT__
- __guard = stack_chk_guard;
- # endif
-# else
- __stack_chk_guard = stack_chk_guard;
# endif
- #endif
-
++ __stack_chk_guard = stack_chk_guard;
+ # ifdef __UCLIBC_HAS_SSP_COMPAT__
+ __guard = stack_chk_guard;
+ # endif
diff --git a/libc/misc/internals/__uClibc_main.c b/libc/misc/internals/__uClibc_main.c
-index f7e45c6..b527068 100644
+index 315365a..78cd058 100644
--- a/libc/misc/internals/__uClibc_main.c
+++ b/libc/misc/internals/__uClibc_main.c
-@@ -43,13 +43,13 @@ void *__libc_stack_end = NULL;
-
+@@ -46,12 +46,7 @@ void *__libc_stack_end = NULL;
# ifdef __UCLIBC_HAS_SSP__
# include <dl-osinfo.h>
-+/* for gcc-4.1 non-TLS */
-+uintptr_t __stack_chk_guard attribute_relro;
- # ifndef THREAD_SET_STACK_GUARD
- /* Only exported for architectures that don't store the stack guard canary
- * in thread local area. */
- # include <stdint.h>
- uintptr_t stack_chk_guard;
+ static uintptr_t stack_chk_guard;
+-# ifndef THREAD_SET_STACK_GUARD
+-/* Only exported for architectures that don't store the stack guard canary
+- * in thread local area. */
-/* for gcc-4.1 non-TLS */
--uintptr_t __stack_chk_guard attribute_relro;
+ uintptr_t __stack_chk_guard attribute_relro;
+-# endif
/* for gcc-3.x + Etoh ssp */
- # ifdef __UCLIBC_HAS_SSP_COMPAT__
- # ifdef __HAVE_SHARED__
+ # ifdef __UCLIBC_HAS_SSP_COMPAT__
+ uintptr_t __guard attribute_relro;
+@@ -247,9 +242,8 @@ void __uClibc_init(void)
+ stack_chk_guard = _dl_setup_stack_chk_guard();
+ # ifdef THREAD_SET_STACK_GUARD
+ THREAD_SET_STACK_GUARD (stack_chk_guard);
+-# else
+- __stack_chk_guard = stack_chk_guard;
+ # endif
++ __stack_chk_guard = stack_chk_guard;
+ # ifdef __UCLIBC_HAS_SSP_COMPAT__
+ __guard = stack_chk_guard;
+ # endif