mirror of https://github.com/aya-rs/aya
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
583 B
Rust
30 lines
583 B
Rust
//! ```cargo
|
|
//! [dependencies]
|
|
//! aya-bpf = { path = "../../../../bpf/aya-bpf" }
|
|
//! ```
|
|
|
|
#![no_std]
|
|
#![no_main]
|
|
|
|
use aya_bpf::{
|
|
bindings::xdp_action,
|
|
macros::xdp,
|
|
programs::XdpContext,
|
|
};
|
|
|
|
#[xdp(name="pass")]
|
|
pub fn pass(ctx: XdpContext) -> u32 {
|
|
match unsafe { try_pass(ctx) } {
|
|
Ok(ret) => ret,
|
|
Err(_) => xdp_action::XDP_ABORTED,
|
|
}
|
|
}
|
|
|
|
unsafe fn try_pass(_ctx: XdpContext) -> Result<u32, u32> {
|
|
Ok(xdp_action::XDP_PASS)
|
|
}
|
|
|
|
#[panic_handler]
|
|
fn panic(_info: &core::panic::PanicInfo) -> ! {
|
|
unsafe { core::hint::unreachable_unchecked() }
|
|
} |