aboutsummaryrefslogtreecommitdiffstats
path: root/lib/otp_mibs/mibs
diff options
context:
space:
mode:
Diffstat (limited to 'lib/otp_mibs/mibs')
-rw-r--r--lib/otp_mibs/mibs/Makefile88
-rw-r--r--lib/otp_mibs/mibs/OTP-EVA-MIB.mib568
-rw-r--r--lib/otp_mibs/mibs/OTP-MIB.funcs2
-rw-r--r--lib/otp_mibs/mibs/OTP-MIB.mib311
-rw-r--r--lib/otp_mibs/mibs/OTP-REG.mib102
-rw-r--r--lib/otp_mibs/mibs/OTP-TC.mib92
-rw-r--r--lib/otp_mibs/mibs/v1/.gitignore0
7 files changed, 1163 insertions, 0 deletions
diff --git a/lib/otp_mibs/mibs/Makefile b/lib/otp_mibs/mibs/Makefile
new file mode 100644
index 0000000000..5e59824d3f
--- /dev/null
+++ b/lib/otp_mibs/mibs/Makefile
@@ -0,0 +1,88 @@
+#
+# %CopyrightBegin%
+#
+# Copyright Ericsson AB 1997-2009. All Rights Reserved.
+#
+# The contents of this file are subject to the Erlang Public License,
+# Version 1.1, (the "License"); you may not use this file except in
+# compliance with the License. You should have received a copy of the
+# Erlang Public License along with this software. If not, it can be
+# retrieved online at http://www.erlang.org/.
+#
+# Software distributed under the License is distributed on an "AS IS"
+# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+# the License for the specific language governing rights and limitations
+# under the License.
+#
+# %CopyrightEnd%
+#
+
+include $(ERL_TOP)/make/target.mk
+include $(ERL_TOP)/make/$(TARGET)/otp.mk
+
+# ----------------------------------------------------
+# Application version
+# Release directory specification
+# ----------------------------------------------------
+include ../vsn.mk
+ifdef SASL_VSN
+VSN=$(SASL_VSN)
+RELSYSDIR = $(RELEASE_PATH)/lib/sasl-$(VSN)
+else
+VSN=$(OTP_MIBS_VSN)
+RELSYSDIR = $(RELEASE_PATH)/lib/otp_mibs-$(VSN)
+endif
+
+# ----------------------------------------------------
+# Target Specs
+# ----------------------------------------------------
+
+MIB_FILES= OTP-REG.mib OTP-TC.mib OTP-MIB.mib
+FUNCS_FILES = OTP-MIB.funcs
+
+BIN_TARGETS= $(MIB_FILES:%.mib=$(SNMP_BIN_TARGET_DIR)/%.bin)
+HRL_TARGETS= $(MIB_FILES:%.mib=$(SNMP_HRL_TARGET_DIR)/%.hrl)
+V1_MIB_FILES= $(MIB_FILES:%.mib=v1/%.mib.v1)
+
+TARGET_FILES= $(BIN_TARGETS) $(HRL_TARGETS) $(V1_MIB_FILES)
+
+# ----------------------------------------------------
+# FLAGS
+# ----------------------------------------------------
+SNMP_FLAGS = -I ../priv/mibs
+
+# ----------------------------------------------------
+# Targets
+# ----------------------------------------------------
+
+debug opt: $(TARGET_FILES)
+
+clean:
+ rm -f $(TARGET_FILES)
+ rm -f core
+
+docs:
+
+# ----------------------------------------------------
+# Special Build Targets
+# ----------------------------------------------------
+
+v1/%.mib.v1: %.mib
+ $(ERL_TOP)/lib/snmp/bin/snmp-v2tov1 -o $@ $<
+
+# ----------------------------------------------------
+# Release Target
+# ----------------------------------------------------
+include $(ERL_TOP)/make/otp_release_targets.mk
+
+release_spec: opt
+ $(INSTALL_DIR) $(RELSYSDIR)/mibs
+ $(INSTALL_DIR) $(RELSYSDIR)/mibs/v1
+ $(INSTALL_DATA) $(MIB_FILES) $(FUNCS_FILES) $(RELSYSDIR)/mibs
+ $(INSTALL_DATA) $(V1_MIB_FILES) $(RELSYSDIR)/mibs/v1
+ $(INSTALL_DIR) $(RELSYSDIR)/include
+ $(INSTALL_DATA) $(HRL_TARGETS) $(RELSYSDIR)/include
+ $(INSTALL_DIR) $(RELSYSDIR)/priv/mibs
+ $(INSTALL_DATA) $(BIN_TARGETS) $(RELSYSDIR)/priv/mibs
+
+release_docs_spec:
diff --git a/lib/otp_mibs/mibs/OTP-EVA-MIB.mib b/lib/otp_mibs/mibs/OTP-EVA-MIB.mib
new file mode 100644
index 0000000000..6fbb8ef073
--- /dev/null
+++ b/lib/otp_mibs/mibs/OTP-EVA-MIB.mib
@@ -0,0 +1,568 @@
+--
+-- %CopyrightBegin%
+--
+-- Copyright Ericsson AB 2004-2009. All Rights Reserved.
+--
+-- The contents of this file are subject to the Erlang Public License,
+-- Version 1.1, (the "License"); you may not use this file except in
+-- compliance with the License. You should have received a copy of the
+-- Erlang Public License along with this software. If not, it can be
+-- retrieved online at http://www.erlang.org/.
+--
+-- Software distributed under the License is distributed on an "AS IS"
+-- basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+-- the License for the specific language governing rights and limitations
+-- under the License.
+--
+-- %CopyrightEnd%
+--
+
+OTP-EVA-MIB DEFINITIONS ::= BEGIN
+
+IMPORTS
+ MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
+ Counter32, Gauge32, Integer32
+ FROM SNMPv2-SMI
+ TEXTUAL-CONVENTION, DisplayString, DateAndTime
+ FROM SNMPv2-TC
+ MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
+ FROM SNMPv2-CONF
+ otpModules, otpApplications
+ FROM OTP-REG
+ OwnerString
+ FROM OTP-TC
+ ;
+
+otpEvaModule MODULE-IDENTITY
+ LAST-UPDATED "0305090900Z"
+ ORGANIZATION "Ericsson"
+ CONTACT-INFO
+ "Contact: Erlang Support see license agreement for Erlang/OTP."
+ DESCRIPTION
+ "This MIB is part of the OTP MIB. It defines MIB objects
+ for the eva application in OTP."
+
+ REVISION "0305090900Z"
+ DESCRIPTION
+ "Changed CONTACT-INFO as it was outdated, made it more generic
+ to avoid such changes in the future."
+
+ REVISION "9801270900Z"
+ DESCRIPTION
+ "Changed erroneous defintion of alarmCleared notification.
+ Changed erroneous name of this module to otpEvaModule."
+ REVISION "9712010900Z"
+ DESCRIPTION
+ "Converted to v2 SMI and placed in the OTP tree."
+ REVISION "9705020900Z"
+ DESCRIPTION
+ "The initial version of this MIB module. It is very much
+ inspired by the ANS-ALM-MIB and Axd301Eva-OMS mibs."
+ ::= { otpModules 6 }
+
+otpEvaMIB OBJECT IDENTIFIER ::= { otpApplications 4 }
+otpEvaMIBConformance
+ OBJECT IDENTIFIER ::= { otpEvaMIB 1 }
+otpEvaMIBObjects
+ OBJECT IDENTIFIER ::= { otpEvaMIB 2 }
+otpEvaMIBEvents OBJECT IDENTIFIER ::= { otpEvaMIB 3 }
+otpEvaMIBEventsV2
+ OBJECT IDENTIFIER ::= { otpEvaMIBEvents 0 }
+
+
+-- Datatypes
+
+AlarmSeverity ::= TEXTUAL-CONVENTION
+ STATUS current
+ DESCRIPTION
+ "The AlarmSeverity defines six severity levels,
+ which provide an indication of how it is perceived that the
+ capability of the managed object has been affected. Those
+ severity levels which represent service affecting conditions
+ ordered from most severe to least severe are critical,
+ major, minor and warning. The levels used are as defined
+ in X.733, ITU Alarm Reporting Function:
+
+ o The Indeterminate severity level indicates that the
+ severity level cannot be determined.
+
+ o The Critical severity level indicates that a service
+ affecting condition has occurred and an immediate
+ corrective action is required. Such a severity can be
+ reported, for example, when a managed object becomes
+ totally out of service and its capability must be restored.
+
+ o The Major severity level indicates that a service
+ affecting condition has developed and an urgent corrective
+ action is required. Such a severity can be reported, for
+ example, when there is a severe degradation in the
+ capability of the managed object and its full capability
+ must be restored.
+
+ o The Minor severity level indicates the existence of a
+ non-service affecting fault condition and that corrective
+ action should be taken in order to prevent a more serious
+ (for example, service affecting) fault. Such a severity
+ can be reported, for example, when the detected alarm
+ condition is not currently degrading the capacity of the
+ managed object.
+
+ o The Warning severity level indicates the detection of a
+ potential or impending service affecting fault, before any
+ significant effects have been felt. Action should be taken
+ to further diagnose (if necessary) and correct the problem
+ in order to prevent it from becoming a more serious service
+ affecting fault.
+
+ When an alarm is cleared, an alarmCleared event is generated.
+ This event clears the alarm with the currentAlarmFaultId
+ contained in the event. It is not required that the clearing
+ of previously reported alarms are reported. Therefore, a managing
+ system cannot assume that the absence of an alarmedCleared event
+ for a fault means that the condition that caused the generation
+ of previous alarms is still present. Managed object definers
+ shall state if, and under which conditions, the alarmedCleared
+ event is used.
+
+ The clear value of AlarmSeverity is an action which is used when
+ a management station wants to clear an active alarm. This is not
+ possible on all systems, and thus an agent does not have support
+ write access for this value."
+ REFERENCE
+ "X.733, ITU Alarm Reporting Function"
+ SYNTAX INTEGER {
+ indeterminate (0),
+ critical (1),
+ major (2),
+ minor (3),
+ warning (4),
+ clear (5) -- Written, not read
+ }
+
+AlarmClass ::= TEXTUAL-CONVENTION
+ STATUS current
+ DESCRIPTION
+ "The AlarmClass type categorizes the alarm, and is
+ defined when the alarm is registered. It is as defined in
+ X.733, ITU Alarm Reporting Function:
+
+ o communications. An alarm of this class is principally
+ associated with the procedures or processes required
+ to convey information from one point to another.
+
+ o qos. An alarm of this class is principally associated
+ with a degradation in the quality of service.
+
+ o processing. An alarm of this class is principally
+ associated with a software or processing fault.
+
+ o equipment. An alarm of this class is principally
+ associated with an equipment fault.
+
+ o environmental. An alarm of this class is principally
+ associated with a condition relating to an enclosure in
+ with equipment resides."
+ REFERENCE
+ "X.733, ITU Alarm Reporting Function"
+ SYNTAX INTEGER {
+ unknown (0),
+ communications (1),
+ qos (2),
+ processing (3),
+ equipment (4),
+ environmental (5)
+ }
+
+
+-- Managed Objects
+
+event OBJECT IDENTIFIER ::= { otpEvaMIBObjects 1 }
+alarm OBJECT IDENTIFIER ::= { otpEvaMIBObjects 2 }
+currentAlarm OBJECT IDENTIFIER ::= { otpEvaMIBObjects 3 }
+
+-- The Event group
+--
+-- The Event group controls the generation of notifications of
+-- events from the system.
+
+eventTable OBJECT-TYPE
+ SYNTAX SEQUENCE OF EventEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A list of events defined by the system. This table is used
+ to control the sending of traps and to whom the traps are
+ sent."
+ ::= { event 1 }
+
+eventEntry OBJECT-TYPE
+ SYNTAX EventEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A set of parameters that describe an event to be
+ generated when certain conditions are met."
+ INDEX { eventIndex }
+ ::= { eventTable 1 }
+
+EventEntry ::= SEQUENCE {
+ eventIndex Integer32 (1..2147483647),
+ eventTrapName DisplayString,
+ eventTreatment INTEGER,
+ eventCommunity OCTET STRING (SIZE (0..127)),
+ eventSentTraps Counter32,
+ eventOwner OwnerString
+ }
+
+eventIndex OBJECT-TYPE
+ SYNTAX Integer32 (1..2147483647)
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "An index that uniquely identifies an entry in the
+ event table. Each such entry defines one event that
+ is to be generated when the appropriate conditions
+ occur. The value for each eventIndex must remain
+ constant, at least from one re-initialization of the
+ entity's network management system to the next
+ re-initialization."
+ ::= { eventEntry 1 }
+
+eventTrapName OBJECT-TYPE
+ SYNTAX DisplayString
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The identifier of the corresponding trap.
+ NOTE: this should be an OID in SNMPv2, but must be
+ a string in v1."
+ ::= { eventEntry 2 }
+
+eventTreatment OBJECT-TYPE
+ SYNTAX INTEGER {
+ none(1),
+ log(2),
+ snmpTrap(3),
+ logAndTrap(4)
+ }
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "Defines how the system shall treat this event. In the
+ case of snmpTrap, an SNMP trap is sent to one or more
+ management stations. In the case of log, the event is
+ guaranteed to be logged in a log according to some log
+ strategy. Each such log strategy may define a MIB module
+ for control and examination of logs."
+ ::= { eventEntry 3 }
+
+eventCommunity OBJECT-TYPE
+ SYNTAX OCTET STRING (SIZE (0..127))
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "If an SNMP trap is to be sent, it will be sent to
+ the SNMP community specified by this octet string."
+ ::= { eventEntry 4 }
+
+eventSentTraps OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The number of times this event has been sent as a trap."
+ ::= { eventEntry 5 }
+
+eventOwner OBJECT-TYPE
+ SYNTAX OwnerString
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "The manager entity that 'owns' this event entry, and is
+ therefore responsible for its contents."
+ ::= { eventEntry 6 }
+
+eventTime OBJECT-TYPE
+ SYNTAX DateAndTime
+ MAX-ACCESS accessible-for-notify
+ STATUS current
+ DESCRIPTION
+ "This object may be included in a trap definition for an event.
+ It specifies the time the event was generated."
+ ::= { event 2 }
+
+
+-- The Alarm group
+--
+-- The Alarm group extends the Event group with objects for alarms.
+
+alarmTable OBJECT-TYPE
+ SYNTAX SEQUENCE OF AlarmEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "Contains additional information for alarm events."
+ ::= { alarm 1 }
+
+alarmEntry OBJECT-TYPE
+ SYNTAX AlarmEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A set of parameters for alarms."
+ INDEX { eventIndex }
+ ::= { alarmTable 1 }
+
+AlarmEntry ::= SEQUENCE {
+ alarmClass AlarmClass,
+ alarmSeverity AlarmSeverity
+ }
+
+alarmClass OBJECT-TYPE
+ SYNTAX AlarmClass
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The class of this alarm."
+ ::= { alarmEntry 1 }
+
+alarmSeverity OBJECT-TYPE
+ SYNTAX AlarmSeverity
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "The perceived severity that shall apply to the
+ associated alarms."
+ ::= { alarmEntry 2 }
+
+
+-- The CurrentAlarm group
+--
+-- The CurrentAlarm group is a collection of objects for monitoring of
+-- active alarms in the system.
+
+numberOfCurrentAlarms OBJECT-TYPE
+ SYNTAX Gauge32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Number of currently active alarms in the system."
+ ::= { currentAlarm 1 }
+
+currentAlarmLastTimeChanged OBJECT-TYPE
+ SYNTAX DateAndTime
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The time an entry in the currentAlarmTable was changed.
+ It may be used by a management station as a value to
+ poll. If the value is changed, the management station
+ knows that the currentAlarmTable has been updated."
+ ::= { currentAlarm 2 }
+
+currentAlarmTable OBJECT-TYPE
+ SYNTAX SEQUENCE OF CurrentAlarmEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A list of currently active alarms in the system."
+ ::= { currentAlarm 3 }
+
+currentAlarmEntry OBJECT-TYPE
+ SYNTAX CurrentAlarmEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A set of parameters that describe a currently active
+ alarm."
+ INDEX { currentAlarmFaultId }
+ ::= { currentAlarmTable 1 }
+
+CurrentAlarmEntry ::= SEQUENCE {
+ currentAlarmFaultId Integer32 (1..2147483647),
+ currentAlarmEventIndex Integer32 (1..2147483647),
+ currentAlarmObject OBJECT IDENTIFIER,
+ currentAlarmCause OBJECT IDENTIFIER,
+ currentAlarmSeverity AlarmSeverity,
+ currentAlarmTime DateAndTime,
+ currentAlarmInformation DisplayString,
+ currentAlarmExtra1 OBJECT IDENTIFIER,
+ currentAlarmExtra2 OBJECT IDENTIFIER
+ }
+
+currentAlarmFaultId OBJECT-TYPE
+ SYNTAX Integer32 (1..2147483647)
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "An id that uniquely identifies a fault. Each fault is
+ represented as one an entry in the currentAlarmTable."
+ ::= { currentAlarmEntry 1 }
+
+currentAlarmEventIndex OBJECT-TYPE
+ SYNTAX Integer32 (1..2147483647)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "A pointer into the eventTable. Points to the event
+ corresponding to this alarm."
+ ::= { currentAlarmEntry 2 }
+
+currentAlarmObject OBJECT-TYPE
+ SYNTAX OBJECT IDENTIFIER
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The alarming object."
+ ::= { currentAlarmEntry 3 }
+
+currentAlarmCause OBJECT-TYPE
+ SYNTAX OBJECT IDENTIFIER
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The probable cause of the alarm."
+ ::= { currentAlarmEntry 4 }
+
+currentAlarmSeverity OBJECT-TYPE
+ SYNTAX AlarmSeverity
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "The perceived severity of the fault. A manager can set
+ this value to clear only. When set to clear, the alarm
+ is removed from this table, and a 'clearAlarm' event is
+ generated."
+ ::= { currentAlarmEntry 5 }
+
+currentAlarmTime OBJECT-TYPE
+ SYNTAX DateAndTime
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The time the fault was detected."
+ ::= { currentAlarmEntry 6 }
+
+currentAlarmInformation OBJECT-TYPE
+ SYNTAX DisplayString
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Additional information pin-pointing the problem."
+ ::= { currentAlarmEntry 7 }
+
+currentAlarmExtra1 OBJECT-TYPE
+ SYNTAX OBJECT IDENTIFIER
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "An extra parameter used for some alarms at their own
+ discretion. Can be used for example to identify
+ additional objects in the alarm, or instead of
+ currentAlarmInformation to pin-point the problem, if the
+ additional information is defined in some MIB."
+ ::= { currentAlarmEntry 8 }
+
+currentAlarmExtra2 OBJECT-TYPE
+ SYNTAX OBJECT IDENTIFIER
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "An extra parameter used for some alarms at their own
+ discretion. Can be used for example to identify
+ additional objects in the alarm, or instead of
+ currentAlarmInformation to pin-point the problem, if the
+ additional information is defined in some MIB."
+ ::= { currentAlarmEntry 9 }
+
+
+-- Events
+
+alarmCleared NOTIFICATION-TYPE
+ OBJECTS {
+ currentAlarmEventIndex,
+ eventTime
+ }
+ STATUS current
+ DESCRIPTION
+ "This event is sent when an alarm has been cleared,
+ either by the application or by an operator. Note that the
+ currentAlarmFaultId is implicitly sent as the instance identifier
+ for currentAlarmEventIndex."
+ ::= { otpEvaMIBEventsV2 1 }
+
+
+-- conformance information
+
+otpEvaMIBCompliances
+ OBJECT IDENTIFIER ::= { otpEvaMIBConformance 1 }
+otpEvaMIBGroups
+ OBJECT IDENTIFIER ::= { otpEvaMIBConformance 2 }
+
+
+-- compliance statements
+
+otpEvaBasicCompliance MODULE-COMPLIANCE
+ STATUS current
+ DESCRIPTION
+ "The compliance statement for SNMPv2 entities which
+ implement the OTP-EVA-MIB."
+ MODULE -- this module
+ MANDATORY-GROUPS { eventGroup,
+ alarmGroup,
+ currentAlarmGroup,
+ evaEventsGroup }
+
+ ::= { otpEvaMIBCompliances 1 }
+
+
+-- units of conformance
+
+eventGroup OBJECT-GROUP
+ OBJECTS { eventTrapName,
+ eventTreatment,
+ eventCommunity,
+ eventSentTraps,
+ eventOwner,
+ eventTime }
+ STATUS current
+ DESCRIPTION
+ "A collection of objects providing basic instrumentation
+ and control of the events defined in the OTP system."
+ ::= { otpEvaMIBGroups 1 }
+
+alarmGroup OBJECT-GROUP
+ OBJECTS { alarmClass,
+ alarmSeverity }
+ STATUS current
+ DESCRIPTION
+ "A collection of objects providing basic instrumentation
+ and control of the alarms defined the OTP system."
+ ::= { otpEvaMIBGroups 2 }
+
+currentAlarmGroup OBJECT-GROUP
+ OBJECTS { numberOfCurrentAlarms,
+ currentAlarmLastTimeChanged,
+ currentAlarmEventIndex,
+ currentAlarmObject,
+ currentAlarmCause,
+ currentAlarmSeverity,
+ currentAlarmTime,
+ currentAlarmInformation,
+ currentAlarmExtra1,
+ currentAlarmExtra2 }
+ STATUS current
+ DESCRIPTION
+ "A collection of objects providing basic instrumentation
+ of the activa alarm list in the OTP system."
+ ::= { otpEvaMIBGroups 3 }
+
+evaEventsGroup NOTIFICATION-GROUP
+ NOTIFICATIONS { alarmCleared }
+ STATUS current
+ DESCRIPTION
+ "The notification which is generated from EVA."
+ ::= { otpEvaMIBGroups 4 }
+
+
+END
diff --git a/lib/otp_mibs/mibs/OTP-MIB.funcs b/lib/otp_mibs/mibs/OTP-MIB.funcs
new file mode 100644
index 0000000000..9f9d69c3d1
--- /dev/null
+++ b/lib/otp_mibs/mibs/OTP-MIB.funcs
@@ -0,0 +1,2 @@
+{erlNodeTable, {otp_mib, erl_node_table, []}}.
+{applTable, {otp_mib, appl_table, []}}.
diff --git a/lib/otp_mibs/mibs/OTP-MIB.mib b/lib/otp_mibs/mibs/OTP-MIB.mib
new file mode 100644
index 0000000000..2d4c286bc7
--- /dev/null
+++ b/lib/otp_mibs/mibs/OTP-MIB.mib
@@ -0,0 +1,311 @@
+--
+-- %CopyrightBegin%
+--
+-- Copyright Ericsson AB 1996-2009. All Rights Reserved.
+--
+-- The contents of this file are subject to the Erlang Public License,
+-- Version 1.1, (the "License"); you may not use this file except in
+-- compliance with the License. You should have received a copy of the
+-- Erlang Public License along with this software. If not, it can be
+-- retrieved online at http://www.erlang.org/.
+--
+-- Software distributed under the License is distributed on an "AS IS"
+-- basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+-- the License for the specific language governing rights and limitations
+-- under the License.
+--
+-- %CopyrightEnd%
+--
+
+OTP-MIB DEFINITIONS ::= BEGIN
+
+IMPORTS
+ MODULE-IDENTITY, OBJECT-TYPE,
+ Counter32, Gauge32, Integer32
+ FROM SNMPv2-SMI
+ TEXTUAL-CONVENTION, DisplayString
+ FROM SNMPv2-TC
+ MODULE-COMPLIANCE, OBJECT-GROUP
+ FROM SNMPv2-CONF
+ otpModules, otpApplications
+ FROM OTP-REG
+ ;
+
+otpModule MODULE-IDENTITY
+ LAST-UPDATED "0305090900Z"
+ ORGANIZATION "Ericsson"
+ CONTACT-INFO
+ "Contact: Erlang Support see license agreement for Erlang/OTP."
+ DESCRIPTION
+ "This is a MIB for a distributed OTP system, with one SNMP
+ agent executing at one node only. Each Erlang node in the
+ OTP system is represented by one row in the erlNodeTable."
+
+ REVISION "0305090900Z"
+ DESCRIPTION
+ "Changed CONTACT-INFO as it was outdated, made it more generic
+ to avoid such changes in the future."
+
+ REVISION "9712010900Z"
+ DESCRIPTION
+ "Converted to v2 SMI and placed in the OTP tree."
+
+ REVISION "9608191700Z"
+ DESCRIPTION
+ "The initial revision of MIB module OTP-MIB."
+
+ ::= { otpModules 3 }
+
+otpMIB OBJECT IDENTIFIER ::= { otpApplications 1 }
+otpMIBConformance
+ OBJECT IDENTIFIER ::= { otpMIB 1 }
+otpMIBObjects OBJECT IDENTIFIER ::= { otpMIB 2 }
+
+-- Datatypes
+
+MilliSeconds ::= TEXTUAL-CONVENTION
+ STATUS current
+ DESCRIPTION
+ "The MilliSeconds type represents a Counter which represents
+ the time, in milliseconds between two epochs. When objects
+ are defined which use this type, the description of the object
+ identifies both of the reference epochs."
+ SYNTAX Counter32
+
+
+-- Managed Objects
+
+erlang OBJECT IDENTIFIER ::= { otpMIBObjects 1 }
+appls OBJECT IDENTIFIER ::= { otpMIBObjects 2 }
+
+erlNodeTable OBJECT-TYPE
+ SYNTAX SEQUENCE OF ErlNodeEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A table with info on each erlang node in the system."
+ ::= { erlang 1 }
+
+erlNodeEntry OBJECT-TYPE
+ SYNTAX ErlNodeEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A conceptual row in the erlNodeTable."
+ INDEX { erlNodeId }
+ ::= { erlNodeTable 1 }
+
+ErlNodeEntry ::= SEQUENCE {
+ erlNodeId Integer32,
+ erlNodeName DisplayString,
+ erlNodeMachine DisplayString,
+ erlNodeVersion DisplayString,
+ erlNodeRunQueue Gauge32,
+ erlNodeRunTime MilliSeconds,
+ erlNodeWallClock MilliSeconds,
+ erlNodeReductions Counter32,
+ erlNodeProcesses Gauge32,
+ erlNodeInBytes Counter32,
+ erlNodeOutBytes Counter32
+}
+
+erlNodeId OBJECT-TYPE
+ SYNTAX Integer32
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "An integer that uniquely identifies the erlang node."
+ ::= { erlNodeEntry 1 }
+
+erlNodeName OBJECT-TYPE
+ SYNTAX DisplayString
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The symbolic name of the erlang node."
+ ::= { erlNodeEntry 2 }
+
+erlNodeMachine OBJECT-TYPE
+ SYNTAX DisplayString
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The virtual machine executing the erlang node"
+ ::= { erlNodeEntry 3 }
+
+erlNodeVersion OBJECT-TYPE
+ SYNTAX DisplayString
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The version number of the virtual machine"
+ ::= { erlNodeEntry 4 }
+
+erlNodeRunQueue OBJECT-TYPE
+ SYNTAX Gauge32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Number of processes scheduled to run"
+ ::= { erlNodeEntry 5 }
+
+erlNodeRunTime OBJECT-TYPE
+ SYNTAX MilliSeconds
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Total cpu time in milliseconds since the
+ system started"
+ ::= { erlNodeEntry 6 }
+
+erlNodeWallClock OBJECT-TYPE
+ SYNTAX MilliSeconds
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Total real time in milliseconds since the
+ system started"
+ ::= { erlNodeEntry 7 }
+
+erlNodeReductions OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Number of function calls since the system started"
+ ::= { erlNodeEntry 8 }
+
+erlNodeProcesses OBJECT-TYPE
+ SYNTAX Gauge32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Number of running processes in the system."
+ ::= { erlNodeEntry 9 }
+
+erlNodeInBytes OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The total number of bytes delivered to the system"
+ ::= { erlNodeEntry 10 }
+
+erlNodeOutBytes OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The total number of bytes delivered from the system"
+ ::= { erlNodeEntry 11 }
+
+
+applTable OBJECT-TYPE
+ SYNTAX SEQUENCE OF ApplEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A table with all currently running applications
+ for each node."
+ ::= { appls 1 }
+
+applEntry OBJECT-TYPE
+ SYNTAX ApplEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "A conceptual row in the applTable."
+ INDEX { erlNodeId, applId }
+ ::= { applTable 1 }
+
+ApplEntry ::= SEQUENCE {
+ applId Integer32,
+ applName DisplayString,
+ applDescr DisplayString,
+ applVsn DisplayString
+}
+
+applId OBJECT-TYPE
+ SYNTAX Integer32
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "An integer that uniquely identifies the application."
+ ::= { applEntry 1 }
+
+applName OBJECT-TYPE
+ SYNTAX DisplayString
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The name of the application."
+ ::= { applEntry 2 }
+
+applDescr OBJECT-TYPE
+ SYNTAX DisplayString
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "A short description of the application."
+ ::= { applEntry 3 }
+
+applVsn OBJECT-TYPE
+ SYNTAX DisplayString
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The version of the application."
+ ::= { applEntry 4 }
+
+
+-- conformance information
+
+otpMIBCompliances
+ OBJECT IDENTIFIER ::= { otpMIBConformance 1 }
+otpMIBGroups OBJECT IDENTIFIER ::= { otpMIBConformance 2 }
+
+
+-- compliance statements
+
+otpBasicCompliance MODULE-COMPLIANCE
+ STATUS current
+ DESCRIPTION
+ "The compliance statement for SNMPv2 entities which
+ implement the OTP-MIB."
+ MODULE -- this module
+ MANDATORY-GROUPS { erlGroup, applGroup }
+
+ ::= { otpMIBCompliances 1 }
+
+
+-- units of conformance
+
+erlGroup OBJECT-GROUP
+ OBJECTS { erlNodeName,
+ erlNodeMachine,
+ erlNodeVersion,
+ erlNodeRunQueue,
+ erlNodeRunTime,
+ erlNodeWallClock,
+ erlNodeReductions,
+ erlNodeProcesses,
+ erlNodeInBytes,
+ erlNodeOutBytes }
+ STATUS current
+ DESCRIPTION
+ "A collection of objects providing basic instrumentation
+ of the Erlang runtime system."
+ ::= { otpMIBGroups 1 }
+
+applGroup OBJECT-GROUP
+ OBJECTS { applName,
+ applDescr,
+ applVsn }
+ STATUS current
+ DESCRIPTION
+ "A collection of objects providing basic instrumentation
+ of the applications in the OTP system."
+ ::= { otpMIBGroups 2 }
+
+
+END
diff --git a/lib/otp_mibs/mibs/OTP-REG.mib b/lib/otp_mibs/mibs/OTP-REG.mib
new file mode 100644
index 0000000000..c6ef2c67e5
--- /dev/null
+++ b/lib/otp_mibs/mibs/OTP-REG.mib
@@ -0,0 +1,102 @@
+--
+-- %CopyrightBegin%
+--
+-- Copyright Ericsson AB 1997-2009. All Rights Reserved.
+--
+-- The contents of this file are subject to the Erlang Public License,
+-- Version 1.1, (the "License"); you may not use this file except in
+-- compliance with the License. You should have received a copy of the
+-- Erlang Public License along with this software. If not, it can be
+-- retrieved online at http://www.erlang.org/.
+--
+-- Software distributed under the License is distributed on an "AS IS"
+-- basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+-- the License for the specific language governing rights and limitations
+-- under the License.
+--
+-- %CopyrightEnd%
+--
+
+OTP-REG DEFINITIONS ::= BEGIN
+
+IMPORTS
+ MODULE-IDENTITY, enterprises
+ FROM SNMPv2-SMI
+ ;
+
+otpRegModule MODULE-IDENTITY
+ LAST-UPDATED "0305090900Z"
+ ORGANIZATION "Ericsson"
+ CONTACT-INFO
+ "Contact: Erlang Support see license agreement for Erlang/OTP."
+ DESCRIPTION
+ "The root MIB module for OTP."
+
+ REVISION "0305090900Z"
+ DESCRIPTION
+ "Changed CONTACT-INFO as it was outdated, made it more generic
+ to avoid such changes in the future."
+
+ REVISION "9902020900Z"
+ DESCRIPTION
+ "Cleaned up OBJECT IDENTIFIER registration. Changed the name
+ of the MODULE-IDENTITY of this module to non-conflicting name
+ otpRegModule."
+
+ REVISION "9712010900Z"
+ DESCRIPTION
+ "The initial revision of MIB module OTP-REG."
+ ::= { otpModules 1 }
+
+ericsson OBJECT IDENTIFIER ::= {enterprises 193}
+otp OBJECT IDENTIFIER ::= {ericsson 19}
+
+-- sub-tree for registraions, including Modules
+otpReg OBJECT IDENTIFIER ::= {otp 1}
+otpModules OBJECT IDENTIFIER ::= {otpReg 1}
+-- otpTcModule 2
+-- otpModule 3
+-- otpOsMonModule 4
+-- otpSnmpeaModule 5
+-- otpEvaModule 6
+-- otpLogModule 7
+-- otpEvaLogModule 8
+-- otpSnmpeaLogModule 9
+-- otpMeshModule 10
+
+
+-- sub-tree for OTP-wide objects and events
+otpGeneric OBJECT IDENTIFIER ::= {otp 2}
+
+-- sub-tree for product specific objects and events
+otpApplications
+ OBJECT IDENTIFIER ::= {otp 3}
+-- otpMib 1
+-- otpOsMonMib 2
+-- otpSnmpeaMib 3
+-- otpEvaMib 4
+-- otpLogMib 5
+-- otpMeshMib 6
+
+
+-- sub-tree for agent implementation capabilites
+otpCaps OBJECT IDENTIFIER ::= {otp 4}
+-- otpMibImplV10 1 (vsn of mib implementation, e.g. otp_mib)
+-- otpOsMonMibImplV10 2
+-- otpSnmpeaMibImplV10 3
+-- otpEvaMibImplV10 4
+-- otpLogMibImplV10 5
+
+
+-- sub-tree for requirement specifications
+otpReqs OBJECT IDENTIFIER ::= {otp 5}
+
+-- sub-tree for experimental modules within OTP
+otpExpr OBJECT IDENTIFIER ::= {otp 6}
+
+-- sub-tree for SSL within OTP
+-- Note that this subtree is not MIB related, but it
+-- is defined in this MIB file to avoid clashes.
+ssl OBJECT IDENTIFIER ::= {otp 10}
+
+END
diff --git a/lib/otp_mibs/mibs/OTP-TC.mib b/lib/otp_mibs/mibs/OTP-TC.mib
new file mode 100644
index 0000000000..38c4d05846
--- /dev/null
+++ b/lib/otp_mibs/mibs/OTP-TC.mib
@@ -0,0 +1,92 @@
+--
+-- %CopyrightBegin%
+--
+-- Copyright Ericsson AB 1997-2009. All Rights Reserved.
+--
+-- The contents of this file are subject to the Erlang Public License,
+-- Version 1.1, (the "License"); you may not use this file except in
+-- compliance with the License. You should have received a copy of the
+-- Erlang Public License along with this software. If not, it can be
+-- retrieved online at http://www.erlang.org/.
+--
+-- Software distributed under the License is distributed on an "AS IS"
+-- basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+-- the License for the specific language governing rights and limitations
+-- under the License.
+--
+-- %CopyrightEnd%
+--
+
+OTP-TC DEFINITIONS ::= BEGIN
+
+IMPORTS
+ MODULE-IDENTITY
+ FROM SNMPv2-SMI
+ TEXTUAL-CONVENTION, DisplayString
+ FROM SNMPv2-TC
+ otpModules
+ FROM OTP-REG
+ ;
+
+otpTcModule MODULE-IDENTITY
+ LAST-UPDATED "0305090900Z"
+ ORGANIZATION "Ericsson"
+ CONTACT-INFO
+ "Contact: Erlang Support see license agreement for Erlang/OTP."
+ DESCRIPTION
+ "This MIB is part of the OTP MIB. It defines common
+ Textual Conventions used in other OTP mib modules."
+
+ REVISION "0305090900Z"
+ DESCRIPTION
+ "Changed CONTACT-INFO as it was outdated, made it more generic
+ to avoid such changes in the future."
+
+
+ REVISION "9712010900Z"
+ DESCRIPTION
+ "The initial version of this module."
+ ::= { otpModules 2 }
+
+OwnerString ::= TEXTUAL-CONVENTION
+ DISPLAY-HINT "255a"
+ STATUS current
+ DESCRIPTION
+ "An OwnerString identifies the initiator or owner of a row
+ in a table. This label is set by the initiator to provide
+ for the following possibilities:
+
+ o A management station may recognize resources it owns
+ and no longer needs.
+ o A network operator can find the management station that
+ owns the resource and negotiate for it to be freed.
+ o A network operator may decide to unilaterally free
+ resources another network operator has reserved.
+ o Upon initialization, a management station may recognize
+ resources it had reserved in the past. With this
+ information it may free the resources if it no longer
+ needs them.
+
+ Management stations and agent systems should support any format
+ of the OwnerString dictated by the local policy of the
+ organization. It is suggested that this name contain one or
+ more of the following: IP address, management station name,
+ network manager's name, location, or phone number. This
+ information will help users to share the resources more
+ effectively.
+
+ There is often default functionality that the device or the
+ administrator of the agent (often the network administrator) wishes
+ to set up. The resources associated with this functionality are then
+ owned by the device itself or by the network administrator, and are
+ intended to be long-lived. In this case, the device or the
+ administrator will set the relevant owner object to a string starting
+ with 'local'. Indiscriminate modification of the local
+ configuration by network management stations is discouraged. In
+ fact, a network management station should only modify these objects
+ under the direction of the administrator of the agent system."
+ REFERENCE
+ "RFC1757, RMON-MIB"
+ SYNTAX DisplayString (SIZE (0..127))
+
+END
diff --git a/lib/otp_mibs/mibs/v1/.gitignore b/lib/otp_mibs/mibs/v1/.gitignore
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/lib/otp_mibs/mibs/v1/.gitignore