--  =======================================================================
--  File        : osSnmp.mib
--  Description : Private MIB for SNMP configurations`
--  By          : Alex Ruzin
--  Date        : $Date: 2020/12/10 13:41:55 $
--  $Log: osSnmp.mib,v $
--  Revision 1.1.1.1  2020/12/10 13:41:55  alex
--  Version 20.2.1
--

OS-SNMP-MIB DEFINITIONS ::= BEGIN

IMPORTS
  MODULE-IDENTITY, OBJECT-TYPE    FROM SNMPv2-SMI
  MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
  DisplayString                   FROM SNMPv2-TC
  adva                            FROM OS-COMMON-TC-MIB;

osSnmp          MODULE-IDENTITY
                LAST-UPDATED "202012090000Z" -- 2 December 2020
                ORGANIZATION "MRV Communications, Inc."
                CONTACT-INFO
                   "Alex Ruzin
                    ADVA
                    www.adva.com
                    Email:  ARuzin@adva.com"
                DESCRIPTION
                    "Private MIB for SNMP configurations."

                REVISION     "202012090000Z" -- 2 December 2020
                DESCRIPTION
                    "Initial edition."
                ::= { adva 7 }

-- ************************************************************
-- Objects Identifiers Definition
-- ************************************************************

osSnmpConformance         OBJECT IDENTIFIER ::= { osSnmp 100 }
osSnmpMIBCompliances      OBJECT IDENTIFIER ::= { osSnmpConformance 1 }
osSnmpMIBGroups           OBJECT IDENTIFIER ::= { osSnmpConformance 2 }

osSnmpNotificationObjects OBJECT IDENTIFIER ::= { osSnmp 1 }
osSnmpCfg                 OBJECT IDENTIFIER ::= { osSnmp 2 }

-- *******************************************************************
--  Parameters of cmAttributeValueChangeTrap from CM-SYSTEM-MIB
-- ******************************************************************* 

osSnmpChangeSourceAddress OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The source address of the manager who changed the configuration."
    ::= { osSnmpNotificationObjects 1 }

osSnmpChangeV2Community OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The 'community' of SNMP v1/v2c manager who changed the configuration."
    ::= { osSnmpNotificationObjects 2 }


osSnmpChangeV3User OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The security name of SNMP v3 manager who changed the configuration."
    ::= { osSnmpNotificationObjects 3 }

osSnmpChangeCliUser OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "The user name of CLI manager who changed the configuration."
    ::= { osSnmpNotificationObjects 4 }

osSnmpChangeCliCommand OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Configuration CLI command content."
    ::= { osSnmpNotificationObjects 5 }

osSnmpChangeCliNodeName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "CLI node, in which the configuration CLI command is executed."
    ::= { osSnmpNotificationObjects 6 }


-- *******************************************************************
--  Modes of SNMP agent
-- ******************************************************************* 

osSnmpAlarmMangerMode		OBJECT-TYPE
		SYNTAX  INTEGER
		{
		 disable	(1),
		 enable		(2)
		}
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
		  "Setting enable(2) enables sending cmNetworkElementEvent notifications from CM-ALARM-MIB"
    REFERENCE
       "CLI command '[no ]send-alarm-traps'."
    DEFVAL { disable }
		::= { osSnmpCfg 1 }

osSnmpChangeLogMode		OBJECT-TYPE
		SYNTAX  INTEGER
		{
		 disable	(1),
		 enable		(2)

		}
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
		  "Setting enable(2) enables sending cmAttributeValueChangeTrap from CM-SYSTEM-MIB."
    REFERENCE
       "CLI command '[no ]change-log'."
    DEFVAL { disable }
		::= { osSnmpCfg 2 }

-- *******************************************************************
--  Conformance Information 
-- ******************************************************************* 

osSnmpMIBCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
        "The core compliance statement for all the implementations." 

    MODULE -- this module 
        MANDATORY-GROUPS { 
                          osSnmpMandatoryGroup
                         }

    ::= { osSnmpMIBCompliances 1 }

-- ...................................................................
-- Conformance Groups 
-- ................................................................... 
 
osSnmpMandatoryGroup  OBJECT-GROUP
    OBJECTS { 
      osSnmpChangeSourceAddress,
      osSnmpChangeV2Community,
      osSnmpChangeV3User,
      osSnmpChangeCliUser,
      osSnmpChangeCliCommand,
      osSnmpChangeCliNodeName,
      osSnmpAlarmMangerMode, osSnmpChangeLogMode
    }

    STATUS current 
    DESCRIPTION 
        "."
    ::= { osSnmpMIBGroups 1 }

END
		
