-- ****************************************************************************
-- ****************************************************************************
--             Copyright(c) 2004 Mediatrix Telecom, Inc.
--  NOTICE:
--   This document contains information that is confidential and proprietary
--   to Mediatrix Telecom, Inc.
--   Mediatrix Telecom, Inc. reserves all rights to this document as well as
--   to the Intellectual Property of the document and the technology and
--   know-how that it includes and represents.
--   This publication cannot be reproduced, neither in whole nor in part in
--   any form whatsoever without written prior approval by
--   Mediatrix Telecom, Inc.
--   Mediatrix Telecom, Inc. reserves the right to revise this publication
--   and make changes at any time and without the obligation to notify any
--   person and/or entity of such revisions and/or changes.
-- ****************************************************************************
-- ****************************************************************************

MX-HOC-MIB
DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Unsigned32,
        Integer32
    FROM SNMPv2-SMI
        MODULE-COMPLIANCE,
        OBJECT-GROUP
    FROM SNMPv2-CONF
        MxEnableState,
        MxActivationState,
        MxIpHostName,
        MxIpAddress,
        MxIpPort,
        MxAdvancedIpPort,
        MxIpSubnetMask,
        MxDigitMap
    FROM MX-TC
        MxUInt64,
        MxFloat32,
        MxIpHostNamePort,
        MxIpAddr,
        MxIpAddrPort,
        MxIpAddrMask,
        MxUri,
        MxUrl
    FROM MX-TC2
        mediatrixServices
    FROM MX-SMI2;

hocMIB MODULE-IDENTITY
 LAST-UPDATED   "1910210000Z"
 ORGANIZATION " Mediatrix Telecom, Inc. "
 CONTACT-INFO " Mediatrix Telecom, Inc.
                4229, Garlock Street
                Sherbrooke (Quebec)
                Canada
                Phone: (819) 829-8749
                "
 DESCRIPTION  " Host Configuration

                The Host Configuration (Hoc) service manages the IP host
                parameters and other system settings.
                "
 ::= { mediatrixServices 700 }

hocMIBObjects OBJECT IDENTIFIER ::= { hocMIB 1 }

-- Scalar:Management Interface

managementInterface OBJECT-TYPE
 SYNTAX        OCTET STRING ( SIZE(1..50) )
 MAX-ACCESS    read-write
 STATUS        current
 DESCRIPTION " Management Interface

               Specifies to which network interface the system management
               services are bound. The name specified here must match an
               existing InterfaceName in the NetworkInterfacesStatus table of
               the Bni service. The special value 'All' means to bind all
               network interfaces.

               Note that this parameter is case-sensitive.

               Note that Advance IP Routing could be required to forward the
               packet over the correct network.

               "
 DEFVAL        { "Lan1" }
 ::= { hocMIBObjects 100 }

-- Scalar:Automatic Configuration Interface

automaticConfigurationInterface OBJECT-TYPE
 SYNTAX        OCTET STRING ( SIZE(0..50) )
 MAX-ACCESS    read-write
 STATUS        current
 DESCRIPTION " Automatic Configuration Interface

               The network interface that provides the IPv4 automatic
               configuration (Default Router, domain name, DNS servers, and NTP
               server) used by the unit. Please note that some connection types
               (for example ipStatic and pppIpcp) cannot obtain information
               about the domain name, DNS servers, and NTP server from the
               network, and therefore lead to no domain name being applied to
               the system.
               "
 DEFVAL        { "" }
 ::= { hocMIBObjects 150 }

-- Scalar:IPv6 Automatic Configuration Interface

ipv6AutomaticConfigurationInterface OBJECT-TYPE
 SYNTAX        OCTET STRING ( SIZE(0..50) )
 MAX-ACCESS    read-write
 STATUS        current
 DESCRIPTION " IPv6 Automatic Configuration Interface

               The network interface that provides the IPv6 automatic
               configuration (Default Router, domain name, DNS servers, and NTP
               server) used by the unit. Please note that some connection types
               (for example ip6Static) cannot obtain information about the
               domain name, DNS servers, and NTP server from the network, and
               therefore lead to no domain name being applied to the system.
               "
 DEFVAL        { "" }
 ::= { hocMIBObjects 175 }

