HPICF-TR069-MIB DEFINITIONS ::= BEGIN

-- ****************************************************************************
-- MIB for the HP ICF implementation of Broadband Forum Specification
-- TR-069 - CPE WAN Management Protocol (CWMP)
-- ****************************************************************************

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Unsigned32
        FROM SNMPv2-SMI
    DateAndTime
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    hpSwitch
        FROM HP-ICF-OID;

    hpicfTR069MIB MODULE-IDENTITY
        LAST-UPDATED "201403030000Z"  -- March 03, 2014
        ORGANIZATION "HP Networking"
        CONTACT-INFO "Hewlett-Packard Company
                      8000 Foothills Blvd.
                      Roseville, CA 95747"
        DESCRIPTION  "This MIB defines HP proprietary objects used to configure
                      the TR-069 feature."

        REVISION     "201403030000Z"  -- March 03, 2014
        DESCRIPTION  "Initial version"

        ::= { hpSwitch 98 }

-- ****************************************************************************
-- This MIB module contains the following groups
-- ****************************************************************************

    hpicfTR069Notifications  OBJECT IDENTIFIER ::= { hpicfTR069MIB 0 }
    hpicfTR069Objects        OBJECT IDENTIFIER ::= { hpicfTR069MIB 1 }
    hpicfTR069Conformance    OBJECT IDENTIFIER ::= { hpicfTR069MIB 2 }

-- ****************************************************************************
-- Individual object definitions for TR-069
-- ****************************************************************************

    hpicfTR069EnableCWMP OBJECT-TYPE
        SYNTAX      INTEGER {
                            disable (1),
                            enable  (2)
                            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Enable TR-069 on the device."
        ::= { hpicfTR069Objects 1 }

    hpicfTR069CWMPDeviceType OBJECT-TYPE
        SYNTAX      INTEGER {
                            device  (1),
                            gateway (2)
                            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The working mode of the device.  By default, the device
                     operates in gateway mode.  CWMP should be disabled
                     before changing modes."
        ::= { hpicfTR069Objects 2 }

    hpicfTR069AcsUrl OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..256))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The URL used by TR-069 to connect to the ACS.
                     The value should be a valid HTTP or HTTPS URL."
        ::= { hpicfTR069Objects 3 }

    hpicfTR069AcsUrlOrigin OBJECT-TYPE
        SYNTAX      INTEGER {
                            none   (1),
                            config (2),
                            dhcp   (3),
                            acs    (4)  
                            }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The source of the ACS URL.
                       none   - no ACS URL set
                       config - from the device configuration file
                       dhcp   - from a DHCP server response
                       acs    - from the ACS itself"
        ::= { hpicfTR069Objects 4 }

    hpicfTR069AcsProxyUrl OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..256))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The URL used by TR-069 to connect to a proxy server
                     in order to reach the ACS.  The value should be a
                     valid HTTP or HTTPS URL."
        ::= { hpicfTR069Objects 5 }

    hpicfTR069AcsUsername OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..256))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The username for HTTP authentication with the ACS."
        ::= { hpicfTR069Objects 6 }

    hpicfTR069AcsPassword OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..256))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The plaintext password for HTTP authentication with the ACS.
                     This object always returns an empty string when read."
        ::= { hpicfTR069Objects 7 }

    hpicfTR069AcsPasswordEncrypted OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..384))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "An encrypted form of the ACS password.  The value
                     should be an encrypted password previously read from
                     a compatible HP Networking device.  This object can
                     only be read or written when 
                     hpSwitchAuthenticationEncryptCredentialsMethod
                     is set to a value other than 'none' and cannot be set
                     at the same time as hpicfTR069AcsPassword."
        ::= { hpicfTR069Objects 8 }

    hpicfTR069AcsConnectRetryInterval OBJECT-TYPE
        SYNTAX      Unsigned32
        UNITS       "seconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The ACS connection retry interval."
        ::= { hpicfTR069Objects 9 }

    hpicfTR069CpeUsername OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..256))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The username for HTTP authentication with the
                     TR-069 client."
        ::= { hpicfTR069Objects 10 }

    hpicfTR069CpePassword OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..256))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The plaintext password for HTTP authentication with
                     the TR-069 client.  This object always returns an empty
                     string when read."
        ::= { hpicfTR069Objects 11 }

    hpicfTR069CpePasswordEncrypted OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..384))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "An encrypted form of the client password.  The value
                     should be an encrypted password previously read from
                     a compatible HP Networking device.  This object can
                     only be read or written when 
                     hpSwitchAuthenticationEncryptCredentialsMethod
                     is set to a value other than 'none' and cannot be set
                     at the same time as hpicfTR069CpePassword."
        ::= { hpicfTR069Objects 12 }

    hpicfTR069CpeWaitTimeout OBJECT-TYPE
        SYNTAX      Unsigned32
        UNITS       "seconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The close-wait timeout of the ACS connection."
        ::= { hpicfTR069Objects 13 }

    hpicfTR069PeriodicInformEnable OBJECT-TYPE
        SYNTAX      INTEGER {
                            disable (1),
                            enable  (2)
                            }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The periodic inform message setting specified
                     by the ACS."
        ::= { hpicfTR069Objects 14 }

    hpicfTR069PeriodicInformInterval OBJECT-TYPE
        SYNTAX      Unsigned32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The periodic inform interval in seconds specified
                     by the ACS."
        ::= { hpicfTR069Objects 15 }

    hpicfTR069PeriodicInformTime OBJECT-TYPE
        SYNTAX      DateAndTime
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The date and time to send inform messages specified
                     by the ACS."
        ::= { hpicfTR069Objects 16 }


-- ****************************************************************************
-- MIB Conformance Information / Details
-- ****************************************************************************

    hpicfTR069MIBCompliances  OBJECT IDENTIFIER ::= { hpicfTR069Conformance 1 }
    hpicfTR069MIBGroups       OBJECT IDENTIFIER ::= { hpicfTR069Conformance 2 }

-- ****************************************************************************
-- Compliance Statements
-- ****************************************************************************

    hpicfTR069MIBCompliance MODULE-COMPLIANCE
        STATUS      current
        DESCRIPTION "The compliance statement for HP switches implementing the
                     HPICF-TR069 MIB."
        MODULE
            MANDATORY-GROUPS { hpicfTR069Group }
        ::= { hpicfTR069MIBCompliances 1 }

-- ****************************************************************************
-- Conformance Groups
-- ****************************************************************************

    hpicfTR069Group OBJECT-GROUP
        OBJECTS     {
                    hpicfTR069EnableCWMP,
                    hpicfTR069CWMPDeviceType,
                    hpicfTR069AcsUrl,
                    hpicfTR069AcsUrlOrigin,
                    hpicfTR069AcsProxyUrl,
                    hpicfTR069AcsUsername,
                    hpicfTR069AcsPassword,
                    hpicfTR069AcsPasswordEncrypted,
                    hpicfTR069AcsConnectRetryInterval,
                    hpicfTR069CpeUsername,
                    hpicfTR069CpePassword,
                    hpicfTR069CpePasswordEncrypted,
                    hpicfTR069CpeWaitTimeout,
                    hpicfTR069PeriodicInformEnable,
                    hpicfTR069PeriodicInformInterval,
                    hpicfTR069PeriodicInformTime
                    }
        STATUS      current
        DESCRIPTION "A collection of objects to support the TR-069 feature."
        ::= { hpicfTR069MIBGroups 1 }

END
