Commit 25927d0a authored by Geliang Tang's avatar Geliang Tang Committed by Andrii Nakryiko
Browse files

selftests/bpf: Free strdup memory in veristat



The strdup() function returns a pointer to a new string which is a
duplicate of the string "input". Memory for the new string is obtained
with malloc(), and need to be freed with free().

This patch adds these missing "free(input)" in parse_stats() to avoid
memory leak in veristat.c.

Signed-off-by: default avatarGeliang Tang <tanggeliang@kylinos.cn>
Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
Acked-by: default avatarYonghong Song <yonghong.song@linux.dev>
Acked-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
Link: https://lore.kernel.org/bpf/ded44f8865cd7f337f52fc5fb0a5fbed7d6bd641.1714374022.git.tanggeliang@kylinos.cn
parent 237c522c
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -792,10 +792,13 @@ static int parse_stats(const char *stats_str, struct stat_specs *specs)

	while ((next = strtok_r(state ? NULL : input, ",", &state))) {
		err = parse_stat(next, specs);
		if (err)
		if (err) {
			free(input);
			return err;
		}
	}

	free(input);
	return 0;
}