-- Scalar:Host Name

hostName OBJECT-TYPE
 SYNTAX        MxIpHostName
 MAX-ACCESS    read-write
 STATUS        current
 DESCRIPTION " Host Name

               Host name of the unit. Certain restrictions apply to this name:

                 * It must be shorter than 64 characters.
                 * It must not start with a space or a period.
                 * It must not contain double quotes, semicolons, curly braces
                   and commas.

               "
 DEFVAL        { "" }
 ::= { hocMIBObjects 200 }

-- ****************************************************************************

-- Group:Time

-- ****************************************************************************

timeGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 250 }
 -- Scalar:SystemTime

 systemTime OBJECT-TYPE
  SYNTAX        OCTET STRING
  MAX-ACCESS    read-only
  STATUS        current
  DESCRIPTION " SystemTime

                Current system date and time configured in the unit.

                This local time is computed from the Time Zone defined in the
                StaticTimeZone parameter.

                If the time seems not valid, verify the SNTP configuration in
                the Sntp group.

                "
  ::= { timeGroup 100 }

 -- Scalar:System Uptime

 systemUptime OBJECT-TYPE
  SYNTAX        OCTET STRING
  MAX-ACCESS    read-only
  STATUS        current
  DESCRIPTION " System Uptime

                Time elapsed since the last system restart in a D:HH:MM:SS
                format.
                "
  ::= { timeGroup 150 }

 -- Scalar:Static Time Zone

 staticTimeZone OBJECT-TYPE
  SYNTAX        OCTET STRING ( SIZE(0..255) )
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Static Time Zone

                Specifies the time zone in which the system is located. This
                string MUST use the IEEE 1003.1 POSIX format as defined in
                bootp-dhcp-option-88.txt. The following are some example
                strings.

                  * Pacific Time (Canada and US) : PST8PDT7,M3.2.0/
                    02:00:00,M11.1.0/02:00:00
                  * Mountain Time (Canada and US) : MST7MDT6,M3.2.0/
                    02:00:00,M11.1.0/02:00:00
                  * Central Time (Canada and US) : CST6CDT5,M3.2.0/
                    02:00:00,M11.1.0/02:00:00
                  * Eastern Time (Canada and US) : EST5EDT4,M3.2.0/
                    02:00:00,M11.1.0/02:00:00
                  * Atlantic Time (Canada) : AST4ADT3,M3.2.0/02:00:00,M11.1.0/
                    02:00:00
                  * GMT Standard Time : GMT0DMT-1,M3.5.0/01:00:00,M10.5.0/
                    02:00:00
                  * W. Europe Standard Time : WEST-1DWEST-2,M3.5.0/
                    02:00:00,M10.5.0/03:00:00
                  * China Standard Time : CST-8
                  * Tokyo Standard Time : TST-9
                  * Central Australia Standard Time :
                    CAUST-9:30DCAUST-10:30,M10.5.0/02:00:00,M3.5.0/02:00:00
                  * Australia Eastern Standard Time :
                    AUSEST-10AUSDST-11,M10.5.0/02:00:00,M3.5.0/02:00:00
                  * UTC (Coordinated Universal Time) : UTC0

                "
  DEFVAL        { "EST5EDT4,M3.2.0/02:00:00,M11.1.0/02:00:00" }
  ::= { timeGroup 200 }

-- End of group:Time

-- ****************************************************************************

-- Group:Domain Name

-- ****************************************************************************

domainNameGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 300 }
 -- Scalar:Configuration Source

 domainNameConfigSource OBJECT-TYPE
  SYNTAX        INTEGER { automatic(100) , automaticIpv6(150) , static(200) }
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Configuration Source

                Configuration source for the domain name.

                  * Automatic: The domain name is automatically obtained from
                    the IPv4 network defined in the
                    AutomaticConfigurationInterface parameter.
                  * AutomaticIpv6: The domain name is automatically obtained
                    from the IPv6 network defined in the
                    Ipv6AutomaticConfigurationInterface parameter.
                  * Static: The domain name is specified in the
                    StaticDomainName parameter.

                When switching from a Static to an Automatic or AutomaticIpv6
                configuration source, the last value correctly obtained from
                the network (if any) is applied to the system.
                "
  DEFVAL        { automatic }
  ::= { domainNameGroup 100 }

 -- Scalar:Domain Name

 domainNameInfo OBJECT-TYPE
  SYNTAX        MxIpHostName
  MAX-ACCESS    read-only
  STATUS        current
  DESCRIPTION " Domain Name

                Current domain name.
                "
  ::= { domainNameGroup 200 }

 -- Scalar:Static Domain Name

 staticDomainName OBJECT-TYPE
  SYNTAX        MxIpHostName
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Static Domain Name

                Static domain name. This domain name is used as the current
                domain name when the DomainNameConfigSource parameter is set
                to 'Static'.

                "
  DEFVAL        { "" }
  ::= { domainNameGroup 300 }

-- End of group:Domain Name

-- ****************************************************************************

-- Group:SNTP

-- ****************************************************************************

sntpGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 400 }
 -- Scalar:Configuration Source

 sntpConfigSource OBJECT-TYPE
  SYNTAX        INTEGER { automatic(100) , automaticIpv6(150) , static(200) ,
                automaticWithFallback(300) }
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Configuration Source

                Configuration source for the SNTP parameters.

                  * Automatic: The SNTP parameters are automatically obtained
                    from the IPv4 network defined in the
                    AutomaticConfigurationInterface parameter.
                  * AutomaticIpv6: The SNTP parameters are automatically
                    obtained from the IPv6 network defined in the
                    Ipv6AutomaticConfigurationInterface parameter.
                  * Static: The SNTP parameters are specified in the
                    StaticSntpServers table.
                  * AutomaticWithFallback: The SNTP parameters are
                    automatically obtained from the IPv4 network with a
                    fallback to the StaticSntpServers table.

                When switching from a Static to an Automatic or AutomaticIpv6
                configuration source, the last values correctly obtained from
                the network (if any) are applied to the system.
                "
  DEFVAL        { automatic }
  ::= { sntpGroup 100 }

 -- Scalar:Synchronisation Period

 sntpSynchronizationPeriod OBJECT-TYPE
  SYNTAX        Unsigned32 ( 1..1440 )
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Synchronisation Period

                Time interval between system time synchronisation cycles. Each
                time this interval expires, a SNTP request is sent to the SNTP
                server and the result is used to set the system time. This
                value is expressed in minutes. The maximum value is set to 1
                440 minutes, which corresponds to 24 hours.
                "
  DEFVAL        { 1440 }
  ::= { sntpGroup 200 }

 -- Scalar:Synchronisation Period On Error

 sntpSynchronizationPeriodOnError OBJECT-TYPE
  SYNTAX        Unsigned32 ( 1..1440 )
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Synchronisation Period On Error

                Time interval between retries after an unsuccessful request to
                the SNTP server. This value is expressed in minutes. The
                maximum value is set to 1 440 minutes, which corresponds to 24
                hours.
                "
  DEFVAL        { 60 }
  ::= { sntpGroup 300 }

 -- Scalar:Time Zone

 sntpTimeZone OBJECT-TYPE
  SYNTAX        OCTET STRING ( SIZE(0..255) )
  MAX-ACCESS    read-write
  STATUS        obsolete
  DESCRIPTION " Time Zone

                This parameter is obsolete and has been replaced by
                TimeGroup.StaticTimeZone parameter.

                "
  DEFVAL        { "EST5EDT4,M3.2.0/02:00:00,M11.1.0/02:00:00" }
  ::= { sntpGroup 400 }

 -- Scalar:Server Host

 sntpServerHostInfo OBJECT-TYPE
  SYNTAX        MxIpHostNamePort
  MAX-ACCESS    read-only
  STATUS        obsolete
  DESCRIPTION " Server Host

                This parameter is obsolete and has been replaced by
                Hoc.SntpServersInfo.HostName parameter.

                "
  ::= { sntpGroup 500 }

 -- Scalar:Static Server Host

 staticSntpServerHost OBJECT-TYPE
  SYNTAX        MxIpHostNamePort
  MAX-ACCESS    read-write
  STATUS        obsolete
  DESCRIPTION " Static Server Host

                This parameter is obsolete and has been replaced by the
                Hoc.StaticSntpServers.HostName parameter.

                "
  DEFVAL        { "192.168.10.10:123" }
  ::= { sntpGroup 700 }

 -- Scalar:Current Source

 sntpCurrentSource OBJECT-TYPE
  SYNTAX        MxIpHostNamePort
  MAX-ACCESS    read-only
  STATUS        current
  DESCRIPTION " Current Source

                The IP address and port of the last NTP server used to
                synchronise the system time. An empty value indicates that no
                servers have been successfully contacted since the last
                service restart.
                "
  ::= { sntpGroup 750 }

 -- ***************************************************************************
 
 -- Table:SNTP Servers

 -- ***************************************************************************
 
 sntpServersInfoTable OBJECT-TYPE
  SYNTAX        SEQUENCE OF SntpServersInfoEntry
  MAX-ACCESS    not-accessible
  STATUS        current
  DESCRIPTION " SNTP Servers

                This table contains the list of current SNTP servers. The SNTP
                servers are sorted by priority. The list can contain static
                servers, dynamic servers (DHCP) or both depending on how the
                SntpConfigSource parameter is set. When a server does not
                respond, there is a delay of several seconds before attempting
                to use the next one.

                "
  ::= { sntpGroup 800 }
  sntpServersInfoEntry OBJECT-TYPE
   SYNTAX        SntpServersInfoEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION " A row in table SNTP Servers. "
   INDEX         {
                   sntpServersInfoPriority
                 }

   ::= { sntpServersInfoTable 1 }

  SntpServersInfoEntry ::= SEQUENCE
  {
    sntpServersInfoPriority Unsigned32,
    sntpServersInfoHostName MxIpHostNamePort
  }

  -- Index:Priority

  sntpServersInfoPriority OBJECT-TYPE
   SYNTAX        Unsigned32 ( 1..8 )
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION " Priority

                 Priority number for this SNTP server. The lower the number
                 is, the higher the priority is.
                 "
   ::= { sntpServersInfoEntry 100 }

  -- Columnar:Server Host

  sntpServersInfoHostName OBJECT-TYPE
   SYNTAX        MxIpHostNamePort
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION " Server Host

                 SNTP server host name and port.
                 "
   DEFVAL        { "" }
   ::= { sntpServersInfoEntry 200 }

 -- End of table:SNTP Servers

 -- ***************************************************************************
 
 -- Table:Static SNTP Servers

 -- ***************************************************************************
 
 staticSntpServersTable OBJECT-TYPE
  SYNTAX        SEQUENCE OF StaticSntpServersEntry
  MAX-ACCESS    not-accessible
  STATUS        current
  DESCRIPTION " Static SNTP Servers

                This table contains the list of static SNTP servers. The SNTP
                servers are sorted by priority. These SNTP servers are used as
                the current SNTP servers when the SntpConfigSource parameter
                is set to 'Static'.

                "
  ::= { sntpGroup 900 }
  staticSntpServersEntry OBJECT-TYPE
   SYNTAX        StaticSntpServersEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION " A row in table Static SNTP Servers. "
   INDEX         {
                   staticSntpServersPriority
                 }

   ::= { staticSntpServersTable 1 }

  StaticSntpServersEntry ::= SEQUENCE
  {
    staticSntpServersPriority Unsigned32,
    staticSntpServersHostName MxIpHostNamePort
  }

  -- Index:Priority

  staticSntpServersPriority OBJECT-TYPE
   SYNTAX        Unsigned32 ( 1..4 )
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION " Priority

                 Priority number of this static SNTP server. The lower the
                 number is, the higher the priority is.
                 "
   ::= { staticSntpServersEntry 100 }

  -- Columnar:Server Host

  staticSntpServersHostName OBJECT-TYPE
   SYNTAX        MxIpHostNamePort
   MAX-ACCESS    read-write
   STATUS        current
   DESCRIPTION " Server Host

                 SNTP server host name and port.
                 "
   DEFVAL        { "" }
   ::= { staticSntpServersEntry 200 }

 -- End of table:Static SNTP Servers

