-- *****************************************************************
-- CISCO-SMART-LIC-MIB.my
--   
-- MIB for Cisco Software Smart Licensing
--   
-- Jul 2014, Sreejith Sreekumaran
-- Jan 2016, Kishan Panchangam
--   
-- Copyright (c) 2014-2016 by Cisco Systems, Inc.
-- All rights reserved.
--   
-- The Structure looks like this
-- Smart License mib Objects
-- ---- Smart License Entitlements
-- ---- Smart License Entitlements Table
-- ---- Smart License Registration
-- ---- Initial Registration Times
-- ---- Renew Registration Times
-- ---- Authorization Info
-- ---- Authorization Info Eval Period
-- ---- Authorization Renewal Time
-- ---- Notification Objects
-- ---- Smart License MIB Notify
-- ---- Smart License MIB Conformance Objects
-- ---- Conformanc Compliance Objects
-- ---- Conformance Groups
--   
-- *****************************************************************

CISCO-SMART-LIC-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE,
    NOTIFICATION-TYPE,
    Unsigned32
        FROM SNMPv2-SMI
    MODULE-COMPLIANCE,
    NOTIFICATION-GROUP,
    OBJECT-GROUP
        FROM SNMPv2-CONF
    SnmpAdminString
        FROM SNMP-FRAMEWORK-MIB
    TruthValue
        FROM SNMPv2-TC
    ciscoMgmt
        FROM CISCO-SMI;


ciscoSmartLicMIB MODULE-IDENTITY
    LAST-UPDATED    "201604050000Z"
    ORGANIZATION    "Cisco Systems, Inc."
    CONTACT-INFO
            "Cisco Systems
            Customer Service


            Postal: 170 W Tasman Drive

            San Jose, CA  95134

            USA


            Tel: +1 800 553-NETS


            E-mail: ask-smartlicensing@cisco.com"
    DESCRIPTION
        "The MIB module for managing licenses on the system.
        The licensing mechanism provides flexibility to
        enforce licensing for various features in the system.

        The following description introduces different concepts and
        terminologies necessary to understand the MIB
        definition and to perform license management.

        Product Instance: An instance of a Cisco software image that
        runs on a hardware platform and requires some licensing
        capability.

        Software ID tag: A string generated by the Cisco
        Connected Software IT team to uniquely identify a Cisco 
        software product.

        Smart Account: A Smart Licensing account that is created
        for Cisco customers or partners to manage their Smart
        Licensing product instances and licenses.  The account is
        created on the Cisco Smart Software Manager portal.  An
        enterprise account can have several virtual accounts (a.k.a.
        pools) of licenses.  

        Cisco Smart Software Manager (CSSM): The Smart Licensing
        back-end  system, hosted on Cisco IT infrastructure, is
        responsible for managing all Smart Licensing services and
        transactions.  It  provides a set of  APIs that the Smart Agent
        can communicate with and an external-facing 
        UI for Cisco customers and partners to log into and
        manage their  Smart Licensing account.

        Registration Token: A token that is generated from the
        Cisco Smart Software Manager.  The token is used to register a
        product instance with the Cisco Smart Software Manager.

        Smart Agent: A Smart Licensing software client that runs
        on a product instance and communicates with the Cisco Smart
        Software Manager.

        Entitlement Tag: A unique string that identifies a
        feature that can be enabled on a product instance.  The tags are
        used by both the  Smart Agent and the Cisco Smart Software
        Manager to track entitlement requests.  

        Transport Mode: The Smart Agent uses the Smart Call Home
        (SCH) service as a transport medium to communicate with the
        Smart Licensing back-end. 

        Crypto (LCS) Service: In addition to HTTPS exchanged
        messages are further signed and verified on both sides to ensure
        the authenticity of all communication.   The Smart Software
        Licensing system uses a crypto service and underlying crypto
        library (either CiscoSSL or PKI). The Smart Software Licensing
        back-end leverages the Licensing Crypto Service (LCS) service.

        UDI: Unique Device Identifier that uniquely identifies a
        device. Primarily it consists of a product ID, version ID and
        serial number of the Customers device.

        Grace Period: A product enters into a grace period when
        the authorization period expires. This is the result of
        multiple authorization attempt failures which occurring 90 days
        after the last successful authorization.  The grace period
        continues until the grace period expires - 90 days after the
        grace period starts.

        Counted License: Limits the number of similar entities that can
        consume a license. For example, a counted    license when used
        by a feature can limit the number of
        IP phones that can connect or the number of tunnels that can be
        created.

        Evaluation License: An Evaluation License grants the
        right to a customer to enable functionality of a product
        instance before registering it and without an explicit portal
        based license for a limited amount of time.  This amount of time
        ranges on average between 60 to 90 days.  Evaluation licenses
        are available for most functionality, but may be limited  for a
        variety of 
        reasons such as legal, royalty, regulatory, or other
        causes.

        This MIB module also defines various notifications that
        will be triggered to asynchronously notify the management
        application of any critical events."
    REVISION        "201604050000Z"
    DESCRIPTION
        "Initial Version of Cisco Smart Licensing MIB"
    ::= { ciscoMgmt 831 }


