about summary refs log tree commit diff
path: root/nss/getXXent_r.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-06-18 16:51:12 +0000
committerUlrich Drepper <drepper@redhat.com>1998-06-18 16:51:12 +0000
commit5ad49c070734c57f35cfe045572fb22158870c78 (patch)
treed17a62167c0996bbe744522fcb819446817cdc04 /nss/getXXent_r.c
parent2827300fbe8b237b825aa29b95f24026aedd4b20 (diff)
downloadglibc-5ad49c070734c57f35cfe045572fb22158870c78.tar.gz
glibc-5ad49c070734c57f35cfe045572fb22158870c78.tar.xz
glibc-5ad49c070734c57f35cfe045572fb22158870c78.zip
Update.
1998-06-18 16:40  Ulrich Drepper  <drepper@cygnus.com>

	* libc.map: Add _dl_profile_map, _dl_profile_output, _dl_start_profile,
	_dl_mcount, _dl_mcount_wrapper.
	* elf/Makefile (routines): Add dl-profstub.
	* elf/dl-profstub.c: New file.
	* elf/dl-support.c: Don't define _dl_profile_map.
	* elf/rtld.c: Likewise.
	* elf/dlfcn.h: Define DL_CALL_FCT macro.
	* elf/ldsodefs.h: Declare _dl_profile_output, _dl_mcount_wrapper.
	Define _CALL_DL_FCT.
	* iconv/gconv.c: Use _CALL_DL_FCT to call function from dynamically
	loaded object.
	* iconv/gconv_db.c: Likewise.
	* iconv/skeleton.c: Likewise.
	* nss/getXXbyYY_r.c: Likewise.
	* nss/getXXent_r.c: Likewise.
	* nss/nsswitch.c: Likewise.
Diffstat (limited to 'nss/getXXent_r.c')
-rw-r--r--nss/getXXent_r.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/nss/getXXent_r.c b/nss/getXXent_r.c
index 49064619ae..02a723d6bc 100644
--- a/nss/getXXent_r.c
+++ b/nss/getXXent_r.c
@@ -164,7 +164,7 @@ SETFUNC_NAME (STAYOPEN)
   while (! no_more)
     {
       int is_last_nip = nip == last_nip;
-      enum nss_status status = (*fct) (STAYOPEN_VAR);
+      enum nss_status status = _CALL_DL_FCT (fct, (STAYOPEN_VAR));
 
       no_more = __nss_next (&nip, SETFUNC_NAME_STRING, (void **) &fct,
 			    status, 0);
@@ -201,7 +201,7 @@ ENDFUNC_NAME (void)
   while (! no_more)
     {
       /* Ignore status, we force check in __NSS_NEXT.  */
-      (void) (*fct) ();
+      _CALL_DL_FCT (fct, ());
 
       if (nip == last_nip)
 	/* We have processed all services which were used.  */
@@ -245,7 +245,8 @@ INTERNAL (REENTRANT_GETNAME) (LOOKUP_TYPE *resbuf, char *buffer, size_t buflen,
     {
       int is_last_nip = nip == last_nip;
 
-      status = (*fct) (resbuf, buffer, buflen, &errno H_ERRNO_VAR);
+      status = _CALL_DL_FCT (fct,
+			     (resbuf, buffer, buflen, &errno H_ERRNO_VAR));
 
       /* The the status is NSS_STATUS_TRYAGAIN and errno is ERANGE the
 	 provided buffer is too small.  In this case we should give
@@ -276,7 +277,7 @@ INTERNAL (REENTRANT_GETNAME) (LOOKUP_TYPE *resbuf, char *buffer, size_t buflen,
 				      (void **) &sfct);
 
 	      if (! no_more)
-		status = (*sfct) (STAYOPEN_TMPVAR);
+		status = _CALL_DL_FCT (sfct, (STAYOPEN_TMPVAR));
 	      else
 		status = NSS_STATUS_NOTFOUND;
 	    }