-- End of group:SNTP

-- ****************************************************************************

-- Group:Default Router

-- ****************************************************************************

defaultRouterGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 500 }
 -- Scalar:Configuration Source

 defaultRouterConfigSource OBJECT-TYPE
  SYNTAX        INTEGER { automatic(100) , static(200) }
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Configuration Source

                Configuration source for the default router.

                  * Automatic: The default IPv4 router is automatically
                    obtained from the IPv4 network defined in the
                    AutomaticConfigurationInterface.
                  * Static: The default router is specified in the
                    StaticDefaultRouter parameter.

                When switching from a Static to an Automatic configuration
                source, the last value correctly obtained from the network (if
                any) is applied to the system.
                "
  DEFVAL        { automatic }
  ::= { defaultRouterGroup 100 }

 -- Scalar:Default IPv6 Router Configuration Source

 defaultIpv6RouterConfigSource OBJECT-TYPE
  SYNTAX        INTEGER { automaticIpv6(150) , static(200) }
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Default IPv6 Router Configuration Source

                Configuration source for the default IPv6 router.

                  * AutomaticIpv6: The default IPv6 router is automatically
                    obtained from the IPv6 network defined in the
                    Ipv6AutomaticConfigurationInterface parameter.
                  * Static: The default router is specified in the
                    StaticDefaultIpv6Router parameter.

                When switching from a Static to an AutomaticIpv6 configuration
                source, the last value correctly obtained from the network (if
                any) is applied to the system.
                "
  DEFVAL        { automaticIpv6 }
  ::= { defaultRouterGroup 150 }

 -- Scalar:Default Router

 defaultRouterInfo OBJECT-TYPE
  SYNTAX        MxIpAddr
  MAX-ACCESS    read-only
  STATUS        current
  DESCRIPTION " Default Router

                Current default router address.
                "
  ::= { defaultRouterGroup 200 }

 -- Scalar:Default IPv6 Router

 defaultIpv6RouterInfo OBJECT-TYPE
  SYNTAX        MxIpAddress
  MAX-ACCESS    read-only
  STATUS        current
  DESCRIPTION " Default IPv6 Router

                Current default IPv6 router address.
                "
  ::= { defaultRouterGroup 250 }

 -- Scalar:Static Default Router

 staticDefaultRouter OBJECT-TYPE
  SYNTAX        MxIpAddr
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Static Default Router

                Static default router address. This address is used as the
                current default router address when the
                DefaultRouterConfigSource parameter is set to 'Static'.

                "
  DEFVAL        { "192.168.10.10" }
  ::= { defaultRouterGroup 300 }

 -- Scalar:Static Default IPv6 Router

 staticDefaultIpv6Router OBJECT-TYPE
  SYNTAX        MxIpAddress
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Static Default IPv6 Router

                Static default IPv6 router address. This address is used as
                the current default router address when the
                DefaultIPv6RouterConfigSource parameter is set to 'Static'.

                "
  DEFVAL        { "" }
  ::= { defaultRouterGroup 350 }

-- End of group:Default Router

-- ****************************************************************************

-- Group:DNS Servers

-- ****************************************************************************

dnsServersGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 600 }
 -- Scalar:Configuration Source

 dnsServersConfigSource OBJECT-TYPE
  SYNTAX        INTEGER { automatic(100) , automaticIpv6(150) , static(200) }
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Configuration Source

                Configuration source for the DNS servers.

                  * Automatic: The DNS servers are automatically obtained from
                    the IPv4 network defined in the
                    AutomaticConfigurationInterface parameter.
                  * AutomaticIpv6: The DNS servers are automatically obtained
                    from the IPv6 network defined in the
                    Ipv6AutomaticConfigurationInterface parameter.
                  * Static: The DNS servers are specified in the
                    StaticDnsServers table.

                When switching from a Static to an Automatic or AutomaticIpv6
                configuration source, the last values correctly obtained from
                the network (if any) are applied to the system.
                "
  DEFVAL        { automatic }
  ::= { dnsServersGroup 100 }

 -- Scalar:Dns Cache Randomisation

 dnsCacheRandomization OBJECT-TYPE
  SYNTAX        MxEnableState
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Dns Cache Randomisation

                Configuration of the DNS records randomisation of the device's
                internal DNS Cache.

                  * Enable: When DNS A/AAAA records are accessed from the
                    cache, they are sent to the requesting service in a
                    randomised order.
                  * Disable: When DNS A/AAAA records are accessed from the
                    cache, they are sent to the requesting service in the same
                    order they were originally received from the network.

                "
  DEFVAL        { disable }
  ::= { dnsServersGroup 150 }

 -- ***************************************************************************
 
 -- Table:DNS Servers

 -- ***************************************************************************
 
 dnsServersInfoTable OBJECT-TYPE
  SYNTAX        SEQUENCE OF DnsServersInfoEntry
  MAX-ACCESS    not-accessible
  STATUS        current
  DESCRIPTION " DNS Servers

                This table contains the list of current DNS servers. The DNS
                servers are sorted by priority.
                "
  ::= { dnsServersGroup 200 }
  dnsServersInfoEntry OBJECT-TYPE
   SYNTAX        DnsServersInfoEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION " A row in table DNS Servers. "
   INDEX         {
                   dnsServersInfoPriority
                 }

   ::= { dnsServersInfoTable 1 }

  DnsServersInfoEntry ::= SEQUENCE
  {
    dnsServersInfoPriority  Unsigned32,
    dnsServersInfoIpAddress MxIpAddress
  }

  -- Index:Priority

  dnsServersInfoPriority OBJECT-TYPE
   SYNTAX        Unsigned32 ( 1..4 )
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION " Priority

                 Priority number for this DNS server. The lower the number is,
                 the higher the priority is.
                 "
   ::= { dnsServersInfoEntry 100 }

  -- Columnar:Server Address

  dnsServersInfoIpAddress OBJECT-TYPE
   SYNTAX        MxIpAddress
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION " Server Address

                 DNS server IP address.
                 "
   ::= { dnsServersInfoEntry 200 }

 -- End of table:DNS Servers

 -- ***************************************************************************
 
 -- Table:Static DNS Servers

 -- ***************************************************************************
 
 staticDnsServersTable OBJECT-TYPE
  SYNTAX        SEQUENCE OF StaticDnsServersEntry
  MAX-ACCESS    not-accessible
  STATUS        current
  DESCRIPTION " Static DNS Servers

                This table contains the list of static DNS servers. The DNS
                servers are sorted by priority. These DNS servers are used as
                the current DNS servers when the DnsServersConfigSource
                parameter is set to 'Static'.

                "
  ::= { dnsServersGroup 300 }
  staticDnsServersEntry OBJECT-TYPE
   SYNTAX        StaticDnsServersEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION " A row in table Static DNS Servers. "
   INDEX         {
                   staticDnsServersPriority
                 }

   ::= { staticDnsServersTable 1 }

  StaticDnsServersEntry ::= SEQUENCE
  {
    staticDnsServersPriority  Unsigned32,
    staticDnsServersIpAddress MxIpAddress
  }

  -- Index:Priority

  staticDnsServersPriority OBJECT-TYPE
   SYNTAX        Unsigned32 ( 1..4 )
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION " Priority

                 Priority number of this static DNS server. The lower the
                 number is, the higher the priority is.
                 "
   ::= { staticDnsServersEntry 100 }

  -- Columnar:IP Address

  staticDnsServersIpAddress OBJECT-TYPE
   SYNTAX        MxIpAddress
   MAX-ACCESS    read-write
   STATUS        current
   DESCRIPTION " IP Address

                 Static DNS server IP address.
                 "
   ::= { staticDnsServersEntry 200 }

 -- End of table:Static DNS Servers