-- Textual Conventions definition will be defined before this line
--   
-- Smart License MIB Objects

ciscoSlaMIBObjects  OBJECT IDENTIFIER
    ::= { ciscoSmartLicMIB 0 }


-- Smart License General Information

ciscoSlaInstanceId OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates the smart licence agent's instance
        number." 
    ::= { ciscoSlaMIBObjects 1 }

ciscoSlaSUDIInfo OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates the device identifier information" 
    ::= { ciscoSlaMIBObjects 2 }

ciscoSlaVersion OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates the smart licensing version information
        in the below shown sample format.
        sample format: Cisco Smart Licensing Agent, Version 1.1.0_290" 
    ::= { ciscoSlaMIBObjects 3 }

ciscoSlaEnabled OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates whether the smart licensing mode is
        enabled. A value of 'true' indicates the mode is enabled." 
    ::= { ciscoSlaMIBObjects 4 }
-- - Smart License Entitlements

ciscoSlaEntitlementInfo  OBJECT IDENTIFIER
    ::= { ciscoSlaMIBObjects 5 }

-- Smart License Entitlements Table

ciscoSlaEntitlementInfoTable OBJECT-TYPE
    SYNTAX          SEQUENCE OF CiscoSlaEntitlementInfoEntry 
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "This table contains information about all entitlements being
        requested from this device"
    ::= { ciscoSlaEntitlementInfo 1 }

ciscoSlaEntitlementInfoEntry OBJECT-TYPE
    SYNTAX          CiscoSlaEntitlementInfoEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "An entry in ciscoSlaEntitlementInfoEntry. Each entry contains
        information about a entitlement requested on the device. This
        entry gets created when a license is requested successfully.
        Management application can not create these entries directly"
    INDEX           { ciscoSlaEntitlementInfoIndex } 
    ::= { ciscoSlaEntitlementInfoTable 1 }

CiscoSlaEntitlementInfoEntry ::= SEQUENCE {
        ciscoSlaEntitlementInfoIndex    Unsigned32,
        ciscoSlaEntitlementRequestCount Unsigned32,
        ciscoSlaEntitlementTag          SnmpAdminString,
        ciscoSlaEntitlementVersion      SnmpAdminString,
        ciscoSlaEntitlementEnforceMode  INTEGER,
        ciscoSlaEntitlementDescription  SnmpAdminString,
        ciscoSlaEntitlementFeatureName  SnmpAdminString
}

ciscoSlaEntitlementInfoIndex OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "This object uniquely identifies an entitlement record" 
    ::= { ciscoSlaEntitlementInfoEntry 1 }

ciscoSlaEntitlementRequestCount OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Number of count that was requested for this entitlement tag. A
        value of 'zero' indicates that this entitlement is
        not in use." 
    ::= { ciscoSlaEntitlementInfoEntry 2 }

ciscoSlaEntitlementTag OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The tag name for the entitlement in use.
        This is abbreviated form of the entitlement tag." 
    ::= { ciscoSlaEntitlementInfoEntry 3 }

ciscoSlaEntitlementVersion OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates the entitlement version." 
    ::= { ciscoSlaEntitlementInfoEntry 4 }

