HP-ICF-SFLOW-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        OBJECT-TYPE, MODULE-IDENTITY
            FROM SNMPv2-SMI
        TruthValue
              FROM SNMPv2-TC
        OBJECT-GROUP, MODULE-COMPLIANCE
            FROM SNMPv2-CONF
        hpSwitch
            FROM HP-ICF-OID
        sFlowFsDataSource, sFlowFsInstance, sFlowRcvrEntry
            FROM SFLOW-MIB;

    hpicfSflowMIB MODULE-IDENTITY
         LAST-UPDATED "201208220000Z" -- Aug 22, 2012
         ORGANIZATION "HP Networking"
         CONTACT-INFO "Hewlett Packard Company
                       8000 Foothills Blvd.
                       Roseville, CA 95747"
         DESCRIPTION  "This MIB module describes HP Sflow
                       information."
         REVISION      "201208220000Z" -- Aug 22, 2012
         DESCRIPTION  "Added mib object related to sFlow reciever
                       over OOBM port."
         REVISION      "201204300000Z" -- Apr 30, 2012
         DESCRIPTION  "This MIB module describes HP Sflow
                       information."

         ::= { hpSwitch 92 }

-- *******************************************************************
-- Sflow Objects
-- *******************************************************************
    
    hpicfSflowNotifications  OBJECT IDENTIFIER 
           ::= { hpicfSflowMIB 0}

    hpicfSflowObjects               OBJECT IDENTIFIER
          ::= { hpicfSflowMIB 1 }

    hpicfSflowInfo                  OBJECT IDENTIFIER
          ::= { hpicfSflowObjects 1 }


-- *******************************************************************
-- Sflow Info
-- *******************************************************************

    hpicfSflowPortInfoTable OBJECT-TYPE
              SYNTAX      SEQUENCE OF HpicfSflowPortInfoEntry
              MAX-ACCESS  not-accessible
              STATUS      current
              DESCRIPTION
              "A table of objects that contains sflow port
              Information."
              ::= {  hpicfSflowInfo 1 }

    hpicfSflowPortInfoEntry OBJECT-TYPE
              SYNTAX      HpicfSflowPortInfoEntry
              MAX-ACCESS  not-accessible
              STATUS      current
              DESCRIPTION
              "A set of objects that contains information of
              a sflow port."
              INDEX {  sFlowFsDataSource, sFlowFsInstance }
              ::= {  hpicfSflowPortInfoTable  1 }
 
    HpicfSflowPortInfoEntry ::=
              SEQUENCE {
                 hpicfSflowPortMode    INTEGER,
                 hpicfSflowPortStatus  INTEGER
                  }

    hpicfSflowPortMode OBJECT-TYPE
              SYNTAX      INTEGER {
                    invalid(1),
                    determine(2),
                    random(3)
                }
             MAX-ACCESS  read-only
             STATUS      current
             DESCRIPTION
                    "This object indicates port's sflow mode."
                    
     ::= {hpicfSflowPortInfoEntry 1 }

    hpicfSflowPortStatus OBJECT-TYPE
            SYNTAX      INTEGER {
                invalid(1),
                active(2),
                inactive(3)
            }     
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                    "This object indicates port's sflow status."
                     
    ::= { hpicfSflowPortInfoEntry 2 }

    hpicfSflowRcvrTable OBJECT-TYPE
           SYNTAX      SEQUENCE OF HpicfSflowRcvrEntry
           MAX-ACCESS  not-accessible
           STATUS      current
           DESCRIPTION
                  "Extensions to the table that contains SFLOW 
                   specific information."
    ::= { hpicfSflowInfo 2 }

    hpicfSflowRcvrEntry OBJECT-TYPE
           SYNTAX      HpicfSflowRcvrEntry
           MAX-ACCESS  not-accessible
           STATUS      current
           DESCRIPTION
                   "A list of extensions to the information maintained
                   for an SFLOW receiver."
           AUGMENTS { sFlowRcvrEntry }
    ::= { hpicfSflowRcvrTable 1 }

    HpicfSflowRcvrEntry ::=
           SEQUENCE {
                      hpicfSflowRcvrOobm  TruthValue
                    }

    hpicfSflowRcvrOobm  OBJECT-TYPE
          SYNTAX      TruthValue
          MAX-ACCESS  read-write
          STATUS      current
          DESCRIPTION
                 "This object specifies whether to use OOBM port to send 
                  sflow data or not. This mib object will be applicable only
                  if there is a physical OOBM port on the device "
          DEFVAL {false}
    ::= { hpicfSflowRcvrEntry 1 }


-- *******************************************************************
-- Conformance Section
-- *******************************************************************

    hpicfSflowConformance  OBJECT IDENTIFIER
          ::= { hpicfSflowMIB 2 }

    hpicfSflowGroups       OBJECT IDENTIFIER
          ::= { hpicfSflowConformance 1 }

    hpicfSflowInfoGroup OBJECT-GROUP
          OBJECTS {
             hpicfSflowPortMode,
             hpicfSflowPortStatus
            }
         STATUS  current
         DESCRIPTION
            "A collection of objects representing the sflow 
            information."
          ::= { hpicfSflowGroups 1 }

    hpicfSflowInfoGroup1 OBJECT-GROUP
          OBJECTS {
             hpicfSflowRcvrOobm
            }
         STATUS  current
         DESCRIPTION
            "A collection of objects representing the sflow 
            receiver information."
          ::= { hpicfSflowGroups 2 }
    
    hpicfSflowCompliances OBJECT IDENTIFIER ::=
             { hpicfSflowConformance 2 }

    hpicfSflowCompliance  MODULE-COMPLIANCE
          STATUS  current
          DESCRIPTION
                "Describes the requirements for conformance to the
                sflow MIB."
          MODULE  -- this module
          MANDATORY-GROUPS { hpicfSflowInfoGroup }
          ::= { hpicfSflowCompliances 1 }

    hpicfSflowCompliance1  MODULE-COMPLIANCE
          STATUS  current
          DESCRIPTION
                "Describes the requirements for conformance to the
                sflow MIB."
          MODULE  -- this module
          MANDATORY-GROUPS { hpicfSflowInfoGroup1 }
          ::= { hpicfSflowCompliances 2 }
END

