Tamir Duberstein
0b1fbe1cd3
integration-test: add missing `test_log` decorator
...
Use the fully qualified macro name which composes better with
`test_case` and makes it easier to spot cases where it is missing.
2 weeks ago
Dave Tucker
f6c5cb2ad2
chore(*): set clippy unused_trait_names = warn
...
We have previously tried to import traits anonymously where possible but
enforcing this manually was hard.
Since Rust 1.83 clippy can now enforce this for us.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
4 months ago
arctic-alpaca
73a34e1571
aya: Add `XskMap::unset`
5 months ago
Tamir Duberstein
f0a9f19ddc
Bump edition to 2024
...
Change FromRawTracepointArgs::arg to return T rather than *const T which
seems to have been returning a dangling pointer.
Arguably this is not strictly necessary; edition 2024 seems to be
focused on increased strictness around unsafe code which doesn't unlock
new functionality for our users. That said, this work revealed an
apparent bug (see above) that we wouldn't otherwise catch due to
allow-by-default lints.
5 months ago
arctic-alpaca
4d2a56ed46
tests: avoid UB in AF_XDP test
...
Avoid calling `MaybeUninit::uninit().assume_init_mut()` by just
initializing the memory.
5 months ago
Tamir Duberstein
0f163633e3
Appease clippy
...
See https://github.com/rust-lang/rust/pull/130778 .
```
warning: empty line after doc comment
--> test/integration-ebpf/build.rs:16:1
|
16 | / /// [bindeps]: https://doc.rust-lang.org/nightly/cargo/reference/unstable.html?highlight=feature#artifact-dependencies
17 | |
| |_
18 | fn main() {
| --------- the comment documents this function
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments
= note: `#[warn(clippy::empty_line_after_doc_comments)]` on by default
= help: if the empty line is unintentional remove it
error: empty line after doc comment
--> aya/src/maps/bloom_filter.rs:34:1
|
34 | / /// ```
35 | |
| |_
...
38 | pub struct BloomFilter<T, V: Pod> {
| --------------------------------- the comment documents this struct
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments
note: the lint level is defined here
--> aya/src/lib.rs:41:5
|
41 | clippy::all,
| ^^^^^^^^^^^
= note: `#[deny(clippy::empty_line_after_doc_comments)]` implied by `#[deny(clippy::all)]`
= help: if the empty line is unintentional remove it
error: empty line after doc comment
--> aya/src/maps/lpm_trie.rs:46:1
|
46 | / /// ```
47 | |
| |_
...
50 | pub struct LpmTrie<T, K, V> {
| --------------------------- the comment documents this struct
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments
= help: if the empty line is unintentional remove it
warning: empty line after doc comment
--> test/integration-test/build.rs:38:1
|
38 | / /// [bindeps]: https://doc.rust-lang.org/nightly/cargo/reference/unstable.html?highlight=feature#artifact-dependencies
39 | |
| |_
40 | fn main() {
| --------- the comment documents this function
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments
= note: `#[warn(clippy::empty_line_after_doc_comments)]` on by default
= help: if the empty line is unintentional remove it
warning: calling `CStr::new` with a byte string literal
--> test/integration-test/src/tests/xdp.rs:45:20
|
45 | .from_name(CStr::from_bytes_with_nul(b"lo\0").unwrap())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use a `c""` literal: `c"lo"`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_c_str_literals
= note: `#[warn(clippy::manual_c_str_literals)]` on by default
```
10 months ago
Dave Tucker
8c79b71bd5
feat(aya): Rename Bpf to Ebpf
...
And BpfLoader to EbpfLoader.
This also adds type aliases to preserve the use of the old names, making
updating to a new Aya release less of a burden. These aliases are marked
as deprecated since we'll likely remove them in a later release.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
1 year ago
arctic-alpaca
c89c95bc0b
tests: change AF_XDP test `PacketMap` repr to `C`
2 years ago
Tuetuopay
e148ce1af3
tests/xdp: don't leak memory in AF_XDP test
2 years ago
Tuetuopay
aa5ff517e7
tests: add AF_XDP test using xdpilone
2 years ago
Alessandro Decina
d679a973ca
integration-tests: enable logs
...
Use test_log::test so setting RUST_LOG=aya=debug works and it's easier
to debug failures.
2 years ago
Tamir Duberstein
81268b7ac1
integration/xdp: increase timeout to 60 seconds
...
There's absolutely no reason to have a short timeout here. This has
resulted in at least one flake:
https://github.com/aya-rs/bpf-linker/actions/runs/6384472390/job/17327196576 .
2 years ago
Tamir Duberstein
062ebfdc68
integration/xdp: use kernel-allocated port
2 years ago
Tamir Duberstein
64d9799efc
integration/xdp: reduce repetition
2 years ago
Tuetuopay
c6754c614e
maps/xdp: use ProgramFd instead of impl AsRawFd
...
Not having a generic here allows to pass `None` without specifying the
actual type you don't care about.
2 years ago
Tuetuopay
0647927e32
xdp: add support for chained xdp programs in {cpu,dev}map
...
set/insert functions can now take an optional bpf program fd to run once
the packet has been redirected from the main probe
2 years ago
Tuetuopay
139f382638
aya: add support for map-bound XDP programs
...
Such programs are to be bound to cpumap or devmap instead of the usual
network interfaces.
2 years ago
Tuetuopay
4452364c41
macros: add 'map' option to xdp macro
...
This option allows to place the program in the specific sections to
chain programs with devmaps and cpumaps.
2 years ago