ciscoSlaEntitlementEnforceMode OBJECT-TYPE
    SYNTAX          INTEGER  {
                        initialized(1), -- Initialized
                        waiting(2), -- The initial state after an
                                    -- entitlement request while the
                                    -- device iswaiting for the
                                    -- authorization request
                                    -- response. In
                                    -- this modethe device
                                    -- will already
                                    -- have established
                                    -- communication
                                    -- with Cisco And successfully
                                    -- registeredwith Cisco
                                    -- Licensing
                                    -- Cloud
                        authorized(3), -- The Cisco Licensing
                                       -- Authority
                                       -- has responded that the
                                       -- entitlement requested is in
                                       -- compliance
                        outOfCompliance(4), -- The agent has
                                            -- received an
                                            -- out of compliance
                                            -- status
                                            -- in  response to an
                                            -- entitlement
                                            -- authorization
                                            -- request to the Cisco
                                            -- licensing authority.
                                            -- The customer
                                            -- is out of
                                            -- compliance with  their
                                            -- contract. They have
                                            -- either used too many
                                            -- licenses/entitlements or
                                            -- they are not authorized
                                            -- to  use a particular
                                            -- entitlement tag.
                        overage(5), -- The entitlement is in overage.
                                    -- This is informational only. No
                                    -- enforcement action should be
                                    -- taken. The customer is still in
                                    -- compliance but within
                                    -- the allowed
                                    -- overageamount as specified in
                                    -- their contract.
                        evaluationPeriod(6), -- The agent is using the
                                             -- evaluation period for
                                             -- this entitlement.
                                             -- In this mode
                                             -- the device has not
                                             -- established
                                             -- communication
                                             -- with Cisco and had not
                                             -- registered.
                        evaluationExpired(7), -- Evaluation period has
                                              -- expired.
                        gracePeriod(8), -- The grace period is in use.
                                        -- This will occur if the device
                                        -- has not been able to
                                        -- communicate with Cisco for an
                                        -- extended period of time
                                        -- usually 90 days. The grace
                                        -- period is also 
                                        -- usually 90 days.
                        gracePeriodExpired(9), -- The grace period has
                                               -- expired. This means
                                               -- the device has not
                                               -- contacted
                                               -- Cisco for about 180
                                               -- days.
                        disabled(10), -- Smart Licensing has been
                                      -- deactivated or disabled. The
                                      -- application should disable the
                                      -- feature using this entitlement.
                        invalidTag(11) -- The entitlement tag is
                                       -- invalid. The Licensing
                                       -- backend at Cisco
                                       -- does not recognize the
                                       -- entitlement tag because 
                                       -- it is 
                                       -- not in the database.
                    }
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates the enforce mode for the entitlement tag.

        In Entitlement notifications this will indicate the
        enforcement mode of an individual entitlement.
        In global notifications this indicates the overall
        enforcement mode in the agent." 
    ::= { ciscoSlaEntitlementInfoEntry 5 }

ciscoSlaEntitlementDescription OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates the description for the entitlements.
        This value is only available after the agent receives a
        response from CSSM to an Authorization request. If the
        description is unknown this object will contain a null string." 
    ::= { ciscoSlaEntitlementInfoEntry 6 }

ciscoSlaEntitlementFeatureName OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This value is the short feature name for the entitlement and is
        only available after the agent receives a response from CSSM to
        an Authorization request. If its value is unknown this object
        will contain a null string." 
    ::= { ciscoSlaEntitlementInfoEntry 7 }
 

-- - Smart License Registration

ciscoSlaRegistrationStatusInfo  OBJECT IDENTIFIER
    ::= { ciscoSlaMIBObjects 6 }


ciscoSlaRegistrationStatus OBJECT-TYPE
    SYNTAX          INTEGER  {
                        notRegistered(1), -- Smart Agent not registered
                        registrationInProgress(2), -- Smart Agent
                                                   -- Registration is in
                                                   -- Progress
                        registrationFailed(3), -- Smart Agent
                                               -- Registration Failed
                        registrationRetryinProgress(4), -- Smart Agent
                                                        -- registration
                                                        -- retry in
                                                        -- Progress
                        registrationCompleted(5) -- Smart Agent 
                                                 -- registration
                                                 -- completed.
                    }
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Smart Agent Registration Status. This is the status of the
        registration  initiated using the token generated from the
        Cisco
        Licensing portal." 
    ::= { ciscoSlaRegistrationStatusInfo 1 }

ciscoSlaVirtualAccount OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The virtual account name created in the Licensing Portal to
        which this device will be registered." 
    ::= { ciscoSlaRegistrationStatusInfo 2 }

ciscoSlaNextCertificateExpireTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The next expiration date/time of ID Certificate in UTC epoch
        seconds." 
    ::= { ciscoSlaRegistrationStatusInfo 3 }

ciscoSlaEnterpriseAccountName OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The enterprise account name as configured in the Cisco
        Licensing Portal." 
    ::= { ciscoSlaRegistrationStatusInfo 4 }
-- Initial Registration Times

ciscoSlaRegisterTime  OBJECT IDENTIFIER
    ::= { ciscoSlaRegistrationStatusInfo 5 }


ciscoSlaRegisterInitTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Time in UTC epoch seconds when the Registration of the Smart
        Agent
        was initialized." 
    ::= { ciscoSlaRegisterTime 1 }

ciscoSlaRegisterSuccess OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Status of the last attempted Registration of Smart Agent" 
    ::= { ciscoSlaRegisterTime 2 }

ciscoSlaRegisterFailureReason OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Reason for the failure of the last Registration Attempt" 
    ::= { ciscoSlaRegisterTime 3 }

ciscoSlaRegisterNextRetryTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Time in UTC epoch seconds when the next registration attempt
        will be made." 
    ::= { ciscoSlaRegisterTime 4 }
-- Renew Registration Times

ciscoSlaRenewTime  OBJECT IDENTIFIER
    ::= { ciscoSlaRegistrationStatusInfo 6 }


ciscoSlaRenewInitTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Time in UTC epoch seconds when the ID Cert renewal was
        initialized" 
    ::= { ciscoSlaRenewTime 1 }

ciscoSlaRenewSuccess OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Status of Renewal of ID Certificate" 
    ::= { ciscoSlaRenewTime 2 }

ciscoSlaRenewFailureReason OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Reason for the failure of the last attempted ID Cert Renewal" 
    ::= { ciscoSlaRenewTime 3 }

ciscoSlaRenewNextRetryTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Time in UTC epoch seconds when the next ID Cert  renewal will
        be tried." 
    ::= { ciscoSlaRenewTime 4 }
-- - Authorization Info

ciscoSlaAuthorizationInfo  OBJECT IDENTIFIER
    ::= { ciscoSlaMIBObjects 7 }


ciscoSlaAuthExpireTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The time in UTC epoch seconds  when the authorization will
        expire if
        not renewed" 
    ::= { ciscoSlaAuthorizationInfo 1 }

ciscoSlaAuthComplianceStatus OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Overall enforcement status of Smart Licensing in the device." 
    ::= { ciscoSlaAuthorizationInfo 2 }

ciscoSlaAuthOOCStartTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The  time in UTC epoch seconds Smart Agent entered Out of
        Compliance state for this
        device." 
    ::= { ciscoSlaAuthorizationInfo 3 }
-- Authorization Info Eval Period

ciscoSlaAuthEvalPeriod  OBJECT IDENTIFIER
    ::= { ciscoSlaAuthorizationInfo 4 }


ciscoSlaAuthEvalPeriodInUse OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Indicates if the Evaluation Period is in Use or not" 
    ::= { ciscoSlaAuthEvalPeriod 1 }

ciscoSlaAuthEvalExpiredTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Time in UTC epoch seconds  when the Evaluation Period had
        expired." 
    ::= { ciscoSlaAuthEvalPeriod 2 }

ciscoSlaAuthEvalPeriodLeft OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Amount of Time left in the Evaluation Period" 
    ::= { ciscoSlaAuthEvalPeriod 3 }
-- Authorization Renewal

ciscoSlaAuthRenewTime  OBJECT IDENTIFIER
    ::= { ciscoSlaAuthorizationInfo 5 }


ciscoSlaAuthRenewInitTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Smart Agent Authorization Renewal Initialization Time in UTC
        epoch seconds" 
    ::= { ciscoSlaAuthRenewTime 1 }

ciscoSlaAuthRenewSuccess OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates the authorization renewal status. A
        value of 'true' indicates the renewal was successful." 
    ::= { ciscoSlaAuthRenewTime 2 }

ciscoSlaAuthRenewFailureReason OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object indicates the reason for the failure of the last
        renewal request." 
    ::= { ciscoSlaAuthRenewTime 3 }

ciscoSlaAuthRenewNextRetryTime OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Time in UTC epoch seconds when the next renewal will be
        retried." 
    ::= { ciscoSlaAuthRenewTime 4 }
-- - Notification Objects

