Provided by: erlang-manpages_25.2.3+dfsg-1_all bug

NAME

       snmpa_conf - Utility functions for handling the agent config files.

DESCRIPTION

       The  module  snmpa_conf  contains  various  utility  functions  to  used  for manipulating
       (write/append/read) the config files of the SNMP agent.

DATA TYPES

       transportDomain() = transportDomainUdpIpv4 | transportDomainUdpIpv6

       transportAddress() =
           transportAddressIPv4() | transportAddressIPv6()

       transportAddressWithPort() =
           transportAddressIPv4WithPort() | transportAddressIPv6WithPort()

       transportAddressWithoutPort() =
           transportAddressIPv4WithoutPort() | transportAddressIPv6WithoutPort()

       transportAddressIPv4() =
           transportAddressIPv4WithPort() | transportAddressIPv4WithoutPort()
       transportAddressIPv4WithPort =
           {transportAddressIPv4WithoutPort(), inet:port_number()} |
           [byte() x 4, byte() x 2]
       transportAddressIPv4WithoutPort =
           inet:ip4_address() | [byte() x 4]

       transportAddressIPv6() =
           transportAddressIPv6WithPort() | transportAddressIPv6WithoutPort()
       transportAddressIPv6WithPort =
           {transportAddressIPv6WithoutPort(), inet:port_number()} |
           [word() x 8, inet:port_number()] |
           [word() x 8, byte() x 2] |
           {byte() x 16, byte() x 2]
       transportAddressIPv6WithoutPort =
           inet:ip6_address() | [word() x 8] | [byte() x 16]

       transportAddressMask() =
           [] | transportAddressWithPort()

       byte() = 0..255
       word() = 0..65535

       For   inet:ip4_address(),   inet:ip6_address()   and    inet:port_number(),    see    also
       inet:ip_address()

