diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index b64146de..8945649f 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -55,8 +55,8 @@ jobs:
run: |
set -euxo pipefail
cargo hack miri test --all-targets --feature-powerset \
- --exclude aya-bpf \
- --exclude aya-bpf-bindings \
+ --exclude aya-ebpf \
+ --exclude aya-ebpf-bindings \
--exclude aya-log-ebpf \
--exclude integration-ebpf \
--exclude integration-test \
@@ -92,8 +92,8 @@ jobs:
run: |
set -euxo pipefail
cargo hack build --all-targets --feature-powerset \
- --exclude aya-bpf \
- --exclude aya-bpf-bindings \
+ --exclude aya-ebpf \
+ --exclude aya-ebpf-bindings \
--exclude aya-log-ebpf \
--exclude integration-ebpf \
--workspace
@@ -104,8 +104,8 @@ jobs:
run: |
set -euxo pipefail
cargo hack test --all-targets --feature-powerset \
- --exclude aya-bpf \
- --exclude aya-bpf-bindings \
+ --exclude aya-ebpf \
+ --exclude aya-ebpf-bindings \
--exclude aya-log-ebpf \
--exclude integration-ebpf \
--exclude integration-test \
@@ -117,15 +117,15 @@ jobs:
run: |
set -euxo pipefail
cargo hack test --doc --feature-powerset \
- --exclude aya-bpf \
- --exclude aya-bpf-bindings \
+ --exclude aya-ebpf \
+ --exclude aya-ebpf-bindings \
--exclude aya-log-ebpf \
--exclude init \
--exclude integration-ebpf \
--exclude integration-test \
--workspace
- build-test-aya-bpf:
+ build-test-aya-ebpf:
strategy:
fail-fast: false
matrix:
@@ -158,7 +158,7 @@ jobs:
CARGO_CFG_BPF_TARGET_ARCH: ${{ matrix.arch }}
run: |
set -euxo pipefail
- cargo hack build --package aya-bpf --package aya-log-ebpf \
+ cargo hack build --package aya-ebpf --package aya-log-ebpf \
--feature-powerset \
--target ${{ matrix.target }} \
-Z build-std=core
@@ -170,7 +170,7 @@ jobs:
run: |
set -euxo pipefail
cargo hack test --doc \
- --package aya-bpf \
+ --package aya-ebpf \
--package aya-log-ebpf \
--feature-powerset
@@ -305,7 +305,7 @@ jobs:
needs:
- lint
- build-test-aya
- - build-test-aya-bpf
+ - build-test-aya-ebpf
- run-integration-test
runs-on: ubuntu-latest
steps:
diff --git a/.mergify.yml b/.mergify.yml
index eeb756f8..88cdc1de 100644
--- a/.mergify.yml
+++ b/.mergify.yml
@@ -52,7 +52,7 @@ pull_request_rules:
- name: add labels for aya-bpf PRs
conditions:
- - files~=^(aya-bpf-macros|bpf/aya-bpf(-(cty|bindings))?)/
+ - files~=^(aya-ebpf-macros|ebpf/aya-ebpf(-(cty|bindings))?)/
actions:
label:
add:
@@ -68,7 +68,7 @@ pull_request_rules:
- name: add labels for aya-log-ebpf PRs
conditions:
- - files~=^(aya-log-common|bpf/aya-log-ebpf)/
+ - files~=^(aya-log-common|ebpf/aya-log-ebpf)/
actions:
label:
add:
diff --git a/Cargo.toml b/Cargo.toml
index 9a260331..6ebbc63a 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -11,13 +11,13 @@ members = [
"xtask",
# macros
- "aya-bpf-macros",
+ "aya-ebpf-macros",
"aya-log-ebpf-macros",
# ebpf crates
- "bpf/aya-bpf",
- "bpf/aya-bpf-bindings",
- "bpf/aya-log-ebpf",
+ "ebpf/aya-ebpf",
+ "ebpf/aya-ebpf-bindings",
+ "ebpf/aya-log-ebpf",
"test/integration-ebpf",
]
@@ -35,7 +35,7 @@ default-members = [
# tests, and that doesn't work unless they've been built with `cargo xtask`.
"xtask",
- "aya-bpf-macros",
+ "aya-ebpf-macros",
"aya-log-ebpf-macros",
# ebpf crates are omitted; they must be built with:
diff --git a/README.md b/README.md
index a9eb2650..4a6a8672 100644
--- a/README.md
+++ b/README.md
@@ -74,14 +74,14 @@ use a `BPF_PROG_TYPE_CGROUP_SKB` program with aya:
```rust
use std::fs::File;
-use aya::Bpf;
+use aya::Ebpf;
use aya::programs::{CgroupSkb, CgroupSkbAttachType};
// load the BPF code
-let mut bpf = Bpf::load_file("bpf.o")?;
+let mut ebpf = Ebpf::load_file("ebpf.o")?;
-// get the `ingress_filter` program compiled into `bpf.o`.
-let ingress: &mut CgroupSkb = bpf.program_mut("ingress_filter")?.try_into()?;
+// get the `ingress_filter` program compiled into `ebpf.o`.
+let ingress: &mut CgroupSkb = ebpf.program_mut("ingress_filter")?.try_into()?;
// load the program into the kernel
ingress.load()?;
diff --git a/aya-bpf-macros/Cargo.toml b/aya-ebpf-macros/Cargo.toml
similarity index 71%
rename from aya-bpf-macros/Cargo.toml
rename to aya-ebpf-macros/Cargo.toml
index bf53a8a8..2b232e4a 100644
--- a/aya-bpf-macros/Cargo.toml
+++ b/aya-ebpf-macros/Cargo.toml
@@ -1,7 +1,7 @@
[package]
-name = "aya-bpf-macros"
+name = "aya-ebpf-macros"
version = "0.1.0"
-description = "Proc macros used by aya-bpf"
+description = "Proc macros used by aya-ebpf"
authors.workspace = true
license.workspace = true
repository.workspace = true
@@ -18,4 +18,4 @@ quote = { workspace = true }
syn = { workspace = true, default-features = true, features = ["full"] }
[dev-dependencies]
-aya-bpf = { path = "../bpf/aya-bpf", version = "0.1.0", default-features = false }
+aya-ebpf = { path = "../ebpf/aya-ebpf", version = "0.1.0", default-features = false }
diff --git a/aya-bpf-macros/src/args.rs b/aya-ebpf-macros/src/args.rs
similarity index 100%
rename from aya-bpf-macros/src/args.rs
rename to aya-ebpf-macros/src/args.rs
diff --git a/aya-bpf-macros/src/btf_tracepoint.rs b/aya-ebpf-macros/src/btf_tracepoint.rs
similarity index 91%
rename from aya-bpf-macros/src/btf_tracepoint.rs
rename to aya-ebpf-macros/src/btf_tracepoint.rs
index 1e9faa8f..f9e23e0a 100644
--- a/aya-bpf-macros/src/btf_tracepoint.rs
+++ b/aya-ebpf-macros/src/btf_tracepoint.rs
@@ -34,7 +34,7 @@ impl BtfTracePoint {
#[no_mangle]
#[link_section = #section_name]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = #fn_name(::aya_bpf::programs::BtfTracePointContext::new(ctx));
+ let _ = #fn_name(::aya_ebpf::programs::BtfTracePointContext::new(ctx));
return 0;
#item
@@ -65,7 +65,7 @@ mod tests {
#[no_mangle]
#[link_section = "tp_btf"]
fn foo(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = foo(::aya_bpf::programs::BtfTracePointContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::BtfTracePointContext::new(ctx));
return 0;
fn foo(ctx: BtfTracePointContext) -> i32 {
@@ -92,7 +92,7 @@ mod tests {
#[no_mangle]
#[link_section = "tp_btf/some_func"]
fn foo(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = foo(::aya_bpf::programs::BtfTracePointContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::BtfTracePointContext::new(ctx));
return 0;
fn foo(ctx: BtfTracePointContext) -> i32 {
diff --git a/aya-bpf-macros/src/cgroup_device.rs b/aya-ebpf-macros/src/cgroup_device.rs
similarity index 81%
rename from aya-bpf-macros/src/cgroup_device.rs
rename to aya-ebpf-macros/src/cgroup_device.rs
index 88311cbc..28800cce 100644
--- a/aya-bpf-macros/src/cgroup_device.rs
+++ b/aya-ebpf-macros/src/cgroup_device.rs
@@ -23,8 +23,8 @@ impl CgroupDevice {
Ok(quote! {
#[no_mangle]
#[link_section = "cgroup/dev"]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::bpf_cgroup_dev_ctx) -> i32 {
- return #fn_name(::aya_bpf::programs::DeviceContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::bpf_cgroup_dev_ctx) -> i32 {
+ return #fn_name(::aya_ebpf::programs::DeviceContext::new(ctx));
#item
}
@@ -53,8 +53,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/dev"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_cgroup_dev_ctx) -> i32 {
- return foo(::aya_bpf::programs::DeviceContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_cgroup_dev_ctx) -> i32 {
+ return foo(::aya_ebpf::programs::DeviceContext::new(ctx));
fn foo(ctx: DeviceContext) -> i32 {
0
diff --git a/aya-bpf-macros/src/cgroup_skb.rs b/aya-ebpf-macros/src/cgroup_skb.rs
similarity index 82%
rename from aya-bpf-macros/src/cgroup_skb.rs
rename to aya-ebpf-macros/src/cgroup_skb.rs
index 1c984d13..39f60be1 100644
--- a/aya-bpf-macros/src/cgroup_skb.rs
+++ b/aya-ebpf-macros/src/cgroup_skb.rs
@@ -37,8 +37,8 @@ impl CgroupSkb {
Ok(quote! {
#[no_mangle]
#[link_section = #section_name]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return #fn_name(::aya_bpf::programs::SkBuffContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return #fn_name(::aya_ebpf::programs::SkBuffContext::new(ctx));
#item
}
@@ -67,8 +67,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/skb"]
- fn foo(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return foo(::aya_bpf::programs::SkBuffContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return foo(::aya_ebpf::programs::SkBuffContext::new(ctx));
fn foo(ctx: SkBuffContext) -> i32 {
0
@@ -93,8 +93,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup_skb/egress"]
- fn foo(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return foo(::aya_bpf::programs::SkBuffContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return foo(::aya_ebpf::programs::SkBuffContext::new(ctx));
fn foo(ctx: SkBuffContext) -> i32 {
0
@@ -119,8 +119,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup_skb/ingress"]
- fn foo(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return foo(::aya_bpf::programs::SkBuffContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return foo(::aya_ebpf::programs::SkBuffContext::new(ctx));
fn foo(ctx: SkBuffContext) -> i32 {
0
@@ -145,8 +145,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup_skb/egress"]
- fn foo(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return foo(::aya_bpf::programs::SkBuffContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return foo(::aya_ebpf::programs::SkBuffContext::new(ctx));
fn foo(ctx: SkBuffContext) -> i32 {
0
@@ -171,8 +171,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup_skb/egress"]
- pub fn foo(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return foo(::aya_bpf::programs::SkBuffContext::new(ctx));
+ pub fn foo(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return foo(::aya_ebpf::programs::SkBuffContext::new(ctx));
pub fn foo(ctx: SkBuffContext) -> i32 {
0
@@ -197,8 +197,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup_skb/egress"]
- pub(crate) fn foo(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return foo(::aya_bpf::programs::SkBuffContext::new(ctx));
+ pub(crate) fn foo(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return foo(::aya_ebpf::programs::SkBuffContext::new(ctx));
pub(crate) fn foo(ctx: SkBuffContext) -> i32 {
0
diff --git a/aya-bpf-macros/src/cgroup_sock.rs b/aya-ebpf-macros/src/cgroup_sock.rs
similarity index 83%
rename from aya-bpf-macros/src/cgroup_sock.rs
rename to aya-ebpf-macros/src/cgroup_sock.rs
index 015df836..d8950500 100644
--- a/aya-bpf-macros/src/cgroup_sock.rs
+++ b/aya-ebpf-macros/src/cgroup_sock.rs
@@ -35,8 +35,8 @@ impl CgroupSock {
Ok(quote! {
#[no_mangle]
#[link_section = #section_name]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::bpf_sock) -> i32 {
- return #fn_name(::aya_bpf::programs::SockContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::bpf_sock) -> i32 {
+ return #fn_name(::aya_ebpf::programs::SockContext::new(ctx));
#item
}
@@ -65,8 +65,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/post_bind4"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock) -> i32 {
- return foo(::aya_bpf::programs::SockContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock) -> i32 {
+ return foo(::aya_ebpf::programs::SockContext::new(ctx));
fn foo(ctx: SockContext) -> i32 {
0
@@ -91,8 +91,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/post_bind6"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock) -> i32 {
- return foo(::aya_bpf::programs::SockContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock) -> i32 {
+ return foo(::aya_ebpf::programs::SockContext::new(ctx));
fn foo(ctx: SockContext) -> i32 {
0
@@ -116,8 +116,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/sock_create"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock) -> i32 {
- return foo(::aya_bpf::programs::SockContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock) -> i32 {
+ return foo(::aya_ebpf::programs::SockContext::new(ctx));
fn foo(ctx: SockContext) -> i32 {
0
@@ -141,8 +141,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/sock_release"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock) -> i32 {
- return foo(::aya_bpf::programs::SockContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock) -> i32 {
+ return foo(::aya_ebpf::programs::SockContext::new(ctx));
fn foo(ctx: SockContext) -> i32 {
0
diff --git a/aya-bpf-macros/src/cgroup_sock_addr.rs b/aya-ebpf-macros/src/cgroup_sock_addr.rs
similarity index 82%
rename from aya-bpf-macros/src/cgroup_sock_addr.rs
rename to aya-ebpf-macros/src/cgroup_sock_addr.rs
index bc5d2477..17d0de39 100644
--- a/aya-bpf-macros/src/cgroup_sock_addr.rs
+++ b/aya-ebpf-macros/src/cgroup_sock_addr.rs
@@ -37,8 +37,8 @@ impl CgroupSockAddr {
Ok(quote! {
#[no_mangle]
#[link_section = #section_name]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return #fn_name(::aya_bpf::programs::SockAddrContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return #fn_name(::aya_ebpf::programs::SockAddrContext::new(ctx));
#item
}
@@ -67,8 +67,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/connect4"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -93,8 +93,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/connect6"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -119,8 +119,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/bind4"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -145,8 +145,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/bind6"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -171,8 +171,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/getpeername4"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -197,8 +197,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/getpeername6"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -223,8 +223,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/getsockname4"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -249,8 +249,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/getsockname6"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -275,8 +275,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/sendmsg4"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -301,8 +301,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/sendmsg6"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -327,8 +327,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/recvmsg4"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
@@ -353,8 +353,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/recvmsg6"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sock_addr) -> i32 {
- return foo(::aya_bpf::programs::SockAddrContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sock_addr) -> i32 {
+ return foo(::aya_ebpf::programs::SockAddrContext::new(ctx));
fn foo(ctx: CgroupSockAddrContext) -> i32 {
0
diff --git a/aya-bpf-macros/src/cgroup_sockopt.rs b/aya-ebpf-macros/src/cgroup_sockopt.rs
similarity index 84%
rename from aya-bpf-macros/src/cgroup_sockopt.rs
rename to aya-ebpf-macros/src/cgroup_sockopt.rs
index f26c6417..ae4c7752 100644
--- a/aya-bpf-macros/src/cgroup_sockopt.rs
+++ b/aya-ebpf-macros/src/cgroup_sockopt.rs
@@ -35,8 +35,8 @@ impl CgroupSockopt {
Ok(quote! {
#[no_mangle]
#[link_section = #section_name]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::bpf_sockopt) -> i32 {
- return #fn_name(::aya_bpf::programs::SockoptContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::bpf_sockopt) -> i32 {
+ return #fn_name(::aya_ebpf::programs::SockoptContext::new(ctx));
#item
}
@@ -65,8 +65,8 @@ mod tests {
let expected = quote!(
#[no_mangle]
#[link_section = "cgroup/getsockopt"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sockopt) -> i32 {
- return foo(::aya_bpf::programs::SockoptContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sockopt) -> i32 {
+ return foo(::aya_ebpf::programs::SockoptContext::new(ctx));
fn foo(ctx: SockoptContext) -> i32 {
0
@@ -91,8 +91,8 @@ mod tests {
let expected = quote!(
#[no_mangle]
#[link_section = "cgroup/setsockopt"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sockopt) -> i32 {
- return foo(::aya_bpf::programs::SockoptContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sockopt) -> i32 {
+ return foo(::aya_ebpf::programs::SockoptContext::new(ctx));
fn foo(ctx: SockoptContext) -> i32 {
0
diff --git a/aya-bpf-macros/src/cgroup_sysctl.rs b/aya-ebpf-macros/src/cgroup_sysctl.rs
similarity index 82%
rename from aya-bpf-macros/src/cgroup_sysctl.rs
rename to aya-ebpf-macros/src/cgroup_sysctl.rs
index 7542d1ea..451d3f76 100644
--- a/aya-bpf-macros/src/cgroup_sysctl.rs
+++ b/aya-ebpf-macros/src/cgroup_sysctl.rs
@@ -23,8 +23,8 @@ impl CgroupSysctl {
Ok(quote! {
#[no_mangle]
#[link_section = "cgroup/sysctl"]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::bpf_sysctl) -> i32 {
- return #fn_name(::aya_bpf::programs::SysctlContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::bpf_sysctl) -> i32 {
+ return #fn_name(::aya_ebpf::programs::SysctlContext::new(ctx));
#item
}
@@ -53,8 +53,8 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "cgroup/sysctl"]
- fn foo(ctx: *mut ::aya_bpf::bindings::bpf_sysctl) -> i32 {
- return foo(::aya_bpf::programs::SysctlContext::new(ctx));
+ fn foo(ctx: *mut ::aya_ebpf::bindings::bpf_sysctl) -> i32 {
+ return foo(::aya_ebpf::programs::SysctlContext::new(ctx));
fn foo(ctx: SysctlContext) -> i32 {
0
diff --git a/aya-bpf-macros/src/fentry.rs b/aya-ebpf-macros/src/fentry.rs
similarity index 80%
rename from aya-bpf-macros/src/fentry.rs
rename to aya-ebpf-macros/src/fentry.rs
index d15094dc..0856e23f 100644
--- a/aya-bpf-macros/src/fentry.rs
+++ b/aya-ebpf-macros/src/fentry.rs
@@ -40,7 +40,7 @@ impl FEntry {
#[no_mangle]
#[link_section = #section_name]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = #fn_name(::aya_bpf::programs::FEntryContext::new(ctx));
+ let _ = #fn_name(::aya_ebpf::programs::FEntryContext::new(ctx));
return 0;
#item
@@ -60,7 +60,7 @@ mod tests {
let prog = FEntry::parse(
parse_quote! {},
parse_quote! {
- fn sys_clone(ctx: &mut aya_bpf::programs::FEntryContext) -> i32 {
+ fn sys_clone(ctx: &mut aya_ebpf::programs::FEntryContext) -> i32 {
0
}
},
@@ -71,10 +71,10 @@ mod tests {
#[no_mangle]
#[link_section = "fentry"]
fn sys_clone(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = sys_clone(::aya_bpf::programs::FEntryContext::new(ctx));
+ let _ = sys_clone(::aya_ebpf::programs::FEntryContext::new(ctx));
return 0;
- fn sys_clone(ctx: &mut aya_bpf::programs::FEntryContext) -> i32 {
+ fn sys_clone(ctx: &mut aya_ebpf::programs::FEntryContext) -> i32 {
0
}
}
@@ -89,7 +89,7 @@ mod tests {
function = "sys_clone"
},
parse_quote! {
- fn sys_clone(ctx: &mut aya_bpf::programs::FEntryContext) -> i32 {
+ fn sys_clone(ctx: &mut aya_ebpf::programs::FEntryContext) -> i32 {
0
}
},
@@ -100,10 +100,10 @@ mod tests {
#[no_mangle]
#[link_section = "fentry/sys_clone"]
fn sys_clone(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = sys_clone(::aya_bpf::programs::FEntryContext::new(ctx));
+ let _ = sys_clone(::aya_ebpf::programs::FEntryContext::new(ctx));
return 0;
- fn sys_clone(ctx: &mut aya_bpf::programs::FEntryContext) -> i32 {
+ fn sys_clone(ctx: &mut aya_ebpf::programs::FEntryContext) -> i32 {
0
}
}
@@ -118,7 +118,7 @@ mod tests {
sleepable
},
parse_quote! {
- fn sys_clone(ctx: &mut aya_bpf::programs::FEntryContext) -> i32 {
+ fn sys_clone(ctx: &mut aya_ebpf::programs::FEntryContext) -> i32 {
0
}
},
@@ -129,10 +129,10 @@ mod tests {
#[no_mangle]
#[link_section = "fentry.s"]
fn sys_clone(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = sys_clone(::aya_bpf::programs::FEntryContext::new(ctx));
+ let _ = sys_clone(::aya_ebpf::programs::FEntryContext::new(ctx));
return 0;
- fn sys_clone(ctx: &mut aya_bpf::programs::FEntryContext) -> i32 {
+ fn sys_clone(ctx: &mut aya_ebpf::programs::FEntryContext) -> i32 {
0
}
}
diff --git a/aya-bpf-macros/src/fexit.rs b/aya-ebpf-macros/src/fexit.rs
similarity index 92%
rename from aya-bpf-macros/src/fexit.rs
rename to aya-ebpf-macros/src/fexit.rs
index 4c345b0f..dd4eb2d5 100644
--- a/aya-bpf-macros/src/fexit.rs
+++ b/aya-ebpf-macros/src/fexit.rs
@@ -40,7 +40,7 @@ impl FExit {
#[no_mangle]
#[link_section = #section_name]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = #fn_name(::aya_bpf::programs::FExitContext::new(ctx));
+ let _ = #fn_name(::aya_ebpf::programs::FExitContext::new(ctx));
return 0;
#item
@@ -71,7 +71,7 @@ mod tests {
#[no_mangle]
#[link_section = "fexit"]
fn sys_clone(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = sys_clone(::aya_bpf::programs::FExitContext::new(ctx));
+ let _ = sys_clone(::aya_ebpf::programs::FExitContext::new(ctx));
return 0;
fn sys_clone(ctx: &mut FExitContext) -> i32 {
@@ -100,7 +100,7 @@ mod tests {
#[no_mangle]
#[link_section = "fexit/sys_clone"]
fn sys_clone(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = sys_clone(::aya_bpf::programs::FExitContext::new(ctx));
+ let _ = sys_clone(::aya_ebpf::programs::FExitContext::new(ctx));
return 0;
fn sys_clone(ctx: &mut FExitContext) -> i32 {
@@ -129,7 +129,7 @@ mod tests {
#[no_mangle]
#[link_section = "fexit.s/sys_clone"]
fn sys_clone(ctx: *mut ::core::ffi::c_void) -> i32 {
- let _ = sys_clone(::aya_bpf::programs::FExitContext::new(ctx));
+ let _ = sys_clone(::aya_ebpf::programs::FExitContext::new(ctx));
return 0;
fn sys_clone(ctx: &mut FExitContext) -> i32 {
diff --git a/aya-bpf-macros/src/kprobe.rs b/aya-ebpf-macros/src/kprobe.rs
similarity index 93%
rename from aya-bpf-macros/src/kprobe.rs
rename to aya-ebpf-macros/src/kprobe.rs
index a8c38d70..01633917 100644
--- a/aya-bpf-macros/src/kprobe.rs
+++ b/aya-ebpf-macros/src/kprobe.rs
@@ -67,7 +67,7 @@ impl KProbe {
#[no_mangle]
#[link_section = #section_name]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = #fn_name(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = #fn_name(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
#item
@@ -100,7 +100,7 @@ mod tests {
#[no_mangle]
#[link_section = "kprobe"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
@@ -132,7 +132,7 @@ mod tests {
#[no_mangle]
#[link_section = "kprobe/fib_lookup"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
@@ -165,7 +165,7 @@ mod tests {
#[no_mangle]
#[link_section = "kprobe/fib_lookup+10"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
@@ -195,7 +195,7 @@ mod tests {
#[no_mangle]
#[link_section = "kretprobe"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
diff --git a/aya-bpf-macros/src/lib.rs b/aya-ebpf-macros/src/lib.rs
similarity index 96%
rename from aya-bpf-macros/src/lib.rs
rename to aya-ebpf-macros/src/lib.rs
index 4393ab95..8364b683 100644
--- a/aya-bpf-macros/src/lib.rs
+++ b/aya-ebpf-macros/src/lib.rs
@@ -142,7 +142,7 @@ pub fn sk_msg(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{bindings::xdp_action::XDP_PASS, macros::xdp, programs::XdpContext};
+/// use aya_ebpf::{bindings::xdp_action::XDP_PASS, macros::xdp, programs::XdpContext};
///
/// #[xdp(frags)]
/// pub fn xdp(ctx: XdpContext) -> u32 {
@@ -222,7 +222,7 @@ pub fn cgroup_skb(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{macros::cgroup_sock_addr, programs::SockAddrContext};
+/// use aya_ebpf::{macros::cgroup_sock_addr, programs::SockAddrContext};
///
/// #[cgroup_sock_addr(connect4)]
/// pub fn connect4(ctx: SockAddrContext) -> i32 {
@@ -300,7 +300,7 @@ pub fn perf_event(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{macros::raw_tracepoint, programs::RawTracePointContext};
+/// use aya_ebpf::{macros::raw_tracepoint, programs::RawTracePointContext};
///
/// #[raw_tracepoint(tracepoint = "sys_enter")]
/// pub fn sys_enter(ctx: RawTracePointContext) -> i32 {
@@ -347,7 +347,7 @@ pub fn raw_tracepoint(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{macros::lsm, programs::LsmContext};
+/// use aya_ebpf::{macros::lsm, programs::LsmContext};
///
/// #[lsm(hook = "file_open")]
/// pub fn file_open(ctx: LsmContext) -> i32 {
@@ -387,7 +387,7 @@ pub fn lsm(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{macros::btf_tracepoint, programs::BtfTracePointContext};
+/// use aya_ebpf::{macros::btf_tracepoint, programs::BtfTracePointContext};
///
/// #[btf_tracepoint(function = "sched_process_fork")]
/// pub fn sched_process_fork(ctx: BtfTracePointContext) -> u32 {
@@ -425,7 +425,7 @@ pub fn btf_tracepoint(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{macros::stream_parser, programs::SkBuffContext};
+/// use aya_ebpf::{macros::stream_parser, programs::SkBuffContext};
///
///
///#[stream_parser]
@@ -456,7 +456,7 @@ pub fn stream_parser(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{macros::stream_verdict, programs::SkBuffContext, bindings::sk_action};
+/// use aya_ebpf::{macros::stream_verdict, programs::SkBuffContext, bindings::sk_action};
///
///
///#[stream_verdict]
@@ -497,7 +497,7 @@ fn sk_skb(kind: SkSkbKind, attrs: TokenStream, item: TokenStream) -> TokenStream
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{macros::socket_filter, programs::SkBuffContext};
+/// use aya_ebpf::{macros::socket_filter, programs::SkBuffContext};
///
/// #[socket_filter]
/// pub fn accept_all(_ctx: SkBuffContext) -> i64 {
@@ -529,7 +529,7 @@ pub fn socket_filter(attrs: TokenStream, item: TokenStream) -> TokenStream {
///
/// ```no_run
/// # #![allow(non_camel_case_types)]
-/// use aya_bpf::{macros::fentry, programs::FEntryContext};
+/// use aya_ebpf::{macros::fentry, programs::FEntryContext};
/// # type filename = u32;
/// # type path = u32;
///
@@ -574,7 +574,7 @@ pub fn fentry(attrs: TokenStream, item: TokenStream) -> TokenStream {
///
/// ```no_run
/// # #![allow(non_camel_case_types)]
-/// use aya_bpf::{macros::fexit, programs::FExitContext};
+/// use aya_ebpf::{macros::fexit, programs::FExitContext};
/// # type filename = u32;
/// # type path = u32;
///
@@ -615,7 +615,7 @@ pub fn fexit(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{macros::sk_lookup, programs::SkLookupContext};
+/// use aya_ebpf::{macros::sk_lookup, programs::SkLookupContext};
///
/// #[sk_lookup]
/// pub fn accept_all(_ctx: SkLookupContext) -> u32 {
@@ -645,7 +645,7 @@ pub fn sk_lookup(attrs: TokenStream, item: TokenStream) -> TokenStream {
/// # Examples
///
/// ```no_run
-/// use aya_bpf::{
+/// use aya_ebpf::{
/// macros::cgroup_device,
/// programs::DeviceContext,
/// };
diff --git a/aya-bpf-macros/src/lsm.rs b/aya-ebpf-macros/src/lsm.rs
similarity index 82%
rename from aya-bpf-macros/src/lsm.rs
rename to aya-ebpf-macros/src/lsm.rs
index 430795eb..f32705db 100644
--- a/aya-bpf-macros/src/lsm.rs
+++ b/aya-ebpf-macros/src/lsm.rs
@@ -43,7 +43,7 @@ impl Lsm {
#[no_mangle]
#[link_section = #section_name]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> i32 {
- return #fn_name(::aya_bpf::programs::LsmContext::new(ctx));
+ return #fn_name(::aya_ebpf::programs::LsmContext::new(ctx));
#item
}
@@ -65,7 +65,7 @@ mod tests {
hook = "bprm_committed_creds"
},
parse_quote! {
- fn bprm_committed_creds(ctx: &mut ::aya_bpf::programs::LsmContext) -> i32 {
+ fn bprm_committed_creds(ctx: &mut ::aya_ebpf::programs::LsmContext) -> i32 {
0
}
},
@@ -76,9 +76,9 @@ mod tests {
#[no_mangle]
#[link_section = "lsm.s/bprm_committed_creds"]
fn bprm_committed_creds(ctx: *mut ::core::ffi::c_void) -> i32 {
- return bprm_committed_creds(::aya_bpf::programs::LsmContext::new(ctx));
+ return bprm_committed_creds(::aya_ebpf::programs::LsmContext::new(ctx));
- fn bprm_committed_creds(ctx: &mut ::aya_bpf::programs::LsmContext) -> i32 {
+ fn bprm_committed_creds(ctx: &mut ::aya_ebpf::programs::LsmContext) -> i32 {
0
}
}
@@ -93,7 +93,7 @@ mod tests {
hook = "bprm_committed_creds"
},
parse_quote! {
- fn bprm_committed_creds(ctx: &mut ::aya_bpf::programs::LsmContext) -> i32 {
+ fn bprm_committed_creds(ctx: &mut ::aya_ebpf::programs::LsmContext) -> i32 {
0
}
},
@@ -104,9 +104,9 @@ mod tests {
#[no_mangle]
#[link_section = "lsm/bprm_committed_creds"]
fn bprm_committed_creds(ctx: *mut ::core::ffi::c_void) -> i32 {
- return bprm_committed_creds(::aya_bpf::programs::LsmContext::new(ctx));
+ return bprm_committed_creds(::aya_ebpf::programs::LsmContext::new(ctx));
- fn bprm_committed_creds(ctx: &mut ::aya_bpf::programs::LsmContext) -> i32 {
+ fn bprm_committed_creds(ctx: &mut ::aya_ebpf::programs::LsmContext) -> i32 {
0
}
}
diff --git a/aya-bpf-macros/src/map.rs b/aya-ebpf-macros/src/map.rs
similarity index 100%
rename from aya-bpf-macros/src/map.rs
rename to aya-ebpf-macros/src/map.rs
diff --git a/aya-bpf-macros/src/perf_event.rs b/aya-ebpf-macros/src/perf_event.rs
similarity index 90%
rename from aya-bpf-macros/src/perf_event.rs
rename to aya-ebpf-macros/src/perf_event.rs
index 8022d8b2..eb582167 100644
--- a/aya-bpf-macros/src/perf_event.rs
+++ b/aya-ebpf-macros/src/perf_event.rs
@@ -24,7 +24,7 @@ impl PerfEvent {
#[no_mangle]
#[link_section = "perf_event"]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = #fn_name(::aya_bpf::programs::PerfEventContext::new(ctx));
+ let _ = #fn_name(::aya_ebpf::programs::PerfEventContext::new(ctx));
return 0;
#item
@@ -55,7 +55,7 @@ mod tests {
#[no_mangle]
#[link_section = "perf_event"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::PerfEventContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::PerfEventContext::new(ctx));
return 0;
fn foo(ctx: PerfEventContext) -> i32 {
diff --git a/aya-bpf-macros/src/raw_tracepoint.rs b/aya-ebpf-macros/src/raw_tracepoint.rs
similarity index 84%
rename from aya-bpf-macros/src/raw_tracepoint.rs
rename to aya-ebpf-macros/src/raw_tracepoint.rs
index 87f97988..d2780dce 100644
--- a/aya-bpf-macros/src/raw_tracepoint.rs
+++ b/aya-ebpf-macros/src/raw_tracepoint.rs
@@ -33,7 +33,7 @@ impl RawTracePoint {
#[no_mangle]
#[link_section = #section_name]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = #fn_name(::aya_bpf::programs::RawTracePointContext::new(ctx));
+ let _ = #fn_name(::aya_ebpf::programs::RawTracePointContext::new(ctx));
return 0;
#item
@@ -53,7 +53,7 @@ mod tests {
let prog = RawTracePoint::parse(
parse_quote! { tracepoint = "sys_enter" },
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::RawTracePointContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::RawTracePointContext) -> i32 {
0
}
},
@@ -64,10 +64,10 @@ mod tests {
#[no_mangle]
#[link_section = "raw_tp/sys_enter"]
fn prog(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = prog(::aya_bpf::programs::RawTracePointContext::new(ctx));
+ let _ = prog(::aya_ebpf::programs::RawTracePointContext::new(ctx));
return 0;
- fn prog(ctx: &mut ::aya_bpf::programs::RawTracePointContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::RawTracePointContext) -> i32 {
0
}
}
diff --git a/aya-bpf-macros/src/sk_lookup.rs b/aya-ebpf-macros/src/sk_lookup.rs
similarity index 72%
rename from aya-bpf-macros/src/sk_lookup.rs
rename to aya-ebpf-macros/src/sk_lookup.rs
index e1d6fc92..e32890de 100644
--- a/aya-bpf-macros/src/sk_lookup.rs
+++ b/aya-ebpf-macros/src/sk_lookup.rs
@@ -23,8 +23,8 @@ impl SkLookup {
Ok(quote! {
#[no_mangle]
#[link_section = "sk_lookup"]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::bpf_sk_lookup) -> u32 {
- return #fn_name(::aya_bpf::programs::SkLookupContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::bpf_sk_lookup) -> u32 {
+ return #fn_name(::aya_ebpf::programs::SkLookupContext::new(ctx));
#item
}
@@ -43,7 +43,7 @@ mod tests {
let prog = SkLookup::parse(
parse_quote! {},
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::SkLookupContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkLookupContext) -> u32 {
0
}
},
@@ -53,10 +53,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "sk_lookup"]
- fn prog(ctx: *mut ::aya_bpf::bindings::bpf_sk_lookup) -> u32 {
- return prog(::aya_bpf::programs::SkLookupContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::bpf_sk_lookup) -> u32 {
+ return prog(::aya_ebpf::programs::SkLookupContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::SkLookupContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkLookupContext) -> u32 {
0
}
}
diff --git a/aya-bpf-macros/src/sk_msg.rs b/aya-ebpf-macros/src/sk_msg.rs
similarity index 73%
rename from aya-bpf-macros/src/sk_msg.rs
rename to aya-ebpf-macros/src/sk_msg.rs
index b0e2cc4c..6586f8da 100644
--- a/aya-bpf-macros/src/sk_msg.rs
+++ b/aya-ebpf-macros/src/sk_msg.rs
@@ -23,8 +23,8 @@ impl SkMsg {
Ok(quote! {
#[no_mangle]
#[link_section = "sk_msg"]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::sk_msg_md) -> u32 {
- return #fn_name(::aya_bpf::programs::SkMsgContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::sk_msg_md) -> u32 {
+ return #fn_name(::aya_ebpf::programs::SkMsgContext::new(ctx));
#item
}
@@ -43,7 +43,7 @@ mod tests {
let prog = SkMsg::parse(
parse_quote! {},
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::SkMsgContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkMsgContext) -> u32 {
0
}
},
@@ -53,10 +53,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "sk_msg"]
- fn prog(ctx: *mut ::aya_bpf::bindings:: sk_msg_md) -> u32 {
- return prog(::aya_bpf::programs::SkMsgContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings:: sk_msg_md) -> u32 {
+ return prog(::aya_ebpf::programs::SkMsgContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::SkMsgContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkMsgContext) -> u32 {
0
}
}
diff --git a/aya-bpf-macros/src/sk_skb.rs b/aya-ebpf-macros/src/sk_skb.rs
similarity index 76%
rename from aya-bpf-macros/src/sk_skb.rs
rename to aya-ebpf-macros/src/sk_skb.rs
index 5056ced6..c626602f 100644
--- a/aya-bpf-macros/src/sk_skb.rs
+++ b/aya-ebpf-macros/src/sk_skb.rs
@@ -45,8 +45,8 @@ impl SkSkb {
Ok(quote! {
#[no_mangle]
#[link_section = #section_name]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> u32 {
- return #fn_name(::aya_bpf::programs::SkBuffContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> u32 {
+ return #fn_name(::aya_ebpf::programs::SkBuffContext::new(ctx));
#item
}
@@ -66,7 +66,7 @@ mod tests {
SkSkbKind::StreamParser,
parse_quote! {},
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::SkBuffContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkBuffContext) -> u32 {
0
}
},
@@ -76,10 +76,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "sk_skb/stream_parser"]
- fn prog(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> u32 {
- return prog(::aya_bpf::programs::SkBuffContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> u32 {
+ return prog(::aya_ebpf::programs::SkBuffContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::SkBuffContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkBuffContext) -> u32 {
0
}
}
@@ -93,7 +93,7 @@ mod tests {
SkSkbKind::StreamVerdict,
parse_quote! {},
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::SkBuffContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkBuffContext) -> u32 {
0
}
},
@@ -103,10 +103,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "sk_skb/stream_verdict"]
- fn prog(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> u32 {
- return prog(::aya_bpf::programs::SkBuffContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> u32 {
+ return prog(::aya_ebpf::programs::SkBuffContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::SkBuffContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkBuffContext) -> u32 {
0
}
}
diff --git a/aya-bpf-macros/src/sock_ops.rs b/aya-ebpf-macros/src/sock_ops.rs
similarity index 72%
rename from aya-bpf-macros/src/sock_ops.rs
rename to aya-ebpf-macros/src/sock_ops.rs
index 62e2b739..91b9c5c4 100644
--- a/aya-bpf-macros/src/sock_ops.rs
+++ b/aya-ebpf-macros/src/sock_ops.rs
@@ -23,8 +23,8 @@ impl SockOps {
Ok(quote! {
#[no_mangle]
#[link_section = "sockops"]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::bpf_sock_ops) -> u32 {
- return #fn_name(::aya_bpf::programs::SockOpsContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::bpf_sock_ops) -> u32 {
+ return #fn_name(::aya_ebpf::programs::SockOpsContext::new(ctx));
#item
}
@@ -43,7 +43,7 @@ mod tests {
let prog = SockOps::parse(
parse_quote! {},
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::SockOpsContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SockOpsContext) -> u32 {
0
}
},
@@ -53,10 +53,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "sockops"]
- fn prog(ctx: *mut ::aya_bpf::bindings::bpf_sock_ops) -> u32 {
- return prog(::aya_bpf::programs::SockOpsContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::bpf_sock_ops) -> u32 {
+ return prog(::aya_ebpf::programs::SockOpsContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::SockOpsContext) -> u32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SockOpsContext) -> u32 {
0
}
}
diff --git a/aya-bpf-macros/src/socket_filter.rs b/aya-ebpf-macros/src/socket_filter.rs
similarity index 73%
rename from aya-bpf-macros/src/socket_filter.rs
rename to aya-ebpf-macros/src/socket_filter.rs
index 2ebc3edf..27c0b7c7 100644
--- a/aya-bpf-macros/src/socket_filter.rs
+++ b/aya-ebpf-macros/src/socket_filter.rs
@@ -23,8 +23,8 @@ impl SocketFilter {
Ok(quote! {
#[no_mangle]
#[link_section = "socket"]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i64 {
- return #fn_name(::aya_bpf::programs::SkBuffContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i64 {
+ return #fn_name(::aya_ebpf::programs::SkBuffContext::new(ctx));
#item
}
@@ -43,7 +43,7 @@ mod tests {
let prog = SocketFilter::parse(
parse_quote! {},
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::SkBuffContext) -> i64 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkBuffContext) -> i64 {
0
}
},
@@ -53,10 +53,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "socket"]
- fn prog(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i64 {
- return prog(::aya_bpf::programs::SkBuffContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i64 {
+ return prog(::aya_ebpf::programs::SkBuffContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::SkBuffContext) -> i64 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::SkBuffContext) -> i64 {
0
}
}
diff --git a/aya-bpf-macros/src/tc.rs b/aya-ebpf-macros/src/tc.rs
similarity index 74%
rename from aya-bpf-macros/src/tc.rs
rename to aya-ebpf-macros/src/tc.rs
index 56d3940a..0b816674 100644
--- a/aya-bpf-macros/src/tc.rs
+++ b/aya-ebpf-macros/src/tc.rs
@@ -23,8 +23,8 @@ impl SchedClassifier {
Ok(quote! {
#[no_mangle]
#[link_section = "classifier"]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return #fn_name(::aya_bpf::programs::TcContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return #fn_name(::aya_ebpf::programs::TcContext::new(ctx));
#item
}
@@ -43,7 +43,7 @@ mod tests {
let prog = SchedClassifier::parse(
parse_quote! {},
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::TcContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::TcContext) -> i32 {
0
}
},
@@ -53,10 +53,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "classifier"]
- fn prog(ctx: *mut ::aya_bpf::bindings::__sk_buff) -> i32 {
- return prog(::aya_bpf::programs::TcContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::__sk_buff) -> i32 {
+ return prog(::aya_ebpf::programs::TcContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::TcContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::TcContext) -> i32 {
0
}
}
diff --git a/aya-bpf-macros/src/tracepoint.rs b/aya-ebpf-macros/src/tracepoint.rs
similarity index 88%
rename from aya-bpf-macros/src/tracepoint.rs
rename to aya-ebpf-macros/src/tracepoint.rs
index e7675b33..7377346f 100644
--- a/aya-bpf-macros/src/tracepoint.rs
+++ b/aya-ebpf-macros/src/tracepoint.rs
@@ -41,7 +41,7 @@ impl TracePoint {
#[no_mangle]
#[link_section = #section_name]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = #fn_name(::aya_bpf::programs::TracePointContext::new(ctx));
+ let _ = #fn_name(::aya_ebpf::programs::TracePointContext::new(ctx));
return 0;
#item
@@ -61,7 +61,7 @@ mod tests {
let prog = TracePoint::parse(
parse_quote! { name = "sys_enter_bind", category = "syscalls" },
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::TracePointContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::TracePointContext) -> i32 {
0
}
},
@@ -72,10 +72,10 @@ mod tests {
#[no_mangle]
#[link_section = "tracepoint/syscalls/sys_enter_bind"]
fn prog(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = prog(::aya_bpf::programs::TracePointContext::new(ctx));
+ let _ = prog(::aya_ebpf::programs::TracePointContext::new(ctx));
return 0;
- fn prog(ctx: &mut ::aya_bpf::programs::TracePointContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::TracePointContext) -> i32 {
0
}
}
diff --git a/aya-bpf-macros/src/uprobe.rs b/aya-ebpf-macros/src/uprobe.rs
similarity index 93%
rename from aya-bpf-macros/src/uprobe.rs
rename to aya-ebpf-macros/src/uprobe.rs
index 1684cd6d..812279ee 100644
--- a/aya-bpf-macros/src/uprobe.rs
+++ b/aya-ebpf-macros/src/uprobe.rs
@@ -93,7 +93,7 @@ impl UProbe {
#[no_mangle]
#[link_section = #section_name]
#fn_vis fn #fn_name(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = #fn_name(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = #fn_name(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
#item
@@ -126,7 +126,7 @@ mod tests {
#[no_mangle]
#[link_section = "uprobe"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
@@ -156,7 +156,7 @@ mod tests {
#[no_mangle]
#[link_section = "uprobe.s"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
@@ -189,7 +189,7 @@ mod tests {
#[no_mangle]
#[link_section = "uprobe/self/proc/exe:trigger_uprobe"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
@@ -221,7 +221,7 @@ mod tests {
#[no_mangle]
#[link_section = "uprobe/self/proc/exe:foo+123"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
@@ -251,7 +251,7 @@ mod tests {
#[no_mangle]
#[link_section = "uretprobe"]
fn foo(ctx: *mut ::core::ffi::c_void) -> u32 {
- let _ = foo(::aya_bpf::programs::ProbeContext::new(ctx));
+ let _ = foo(::aya_ebpf::programs::ProbeContext::new(ctx));
return 0;
fn foo(ctx: ProbeContext) -> u32 {
diff --git a/aya-bpf-macros/src/xdp.rs b/aya-ebpf-macros/src/xdp.rs
similarity index 72%
rename from aya-bpf-macros/src/xdp.rs
rename to aya-ebpf-macros/src/xdp.rs
index 9e0f1a5a..3944fb19 100644
--- a/aya-bpf-macros/src/xdp.rs
+++ b/aya-ebpf-macros/src/xdp.rs
@@ -53,8 +53,8 @@ impl Xdp {
Ok(quote! {
#[no_mangle]
#[link_section = #section_name]
- #fn_vis fn #fn_name(ctx: *mut ::aya_bpf::bindings::xdp_md) -> u32 {
- return #fn_name(::aya_bpf::programs::XdpContext::new(ctx));
+ #fn_vis fn #fn_name(ctx: *mut ::aya_ebpf::bindings::xdp_md) -> u32 {
+ return #fn_name(::aya_ebpf::programs::XdpContext::new(ctx));
#item
}
@@ -73,7 +73,7 @@ mod tests {
let prog = Xdp::parse(
parse_quote! {},
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
},
@@ -83,10 +83,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "xdp"]
- fn prog(ctx: *mut ::aya_bpf::bindings::xdp_md) -> u32 {
- return prog(::aya_bpf::programs::XdpContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::xdp_md) -> u32 {
+ return prog(::aya_ebpf::programs::XdpContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
}
@@ -99,7 +99,7 @@ mod tests {
let prog = Xdp::parse(
parse_quote! { frags },
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
},
@@ -109,10 +109,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "xdp.frags"]
- fn prog(ctx: *mut ::aya_bpf::bindings::xdp_md) -> u32 {
- return prog(::aya_bpf::programs::XdpContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::xdp_md) -> u32 {
+ return prog(::aya_ebpf::programs::XdpContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
}
@@ -125,7 +125,7 @@ mod tests {
let prog = Xdp::parse(
parse_quote! { map = "cpumap" },
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
},
@@ -135,10 +135,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "xdp/cpumap"]
- fn prog(ctx: *mut ::aya_bpf::bindings::xdp_md) -> u32 {
- return prog(::aya_bpf::programs::XdpContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::xdp_md) -> u32 {
+ return prog(::aya_ebpf::programs::XdpContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
}
@@ -151,7 +151,7 @@ mod tests {
let prog = Xdp::parse(
parse_quote! { map = "devmap" },
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
},
@@ -161,10 +161,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "xdp/devmap"]
- fn prog(ctx: *mut ::aya_bpf::bindings::xdp_md) -> u32 {
- return prog(::aya_bpf::programs::XdpContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::xdp_md) -> u32 {
+ return prog(::aya_ebpf::programs::XdpContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
}
@@ -178,7 +178,7 @@ mod tests {
Xdp::parse(
parse_quote! { map = "badmap" },
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
},
@@ -191,7 +191,7 @@ mod tests {
let prog = Xdp::parse(
parse_quote! { frags, map = "cpumap" },
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
},
@@ -201,10 +201,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "xdp.frags/cpumap"]
- fn prog(ctx: *mut ::aya_bpf::bindings::xdp_md) -> u32 {
- return prog(::aya_bpf::programs::XdpContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::xdp_md) -> u32 {
+ return prog(::aya_ebpf::programs::XdpContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
}
@@ -217,7 +217,7 @@ mod tests {
let prog = Xdp::parse(
parse_quote! { frags, map = "devmap" },
parse_quote! {
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
},
@@ -227,10 +227,10 @@ mod tests {
let expected = quote! {
#[no_mangle]
#[link_section = "xdp.frags/devmap"]
- fn prog(ctx: *mut ::aya_bpf::bindings::xdp_md) -> u32 {
- return prog(::aya_bpf::programs::XdpContext::new(ctx));
+ fn prog(ctx: *mut ::aya_ebpf::bindings::xdp_md) -> u32 {
+ return prog(::aya_ebpf::programs::XdpContext::new(ctx));
- fn prog(ctx: &mut ::aya_bpf::programs::XdpContext) -> i32 {
+ fn prog(ctx: &mut ::aya_ebpf::programs::XdpContext) -> i32 {
0
}
}
diff --git a/aya-log/CHANGELOG.md b/aya-log/CHANGELOG.md
index 033dfd5a..f0792c74 100644
--- a/aya-log/CHANGELOG.md
+++ b/aya-log/CHANGELOG.md
@@ -21,111 +21,116 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Chore
- - Don't use path deps in workspace
- This moves the path dependencies back into the per-crate Cargo.toml.
- It is required such that the release tooling can correctly calculate
- which version constraints require changing when we perform a release.
- - Use the cargo workspace package table
- This allows for inheritance of common fields from the workspace root.
- The following fields have been made common:
-
- - authors
- - license
- - repository
- - homepage
- - edition
+- Don't use path deps in workspace
+ This moves the path dependencies back into the per-crate Cargo.toml.
+ It is required such that the release tooling can correctly calculate
+ which version constraints require changing when we perform a release.
+- Use the cargo workspace package table
+ This allows for inheritance of common fields from the workspace root.
+ The following fields have been made common:
+
+ - authors
+ - license
+ - repository
+ - homepage
+ - edition
### Documentation
- - Add CHANGELOG
+- Add CHANGELOG
### New Features
- - check format and value type in proc macro
+- check format and value type in proc macro
### Bug Fixes
- - remove some useless code
+- remove some useless code
### Other
- - group_imports = "StdExternalCrate"
- High time we stop debating this; let the robots do the work.
- - s/Result/Option/
- `Option` is guaranteed to have the same size as `usize`,
- which is not guarnateed for `Result`. This is a minor optimization, but
- also results in simpler code.
- - Define dependencies on the workspace level
- This way we will avoid version mismatches and make differences in
- features across our crates clearer.
- - add formatter and check in CI
- - Unify IP format hints into one, repsesent it by `:i` token
- Having separate format hints and tokens per IP address family is
- unnecessary, since they are represented by different types and we handle
- format hints for each type separately. So we can just have one format
- hint.
-
- Also, we should be consistent with the format strings grammar in
- Rust[0]. The `type` token, which is mapped to formatting traits, usually
- consists of one letter[1] (and optional `?` for `Debug` trait, but that
- doesn't matter for us). It shouldn't consist of multiple letters. Our
- `:ipv4` and `:ipv6` tokens were clearly breaking that convention, so we
- should rather switch to something with one letter - hence `:i`.
-
- [0] https://doc.rust-lang.org/std/fmt/#syntax
- [1] https://doc.rust-lang.org/std/fmt/#formatting-traits
- - support logging byte slices
- These only support LowerHex and UpperHex hints for now.
- - check errors in tests
- - Move the `Pod` implementations from aya-log-common to aya-log
- Keeping the `Pod` implementations and optional dependency on aya in
- aya-log-common breaks the clippy checks (which are made on the entire
- workspace).
-
- The reason is that when different crates inside the workspace have the
- same dependency with different features, that dependency is built only
- once with the sum of features needed by all crates. It's **not** being
- built separately with different feature sets.
-
- That's why, before this change, aya-log-common was built once for the
- entire workspace with `userspace` feature enabled. That made importing
- aya-log-ebpf inside integration-ebpf impossible. The aya-log-common
- build, with `userspace` feature enabled, was pulling std as a
- dependency. Therefore, importing aya-log-ebpf inside integration-ebpf
- resulted in including std and errors like:
-
- ```
- error[E0152]: found duplicate lang item `panic_impl`
- --> test/integration-ebpf/src/log.rs:23:1
- |
- 23 | fn panic(_info: &core::panic::PanicInfo) -> ! {
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- |
- = note: the lang item is first defined in crate `std` (which `aya` depends on)
- ```
-
- This change fixes the problem by removing the `userspace` feature from
- aya-log-common and moving the `Pod` implementations to aya-log.
- - update env_logger requirement from 0.9 to 0.10
- Updates the requirements on [env_logger](https://github.com/rust-cli/env_logger) to permit the latest version.
- - [Release notes](https://github.com/rust-cli/env_logger/releases)
- - [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md)
- - [Commits](https://github.com/rust-cli/env_logger/compare/v0.9.0...v0.10.0)
-
- ---
- updated-dependencies:
- - dependency-name: env_logger
- dependency-type: direct:production
- ...
+- group_imports = "StdExternalCrate"
+ High time we stop debating this; let the robots do the work.
+- s/Result/Option/
+ `Option` is guaranteed to have the same size as `usize`,
+ which is not guarnateed for `Result`. This is a minor optimization, but
+ also results in simpler code.
+- Define dependencies on the workspace level
+ This way we will avoid version mismatches and make differences in
+ features across our crates clearer.
+- add formatter and check in CI
+- Unify IP format hints into one, repsesent it by `:i` token
+ Having separate format hints and tokens per IP address family is
+ unnecessary, since they are represented by different types and we handle
+ format hints for each type separately. So we can just have one format
+ hint.
+
+ Also, we should be consistent with the format strings grammar in
+ Rust[0]. The `type` token, which is mapped to formatting traits, usually
+ consists of one letter[1] (and optional `?` for `Debug` trait, but that
+ doesn't matter for us). It shouldn't consist of multiple letters. Our
+ `:ipv4` and `:ipv6` tokens were clearly breaking that convention, so we
+ should rather switch to something with one letter - hence `:i`.
+
+ [0] https://doc.rust-lang.org/std/fmt/#syntax
+ [1] https://doc.rust-lang.org/std/fmt/#formatting-traits
+
+- support logging byte slices
+ These only support LowerHex and UpperHex hints for now.
+- check errors in tests
+- Move the `Pod` implementations from aya-log-common to aya-log
+ Keeping the `Pod` implementations and optional dependency on aya in
+ aya-log-common breaks the clippy checks (which are made on the entire
+ workspace).
+
+ The reason is that when different crates inside the workspace have the
+ same dependency with different features, that dependency is built only
+ once with the sum of features needed by all crates. It's **not** being
+ built separately with different feature sets.
+
+ That's why, before this change, aya-log-common was built once for the
+ entire workspace with `userspace` feature enabled. That made importing
+ aya-log-ebpf inside integration-ebpf impossible. The aya-log-common
+ build, with `userspace` feature enabled, was pulling std as a
+ dependency. Therefore, importing aya-log-ebpf inside integration-ebpf
+ resulted in including std and errors like:
+
+ ```
+ error[E0152]: found duplicate lang item `panic_impl`
+ --> test/integration-ebpf/src/log.rs:23:1
+ |
+ 23 | fn panic(_info: &core::panic::PanicInfo) -> ! {
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ |
+ = note: the lang item is first defined in crate `std` (which `aya` depends on)
+ ```
+
+ This change fixes the problem by removing the `userspace` feature from
+ aya-log-common and moving the `Pod` implementations to aya-log.
+
+- update env_logger requirement from 0.9 to 0.10
+ Updates the requirements on [env_logger](https://github.com/rust-cli/env_logger) to permit the latest version.
+
+ - [Release notes](https://github.com/rust-cli/env_logger/releases)
+ - [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md)
+ - [Commits](https://github.com/rust-cli/env_logger/compare/v0.9.0...v0.10.0)
+
+ ***
+
+ updated-dependencies:
+
+ - dependency-name: env_logger
+ dependency-type: direct:production
+ ...
### Commit Statistics
- - 37 commits contributed to the release over the course of 469 calendar days.
- - 469 days passed between releases.
- - 14 commits were understood as [conventional](https://www.conventionalcommits.org).
- - 0 issues like '(#ID)' were seen in commit messages
+- 37 commits contributed to the release over the course of 469 calendar days.
+- 469 days passed between releases.
+- 14 commits were understood as [conventional](https://www.conventionalcommits.org).
+- 0 issues like '(#ID)' were seen in commit messages
### Commit Details
@@ -133,44 +138,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
view details
- * **Uncategorized**
- - Add CHANGELOG ([`9abb716`](https://github.com/aya-rs/aya/commit/9abb7160e51dd18c509049b1371acd96515d8f04))
- - Release aya-log-common v0.1.14, aya-log v0.2.0 ([`c22a696`](https://github.com/aya-rs/aya/commit/c22a6963d44befb5591d4b21c09767c43935cb54))
- - Release aya-obj v0.1.0, aya v0.12.0, safety bump aya-log v0.2.0 ([`0e99fa0`](https://github.com/aya-rs/aya/commit/0e99fa0f340b2fb2e0da3b330aa6555322a77eec))
- - Don't use path deps in workspace ([`13b1fc6`](https://github.com/aya-rs/aya/commit/13b1fc63ef2ae083ba03ce9de24cb4f31f989d21))
- - Merge pull request #882 from dave-tucker/metadata ([`0fadd69`](https://github.com/aya-rs/aya/commit/0fadd695377b8a3f0d9a3af3bc8140f0f1bed8d2))
- - Use the cargo workspace package table ([`b3e7ef7`](https://github.com/aya-rs/aya/commit/b3e7ef741c5b8d09fc7dc8302576f8174be75ff4))
- - Appease rustc dead_code lint ([`963dd13`](https://github.com/aya-rs/aya/commit/963dd1321925c95f80c8a2bf656b88a39497ca01))
- - Merge pull request #797 from aya-rs/rustfmt-group-imports ([`373fb7b`](https://github.com/aya-rs/aya/commit/373fb7bf06ba80ee4c120d8c112f5e810204c472))
- - Group_imports = "StdExternalCrate" ([`d16e607`](https://github.com/aya-rs/aya/commit/d16e607fd4b6258b516913071fdacafeb2bbbff9))
- - Merge pull request #736 from aya-rs/logging-better ([`45df251`](https://github.com/aya-rs/aya/commit/45df2519b60613310e8827fbb4076f60c393c3bb))
- - Merge pull request #735 from aya-rs/log-option-not-result ([`ecf0dd9`](https://github.com/aya-rs/aya/commit/ecf0dd973985bd442978b202d0fd6f75647cdda3))
- - S/Result/Option/ ([`ca3f70b`](https://github.com/aya-rs/aya/commit/ca3f70b16a705bf26d2ccc7ce754de403be36223))
- - Remove pointless DefaultLogger ([`00d265c`](https://github.com/aya-rs/aya/commit/00d265c51b69e672457502593fbc63d0ac953e27))
- - Merge pull request #667 from vadorovsky/workspace-dependencies ([`f554d42`](https://github.com/aya-rs/aya/commit/f554d421053bc34266afbf8e00b28705ab4b41d2))
- - Define dependencies on the workspace level ([`96fa08b`](https://github.com/aya-rs/aya/commit/96fa08bd82233268154edf30b106876f5a4f0e30))
- - Merge pull request #666 from aya-rs/toml-fmt ([`dc3b0b8`](https://github.com/aya-rs/aya/commit/dc3b0b87308fdac5ff8f472de9a5e849b52d9fee))
- - Add formatter and check in CI ([`c8bf646`](https://github.com/aya-rs/aya/commit/c8bf646ef098a00bc5c6e1cb5ae35ffa6fb5eac5))
- - Merge pull request #650 from aya-rs/test-cleanup ([`61608e6`](https://github.com/aya-rs/aya/commit/61608e64583f9dc599eef9b8db098f38a765b285))
- - Remove "async" feature ([`fa91fb4`](https://github.com/aya-rs/aya/commit/fa91fb4f59be3505664f8088b6e3e8da2c372253))
- - Unify IP format hints into one, repsesent it by `:i` token ([`84e5e28`](https://github.com/aya-rs/aya/commit/84e5e2894f226f4b2c7cb637a6f44d5773b927e6))
- - Remove some useless code ([`d999a95`](https://github.com/aya-rs/aya/commit/d999a95b410df79e1d9f6c27462e19a2cede06c2))
- - Check format and value type in proc macro ([`0970300`](https://github.com/aya-rs/aya/commit/0970300d1f5659622fa55a18dd7681c608d75b0f))
- - Merge pull request #585 from probulate/tag-len-value ([`5165bf2`](https://github.com/aya-rs/aya/commit/5165bf2f99cdc228122bdab505c2059723e95a9f))
- - Support logging byte slices ([`d9f966e`](https://github.com/aya-rs/aya/commit/d9f966ec9e49f4439710559cac852bde62810975))
- - Aya-log, aya-log-common: economize bytes ([`a4a69a6`](https://github.com/aya-rs/aya/commit/a4a69a6bcfe87d3c066f2cc341b74039f53dcc9e))
- - Check errors in tests ([`e4537e3`](https://github.com/aya-rs/aya/commit/e4537e389ad7ac6f09fc89349444e37fe01e4af4))
- - Aya-log, aya-log-common: Remove duplicate struct ([`490d7d5`](https://github.com/aya-rs/aya/commit/490d7d587ad90b899aff2a30d65db8641ceb32df))
- - Merge pull request #591 from vadorovsky/aya-log-impl-pod ([`3d3ce8b`](https://github.com/aya-rs/aya/commit/3d3ce8bfa2eff19706cc3d8e5f0ce9e81a520a78))
- - Move the `Pod` implementations from aya-log-common to aya-log ([`5603d72`](https://github.com/aya-rs/aya/commit/5603d7248a51a16233c249b645e30ea3f6804744))
- - Merge pull request #484 from vadorovsky/update-tokio ([`bea0e83`](https://github.com/aya-rs/aya/commit/bea0e83512cc6d45b3e4fb5c3f62432c434139b7))
- - Update Tokio and inventory ([`dad75f4`](https://github.com/aya-rs/aya/commit/dad75f45ac357e86eebc92c4f95f6dd4e43d8496))
- - Don't panic in init when bpf programs don't log ([`12927cf`](https://github.com/aya-rs/aya/commit/12927cf6992bc0f8b1e4221d48b34f4c0098b93d))
- - Merge pull request #456 from dmitris/uninlined_format_args ([`16b029e`](https://github.com/aya-rs/aya/commit/16b029ed3708470afd2a6d67615b30c8d30b5059))
- - Fix uninlined_format_args clippy issues ([`055d94f`](https://github.com/aya-rs/aya/commit/055d94f58be4f80ada416b99278a22f600c71285))
- - Merge pull request #449 from aya-rs/dependabot/cargo/env_logger-0.10 ([`f9bef9f`](https://github.com/aya-rs/aya/commit/f9bef9f8c0d2c5b21809e037b8e9782f3c761df3))
- - Update env_logger requirement from 0.9 to 0.10 ([`1c8088b`](https://github.com/aya-rs/aya/commit/1c8088b16cc255fc188b0b9a84b550a5c50a9003))
- - Revert "aya-log, aya-log-common: temporarily revert to old map API so we can release" ([`0b41018`](https://github.com/aya-rs/aya/commit/0b41018ee27bfda9b1ea7dc422b34d3a08fc3fc6))
+- **Uncategorized** - Add CHANGELOG ([`9abb716`](https://github.com/aya-rs/aya/commit/9abb7160e51dd18c509049b1371acd96515d8f04)) - Release aya-log-common v0.1.14, aya-log v0.2.0 ([`c22a696`](https://github.com/aya-rs/aya/commit/c22a6963d44befb5591d4b21c09767c43935cb54)) - Release aya-obj v0.1.0, aya v0.12.0, safety bump aya-log v0.2.0 ([`0e99fa0`](https://github.com/aya-rs/aya/commit/0e99fa0f340b2fb2e0da3b330aa6555322a77eec)) - Don't use path deps in workspace ([`13b1fc6`](https://github.com/aya-rs/aya/commit/13b1fc63ef2ae083ba03ce9de24cb4f31f989d21)) - Merge pull request #882 from dave-tucker/metadata ([`0fadd69`](https://github.com/aya-rs/aya/commit/0fadd695377b8a3f0d9a3af3bc8140f0f1bed8d2)) - Use the cargo workspace package table ([`b3e7ef7`](https://github.com/aya-rs/aya/commit/b3e7ef741c5b8d09fc7dc8302576f8174be75ff4)) - Appease rustc dead_code lint ([`963dd13`](https://github.com/aya-rs/aya/commit/963dd1321925c95f80c8a2bf656b88a39497ca01)) - Merge pull request #797 from aya-rs/rustfmt-group-imports ([`373fb7b`](https://github.com/aya-rs/aya/commit/373fb7bf06ba80ee4c120d8c112f5e810204c472)) - Group_imports = "StdExternalCrate" ([`d16e607`](https://github.com/aya-rs/aya/commit/d16e607fd4b6258b516913071fdacafeb2bbbff9)) - Merge pull request #736 from aya-rs/logging-better ([`45df251`](https://github.com/aya-rs/aya/commit/45df2519b60613310e8827fbb4076f60c393c3bb)) - Merge pull request #735 from aya-rs/log-option-not-result ([`ecf0dd9`](https://github.com/aya-rs/aya/commit/ecf0dd973985bd442978b202d0fd6f75647cdda3)) - S/Result/Option/ ([`ca3f70b`](https://github.com/aya-rs/aya/commit/ca3f70b16a705bf26d2ccc7ce754de403be36223)) - Remove pointless DefaultLogger ([`00d265c`](https://github.com/aya-rs/aya/commit/00d265c51b69e672457502593fbc63d0ac953e27)) - Merge pull request #667 from vadorovsky/workspace-dependencies ([`f554d42`](https://github.com/aya-rs/aya/commit/f554d421053bc34266afbf8e00b28705ab4b41d2)) - Define dependencies on the workspace level ([`96fa08b`](https://github.com/aya-rs/aya/commit/96fa08bd82233268154edf30b106876f5a4f0e30)) - Merge pull request #666 from aya-rs/toml-fmt ([`dc3b0b8`](https://github.com/aya-rs/aya/commit/dc3b0b87308fdac5ff8f472de9a5e849b52d9fee)) - Add formatter and check in CI ([`c8bf646`](https://github.com/aya-rs/aya/commit/c8bf646ef098a00bc5c6e1cb5ae35ffa6fb5eac5)) - Merge pull request #650 from aya-rs/test-cleanup ([`61608e6`](https://github.com/aya-rs/aya/commit/61608e64583f9dc599eef9b8db098f38a765b285)) - Remove "async" feature ([`fa91fb4`](https://github.com/aya-rs/aya/commit/fa91fb4f59be3505664f8088b6e3e8da2c372253)) - Unify IP format hints into one, repsesent it by `:i` token ([`84e5e28`](https://github.com/aya-rs/aya/commit/84e5e2894f226f4b2c7cb637a6f44d5773b927e6)) - Remove some useless code ([`d999a95`](https://github.com/aya-rs/aya/commit/d999a95b410df79e1d9f6c27462e19a2cede06c2)) - Check format and value type in proc macro ([`0970300`](https://github.com/aya-rs/aya/commit/0970300d1f5659622fa55a18dd7681c608d75b0f)) - Merge pull request #585 from probulate/tag-len-value ([`5165bf2`](https://github.com/aya-rs/aya/commit/5165bf2f99cdc228122bdab505c2059723e95a9f)) - Support logging byte slices ([`d9f966e`](https://github.com/aya-rs/aya/commit/d9f966ec9e49f4439710559cac852bde62810975)) - Aya-log, aya-log-common: economize bytes ([`a4a69a6`](https://github.com/aya-rs/aya/commit/a4a69a6bcfe87d3c066f2cc341b74039f53dcc9e)) - Check errors in tests ([`e4537e3`](https://github.com/aya-rs/aya/commit/e4537e389ad7ac6f09fc89349444e37fe01e4af4)) - Aya-log, aya-log-common: Remove duplicate struct ([`490d7d5`](https://github.com/aya-rs/aya/commit/490d7d587ad90b899aff2a30d65db8641ceb32df)) - Merge pull request #591 from vadorovsky/aya-log-impl-pod ([`3d3ce8b`](https://github.com/aya-rs/aya/commit/3d3ce8bfa2eff19706cc3d8e5f0ce9e81a520a78)) - Move the `Pod` implementations from aya-log-common to aya-log ([`5603d72`](https://github.com/aya-rs/aya/commit/5603d7248a51a16233c249b645e30ea3f6804744)) - Merge pull request #484 from vadorovsky/update-tokio ([`bea0e83`](https://github.com/aya-rs/aya/commit/bea0e83512cc6d45b3e4fb5c3f62432c434139b7)) - Update Tokio and inventory ([`dad75f4`](https://github.com/aya-rs/aya/commit/dad75f45ac357e86eebc92c4f95f6dd4e43d8496)) - Don't panic in init when bpf programs don't log ([`12927cf`](https://github.com/aya-rs/aya/commit/12927cf6992bc0f8b1e4221d48b34f4c0098b93d)) - Merge pull request #456 from dmitris/uninlined_format_args ([`16b029e`](https://github.com/aya-rs/aya/commit/16b029ed3708470afd2a6d67615b30c8d30b5059)) - Fix uninlined_format_args clippy issues ([`055d94f`](https://github.com/aya-rs/aya/commit/055d94f58be4f80ada416b99278a22f600c71285)) - Merge pull request #449 from aya-rs/dependabot/cargo/env_logger-0.10 ([`f9bef9f`](https://github.com/aya-rs/aya/commit/f9bef9f8c0d2c5b21809e037b8e9782f3c761df3)) - Update env_logger requirement from 0.9 to 0.10 ([`1c8088b`](https://github.com/aya-rs/aya/commit/1c8088b16cc255fc188b0b9a84b550a5c50a9003)) - Revert "aya-log, aya-log-common: temporarily revert to old map API so we can release" ([`0b41018`](https://github.com/aya-rs/aya/commit/0b41018ee27bfda9b1ea7dc422b34d3a08fc3fc6))
## v0.1.13 (2022-11-16)
@@ -192,64 +160,67 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Other
- - release version 0.1.13
- - Add format hints for MAC addresses
- Add `{:mac}` (for lower-case hex representation) and `{:MAC}` (for
- upper-case hex representation) format hints for the `[u8; 6]` type,
- which is the standard one in Linux to store physical addresses in.
-
- Tested with: https://github.com/vadorovsky/aya-examples/tree/main/xdp-mac
- - Make miri happy
- Miri took issue about using slice::from_raw_parts without checking for
- alignment. Instead, we can simply convert to a [u8;16] into a [u16;8] by
- iterating in chunks of 2 and bitshifting (remembering that these arrays
- are in network-endian order).
- - Add display hints
- This change adds optional display hints:
-
- * `{:x}`, `{:X}` - for hex representation of numbers
- * `{:ipv4}`, `{:IPv4}` - for IPv4 addresses
- * `{:ipv6}`, `{:IPv6}` - for IPv6 addresses
-
- It also gets rid of dyn-fmt and instead comes with our own parser
- implementation.
-
- Tested on: https://github.com/vadorovsky/aya-examples/tree/main/tc
- - Fix links to aya-log repo
- The aya-log repo ([0]) has been archived, use the link to
- aya repo instead.
- - Remove i128 and u128 types
- They are not supported by eBPF VM and we are going to use arrays for
- IPv6.
- - use new PerCpuArray::get_ptr_mut API
- - Add example
- This ensures that macro expansion works properly and that expanded code
- compiles
- - Ensure the bounds of log buffer
- eBPF verifier rejects programs which are not checking the bounds of the
- log buffer before writing any arguments. This change ensures that
- written log arguments.
-
- In practice, it means that doing this kind of checks is not going to be
- needed in eBPF program code anymore:
- - Bump the buffer size
- 1024 is too small for many kernel string limits (i.e. PATH_MAX, which is
- 4096).
- - do not release
- - use stricter version for the aya-log-common dep
- - inline write_record_header
- This seems to help the verifier keep track of where we're writing into
- LOG_BUF
- - initialize AYA_LOGS with max_entries=0
- This way aya will create one perf buffer for each cpu
+- release version 0.1.13
+- Add format hints for MAC addresses
+ Add `{:mac}` (for lower-case hex representation) and `{:MAC}` (for
+ upper-case hex representation) format hints for the `[u8; 6]` type,
+ which is the standard one in Linux to store physical addresses in.
+
+ Tested with: https://github.com/vadorovsky/aya-examples/tree/main/xdp-mac
+
+- Make miri happy
+ Miri took issue about using slice::from_raw_parts without checking for
+ alignment. Instead, we can simply convert to a [u8;16] into a [u16;8] by
+ iterating in chunks of 2 and bitshifting (remembering that these arrays
+ are in network-endian order).
+- Add display hints
+ This change adds optional display hints:
+
+ - `{:x}`, `{:X}` - for hex representation of numbers
+ - `{:ipv4}`, `{:IPv4}` - for IPv4 addresses
+ - `{:ipv6}`, `{:IPv6}` - for IPv6 addresses
+
+ It also gets rid of dyn-fmt and instead comes with our own parser
+ implementation.
+
+ Tested on: https://github.com/vadorovsky/aya-examples/tree/main/tc
+
+- Fix links to aya-log repo
+ The aya-log repo ([0]) has been archived, use the link to
+ aya repo instead.
+- Remove i128 and u128 types
+ They are not supported by eBPF VM and we are going to use arrays for
+ IPv6.
+- use new PerCpuArray::get_ptr_mut API
+- Add example
+ This ensures that macro expansion works properly and that expanded code
+ compiles
+- Ensure the bounds of log buffer
+ eBPF verifier rejects programs which are not checking the bounds of the
+ log buffer before writing any arguments. This change ensures that
+ written log arguments.
+
+ In practice, it means that doing this kind of checks is not going to be
+ needed in eBPF program code anymore:
+
+- Bump the buffer size
+ 1024 is too small for many kernel string limits (i.e. PATH_MAX, which is
+ 4096).
+- do not release
+- use stricter version for the aya-log-common dep
+- inline write_record_header
+ This seems to help the verifier keep track of where we're writing into
+ LOG_BUF
+- initialize AYA_LOGS with max_entries=0
+ This way aya will create one perf buffer for each cpu
### Commit Statistics
- - 59 commits contributed to the release over the course of 110 calendar days.
- - 14 commits were understood as [conventional](https://www.conventionalcommits.org).
- - 0 issues like '(#ID)' were seen in commit messages
+- 59 commits contributed to the release over the course of 110 calendar days.
+- 14 commits were understood as [conventional](https://www.conventionalcommits.org).
+- 0 issues like '(#ID)' were seen in commit messages
### Commit Details
@@ -257,65 +228,5 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
view details
- * **Uncategorized**
- - Release version 0.1.13 ([`832bdd2`](https://github.com/aya-rs/aya/commit/832bdd280c19095d79ba2d27281c17f0b09adc15))
- - Aya-log, aya-log-common: temporarily revert to old map API so we can release ([`0d040d2`](https://github.com/aya-rs/aya/commit/0d040d2290cc1513c979c95538210abd7ee59ebb))
- - Merge pull request #436 from vadorovsky/aya-log-mac-addr ([`3adb9b0`](https://github.com/aya-rs/aya/commit/3adb9b049f493ec9b80fcf868a8eac3363d17844))
- - Add format hints for MAC addresses ([`2223ab8`](https://github.com/aya-rs/aya/commit/2223ab828d6db40a85cff4737f6164ed8ee9e42d))
- - Merge pull request #397 from astoycos/refactor-map-api2 ([`d6cb1a1`](https://github.com/aya-rs/aya/commit/d6cb1a16ad0f8df483e2234fb01ab55bdbeaa8b8))
- - Make map APIs return an option ([`f3262e8`](https://github.com/aya-rs/aya/commit/f3262e87bd6ff895537df47fcf5d17c598e564cc))
- - Core refactor of Map API ([`1aefa2e`](https://github.com/aya-rs/aya/commit/1aefa2e5e6d22a600cc7339d289d64ab06f842e3))
- - Merge pull request #390 from dave-tucker/clippy-up ([`367ab20`](https://github.com/aya-rs/aya/commit/367ab203057329ea32eea34ddc97452e0c03fda6))
- - Make miri happy ([`b2924a3`](https://github.com/aya-rs/aya/commit/b2924a3a264732e6de6898a1f03d7cb22d1d0dc5))
- - Aya-log, aya-log-common: start next development iteration 0.1.12-dev.0 ([`6f0637a`](https://github.com/aya-rs/aya/commit/6f0637a6c8f3696b226558dc47b2dc2f6680e347))
- - Aya-log, aya-log-common: release version 0.1.11 ([`ba927ac`](https://github.com/aya-rs/aya/commit/ba927ac20497fdfd0033fb48f4bfda3fc8dedf42))
- - Add display hints ([`83ec27f`](https://github.com/aya-rs/aya/commit/83ec27f06b6859f455f2b2baf985b8fd3fb4adc5))
- - Change from Rust edition 2018 to 2021 ([`944d6b8`](https://github.com/aya-rs/aya/commit/944d6b8a1647df36c17cd060b15c37ac9615f4a7))
- - Merge pull request #361 from chenhengqi/fix-aya-log-links ([`632ea30`](https://github.com/aya-rs/aya/commit/632ea300ed8dcb3a277447a57b528b8d89b0c10a))
- - Fix links to aya-log repo ([`b8b291c`](https://github.com/aya-rs/aya/commit/b8b291c51ba1b43ff27c6aab6b55d6af77334aae))
- - Merge pull request #357 from vadorovsky/env_logger ([`3d5ab0b`](https://github.com/aya-rs/aya/commit/3d5ab0b17de0e4f1453a88ed00823d04db0845a6))
- - Aya-log, test: Switch from simplelog to env_logger ([`3664e1e`](https://github.com/aya-rs/aya/commit/3664e1ea0d42985bd88129cfd338bacff2456398))
- - Merge pull request #353 from vadorovsky/log-remove-u128 ([`d968094`](https://github.com/aya-rs/aya/commit/d968094b662be3449624420b76ea2dd239ef657b))
- - Remove i128 and u128 types ([`611f967`](https://github.com/aya-rs/aya/commit/611f967cd14b90e187ca86735f2131fb87e89856))
- - Merge pull request #350 from dave-tucker/monorepo ([`f37a514`](https://github.com/aya-rs/aya/commit/f37a51433ff5283205ba5d1e74cdc75fbdeea160))
- - Re-organize into a single workspace ([`dc31e11`](https://github.com/aya-rs/aya/commit/dc31e11691bbb8ae916da9da873fdc37ff261c27))
- - Fix the log buffer bounds ([`28abaec`](https://github.com/aya-rs/aya/commit/28abaece2af732cf2b2b2f8b12aeb02439e76d4c))
- - Ensure log buffer bounds ([`2e07028`](https://github.com/aya-rs/aya/commit/2e0702854b0e2428f6b5b32678f5f79ca341c619))
- - Use new PerCpuArray::get_ptr_mut API ([`6aea880`](https://github.com/aya-rs/aya/commit/6aea88089087194c831b259a61eef5ccebcb45bc))
- - Aya-log, aya-log-common: start next development iteration 0.1.11-dev.0 ([`526493b`](https://github.com/aya-rs/aya/commit/526493b444ed91f1c315ace494b41b8f4178fe65))
- - Aya-log, aya-log-common: release version 0.1.10 ([`3abd973`](https://github.com/aya-rs/aya/commit/3abd97307ef32bfbd384f38f7a0de40cc7afa0b1))
- - Update aya requirement from 0.10.7 to 0.11.0 ([`060ba45`](https://github.com/aya-rs/aya/commit/060ba451535b1a90c2faaf2dcd634fa36e784efb))
- - Add CI ([`0038b43`](https://github.com/aya-rs/aya/commit/0038b43627e6564b03d9837f535ec64ada6d70f2))
- - Add vim/vscode rust-analyzer settings ([`c1bb790`](https://github.com/aya-rs/aya/commit/c1bb790c0d8d467ac41603b15b56823c7ba0f663))
- - Add rustfmt.toml ([`3f00851`](https://github.com/aya-rs/aya/commit/3f0085195f178fdba6c214b4129f8321e612d4e7))
- - Add example ([`5789585`](https://github.com/aya-rs/aya/commit/5789585994776d18afa58f3bb816cfcb1367298e))
- - Add Tests ([`5d82d9a`](https://github.com/aya-rs/aya/commit/5d82d9a73e77d386c8be3dc3764b3dd361fcac71))
- - Ensure the bounds of log buffer ([`628b473`](https://github.com/aya-rs/aya/commit/628b473e0937eef94b0b337608a5d6c51ad2fd2a))
- - Bump the buffer size ([`70b4e68`](https://github.com/aya-rs/aya/commit/70b4e681301eb23ca776cd703e11f19cc879ac69))
- - Aya-log, aya-log-common: start next development iteration 0.1.10-dev.0 ([`bd9a5c8`](https://github.com/aya-rs/aya/commit/bd9a5c8fdff9c20952137908388b1d833ab60fcc))
- - Aya-log, aya-log-common: release version 0.1.9 ([`8bc1bbb`](https://github.com/aya-rs/aya/commit/8bc1bbb3abe588e89161e67ad013c34f1ec3ab6d))
- - Add cargo-release config ([`a8d133f`](https://github.com/aya-rs/aya/commit/a8d133f6b0919bb7d8e821f1309ee264d8b03a71))
- - Do not release ([`d1a0ce5`](https://github.com/aya-rs/aya/commit/d1a0ce51ee4e67cf9b03b695940f356ee950f8c2))
- - Use stricter version for the aya-log-common dep ([`c4d89fa`](https://github.com/aya-rs/aya/commit/c4d89fa13cb4e96a62ccd5cae7cf1834c3c582f6))
- - Inline write_record_header ([`bdb2750`](https://github.com/aya-rs/aya/commit/bdb2750e66f922ebfbcba7250add38e2c932c293))
- - Update aya to 0.10.7 ([`81befa0`](https://github.com/aya-rs/aya/commit/81befa06610b9e771523bceee4871a704851b1f0))
- - Format arguments in userspace ([`ca1fe7e`](https://github.com/aya-rs/aya/commit/ca1fe7e05f7b52c5e864680abeda29e640617d40))
- - Don't recompute the record length ([`9b229d0`](https://github.com/aya-rs/aya/commit/9b229d00e110a5b3b610ad567f8d15682c0b78e1))
- - Initialize AYA_LOGS with max_entries=0 ([`7f8d705`](https://github.com/aya-rs/aya/commit/7f8d7057df11f41d0869f7f713d121785934adca))
- - Fix clippy warning ([`2800454`](https://github.com/aya-rs/aya/commit/2800454763f5f0250c46c87f9cfb2e3d1f5f0a7e))
- - Add copy of README.md inside aya-log/ ([`8bde15d`](https://github.com/aya-rs/aya/commit/8bde15dad70016f6fb72a77906da341768d59720))
- - Add missing manifest fields ([`5e18a71`](https://github.com/aya-rs/aya/commit/5e18a715b2d1cf153de96d9775dfea762c684258))
- - (cargo-release) version 0.1.1 ([`31e71f8`](https://github.com/aya-rs/aya/commit/31e71f8db53454ce673bd9891be06fc002af5721))
- - (cargo-release) version 0.1.1 ([`29955b2`](https://github.com/aya-rs/aya/commit/29955b22875b865f567079c76aeba70630fa42dd))
- - Git add .cargo and xtask ([`6d14a16`](https://github.com/aya-rs/aya/commit/6d14a16d8ed54d90e9dfdbdca1fb2caf0a15c017))
- - Update to aya 0.10.5 ([`cced3da`](https://github.com/aya-rs/aya/commit/cced3da5c8ff45df0596e25123071a4a761286d6))
- - Simplify BpfLogger::init ([`9ab9c80`](https://github.com/aya-rs/aya/commit/9ab9c80183edcb23297a644d0e63f7c1f28cd968))
- - Minor tweaks to make the verifier's job easier ([`2ac4334`](https://github.com/aya-rs/aya/commit/2ac433449cdea32f10c8fc88218799995946032d))
- - Switch to aya-ufmt ([`b14d4ba`](https://github.com/aya-rs/aya/commit/b14d4bab2fac894d4e47838d7de8a9b63a5ac4c2))
- - Use aya_bpf::maps::PerfEventByteArray to output logs ([`22d8f86`](https://github.com/aya-rs/aya/commit/22d8f86fbb10ec5e71bca750119f93eb5ba171e5))
- - Use aya_log_ebpf::ufmt instead of ::ufmt ([`741957f`](https://github.com/aya-rs/aya/commit/741957f94598d149960a5296b2010a07ffac02e5))
- - Add ufmt to readme ([`0d7ac3e`](https://github.com/aya-rs/aya/commit/0d7ac3eb3ee58bd4ba10af9c49f7c9ef80e09143))
- - Update readme ([`5df853c`](https://github.com/aya-rs/aya/commit/5df853cfb030c3a37a066b892623546a77c97db2))
- - Initial commit ([`b29a061`](https://github.com/aya-rs/aya/commit/b29a061bce99d06971dc977ddc075cbf653971d4))
+- **Uncategorized** - Release version 0.1.13 ([`832bdd2`](https://github.com/aya-rs/aya/commit/832bdd280c19095d79ba2d27281c17f0b09adc15)) - Aya-log, aya-log-common: temporarily revert to old map API so we can release ([`0d040d2`](https://github.com/aya-rs/aya/commit/0d040d2290cc1513c979c95538210abd7ee59ebb)) - Merge pull request #436 from vadorovsky/aya-log-mac-addr ([`3adb9b0`](https://github.com/aya-rs/aya/commit/3adb9b049f493ec9b80fcf868a8eac3363d17844)) - Add format hints for MAC addresses ([`2223ab8`](https://github.com/aya-rs/aya/commit/2223ab828d6db40a85cff4737f6164ed8ee9e42d)) - Merge pull request #397 from astoycos/refactor-map-api2 ([`d6cb1a1`](https://github.com/aya-rs/aya/commit/d6cb1a16ad0f8df483e2234fb01ab55bdbeaa8b8)) - Make map APIs return an option ([`f3262e8`](https://github.com/aya-rs/aya/commit/f3262e87bd6ff895537df47fcf5d17c598e564cc)) - Core refactor of Map API ([`1aefa2e`](https://github.com/aya-rs/aya/commit/1aefa2e5e6d22a600cc7339d289d64ab06f842e3)) - Merge pull request #390 from dave-tucker/clippy-up ([`367ab20`](https://github.com/aya-rs/aya/commit/367ab203057329ea32eea34ddc97452e0c03fda6)) - Make miri happy ([`b2924a3`](https://github.com/aya-rs/aya/commit/b2924a3a264732e6de6898a1f03d7cb22d1d0dc5)) - Aya-log, aya-log-common: start next development iteration 0.1.12-dev.0 ([`6f0637a`](https://github.com/aya-rs/aya/commit/6f0637a6c8f3696b226558dc47b2dc2f6680e347)) - Aya-log, aya-log-common: release version 0.1.11 ([`ba927ac`](https://github.com/aya-rs/aya/commit/ba927ac20497fdfd0033fb48f4bfda3fc8dedf42)) - Add display hints ([`83ec27f`](https://github.com/aya-rs/aya/commit/83ec27f06b6859f455f2b2baf985b8fd3fb4adc5)) - Change from Rust edition 2018 to 2021 ([`944d6b8`](https://github.com/aya-rs/aya/commit/944d6b8a1647df36c17cd060b15c37ac9615f4a7)) - Merge pull request #361 from chenhengqi/fix-aya-log-links ([`632ea30`](https://github.com/aya-rs/aya/commit/632ea300ed8dcb3a277447a57b528b8d89b0c10a)) - Fix links to aya-log repo ([`b8b291c`](https://github.com/aya-rs/aya/commit/b8b291c51ba1b43ff27c6aab6b55d6af77334aae)) - Merge pull request #357 from vadorovsky/env_logger ([`3d5ab0b`](https://github.com/aya-rs/aya/commit/3d5ab0b17de0e4f1453a88ed00823d04db0845a6)) - Aya-log, test: Switch from simplelog to env_logger ([`3664e1e`](https://github.com/aya-rs/aya/commit/3664e1ea0d42985bd88129cfd338bacff2456398)) - Merge pull request #353 from vadorovsky/log-remove-u128 ([`d968094`](https://github.com/aya-rs/aya/commit/d968094b662be3449624420b76ea2dd239ef657b)) - Remove i128 and u128 types ([`611f967`](https://github.com/aya-rs/aya/commit/611f967cd14b90e187ca86735f2131fb87e89856)) - Merge pull request #350 from dave-tucker/monorepo ([`f37a514`](https://github.com/aya-rs/aya/commit/f37a51433ff5283205ba5d1e74cdc75fbdeea160)) - Re-organize into a single workspace ([`dc31e11`](https://github.com/aya-rs/aya/commit/dc31e11691bbb8ae916da9da873fdc37ff261c27)) - Fix the log buffer bounds ([`28abaec`](https://github.com/aya-rs/aya/commit/28abaece2af732cf2b2b2f8b12aeb02439e76d4c)) - Ensure log buffer bounds ([`2e07028`](https://github.com/aya-rs/aya/commit/2e0702854b0e2428f6b5b32678f5f79ca341c619)) - Use new PerCpuArray::get_ptr_mut API ([`6aea880`](https://github.com/aya-rs/aya/commit/6aea88089087194c831b259a61eef5ccebcb45bc)) - Aya-log, aya-log-common: start next development iteration 0.1.11-dev.0 ([`526493b`](https://github.com/aya-rs/aya/commit/526493b444ed91f1c315ace494b41b8f4178fe65)) - Aya-log, aya-log-common: release version 0.1.10 ([`3abd973`](https://github.com/aya-rs/aya/commit/3abd97307ef32bfbd384f38f7a0de40cc7afa0b1)) - Update aya requirement from 0.10.7 to 0.11.0 ([`060ba45`](https://github.com/aya-rs/aya/commit/060ba451535b1a90c2faaf2dcd634fa36e784efb)) - Add CI ([`0038b43`](https://github.com/aya-rs/aya/commit/0038b43627e6564b03d9837f535ec64ada6d70f2)) - Add vim/vscode rust-analyzer settings ([`c1bb790`](https://github.com/aya-rs/aya/commit/c1bb790c0d8d467ac41603b15b56823c7ba0f663)) - Add rustfmt.toml ([`3f00851`](https://github.com/aya-rs/aya/commit/3f0085195f178fdba6c214b4129f8321e612d4e7)) - Add example ([`5789585`](https://github.com/aya-rs/aya/commit/5789585994776d18afa58f3bb816cfcb1367298e)) - Add Tests ([`5d82d9a`](https://github.com/aya-rs/aya/commit/5d82d9a73e77d386c8be3dc3764b3dd361fcac71)) - Ensure the bounds of log buffer ([`628b473`](https://github.com/aya-rs/aya/commit/628b473e0937eef94b0b337608a5d6c51ad2fd2a)) - Bump the buffer size ([`70b4e68`](https://github.com/aya-rs/aya/commit/70b4e681301eb23ca776cd703e11f19cc879ac69)) - Aya-log, aya-log-common: start next development iteration 0.1.10-dev.0 ([`bd9a5c8`](https://github.com/aya-rs/aya/commit/bd9a5c8fdff9c20952137908388b1d833ab60fcc)) - Aya-log, aya-log-common: release version 0.1.9 ([`8bc1bbb`](https://github.com/aya-rs/aya/commit/8bc1bbb3abe588e89161e67ad013c34f1ec3ab6d)) - Add cargo-release config ([`a8d133f`](https://github.com/aya-rs/aya/commit/a8d133f6b0919bb7d8e821f1309ee264d8b03a71)) - Do not release ([`d1a0ce5`](https://github.com/aya-rs/aya/commit/d1a0ce51ee4e67cf9b03b695940f356ee950f8c2)) - Use stricter version for the aya-log-common dep ([`c4d89fa`](https://github.com/aya-rs/aya/commit/c4d89fa13cb4e96a62ccd5cae7cf1834c3c582f6)) - Inline write_record_header ([`bdb2750`](https://github.com/aya-rs/aya/commit/bdb2750e66f922ebfbcba7250add38e2c932c293)) - Update aya to 0.10.7 ([`81befa0`](https://github.com/aya-rs/aya/commit/81befa06610b9e771523bceee4871a704851b1f0)) - Format arguments in userspace ([`ca1fe7e`](https://github.com/aya-rs/aya/commit/ca1fe7e05f7b52c5e864680abeda29e640617d40)) - Don't recompute the record length ([`9b229d0`](https://github.com/aya-rs/aya/commit/9b229d00e110a5b3b610ad567f8d15682c0b78e1)) - Initialize AYA_LOGS with max_entries=0 ([`7f8d705`](https://github.com/aya-rs/aya/commit/7f8d7057df11f41d0869f7f713d121785934adca)) - Fix clippy warning ([`2800454`](https://github.com/aya-rs/aya/commit/2800454763f5f0250c46c87f9cfb2e3d1f5f0a7e)) - Add copy of README.md inside aya-log/ ([`8bde15d`](https://github.com/aya-rs/aya/commit/8bde15dad70016f6fb72a77906da341768d59720)) - Add missing manifest fields ([`5e18a71`](https://github.com/aya-rs/aya/commit/5e18a715b2d1cf153de96d9775dfea762c684258)) - (cargo-release) version 0.1.1 ([`31e71f8`](https://github.com/aya-rs/aya/commit/31e71f8db53454ce673bd9891be06fc002af5721)) - (cargo-release) version 0.1.1 ([`29955b2`](https://github.com/aya-rs/aya/commit/29955b22875b865f567079c76aeba70630fa42dd)) - Git add .cargo and xtask ([`6d14a16`](https://github.com/aya-rs/aya/commit/6d14a16d8ed54d90e9dfdbdca1fb2caf0a15c017)) - Update to aya 0.10.5 ([`cced3da`](https://github.com/aya-rs/aya/commit/cced3da5c8ff45df0596e25123071a4a761286d6)) - Simplify BpfLogger::init ([`9ab9c80`](https://github.com/aya-rs/aya/commit/9ab9c80183edcb23297a644d0e63f7c1f28cd968)) - Minor tweaks to make the verifier's job easier ([`2ac4334`](https://github.com/aya-rs/aya/commit/2ac433449cdea32f10c8fc88218799995946032d)) - Switch to aya-ufmt ([`b14d4ba`](https://github.com/aya-rs/aya/commit/b14d4bab2fac894d4e47838d7de8a9b63a5ac4c2)) - Use aya_ebpf::maps::PerfEventByteArray to output logs ([`22d8f86`](https://github.com/aya-rs/aya/commit/22d8f86fbb10ec5e71bca750119f93eb5ba171e5)) - Use aya_log_ebpf::ufmt instead of ::ufmt ([`741957f`](https://github.com/aya-rs/aya/commit/741957f94598d149960a5296b2010a07ffac02e5)) - Add ufmt to readme ([`0d7ac3e`](https://github.com/aya-rs/aya/commit/0d7ac3eb3ee58bd4ba10af9c49f7c9ef80e09143)) - Update readme ([`5df853c`](https://github.com/aya-rs/aya/commit/5df853cfb030c3a37a066b892623546a77c97db2)) - Initial commit ([`b29a061`](https://github.com/aya-rs/aya/commit/b29a061bce99d06971dc977ddc075cbf653971d4))
-
diff --git a/aya-log/README.md b/aya-log/README.md
index aa94abb6..ee23c5e2 100644
--- a/aya-log/README.md
+++ b/aya-log/README.md
@@ -33,12 +33,12 @@ to log eBPF messages to the terminal.
### User space code
```rust
-use aya_log::BpfLogger;
+use aya_log::EbpfLogger;
env_logger::init();
// Will log using the default logger, which is TermLogger in this case
-BpfLogger::init(&mut bpf).unwrap();
+EbpfLogger::init(&mut bpf).unwrap();
```
### eBPF code
diff --git a/aya-log/src/lib.rs b/aya-log/src/lib.rs
index 2758ca7a..e24acfb4 100644
--- a/aya-log/src/lib.rs
+++ b/aya-log/src/lib.rs
@@ -3,7 +3,7 @@
//! This is the user space side of the [Aya] logging framework. For the eBPF
//! side, see the `aya-log-ebpf` crate.
//!
-//! `aya-log` provides the [BpfLogger] type, which reads log records created by
+//! `aya-log` provides the [EbpfLogger] type, which reads log records created by
//! `aya-log-ebpf` and logs them using the [log] crate. Any logger that
//! implements the [Log] trait can be used with this crate.
//!
@@ -12,14 +12,14 @@
//! This example uses the [env_logger] crate to log messages to the terminal.
//!
//! ```no_run
-//! # let mut bpf = aya::Bpf::load(&[]).unwrap();
-//! use aya_log::BpfLogger;
+//! # let mut bpf = aya::Ebpf::load(&[]).unwrap();
+//! use aya_log::EbpfLogger;
//!
//! // initialize env_logger as the default logger
//! env_logger::init();
//!
//! // start reading aya-log records and log them using the default logger
-//! BpfLogger::init(&mut bpf).unwrap();
+//! EbpfLogger::init(&mut bpf).unwrap();
//! ```
//!
//! With the following eBPF code:
@@ -65,7 +65,7 @@ use aya::{
MapError,
},
util::online_cpus,
- Bpf, Pod,
+ Ebpf, Pod,
};
use aya_log_common::{
Argument, DisplayHint, Level, LogValueLength, RecordField, LOG_BUF_CAPACITY, LOG_FIELDS,
@@ -93,21 +93,25 @@ unsafe impl Pod for DisplayHintWrapper {}
/// Log messages generated by `aya_log_ebpf` using the [log] crate.
///
/// For more details see the [module level documentation](crate).
-pub struct BpfLogger;
+pub struct EbpfLogger;
-impl BpfLogger {
+/// Log messages generated by `aya_log_ebpf` using the [log] crate.
+#[deprecated(since = "0.2.1", note = "Use `aya_log::EbpfLogger` instead")]
+pub type BpfLogger = EbpfLogger;
+
+impl EbpfLogger {
/// Starts reading log records created with `aya-log-ebpf` and logs them
/// with the default logger. See [log::logger].
- pub fn init(bpf: &mut Bpf) -> Result {
- BpfLogger::init_with_logger(bpf, log::logger())
+ pub fn init(bpf: &mut Ebpf) -> Result {
+ EbpfLogger::init_with_logger(bpf, log::logger())
}
/// Starts reading log records created with `aya-log-ebpf` and logs them
/// with the given logger.
pub fn init_with_logger(
- bpf: &mut Bpf,
+ bpf: &mut Ebpf,
logger: T,
- ) -> Result {
+ ) -> Result {
let logger = Arc::new(logger);
let mut logs: AsyncPerfEventArray<_> = bpf
.take_map(MAP_NAME)
@@ -131,7 +135,7 @@ impl BpfLogger {
});
}
- Ok(BpfLogger {})
+ Ok(EbpfLogger {})
}
}
diff --git a/aya-obj/src/btf/btf.rs b/aya-obj/src/btf/btf.rs
index de9e54e4..d83171ea 100644
--- a/aya-obj/src/btf/btf.rs
+++ b/aya-obj/src/btf/btf.rs
@@ -235,14 +235,14 @@ impl BtfFeatures {
}
}
-/// Bpf Type Format metadata.
+/// BPF Type Format metadata.
///
/// BTF is a kind of debug metadata that allows eBPF programs compiled against one kernel version
/// to be loaded into different kernel versions.
///
-/// Aya automatically loads BTF metadata if you use `Bpf::load_file`. You
+/// Aya automatically loads BTF metadata if you use `Ebpf::load_file`. You
/// only need to explicitly use this type if you want to load BTF from a non-standard
-/// location or if you are using `Bpf::load`.
+/// location or if you are using `Ebpf::load`.
#[derive(Clone, Debug)]
pub struct Btf {
header: btf_header,
diff --git a/aya-obj/src/maps.rs b/aya-obj/src/maps.rs
index c4cf5c32..642b49f5 100644
--- a/aya-obj/src/maps.rs
+++ b/aya-obj/src/maps.rs
@@ -5,7 +5,7 @@ use core::mem;
#[cfg(not(feature = "std"))]
use crate::std;
-use crate::BpfSectionKind;
+use crate::EbpfSectionKind;
/// Invalid map type encontered
pub struct InvalidMapTypeError {
@@ -240,10 +240,10 @@ impl Map {
}
/// Returns the section kind.
- pub fn section_kind(&self) -> BpfSectionKind {
+ pub fn section_kind(&self) -> EbpfSectionKind {
match self {
Map::Legacy(m) => m.section_kind,
- Map::Btf(_) => BpfSectionKind::BtfMaps,
+ Map::Btf(_) => EbpfSectionKind::BtfMaps,
}
}
@@ -270,7 +270,7 @@ pub struct LegacyMap {
/// The section index
pub section_index: usize,
/// The section kind
- pub section_kind: BpfSectionKind,
+ pub section_kind: EbpfSectionKind,
/// The symbol index.
///
/// This is None for data maps (.bss .data and .rodata). We don't need
diff --git a/aya-obj/src/obj.rs b/aya-obj/src/obj.rs
index 788a6b2b..f6f4fc8b 100644
--- a/aya-obj/src/obj.rs
+++ b/aya-obj/src/obj.rs
@@ -820,15 +820,15 @@ impl Object {
self.section_infos
.insert(section.name.to_owned(), (section.index, section.size));
match section.kind {
- BpfSectionKind::Data | BpfSectionKind::Rodata | BpfSectionKind::Bss => {
+ EbpfSectionKind::Data | EbpfSectionKind::Rodata | EbpfSectionKind::Bss => {
self.maps
.insert(section.name.to_string(), parse_data_map_section(§ion)?);
}
- BpfSectionKind::Text => self.parse_text_section(section)?,
- BpfSectionKind::Btf => self.parse_btf(§ion)?,
- BpfSectionKind::BtfExt => self.parse_btf_ext(§ion)?,
- BpfSectionKind::BtfMaps => self.parse_btf_maps(§ion)?,
- BpfSectionKind::Maps => {
+ EbpfSectionKind::Text => self.parse_text_section(section)?,
+ EbpfSectionKind::Btf => self.parse_btf(§ion)?,
+ EbpfSectionKind::BtfExt => self.parse_btf_ext(§ion)?,
+ EbpfSectionKind::BtfMaps => self.parse_btf_maps(§ion)?,
+ EbpfSectionKind::Maps => {
// take out self.maps so we can borrow the iterator below
// without cloning or collecting
let mut maps = mem::take(&mut self.maps);
@@ -850,7 +850,7 @@ impl Object {
res?
}
- BpfSectionKind::Program => {
+ EbpfSectionKind::Program => {
self.parse_programs(§ion)?;
if !section.relocations.is_empty() {
self.relocations.insert(
@@ -863,7 +863,7 @@ impl Object {
);
}
}
- BpfSectionKind::Undefined | BpfSectionKind::License | BpfSectionKind::Version => {}
+ EbpfSectionKind::Undefined | EbpfSectionKind::License | EbpfSectionKind::Version => {}
}
Ok(())
@@ -989,7 +989,7 @@ pub enum ParseError {
/// The kind of an ELF section.
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
-pub enum BpfSectionKind {
+pub enum EbpfSectionKind {
/// Undefined
Undefined,
/// `maps`
@@ -1016,30 +1016,30 @@ pub enum BpfSectionKind {
Version,
}
-impl BpfSectionKind {
- fn from_name(name: &str) -> BpfSectionKind {
+impl EbpfSectionKind {
+ fn from_name(name: &str) -> EbpfSectionKind {
if name.starts_with("license") {
- BpfSectionKind::License
+ EbpfSectionKind::License
} else if name.starts_with("version") {
- BpfSectionKind::Version
+ EbpfSectionKind::Version
} else if name.starts_with("maps") {
- BpfSectionKind::Maps
+ EbpfSectionKind::Maps
} else if name.starts_with(".maps") {
- BpfSectionKind::BtfMaps
+ EbpfSectionKind::BtfMaps
} else if name.starts_with(".text") {
- BpfSectionKind::Text
+ EbpfSectionKind::Text
} else if name.starts_with(".bss") {
- BpfSectionKind::Bss
+ EbpfSectionKind::Bss
} else if name.starts_with(".data") {
- BpfSectionKind::Data
+ EbpfSectionKind::Data
} else if name.starts_with(".rodata") {
- BpfSectionKind::Rodata
+ EbpfSectionKind::Rodata
} else if name == ".BTF" {
- BpfSectionKind::Btf
+ EbpfSectionKind::Btf
} else if name == ".BTF.ext" {
- BpfSectionKind::BtfExt
+ EbpfSectionKind::BtfExt
} else {
- BpfSectionKind::Undefined
+ EbpfSectionKind::Undefined
}
}
}
@@ -1047,7 +1047,7 @@ impl BpfSectionKind {
#[derive(Debug)]
struct Section<'a> {
index: SectionIndex,
- kind: BpfSectionKind,
+ kind: EbpfSectionKind,
address: u64,
name: &'a str,
data: &'a [u8],
@@ -1065,12 +1065,12 @@ impl<'data, 'file, 'a> TryFrom<&'a ObjSection<'data, 'file>> for Section<'a> {
error,
};
let name = section.name().map_err(map_err)?;
- let kind = match BpfSectionKind::from_name(name) {
- BpfSectionKind::Undefined => {
+ let kind = match EbpfSectionKind::from_name(name) {
+ EbpfSectionKind::Undefined => {
if section.kind() == SectionKind::Text && section.size() > 0 {
- BpfSectionKind::Program
+ EbpfSectionKind::Program
} else {
- BpfSectionKind::Undefined
+ EbpfSectionKind::Undefined
}
}
k => k,
@@ -1168,7 +1168,7 @@ fn get_map_field(btf: &Btf, type_id: u32) -> Result {
// bytes and are relocated based on their section index.
fn parse_data_map_section(section: &Section) -> Result