pub enum ProgramSection {
Show 29 variants
KRetProbe,
KProbe,
UProbe {
sleepable: bool,
},
URetProbe {
sleepable: bool,
},
TracePoint,
SocketFilter,
Xdp {
frags: bool,
attach_type: XdpAttachType,
},
SkMsg,
SkSkbStreamParser,
SkSkbStreamVerdict,
SockOps,
SchedClassifier,
CgroupSkb,
CgroupSkbIngress,
CgroupSkbEgress,
CgroupSockAddr {
attach_type: CgroupSockAddrAttachType,
},
CgroupSysctl,
CgroupSockopt {
attach_type: CgroupSockoptAttachType,
},
LircMode2,
PerfEvent,
RawTracePoint,
Lsm {
sleepable: bool,
},
BtfTracePoint,
FEntry {
sleepable: bool,
},
FExit {
sleepable: bool,
},
Extension,
SkLookup,
CgroupSock {
attach_type: CgroupSockAttachType,
},
CgroupDevice,
}Expand description
Section types containing eBPF programs
§Section Name Parsing
Section types are parsed from the section name strings.
In order for Aya to treat a section as a ProgramSection, there are a few requirements:
- The section must be an executable code section.
- The section name must conform to Program Types and ELF Sections.
§Unsupported Sections
Currently, the following section names are not supported yet:
flow_dissector:BPF_PROG_TYPE_FLOW_DISSECTORksyscall+orkretsyscall+usdt+kprobe.multi+orkretprobe.multi+:BPF_TRACE_KPROBE_MULTIlsm_cgroup+lwt_in,lwt_out,lwt_seg6local,lwt_xmitraw_tp.w+,raw_tracepoint.w+actionsk_reuseport/migrate,sk_reuseportsyscallstruct_ops+fmod_ret+,fmod_ret.s+iter+,iter.s+
Variants§
KRetProbe
KProbe
UProbe
URetProbe
TracePoint
SocketFilter
Xdp
SkMsg
SkSkbStreamParser
SkSkbStreamVerdict
SockOps
SchedClassifier
CgroupSkb
CgroupSkbIngress
CgroupSkbEgress
CgroupSockAddr
Fields
§
attach_type: CgroupSockAddrAttachTypeCgroupSysctl
CgroupSockopt
Fields
§
attach_type: CgroupSockoptAttachTypeLircMode2
PerfEvent
RawTracePoint
Lsm
BtfTracePoint
FEntry
FExit
Extension
SkLookup
CgroupSock
Fields
§
attach_type: CgroupSockAttachTypeCgroupDevice
Trait Implementations§
Source§impl Clone for ProgramSection
impl Clone for ProgramSection
Source§fn clone(&self) -> ProgramSection
fn clone(&self) -> ProgramSection
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ProgramSection
impl Debug for ProgramSection
Source§impl FromStr for ProgramSection
impl FromStr for ProgramSection
Source§type Err = ParseError
type Err = ParseError
The associated error which can be returned from parsing.
Source§fn from_str(section: &str) -> Result<ProgramSection, ParseError>
fn from_str(section: &str) -> Result<ProgramSection, ParseError>
Parses a string
s to return a value of this type. Read moreAuto Trait Implementations§
impl Freeze for ProgramSection
impl RefUnwindSafe for ProgramSection
impl Send for ProgramSection
impl Sync for ProgramSection
impl Unpin for ProgramSection
impl UnwindSafe for ProgramSection
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more