aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog28
-rw-r--r--inet/getaliasent_r.c13
-rw-r--r--inet/getaliasname_r.c13
-rw-r--r--inet/getnetbyad_r.c17
-rw-r--r--inet/getnetbynm_r.c17
-rw-r--r--inet/getnetent_r.c21
-rw-r--r--inet/getproto_r.c13
-rw-r--r--inet/getprtent_r.c17
-rw-r--r--inet/getprtname_r.c13
-rw-r--r--inet/getrpcbyname_r.c13
-rw-r--r--inet/getrpcbynumber_r.c13
-rw-r--r--inet/getrpcent_r.c17
-rw-r--r--inet/getservent_r.c17
-rw-r--r--inet/getsrvbynm_r.c13
-rw-r--r--inet/getsrvbypt_r.c13
-rw-r--r--malloc/thread-m.h4
-rw-r--r--nss/getXXbyYY_r.c6
-rw-r--r--nss/getXXent_r.c6
-rw-r--r--shadow/getspent_r.c15
-rw-r--r--shadow/getspnam_r.c15
-rw-r--r--sysdeps/i386/elf/bsd-setjmp.S13
-rw-r--r--sysdeps/i386/elf/setjmp.S12
-rw-r--r--sysdeps/unix/sysv/linux/i386/sysdep.h16
23 files changed, 193 insertions, 132 deletions
diff --git a/ChangeLog b/ChangeLog
index 6746a8c202..e333046216 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,33 @@
2002-04-07 Ulrich Drepper <drepper@redhat.com>
+ * nss/getXXbyYY_r.c: If NSS_attribute_hidden is defined use it with the
+ DB_LOOKUP_FCT prototype.
+ * nss/getXXent_r.c: Likewise.
+ * inet/getaliasent_r.c: Define NSS_attribute_hidden.
+ * inet/getaliasname_r.c: Likewise.
+ * inet/getnetbyad_r.c: Likewise.
+ * inet/getnetbynm_r.c: Likewise.
+ * inet/getnetent_r.c: Likewise.
+ * inet/getproto_r.c: Likewise.
+ * inet/getprtent_r.c: Likewise.
+ * inet/getprtname_r.c: Likewise.
+ * inet/getrpcbyname_r.c: Likewise.
+ * inet/getrpcbynumber_r.c: Likewise.
+ * inet/getrpcent_r.c: Likewise.
+ * inet/getservent_r.c: Likewise.
+ * inet/getsrvbynm_r.c: Likewise.
+ * inet/getsrvbypt_r.c: Likewise.
+ * shadow/getspent_r.c: Likewise.
+ * shadow/getspnam_r.c: Likewise.
+
+ * malloc/thread-m.h: Define __libc_tsd_MALLOC_data as static.
+
+ * sysdeps/i386/elf/bsd-setjmp.S: Use GOTOFF for __sigjmp_save access.
+ Use i686-friendly PIC code.
+ * sysdeps/i386/elf/setjmp.S: Likewise.
+
+ * sysdeps/unix/sysv/linux/i386/sysdep.h: Use i686-friendly PIC code.
+
* sysdeps/mach/hurd/Versions: Add _dl_init_first to libc and ld export
list.
* elf/Versions: Remove it here.
diff --git a/inet/getaliasent_r.c b/inet/getaliasent_r.c
index 03612444d6..6bb0e15281 100644
--- a/inet/getaliasent_r.c
+++ b/inet/getaliasent_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,10 +20,11 @@
#include <aliases.h>
-#define LOOKUP_TYPE struct aliasent
-#define SETFUNC_NAME setaliasent
-#define GETFUNC_NAME getaliasent
-#define ENDFUNC_NAME endaliasent
-#define DATABASE_NAME aliases
+#define LOOKUP_TYPE struct aliasent
+#define SETFUNC_NAME setaliasent
+#define GETFUNC_NAME getaliasent
+#define ENDFUNC_NAME endaliasent
+#define DATABASE_NAME aliases
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXent_r.c"
diff --git a/inet/getaliasname_r.c b/inet/getaliasname_r.c
index c10e4efcba..73078fac87 100644
--- a/inet/getaliasname_r.c
+++ b/inet/getaliasname_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,10 +20,11 @@
#include <aliases.h>
-#define LOOKUP_TYPE struct aliasent
-#define FUNCTION_NAME getaliasbyname
-#define DATABASE_NAME aliases
-#define ADD_PARAMS const char *name
-#define ADD_VARIABLES name
+#define LOOKUP_TYPE struct aliasent
+#define FUNCTION_NAME getaliasbyname
+#define DATABASE_NAME aliases
+#define ADD_PARAMS const char *name
+#define ADD_VARIABLES name
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/inet/getnetbyad_r.c b/inet/getnetbyad_r.c
index b81481c7ad..4d41786cde 100644
--- a/inet/getnetbyad_r.c
+++ b/inet/getnetbyad_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2000, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -21,12 +21,13 @@
#include <stdint.h>
-#define LOOKUP_TYPE struct netent
-#define FUNCTION_NAME getnetbyaddr
-#define DATABASE_NAME networks
-#define ADD_PARAMS uint32_t net, int type
-#define ADD_VARIABLES net, type
-#define NEED__RES 1
-#define NEED_H_ERRNO 1
+#define LOOKUP_TYPE struct netent
+#define FUNCTION_NAME getnetbyaddr
+#define DATABASE_NAME networks
+#define ADD_PARAMS uint32_t net, int type
+#define ADD_VARIABLES net, type
+#define NEED__RES 1
+#define NEED_H_ERRNO 1
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/inet/getnetbynm_r.c b/inet/getnetbynm_r.c
index 7685e95cdb..0b7f273749 100644
--- a/inet/getnetbynm_r.c
+++ b/inet/getnetbynm_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,12 +20,13 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct netent
-#define FUNCTION_NAME getnetbyname
-#define DATABASE_NAME networks
-#define ADD_PARAMS const char *name
-#define ADD_VARIABLES name
-#define NEED__RES 1
-#define NEED_H_ERRNO 1
+#define LOOKUP_TYPE struct netent
+#define FUNCTION_NAME getnetbyname
+#define DATABASE_NAME networks
+#define ADD_PARAMS const char *name
+#define ADD_VARIABLES name
+#define NEED__RES 1
+#define NEED_H_ERRNO 1
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/inet/getnetent_r.c b/inet/getnetent_r.c
index 7cdede24b0..7657d51d45 100644
--- a/inet/getnetent_r.c
+++ b/inet/getnetent_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -19,14 +19,15 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct netent
-#define SETFUNC_NAME setnetent
-#define GETFUNC_NAME getnetent
-#define ENDFUNC_NAME endnetent
-#define DATABASE_NAME networks
-#define STAYOPEN int stayopen
-#define STAYOPEN_VAR stayopen
-#define NEED__RES 1
-#define NEED_H_ERRNO 1
+#define LOOKUP_TYPE struct netent
+#define SETFUNC_NAME setnetent
+#define GETFUNC_NAME getnetent
+#define ENDFUNC_NAME endnetent
+#define DATABASE_NAME networks
+#define STAYOPEN int stayopen
+#define STAYOPEN_VAR stayopen
+#define NEED__RES 1
+#define NEED_H_ERRNO 1
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXent_r.c"
diff --git a/inet/getproto_r.c b/inet/getproto_r.c
index ec57a14826..66432a798a 100644
--- a/inet/getproto_r.c
+++ b/inet/getproto_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,10 +20,11 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct protoent
-#define FUNCTION_NAME getprotobynumber
-#define DATABASE_NAME protocols
-#define ADD_PARAMS int proto
-#define ADD_VARIABLES proto
+#define LOOKUP_TYPE struct protoent
+#define FUNCTION_NAME getprotobynumber
+#define DATABASE_NAME protocols
+#define ADD_PARAMS int proto
+#define ADD_VARIABLES proto
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/inet/getprtent_r.c b/inet/getprtent_r.c
index 2350c25678..ce502bb243 100644
--- a/inet/getprtent_r.c
+++ b/inet/getprtent_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -19,12 +19,13 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct protoent
-#define SETFUNC_NAME setprotoent
-#define GETFUNC_NAME getprotoent
-#define ENDFUNC_NAME endprotoent
-#define DATABASE_NAME protocols
-#define STAYOPEN int stayopen
-#define STAYOPEN_VAR stayopen
+#define LOOKUP_TYPE struct protoent
+#define SETFUNC_NAME setprotoent
+#define GETFUNC_NAME getprotoent
+#define ENDFUNC_NAME endprotoent
+#define DATABASE_NAME protocols
+#define STAYOPEN int stayopen
+#define STAYOPEN_VAR stayopen
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXent_r.c"
diff --git a/inet/getprtname_r.c b/inet/getprtname_r.c
index cac6607f2d..579f255886 100644
--- a/inet/getprtname_r.c
+++ b/inet/getprtname_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,10 +20,11 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct protoent
-#define FUNCTION_NAME getprotobyname
-#define DATABASE_NAME protocols
-#define ADD_PARAMS const char *name
-#define ADD_VARIABLES name
+#define LOOKUP_TYPE struct protoent
+#define FUNCTION_NAME getprotobyname
+#define DATABASE_NAME protocols
+#define ADD_PARAMS const char *name
+#define ADD_VARIABLES name
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/inet/getrpcbyname_r.c b/inet/getrpcbyname_r.c
index e7328c703f..e28e59e82e 100644
--- a/inet/getrpcbyname_r.c
+++ b/inet/getrpcbyname_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,10 +20,11 @@
#include <rpc/netdb.h>
-#define LOOKUP_TYPE struct rpcent
-#define FUNCTION_NAME getrpcbyname
-#define DATABASE_NAME rpc
-#define ADD_PARAMS const char *name
-#define ADD_VARIABLES name
+#define LOOKUP_TYPE struct rpcent
+#define FUNCTION_NAME getrpcbyname
+#define DATABASE_NAME rpc
+#define ADD_PARAMS const char *name
+#define ADD_VARIABLES name
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/inet/getrpcbynumber_r.c b/inet/getrpcbynumber_r.c
index a30a839b45..73e6c5052b 100644
--- a/inet/getrpcbynumber_r.c
+++ b/inet/getrpcbynumber_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,10 +20,11 @@
#include <rpc/netdb.h>
-#define LOOKUP_TYPE struct rpcent
-#define FUNCTION_NAME getrpcbynumber
-#define DATABASE_NAME rpc
-#define ADD_PARAMS int number
-#define ADD_VARIABLES number
+#define LOOKUP_TYPE struct rpcent
+#define FUNCTION_NAME getrpcbynumber
+#define DATABASE_NAME rpc
+#define ADD_PARAMS int number
+#define ADD_VARIABLES number
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/inet/getrpcent_r.c b/inet/getrpcent_r.c
index 7f8d55e3cd..aa0817da02 100644
--- a/inet/getrpcent_r.c
+++ b/inet/getrpcent_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -19,12 +19,13 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct rpcent
-#define SETFUNC_NAME setrpcent
-#define GETFUNC_NAME getrpcent
-#define ENDFUNC_NAME endrpcent
-#define DATABASE_NAME rpc
-#define STAYOPEN int stayopen
-#define STAYOPEN_VAR stayopen
+#define LOOKUP_TYPE struct rpcent
+#define SETFUNC_NAME setrpcent
+#define GETFUNC_NAME getrpcent
+#define ENDFUNC_NAME endrpcent
+#define DATABASE_NAME rpc
+#define STAYOPEN int stayopen
+#define STAYOPEN_VAR stayopen
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXent_r.c"
diff --git a/inet/getservent_r.c b/inet/getservent_r.c
index b762421c7e..25cbf322c1 100644
--- a/inet/getservent_r.c
+++ b/inet/getservent_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -19,12 +19,13 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct servent
-#define SETFUNC_NAME setservent
-#define GETFUNC_NAME getservent
-#define ENDFUNC_NAME endservent
-#define DATABASE_NAME services
-#define STAYOPEN int stayopen
-#define STAYOPEN_VAR stayopen
+#define LOOKUP_TYPE struct servent
+#define SETFUNC_NAME setservent
+#define GETFUNC_NAME getservent
+#define ENDFUNC_NAME endservent
+#define DATABASE_NAME services
+#define STAYOPEN int stayopen
+#define STAYOPEN_VAR stayopen
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXent_r.c"
diff --git a/inet/getsrvbynm_r.c b/inet/getsrvbynm_r.c
index b36dd4caa1..cb716eb6f3 100644
--- a/inet/getsrvbynm_r.c
+++ b/inet/getsrvbynm_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,10 +20,11 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct servent
-#define FUNCTION_NAME getservbyname
-#define DATABASE_NAME services
-#define ADD_PARAMS const char *name, const char *proto
-#define ADD_VARIABLES name, proto
+#define LOOKUP_TYPE struct servent
+#define FUNCTION_NAME getservbyname
+#define DATABASE_NAME services
+#define ADD_PARAMS const char *name, const char *proto
+#define ADD_VARIABLES name, proto
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/inet/getsrvbypt_r.c b/inet/getsrvbypt_r.c
index d86a70b0c0..bbba6b0c55 100644
--- a/inet/getsrvbypt_r.c
+++ b/inet/getsrvbypt_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,10 +20,11 @@
#include <netdb.h>
-#define LOOKUP_TYPE struct servent
-#define FUNCTION_NAME getservbyport
-#define DATABASE_NAME services
-#define ADD_PARAMS int port, const char *proto
-#define ADD_VARIABLES port, proto
+#define LOOKUP_TYPE struct servent
+#define FUNCTION_NAME getservbyport
+#define DATABASE_NAME services
+#define ADD_PARAMS int port, const char *proto
+#define ADD_VARIABLES port, proto
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXbyYY_r.c"
diff --git a/malloc/thread-m.h b/malloc/thread-m.h
index 9cbfb497b8..3fec10afad 100644
--- a/malloc/thread-m.h
+++ b/malloc/thread-m.h
@@ -1,6 +1,6 @@
/* Basic platform-independent macro definitions for mutexes and
thread-specific data.
- Copyright (C) 1996, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
+ Copyright (C) 1996,1997,1998,2000,2001,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Wolfram Gloger <wg@malloc.de>, 2001.
@@ -103,7 +103,7 @@ typedef pthread_mutex_t mutex_t;
#include <bits/libc-tsd.h>
typedef int tsd_key_t[1]; /* no key data structure, libc magic does it */
-__libc_tsd_define (, MALLOC) /* declaration/common definition */
+__libc_tsd_define (static, MALLOC) /* declaration/common definition */
#define tsd_key_create(key, destr) ((void) (key))
#define tsd_setspecific(key, data) __libc_tsd_set (MALLOC, (data))
#define tsd_getspecific(key, vptr) ((vptr) = __libc_tsd_get (MALLOC))
diff --git a/nss/getXXbyYY_r.c b/nss/getXXbyYY_r.c
index ecd28ad2c2..12d3cd6705 100644
--- a/nss/getXXbyYY_r.c
+++ b/nss/getXXbyYY_r.c
@@ -107,13 +107,17 @@
# define AF_VAR_P NULL
#endif
+#ifndef NSS_attribute_hidden
+# define NSS_attribute_hidden
+#endif
+
/* Type of the lookup function we need here. */
typedef enum nss_status (*lookup_function) (ADD_PARAMS, LOOKUP_TYPE *, char *,
size_t, int * H_ERRNO_PARM);
/* The lookup function for the first entry of this service. */
extern int DB_LOOKUP_FCT (service_user **nip, const char *name, void **fctp)
- internal_function;
+ internal_function NSS_attribute_hidden;
/* Interval in which we transfer retry to contact the NSCD. */
#define NSS_NSCD_RETRY 100
diff --git a/nss/getXXent_r.c b/nss/getXXent_r.c
index e1a2236009..c2ea5b57af 100644
--- a/nss/getXXent_r.c
+++ b/nss/getXXent_r.c
@@ -92,6 +92,10 @@
# define NEED__RES 0
#endif
+#ifndef NSS_attribute_hidden
+# define NSS_attribute_hidden
+#endif
+
/* This handle for the NSS data base is shared between all
set/get/endXXXent functions. */
static service_user *nip;
@@ -112,7 +116,7 @@ __libc_lock_define_initialized (static, lock)
/* The lookup function for the first entry of this service. */
extern int DB_LOOKUP_FCT (service_user **nip, const char *name, void **fctp)
- internal_function;
+ internal_function NSS_attribute_hidden;
void
SETFUNC_NAME (STAYOPEN)
diff --git a/shadow/getspent_r.c b/shadow/getspent_r.c
index ad1bd036fc..074b5cd1fb 100644
--- a/shadow/getspent_r.c
+++ b/shadow/getspent_r.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -20,11 +20,12 @@
#include <shadow.h>
-#define LOOKUP_TYPE struct spwd
-#define SETFUNC_NAME setspent
-#define GETFUNC_NAME getspent
-#define ENDFUNC_NAME endspent
-#define DATABASE_NAME shadow
-#define BUFLEN 1024
+#define LOOKUP_TYPE struct spwd
+#define SETFUNC_NAME setspent
+#define GETFUNC_NAME getspent
+#define ENDFUNC_NAME endspent
+#define DATABASE_NAME shadow
+#define BUFLEN 1024
+#define NSS_attribute_hidden attribute_hidden
#include "../nss/getXXent_r.c"
diff --git a/