pub enum ArgCmp {
NotEqual {
arg_idx: u32,
value: ArgCmpValue,
},
LessThan {
arg_idx: u32,
value: ArgCmpValue,
},
LessThanOrEqual {
arg_idx: u32,
value: ArgCmpValue,
},
Equal {
arg_idx: u32,
value: ArgCmpValue,
},
GreaterThanOrEqual {
arg_idx: u32,
value: ArgCmpValue,
},
GreaterThan {
arg_idx: u32,
value: ArgCmpValue,
},
EqualMasked {
arg_idx: u32,
mask: u64,
value: ArgCmpValue,
},
}
security
and Linux and (x86-64 or AArch64) only.Expand description
Syscall argument comparators to be used in Rule
.
Argument comparators add additional filtering layer to rules allowing to compare syscall’s argument with the provided value and apply the exception rule only if the comparisson is successful.
Variants§
NotEqual
Checks that argument is not equal to the provided value.
Fields
value: ArgCmpValue
Value to compare the argument with (can be a raw pointer).
LessThan
Checks that argument is less than the provided value.
Fields
value: ArgCmpValue
Value to compare the argument with (can be a raw pointer).
LessThanOrEqual
Checks that argument is less than or equal to the provided value.
Fields
value: ArgCmpValue
Value to compare the argument with (can be a raw pointer).
Equal
Checks that argument is equal to the provided value.
Fields
value: ArgCmpValue
Value to compare the argument with (can be a raw pointer).
GreaterThanOrEqual
Checks that argument is greater than or equal to the provided value.
Fields
value: ArgCmpValue
Value to compare the argument with (can be a raw pointer).
GreaterThan
Checks that argument is greater than the provided value.
Fields
value: ArgCmpValue
Value to compare the argument with (can be a raw pointer).
EqualMasked
Checks that argument is equal to the provided value after application of the provided bitmask.
Trait Implementations§
impl Copy for ArgCmp
impl StructuralPartialEq for ArgCmp
Auto Trait Implementations§
impl Freeze for ArgCmp
impl RefUnwindSafe for ArgCmp
impl Send for ArgCmp
impl Sync for ArgCmp
impl Unpin for ArgCmp
impl UnwindSafe for ArgCmp
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request