-- ============================================================================
-- Copyright (c) 2004-2017 Hangzhou H3C Tech. Co., Ltd. All rights reserved.
--
-- Description:
-- Reference:
-- Version: V1.0
-- History:
-- V1.0 created by qiyunsheng.
-- ============================================================================
H3C-OFP-MIB DEFINITIONS ::= BEGIN

IMPORTS
    h3cCommon
        FROM  HUAWEI-3COM-OID-MIB
    Integer32, OBJECT-TYPE, MODULE-IDENTITY
        FROM SNMPv2-SMI
    InetAddressType, InetAddress
        FROM INET-ADDRESS-MIB;

--
-- Node definitions
--
h3cOfp MODULE-IDENTITY
    LAST-UPDATED "201702281700Z"        -- Feb 28, 2017 at 17:00 GMT
    ORGANIZATION
        "Hangzhou H3C Technologies Co., Ltd."
    CONTACT-INFO
        "Platform Team Hangzhou H3C Technologies Co., Ltd.
        Hai-Dian District Beijing P.R. China
        http://www.h3c.com
        Zip:100085
        "
    DESCRIPTION
        "This MIB contains information about OpenFlow controllers"
    REVISION "201702281700Z"
    DESCRIPTION
        "Initial version."
    ::= { h3cCommon 167 }

--
-- nodes defined
--
h3cOfpInstanceObjects OBJECT IDENTIFIER ::= { h3cOfp 1 }

--
-- Node of h3cOfpInstanceControllerTable
--
h3cOfpInstanceControllerTable OBJECT-TYPE
    SYNTAX SEQUENCE OF H3cOfpInstanceControllerEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Information about OpenFlow controllers."
    ::= { h3cOfpInstanceObjects 1 }

h3cOfpInstanceControllerEntry OBJECT-TYPE
    SYNTAX H3cOfpInstanceControllerEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Define the index of h3cOfpInstanceControllerTable."
    INDEX
        {
            h3cOfpInstanceID,
            h3cOfpInstanceControllerID
        }
    ::= { h3cOfpInstanceControllerTable 1 }

H3cOfpInstanceControllerEntry ::=
    SEQUENCE
    {
        h3cOfpInstanceID
            Integer32,
        h3cOfpInstanceControllerID
            Integer32,
        h3cOfpInstanceControllerRole
            INTEGER,
        h3cOfpInstanceCtrConnectType
            INTEGER,
        h3cOfpInstanceCtrConnectState
            INTEGER,
        h3cOfpInstanceCtrSSLPolicy
            OCTET STRING,
        h3cOfpInstanceCtrVRFName
            OCTET STRING,
        h3cOfpInstanceCtrIPType
            InetAddressType,
        h3cOfpInstanceCtrIPaddress
            InetAddress,
        h3cOfpInstanceCtrPort
            Integer32
     }

h3cOfpInstanceID OBJECT-TYPE
    SYNTAX Integer32 (1..4094)
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Index of an OpenFlow instance"
    ::= { h3cOfpInstanceControllerEntry 1 }

h3cOfpInstanceControllerID OBJECT-TYPE
    SYNTAX Integer32 (0..63)
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Index of an OpenFlow controller."
    ::= { h3cOfpInstanceControllerEntry 2 }

h3cOfpInstanceControllerRole OBJECT-TYPE
    SYNTAX INTEGER
    {
        equal(1),
        master(2),
        slave(3)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The value of the controller's role."
    ::= { h3cOfpInstanceControllerEntry 3 }

h3cOfpInstanceCtrConnectType OBJECT-TYPE
    SYNTAX INTEGER
    {
        tcp(1),
        ssl(2)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The value of the controller's type."
    ::= { h3cOfpInstanceControllerEntry 4 }

h3cOfpInstanceCtrConnectState OBJECT-TYPE
    SYNTAX INTEGER
    {
        idle(0),
        established(1)
    }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The value of the controller's state."
    ::= { h3cOfpInstanceControllerEntry 5 }

h3cOfpInstanceCtrSSLPolicy OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE(0..31))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "SSL policy name for SSL connection with controller."
    ::= { h3cOfpInstanceControllerEntry 6 }

h3cOfpInstanceCtrVRFName OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE(0..31))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "VRF name for VPN connection with controller."
    ::= { h3cOfpInstanceControllerEntry 7 }

h3cOfpInstanceCtrIPType OBJECT-TYPE
    SYNTAX InetAddressType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The IP addresses type of the Controller's IP Address."
    ::= { h3cOfpInstanceControllerEntry 8 }

h3cOfpInstanceCtrIPaddress OBJECT-TYPE
    SYNTAX InetAddress
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Controller's IP address.
         The type of this address is determined by the value of
         h3cOfpInstanceCtrIPType.
        "
    ::= { h3cOfpInstanceControllerEntry 9}

h3cOfpInstanceCtrPort OBJECT-TYPE
    SYNTAX Integer32 (1..65535)
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Controller's port,
         Default value is 6633."
    ::= { h3cOfpInstanceControllerEntry 10 }

END
