Don't use GLIBC_PRIVATE errno outside of libraries

This commit is contained in:
Andreas Schwab 2013-01-28 17:51:03 +01:00
parent 542f94662e
commit 903ae060db
10 changed files with 38 additions and 14 deletions

View File

@ -1,3 +1,10 @@
2013-02-04 Andreas Schwab <schwab@suse.de>
[BZ #14142]
* include/errno.h: Redefine errno only if !NOT_IN_libc || IN_LIB.
* include/netdb.h: Likewise for h_errno.
* elf/tst-stackguard1.c: Include <tls.h>.
2013-02-02 Jan Kratochvil <jan.kratochvil@redhat.com>
* elf/link.h (struct link_map): Extend the l_addr comment.

4
NEWS
View File

@ -9,8 +9,8 @@ Version 2.18
* The following bugs are resolved with this release:
13951, 14200, 14317, 14327, 14496, 14964, 14981, 14982, 14985, 14994,
14996, 15003, 15020, 15023, 15036, 15062.
13951, 14142, 14200, 14317, 14327, 14496, 14964, 14981, 14982, 14985,
14994, 14996, 15003, 15020, 15023, 15036, 15062.
Version 2.17

View File

@ -23,6 +23,7 @@
#include <string.h>
#include <sys/wait.h>
#include <stackguard-macros.h>
#include <tls.h>
#include <unistd.h>
static const char *command;

View File

@ -17,7 +17,7 @@
# define errno rtld_errno
extern int rtld_errno attribute_hidden;
# else
# elif !defined NOT_IN_libc || defined IN_LIB
# include <tls.h>
@ -29,7 +29,7 @@ extern int rtld_errno attribute_hidden;
# endif
extern __thread int errno attribute_tls_model_ie;
# endif /* RTLD_PRIVATE_ERRNO */
# endif /* !NOT_IN_libc || IN_LIB */
# define __set_errno(val) (errno = (val))

View File

@ -3,18 +3,20 @@
#ifndef _ISOMAC
/* Macros for accessing h_errno from inside libc. */
# undef h_errno
# ifdef _LIBC_REENTRANT
# include <tls.h>
# ifndef NOT_IN_libc
# define h_errno __libc_h_errno
# else
# define h_errno h_errno /* For #ifndef h_errno tests. */
# endif
# if !defined NOT_IN_libc || defined IN_LIB
# undef h_errno
# ifdef _LIBC_REENTRANT
# include <tls.h>
# ifndef NOT_IN_libc
# define h_errno __libc_h_errno
# else
# define h_errno h_errno /* For #ifndef h_errno tests. */
# endif
extern __thread int h_errno attribute_tls_model_ie;
# else
# else
extern int h_errno;
# endif /* _LIBC_REENTRANT */
# endif /* _LIBC_REENTRANT */
# endif /* !NOT_IN_libc || IN_LIB */
# define __set_h_errno(x) (h_errno = (x))
libc_hidden_proto (hstrerror)

View File

@ -1,3 +1,11 @@
2013-02-04 Andreas Schwab <schwab@suse.de>
[BZ #14142]
* tst-cancel14.c: Include <sys/time.h>.
* tst-cancel15.c: Likewise.
* tst-mutex9.c: Include <stdint.h>, <stdlib.h> and <sys/time.h>.
* tst-stackguard1.c: Include <tls.h>
2013-01-16 Andreas Schwab <schwab@suse.de>
[BZ #14327]

View File

@ -23,6 +23,7 @@
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/time.h>
static pthread_barrier_t bar;

View File

@ -23,6 +23,7 @@
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/time.h>
static pthread_barrier_t bar;

View File

@ -18,10 +18,13 @@
#include <errno.h>
#include <pthread.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/mman.h>
#include <sys/time.h>
#include <sys/wait.h>

View File

@ -24,6 +24,7 @@
#include <string.h>
#include <sys/wait.h>
#include <stackguard-macros.h>
#include <tls.h>
#include <unistd.h>
static const char *command;