-- Copyright 1993 General DataComm Ind., Inc. All Rights Reserved. -- -- Reproduction of this document is authorized on condition that the -- foregoing copyright notice is included. This General DataComm, GDC, -- SNMP Management Information Base Specification embodies GDCs' -- confidential and proprietary intellectual property. GDC retains all -- title and ownership in the Specification, including any revisions. -- -- It is GDCs intent to encourage the widespread use of this Specification -- in connection with the management of GDC's products. GDC grants vendors, -- end-users, and other interested parties a non-exclusive licence to use -- this Specification in connection with the management of GDC's products. -- -- This Specification is supplied "AS IS," and GDC makes no warranty, -- either expressed or implied, as to the use operation, condition, or -- performance of the Specification. -- Revision History -- Version Date Name Description -- 1.0 1-Dec-93 W. Meltzer Initial Release from rev D -- 1.1 14-Apr-94 W. Meltzer Changed OCTET STRING to DisplayString -- 1.2A 17-Aug-94 S. Zezima Added a MIB Version Variable and -- updated the description for cmnCommunityIndex, -- cmnTrapAddrIpDest, cmnTrapAddrUdpDest -- and changed the range for cmnTrapAddrCommunity -- and cmnCommunityName from 0-32 to 1-32. -- 2.00 17-Oct-94 S. Zezima Added in the common alarm information -- 2.00A 02-Nov-94 S. Zezima Added alarm masking information -- 2.00B 09-N0v-94 M. Cyr Fix typo in mask section GDCCMN-MIB DEFINITIONS ::= BEGIN IMPORTS enterprises, IpAddress FROM RFC1155-SMI DisplayString FROM RFC1213-MIB OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215; -- GDC Common MIB Definition gdc OBJECT IDENTIFIER ::= { enterprises 498 } cmn OBJECT IDENTIFIER ::= { gdc 1 } -- Groups Defined in this MIB cmnTrap OBJECT IDENTIFIER ::= { cmn 1 } cmnCommName OBJECT IDENTIFIER ::= { cmn 2 } -- cmnMIBVersion OBJECT IDENTIFIER ::= { cmn 3 } cmnAlarm OBJECT IDENTIFIER ::= { cmn 4 } -- -- The Version group -- Implementation of this group is mandatory for all systems. -- The information in this group provides the version information -- for the MIB. -- cmnMIBVersion OBJECT-TYPE SYNTAX DisplayString (SIZE (5)) ACCESS read-only STATUS mandatory DESCRIPTION "The version number of the MIB, to allow products to know which MIB is being supported. The version number will be x.yzT where x is a major revision (1-9), y is a minor revision(0-9), z is a typo revision (0-9) and T indicates the MIB is still a test revision(A-Z). When a release is complete no T should exist." ::= { cmn 3 } -- Trap Group -- This group is mandatory for all SNMP agents that will exist on some network -- and will be required to send TRAPs to a controller. cmnTrapGlobal OBJECT-TYPE SYNTAX INTEGER { disable(1), enable(2) } ACCESS read-write STATUS mandatory DESCRIPTION "This globally enables and disables all TRAPs from an agent. All variables should provide a means to mask a TRAP and to provide some threshold before a TRAP is sent." ::= { cmnTrap 1 } cmnTrapAddrNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The maximum number of entries the TRAP table can hold." ::= { cmnTrap 2 } cmnTrapAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF CmnTrapAddrEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of management systems ready to accept traps generated by this node. To add an entry to the table, a set on the Community name for the instance (IP Address and UDP PORT) needs to be performed. To delete an entry, a set on the Status to invalid on the instance needs to be performed." ::= { cmnTrap 3 } cmnTrapAddrEntry OBJECT-TYPE SYNTAX CmnTrapAddrEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Information needed to deliver traps to a particular management station." INDEX { cmnTrapAddrIpDest, cmnTrapAddrUdpDest } ::= { cmnTrapAddrTable 1 } CmnTrapAddrEntry ::= SEQUENCE { cmnTrapAddrIpDest IpAddress, cmnTrapAddrUdpDest INTEGER, cmnTrapAddrCommunity DisplayString, cmnTrapAddrStatus INTEGER } cmnTrapAddrIpDest OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The IP address of the management agent receiving traps. The IP address of 0.0.0.0 will not be allowed." ::= { cmnTrapAddrEntry 1 } cmnTrapAddrUdpDest OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The UDP port number used by the management station to receive traps. A value of 0 for the UDP port number will not be allowed." ::= { cmnTrapAddrEntry 2 } cmnTrapAddrCommunity OBJECT-TYPE SYNTAX DisplayString (SIZE (1..32)) ACCESS read-write STATUS mandatory DESCRIPTION "The community name expected by the management station receiving traps." ::= { cmnTrapAddrEntry 3 } cmnTrapAddrStatus OBJECT-TYPE SYNTAX INTEGER { valid(1), invalid(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The status of the entry. If read and the entry exists, valid(1) will always be returned. Invalid entries will be removed from the table." ::= { cmnTrapAddrEntry 4 } -- Community Name Group -- This group describes operation of the way the agent handles multiple -- community names and their access rights. -- -- The entire cmnCommName group, can only be accessed by a community name -- which has readWrite privileges. This means that if you have readOnly -- privilege, any getRequest will return a noSuchName error. -- A getNextRequest should just jump around the group. -- -- As a factory default, there will be one entry in the table with -- the following values: -- cmnCommunityIndex 1 -- cmnCommunityName public -- cmnCommunityAccess readonly(1) -- cmnCommunityStatus valid(1) -- -- Adding the next entry will require write privileges. The method by which -- this occurs is product dependent. One way could be through user entry -- via a local terminal. cmnCommunityNumber OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The maximum number of entries the Community table can hold." ::= { cmnCommName 1 } cmnCommunityTable OBJECT-TYPE SYNTAX SEQUENCE OF CmnCommunityEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "A table of Community Names and there defined access. To add an entry to the table, a set on the Community Name for the instance (Index) needs to be performed. To delete an entry, a set on the Status to invalid on the instance needs to be performed." ::= { cmnCommName 2 } cmnCommunityEntry OBJECT-TYPE SYNTAX CmnCommunityEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "Information needed to deliver traps to a particular management station." INDEX { cmnCommunityIndex } ::= { cmnCommunityTable 1 } CmnCommunityEntry ::= SEQUENCE { cmnCommunityIndex INTEGER, cmnCommunityName DisplayString, cmnCommunityAccess INTEGER, cmnCommunityStatus INTEGER } cmnCommunityIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index number associated with the entry in the community name table. The range cannot be specified on the SYNTAX line since it will vary from agent to agent. The range will be 1 to the number specified by cmnCommunityNumber." ::= { cmnCommunityEntry 1 } cmnCommunityName OBJECT-TYPE SYNTAX DisplayString (SIZE (1..32)) ACCESS read-write STATUS mandatory DESCRIPTION "The community name being defined." ::= { cmnCommunityEntry 2 } cmnCommunityAccess OBJECT-TYPE SYNTAX INTEGER { readOnly(1), readWrite(2), noAccess(3) } ACCESS read-write STATUS mandatory DESCRIPTION "The Access associated with the community name. When a new row is created by adding a new name, the default value will be noAccess(3)." ::= { cmnCommunityEntry 3 } cmnCommunityStatus OBJECT-TYPE SYNTAX INTEGER { valid(1), invalid(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The status of the entry. If read and the entry exists, valid(1) will always be returned. Invalid entries will be removed from the table." ::= { cmnCommunityEntry 4 } -- Alarm Group -- This group id used to describe the common alarm system. -- -- The entire cmnAlarmStatus group is read only and can provide the current -- status of each alarm. The cmnAlarmMask group provides a mechanism -- to change the masking of an alarm. -- -- The object id's defining an alarms are found in a seperate MIB -- which defines all of the alarms associated with a product family. -- The Alarm Status Table cmnAlarmStatusTable OBJECT-TYPE SYNTAX SEQUENCE OF CmnAlarmStatusEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The cmnAlarmStatusTable contains entries that report the status of alarms. The status of an alarm indicates whether the alarm is currently active or inactive. This information will be determined by the network element depending on the alarm threshold configuration. The structure of the table is such that alarm status is supported on a unit or interface basis, and then on an alarm type basis within the interface. For simplicity sake and to support the reporting of status of all alarms, a unit is treated as an interface in this table." ::= { cmnAlarm 1 } cmnAlarmStatusEntry OBJECT-TYPE SYNTAX CmnAlarmStatusEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the Alarm Status table." INDEX { cmnAlarmStatusIndex, cmnAlarmStatusIdentifier } ::= { cmnAlarmStatusTable 1 } CmnAlarmStatusEntry ::= SEQUENCE { cmnAlarmStatusIndex INTEGER, cmnAlarmStatusIdentifier OBJECT IDENTIFIER, cmnAlarmCurrentStatus INTEGER } cmnAlarmStatusIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index value which uniquely identifies the interface to which this entry is applicable." ::= { cmnAlarmStatusEntry 1 } cmnAlarmStatusIdentifier OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "The unique alarm identifier assigned to this alarm type. The format of this identifier is an OBJECT IDENTIFIER that has the following format: {iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) gdc(498) xxx(x) alarm(z) yyy(y) where xxx(x) is the administratively assigned family object identifier (z) is the object identifier for alarms in the family defined MIB and yyy(y) is the administratively assigned alarm type identifier for this alarm." ::= { cmnAlarmStatusEntry 2 } cmnAlarmCurrentStatus OBJECT-TYPE SYNTAX INTEGER { inactive(1), active(2) } ACCESS read-only STATUS mandatory DESCRIPTION "The current status of the alarm. The value inactive(1) indicates that this alarm is currently inactive. The value active(2) indicates that this alarm is currently active." ::= { cmnAlarmStatusEntry 3 } -- Alarm Masking Table cmnAlarmMaskTable OBJECT-TYPE SYNTAX SEQUENCE OF CmnAlarmMaskEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The cmnAlarmMaskTable contains entries that report the current masking state of alarms. The mask of an alarm can be changed between masked(1) and unmasked(2). If an alarm is unmasked, the threshold configuration can affect the reporting of this alarm. The structure of the table is such that alarm mask is supported on a unit or interface basis, and then on an alarm type basis within the interface. For simplicity sake and to support the reporting of status of all alarms, a unit is treated as an interface in this table." ::= { cmnAlarm 2 } cmnAlarmMaskEntry OBJECT-TYPE SYNTAX CmnAlarmMaskEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry in the alarm mask table." INDEX { cmnAlarmMaskIndex, cmnAlarmMaskIdentifier } ::= { cmnAlarmMaskTable 1 } CmnAlarmMaskEntry ::= SEQUENCE { cmnAlarmMaskIndex INTEGER, cmnAlarmMaskIdentifier OBJECT IDENTIFIER, cmnAlarmMask INTEGER } cmnAlarmMaskIndex OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The index value which uniquely identifies the interface to which this entry is applicable." ::= { cmnAlarmMaskEntry 1 } cmnAlarmMaskIdentifier OBJECT-TYPE SYNTAX OBJECT IDENTIFIER ACCESS read-only STATUS mandatory DESCRIPTION "The unique alarm identifier assigned to this alarm type. The format of this identifier is an OBJECT IDENTIFIER that has the following format: {iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) gdc(498) xxx(x) alarm(z) yyy(y) where xxx(x) is the administratively assigned family object identifier (z) is the object identifier for alarms in the family defined MIB and yyy(y) is the administratively assigned alarm type identifier for this alarm." ::= { cmnAlarmMaskEntry 2 } cmnAlarmMask OBJECT-TYPE SYNTAX INTEGER { mask(1), unmask(2) } ACCESS read-write STATUS mandatory DESCRIPTION "The alarm masking control. When the value is mask(1), then the alarm is masked and will not be reported. When the value is unmask(2), then the alarm will be reported depending on the threshold configuration." ::= { cmnAlarmMaskEntry 3 } -- Alarm Management Related Traps cmnAlarmStatusTrap TRAP-TYPE ENTERPRISE cmnAlarm VARIABLES { cmnAlarmCurrentStatus } DESCRIPTION "The alarm status trap. This trap is set whenever an alarm status change occurs to report an alarm. The variable bindings contain the status for each alarm that changes state. Note that the OBJECT IDENTIFIER of the variable contains the interface, family type, and alarm type of the alarm encoded within. More than one alarm can be sent in the trap, if the network element indicates that more than one has changed at the same time." ::= 1 END