ciscoSlaNotifObjects  OBJECT IDENTIFIER
    ::= { ciscoSlaMIBObjects 8 }


ciscoSlaGlobalNotifEnable OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
        "This object indicates whether the device should generate
        the global notifications related to Smart Agent. This object
        enables/disables sending following notifications:
         ciscoSlaSmartAgentNotifyEnforcementMode,
         ciscoSlaSmartAgentNotifyReady,
         ciscoSlaSmartAgentNotifyEnabled,
         ciscoSlaSmartAgentNotifyDisabled,                            
         ciscoSlaSmartAgentNotifyRegisterFailed,                       
         ciscoSlaSmartAgentNotifyRegisterSuccess,                       
         ciscoSlaSmartAgentNotifyIdCertExpired,                       
         ciscoSlaSmartAgentNotifyIdCertRenewSuccess,
         ciscoSlaSmartAgentNotifyIdCertRenewFail,                      
         ciscoSlaSmartAgentNotifyAuthRenewSuccess,                      
         ciscoSlaSmartAgentNotifyAuthRenewFail,                       
         ciscoSlaSmartAgentNotifyCommunicationFailure,
         ciscoSlaSmartAgentNotifyCommunicationRestored,              
         ciscoSlaSmartAgentNotifyIdCertRenewNotStarted,         
         ciscoSlaSmartAgentNotifyIdCertOutOfRange,         
         ciscoSlaSmartAgentNotifySystemClockChanged,       
         ciscoSlaSmartAgentNotifyEvalExpiryWarning,      
         ciscoSlaSmartAgentNotifyEvalExpired,           
         ciscoSlaSmartAgentNotifyIdCertExpiryWarning"
    DEFVAL          { true } 
    ::= { ciscoSlaNotifObjects 1 }

ciscoSlaEntitlementNotifEnable OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
        "This object indicates whether the device should generate
        the  notifications related to entitlement enforce mode in Smart
        Agent. This object
        enables/disables sending following notifications:
        ciscoSlaSmartAgentNotifyEntitlementEnforceMode"
    DEFVAL          { true } 
    ::= { ciscoSlaNotifObjects 2 }
-- Smart License MIB Notify

ciscoSlaMIBNotifs  OBJECT IDENTIFIER
    ::= { ciscoSmartLicMIB 1 }


ciscoSlaSmartAgentNotifyEnforcementMode NOTIFICATION-TYPE
    OBJECTS         {
                        ciscoSlaSUDIInfo,
                        ciscoSlaEntitlementEnforceMode
                    }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when the overall
        enforcement mode in the agent changes."
   ::= { ciscoSlaMIBNotifs 1 }

ciscoSlaSmartAgentNotifyReady NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when the Smart agent is
        initialized and ready."
   ::= { ciscoSlaMIBNotifs 2 }

ciscoSlaSmartAgentNotifyEnabled NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart licensing has
        been enabled."
   ::= { ciscoSlaMIBNotifs 3 }

ciscoSlaSmartAgentNotifyDisabled NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart licensing has
        been disabled"
   ::= { ciscoSlaMIBNotifs 4 }

ciscoSlaSmartAgentNotifyRegisterFailed NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart licensing
        registration with Cisco Software Manager has failed"
   ::= { ciscoSlaMIBNotifs 5 }

ciscoSlaSmartAgentNotifyRegisterSuccess NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when smart licensing
        registration with Cisco Software Manager has succeeded."
   ::= { ciscoSlaMIBNotifs 6 }

ciscoSlaSmartAgentNotifyIdCertExpired NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart licensing ID
        (node) certificate has expired"
   ::= { ciscoSlaMIBNotifs 7 }

ciscoSlaSmartAgentNotifyIdCertRenewSuccess NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart licensing ID
        (node) certificate renewal has succeded."
   ::= { ciscoSlaMIBNotifs 8 }

ciscoSlaSmartAgentNotifyIdCertRenewFail NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart licensing ID
        (node) certificate renewal has failed."
   ::= { ciscoSlaMIBNotifs 9 }

ciscoSlaSmartAgentNotifyAuthRenewSuccess NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart licensing
        entitlement (AUTH) renew was successful."
   ::= { ciscoSlaMIBNotifs 10 }

ciscoSlaSmartAgentNotifyAuthRenewFail NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart licensing
        entitlement (AUTH) renew has failed"
   ::= { ciscoSlaMIBNotifs 11 }

