     -- =================================================================
-- Copyright (C) 2019 by  HUAWEI TECHNOLOGIES. All rights reserved
-- 
-- Description: HUAWEI Private Extended SNMP MIB
-- 
-- Reference:
-- Version:     V2.01
-- History:
-- 
-- =================================================================

HUAWEI-SSL-MIB DEFINITIONS ::= BEGIN
 
    IMPORTS           
        hwDatacomm            
            FROM HUAWEI-MIB
        OBJECT-GROUP, MODULE-COMPLIANCE, NOTIFICATION-GROUP
            FROM SNMPv2-CONF   
        DateAndTime                        
            FROM SNMPv2-TC         
        IpAddress, Integer32, OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE           
            FROM SNMPv2-SMI;   

    hwSSL MODULE-IDENTITY   
        LAST-UPDATED "201912092100Z"        -- Dec 4, 2019 at 21:00 GMT
        ORGANIZATION
             "Huawei Technologies Co.,Ltd."
        CONTACT-INFO 
             "Huawei Industrial Base
               Bantian, Longgang
                Shenzhen 518129
                People's Republic of China
                Website: http://www.huawei.com
                Email: support@huawei.com
              "
        DESCRIPTION 
            "
            Some attribute of vnfc content.
            "
	    REVISION    "201912092100Z"
		    DESCRIPTION "add ssl alarm clear."
        REVISION    "201903042100Z"
		    DESCRIPTION "add ssl alarm clear."
	    REVISION    "201707130900Z"
		    DESCRIPTION "V1.00, completed the draft."
             
       ::= { hwDatacomm 350 }  
       
        hwSSLObjects OBJECT IDENTIFIER ::= { hwSSL 1 }        
                
       
        -- 1.3.6.1.4.1.2011.5.25.350.1.1
        hwSSLCertificateInfoTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwSSLCertificateInfoEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "This table is used to display Certificate File Info."
            ::= { hwSSLObjects 1 }

        
        -- 1.3.6.1.4.1.2011.5.25.350.1.1.1
        hwSSLCertificateInfoEntry OBJECT-TYPE
            SYNTAX HwSSLCertificateInfoEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "This table describes information about Certificate File Info."
            INDEX { hwSSLCertificateName }
            ::= { hwSSLCertificateInfoTable 1 }

        
        HwSSLCertificateInfoEntry ::=
            SEQUENCE { 
                hwSSLCertificateName
                    OCTET STRING,
                hwSSLCertificateType
                    OCTET STRING,
                hwSSLCertificateBeginTime
                    DateAndTime,
                hwSSLCertificateEndTime
                    DateAndTime
             }

        -- 1.3.6.1.4.1.2011.5.25.350.1.1.1.1
        hwSSLCertificateName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..255))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the name of the Certificate File."
            ::= { hwSSLCertificateInfoEntry 1 }

        -- 1.3.6.1.4.1.2011.5.25.350.1.1.1.2
        hwSSLCertificateType OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..255))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the type of the Certificate File."
            ::= { hwSSLCertificateInfoEntry 2 }

        -- 1.3.6.1.4.1.2011.5.25.350.1.1.1.3
        hwSSLCertificateBeginTime OBJECT-TYPE
            SYNTAX DateAndTime
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the begin time of the Certificate File."
            ::= { hwSSLCertificateInfoEntry 3 }
        
        -- 1.3.6.1.4.1.2011.5.25.350.1.1.1.4
        hwSSLCertificateEndTime OBJECT-TYPE
            SYNTAX DateAndTime
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the end time of the Certificate File."
            ::= { hwSSLCertificateInfoEntry 4 }
            
        -- 1.3.6.1.4.1.2011.5.25.350.1.2
        hwSSLCipherSuitInfoTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwSSLCipherSuitInfoEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "This table is used to check cipher suites."
            ::= { hwSSLObjects 2 }

        
        -- 1.3.6.1.4.1.2011.5.25.350.1.2.1
        hwSSLCipherSuitInfoEntry OBJECT-TYPE
            SYNTAX HwSSLCipherSuitInfoEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
               "This table describes information about cipher suites."
            INDEX { hwSSLPolicyName }
            ::= { hwSSLCipherSuitInfoTable 1 }

        
        HwSSLCipherSuitInfoEntry ::=
            SEQUENCE { 
                hwSSLPolicyName
                    OCTET STRING,
                hwSSLCipherListName
                    OCTET STRING,
                hwSSLInsecureCipher
                    OCTET STRING
             }

        -- 1.3.6.1.4.1.2011.5.25.350.1.2.1.1
        hwSSLPolicyName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..23))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the name of an SSL policy."
            ::= { hwSSLCipherSuitInfoEntry 1 }

        -- 1.3.6.1.4.1.2011.5.25.350.1.2.1.2
        hwSSLCipherListName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..32))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the name of a cipher suite list."
            ::= { hwSSLCipherSuitInfoEntry 2 }

        -- 1.3.6.1.4.1.2011.5.25.350.1.2.1.3
        hwSSLInsecureCipher OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..255))
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "This object indicates the list of insecure cipher suites."
            ::= { hwSSLCipherSuitInfoEntry 3 }        
            
        hwSSLNotification      OBJECT IDENTIFIER ::= { hwSSL 2 }

        hwSSLCertificateExpired NOTIFICATION-TYPE
            OBJECTS { hwSSLCertificateName, hwSSLCertificateType, hwSSLCertificateBeginTime, hwSSLCertificateEndTime }
            STATUS  current			    	 
            DESCRIPTION
                "SSL Certificate Key file is Expired."
            ::= { hwSSLNotification 1 }    
					
        hwSSLCertificateExpiredEarlyWarning NOTIFICATION-TYPE
            OBJECTS { hwSSLCertificateName, hwSSLCertificateType, hwSSLCertificateBeginTime, hwSSLCertificateEndTime }
            STATUS  current			    	 
            DESCRIPTION
                "SSL Certificate Key file Will be Expired."
            ::= { hwSSLNotification 2 }

        hwSSLCertificateExpiredClear NOTIFICATION-TYPE
            OBJECTS { hwSSLCertificateName, hwSSLCertificateType, hwSSLCertificateBeginTime, hwSSLCertificateEndTime }
            STATUS  current			    	 
            DESCRIPTION
                "The alarm about certificate expiration is cleared."
            ::= { hwSSLNotification 3 }    
					
        hwSSLCertificateExpiredEarlyWarningClear NOTIFICATION-TYPE
            OBJECTS { hwSSLCertificateName, hwSSLCertificateType, hwSSLCertificateBeginTime, hwSSLCertificateEndTime }
            STATUS  current			    	 
            DESCRIPTION
                "The alarm that the certificate is to expire is cleared."
            ::= { hwSSLNotification 4 }
            
        hwSSLInsecureCipherSuit NOTIFICATION-TYPE
            OBJECTS { hwSSLPolicyName, hwSSLCipherListName, hwSSLInsecureCipher }
            STATUS  current			    	 
            DESCRIPTION
                "The insecure cipher suits."
            ::= { hwSSLNotification 5 }    
					
        hwSSLInsecureCipherSuitClear NOTIFICATION-TYPE
            OBJECTS { hwSSLPolicyName, hwSSLCipherListName, hwSSLInsecureCipher }
            STATUS  current			    	 
            DESCRIPTION
                "The alarm about insecure cipher suites was cleared."
            ::= { hwSSLNotification 6 }    
