snmpa_mpd(3erl) | Erlang Module Definition | snmpa_mpd(3erl) |
snmpa_mpd - Message Processing and Dispatch module for the SNMP agent
The module snmpa_mpd implements the version independent Message Processing and Dispatch functionality in SNMP for the agent. It is supposed to be used from a Network Interface process (Definition of Agent Net if).
See the data types in snmpa_conf.
init(Vsns) -> mpd_state()
Types:
This function can be called from the net_if process at start-up. The options list defines which versions to use.
It also initializes some SNMP counters.
process_packet(Packet, From, State, NoteStore, Log) -> {ok,
Vsn, Pdu, PduMS, ACMData} | {discarded, Reason} | {discovery,
DiscoPacket}
process_packet(Packet, From, LocalEngineID, State, NoteStore, Log) ->
{ok, Vsn, Pdu, PduMS, ACMData} | {discarded, Reason} | {discovery,
DiscoPacket}
Types:
Processes an incoming packet. Performs authentication and decryption as necessary. The return values should be passed to the agent.
generate_response_msg(Vsn, RePdu, Type, ACMData, Log) ->
{ok, Packet} | {discarded, Reason}
generate_response_msg(Vsn, RePdu, Type, ACMData, LocalEngineID, Log) ->
{ok, Packet} | {discarded, Reason}
Types:
Generates a possibly encrypted response packet to be sent to the network. Type is the #pdu.type of the original request.
generate_msg(Vsn, NoteStore, Pdu, MsgData, To) -> {ok,
PacketsAndAddresses} | {discarded, Reason}
generate_msg(Vsn, NoteStore, Pdu, MsgData, LocalEngineID, To) -> {ok,
PacketsAndAddresses} | {discarded, Reason}
Types:
Generates a possibly encrypted request packet to be sent to the network.
MsgData is the message specific data used in the SNMP message. This value is received in a send_pdu or send_pdu_req message from the agent. In SNMPv1 and SNMPv2c, this message data is the community string. In SNMPv3, it is the context information.
To is a list of destination addresses and their corresponding security parameters. This value is received in the same message from the agent and then transformed trough process_taddrs before passed to this function.
process_taddrs(TDests) -> Dests
Types:
Transforms addresses from internal MIB format to one more useful to Agent Net if.
See also generate_msg.
discarded_pdu(Variable) -> void()
Types:
Increments the variable associated with a discarded pdu. This function can be used when the net_if process receives a discarded_pdu message from the agent.
snmp 5.2.12 | Ericsson AB |