-- ****************************************************************************
-- ****************************************************************************
-- ****************************************************************************
--
--  File: MX-SNTP-MIB.my
--
--  Package: MediatrixMibs
--
-- ****************************************************************************
-- ****************************************************************************
--
--      Copyright(c) 2001 Mediatrix Telecom, Inc.
--      Copyright(c) 2007 Media5 Corporation ("Media5")
--
--  NOTICE:
--   This document contains information that is confidential and proprietary to
--   Media5.
--
--   Media5 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 prior written approval by Media5.
--
--   Media5 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-SNTP-MIB
DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Unsigned32
    FROM SNMPv2-SMI
        OBJECT-GROUP,
        MODULE-COMPLIANCE
    FROM SNMPv2-CONF
        MxIpHostName,
        MxIpConfigSource,
        MxIpPort,
        MxIpSelectConfigSource
    FROM MX-TC
        ipAddressStatus,
        ipAddressConfig, 
        mediatrixConfig
    FROM MX-SMI;

sntpMIB MODULE-IDENTITY
    LAST-UPDATED "0710240000Z"
    ORGANIZATION "Mediatrix Telecom, Inc."
    CONTACT-INFO "Mediatrix Telecom, Inc. 
                  4229, Garlock Street
                  Sherbrooke (Quebec)
                  Canada
                  Phone: (819) 829-8749
                  "
    DESCRIPTION "This MIB describes the parameters used by the SNTP
                 protocol."
    -- ************************************************************************
    -- Revision history
    -- ************************************************************************
    REVISION    "0710240000Z"
    DESCRIPTION "Change the default value and description of sntpTimeZoneString,
                 since 2007 DST begin on the second Sunday in March and end the 
                 first Sunday in November"
    REVISION    "0302240000Z"
    DESCRIPTION "February 24, 2003
                 Deprecated sntpTimeZoneStringIsValid.
                 July 05, 2002
                 Clarified the description of sntpTimeZoneString and added
                 example values
                 April 23, 2002
                 Creation"
    ::= { mediatrixConfig 65 }

sntpMIBObjects  OBJECT IDENTIFIER ::= { sntpMIB 1 }
sntpConformance OBJECT IDENTIFIER ::= { sntpMIB 2 }

-- Add the SNTP general parameters

    sntpEnable OBJECT-TYPE
        SYNTAX        INTEGER {
                             disable(0),
                             enable(1)
                            }
        MAX-ACCESS    read-write
        STATUS        current
        DESCRIPTION   "Enable/Disable the SNTP client."
        DEFVAL         { disable }
        ::= { sntpMIBObjects 5 }

    sntpSynchronizationPeriod OBJECT-TYPE
        SYNTAX      Unsigned32 (1..1440)
        MAX-ACCESS    read-write
        STATUS        current
        DESCRIPTION "Time interval (in minutes) between request made to the SNTP server.
                     The result will be used to synchronize the unit with the time server.
                     The maximum value is set to 1 440 minutes which corresponds to 24 hours."
        DEFVAL         { 1440 }
        ::= { sntpMIBObjects 10 }

    sntpSynchronizationPeriodOnError OBJECT-TYPE
        SYNTAX      Unsigned32 (1..1440)
        MAX-ACCESS    read-write
        STATUS        current
        DESCRIPTION "Time interval (in minutes) between retries after an unsuccessfull
                     attempt to reach the SNTP server.
                     The maximum value is set to 1 440 minutes which corresponds to 24 hours."
        DEFVAL         { 60 }
        ::= {  sntpMIBObjects 15 }

    sntpTimeZoneConfig OBJECT IDENTIFIER ::= { sntpMIBObjects 25 }

    sntpTimeZoneString OBJECT-TYPE
        SYNTAX        OCTET STRING (SIZE(0..255))
        MAX-ACCESS    read-write
        STATUS        current
        DESCRIPTION "String describing the time zone to be used. This string
                     MUST use the IEEE 1003.1 POSIX format as defined in
                     bootp-dhcp-option-88.txt.

                     The string format is validated upon entry. Invalid entries will be refused.

                     Here are some example strings.

                     Pacific Time (Canada & US) :       PST8DST7,M3.2.0/02:00:00,M11.1.0/02:00:00
                     Mountain Time (Canada & US) :      MST7DST6,M3.2.0/02:00:00,M11.1.0/02:00:00
                     Central Time (Canada & US) :       CST6DST5,M3.2.0/02:00:00,M11.1.0/02:00:00
                     Eastern Time (Canada & US) :       EST5DST4,M3.2.0/02:00:00,M11.1.0/02:00:00
                     Atlantic Time (Canada) :           AST4DST3,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         { "EST5DST4,M3.2.0/02:00:00,M11.1.0/02:00:00" }
        ::= { sntpTimeZoneConfig 15 }

    sntpTimeZoneStringIsValid OBJECT-TYPE
        SYNTAX        INTEGER {
                             invalid(0),
                             valid(1)
                            }        
        MAX-ACCESS    read-only
        STATUS        deprecated
        DESCRIPTION "This object is deprecated. This means some agents may implement it and some
                     agents may not implement it.
                     
                     Diagnosis of the string entered in
                     sntpPosixTimeZone.

                     Possible values are: invalid (0)
                                          valid   (1)

                     If the value is invalid, an error is found in the
                     entered string, please make sure that the syntax
                     respects the POSIX string format."
        DEFVAL { invalid }
        ::= { sntpTimeZoneConfig 20 }        

