name_test.ebpf.rs 597 B

123456789101112131415161718192021222324252627282930
  1. //! ```cargo
  2. //! [dependencies]
  3. //! aya-bpf = { path = "../../../../bpf/aya-bpf" }
  4. //! ```
  5. #![no_std]
  6. #![no_main]
  7. use aya_bpf::{
  8. bindings::xdp_action,
  9. macros::xdp,
  10. programs::XdpContext,
  11. };
  12. #[xdp(name="ihaveaverylongname")]
  13. pub fn pass(ctx: XdpContext) -> u32 {
  14. match unsafe { try_pass(ctx) } {
  15. Ok(ret) => ret,
  16. Err(_) => xdp_action::XDP_ABORTED,
  17. }
  18. }
  19. unsafe fn try_pass(_ctx: XdpContext) -> Result<u32, u32> {
  20. Ok(xdp_action::XDP_PASS)
  21. }
  22. #[panic_handler]
  23. fn panic(_info: &core::panic::PanicInfo) -> ! {
  24. unsafe { core::hint::unreachable_unchecked() }
  25. }