123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- #![no_std]
- pub mod bpf_probe_read {
- pub const RESULT_BUF_LEN: usize = 1024;
- #[derive(Copy, Clone)]
- #[repr(C)]
- pub struct TestResult {
- pub buf: [u8; RESULT_BUF_LEN],
- pub len: Option<Result<usize, i64>>,
- }
- #[cfg(feature = "user")]
- unsafe impl aya::Pod for TestResult {}
- }
- pub mod raw_tracepoint {
- #[repr(C)]
- #[derive(Clone, Copy)]
- pub struct SysEnterEvent {
- pub common_type: u16,
- pub common_flags: u8,
- _padding: u8, // Padding must be explicit to ensure zero-initialization.
- }
- #[cfg(feature = "user")]
- unsafe impl aya::Pod for SysEnterEvent {}
- }
- pub mod ring_buf {
- // This structure's definition is duplicated in the probe.
- #[repr(C)]
- #[derive(Clone, Copy, Debug, Eq, PartialEq, Default)]
- pub struct Registers {
- pub dropped: u64,
- pub rejected: u64,
- }
- impl core::ops::Add for Registers {
- type Output = Self;
- fn add(self, rhs: Self) -> Self::Output {
- Self {
- dropped: self.dropped + rhs.dropped,
- rejected: self.rejected + rhs.rejected,
- }
- }
- }
- impl<'a> core::iter::Sum<&'a Registers> for Registers {
- fn sum<I: Iterator<Item = &'a Registers>>(iter: I) -> Self {
- iter.fold(Default::default(), |a, b| a + *b)
- }
- }
- #[cfg(feature = "user")]
- unsafe impl aya::Pod for Registers {}
- }
- pub mod strncmp {
- #[derive(Copy, Clone)]
- #[repr(C)]
- pub struct TestResult(pub core::cmp::Ordering);
- #[cfg(feature = "user")]
- unsafe impl aya::Pod for TestResult {}
- }
|