• Quentin Monnet's avatar
    tools: bpftool: Allow unprivileged users to probe features · cf9bf714
    Quentin Monnet authored
    There is demand for a way to identify what BPF helper functions are
    available to unprivileged users. To do so, allow unprivileged users to
    run "bpftool feature probe" to list BPF-related features. This will only
    show features accessible to those users, and may not reflect the full
    list of features available (to administrators) on the system.
    
    To avoid the case where bpftool is inadvertently run as non-root and
    would list only a subset of the features supported by the system when it
    would be expected to list all of them, running as unprivileged is gated
    behind the "unprivileged" keyword passed to the command line. When used
    by a privileged user, this keyword allows to drop the CAP_SYS_ADMIN and
    to list the features available to unprivileged users. Note that this
    addsd a dependency on libpcap for compiling bpftool.
    
    Note that there is no particular reason why the probes were restricted
    to root, other than the fact I did not need them for unprivileged and
    did not bother with the additional checks at the time probes were added.
    Signed-off-by: default avatarQuentin Monnet <quentin@isovalent.com>
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    Acked-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
    Link: https://lore.kernel.org/bpf/20200429144506.8999-3-quentin@isovalent.com
    cf9bf714
feature.c 21.4 KB