Open janetat opened 3 months ago
kernel uses BPF_PROG_TYPE_SOCKET_FILTER
as program type of uprobe/uretprobe programs, so do us. Program type is not the same things as attach type.
BTW, After error_inject_bpf__open(), I print out the program type:
# The bpf_prog_type is 2, BPF_PROG_TYPE_KPROBE
fprintf(stderr, "!!!!!1: %d\n", skel->progs.do_error_inject_patch->type);
fprintf(stderr, "!!!!!2: %s\n", skel->progs.do_error_inject_patch->name);
The key problem is that bpf_prog_attach_uprobe_with_override
is not supported by kernel.
It's a self-define type only in bpftime, so we choose a type for that. Maybe we should choose a new one....
问题
当劫持的是
BPF_PROG_LOAD
时,为什么uprobe/uretprobe -> BPF_PROG_TYPE_SOCKET_FILTER
?假如使用的是
bpf_prog_attach_uprobe_with_override
去挂载程序(error_inject.c)。