summary refs log tree commit diff
path: root/nscd/gethstbyad_r.c
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 /nscd/gethstbyad_r.c
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 'nscd/gethstbyad_r.c')
-rw-r--r--nscd/gethstbyad_r.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/nscd/gethstbyad_r.c b/nscd/gethstbyad_r.c
index e2e8dfe2cc..2e7a09c2bd 100644
--- a/nscd/gethstbyad_r.c
+++ b/nscd/gethstbyad_r.c
@@ -20,12 +20,25 @@
 
 
 #define LOOKUP_TYPE	struct hostent
-#define FUNCTION_NAME	gethostbyaddr
+#define FUNCTION_NAME	gethostbyaddr2
+#define FUNCTION2_NAME	gethostbyaddr
 #define DATABASE_NAME	hosts
 #define ADD_PARAMS	const void *addr, socklen_t len, int type
+#define EXTRA_PARAMS	, int32_t *ttlp
 #define ADD_VARIABLES	addr, len, type
+#define EXTRA_VARIABLES , ttlp
 #define NEED_H_ERRNO	1
 #define NEED__RES	1
 #define NEED__RES_HCONF 1
 
 #include "../nss/getXXbyYY_r.c"
+
+
+int
+__gethostbyaddr_r (const void *addr, socklen_t len, int type,
+		   struct hostent *result_buf, char *buf, size_t buflen,
+		   struct hostent **result, int *h_errnop)
+{
+  return __gethostbyaddr2_r (addr, len, type, result_buf, buf, buflen,
+			     result, h_errnop, NULL);
+}