Skip to content

capable is a tool to help administrators to configure RootAsRole project

License

Notifications You must be signed in to change notification settings

LeChatP/RootAsRole-capable

Repository files navigation

RootAsRole-capable

Prerequisites

We assume that you already installed the RootAsRole sr tool. We recommend to use it to take advantage of this project.

Many packages are required to build and run this project. The following is the command for installing them all on an Docker Image Ubuntu 22.04:

sr apt install clang curl build-essential libelf-dev llvm \
                linux-tools-generic binutils-dev libcap-dev libclang-dev \
                libdbus-1-dev pkg-config libacl1-dev strace

In addition to the above packages, the following are also required:

  1. stable rust toolchains: rustup toolchain install stable
  2. nightly rust toolchains: rustup toolchain install nightly --component rust-src
  3. bpftool: Compile it by following the Github (or use the following commands copied from the Github)
    1. git clone --recurse-submodules https://github.com/libbpf/bpftool.git
    2. cd bpftool/src
    3. sr make install
  4. bpf-linker: cargo install bpf-linker (--no-default-features on macOS)
  5. bindgen-cli: cargo install bindgen-cli

Build & Run

Use cargo build, cargo check, etc. as normal. Run your program with:

cargo run --release --config 'target."cfg(all())".runner="sr"'

Cargo build scripts are used to automatically build the eBPF correctly and include it in the program.

About

capable is a tool to help administrators to configure RootAsRole project

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages