Commit ec91abf0 authored by Andrey Vagin's avatar Andrey Vagin Committed by Pavel Emelyanov

zdtm/selfexe00: append a null byte to paths

readlink() does not append a null byte to buf.
Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
Acked-by: 's avatarCyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
parent 9a8475ae
...@@ -25,25 +25,31 @@ int main(int argc, char *argv[]) ...@@ -25,25 +25,31 @@ int main(int argc, char *argv[])
{ {
char path_before[PATH_MAX]; char path_before[PATH_MAX];
char path_after[PATH_MAX]; char path_after[PATH_MAX];
int ret;
test_init(argc, argv); test_init(argc, argv);
test_msg("%s pid %d\n", argv[0], getpid()); test_msg("%s pid %d\n", argv[0], getpid());
if (readlink("/proc/self/exe", path_before, sizeof(path_before)) < 0) { ret = readlink("/proc/self/exe", path_before, sizeof(path_before) - 1);
if (ret < 0) {
err("Can't read selflink\n"); err("Can't read selflink\n");
fail(); fail();
exit(1); exit(1);
} }
path_before[ret] = 0;
err("%s\n", path_before);
test_daemon(); test_daemon();
test_waitsig(); test_waitsig();
if (readlink("/proc/self/exe", path_after, sizeof(path_after)) < 0) { ret = readlink("/proc/self/exe", path_after, sizeof(path_after) - 1);
if (ret < 0) {
err("Can't read selflink\n"); err("Can't read selflink\n");
fail(); fail();
exit(1); exit(1);
} }
path_after[ret] = 0;
err("%s\n", path_after);
if (!strcmp(path_before, path_after)) if (!strcmp(path_before, path_after))
pass(); pass();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment