aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/bpf/syscall.c
diff options
context:
space:
mode:
authorDaniel Borkmann <daniel@iogearbox.net>2019-04-09 17:20:07 -0400
committerAlexei Starovoitov <ast@kernel.org>2019-04-09 20:05:46 -0400
commit3e0ddc4f3ff1436970e96e76f3df3c3b5f5173b6 (patch)
treeb63d2fbe0bbbe27f537a8119ad83f09a715227e6 /kernel/bpf/syscall.c
parent87df15de441bd4add7876ef584da8cabdd9a042a (diff)
bpf: allow . char as part of the object name
Trivial addition to allow '.' aside from '_' as "special" characters in the object name. Used to allow for substrings in maps from loader side such as ".bss", ".data", ".rodata", but could also be useful for other purposes. Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Andrii Nakryiko <andriin@fb.com> Acked-by: Martin KaFai Lau <kafai@fb.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'kernel/bpf/syscall.c')
-rw-r--r--kernel/bpf/syscall.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
index b3ce516e5a20..198c9680bf0d 100644
--- a/kernel/bpf/syscall.c
+++ b/kernel/bpf/syscall.c
@@ -474,10 +474,10 @@ static int bpf_obj_name_cpy(char *dst, const char *src)
474 const char *end = src + BPF_OBJ_NAME_LEN; 474 const char *end = src + BPF_OBJ_NAME_LEN;
475 475
476 memset(dst, 0, BPF_OBJ_NAME_LEN); 476 memset(dst, 0, BPF_OBJ_NAME_LEN);
477 477 /* Copy all isalnum(), '_' and '.' chars. */
478 /* Copy all isalnum() and '_' char */
479 while (src < end && *src) { 478 while (src < end && *src) {
480 if (!isalnum(*src) && *src != '_') 479 if (!isalnum(*src) &&
480 *src != '_' && *src != '.')
481 return -EINVAL; 481 return -EINVAL;
482 *dst++ = *src++; 482 *dst++ = *src++;
483 } 483 }