SnmpKit.SnmpLib.PDU.Constants (snmpkit v0.3.6)

Constants and type definitions for SNMP PDU operations.

This module contains all ASN.1 tags, error codes, type definitions, and utility functions used throughout the SNMP PDU system.

Summary

Types

error_status()

@type error_status() :: 0..5

message()

@type message() :: %{
  version: snmp_version() | non_neg_integer(),
  community: binary(),
  pdu: pdu()
}

oid()

@type oid() :: [non_neg_integer()] | binary()

pdu()

@type pdu() :: %{
  type: pdu_type(),
  request_id: non_neg_integer(),
  error_status: error_status(),
  error_index: non_neg_integer(),
  varbinds: [varbind()],
  non_repeaters: non_neg_integer(),
  max_repetitions: non_neg_integer()
}

pdu_type()

@type pdu_type() ::
  :get_request
  | :get_next_request
  | :get_response
  | :set_request
  | :get_bulk_request

snmp_type()

@type snmp_type() ::
  :integer
  | :octet_string
  | :null
  | :object_identifier
  | :counter32
  | :gauge32
  | :timeticks
  | :counter64
  | :ip_address
  | :opaque_type
  | :no_such_object
  | :no_such_instance
  | :end_of_mib_view

snmp_value()

@type snmp_value() :: any()

snmp_version()

@type snmp_version() :: :v1 | :v2c | :v2 | :v3 | 0 | 1 | 3

varbind()

@type varbind() :: {oid(), atom(), snmp_value()}

Functions

bad_value()

counter32()

counter64()

data_type_to_tag(atom)

end_of_mib_view()

error_status_to_atom(code)

@spec error_status_to_atom(non_neg_integer()) :: atom()

Converts an error status code to its atom representation.

error_status_to_code(code)

@spec error_status_to_code(atom()) :: non_neg_integer()

Converts an error status atom to its numeric code.

gauge32()

gen_err()

get_request()

get_response()

getbulk_request()

getnext_request()

integer()

ip_address()

no_error()

no_such_instance()

no_such_name()

no_such_object()

normalize_oid(oid)

normalize_type(type)

@spec normalize_type(atom()) :: snmp_type()

Normalizes an SNMP type atom.

normalize_version(v)

null()

object_identifier()

octet_string()

opaque_type()

pdu_type_to_tag(atom)

read_only()

set_request()

tag_to_data_type(arg1)

tag_to_pdu_type(arg1)

timeticks()

too_big()