aboutsummaryrefslogtreecommitdiff
path: root/nss
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2017-08-13 21:10:56 +0200
committerFlorian Weimer <fweimer@redhat.com>2017-08-13 21:10:56 +0200
commitb22974092d09a61fdb371b28837175bb616e78cf (patch)
treef8c79d98833f256948b47fd3a64240c7c5f0e775 /nss
parent1b0bfc6946b460bcebe9db19a015f2cac711f7f5 (diff)
downloadglibc-b22974092d09a61fdb371b28837175bb616e78cf.zip
glibc-b22974092d09a61fdb371b28837175bb616e78cf.tar.gz
glibc-b22974092d09a61fdb371b28837175bb616e78cf.tar.bz2
NSS: Do not use internal_function for functions with hidden aliases
Such functions are called across DSO boundaries and should not use a non-standard ABI.
Diffstat (limited to 'nss')
-rw-r--r--nss/XXX-lookup.c6
-rw-r--r--nss/getXXbyYY_r.c3
-rw-r--r--nss/getXXent_r.c3
-rw-r--r--nss/nsswitch.h3
4 files changed, 5 insertions, 10 deletions
diff --git a/nss/XXX-lookup.c b/nss/XXX-lookup.c
index 5a37fda..972a210 100644
--- a/nss/XXX-lookup.c
+++ b/nss/XXX-lookup.c
@@ -56,12 +56,10 @@
service_user *DATABASE_NAME_SYMBOL attribute_hidden;
extern int DB_LOOKUP_FCT (service_user **ni, const char *fct_name,
- const char *fct2_name, void **fctp)
- internal_function;
+ const char *fct2_name, void **fctp);
libc_hidden_proto (DB_LOOKUP_FCT)
int
-internal_function
DB_LOOKUP_FCT (service_user **ni, const char *fct_name, const char *fct2_name,
void **fctp)
{
@@ -79,7 +77,7 @@ libc_hidden_def (DB_LOOKUP_FCT)
#ifndef NO_COMPAT
int
-internal_function attribute_compat_text_section
+attribute_compat_text_section
DB_COMPAT_FCT (service_user **ni, const char *fct_name, void **fctp)
{
return DB_LOOKUP_FCT (ni, fct_name, NULL, fctp);
diff --git a/nss/getXXbyYY_r.c b/nss/getXXbyYY_r.c
index bce80e0..c58481e 100644
--- a/nss/getXXbyYY_r.c
+++ b/nss/getXXbyYY_r.c
@@ -180,8 +180,7 @@ typedef enum nss_status (*lookup_function) (ADD_PARAMS, LOOKUP_TYPE *, char *,
/* The lookup function for the first entry of this service. */
extern int DB_LOOKUP_FCT (service_user **nip, const char *name,
- const char *name2, void **fctp)
- internal_function;
+ const char *name2, void **fctp);
libc_hidden_proto (DB_LOOKUP_FCT)
diff --git a/nss/getXXent_r.c b/nss/getXXent_r.c
index 2710c1c..66c38a5 100644
--- a/nss/getXXent_r.c
+++ b/nss/getXXent_r.c
@@ -113,8 +113,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,
- const char *name2, void **fctp)
- internal_function;
+ const char *name2, void **fctp);
libc_hidden_proto (DB_LOOKUP_FCT)
void
diff --git a/nss/nsswitch.h b/nss/nsswitch.h
index bd3fbcb..7da9013 100644
--- a/nss/nsswitch.h
+++ b/nss/nsswitch.h
@@ -168,8 +168,7 @@ extern void __nss_disable_nscd (void (*) (size_t, struct traced_file *));
typedef int (*db_lookup_function) (service_user **, const char *, const char *,
- void **)
- internal_function;
+ void **);
typedef enum nss_status (*setent_function) (int);
typedef enum nss_status (*endent_function) (void);
typedef enum nss_status (*getent_function) (void *, char *, size_t,