Commit
d4016288ab1f ("xenstore: support XS_DIRECTORY_PART in
libxenstore") introduced a theoretical bug: the generation count of
the read node is transferred via strncpy without forcing a NUL byte
at the end. Correct this.
Signed-off-by: Juergen Gross <jgross@suse.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
struct iovec iovec[2];
char *result = NULL, *strings = NULL;
- gen[0] = 0;
+ memset(gen, 0, sizeof(gen));
iovec[0].iov_base = (void *)path;
iovec[0].iov_len = strlen(path) + 1;
continue;
}
} else
- strncpy(gen, result, sizeof(gen));
+ strncpy(gen, result, sizeof(gen) - 1);
result_len -= strlen(result) + 1;
strings = realloc(strings, off + result_len);