-- =========================================================================
-- Copyright (c) 2010-2013 Hewlett-Packard Development Company, L.P.
--
-- Description: RSA MIB
-- Reference:
-- Version: V1.1
-- History:
--  V1.0 2004-09-17 created by Yang Yang 02227
--    Initial Version
--  V1.1 2005-05-31 updated by gaolong
--    Change module of this MIB
-- =========================================================================
HPN-ICF-RSA-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        hpnicfCommon
            FROM HPN-ICF-OID-MIB
        IpAddress,Integer32, OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE
            FROM SNMPv2-SMI
        DisplayString, RowStatus, DateAndTime, TEXTUAL-CONVENTION
            FROM SNMPv2-TC;


        hpnicfRSA MODULE-IDENTITY
            LAST-UPDATED "200410100000Z"
            ORGANIZATION
                ""
            CONTACT-INFO
                ""
            DESCRIPTION
                "The HPN-ICF-RSA-MIB contains objects to Manage
                RSA configuration."
            REVISION "200410100000Z"
            DESCRIPTION
                "The initial revision of RSA module."
            ::= { hpnicfCommon 23 }


        RSAKeyErrorCode ::= TEXTUAL-CONVENTION
                 STATUS current
                 DESCRIPTION
                         "Indicates the reason that SSH peer public key fails to config
                         or that SSH local key pair fails to create/refresh/destroy."
                 SYNTAX INTEGER
                         {
                        rsaSuccess(1),
                        rsaFailure(2),
                        rsaErrNoMemory(3),
                        rsaErrKeyNotReplaced(4),
                        rsaErrKeyBackup(5),
                        rsaErrKeySaved(6),
                        rsaErrKeyGenerate(7),
                        rsaErrKeyDestroy(8),
                        rsaErrHostEncKeyBackup(9),
                        rsaErrHostEncKeySave(10),
                        rsaErrHostEncKeyGenerate(11),
                        rsaErrHostEncKeyDestroy(12),
                        rsaErrHostSigKeyBackup(13),
                        rsaErrHostSigKeySave(14),
                        rsaErrHostSigKeyGenerate(15),
                        rsaErrHostSigKeyDestroy(16),
                        rsaErrServerKeyBackup(17),
                        rsaErrServerKeySave(18),
                        rsaErrServerKeyGenerate(19),
                        rsaErrServerKeyDestroy(20),
                        rsaErrPeerKeyNotReplaced(21),
                        rsaErrPeerKeyNumArriveMax(22),
                        rsaErrPeerKeyNotRemoved(23),
                        rsaErrPeerKeyNotExist(24),
                        rsaStatusKeyExist(25),
                        rsaStatusKeyNotExist(26),
                        rsaStatusKeyInvalid(27),
                        rsaStatusHostEncKeyExist(28),
                        rsaStatusHostEncKeyNotExist(29),
                        rsaStatusHostEncKeyInvalid(30),
                        rsaStatusHostSigKeyExist(31),
                        rsaStatusHostSigKeyNotExist(32),
                        rsaStatusHostSigKeyInvalid(33),
                        rsaStatusServerKeyExist(34),
                        rsaStatusServerKeyNotExist(35),
                        rsaStatusServerKeyInvalid(36)
                        }

        hpnicfRSAMIBObjects OBJECT IDENTIFIER ::= { hpnicfRSA 1 }
        hpnicfRSAPeerPublicKeyTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HpnicfRSAPeerPublicKeyEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The (conceptual) RSA Peer Public Key Table"
            ::= { hpnicfRSAMIBObjects 1 }


        hpnicfRSAPeerPublicKeyEntry OBJECT-TYPE
            SYNTAX HpnicfRSAPeerPublicKeyEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "An entry (conceptual row) in the RSA Peer Public Key Table."
            INDEX { hpnicfRSAPeerPublicKeyName }
            ::= { hpnicfRSAPeerPublicKeyTable 1 }


        HpnicfRSAPeerPublicKeyEntry ::=
            SEQUENCE {
                hpnicfRSAPeerPublicKeyName
                    OCTET STRING,
                hpnicfRSAPeerIpAddress
                    IpAddress,
                hpnicfRSAPeerFQDN
                    DisplayString,
                hpnicfRSAPeerPublicKeyCode
                    OCTET STRING,
                hpnicfRSAPeerPublicKeyStatus
                    RowStatus
             }

        hpnicfRSAPeerPublicKeyName OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..64))
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The RSA peer public key name."
            ::= { hpnicfRSAPeerPublicKeyEntry 1 }

        hpnicfRSAPeerIpAddress OBJECT-TYPE
            SYNTAX IpAddress
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Indicates the IP Address of RSA Peer machine."
            ::= { hpnicfRSAPeerPublicKeyEntry 2 }

        hpnicfRSAPeerFQDN OBJECT-TYPE
            SYNTAX DisplayString
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The Full Qualified Domain Name of RSA Peer Machine"
            ::= { hpnicfRSAPeerPublicKeyEntry 3 }


        hpnicfRSAPeerPublicKeyCode OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (1..1024))
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The code of RSA peer public key."
            ::= { hpnicfRSAPeerPublicKeyEntry 4 }


        hpnicfRSAPeerPublicKeyStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The status of this RSA peer public key entry.
                Support Active Status and CreateAndGo and Destroy Operation "
            ::= { hpnicfRSAPeerPublicKeyEntry 5 }

        hpnicfRSALocalKeyPairTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HpnicfRSALocalKeyPairEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The (conceptual)RSA local Key Pair Table."
            ::= { hpnicfRSAMIBObjects 2 }


        hpnicfRSALocalKeyPairEntry OBJECT-TYPE
            SYNTAX HpnicfRSALocalKeyPairEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "An entry (conceptual row) in the RSA local Key Pair Table."
            INDEX { hpnicfRSALocalKeyIndex }
            ::= { hpnicfRSALocalKeyPairTable 1 }


        HpnicfRSALocalKeyPairEntry ::=
            SEQUENCE {
                hpnicfRSALocalKeyIndex
                    INTEGER,
                hpnicfRSALocalHostKeyName
                    DisplayString,
                hpnicfRSALocalHostKeyCode
                    OCTET STRING,
                hpnicfRSALocalHostKeyCreatedTime
                    DateAndTime,
                hpnicfRSALocalServerKeyName
                    DisplayString,
                hpnicfRSALocalServerKeyCode
                    OCTET STRING,
                hpnicfRSALocalServerKeyCreatedTime
                    DateAndTime,
                hpnicfRSALocalKeyPairBits
                    Integer32,
                hpnicfRSALocalKeyStatus
                    RowStatus
             }

        hpnicfRSALocalKeyIndex  OBJECT-TYPE
            SYNTAX INTEGER (1..1)
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "The hpnicfRSALocalKeyPairTable Table can only exist one entry at most."
            ::= { hpnicfRSALocalKeyPairEntry 1 }

        hpnicfRSALocalHostKeyName OBJECT-TYPE
            SYNTAX DisplayString
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Indicates RSA Host local public key name.Its value is composed of systemname, a
                underscore and the string of 'Host'"
            ::= { hpnicfRSALocalKeyPairEntry 2 }

        hpnicfRSALocalHostKeyCode OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (512..1024))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Indicates the code of RSA Host local pkey  that the length is
                between 512 and 2048 bits."
            ::= { hpnicfRSALocalKeyPairEntry 3 }

        hpnicfRSALocalHostKeyCreatedTime OBJECT-TYPE
            SYNTAX DateAndTime
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Indicates the created time of RSA local Host key."
            ::= { hpnicfRSALocalKeyPairEntry 4 }

        hpnicfRSALocalServerKeyName OBJECT-TYPE
            SYNTAX DisplayString
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Indicates RSA Host local public key name.Its value is composed of systemname, a
                underscore and the string of 'Server'"
            ::= { hpnicfRSALocalKeyPairEntry 5 }

        hpnicfRSALocalServerKeyCode OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (512..1024))
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Indicates the code of RSA Host local pkey  that the length is
                between 512 and 2048 bits."
            ::= { hpnicfRSALocalKeyPairEntry 6 }

        hpnicfRSALocalServerKeyCreatedTime OBJECT-TYPE
            SYNTAX DateAndTime
            MAX-ACCESS read-only
            STATUS current
            DESCRIPTION
                "Indicates the created time of RSA local Host key."
            ::= { hpnicfRSALocalKeyPairEntry 7 }


        hpnicfRSALocalKeyPairBits OBJECT-TYPE
            SYNTAX Integer32 (512..2048)
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The bits of RSA local key pair, ranging between 512 and 2048.
                 By default, the value is 512."
            DEFVAL { 512 }
            ::= { hpnicfRSALocalKeyPairEntry 8 }


        hpnicfRSALocalKeyStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The status column used for creating, deleting instances of
                the columnar objects in the hpnicfRSALocalKeyPairTable table."
            ::= { hpnicfRSALocalKeyPairEntry 9 }


        hpnicfRSAPeerKeyConfigFailReason OBJECT-TYPE
            SYNTAX RSAKeyErrorCode
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "The reason that RSA peer public key fails to config."
            ::= { hpnicfRSAMIBObjects 3 }


        hpnicfRSALocalKeyFailReason OBJECT-TYPE
            SYNTAX RSAKeyErrorCode
            MAX-ACCESS accessible-for-notify
            STATUS current
            DESCRIPTION
                "The reason that RSA local key pair fails to create, refresh
                and destroy."
            ::= { hpnicfRSAMIBObjects 4 }

        hpnicfRSANotifications OBJECT IDENTIFIER ::= { hpnicfRSA 2 }

        hpnicfRSALocalKeyPairOpeFail NOTIFICATION-TYPE
            OBJECTS { hpnicfRSALocalKeyFailReason }
            STATUS current
            DESCRIPTION
                "The trap is generated while the RSA local key pair fails to
                create, refresh and destory."
            ::= { hpnicfRSANotifications 1 }

        hpnicfRSAPeerKeyConfigFail NOTIFICATION-TYPE
            OBJECTS { hpnicfRSAPeerKeyConfigFailReason }
            STATUS current
            DESCRIPTION
                "The trap is generated while the RSA peer public key fails to
                configure."
            ::= { hpnicfRSANotifications 2 }
    END
