summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/glibc/glibc
Commit message (Collapse)AuthorAgeFilesLines
* glibc: Fix __memcpy_chk on non-SSE2 CPUsAndre McCurdy2015-06-281-0/+36
| | | | | | | | | | | | | | | | | | 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). (From OE-Core rev: e643b9bc4c459ea8b59573cf67f2494388e7a377) (From OE-Core rev: 38b0095c3a3416725ef5f19ab940e84f45a8a01a) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: CVE-2015-1781: resolv/nss_dns/dns-host.c buffer overflowHaris Okanovic2015-06-281-0/+43
| | | | | | | | | | | | | | | | | | | | | 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 (From OE-Core rev: c0f0b6e6ef1edc0a9f9e1ceffb1cdbbef2e409c6) (From OE-Core rev: 54f5e2001249c117cdfc1c26631ba50bc7a155dd) 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>
* glibc: Fix x32 make raceRichard Purdie2015-06-281-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: ae4729ed6c5e5443c42f8825dd85873f06a3570e) (From OE-Core rev: c945453a8453dd6dab5aa5a132bea20e73ae4d6d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: fix a typoRobert Yang2015-04-021-0/+36
| | | | | | | | | | | | | | | 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 (From OE-Core rev: ff1366b0c9db9425d2a29eb823116353f3856dbb) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: 'yes' within the path sets wrong variablesBenjamin Esquivel2015-03-101-0/+245
| | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: fd0bf8f95227796435d22aa7a849a74106cf1eef) Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Help compile with -OsKhem Raj2015-02-241-7/+40
| | | | | | | | | | | | | | 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. (From OE-Core rev: 98e1dc574ef3be668d6a42232ad030d1af93c49f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Upgrade 2.20 -> 2.21Khem Raj2015-02-208-1627/+1071
| | | | | | | | | | | | | | 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 (From OE-Core rev: 6617cc92076764d51f0190786f8d62b8c99ae984) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Re-enable upstream __USE_KERNEL_XATTR_DEFS patchKhem Raj2015-02-081-20/+0
| | | | | | | | | | | | | | | 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 (From OE-Core rev: 24f02c8d1313a423cf219270a9aa55bccbe1893c) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* eglibc-use-option-groups.patch: Various fixupsJuro Bystricky2015-01-291-39/+4
| | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: f01800d46de95f55d7a90d4a2523788368f7c025) Signed-off-by: Juro Bystricky <jurobystricky@hotmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: CVE-2014-9402 endless loop in getaddr_rArmin Kuster2015-01-291-0/+65
| | | | | | | | | | | | | 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. (From OE-Core rev: f03bf84c179f69ef4800ed92a4a9d9401d0e5966) Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Fix up minimal build with libc-libmSaul Wold2015-01-161-1/+2
| | | | | | | | | | | | | | 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] (From OE-Core rev: 89649881bcd0e76d6ee7c85c30e75bb01e1c004f) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: CVE 2014-7817 and 2012-3406 fixesArmin Kuster2014-12-192-0/+554
| | | | | | | | (From OE-Core rev: 41eb5a1ae2a92034bed93c735e712d18ea3d9d1d) Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* eglibc: modified option-groups.h generationJuro Bystricky2014-12-052-20/+20
| | | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: 7f1bdc331304a61a4836a5752bca210450b6c5b5) Signed-off-by: Juro Bystricky <jurobystricky@hotmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: remove bad patch snippet that eglibc forward portedSaul Wold2014-10-101-54/+0
| | | | | | | | | | | | | 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] (From OE-Core rev: 5f225067dcb7244065f857d34e1041171844b243) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Incremental bump to 2.20 release branchKhem Raj2014-09-101-45/+0
| | | | | | | | | | | Now that glibc 2.20 has been released. We switch to use release branch and remove the already applied patch (From OE-Core rev: 70bfccd8e13af712381b4feea3ef882369951264) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Migrate eglibc 2.19 -> glibc 2.20Khem Raj2014-09-0131-0/+22321
- 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 (From OE-Core rev: 1027c535ea753e63d9ffe469a423e04467cf8940) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>