1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-08 17:42:12 +03:00
* inet/herrno.c (__h_errno_location): Remove.
	* inet/Makefile (routines): Add herrno-loc.
	* resolv/res_libc.c (__res_state): Remove.
	* resolv/Makefile (routines): Add res-state.
	* sysdeps/generic/herrno-loc.c: New file.
	* sysdeps/generic/res-state.c: New file.

2002-12-27  Jakub Jelinek  <jakub@redhat.com>
This commit is contained in:
Ulrich Drepper
2002-12-28 10:24:40 +00:00
parent afb2e95400
commit 270d9d4729
26 changed files with 371 additions and 151 deletions

View File

@@ -43,6 +43,17 @@
# define THREAD_SETMEM_NC(descr, member, value) descr->member = (value)
#endif
#ifndef NOT_IN_libc
# ifdef FLOATING_STACKS
# define LIBC_THREAD_GETMEM(descr, member) THREAD_GETMEM (descr, member)
# define LIBC_THREAD_SETMEM(descr, member, value) \
THREAD_SETMEM (descr, member, value)
# else
# define LIBC_THREAD_GETMEM(descr, member) descr->member
# define LIBC_THREAD_SETMEM(descr, member, value) descr->member = (value)
# endif
#endif
typedef void (*destr_function)(void *);
struct pthread_key_struct {
@@ -430,6 +441,11 @@ extern void __linuxthreads_reap_event (void);
/* This function is called to initialize the pthread library. */
extern void __pthread_initialize (void);
/* TSD. */
extern int __pthread_internal_tsd_set (int key, const void * pointer);
extern void * __pthread_internal_tsd_get (int key);
extern void ** __attribute__ ((__const__))
__pthread_internal_tsd_address (int key);
/* Sighandler wrappers. */
extern void __pthread_sighandler(int signo, SIGCONTEXT ctx);
@@ -504,10 +520,24 @@ struct pthread_functions
int (*ptr_pthread_setcanceltype) (int, int *);
void (*ptr_pthread_do_exit) (void *retval, char *currentframe);
pthread_descr (*ptr_pthread_thread_self) (void);
int (*ptr_pthread_internal_tsd_set) (int key, const void * pointer);
void * (*ptr_pthread_internal_tsd_get) (int key);
void ** __attribute__ ((__const__))
(*ptr_pthread_internal_tsd_address) (int key);
};
/* Variable in libc.so. */
extern struct pthread_functions __libc_pthread_functions attribute_hidden;
extern int * __libc_pthread_init (const struct pthread_functions *functions);
#if !defined NOT_IN_libc && !defined FLOATING_STACKS
# ifdef SHARED
# define thread_self() \
(*__libc_pthread_functions.ptr_pthread_thread_self) ()
# else
weak_extern (__pthread_thread_self)
# define thread_self() __pthread_thread_self ()
# endif
#endif
#endif /* internals.h */