pub struct Agent { /* private fields */ }Expand description
SNMP Agent.
Listens for and responds to SNMP requests (GET, GETNEXT, GETBULK, SET).
§Example
use async_snmp::agent::Agent;
use async_snmp::oid;
let agent = Agent::builder()
.bind("0.0.0.0:161")
.community(b"public")
.build()
.await?;
agent.run().awaitImplementations§
Source§impl Agent
impl Agent
Sourcepub fn builder() -> AgentBuilder
pub fn builder() -> AgentBuilder
Create a builder for configuring the agent.
Sourcepub fn local_addr(&self) -> SocketAddr
pub fn local_addr(&self) -> SocketAddr
Get the local address the agent is bound to.
Sourcepub fn cancel(&self) -> CancellationToken
pub fn cancel(&self) -> CancellationToken
Get the cancellation token for this agent.
Call token.cancel() to initiate graceful shutdown.
Sourcepub fn snmp_invalid_msgs(&self) -> u32
pub fn snmp_invalid_msgs(&self) -> u32
Get the snmpInvalidMsgs counter value.
This counter tracks messages with invalid msgFlags, such as privacy-without-authentication (RFC 3412 Section 7.2 Step 5d).
OID: 1.3.6.1.6.3.11.2.1.2
Sourcepub fn snmp_unknown_security_models(&self) -> u32
pub fn snmp_unknown_security_models(&self) -> u32
Get the snmpUnknownSecurityModels counter value.
This counter tracks messages with unrecognized security models (RFC 3412 Section 7.2 Step 2).
OID: 1.3.6.1.6.3.11.2.1.1
Sourcepub fn snmp_silent_drops(&self) -> u32
pub fn snmp_silent_drops(&self) -> u32
Get the snmpSilentDrops counter value.
This counter tracks confirmed-class PDUs (GetRequest, GetNextRequest, GetBulkRequest, SetRequest, InformRequest) that were silently dropped because even an empty Response-PDU would exceed the maximum message size constraint (RFC 3412 Section 7.1).
OID: 1.3.6.1.6.3.11.2.1.3
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Agent
impl !RefUnwindSafe for Agent
impl Send for Agent
impl Sync for Agent
impl Unpin for Agent
impl UnsafeUnpin for Agent
impl !UnwindSafe for Agent
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> 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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more