aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/glibc/glibc
AgeCommit message (Collapse)Author
2016-05-21nativesdk-glibc: Extend relocation support to localesRichard Purdie
Currently locales are not found in a relocated buildtools-tarball such as that used in eSDK. This breaks bitbake when used under python3. This patch adds enough relocation magic to nativesdk-glibc so that the binary locales can be found even in a relocated buildtools-tarball and bitbake works successfully under python3. The eSDK also works correctly after this change too. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-18glibc: Add missing patch hunk backRichard Purdie
This hunk of patch went missing during the glibc upgrade to 2.24 and without it, uninative-tarball doesn't work properly. This adds it back so we can spin a new version of uninative. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-14glibc: Add recipes for 2.24 releaseKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-06glibc: remove unused CVE patchesRobert Yang
They were CEVs and should be already in the source after upgraded. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-07glibc: Add relocation of GCONV_PATHRichard Purdie
We're seeing various failures where nativesdk glibc can't find the gconv modules. We've tried various workaround but this needs fixing 'properly'. One significant problem is knowing when a binary would use this glibc and hence when to set the path and when not to. Add the default path to its own special section which the sdk relocation script already knows how to handle and remap. This significantly improves the usability of uninative. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-21glibc: Upgrade to 2.23Khem Raj
Drop kconfig and options-group support Forward port cross-localedef support Assume ssp support in libc when building gcc-initial Signed-off-by: Khem Raj <raj.khem@gmail.com>
2016-02-18glibc: Security fix CVE-2015-7547Armin Kuster
CVE-2015-7547: getaddrinfo() stack-based buffer overflow Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18glibc: CVE-2015-8776Armin Kuster
it was found that out-of-range time values passed to the strftime function may cause it to crash, leading to a denial of service, or potentially disclosure information. Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18glibc: CVE-2015-9761Armin Kuster
A stack overflow vulnerability was found in nan* functions that could cause applications which process long strings with the nan function to crash or, potentially, execute arbitrary code. Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18glibc: CVE-2015-8779Armin Kuster
A stack overflow vulnerability in the catopen function was found, causing applications which pass long strings to the catopen function to crash or, potentially execute arbitrary code. Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18glibc: CVE-2015-8777.patchArmin Kuster
The process_envvars function in elf/rtld.c in the GNU C Library (aka glibc or libc6) before 2.23 allows local users to bypass a pointer-guarding protection mechanism via a zero value of the LD_POINTER_GUARD environment variable. Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-26meta: fix capitalisation in Upstream-StatusRoss Burton
Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01glibc/0029-fix-getmnt-empty-lines.patch: fix getmntent()Peter Seebach
When confronted with an empty line, getmntent() can underrun a buffer, possibly doing very strange things if it finds additional space/tab characters. Backport the upstream fix. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01glibc: Backported a patch to fix glibc's bug(18589)Li Xin
Also Fix LSB NG cases: * /tset/ANSI.os/locale/setlocale/T.setlocale 1 2 4 5 15 * /tset/ANSI.os/string/strcoll_X/T.strcoll_X 1 * /tset/LI18NUX2K.L1/base/wcscoll/T.wcscoll 1 * /tset/LI18NUX2K.L1/utils/localedef/T.localedef 7 * /tset/LI18NUX2K.L1/utils/sort/T.sort 1 3 17 19 33 35 * /tset/LI18NUX2K.L1/utils/comm/T.comm 1 2 * /tset/LI18NUX2K.L1/utils/ls-fh/T.ls-fh 2 This patch is backported from https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6c84109cfa26f35c3dfed3acb97d347361bd5849 Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-11-25glibc: fix Upstream-Status tagRoss Burton
Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-11-16glibc: Fix ld.so / prelink interface for ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATAMark Hatle
A bug in glibc 2.22's ld.so interface for the prelink support causes the displayed values to be incorrect. The included path fixes this issue. Clear ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA for prelink prelink runs ld.so with the environment variable LD_TRACE_PRELINKING set to dump the relocation type class from _dl_debug_bindings. prelink has the following relocation type classes: where ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA has a conflict with RTYPE_CLASS_TLS. Since prelink doesn't use ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA, we should clear the ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA bit when the DL_DEBUG_PRELINK bit is set. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2015-10-29glibc: Allow 64 bit atomics for x86Juro Bystricky
The fix consist of allowing 64bit atomic ops for x86. This should be safe for i586 and newer CPUs. It also makes the synchronization more efficient. [YOCTO #8140] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-16glibc: don't require bash for nscd init scriptRoss Burton
The nscd init script uses #! /bin/bash but only really uses one bashism (translated strings), so remove them and switch the shell to #! /bin/sh. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-08-16glibc: Upgrade 2.21 -> 2.22Khem Raj
- git'ify the OE patches - add_resource_h_to_wait_h.patch - dropped, we do not support that old perf anymore - mips-rld-map-check.patch - Dropped because binutils is fixed for it see https://sourceware.org/ml/binutils/2011-12/msg00112.html - initgroups_keys.patch - Folded into 0026-eglibc-Forward-port-eglibc-options-groups-support.patch Change-Id: Ib8e731b212f52b8ff12e2180babbc19970fb1ef1 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-07-07glibc: fix typo in add_resource_h_to_wait_h.patchAndre McCurdy
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03glibc: Fix __memcpy_chk on non-SSE2 CPUsAndre McCurdy
Backport from upstream glibc: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=132a1328eccd20621b77f7810eebbeec0a1af187 Note that the fix is only required when glibc is built for i686/multiarch, so is not applicable in the default oe-core x86 configuration (which builds glibc for i586 and therefore does not include SSE2 optimised memcpy etc). Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-05-23eglibc-use-option-groups: Conditionally exclude c++ testsJuro Bystricky
Some test programs written in c++ are still included in spite of "libc-cxx-tests" being omitted from DISTRO_FEATURES_LIBC. All .cc programs are compiled with g++. g++ automatically specifies linking against the C++ library. This patch conditionally excludes the following tests as well: bug-atexit3-lib.cc tst-cancel24.cc tst-cancel24-static.cc tst-unique3lib.cc tst-unique3lib2.cc tst-unique4lib.cc tst-unique3.cc tst-unique4.cc Tested with DISTRO_FEATURES_LIBC_remove = " libc-cxx-tests" [YOCTO #7003] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-16glibc: CVE-2015-1781: resolv/nss_dns/dns-host.c buffer overflowHaris Okanovic
Backport Arjun Shankar's patch for CVE-2015-1781: A buffer overflow flaw was found in the way glibc's gethostbyname_r() and other related functions computed the size of a buffer when passed a misaligned buffer as input. An attacker able to make an application call any of these functions with a misaligned buffer could use this flaw to crash the application or, potentially, execute arbitrary code with the permissions of the user running the application. https://sourceware.org/bugzilla/show_bug.cgi?id=18287 Signed-off-by: Haris Okanovic <haris.okanovic@ni.com> Reviewed-by: Ben Shelton <ben.shelton@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-14glibc: Fix x32 make raceRichard Purdie
On x32 builds, sysd-syscalls appears malformed since the make-target-directory appears on the wrong line. This causes races during the build process where you can see failures like: Assembler messages: Fatal error: can't create [...]glibc/2.21-r0/build-x86_64-poky-linux-gnux32/time/gettimeofday.os: No such file or directory Assembler messages: Fatal error: can't create [...]glibc/2.21-r0/build-x86_64-poky-linux-gnux32/time/time.os: No such file or directory The issue is that the carriage return is being escaped when it should not be. The change to sysd-syscalls with this change: before: """ $(foreach p,$(sysd-rules-targets),$(objpfx)$(patsubst %,$p,time).os): \ $(..)sysdeps/unix/make-syscalls.sh $(make-target-directory) (echo '#include <dl-vdso.h>'; """ after: """ $(foreach p,$(sysd-rules-targets),$(objpfx)$(patsubst %,$p,time).os): \ $(..)sysdeps/unix/make-syscalls.sh $(make-target-directory) (echo '#include <dl-vdso.h>'; """ which ensures the target directory is correctly created. Only x32 uses the vdso code which contains the bug which is why the error only really appears on x32. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-02glibc: fix a typoRobert Yang
Fixed a typo: name-target-directory -> make-target-directory There is no name-target-directory, it should be make-target-directory, this fixed the error: /bin/bash: /path/to/elf/runtime-linker.T: No such file or directory Makefile:361: recipe for target '/path/to/elf/runtime-linker.st' failed Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-09glibc: 'yes' within the path sets wrong variablesBenjamin Esquivel
The AC_EGREP_CPP macro is looking for a 'yes' string that is likely to be found in the path where the file is stored. This false positive match causes variables to be mistakenly set. The fix is to use a more elaborated string instead. This has to be done at the configure and the configure.ac files, because a reconfigure does not happen in the regular build flow. [YOCTO #6614] Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-02-24glibc: Help compile with -OsKhem Raj
When we modify to use -Os -Werror doesnt go well with it, glibc needs to be cleaned up for that but until then lets disable -Werror when using -Os Also updates the options group patch to work better with -Os. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-19glibc: Upgrade 2.20 -> 2.21Khem Raj
Drop CVE backports and ppc/fpu detection patch which is not needed anymore Forward port eglibc option groups patch Default to using glibc 2.21 Additional patches needed to appease -Werror option Change-Id: I1873097cec8387ea9e8186a255122938fc28c976 Signed-off-by: Khem Raj <raj.khem@gmail.com>
2015-02-07glibc: Re-enable upstream __USE_KERNEL_XATTR_DEFS patchKhem Raj
Re-introduce https://sourceware.org/git/?p=glibc.git;a=commit;h=fdbe8eae2b9aed74dabba1b0a189c5d7d61bf032 This patch was overzealously removed during option groups forward port Change-Id: I8dd01902ae8e5ee8b5c6fc9dc39c7216952dca51 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-28eglibc-use-option-groups.patch: Various fixupsJuro Bystricky
Build suppport for mutibyte character handling only when __OPTION_EGLIBC_LOCALE_CODE evaluates to 1. Fixes missing .out suffix for several tests to be built. Fixes building of locales needed for several tests. Do not use cross-localedef to build locales. Use localedef built with the newly built libgc instead. Fixes: [YOCTO #6809] [YOCTO #6796] [YOCTO #6797] Signed-off-by: Juro Bystricky <jurobystricky@hotmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-28glibc: CVE-2014-9402 endless loop in getaddr_rArmin Kuster
The getnetbyname function in glibc 2.21 in earlier will enter an infinite loop if the DNS backend is activated in the system Name Service Switch configuration, and the DNS resolver receives a positive answer while processing the network name. Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-01-16glibc: Fix up minimal build with libc-libmSaul Wold
This addresses 2 issues discovered trying to build a minimal libc with libm option. By default nscd was always being built and without inet enabled there were missing symbols. [YOCTO #7108] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-12-19glibc: CVE 2014-7817 and 2012-3406 fixesArmin Kuster
Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-12-05eglibc: modified option-groups.h generationJuro Bystricky
option-groups.h only explicitely #defines options that are enabled. EGLIBC options are typically pre-processed under the assumption that if an option is not explicitely defined then it evaluates as 0. This assumption is correct, but it generates a compiler warning message each time an undefined symbol is being evaluated. In order to remove the warnings, each EGLIBC option is now defined as 1 if the option is enabled or as 0 otherwise. The consequence is we cannot use #ifdef OPTION_XXX when evaluating the option, we must always use #if OPTION_XXX. [YOCTO #7001] Signed-off-by: Juro Bystricky <jurobystricky@hotmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-10-10glibc: remove bad patch snippet that eglibc forward portedSaul Wold
The s_sin.c patch undoes some code changes in glibc itself, these changes have nothing to do with the option groups and I suspect crept in as part of the initial conversion. Undoing this patch also fixes a test failure in test-double and test-idouble. [YOCTO #6808] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-10glibc: Incremental bump to 2.20 release branchKhem Raj
Now that glibc 2.20 has been released. We switch to use release branch and remove the already applied patch Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-01glibc: Migrate eglibc 2.19 -> glibc 2.20Khem Raj
- This is a big swoop change where we switch to using glibc - option-groups are forward ported - cross-localedef is extracted out from eglibc and hosted at github.com/kraj/localedef, its used for cross-localedef recipe - Other non ported patches from eglibc are forward ported ppc8xx cache line workaround SH fpcr values dynamic resolver installing PIC archives is there but is not applied libc header bootstrap - Delete eglibc recipes we moved back to using glibc now - Fix ppc/e500 build - Fix crypt module build when options are used - Fix fnmatch build when options OPTION_EGLIBC_LOCALE_CODE is unset HAVE_MBSTATE_T and HAVE_MBSRTOWCS should be defined conditionally based upon OPTION_EGLIBC_LOCALE_CODE being set/unset - Move the ports/ patches to relevant files now that ports is gone Signed-off-by: Khem Raj <raj.khem@gmail.com>