William Findlay
d4a4f33902
ebpf: use new SkBuffContext instead of SkSkbContext
3 years ago
William Findlay
dc7eb0410f
xtask/run: fix clippy lint
3 years ago
Dave Tucker
292ae61bee
update to new api in aya main
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker
e18bfe3e0d
rename userspace feature to user
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker
8be4317287
Merge pull request #21 from willfindlay/include_bytes_aligned
...
userspace: use include_bytes_aligned! instead of --path flag
3 years ago
William Findlay
89fb552f98
ci: fix ci to work with include_bytes_aligned!
...
This change requires the eBPF program to be built _before_ userspace.
Update CI to do this.
3 years ago
William Findlay
a80359acca
userspace: use include_bytes_aligned! instead of --path flag
3 years ago
Alessandro Decina
e73c561a7c
Merge pull request #20 from willfindlay/xtask-run
...
implement xtask run subcommand + misc doc fixes
3 years ago
William Findlay
329731038b
readme: document new cargo xtask run helper
3 years ago
William Findlay
ee77866a16
xtask/build_ebpf: document flags
3 years ago
William Findlay
ee4336a643
xtask/build_ebpf: fix panic message
3 years ago
William Findlay
d590d3a1ea
xtask: implement xtask run subcommand
...
This new subcommand provides a convenient way to run your aya application.
Features include:
- automatic compilation of userspace + bpf code
- support for user-defined runners, defaulting to `sudo -E` for convenience
- no need to run `sudo cargo run` (gross) or `sudo target/debug/myapp` (also gross),
it just works
- an optional `-p` flag which automatically supplies the correct --path flag to the
application
- support for trailing args after a final -- which are passed to the application,
cargo run-style
3 years ago
Alessandro Decina
509073c454
Merge pull request #15 from willfindlay/new-lsm-tp-btf
...
update lsm template and add template for tp_btf
3 years ago
William Findlay
3f082e713e
tp_btf: add template for tp_btf programs
3 years ago
William Findlay
7908e8593d
lsm: update program.load() to use new signature with &Btf
3 years ago
Alessandro Decina
a9c18a96cc
Merge pull request #14 from willfindlay/fix-rust-analyzer
...
lsp: use project-name instead of crate_name to generate Cargo.toml path
3 years ago
Alessandro Decina
6fb22fac2d
Merge pull request #12 from willfindlay/lsm
...
template: add a new template for LSM programs
3 years ago
William Findlay
b2838bd9eb
lsp: use project-name instead of crate_name to generate Cargo.toml path
...
My original patch was broken for crates with names-like-this, since it would incorrectly
add underscores instead of dashes to the pathname. This patch fixes the problem.
3 years ago
William Findlay
7ffb47cc6b
template: add a new template for LSM programs
3 years ago
Alessandro Decina
53906e4b13
Merge pull request #13 from willfindlay/fix-rust-analyzer
...
lsp: fix rust-analyzer support on neovim and vscode
3 years ago
William Findlay
9849294865
lsp: fix rust-analyzer support on neovim and vscode
...
The project structure was messing with rust-analyzer's ability to correctly find the
Cargo.toml for the {{project-name}}-ebpf crate. This patch fixes it by manually defining
the project structure in both vscode and neovim.
Signed-off-by: William Findlay <william@williamfindlay.com>
3 years ago
Alessandro Decina
7a536923d6
Merge pull request #10 from willfindlay/main
...
ebpf: Add rust-analyzer settings for coc.nvim
3 years ago
William Findlay
87e5676648
ebpf: Add rust-analyzer settings for coc.nvim
...
Mirrors the settings for vscode introduced in e81a33e
Signed-off-by: William Findlay <william@williamfindlay.com>
3 years ago
Alessandro Decina
bf54208f6a
README: fix run command
3 years ago
Alessandro Decina
ffa931552e
ebpf: use core::hint::unreachable_unchecked()
...
unreachable!() can panic when debug assertions is on, and we don't want
that inside a panic handler
3 years ago
Dave Tucker
c07fea5fbf
ebpf: Add rust toolchain override
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker
e81a33efcb
ebpf: Add rust-analyzer settings for vscode
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker
3158b7a337
Merge branch 'gen-bump'
3 years ago
Alessandro Decina
ddbe4013bf
Fix attach placeholder for kprobes
3 years ago
Alessandro Decina
7baf4f5688
Sleep while waiting for SIGINT
3 years ago
Dave Tucker
1378d64d4f
bump cargo-generate minimum version
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Alessandro Decina
78aad8a58d
Merge pull request #9 from dmitris/patch-2
...
CI: fix cargo install command for cargo-generate
3 years ago
Dmitry Savintsev
2dfbeb8371
CI: fix cargo install command for cargo-generate
3 years ago
Alessandro Decina
6d30972fdb
ebpf: set debug = 1 to avoid a potential segfault in LLVM
3 years ago
Alessandro Decina
dcf738cd46
Switch git urls to aya-rs
3 years ago
Dave Tucker
566934ccb6
Merge pull request #3 from aya-rs/skel
...
Use cargo-generate conditionals to provide skeletons for all supported program types
3 years ago
Dave Tucker
60badbcc73
Merge pull request #4 from alessandrod/cargo-toml-target
...
ebpf: set target and enable -Z build-std in .cargo/config.toml
3 years ago
Dave Tucker
8f4e73682e
Merge pull request #5 from alessandrod/debug-opt-level
...
ebpf: set opt-level = 2
3 years ago
Alessandro Decina
81a98fe13a
ebpf: set opt-level = 2
...
Pretty much all non trivial programs need at least opt-level=2 to
compile and link successfully
3 years ago
Alessandro Decina
a9a659716b
ebpf: set target and enable -Z build-std in .cargo/config.toml
...
This makes it possible to build with:
cd {{project-name}}-ebpf && cargo +nightly build
3 years ago
Dave Tucker
d98d90be7a
Generate Skeleton Programs for all program types
...
User may specify a program_type by prompt or CLI flag.
We then generate skeleton code to the ebpf program for a noop program of
that type.
Requires cargo-generate@main
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker
250c9ff653
Merge pull request #2 from vadorovsky/readme-fix-arg
...
readme: Fix the cargo run --bin flag
3 years ago
Michal Rostecki
f3a8f5d003
readme: Fix the cargo run --bin flag
...
The flag for `cargo run` is `--bin`, not `-bin`.
Signed-off-by: Michal Rostecki <mrostecki@opensuse.org>
3 years ago
Dave Tucker
273123abb7
aya isn't optional for the main program
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker
5d018fd6ba
Add xtask for building ebpf programs
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker
9e1c761d8d
Initial Commit
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago