IPWorks SNMP 2020 Python Edition

Questions / Feedback?

on_discovery_request Event

Fired when an SNMPv3 discovery packet is received.

Syntax

class SNMPTCPMgrDiscoveryRequestEventParams(object):
  @property
  def engine_id() -> bytes: ...
  @property
  def engine_boots() -> int: ...
  @property
  def engine_time() -> int: ...
  @property
  def user() -> str: ...
  @property
  def security_level() -> int: ...
  @property
  def source_address() -> str: ...
  @property
  def source_port() -> int: ...
  @property
  def respond() -> bool: ...
  @respond.setter
  def respond(value) -> None: ...

# In class SNMPTCPMgr:
@property
def on_discovery_request() -> Callable[[SNMPTCPMgrDiscoveryRequestEventParams], None]: ...
@on_discovery_request.setter
def on_discovery_request(event_hook: Callable[[SNMPTCPMgrDiscoveryRequestEventParams], None]) -> None: ...

Remarks

EngineId, EngineBoots, EngineTime, and User are the values received from SourceAddress.

For SNMPv3, the User parameter shows the user that was supplied with the packet. This parameter MUST be used together with the SecurityLevel parameter which shows the level of security in the message.

The SecurityLevel parameter shows whether the request has been authenticated. If SecurityLevel is 0, the request has NOT been authenticated (i.e. the packet signature has not been verified). For an authenticated, non encrypted request, SecurityLevel is 1. For an authenticated and encrypted request, SecurityLevel is 2.

Respond is True by default, and will automatically send a response using the value in local_engine_id. To suppress the response, set Respond to False.

The value returned to SourceAddress for EngineBoots is always 0, and EngineTime is the number of seconds since January 1st, 1970 (GMT).

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks SNMP 2020 Python Edition - Version 20.0 [Build 8202]