+1998-09-15 08:00 Ulrich Drepper <drepper@cygnus.com>
+
+ * nscd/pwdcache.c (save_pwd): Correct copying.
+ * nscd/grpcache.c (save_grp): Likewise.
+
1998-09-14 23:36 Ulrich Drepper <drepper@cygnus.com>
* nscd/pwdcache.c (save_pwd): Rewrite to use only one malloc call.
cp = (char *) (dest->gr_mem + l + 1);
dest->gr_name = cp;
- cp = mempcpy (cp, src->gr_name, name_len);
+ cp = mempcpy (cp, src->gr_name, name_len) + 1;
dest->gr_passwd = cp;
- cp = mempcpy (cp, src->gr_passwd, passwd_len);
+ cp = mempcpy (cp, src->gr_passwd, passwd_len) + 1;
dest->gr_gid = src->gr_gid;
l = 0;
while (src->gr_mem[l] != NULL)
{
dest->gr_mem[l] = cp;
- cp = stpcpy (cp, src->gr_mem[l]);
+ cp = stpcpy (cp, src->gr_mem[l]) + 1;
++l;
}
dest->gr_mem[l] = NULL;
cp = (char *) (dest + 1);
dest->pw_name = cp;
- cp = mempcpy (cp, src->pw_name, name_len);
+ cp = mempcpy (cp, src->pw_name, name_len) + 1;
dest->pw_passwd = cp;
- cp = mempcpy (cp, src->pw_passwd, passwd_len);
+ cp = mempcpy (cp, src->pw_passwd, passwd_len) + 1;
dest->pw_uid = src->pw_uid;
dest->pw_gid = src->pw_gid;
dest->pw_gecos = cp;
- cp = mempcpy (cp, src->pw_gecos, gecos_len);
+ cp = mempcpy (cp, src->pw_gecos, gecos_len) + 1;
dest->pw_dir = cp;
- cp = mempcpy (cp, src->pw_dir, dir_len);
+ cp = mempcpy (cp, src->pw_dir, dir_len) + 1;
dest->pw_shell = cp;
mempcpy (cp, src->pw_shell, shell_len);