about summary refs log tree commit diff
path: root/nss/nsswitch.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-10-30 00:48:09 +0000
committerUlrich Drepper <drepper@redhat.com>2007-10-30 00:48:09 +0000
commit384ca551743318bd9c9e24a496d6397f2e3f2a49 (patch)
tree86803bb391775670bd8dece020a91ba870a202d4 /nss/nsswitch.h
parent53bab260f5a80da3c6900d03ae92d2f3ef28bacb (diff)
downloadglibc-384ca551743318bd9c9e24a496d6397f2e3f2a49.tar.gz
glibc-384ca551743318bd9c9e24a496d6397f2e3f2a49.tar.xz
glibc-384ca551743318bd9c9e24a496d6397f2e3f2a49.zip
* nscd/Makefile (nscd-modules): Replace gethstbynm2_r with
	gethstbynm3_r.
	* nscd/gethstbynm2_r.c: Remove.
	* nscd/gethstbynm3_r.c: New file.
	* nscd/aicache.c (addhstaiX): Use __gethostbyaddr2_r instead of
	__gethostbyaddr_r.
	* nscd/gethstbyad_r.c: Generate __gethostbyaddr2_r function.  Define
	__gethostbyaddr_r compatibility wrapper.
	* nscd/hstcache.c (cache_addhst): Add ttl parameter.  Use it when
	determining timeout of entry.
	(lookup): Take new parameter and pass it to __gethostbyname3_r and
	__gethostbyaddr2_r.
	(addhstbyX): Pass reference to variable for TTL to lookup and
	cache_addhst.
	* nss/Versions [glibc] (GLIBC_PRIVATE): Export __nss_passwd_lookup2,
	__nss_group_lookup2, __nss_hosts_lookup2, __nss_services_lookup2,
	and __nss_next2.  Remove __nss_services_lookup.
	* nss/XXX-lookup.c: Name function now *_lookup2.  Add new parameter.
	Add compat wrapper.
	* nss/getXXbyYY_r.c: Changes to call new *_lookup2 functions and
	__nss_next2.
	* nss/getXXent_r.c: Likewise.
	* nss/getnssent_r.c: Likewise.
	* nss/nsswitch.c (__nss_lookup): Add new parameter.  If first function
	does not exist in module, try the optional second name.
	(__nss_next2): New function.
	(__nss_next): Now wrapper around __nss_next2.
	* nss/nsswitch.h: Adjust __nss_lookup prototype.
	Declare __nss_next2.
	Adjust definition of db_lookup_function type.
	* nss/service-lookup.c: Define NO_COMPAT.
	* include/netdb.h: Declare __gethostbyaddr2_r and __gethostbyname3_r.
	* inet/ether_hton.c: Use __nss_next2 instead of __nss_next.
	* inet/ether_ntoh.c: Likewise.
	* sunrpc/netname.c: Likewise.
	* sunrpc/publickey.c: Likewise.
	* inet/getnetgrent.c: Likewise.  Adjust calls to __nss_lookup.
	* inet/gethstbyad_r.c (DB_LOOKUP_FCT): Change to __nss_hosts_lookup2.
	* inet/gethstbynm2_r.c (DB_LOOKUP_FCT): Likewise.
	* inet/gethstbynm_r.c (DB_LOOKUP_FCT): Likewise.
	* inet/gethstent_r.c (DB_LOOKUP_FCT): Likewise.

	* nscd/aicache.c (addhstaiX): Fix default TTL handling.

	* inet/getnetgrent.c (setup): Encrypt static pointer.
Diffstat (limited to 'nss/nsswitch.h')
-rw-r--r--nss/nsswitch.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/nss/nsswitch.h b/nss/nsswitch.h
index d222e0d443..b80edef651 100644
--- a/nss/nsswitch.h
+++ b/nss/nsswitch.h
@@ -110,7 +110,8 @@ libc_hidden_proto (__nss_database_lookup)
 /* Put first function with name FCT_NAME for SERVICE in FCTP.  The
    position is remembered in NI.  The function returns a value < 0 if
    an error occurred or no such function exists.  */
-extern int __nss_lookup (service_user **ni, const char *fct_name, void **fctp);
+extern int __nss_lookup (service_user **ni, const char *fct_name,
+			 const char *fct2_name, void **fctp) attribute_hidden;
 
 /* Determine the next step in the lookup process according to the
    result STATUS of the call to the last function returned by
@@ -125,9 +126,12 @@ extern int __nss_lookup (service_user **ni, const char *fct_name, void **fctp);
    services.  In other words, only if all four lookup results have
    the action RETURN associated the lookup process stops before the
    natural end.  */
+extern int __nss_next2 (service_user **ni, const char *fct_name,
+			const char *fct2_name, void **fctp, int status,
+			int all_values) attribute_hidden;
+libc_hidden_proto (__nss_next2)
 extern int __nss_next (service_user **ni, const char *fct_name, void **fctp,
 		       int status, int all_values);
-libc_hidden_proto (__nss_next)
 
 /* Search for the service described in NI for a function named FCT_NAME
    and return a pointer to this function if successful.  */
@@ -139,7 +143,8 @@ libc_hidden_proto (__nss_lookup_function)
 extern void __nss_disable_nscd (void);
 
 
-typedef int (*db_lookup_function) (service_user **, const char *, void **)
+typedef int (*db_lookup_function) (service_user **, const char *, const char *,
+				   void **)
      internal_function;
 typedef enum nss_status (*setent_function) (int);
 typedef enum nss_status (*endent_function) (void);