mirror of
https://github.com/torvalds/linux.git
synced 2024-11-15 00:21:59 +00:00
cdc4e47da8
Lots of places in the kernel use memcpy(buf, comm, TASK_COMM_LEN); but
the result is typically passed to print("%s", buf) and extra bytes
after zero don't cause any harm.
In bpf the result of bpf_get_current_comm() is used as the part of
map key and was causing spurious hash map mismatches.
Use strlcpy() to guarantee zero-terminated string.
bpf verifier checks that output buffer is zero-initialized,
so even for short task names the output buffer don't have junk bytes.
Note it's not a security concern, since kprobe+bpf is root only.
Fixes:
|
||
---|---|---|
.. | ||
arraymap.c | ||
core.c | ||
hashtab.c | ||
helpers.c | ||
inode.c | ||
Makefile | ||
percpu_freelist.c | ||
percpu_freelist.h | ||
stackmap.c | ||
syscall.c | ||
verifier.c |