-- End of group:DNS Servers

-- ****************************************************************************

-- Group:Hosts

-- ****************************************************************************

hostsGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 650 }
 -- ***************************************************************************
 
 -- Table:Static Hosts

 -- ***************************************************************************
 
 staticHostsTable OBJECT-TYPE
  SYNTAX        SEQUENCE OF StaticHostsEntry
  MAX-ACCESS    not-accessible
  STATUS        current
  DESCRIPTION " Static Hosts

                This table contains a list of static hosts. Each host is
                configured with an FQDN and its static ip addresses. This
                table is used by the Hoc service to locally resolve an FQDN
                and obtain its ip address without performing a DNS request.
                "
  ::= { hostsGroup 100 }
  staticHostsEntry OBJECT-TYPE
   SYNTAX        StaticHostsEntry
   MAX-ACCESS    not-accessible
   STATUS        current
   DESCRIPTION " A row in table Static Hosts. "
   INDEX         {
                   staticHostsIndex
                 }

   ::= { staticHostsTable 1 }

  StaticHostsEntry ::= SEQUENCE
  {
    staticHostsIndex       Unsigned32,
    staticHostsName        OCTET STRING,
    staticHostsIpAddresses OCTET STRING,
    staticHostsDelete      INTEGER
  }

  -- Index:Index

  staticHostsIndex OBJECT-TYPE
   SYNTAX        Unsigned32
   MAX-ACCESS    read-only
   STATUS        current
   DESCRIPTION " Index

                 Unique identifier of the row in the table.
                 "
   ::= { staticHostsEntry 100 }

  -- Row command:Delete

  staticHostsDelete OBJECT-TYPE
   SYNTAX        INTEGER { noOp(0), delete(10) }
   MAX-ACCESS    read-write
   STATUS        current
   DESCRIPTION " Delete

                 Deletes this row.
                 "
   DEFVAL        { noOp }
   ::= { staticHostsEntry 1000 }

  -- Columnar:Name

  staticHostsName OBJECT-TYPE
   SYNTAX        OCTET STRING ( SIZE(0..253) )
   MAX-ACCESS    read-write
   STATUS        current
   DESCRIPTION " Name

                 Name (FQDN) of the static host. The Hoc service does not
                 perform DNS queries to resolve this FQDN. It returns the
                 static ip addresses defined in the StaticHosts.IpAddress
                 parameter. This name must be unique across the table.

                 "
   DEFVAL        { "" }
   ::= { staticHostsEntry 200 }

  -- Columnar:IP Addresses

  staticHostsIpAddresses OBJECT-TYPE
   SYNTAX        OCTET STRING ( SIZE(0..255) )
   MAX-ACCESS    read-write
   STATUS        current
   DESCRIPTION " IP Addresses

                 List of static IP addresses associated with the FQDN
                 specified in the StaticHosts.Name parameter. This list
                 contains numerical IPv4 or IPv6 addresses. IP addresses MUST
                 be separated by a comma (,).

                 "
   DEFVAL        { "" }
   ::= { staticHostsEntry 300 }

 -- End of table:Static Hosts

-- End of group:Hosts

-- ****************************************************************************

-- Group:System

-- ****************************************************************************

systemGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 800 }
 -- Scalar:System Contact

 systemContact OBJECT-TYPE
  SYNTAX        OCTET STRING ( SIZE(0..255) )
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " System Contact

                Indicates the contact information for the device. This
                information is for display purposes only and does not affect
                the behavior of the device. The value of this parameter is
                also returned by the 'sysContact' object in SNMPv2-MIB.
                "
  DEFVAL        { "" }
  ::= { systemGroup 100 }

 -- Scalar:System Name

 systemName OBJECT-TYPE
  SYNTAX        OCTET STRING ( SIZE(0..255) )
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " System Name

                Indicates the name of the device. This information is for
                display purposes only and does not affect the behavior of the
                device. The value of this parameter is also returned by the
                'sysName' object in SNMPv2-MIB.
                "
  DEFVAL        { "" }
  ::= { systemGroup 200 }

 -- Scalar:System Location

 systemLocation OBJECT-TYPE
  SYNTAX        OCTET STRING ( SIZE(0..255) )
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " System Location

                Indicates the physical location of the device. This
                information is for display purposes only and does not affect
                the behavior of the device. The value of this parameter is
                also returned by the 'sysLocation' object in SNMPv2-MIB.
                "
  DEFVAL        { "" }
  ::= { systemGroup 300 }

 -- ***************************************************************************
 
 -- Group:Http Group

 -- ***************************************************************************
 
 httpClientGroup OBJECT IDENTIFIER
  ::= { systemGroup 1000 }
  -- Scalar:HTTP User-Agent Header Format

  httpUaHeaderFormat OBJECT-TYPE
   SYNTAX        OCTET STRING
   MAX-ACCESS    read-write
   STATUS        current
   DESCRIPTION " HTTP User-Agent Header Format

                 The text to display in the HTTP User-Agent Header. Macros can
                 be used to include information specific to the unit.

                 The supported macros are:

                   * %version% - Application version.
                   * %mac% - MAC address.
                   * %product% - Product name.
                   * %profile% - Profile.
                   * %serial% - Serial number.
                   * %% - Insert % character.

                 "
   DEFVAL        { "%product%/v%version% %profile%" }
   ::= { httpClientGroup 100 }

 -- End of group:Http Group

-- End of group:System

-- ****************************************************************************

-- Group:Notification Messages Configuration

-- ****************************************************************************

notificationsGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 60010 }
 -- Scalar:Minimal Severity of Notification

 minSeverity OBJECT-TYPE
  SYNTAX        INTEGER { disable(0) , debug(100) , info(200) , warning(300) ,
                error(400) , critical (500) }
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Minimal Severity of Notification

                Sets the minimal severity to issue a notification message
                incoming from this service.

                  * Disable: No notification is issued.
                  * Debug: All notification messages are issued.
                  * Info: Notification messages with a 'Informational' and
                    higher severity are issued.
                  * Warning: Notification messages with a 'Warning' and higher
                    severity are issued.
                  * Error: Notification messages with an 'Error' and higher
                    severity are issued.
                  * Critical: Notification messages with a 'Critical' severity
                    are issued.

                "
  DEFVAL        { warning }
  ::= { notificationsGroup 100 }

-- End of group:Notification Messages Configuration

-- ****************************************************************************

-- Group:Configuration Settings

-- ****************************************************************************

configurationGroup OBJECT IDENTIFIER
 ::= { hocMIBObjects 60020 }
 -- Scalar:Need Restart

 needRestartInfo OBJECT-TYPE
  SYNTAX        INTEGER { no(0) , yes(100) }
  MAX-ACCESS    read-only
  STATUS        current
  DESCRIPTION " Need Restart

                Indicates if the service needs to be restarted for the
                configuration to fully take effect.

                  * Yes: Service needs to be restarted.
                  * No: Service does not need to be restarted.

                Services can be restarted by using the
                Scm.ServiceCommands.Restart command.

                "
  ::= { configurationGroup 100 }

-- End of group:Configuration Settings

END
