summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* powerpc: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-018-231/+8
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* nds32: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-011-5/+1
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* microblaze: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-014-25/+4
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* locale: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-015-21/+5
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* iconv: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-011-39/+1
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ctype: remove TRAD_SYNOPSISYaakov Selkowitz2017-12-0133-189/+33
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking for unistd.h, part 2Yaakov Selkowitz2017-12-012-3/+44
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: Document latest changes, bump API minorCorinna Vinschen2017-11-303-1/+26
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vf[w]scanf: Implement POSIX %m modifierCorinna Vinschen2017-11-302-24/+448
| | | | | | | | | | | | | | * The new code is guarded with _WANT_IO_POSIX_EXTENSIONS, but this is automatically enabled with _WANT_IO_C99_FORMATS for now. * vfscanf neglects to implement %l[, so %ml[ is not implemented yet either. * Sidenote: vfwscanf doesn't allow ranges in %[ yet. Strictly this is allowed per POSIX, but it differes from vfscanf as well as from glibc. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: [w]mempcpy: fix global symbolCorinna Vinschen2017-11-301-5/+5
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: x86_64: implement mempcpy/wmempcpy in assemblerCorinna Vinschen2017-11-301-16/+44
| | | | | | | | | * change memcpy to internal _memcpy not setting the return value in %rax * implement all memcpy-like functions as caller to _memcpy, setting %rax to correct return value beforehand. This is possible because _memcpy does not use %rax at all Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vfwscanf: fix miscomputation of max field width in %[] caseCorinna Vinschen2017-11-301-1/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Feature test macros overhaul: unistd.h, part 3Yaakov Selkowitz2017-11-301-1/+21
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking for stdlib.hYaakov Selkowitz2017-11-303-0/+38
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* newlib: vf[w]scanf: add validity checksCorinna Vinschen2017-11-302-0/+37
| | | | | | | | | | | | | | | | POSIX requires that directive characters appear in a certain sequence: 1. '%' or '%<n>$' 2. optional '*' 3. optional field width digits 4. optional 'm' (not yet implemented) 5. optional length modifier ('l', 'L', 'll', 'h', 'hh', 'j', 't', 'z') 6. conversion specifier ('d', 's', etc) Add a few basic validity checks to that effect, otherwise reject directive as match failure. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vf[w]scanf: Use SIZE_MAX rather than ~0Corinna Vinschen2017-11-302-4/+4
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vfscanf: fix formattingCorinna Vinschen2017-11-301-2/+2
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* newlib: vf[w]scanf: Only return from a single point to simplify cleanupCorinna Vinschen2017-11-302-4/+2
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: export wmempcpyYaakov Selkowitz2017-11-303-1/+4
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* string: add wmempcpyYaakov Selkowitz2017-11-305-38/+85
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: add Object Size Checking to sys/socket.hYaakov Selkowitz2017-11-302-0/+24
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: add Object Size Checking to sys/poll.hYaakov Selkowitz2017-11-302-0/+30
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* RTEMS: Add semaphore <sys/lock.h> functionsSebastian Huber2017-11-301-0/+4
| | | | | | Declare semaphore try wait and post binary functions. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* RTEMS: Timed wait by ticks <sys/lock.h> functionsSebastian Huber2017-11-301-0/+16
| | | | | | Declare timed wait by ticks functions. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* RTEMS: Add set/get name <sys/lock.h> functionsSebastian Huber2017-11-301-1/+71
| | | | | | Add inline functions to set/get the name. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
* cygwin: create libssp compatibility import libraryYaakov Selkowitz2017-11-291-1/+4
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: export SSP functionsYaakov Selkowitz2017-11-292-1/+25
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add build infrastructureYaakov Selkowitz2017-11-298-9/+798
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add documentationYaakov Selkowitz2017-11-293-0/+46
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking for unistd.h, part 1Yaakov Selkowitz2017-11-292-0/+58
| | | | | | | | | The implementation is from NetBSD, with the addition of feature test macros for readlink. glibc also wraps the following functions: confstr, getdomainname, getgroups, gethostname, getlogin_r, getwd, pread, readlinkat, ttyname_r. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking for stdio.h, part 1Yaakov Selkowitz2017-11-297-0/+416
| | | | | | | | | The implementation is mostly from NetBSD, except for switching fgets to pure inline, and the addition of fgets_unlocked, fread, and fread_unlocked for parity with glibc. The following functions are also guarded in glibc: asprintf, dprintf, fprintf, printf, vasprintf, vdprintf, vfprintf, vprintf. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking for strings.hYaakov Selkowitz2017-11-292-0/+59
| | | | | | | The implementation is from NetBSD, with the addition of explicit_bzero for parity with glibc. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking for string.hYaakov Selkowitz2017-11-2912-0/+652
| | | | | | | The implementation is from NetBSD, with the addition of mempcpy (a GNU extension) for parity with glibc and libssp. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add Object Size Checking common codeYaakov Selkowitz2017-11-293-1/+107
| | | | | | | | | | | | | | | | | The Object Size Checking (-D_FORTIFY_SOURCE=*) functionality provides wrappers around functions suspectible to buffer overflows. While independent from Stack Smashing Protection (-fstack-protector*), they are often used and implemented together. While GCC also provides an implementation in libssp, it is completely broken (CVE-2016-4973, RHBZ#1324759) and seemingly unfixable, as there is no reliable way for a preprocessor macro to trigger a link flag. Therefore, adding this here is necessary to make it work. Note that this does require building gcc with --disable-libssp and gcc_cv_libc_provides_ssp=yes. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* ssp: add APIs for Stack Smashing ProtectionYaakov Selkowitz2017-11-291-0/+45
| | | | | | | | | | Compiling with any of the -fstack-protector* flags requires the __stack_chk_guard data import (which needs to be initialized) and the __stack_chk_fail{,_local} functions. While GCC's own libssp can provide these, it is better that we provide these ourselves. The implementation is custom due to being OS-specific. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* newlib: [w]scanf: Fix behaviour on matching failureCorinna Vinschen2017-11-292-22/+3
| | | | | | | | | | | | | | | | The special handling of %\0 in [w]scanf is flawed. It's just a matching failure and should be handled as such. scanf also fakes an int input value on %X with X being an invalid conversion char. This is also just a matching failure and should be handled the same way as %\0. There's no indication of the reason for this "disgusting backwards compatibility hacks" in the logs, given this code made it into newlib before setting up the CVS repo. Just handle these cases identically as matching failures. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygserver: remove all asserts on "this"Corinna Vinschen2017-11-282-7/+0
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: fix getconf after commit 032aa2dba5a5bf90c198d930c8d309b5de57cb47Yaakov Selkowitz2017-11-281-0/+1
| | | | Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* Make __nonnull macro compatible with glibcYaakov Selkowitz2017-11-284-5/+5
| | | | | | This form allows for multiple arguments, e.g. __nonnull((1,2)). Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: define _POSIX_TIMEOUTSYaakov Selkowitz2017-11-282-2/+2
| | | | | | | | Since commit 8128f5482f2b1889e2336488e9d45a33c9972d11, we have all the non-tracing functions listed in posixoptions(7). The tracing functions are gated by their own option, and are obsolecent anyway. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: don't allow empty strings in __ASMNAME tagsCorinna Vinschen2017-11-281-1/+1
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: improve _EXFUN tags generationCorinna Vinschen2017-11-281-1/+2
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: remove accidentally committed debug statmentsCorinna Vinschen2017-11-281-2/+0
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: further improve tags generationCorinna Vinschen2017-11-282-1/+5
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Feature test macros overhaul: Cygwin limits.h, part 2Yaakov Selkowitz2017-11-281-2/+28
| | | | | | | http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html https://sourceware.org/ml/newlib/2017/msg01133.html Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
* cygwin: convert most #ifndef __x86_64__ to #ifdef __i386__Corinna Vinschen2017-11-2727-140/+140
| | | | | | Address the real offender Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: improve tags generationCorinna Vinschen2017-11-271-1/+4
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* cygwin: cleanup fhandler_socket::release_eventsCorinna Vinschen2017-11-271-7/+9
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* Add the Aarch64 SVE specific HWCAP_SVE defineJeff Johnston2017-11-221-0/+1
| | | | | | Checking in change from Alan Hayward <Alan.Hayward@arm.com> Signed-off-by: Jeff Johnston <jjohnstn@redhat.com>
* RTEMS: Add missing __getreent() to crt0Sebastian Huber2017-11-201-0/+1
| | | | | | | Default implementation was removed for RTEMS by b1a388799dc98e6d1451fb73aa71097cbf9f37d9. Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>