summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-02-21 09:11:47 +0000
committerUlrich Drepper <drepper@redhat.com>2007-02-21 09:11:47 +0000
commitc8703f884991059dcaea8a78a4ae00ff7b1118eb (patch)
tree124997c7857db00525f25f3cc0404a38e4b0cc12
parent[BZ #4074] (diff)
downloadglibc-c8703f884991059dcaea8a78a4ae00ff7b1118eb.tar.gz
glibc-c8703f884991059dcaea8a78a4ae00ff7b1118eb.tar.bz2
glibc-c8703f884991059dcaea8a78a4ae00ff7b1118eb.zip
* nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
* nscd/servicescache.c (cache_addserv): Likewise. * nscd/grpcache.c (cache_addgr): In case a record changed on refresh, adjust key_copy.
-rw-r--r--ChangeLog6
-rw-r--r--nscd/grpcache.c1
-rw-r--r--nscd/hstcache.c4
-rw-r--r--nscd/servicescache.c4
4 files changed, 11 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index a865200625..3ef0f333ae 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2007-02-21 Ulrich Drepper <drepper@redhat.com>
+ * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
+ * nscd/servicescache.c (cache_addserv): Likewise.
+
+ * nscd/grpcache.c (cache_addgr): In case a record changed on
+ refresh, adjust key_copy.
+
[BZ #4074]
* nscd/pwdcache.c (cache_addpw): In case a record changed on
refresh, adjust key_copy.
diff --git a/nscd/grpcache.c b/nscd/grpcache.c
index 54d1ef1eef..3852e8ca7f 100644
--- a/nscd/grpcache.c
+++ b/nscd/grpcache.c
@@ -279,6 +279,7 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req,
/* Adjust pointers into the memory block. */
gr_name = (char *) newp + (gr_name - (char *) dataset);
cp = (char *) newp + (cp - (char *) dataset);
+ key_copy = (char *) newp + (key_copy - (char *) dataset);
dataset = memcpy (newp, dataset, total + n);
alloca_used = false;
diff --git a/nscd/hstcache.c b/nscd/hstcache.c
index 742491aea3..ad2e323eac 100644
--- a/nscd/hstcache.c
+++ b/nscd/hstcache.c
@@ -311,8 +311,8 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req,
/* Adjust pointers into the memory block. */
addresses = (char *) newp + (addresses - (char *) dataset);
aliases = (char *) newp + (aliases - (char *) dataset);
- if (key_copy != NULL)
- key_copy = (char *) newp + (key_copy - (char *) dataset);
+ assert (key_copy != NULL);
+ key_copy = (char *) newp + (key_copy - (char *) dataset);
dataset = memcpy (newp, dataset, total + req->key_len);
alloca_used = false;
diff --git a/nscd/servicescache.c b/nscd/servicescache.c
index ea4fa35100..8c3a9516ba 100644
--- a/nscd/servicescache.c
+++ b/nscd/servicescache.c
@@ -264,8 +264,8 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req,
{
/* Adjust pointers into the memory block. */
aliases = (char *) newp + (aliases - (char *) dataset);
- if (key_copy != NULL)
- key_copy = (char *) newp + (key_copy - (char *) dataset);
+ assert (key_copy != NULL);
+ key_copy = (char *) newp + (key_copy - (char *) dataset);
dataset = memcpy (newp, dataset, total + req->key_len);
alloca_used = false;