-- Conformance information       
     
      hwSSLConformance OBJECT IDENTIFIER ::= { hwSSL 3 }        

      hwSSLCompliances OBJECT IDENTIFIER ::= { hwSSLConformance 1 }

      hwSSLCompliance MODULE-COMPLIANCE
          STATUS current
          DESCRIPTION 
              "The compliance statement for systems supporting 
              the HUAWEI-SSL-MIB."
          MODULE HUAWEI-SSL-MIB
              MANDATORY-GROUPS { hwSSLNotificationGroup, hwSSLGroup }
          ::= { hwSSLCompliances 1 }

      hwSSLGroups OBJECT IDENTIFIER ::= { hwSSLConformance 2 }
		
      -- 1.3.6.1.4.1.2011.5.25.350.3.2.1
      hwSSLGroup OBJECT-GROUP
          OBJECTS { hwSSLCertificateName, hwSSLCertificateType, hwSSLCertificateBeginTime, hwSSLCertificateEndTime, hwSSLPolicyName, hwSSLCipherListName, hwSSLInsecureCipher }
          STATUS current
          DESCRIPTION 
            "The SSL's group."
            ::= { hwSSLGroups 1 }

      hwSSLNotificationGroup NOTIFICATION-GROUP
          NOTIFICATIONS { hwSSLCertificateExpired, hwSSLCertificateExpiredEarlyWarning, hwSSLCertificateExpiredClear, hwSSLCertificateExpiredEarlyWarningClear, hwSSLInsecureCipherSuit, hwSSLInsecureCipherSuitClear }
          STATUS current
          DESCRIPTION 
              "The collection of notifications in the module."
          ::= { hwSSLGroups 2 }                  
            
END
--
-- HUAWEI-SSL-MIB.mib
--