EXPORTS

       agent_entry(Tag, Val) -> agent_entry()

              Types:

                 Tag   =   intAgentTransports   |   intAgentUDPPort   |  intAgentMaxPacketSize  |
                 snmpEngineMaxMessageSize | snmpEngineID
                 Val = term()
                 agent_entry() = term()

              Create an entry for the agent config file, agent.conf.

              The type of Val depends on the value of Tag, see Agent Information for more info.

       write_agent_config(Dir, Conf) -> ok
       write_agent_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [agent_entry()]

              Write the agent config to the agent config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See Agent Information for more info.

       append_agent_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [agent_entry()]

              Append the config to the current agent config file.

              Dir is the path to the directory where to store the config file.

              See Agent Information for more info.

       read_agent_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [agent_entry()]

              Read the current agent config file.

              Dir is the path to the directory where to store the config file.

              See Agent Information for more info.

       standard_entry(Tag, Val) -> standard_entry()

              Types:

                 Tag = sysDescr | sysObjectID | sysContact | sysName | sysLocation |  sysServices
                 | snmpEnableAuthenTraps
                 Val = term()
                 standard_entry() = term()

              Create an entry for the agent standard config file, standard.conf.

              The type of Val depends on the value of Tag, see System Information for more info.

       write_standard_config(Dir, Conf) -> ok
       write_standard_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [standard_entry()]

              Write the agent standard config to the agent standard config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See System Information for more info.

       append_standard_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [standard_entry()]

              Append the standard config to the current agent standard config file.

              Dir is the path to the directory where to store the config file.

              See System Information for more info.

       read_standard_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [standard_entry()]

              Read the current agent standard config file.

              Dir is the path to the directory where to store the config file.

              See System Information for more info.

       context_entry(Context) -> context_entry()

              Types:

                 Context = string()
                 context_entry() = term()

              Create an entry for the agent context config file, context.conf.

              See Contexts for more info.

       write_context_config(Dir, Conf) -> ok
       write_context_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [context_entry()]

              Write the agent context config to the agent context config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See Contexts for more info.

       append_context_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [context_entry()]

              Append the context config to the current agent context config file.

              Dir is the path to the directory where to store the config file.

              See Contexts for more info.

       read_context_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [context_entry()]

              Read the current agent context config file.

              Dir is the path to the directory where to store the config file.

              See Contexts for more info.

       community_entry(CommunityIndex) -> community_entry()
       community_entry(CommunityIndex,  CommunityName,  SecName,  ContextName,  TransportTag)  ->
       community_entry()

              Types:

                 CommunityIndex = string()
                 CommunityName = string()
                 SecName = string()
                 CtxName = string()
                 TransportTag = string()
                 community_entry() = term()

              Create an entry for the agent community config file, community.conf.

              CommunityIndex must be a non-empty string.

              community_entry("public")     translates      to      the      following      call:
              community_entry(CommunityIndex, CommunityIndex, "initial", "", "").

              community_entry("all-rights")     translates     to     the     following     call:
              community_entry(CommunityIndex, CommunityIndex, CommunityIndex, "", "").

              See Community for more info.

       write_community_config(Dir, Conf) -> ok
       write_community_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [community_entry()]

              Write the agent community config to the agent community config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See Community for more info.

       append_community_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [community_entry()]

              Append the community config to the current agent community config file.

              Dir is the path to the directory where to store the config file.

              See Community for more info.

       read_community_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [community_entry()]

              Read the current agent community config file.

              Dir is the path to the directory where to store the config file.

              See Communities for more info.

       target_addr_entry(Name,    Domain,    Addr,    TagList,    ParamsName,    EngineId)     ->
       target_addr_entry()
       target_addr_entry(Name,   Domain,   Addr,   TagList,   ParamsName,   EngineId,  TMask)  ->
       target_addr_entry()
       target_addr_entry(Name,   Domain,   Addr,   TagList,    ParamsName,    EngineId,    TMask,
       MaxMessageSize) -> target_addr_entry()
       target_addr_entry(Name,  Domain, Addr, Timeout, RetryCount, TagList, ParamsName, EngineId,
       TMask, MaxMessageSize) -> target_addr_entry()

              Types:

                 Name = string()
                 Domain = transportDomain()
                 Ip = transportAddress() (depends on Domain)
                 Timeout = integer()
                 RetryCount = integer()
                 TagList = string()
                 ParamsName = string()
                 EngineId = string()
                 TMask = transportAddressMask() (depends on Domain)
                 MaxMessageSize = integer()
                 target_addr_entry() = term()

              Create an entry for the agent target_addr config file, target_addr.conf.

              Name must be a non-empty string.

              target_addr_entry/6  translates  to  the  following  call:  target_addr_entry(Name,
              Domain, Addr, TagList, ParamsName, EngineId, []).

              target_addr_entry/7  translates  to  the  following  call:  target_addr_entry(Name,
              Domain, Addr, TagList, ParamsName, EngineId, TMask, 2048).

              target_addr_entry/8  translates  to  the  following  call:  target_addr_entry(Name,
              Domain, Addr, 1500, 3, TagList, ParamsName, EngineId, TMask, MaxMessageSize).

              See Target Address Definitions for more info.

       write_target_addr_config(Dir, Conf) -> ok
       write_target_addr_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [target_addr_entry()]

              Write the agent target_addr config to the agent target_addr config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See Target Address Definitions for more info.

       append_target_addr_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [target_addr_entry()]

              Append the target_addr config to the current agent target_addr config file.

              Dir is the path to the directory where to store the config file.

              See Target Address Definitions for more info.

       read_target_addr_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [target_addr_entry()]

              Read the current agent target_addr config file.

              Dir is the path to the directory where to store the config file.

              See Target Address Definitions for more info.

       target_params_entry(Name, Vsn) -> target_params_entry()
       target_params_entry(Name, Vsn, SecName, SecLevel) -> target_params_entry()
       target_params_entry(Name, MPModel, SecModel, SecName, SecLevel) -> target_params_entry()

              Types:

                 Name = string()
                 Vsn = v1 | v2 | v3
                 MPModel = v1 | v2c | v3
                 SecModel = v1 | v2c | usm
                 SecName = string()
                 SecLevel = noAuthNoPriv | authNoPriv | authPriv
                 target_params_entry() = term()

              Create an entry for the agent target_params config file, target_params.conf.

              Name must be a non-empty string.

              Vsn translates into MPModel and SecModel as follows:

              \011  Vsn = v1 => MPModel = v1,  SecModel = v1
              \011  Vsn = v2 => MPModel = v2c, SecModel = v2c
              \011  Vsn = v3 => MPModel = v3,  SecModel = usm

              target_params_entry/2  translates  to the following call: target_params_entry(Name,
              Vsn, "initial", noAuthNoPriv).

              target_params_entry/4 translates to the following  call:  target_params_entry(Name,
              MPModel,  SecModel,  SecName,  SecLevel)  where MPModel and SecModel is mapped from
              Vsn, see above.

              See Target Parameters Definitions for more info.

       write_target_params_config(Dir, Conf) -> ok
       write_target_params_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [target_params_entry()]

              Write the agent target_params config to the agent target_params config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See Target Parameters Definitions for more info.

       append_target_params_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [target_params_entry()]

              Append the target_params config to the current agent target_params config file.

              Dir is the path to the directory where to store the config file.

              See Target Parameters Definitions for more info.

       read_target_params_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [target_params_entry()]

              Read the current agent target_params config file.

              Dir is the path to the directory where to store the config file.

              See Target Parameters Definitions for more info.

       vacm_s2g_entry(SecModel, SecName, GroupName) -> vacm_s2g_entry()
       vacm_acc_entry(GroupName,  Prefix,  SecModel,  SecLevel,   Match,   ReadView,   WriteView,
       NotifyView) -> vacm_acc_entry()
       vacm_vtf_entry(ViewIndex, ViewSubtree) -> vacm_vtf_entry()
       vacm_vtf_entry(ViewIndex, ViewSubtree, ViewStatus, ViewMask) -> vacm_vtf_entry()

              Types:

                 SecModel = v1 | v2c | usm
                 SecName = string()
                 GroupName = string()
                 Prefix = string()
                 SecLevel = noAuthNoPriv | authNoPriv | authPriv
                 Match = prefix | exact
                 ReadView = string()
                 WriteView = string()
                 NotifyView = string()
                 ViewIndex = integer()
                 ViewSubtree = [integer()]
                 ViewStatus = included | excluded
                 ViewMask = null | [zero_or_one()]
                 zero_or_one() = 0 | 1
                 vacm_s2g_entry() = term()
                 vacm_acc_entry() = term()
                 vacm_vtf_entry() = term()

              Create an entry for the agent vacm config file, vacm.conf.

              vacm_vtf_entry/2   translates  to  the  following  call:  vacm_vtf_entry(ViewIndex,
              ViewSubtree, included, null).

              See MIB Views for VACM for more info.

       write_vacm_config(Dir, Conf) -> ok
       write_vacm_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [vacm_entry()]
                 vacm_entry() = vacm_sg2_entry() | vacm_acc_entry() | vacm_vtf_entry()

              Write the agent vacm config to the agent vacm config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See MIB Views for VACM for more info.

       append_vacm_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [vacm_entry()]

              Append the vacm config to the current agent vacm config file.

              Dir is the path to the directory where to store the config file.

              See MIB Views for VACM for more info.

       read_vacm_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [vacm_entry()]

              Read the current agent vacm config file.

              Dir is the path to the directory where to store the config file.

              See MIB Views for VACM for more info.

       usm_entry(EngineId) -> usm_entry()
       usm_entry(EngineID,  UserName,  SecName,  Clone,  AuthP,  AuthKeyC,  OwnAuthKeyC,   PrivP,
       PrivKeyC, OwnPrivKeyC, Public, AuthKey, PrivKey) -> usm_entry()

              Types:

                 EngineId = string()
                 UserName = string()
                 SecName = string()
                 Clone = zeroDotZero | [integer()]
                 AuthP  =  usmNoAuthProtocol  | usmHMACMD5AuthProtocol | usmHMACSHAAuthProtocol |
                 usmHMAC128SHA224AuthProtocol       |        usmHMAC192SH256AuthProtocol        |
                 usmHMAC256SHA384AuthProtocol | usmHMAC384SHA512AuthProtocol
                 AuthKeyC = string()
                 OwnAuthKeyC = string()
                 PrivP = usmNoPrivProtocol | usmDESPrivProtocol | usmAesCfb128Protocol
                 PrivKeyC = string()
                 OwnPrivKeyC = string()
                 Public = string()
                 AuthKey = [integer()]
                 PrivKey = [integer()]
                 usm_entry() = term()

              Create an entry for the agent vacm config file, vacm.conf.

              usm_entry/1  translates  to  the  following  call:  usm_entry("initial", "initial",
              zeroDotZero, usmNoAuthProtocol, "", "", usmNoPrivProtocol, "", "", "", "", "").

              See Security data for USM for more info.

       write_usm_config(Dir, Conf) -> ok
       write_usm_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [usm_entry()]

              Write the agent usm config to the agent usm config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See Security data for USM for more info.

       append_usm_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [usm_entry()]

              Append the usm config to the current agent vacm config file.

              Dir is the path to the directory where to store the config file.

              See Security data for USM for more info.

       read_usm_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [usm_entry()]

              Read the current agent usm config file.

              Dir is the path to the directory where to store the config file.

              See Security data for USM for more info.

       notify_entry(Name, Tag, Type) -> notify_entry()

              Types:

                 Name = string()
                 Tag = string()
                 Type = trap | inform
                 community_entry() = term()

              Create an entry for the agent notify config file, notify.conf.

              Name must be a non-empty string.

              See Notify Definitions for more info.

       write_notify_config(Dir, Conf) -> ok
       write_notify_config(Dir, Hdr, Conf) -> ok

              Types:

                 Dir = string()
                 Hdr = string()
                 Conf = [notify_entry()]

              Write the agent notify config to the agent notify config file.

              Dir is the path to the directory where to store the config file.

              Hdr is an optional file header (note that this text is written to the file as is).

              See Notify Definitions for more info.

       append_notify_config(Dir, Conf) -> ok

              Types:

                 Dir = string()
                 Conf = [notify_entry()]

              Append the notify config to the current agent notify config file.

              Dir is the path to the directory where to store the config file.

              See Notify Definitions for more info.

       read_notify_config(Dir) -> Conf

              Types:

                 Dir = string()
                 Conf = [community_entry()]

              Read the current agent notify config file.

              Dir is the path to the directory where to store the config file.

              See Notify Definitions for more info.