This patch fixes a bug in the copying of 9P
stat information where string references
weren't being updated properly.
Signed-off-by: Martin Sava <martin.stava@gmail.com>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
memmove(ret, st, sizeof(struct p9_stat));
p = ((char *) ret) + sizeof(struct p9_stat);
memmove(p, st->name.str, st->name.len);
memmove(ret, st, sizeof(struct p9_stat));
p = ((char *) ret) + sizeof(struct p9_stat);
memmove(p, st->name.str, st->name.len);
p += st->name.len;
memmove(p, st->uid.str, st->uid.len);
p += st->name.len;
memmove(p, st->uid.str, st->uid.len);
p += st->uid.len;
memmove(p, st->gid.str, st->gid.len);
p += st->uid.len;
memmove(p, st->gid.str, st->gid.len);
p += st->gid.len;
memmove(p, st->muid.str, st->muid.len);
p += st->gid.len;
memmove(p, st->muid.str, st->muid.len);
p += st->muid.len;
if (dotu) {
memmove(p, st->extension.str, st->extension.len);
p += st->muid.len;
if (dotu) {
memmove(p, st->extension.str, st->extension.len);
+ ret->extension.str = p;
p += st->extension.len;
}
p += st->extension.len;
}