snmp_user_based_sm_mib(3)

NAME
snmp_user_based_sm_mib - Instrumentation Functions for SNMP-USER-BASED-SM-MIB

DESCRIPTION

The module snmp_user_based_sm_mib implements the instrumentation functions for the SNMP-USER-BASED-SM-MIB, and functions for configuring the database.

Note that authentication has been extended according to RFC 7860 (SNMP-USM-HMAC-SHA2-MIB).

The configuration files are described in the SNMP User's Manual.

EXPORTS

configure(ConfDir) -> void()

    Types:
        ConfDir = string()

    This function is called from the supervisor at system start-up.

    Inserts all data in the configuration files into the database and destroys all old rows with StorageType volatile. The rows created from the configuration file will have StorageType nonVolatile.

    All snmp counters are set to zero.

    If an error is found in the configuration file, it is reported using the function config_err/2 of the error report module, and the function fails with the reason configuration_error.

    ConfDir is a string which points to the directory where the configuration files are found.

    The configuration file read is: usm.conf.

reconfigure(ConfDir) -> void()

    Types:
        ConfDir = string()

    Inserts all data in the configuration files into the database and destroys all old data, including the rows with StorageType nonVolatile. The rows created from the configuration file will have StorageType nonVolatile.

    Thus, the data in the SNMP-USER-BASED-SM-MIB, after this function has been called, is the data from the configuration files.

    All snmp counters are set to zero.

    If an error is found in the configuration file, it is reported using the function config_err/2 of the error report module, and the function fails with the reason configuration_error.

    ConfDir is a string which points to the directory where the configuration files are found.

    The configuration file read is: usm.conf.

add_user(EngineID, Name, SecName, Clone, AuthP, AuthKeyC, OwnAuthKeyC, PrivP, PrivKeyC, OwnPrivKeyC, Public, AuthKey, PrivKey) -> Ret

    Types:
        EngineID = string()
        Name = string()
        SecName = string()
        Clone = zeroDotZero | [integer()]
        AuthP = usmNoAuthProtocol | usmHMACMD5AuthProtocol | usmHMACSHAAuthProtocol | usmHMAC128SHA224AuthProtocol | usmHMAC192SH256AuthProtocol | usmHMAC256SHA384AuthProtocol | usmHMAC384SHA512AuthProtocol
        AuthKeyC = string()
        OwnAuthKeyC = string()
        PrivP = usmNoPrivProtocol | usmDESPrivProtocol
        PrivKeyC = string()
        OwnPrivKeyC = string()
        Public = string()
        AuthKey = string()
        PrivKey = string()
        Ret = {ok, Key} | {error, Reason}
        Key = term()
        Reason = term()

    Adds a USM security data (user) to the agent config. Equivalent to one line in the usm.conf file.

delete_user(Key) -> Ret

    Types:
        Key = term()
        Ret = ok | {error, Reason}
        Reason = term()

    Delete a USM security data (user) from the agent config.