snmpm_conf (snmp v5.20.1)

Copy Markdown View Source

Utility functions for handling the manager config files.

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

Summary

Types

An opaque data structure containg all configuration for one agent for the manager.

An opaque data structure that represents one configuration entry for the manager.

An opaque data structure containg all configuration for one user for the manager.

An opaque data structure containg information about security data for usm for the manager.

Functions

Create an entry for the manager agents config file, agents.conf.

Append the agents config to the current manager agents config file.

Append the config to the current manager config file.

Append the users config to the current manager users config file.

Append the usm config to the current manager usm config file.

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

Read the current manager agents config file.

Read the current manager config file.

Read the current manager users config file.

Read the current manager usm config file.

Create an entry for the manager users config file, users.conf.

Create an entry for the manager usm config file, usm.conf.

Write the manager agents config to the manager agents config file.

Write the manager config to the manager config file.

Write the manager users config to the manager users config file.

Write the manager usm config to the manager usm config file.

Types

agent_entry()

-opaque agent_entry()

An opaque data structure containg all configuration for one agent for the manager.

manager_entry()

-opaque manager_entry()

An opaque data structure that represents one configuration entry for the manager.

user_entry()

-opaque user_entry()

An opaque data structure containg all configuration for one user for the manager.

usm_entry()

-opaque usm_entry()

An opaque data structure containg information about security data for usm for the manager.

Functions

agents_entry/12

-spec agents_entry(UserId, TargetName, Comm, TDomain, TAddr, EngineID, Timeout, MaxMessageSize, Version,
                   SecModel, SecName, SecLevel) ->
                      Entry
                      when
                          UserId :: snmpm:user_id(),
                          TargetName :: snmpm:target_name(),
                          Comm :: snmp:community(),
                          TDomain :: snmp:tdomain(),
                          TAddr :: snmp:taddress(),
                          EngineID :: snmp:engine_id(),
                          Timeout :: snmpm:register_timeout(),
                          MaxMessageSize :: snmp:mms(),
                          Version :: snmp:version(),
                          SecModel :: snmp:sec_model(),
                          SecName :: snmp:sec_name(),
                          SecLevel :: snmp:sec_level(),
                          Entry :: agent_entry();
                  (UserId, TargetName, Comm, Ip, Port, EngineID, Timeout, MaxMessageSize, Version,
                   SecModel, SecName, SecLevel) ->
                      Entry
                      when
                          UserId :: snmpm:user_id(),
                          TargetName :: snmpm:target_name(),
                          Comm :: snmp:community(),
                          Ip :: inet:ip_address(),
                          Port :: inet:port_number(),
                          EngineID :: snmp:engine_id(),
                          Timeout :: snmpm:register_timeout(),
                          MaxMessageSize :: snmp:mms(),
                          Version :: snmp:version(),
                          SecModel :: snmp:sec_model(),
                          SecName :: snmp:sec_name(),
                          SecLevel :: snmp:sec_level(),
                          Entry :: agent_entry().

Create an entry for the manager agents config file, agents.conf.

See Agents for more info.

append_agents_config(Dir :: snmp:dir(), Conf :: [agent_entry()]) -> ok

Append the agents config to the current manager agents config file.

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

See Agents for more info.

append_manager_config(Dir :: snmp:dir(), Conf :: [manager_entry()]) -> ok

Append the config to the current manager config file.

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

See Manager Information for more info.

append_users_config(Dir :: snmp:dir(), Conf :: [user_entry()]) -> ok

Append the users config to the current manager users config file.

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

See Users for more info.

append_usm_config(Dir :: snmp:dir(), Conf :: [usm_entry()]) -> ok

Append the usm config to the current manager usm config file.

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

See Security data for USM for more info.

manager_entry(Tag, Val)

-spec manager_entry(Tag, Val) -> ManagerEntry
                       when
                           Tag :: transports | port | engine_id | max_message_size,
                           Val :: term(),
                           ManagerEntry :: manager_entry();
                   (Tag, Val) -> ManagerEntry
                       when Tag :: address, Val :: term(), ManagerEntry :: manager_entry().

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

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

read_agents_config(Dir :: snmp:dir()) -> Result

Types

Result = {ok, Conf} | {error, Reason}
Reason = term()
Conf = [agent_entry()]

Read the current manager agents config file.

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

See Agents for more info.

read_manager_config(Dir :: snmp:dir()) -> Result

Types

Result = {ok, Conf} | {error, Reason}
Reason = term()
Conf = [manager_entry()]

Read the current manager config file.

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

See Manager Information for more info.

read_users_config(Dir :: snmp:dir()) -> Result

Types

Result = {ok, Conf} | {error, Reason}
Reason = term()
Conf = [user_entry()]

Read the current manager users config file.

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

See Users for more info.

read_usm_config(Dir :: snmp:dir()) -> Result

Types

Result = {ok, Conf} | {error, Reason}
Reason = term()
Conf = [usm_entry()]

Read the current manager usm config file.

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

See Security data for USM for more info.

users_entry(UserId, UserMod, UserData) ≡ users_entry(UserId, UserMod, UserData, [])

users_entry(UserId, UserMod, UserData, DefaultAgentConfig) -> UserEntry

(since OTP 27.0)

Types

UserId = snmpm:user_id()
UserMod = snmpm:snmpm_user()
UserData = term()
DefaultAgentConfig = [snmpm:agent_config()]
UserEntry = user_entry()

Create an entry for the manager users config file, users.conf.

See the Users chapter of the (SNMP) Manager Configuration User Guide for more info.

usm_entry(EngineID, UserName, AuthP, AuthKey, PrivP, PrivKey) ≡ usm_entry/7

usm_entry(EngineID, UserName, SecName, AuthP, AuthKey, PrivP, PrivKey) -> UsmEntry

Types

EngineID = snmp:engine_id()
UserName = snmp:usm_name()
SecName = snmp:sec_name()
AuthP = snmp:usm_auth_protocol()
AuthKey = snmp:usm_auth_key()
PrivP = snmp:usm_priv_protocol()
PrivKey = snmp:usm_priv_key()
UsmEntry = usm_entry()

Create an entry for the manager usm config file, usm.conf.

See Security data for USM for more info.

write_agents_config(Dir, Conf) ≡ write_agents_config/3

write_agents_config(Dir, Hdr, Conf) -> ok

Types

Dir = snmp:dir()
Hdr = string()
Conf = [agent_entry()]

Write the manager agents config to the manager agents 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 Agents for more info.

write_manager_config(Dir, Conf) ≡ write_manager_config/3

write_manager_config(Dir, Hdr, Conf) -> ok

Types

Dir = snmp:dir()
Hdr = string()
Conf = [manager_entry()]

Write the manager config to the manager 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 Manager Information for more info.

write_users_config(Dir, Conf) ≡ write_users_config/3

write_users_config(Dir, Hdr, Conf) -> ok

Types

Dir = snmp:dir()
Hdr = string()
Conf = [user_entry()]

Write the manager users config to the manager users 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 Users for more info.

write_usm_config(Dir, Conf) ≡ write_usm_config/3

write_usm_config(Dir, Hdr, Conf) -> ok

Types

Dir = snmp:dir()
Hdr = string()
Conf = [user_entry()]

Write the manager usm config to the manager 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.