ciscoSlaSmartAgentNotifyCommunicationFailure NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart Agent
        failed to communicate with CSSM."
   ::= { ciscoSlaMIBNotifs 12 }

ciscoSlaSmartAgentNotifyCommunicationRestored NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart Agent
        communication with CSSM has been restored"
   ::= { ciscoSlaMIBNotifs 13 }

ciscoSlaSmartAgentNotifyIdCertRenewNotStarted NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when Smart Agent
        Id (Node) certificate renewal is not started"
   ::= { ciscoSlaMIBNotifs 14 }

ciscoSlaSmartAgentNotifyEntitlementEnforceMode NOTIFICATION-TYPE
    OBJECTS         {
                        ciscoSlaEntitlementRequestCount,
                        ciscoSlaEntitlementTag,
                        ciscoSlaEntitlementVersion,
                        ciscoSlaEntitlementEnforceMode,
                        ciscoSlaSUDIInfo
                    }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when the enforcement
        mode of an entitlement has changed."
   ::= { ciscoSlaMIBNotifs 15 }

ciscoSlaSmartAgentNotifyIdCertOutOfRange NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when the ID certificate
        is out of the valid range after the system clock changed.
        It means the current time is either before the start time or
        after the end time of the certificate."
   ::= { ciscoSlaMIBNotifs 16 }

ciscoSlaSmartAgentNotifySystemClockChanged NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification when the system clock
        has changed."
   ::= { ciscoSlaMIBNotifs 17 }

ciscoSlaSmartAgentNotifyEvalExpiryWarning NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification to warn regarding the
        impending evaluation  time expiry."
   ::= { ciscoSlaMIBNotifs 18 }

ciscoSlaSmartAgentNotifyEvalExpired NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification to notify the expiration
        of the evaluation period."
   ::= { ciscoSlaMIBNotifs 19 }

ciscoSlaSmartAgentNotifyIdCertExpiryWarning NOTIFICATION-TYPE
    OBJECTS         { ciscoSlaSUDIInfo }
    STATUS          current
    DESCRIPTION
        "The device generates this notification to warn regarding the
        impending expiry of the id (node) certificate."
   ::= { ciscoSlaMIBNotifs 20 }
-- Smart License MIB Conformance Objects

ciscoSlaMIBConform  OBJECT IDENTIFIER
    ::= { ciscoSmartLicMIB 2 }

-- - Conformanc Compliance Objects

ciscoSlaMIBCompliances  OBJECT IDENTIFIER
    ::= { ciscoSlaMIBConform 1 }


ciscoSlaMIBCompliance MODULE-COMPLIANCE
    STATUS          current
    DESCRIPTION
        "Compliance statement for Cisco Smart license MIB."
    MODULE          -- this module
    MANDATORY-GROUPS {
                        ciscoSlaMIBEntitlementInfoGroup,
                        ciscoSlaMIBRegistrationStatusInfoGroup,
                        ciscoSlaMIBGlobalNotificationGroup,
                        ciscoSlaMIBAgentInfoGroup,
                        ciscoSlaMIBEntitlementNotifGroup,
                        ciscoSlaMIBNotificationEnableGroup,
                        ciscoSlaMIBAuthorizationInfoGroup
                    }
    ::= { ciscoSlaMIBCompliances 1 }
-- - Conformance Groups

ciscoSlaMIBGroups  OBJECT IDENTIFIER
    ::= { ciscoSlaMIBConform 2 }


ciscoSlaMIBEntitlementInfoGroup OBJECT-GROUP
    OBJECTS         {
                        ciscoSlaEntitlementRequestCount,
                        ciscoSlaEntitlementTag,
                        ciscoSlaEntitlementVersion,
                        ciscoSlaEntitlementEnforceMode,
                        ciscoSlaEntitlementFeatureName,
                        ciscoSlaEntitlementDescription
                    }
    STATUS          current
    DESCRIPTION
        "A collection of objects for Entitlements requested and their
        related information."
    ::= { ciscoSlaMIBGroups 1 }

ciscoSlaMIBRegistrationStatusInfoGroup OBJECT-GROUP
    OBJECTS         {
                        ciscoSlaRegistrationStatus,
                        ciscoSlaVirtualAccount,
                        ciscoSlaNextCertificateExpireTime,
                        ciscoSlaEnterpriseAccountName,
                        ciscoSlaRegisterInitTime,
                        ciscoSlaRegisterSuccess,
                        ciscoSlaRenewInitTime,
                        ciscoSlaRenewSuccess,
                        ciscoSlaRenewFailureReason,
                        ciscoSlaRenewNextRetryTime,
                        ciscoSlaRegisterFailureReason,
                        ciscoSlaRegisterNextRetryTime
                    }
    STATUS          current
    DESCRIPTION
        "A collection of objects representing the information regarding
        the registration status of the device."
    ::= { ciscoSlaMIBGroups 2 }

ciscoSlaMIBGlobalNotificationGroup NOTIFICATION-GROUP
   NOTIFICATIONS    {
                        ciscoSlaSmartAgentNotifyEnforcementMode,
                        ciscoSlaSmartAgentNotifyReady,
                        ciscoSlaSmartAgentNotifyEnabled,
                        ciscoSlaSmartAgentNotifyDisabled,
                        ciscoSlaSmartAgentNotifyRegisterFailed,
                        ciscoSlaSmartAgentNotifyRegisterSuccess,
                        ciscoSlaSmartAgentNotifyIdCertExpired,
                        ciscoSlaSmartAgentNotifyIdCertRenewSuccess,
                        ciscoSlaSmartAgentNotifyIdCertRenewFail,
                        ciscoSlaSmartAgentNotifyAuthRenewSuccess,
                        ciscoSlaSmartAgentNotifyAuthRenewFail,
                        ciscoSlaSmartAgentNotifyCommunicationFailure,
                        ciscoSlaSmartAgentNotifyCommunicationRestored,
                        ciscoSlaSmartAgentNotifyIdCertRenewNotStarted,
                        ciscoSlaSmartAgentNotifyIdCertOutOfRange,
                        ciscoSlaSmartAgentNotifySystemClockChanged,
                        ciscoSlaSmartAgentNotifyEvalExpiryWarning,
                        ciscoSlaSmartAgentNotifyEvalExpired,
                        ciscoSlaSmartAgentNotifyIdCertExpiryWarning
                    }
    STATUS          current
    DESCRIPTION
        "A collection of global notifications related to Smart   Agent"
    ::= { ciscoSlaMIBGroups 3 }

ciscoSlaMIBAgentInfoGroup OBJECT-GROUP
    OBJECTS         {
                        ciscoSlaVersion,
                        ciscoSlaEnabled,
                        ciscoSlaSUDIInfo,
                        ciscoSlaInstanceId
                    }
    STATUS          current
    DESCRIPTION
        "A collection of objects representing meta data related to Smart
        Agent state"
    ::= { ciscoSlaMIBGroups 4 }

ciscoSlaMIBEntitlementNotifGroup NOTIFICATION-GROUP
   NOTIFICATIONS    { ciscoSlaSmartAgentNotifyEntitlementEnforceMode }
    STATUS          current
    DESCRIPTION
        "A collection of  notifications related to entitlement enforce
        mode in SmartAgent"
    ::= { ciscoSlaMIBGroups 5 }

ciscoSlaMIBNotificationEnableGroup OBJECT-GROUP
    OBJECTS         {
                        ciscoSlaGlobalNotifEnable,
                        ciscoSlaEntitlementNotifEnable
                    }
    STATUS          current
    DESCRIPTION
        "A collection of objects for controlling
        (enabling/disabling) license notifications to a management
        application."
    ::= { ciscoSlaMIBGroups 6 }

ciscoSlaMIBAuthorizationInfoGroup OBJECT-GROUP
    OBJECTS         {
                        ciscoSlaAuthExpireTime,
                        ciscoSlaAuthComplianceStatus,
                        ciscoSlaAuthOOCStartTime,
                        ciscoSlaAuthRenewInitTime,
                        ciscoSlaAuthRenewSuccess,
                        ciscoSlaAuthRenewFailureReason,
                        ciscoSlaAuthRenewNextRetryTime,
                        ciscoSlaAuthEvalPeriodInUse,
                        ciscoSlaAuthEvalExpiredTime,
                        ciscoSlaAuthEvalPeriodLeft
                    }
    STATUS          current
    DESCRIPTION
        "A collection of MIB objects representing the Authorization
        State
        of the Smart Agent."
    ::= { ciscoSlaMIBGroups 7 }

END





























