-- *****************************************************************
-- INFINERA-CERT-PEERCERT
-- 
-- October 2016, Kavitha Manjunatha
--
--
-- Copyright (c) 2008-2012 by Infinera Inc.
-- All rights reserved.
-- ****************************************************************

INFINERA-CERT-PEERCERT-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE                FROM SNMPv2-SMI
    MODULE-COMPLIANCE, OBJECT-GROUP             FROM SNMPv2-CONF
    cert                                        FROM INFINERA-REG-MIB
    ifIndex                                     FROM IF-MIB
    DisplayString                               FROM SNMPv2-TC
    InfnX509Version, InfnX509Encoding,
    InfnX509Status                              FROM INFINERA-TC-MIB
    ;

peerCertMIB MODULE-IDENTITY
    LAST-UPDATED  "201610100000Z"
    ORGANIZATION
        "Infinera"
    CONTACT-INFO
        "Infinera
                1322 Bordeaux Drive
                Sunnyvale, CA - 94089

                Contact : Technical Support
                Email   : support@infinera.com
                Phone   : 1-877-INF-5288"
    DESCRIPTION
        " "

    REVISION  "201610100000Z"
    DESCRIPTION
        " "
::= { cert 2 }

peerCertTable  OBJECT-TYPE
    SYNTAX SEQUENCE OF PeerCertEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "A list of PeerCert entries. Each entry is uniquely identified by
                the value of ifIndex."
    ::= { peerCertMIB 1 }

peerCertEntry  OBJECT-TYPE
    SYNTAX     PeerCertEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "A peerCert entry containing information pertaining to Infinera peerCerts"
    INDEX { ifIndex }
    ::= { peerCertTable 1 }

PeerCertEntry  ::= SEQUENCE {
    peerCertMoId                    DisplayString,
    peerCertSerialNumber            DisplayString,
    peerCertVersion                 InfnX509Version,
    peerCertIssuer                  DisplayString,
    peerCertSubject                 DisplayString,
    peerCertValidFrom               DisplayString,
    peerCertValidTo                 DisplayString,
    peerCertEncoding                InfnX509Encoding,
    peerCertStatus                  InfnX509Status,
    peerCertPublicKeyAlgorithm      DisplayString,
    peerCertPublicKeyLength         Integer32,
    peerCertSignatureAlgorithm      DisplayString
}

peerCertMoId   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 1 }

peerCertSerialNumber   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 2 }

peerCertVersion   OBJECT-TYPE
    SYNTAX      InfnX509Version
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 3 }

peerCertIssuer   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 4 }

peerCertSubject   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 5 }

peerCertValidFrom   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 6 }

peerCertValidTo   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 7 }

peerCertEncoding   OBJECT-TYPE
    SYNTAX      InfnX509Encoding
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 8 }

peerCertStatus   OBJECT-TYPE
    SYNTAX      InfnX509Status
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 9 }

peerCertPublicKeyAlgorithm   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 10 }

peerCertPublicKeyLength   OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 11 }

peerCertSignatureAlgorithm   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { peerCertEntry 12 }

peerCertConformance   OBJECT IDENTIFIER ::= { peerCertMIB 2 }
peerCertCompliances   OBJECT IDENTIFIER ::= { peerCertConformance 1 }
peerCertGroups        OBJECT IDENTIFIER ::= { peerCertConformance 2 }

peerCertCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
    "Describes the requirements for conformance to the BPP-MIB"
    MODULE
        MANDATORY-GROUPS { peerCertGroup }
    ::= { peerCertCompliances 1 }

peerCertGroup OBJECT-GROUP
    OBJECTS {
        peerCertMoId,
        peerCertSerialNumber,
        peerCertVersion,
        peerCertIssuer,
        peerCertSubject,
        peerCertValidFrom,
        peerCertValidTo,
        peerCertEncoding,
        peerCertStatus,
        peerCertPublicKeyAlgorithm,
        peerCertPublicKeyLength,
        peerCertSignatureAlgorithm
}
    STATUS current
    DESCRIPTION
        " A collection of objects for managing the peerCerts"
    ::= { peerCertGroups 1 }

END
