about summary refs log tree commit diff
path: root/nscd
diff options
context:
space:
mode:
Diffstat (limited to 'nscd')
-rw-r--r--nscd/cache.c21
-rw-r--r--nscd/connections.c17
-rw-r--r--nscd/hstcache.c13
3 files changed, 41 insertions, 10 deletions
diff --git a/nscd/cache.c b/nscd/cache.c
index 4ab83db6e2..dbc89fb8ec 100644
--- a/nscd/cache.c
+++ b/nscd/cache.c
@@ -225,10 +225,23 @@ prune_cache (struct database *table, time_t now)
 	  struct hashentry *old = head;
 
 	  if (debug_level > 0)
-	    dbg_log ("remove %s entry \"%s\"",
-		     serv2str[old->type],
-		     old->last
-		     ? old->key : old->data == (void *) -1 ? old->key : "???");
+	    {
+	      char buf[INET6_ADDRSTRLEN];
+	      const char *str;
+
+	      if ((old->type == GETHOSTBYADDR || old->type == GETHOSTBYADDRv6)
+		  && (old->last || old->data == (void *) -1))
+		{
+		  inet_ntop (old->type == GETHOSTBYADDR ? AF_INET : AF_INET6,
+			     old->key, buf, sizeof (buf));
+		  str = buf;
+		}
+	      else
+		str = old->last ? old->key : (old->data == (void *) -1
+					      ? old->key : "???");
+
+	      dbg_log ("remove %s entry \"%s\"", serv2str[old->type], str);
+	    }
 
 	  /* Free the data structures.  */
 	  if (old->data == (void *) -1)
diff --git a/nscd/connections.c b/nscd/connections.c
index 591e300511..ca139fbddf 100644
--- a/nscd/connections.c
+++ b/nscd/connections.c
@@ -1,5 +1,5 @@
 /* Inner loops of cache daemon.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 1999 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -24,6 +24,7 @@
 #include <pthread.h>
 #include <stdlib.h>
 #include <unistd.h>
+#include <arpa/inet.h>
 #include <sys/param.h>
 #include <sys/poll.h>
 #include <sys/socket.h>
@@ -214,7 +215,19 @@ cannot handle old request version %d; current version is %d"),
       struct database *db = &dbs[serv2db[req->type]];
 
       if (debug_level > 0)
-	dbg_log ("\t%s (%s)", serv2str[req->type], key);
+	{
+	  if (req->type == GETHOSTBYADDR || req->type == GETHOSTBYADDRv6)
+	    {
+	      char buf[INET6_ADDRSTRLEN];
+
+	      dbg_log ("\t%s (%s)", serv2str[req->type],
+		       inet_ntop (req->type == GETHOSTBYADDR
+				  ? AF_INET : AF_INET6,
+				  key, buf, sizeof (buf)));
+	    }
+	  else
+	    dbg_log ("\t%s (%s)", serv2str[req->type], key);
+	}
 
       /* Is this service enabled?  */
       if (!db->enabled)
diff --git a/nscd/hstcache.c b/nscd/hstcache.c
index 4e3af9ca40..15459752bb 100644
--- a/nscd/hstcache.c
+++ b/nscd/hstcache.c
@@ -1,5 +1,5 @@
 /* Cache handling for host lookup.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 1999 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -324,7 +324,7 @@ addhstbyaddr (struct database *db, int fd, request_header *req, void *key)
 
   if (debug_level > 0)
     {
-      char buf[64];
+      char buf[INET_ADDRSTRLEN];
       dbg_log (_("Haven't found \"%s\" in hosts cache!"),
 	       inet_ntop (AF_INET, key, buf, sizeof (buf)));
     }
@@ -356,7 +356,12 @@ addhstbynamev6 (struct database *db, int fd, request_header *req, void *key)
   struct hostent *hst;
 
   if (debug_level > 0)
-    dbg_log (_("Haven't found \"%s\" in hosts cache!"), key);
+    {
+      char buf[INET6_ADDRSTRLEN];
+
+      dbg_log (_("Haven't found \"%s\" in hosts cache!"),
+	       inet_ntop (AF_INET6, key, buf, sizeof (buf)));
+    }
 
   while (gethostbyname2_r (key, AF_INET6, &resultbuf, buffer, buflen, &hst,
 			   &h_errno) != 0
@@ -386,7 +391,7 @@ addhstbyaddrv6 (struct database *db, int fd, request_header *req, void *key)
 
   if (debug_level > 0)
     {
-      char buf[64];
+      char buf[INET6_ADDRSTRLEN];
       dbg_log (_("Haven't found \"%s\" in hosts cache!"),
 	       inet_ntop (AF_INET6, key, buf, sizeof (buf)));
     }