forked from luck/tmp_suning_uos_patched
bpf: Change bpf_obj_name_cpy() to better ensure map's name is init by 0
During get_info_by_fd, the prog/map name is memcpy-ed. It depends on the prog->aux->name and map->name to be zero initialized. bpf_prog_aux is easy to guarantee that aux->name is zero init. The name in bpf_map may be harder to be guaranteed in the future when new map type is added. Hence, this patch makes bpf_obj_name_cpy() to always zero init the prog/map name. Suggested-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: Martin KaFai Lau <kafai@fb.com> Acked-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f192970de8
commit
473d97343f
|
@ -322,6 +322,8 @@ static int bpf_obj_name_cpy(char *dst, const char *src)
|
|||
{
|
||||
const char *end = src + BPF_OBJ_NAME_LEN;
|
||||
|
||||
memset(dst, 0, BPF_OBJ_NAME_LEN);
|
||||
|
||||
/* Copy all isalnum() and '_' char */
|
||||
while (src < end && *src) {
|
||||
if (!isalnum(*src) && *src != '_')
|
||||
|
@ -333,9 +335,6 @@ static int bpf_obj_name_cpy(char *dst, const char *src)
|
|||
if (src == end)
|
||||
return -EINVAL;
|
||||
|
||||
/* '\0' terminates dst */
|
||||
*dst = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user