-- Add the SNTP IP addresses specifics parameters

    ipAddressStatusSntp OBJECT IDENTIFIER ::= { ipAddressStatus 80 }
    ipAddressConfigSntp OBJECT IDENTIFIER ::= { ipAddressConfig 80 }

-- Add the SNTP status information

    sntpConfigSource OBJECT-TYPE
        SYNTAX      MxIpConfigSource
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Indicates the source used for the provisioning of 
                     the SNTP MIB objects."
        DEFVAL { dhcp }
        ::= { ipAddressStatusSntp  1  } 

    sntpHost OBJECT-TYPE
        SYNTAX      MxIpHostName
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "SNTP server IP address or domain name."
        DEFVAL      { "192.168.0.10" }
        ::= { ipAddressStatusSntp  10 }

    sntpPort OBJECT-TYPE
        SYNTAX      MxIpPort
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "SNTP server IP port number."
        DEFVAL { 123 }
        ::= { ipAddressStatusSntp 11 }

-- Add the SNTP configuration information

    sntpSelectConfigSource OBJECT-TYPE
        SYNTAX      MxIpSelectConfigSource
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Indicates the source to be used for the provisioning of 
                     the SNTP MIB objects."
        DEFVAL      { dhcp }
        ::= { ipAddressConfigSntp 1 }

    ipAddressConfigSntpStatic OBJECT IDENTIFIER ::= { ipAddressConfigSntp 10 }
    
    -- Add the static parameters
    
    sntpStaticHost OBJECT-TYPE
        SYNTAX      MxIpHostName
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Static SNTP server IP address or domain name."
        DEFVAL      { "192.168.0.10" }
        ::= { ipAddressConfigSntpStatic 10 }

    sntpStaticPort OBJECT-TYPE
        SYNTAX      MxIpPort
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Static SNTP server IP port number."
        DEFVAL      { 123 }
        ::= { ipAddressConfigSntpStatic 11 }

    -- ************************************************************************
    -- Conformance information
    -- ************************************************************************
    sntpCompliances OBJECT IDENTIFIER ::= { sntpConformance 1 }

    sntpBasicComplVer1 MODULE-COMPLIANCE
        STATUS      current
        DESCRIPTION
            "Minimal parameters definitions to support SNTP."
        MODULE -- This Module
            MANDATORY-GROUPS { 
                                sntpBasicGroupVer1,
                                sntpServerGroupVer1
                             }
        ::= { sntpCompliances 1 }

     -- ************************************************************************
    -- MIB variable grouping
    -- ************************************************************************
    sntpGroups OBJECT IDENTIFIER ::= { sntpConformance 2 }

    sntpBasicGroupVer1 OBJECT-GROUP
        OBJECTS {
                 sntpEnable,
                 sntpSynchronizationPeriod,
                 sntpSynchronizationPeriodOnError,
                 sntpTimeZoneString,
                 sntpTimeZoneStringIsValid
                }
        STATUS current
        DESCRIPTION
            "This group holds the minimal set of objects to configure the SNTP
             service."
        ::= { sntpGroups 1 } 

    sntpServerGroupVer1 OBJECT-GROUP
        OBJECTS {
                    sntpConfigSource,
                    sntpHost,
                    sntpPort,
                    sntpSelectConfigSource,
                    sntpStaticHost,
                    sntpStaticPort
                }
        STATUS current
        DESCRIPTION
            "This group holds the minimal set of objects that define 
             SNTP server."
        ::= { sntpGroups 2 }

END
