diff options
Diffstat (limited to 'meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch')
-rw-r--r-- | meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch | 123 |
1 files changed, 46 insertions, 77 deletions
diff --git a/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch b/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch index 7cba6cc367..9e207e44d9 100644 --- a/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch +++ b/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From c99892f2018cd7fa0f37b53e6cebec99fa036472 Mon Sep 17 00:00:00 2001 | 1 | From e53968d61804b6bab32ec6e13cc0b3cd57214796 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Wed, 18 Mar 2015 01:51:38 +0000 | 3 | Date: Wed, 18 Mar 2015 01:51:38 +0000 |
4 | Subject: [PATCH 03/25] nativesdk-glibc: Raise the size of arrays containing dl | 4 | Subject: [PATCH 03/26] nativesdk-glibc: Raise the size of arrays containing dl |
5 | paths | 5 | paths |
6 | 6 | ||
7 | This patch puts the dynamic loader path in the binaries, SYSTEM_DIRS strings | 7 | This patch puts the dynamic loader path in the binaries, SYSTEM_DIRS strings |
@@ -21,13 +21,14 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> | |||
21 | elf/interp.c | 2 +- | 21 | elf/interp.c | 2 +- |
22 | elf/ldconfig.c | 3 +++ | 22 | elf/ldconfig.c | 3 +++ |
23 | elf/rtld.c | 5 +++-- | 23 | elf/rtld.c | 5 +++-- |
24 | iconv/gconv_conf.c | 2 +- | ||
24 | sysdeps/generic/dl-cache.h | 4 ---- | 25 | sysdeps/generic/dl-cache.h | 4 ---- |
25 | 6 files changed, 13 insertions(+), 9 deletions(-) | 26 | 7 files changed, 14 insertions(+), 10 deletions(-) |
26 | 27 | ||
27 | Index: git/elf/dl-cache.c | 28 | diff --git a/elf/dl-cache.c b/elf/dl-cache.c |
28 | =================================================================== | 29 | index cfa335e..daa12ec 100644 |
29 | --- git.orig/elf/dl-cache.c | 30 | --- a/elf/dl-cache.c |
30 | +++ git/elf/dl-cache.c | 31 | +++ b/elf/dl-cache.c |
31 | @@ -132,6 +132,10 @@ do \ | 32 | @@ -132,6 +132,10 @@ do \ |
32 | while (0) | 33 | while (0) |
33 | 34 | ||
@@ -39,11 +40,11 @@ Index: git/elf/dl-cache.c | |||
39 | int | 40 | int |
40 | internal_function | 41 | internal_function |
41 | _dl_cache_libcmp (const char *p1, const char *p2) | 42 | _dl_cache_libcmp (const char *p1, const char *p2) |
42 | Index: git/elf/dl-load.c | 43 | diff --git a/elf/dl-load.c b/elf/dl-load.c |
43 | =================================================================== | 44 | index 3a3d112..a1410e4 100644 |
44 | --- git.orig/elf/dl-load.c | 45 | --- a/elf/dl-load.c |
45 | +++ git/elf/dl-load.c | 46 | +++ b/elf/dl-load.c |
46 | @@ -106,8 +106,8 @@ static size_t max_capstrlen attribute_re | 47 | @@ -106,8 +106,8 @@ static size_t max_capstrlen attribute_relro; |
47 | /* Get the generated information about the trusted directories. */ | 48 | /* Get the generated information about the trusted directories. */ |
48 | #include "trusted-dirs.h" | 49 | #include "trusted-dirs.h" |
49 | 50 | ||
@@ -54,10 +55,10 @@ Index: git/elf/dl-load.c | |||
54 | { | 55 | { |
55 | SYSTEM_DIRS_LEN | 56 | SYSTEM_DIRS_LEN |
56 | }; | 57 | }; |
57 | Index: git/elf/interp.c | 58 | diff --git a/elf/interp.c b/elf/interp.c |
58 | =================================================================== | 59 | index 9448802..e7e8c70 100644 |
59 | --- git.orig/elf/interp.c | 60 | --- a/elf/interp.c |
60 | +++ git/elf/interp.c | 61 | +++ b/elf/interp.c |
61 | @@ -18,5 +18,5 @@ | 62 | @@ -18,5 +18,5 @@ |
62 | 63 | ||
63 | #include <runtime-linker.h> | 64 | #include <runtime-linker.h> |
@@ -65,10 +66,10 @@ Index: git/elf/interp.c | |||
65 | -const char __invoke_dynamic_linker__[] __attribute__ ((section (".interp"))) | 66 | -const char __invoke_dynamic_linker__[] __attribute__ ((section (".interp"))) |
66 | +const char __invoke_dynamic_linker__[4096] __attribute__ ((section (".interp"))) | 67 | +const char __invoke_dynamic_linker__[4096] __attribute__ ((section (".interp"))) |
67 | = RUNTIME_LINKER; | 68 | = RUNTIME_LINKER; |
68 | Index: git/elf/ldconfig.c | 69 | diff --git a/elf/ldconfig.c b/elf/ldconfig.c |
69 | =================================================================== | 70 | index 467ca82..631a2a9 100644 |
70 | --- git.orig/elf/ldconfig.c | 71 | --- a/elf/ldconfig.c |
71 | +++ git/elf/ldconfig.c | 72 | +++ b/elf/ldconfig.c |
72 | @@ -168,6 +168,9 @@ static struct argp argp = | 73 | @@ -168,6 +168,9 @@ static struct argp argp = |
73 | options, parse_opt, NULL, doc, NULL, more_help, NULL | 74 | options, parse_opt, NULL, doc, NULL, more_help, NULL |
74 | }; | 75 | }; |
@@ -79,10 +80,10 @@ Index: git/elf/ldconfig.c | |||
79 | /* Check if string corresponds to an important hardware capability or | 80 | /* Check if string corresponds to an important hardware capability or |
80 | a platform. */ | 81 | a platform. */ |
81 | static int | 82 | static int |
82 | Index: git/elf/rtld.c | 83 | diff --git a/elf/rtld.c b/elf/rtld.c |
83 | =================================================================== | 84 | index 4ec25d7..e159c12 100644 |
84 | --- git.orig/elf/rtld.c | 85 | --- a/elf/rtld.c |
85 | +++ git/elf/rtld.c | 86 | +++ b/elf/rtld.c |
86 | @@ -99,6 +99,7 @@ uintptr_t __pointer_chk_guard_local | 87 | @@ -99,6 +99,7 @@ uintptr_t __pointer_chk_guard_local |
87 | strong_alias (__pointer_chk_guard_local, __pointer_chk_guard) | 88 | strong_alias (__pointer_chk_guard_local, __pointer_chk_guard) |
88 | #endif | 89 | #endif |
@@ -91,7 +92,7 @@ Index: git/elf/rtld.c | |||
91 | 92 | ||
92 | /* List of auditing DSOs. */ | 93 | /* List of auditing DSOs. */ |
93 | static struct audit_list | 94 | static struct audit_list |
94 | @@ -873,12 +874,12 @@ of this helper program; chances are you | 95 | @@ -854,12 +855,12 @@ of this helper program; chances are you did not intend to run this program.\n\ |
95 | --list list all dependencies and how they are resolved\n\ | 96 | --list list all dependencies and how they are resolved\n\ |
96 | --verify verify that given object really is a dynamically linked\n\ | 97 | --verify verify that given object really is a dynamically linked\n\ |
97 | object we can handle\n\ | 98 | object we can handle\n\ |
@@ -106,10 +107,23 @@ Index: git/elf/rtld.c | |||
106 | 107 | ||
107 | ++_dl_skip_args; | 108 | ++_dl_skip_args; |
108 | --_dl_argc; | 109 | --_dl_argc; |
109 | Index: git/sysdeps/generic/dl-cache.h | 110 | diff --git a/iconv/gconv_conf.c b/iconv/gconv_conf.c |
110 | =================================================================== | 111 | index e235188..569f72e 100644 |
111 | --- git.orig/sysdeps/generic/dl-cache.h | 112 | --- a/iconv/gconv_conf.c |
112 | +++ git/sysdeps/generic/dl-cache.h | 113 | +++ b/iconv/gconv_conf.c |
114 | @@ -36,7 +36,7 @@ | ||
115 | |||
116 | |||
117 | /* This is the default path where we look for module lists. */ | ||
118 | -static const char default_gconv_path[] = GCONV_PATH; | ||
119 | +static char default_gconv_path[4096] __attribute__ ((section (".gccrelocprefix"))) = GCONV_PATH; | ||
120 | |||
121 | /* The path elements, as determined by the __gconv_get_path function. | ||
122 | All path elements end in a slash. */ | ||
123 | diff --git a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h | ||
124 | index eb2f900..505804e 100644 | ||
125 | --- a/sysdeps/generic/dl-cache.h | ||
126 | +++ b/sysdeps/generic/dl-cache.h | ||
113 | @@ -27,10 +27,6 @@ | 127 | @@ -27,10 +27,6 @@ |
114 | ((flags) == 1 || (flags) == _DL_CACHE_DEFAULT_ID) | 128 | ((flags) == 1 || (flags) == _DL_CACHE_DEFAULT_ID) |
115 | #endif | 129 | #endif |
@@ -121,51 +135,6 @@ Index: git/sysdeps/generic/dl-cache.h | |||
121 | #ifndef add_system_dir | 135 | #ifndef add_system_dir |
122 | # define add_system_dir(dir) add_dir (dir) | 136 | # define add_system_dir(dir) add_dir (dir) |
123 | #endif | 137 | #endif |
124 | Index: git/iconv/gconv_conf.c | 138 | -- |
125 | =================================================================== | 139 | 2.10.2 |
126 | --- git.orig/iconv/gconv_conf.c | 140 | |
127 | +++ git/iconv/gconv_conf.c | ||
128 | @@ -36,7 +36,7 @@ | ||
129 | |||
130 | |||
131 | /* This is the default path where we look for module lists. */ | ||
132 | -static const char default_gconv_path[] = GCONV_PATH; | ||
133 | +static char default_gconv_path[4096] __attribute__ ((section (".gccrelocprefix"))) = GCONV_PATH; | ||
134 | |||
135 | /* The path elements, as determined by the __gconv_get_path function. | ||
136 | All path elements end in a slash. */ | ||
137 | Index: git/locale/findlocale.c | ||
138 | =================================================================== | ||
139 | --- git.orig/locale/findlocale.c | ||
140 | +++ git/locale/findlocale.c | ||
141 | @@ -56,7 +56,7 @@ struct __locale_data *const _nl_C[] attr | ||
142 | which are somehow addressed. */ | ||
143 | struct loaded_l10nfile *_nl_locale_file_list[__LC_LAST]; | ||
144 | |||
145 | -const char _nl_default_locale_path[] attribute_hidden = COMPLOCALEDIR; | ||
146 | +char _nl_default_locale_path[4096] __attribute__ ((section (".gccrelocprefix"))) attribute_hidden = COMPLOCALEDIR; | ||
147 | |||
148 | /* Checks if the name is actually present, that is, not NULL and not | ||
149 | empty. */ | ||
150 | @@ -168,7 +168,7 @@ _nl_find_locale (const char *locale_path | ||
151 | |||
152 | /* Nothing in the archive. Set the default path to search below. */ | ||
153 | locale_path = _nl_default_locale_path; | ||
154 | - locale_path_len = sizeof _nl_default_locale_path; | ||
155 | + locale_path_len = strlen(_nl_default_locale_path) + 1; | ||
156 | } | ||
157 | else | ||
158 | /* We really have to load some data. First see whether the name is | ||
159 | Index: git/locale/localeinfo.h | ||
160 | =================================================================== | ||
161 | --- git.orig/locale/localeinfo.h | ||
162 | +++ git/locale/localeinfo.h | ||
163 | @@ -322,7 +322,7 @@ _nl_lookup_word (locale_t l, int categor | ||
164 | } | ||
165 | |||
166 | /* Default search path if no LOCPATH environment variable. */ | ||
167 | -extern const char _nl_default_locale_path[] attribute_hidden; | ||
168 | +extern char _nl_default_locale_path[] attribute_hidden; | ||
169 | |||
170 | /* Load the locale data for CATEGORY from the file specified by *NAME. | ||
171 | If *NAME is "", use environment variables as specified by POSIX, and | ||