snmp_view_based_acm_mib(3)

NAME
snmp_view_based_acm_mib - Instrumentation Functions for SNMP-VIEW-BASED-ACM-MIB

DESCRIPTION

The module snmp_view_based_acm_mib implements the instrumentation functions for the SNMP-VIEW-BASED-ACM-MIB, and functions for configuring the database.

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

DATA TYPES

access_notify_view_name() :: snmp_framework_mib:admin_string().

    NOTE: "The value of an instance of this object identifies the MIB view of the SNMP context to which this conceptual row authorizes access for notifications."

    SnmpAdminString (SIZE(0..32))
access_read_view_name() :: snmp_framework_mib:admin_string().

    NOTE: "The value of an instance of this object identifies the MIB view of the SNMP context to which this conceptual row authorizes read access."

    SnmpAdminString (SIZE(0..32))
access_write_view_name() :: snmp_framework_mib:admin_string().

    NOTE: "The value of an instance of this object identifies the MIB view of the SNMP context to which this conceptual row authorizes write access."

    SnmpAdminString (SIZE(0..32))
context_match() :: exact | prefix.

        	  exact  - exact match of prefix and contextName
                  prefix - Only match to the prefix

    INTEGER { exact (1), prefix (2) }
context_prefix() :: snmp_framework_mib:admin_string().

    SnmpAdminString (SIZE(0..32))
group_name() :: snmp_framework_mib:admin_string().

    NOTE: "The name of the group to which this entry (e.g., the combination of securityModel and securityName) belongs."

    SnmpAdminString (SIZE(1..32))
internal_view_mask() :: null | [internal_view_mask_element()].
internal_view_mask_element() :: 0 | 1.
internal_view_type() :: 1 | 2.
mibview() :: [{SubTree :: snmp:oid(), Mask :: internal_view_mask(), Type :: internal_view_type()}].
security_name() :: snmp_framework_mib:admin_string().

    NOTE: "The securityName for the principal, represented in a Security Model independent format."

    SnmpAdminString (SIZE(1..32))
view_mask() :: [0 | 1].

    The bit mask which, in combination with the corresponding instance of vacmViewTreeFamilySubtree, defines a family of view subtrees.

    A '1' indicates that an exact match must occur, a '0' indicates 'wild card' (any sub-identifier value matches).

    NOTE: Note that in the "external" format, each bit of each octet is represented by a "bit" in this list. That is, each octet "contains" 8 bits; so at most 8*16 = 128 bits in total.

    OCTET STRING (SIZE (0..16))
view_name() :: snmp_framework_mib:admin_string().

    NOTE: "The human readable name for a family of view subtrees."

    SnmpAdminString (SIZE(1..32))
view_type() :: included | excluded.

    Does the corresponding instances of subtree and mask define a family of view subtrees which are included in or excluded from the MIB view.

    INTEGER { included(1), excluded(2) }

FUNCTIONS

add_access(GroupName, Prefix, SecModel, SecLevel, Match, RV, WV, NV) -> {ok, Key} | {error, Reason} when GroupName :: group_name(), Prefix :: context_prefix(), SecModel :: snmp_framework_mib:security_model(), SecLevel :: snmp_framework_mib:security_level(), Match :: context_match(), RV :: access_read_view_name(), WV :: access_write_view_name(), NV :: access_notify_view_name(), Key :: term(), Reason :: term().

    Adds a access definition to the agent config. Equivalent to one vacmAccess-line in the vacm.conf file.
add_sec2group(SecModel, SecName, GroupName) -> {ok, Key} | {error, Reason} when SecModel :: snmp_framework_mib:security_model(), SecName :: security_name(), GroupName :: group_name(), Key :: term(), Reason :: term().

    Adds a security to group definition to the agent config. Equivalent to one vacmSecurityToGroup-line in the vacm.conf file.
add_view_tree_fam(ViewName, SubTree, Status, Mask) -> {ok, Key} | {error, Reason} when ViewName :: view_name(), SubTree :: snmp:oid(), Status :: view_type(), Mask :: null | view_mask(), Key :: term(), Reason :: term().

    Adds a view tree family definition to the agent config. Equivalent to one vacmViewTreeFamily-line in the vacm.conf file.
configure(ConfDir) -> snmp:void() when 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: vacm.conf.
delete_access(Key) -> ok | {error, Reason} when Key :: term(), Reason :: term().

    Delete a access definition from the agent config.
delete_sec2group(Key) -> ok | {error, Reason} when Key :: term(), Reason :: term().

    Delete a security to group definition from the agent config.
delete_view_tree_fam(Key) -> ok | {error, Reason} when Key :: term(), Reason :: term().

    Delete a view tree family definition from the agent config.
reconfigure(ConfDir) -> snmp:void() when 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-VIEW-BASED-ACM-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: vacm.conf.