20042013 Ericsson AB. All Rights Reserved. The contents of this file are subject to the Erlang Public License, Version 1.1, (the "License"); you may not use this file except in compliance with the License. You should have received a copy of the Erlang Public License along with this software. If not, it can be retrieved online at http://www.erlang.org/. Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. snmpa_network_interface snmpa_network_interface.xml
snmpa_network_interface Behaviour module for the SNMP agent network interface.

This module defines the behaviour of the agent network interface. A snmpa_network_interface compliant module must export the following functions:

start_link/4

info/1

get_log_type/1

set_log_type/2

verbosity/2

The semantics of them and their exact signatures are explained below.

But this is not enough. There is also a set of mandatory messages which the network interface entity must be able to receive and be able to send. This is described in chapter snmp_agent_netif.

start_link(Prio, NoteStore, MasterAgent, Opts) -> {ok, Pid} | {error, Reason} Start-link the network interface process Prio = priority() NoteStore = pid() MasterAgent = pid() Opts = [opt()] opt() = {verbosity, verbosity()} | {versions, versions()} | term() versions() = [version()] version() = v1 | v2 | v3

Start-link the network interface process.

NoteStore is the pid of the note-store process and MasterAgent is the pid of the master-agent process.

Opts is an (basically) implementation dependent list of options to the network interface process. There are however a number of options which must be handled: versions and verbosity.

info(Pid) -> [{Key, Value}] Return information about the running network interface process Pid = pid()

The info returned is basically up to the implementer to decide. This implementation provided by the application provides info about memory allocation and various socket information.

The info returned by this function is returned together with other info collected by the agent when the info function is called (tagged with with the key net_if).

verbosity(Pid, Verbosity) -> void() Change the verbosity of a running network interface process Pid = pid() Verbosity = verbosity()

Change the verbosity of a running network interface process.

get_log_type(Pid) -> {ok, LogType} | {error, Reason} Get the Audit Trail Log type Pid = pid() LogType = atl_type() Reason = term()

The Audit Trail Log is managed by the network interface process. So, it is this process that has to retrieve the actual log-type.

set_log_type(Pid, NewType) -> {ok, OldType} | {error, Reason} Change the Audit Trail Log type Pid = pid() NewType = OldType = atl_type() Reason = term()

The Audit Trail Log is managed by the network interface process. So, it is this process that has to do the actual changing of the type.

See set_log_type for more info.