RADLAN-TIMESYNCHRONIZATION-MIB DEFINITIONS ::= BEGIN

IMPORTS
    rnd                                         FROM RADLAN-MIB
    TruthValue                                  FROM RADLAN-SNMPv2
    DisplayString                               FROM SNMPv2-TC-v1
    Unsigned32, Integer32, IpAddress            FROM SNMPv2-SMI
    MODULE-IDENTITY, OBJECT-TYPE                FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, RowStatus               FROM SNMPv2-TC;

rlTimeSynchronization MODULE-IDENTITY
      LAST-UPDATED "200408030024Z"
      ORGANIZATION "Radlan Computer Communication Ltd."
      CONTACT-INFO
              "radlan.com"
      DESCRIPTION
              "The MIB module describes the private MIB for SNTP & TIME definitions."
      REVISION     "200311230024Z"
      DESCRIPTION
              "Initial revision"
      ::= { rnd 92 }

rlTimeSyncMethodMode OBJECT IDENTIFIER ::= { rlTimeSynchronization 1 }
rlSntpNtpClient  OBJECT IDENTIFIER ::= { rlTimeSynchronization 2 }

rlSntpNtpConfig  OBJECT IDENTIFIER ::= { rlSntpNtpClient 1 }
rlSntpConfig  OBJECT IDENTIFIER ::= { rlSntpNtpClient 2 }
rlNtpConfig  OBJECT IDENTIFIER ::= { rlSntpNtpClient 3 }

--
-- Textual Conventions
--

NTPTimeStamp ::= TEXTUAL-CONVENTION
        DISPLAY-HINT "4d.4d"
        STATUS       current
        DESCRIPTION  "NTP timestamps are represented as a 64-bit
                      unsigned fixed-point number, in seconds relative to
                      00:00 on 1 January 1900.  The integer part is in the
                      first 32 bits and the fraction part is in the last
                      32 bits."
        REFERENCE    "D.L. Mills, 'Network Time Protocol (Version 3)',
                      RFC-1305, March 1992, Section 3.1"
        SYNTAX       OCTET STRING (SIZE (8))

NTPSignedTimeValue ::= TEXTUAL-CONVENTION
        DISPLAY-HINT "2d.2d"
        STATUS       current
        DESCRIPTION  "The time in seconds that could represent signed
                      quantities like time delay with respect to some
                      source.  This textual-convention is specific to RADLAN
                      implementation of NTP where 32-bit integers are used
                      for such quantities.  The signed integer part is in
                      the first 16 bits and the fraction part is in the
                      last 16 bits."
        SYNTAX       OCTET STRING (SIZE (4))

NTPStratum ::= TEXTUAL-CONVENTION
        STATUS       current
        DESCRIPTION  "Indicates the stratum of the clock.  The stratum
                      defines the accuracy of a time server.  Higher the
                      stratum, lower the accuracy.
                      0, unspecified
                      1, primary reference (e.g., calibrated atomic clock,
                         radio clock)
                      2-255, secondary reference (via NTP)"
        REFERENCE    "D.L. Mills, 'Network Time Protocol (Version 3)',
                      RFC-1305, March 1992, Section 2.2"
        SYNTAX       Integer32 (0..255)

-- ----------------------------------------------------------------------
-- Global TimeSyncMethod
-- ----------------------------------------------------------------------

rlTimeSyncMibVersion OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "TimeSync Mib Version."
        ::= { rlTimeSyncMethodMode 1 }

rndTimeSyncManagedTime  OBJECT-TYPE
        SYNTAX      DisplayString (SIZE(6))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The time will be sent in the format hhmmss"
        ::= { rlTimeSyncMethodMode 2 }

rndTimeSyncManagedDate  OBJECT-TYPE
        SYNTAX      DisplayString (SIZE(6))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The date will be sent in the format ddmmyy"
         ::= { rlTimeSyncMethodMode 3 }

rndTimeSyncManagedDateTime  OBJECT-TYPE
        SYNTAX      DisplayString (SIZE(12))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The date and time will be sent in the format ddmmyyhhmmss"
        ::= { rlTimeSyncMethodMode 4 }

rlTimeSyncMethod OBJECT-TYPE
        SYNTAX      INTEGER {
                       none(1),
                       sntp(2),
                       ntp(3)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Method to be used for time synchronization in the device."
        DEFVAL      { none }
        ::= { rlTimeSyncMethodMode 5 }

rlTimeZone OBJECT-TYPE
        SYNTAX      DisplayString (SIZE(1..6))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Offset from Greenwich time (format [+/-]hh:mm)."
        ::=  {rlTimeSyncMethodMode 6 }

rlTimeZoneCode OBJECT-TYPE
        SYNTAX      DisplayString (SIZE(0..4))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Code definition for current TimeZone."
        ::=  {rlTimeSyncMethodMode 7 }

rlDaylightSavingTimeMode OBJECT-TYPE
        SYNTAX      INTEGER {
                       recurring(1),
                       date(2),
                       none(3)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Daylight Saving Time - Recurring/Date/None."
        DEFVAL      { none }
        ::= { rlTimeSyncMethodMode 8 }

rlDaylightSavingTimeStart OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE(14))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Daylight Saving Time start date.
                     In recurring mode: week wday month hh:mm
                     In date mode:      month day year hh:mm
                     week:  0-6  (0=First, 6=Last)
                     wday:  1-7  (Sunday-Saturday)
                     month: 1-12 (January-December)
                     day:   1-31
                     year:  0-99 (2000-2099)
                     hh:    0-23 (hours)
                     mm:    0-59 (minutes)"
        ::= { rlTimeSyncMethodMode 9 }

rlDaylightSavingTimeEnd OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE(14))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Daylight Saving Time end date.
                     In recurring mode: week wday month hh:mm
                     In date mode:      month day year hh:mm
                     week:  0-6  (0=First, 6=Last)
                     wday:  1-7  (Sunday-Saturday)
                     month: 1-12 (January-December)
                     day:   1-31
                     year:  0-99 (2000-2099)
                     hh:    0-23 (hours)
                     mm:    0-59 (minutes)"
        ::= { rlTimeSyncMethodMode 10 }

rlDaylightSavingTimeOffset OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Daylight Saving Time - The number of minutes to add to
                     the clock during summer time."
        DEFVAL      { 60 }
        ::= { rlTimeSyncMethodMode 11 }

rlDaylightSavingTimeCode OBJECT-TYPE
        SYNTAX      DisplayString (SIZE(0..4))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Code definition for current Daylight Saving Time."
        ::=  {rlTimeSyncMethodMode 12 }

rlTZDSTOffset OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Local Time Zone and Daylight Saving Time offset
                     in seconds."
        ::= { rlTimeSyncMethodMode 13 }

-- ----------------------------------------------------------------------
-- SNTP/NTP client configuration parameters
-- ----------------------------------------------------------------------

rlSntpNtpMibVersion OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "SntpNtp Mib Version."
        ::= { rlSntpNtpConfig 1 }

rlSntpNtpConfigMode OBJECT-TYPE
        SYNTAX      INTEGER {
                       none(1),
                       unicast(2),
                       anycast(3),
                       multicast(4),
                       unicastAnycast(5),
                       unicastMulticast(6),
                       anycastMulticast(7),
                       unicastAnycastMulticast(8)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Current configuration operational mode of SNTP/NTP client."
        DEFVAL      { none }
        ::= { rlSntpNtpConfig 2 }

rlSntpNtpConfigSysStratum OBJECT-TYPE
        SYNTAX      NTPStratum
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The stratum of the local clock. If the value is set
                     to 1, i.e., this is a primary reference, then the
                     Primary-Clock procedure described in Section 3.4.6,
                     in RFC-1305 is invoked."
        ::= { rlSntpNtpConfig 3 }

rlSntpNtpConfigPollInterval OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Period of time (in seconds) between succesive attempts to
                     perform an update via SNTP."
        DEFVAL      { 1024 }
        ::= { rlSntpNtpConfig 4 }

rlSntpNtpConfigPrimaryPollSrvAddr OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Ip Address of a trusted SNTP server for polling."
        ::= { rlSntpNtpConfig 5 }

rlSntpNtpConfigPrimaryPollSrvMrid OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The mrid of the primary server."
        ::= { rlSntpNtpConfig 6 }

rlSntpNtpConfigPrimaryPollSrvIfIndex OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The interface addressed of the primary server."
        ::= { rlSntpNtpConfig 7 }

rlSntpNtpConfigPrimaryPollSrvStratum OBJECT-TYPE
        SYNTAX      NTPStratum
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The stratum of the primary polling server."
        ::= { rlSntpNtpConfig 8 }

rlSntpNtpConfigSyncSrvAddr OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Ip Address of the synced server."
        ::= { rlSntpNtpConfig 9 }

rlSntpNtpConfigSyncSrvMrid OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The mrid of the synced server."
        ::= { rlSntpNtpConfig 10 }

rlSntpNtpConfigSyncSrvIfIndex OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The interface addressed of the synced server."
        ::= { rlSntpNtpConfig 11 }

rlSntpNtpConfigSyncSrvType OBJECT-TYPE
        SYNTAX      INTEGER {
                       none(1),
                       unicast(2),
                       anycast(3),
                       broadcast(4)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Synced server type."
        DEFVAL      { none }
        ::= { rlSntpNtpConfig 12 }


rlSntpNtpConfigSyncSrvStratum OBJECT-TYPE
        SYNTAX      NTPStratum
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The stratum of the synced server."
        ::= { rlSntpNtpConfig 13 }

rlSntpNtpConfigRetryTimeout OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "SNTP/NTP requests Retry Interval."
        ::= { rlSntpNtpConfig 14 }

rlSntpNtpConfigRetryCnt OBJECT-TYPE
        SYNTAX      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "SNTP/NTP requests Retry Count."
        ::= { rlSntpNtpConfig 15 }

-- ----------------------------------------------------------------------
-- SNTP client configuration parameters
-- ----------------------------------------------------------------------

rlSntpClientMode OBJECT-TYPE
        SYNTAX      INTEGER {
                       none(1),
                       active(2),
                       passive(3)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Current operational mode of SNTP client."
        DEFVAL      { none }
        ::= { rlSntpConfig 1 }

rlSntpUnicastAdminState OBJECT-TYPE
        SYNTAX      INTEGER {
                       enabled(1),
                       disabled(2)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP Unicast Administrative state - Enable/Disable SNTP.
                     In case of reinitializing polling or time
                     synchronization this MIB is modified. The MIB can
                     be enabled even thought it is already enabled."
        DEFVAL      { disabled }
        ::= { rlSntpConfig 2 }

rlSntpBroadcastAdminState OBJECT-TYPE
        SYNTAX      INTEGER {
                       enabled(1),
                       disabled(2)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP Broadcast Administrative state - Enable/Disable SNTP.
                     In case of reinitializing polling or time
                     synchronization this MIB is modified. The MIB can
                     be enabled even thought it is already enabled."
        DEFVAL      { disabled }
        ::= { rlSntpConfig 3 }

rlSntpAnycastAdminState OBJECT-TYPE
        SYNTAX      INTEGER {
                       enabled(1),
                       disabled(2)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP Anycast Administrative state - Enable/Disable SNTP.
                     In case of reinitializing polling or time
                     synchronization this MIB is modified. The MIB can
                     be enabled even thought it is already enabled."
        DEFVAL      { disabled }
        ::= { rlSntpConfig 4 }

rlSntpUnicastPollState OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP Unicast poll state - TRUE for polled."
        DEFVAL      { false }
        ::= { rlSntpConfig 5 }

rlSntpBroadcastPollState OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP Broadcast poll state - TRUE for polled."
        DEFVAL      { false }
        ::= { rlSntpConfig 6 }

rlSntpAnycastPollState OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP Anycast poll state - TRUE for polled."
        DEFVAL      { false }
        ::= { rlSntpConfig 7 }

rlSntpAuthenticationState OBJECT-TYPE
        SYNTAX      INTEGER {
                       enabled(1),
                       disabled(2)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP authentication state- Enable/Disable SNTP."
        DEFVAL      { disabled }
        ::= { rlSntpConfig 8 }

rlTimeValidFlag OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Is time valid."
        DEFVAL      { false }
        ::= { rlSntpConfig 9 }

-- ----------------------------------------------------------------------
-- Table for configuring Interfaces (Broadcast)
-- ----------------------------------------------------------------------

rlSntpConfigBroadcastTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RlSntpBroadcastEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "A table containing broadcast mode information per
                     interface."
        ::= { rlSntpConfig 10 }

rlSntpBroadcastEntry OBJECT-TYPE
        SYNTAX      RlSntpBroadcastEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "Private paramters for interface:
                     sntp status, broadcast mode."
        INDEX       { rlSntpBroadcastIfIndex }
        ::= { rlSntpConfigBroadcastTable 1 }

RlSntpBroadcastEntry ::=
        SEQUENCE {
           rlSntpBroadcastIfIndex        INTEGER,
           rlSntpBroadcastIfAdminState   INTEGER,
           rlSntpBroadcastMode           INTEGER,
           rlSntpBroadcastPolled         TruthValue,
           rlSntpBroadcastAddress        IpAddress,
           rlSntpBroadcastStratum        NTPStratum,
           rlSntpBroadcastLastResp       NTPTimeStamp,
           rlSntpBroadcastStatus         INTEGER,
           rlSntpBroadcastOffset         NTPTimeStamp,
           rlSntpBroadcastDelay          NTPSignedTimeValue,
           rlSntpBroadcastRowStatus      RowStatus
        }

rlSntpBroadcastIfIndex OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "The interface addressed by this entry."
        ::=  {rlSntpBroadcastEntry 1}

rlSntpBroadcastIfAdminState OBJECT-TYPE
        SYNTAX      INTEGER {
                       enabled(1),
                       disabled(2)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP interface Adminstrative state- Enable/Disable SNTP.
                     In case of reinitializing polling or time
                     synchronization this MIB is modified. The MIB can
                     be enabled even thought it is already enabled."
        DEFVAL      { disabled }
        ::= { rlSntpBroadcastEntry 2 }

rlSntpBroadcastMode OBJECT-TYPE
        SYNTAX      INTEGER {
                       none(1),
                       receive(2),
                       send(3),
                       receiveSend(4)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "SNTP/NTP Broadcast Mode.
                     none        - no broadcast SNTP packets are received or sent.
                     Receive     - host only receive SNTP packets that were sent
                                   to broadcast address (were not directed to
                                   the host). This is multicast mode in the RFC.
                     Send        - host only send SNTP packets and wait for replies
                                   directed to the host. This is anycast mode in
                                   the RFC.
                     ReceiveSend - host receive broadcast messages (destination
                                   is broadcast address in the received messages)
                                   and send SNTP packets to wait for replies
                                   directed to the host (destination address
                                   of the reply is the host address). This mode
                                   combines anycast and multicast modes in the
                                   RFC."
        DEFVAL      { receiveSend }
        ::= { rlSntpBroadcastEntry 3 }

rlSntpBroadcastPolled OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "TRUE if participating in polling cycle, else FALSE."
        DEFVAL { false }
        ::= {  rlSntpBroadcastEntry 4 }

rlSntpBroadcastAddress OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Ip Address of a trusted SNTP server."
        ::= { rlSntpBroadcastEntry 5 }

rlSntpBroadcastStratum OBJECT-TYPE
        SYNTAX      NTPStratum
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The stratum of this server."
        ::= { rlSntpBroadcastEntry 6 }

rlSntpBroadcastLastResp OBJECT-TYPE
        SYNTAX      NTPTimeStamp
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "SNTP Broadcast Last Response Time"
        ::= { rlSntpBroadcastEntry 7 }

rlSntpBroadcastStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                       unknown(1),
                       inProcess(2),
                       up(3),
                       down(4)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The Operational State of the remote IP Address of
                     the SNTP Broadcast.
                     unknown     - requests were not sent yet.
                     inProcess   - replies were not received yet.
                     up          - server sent SNTP packets.
                     down        - server stopped sending SNTP packets."
        DEFVAL      { unknown }
        ::= { rlSntpBroadcastEntry 8 }

rlSntpBroadcastOffset OBJECT-TYPE
        SYNTAX      NTPTimeStamp
        UNITS       "seconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The estimated offset of the server's clock relative to
                 the local clock, in seconds.  The host determines the
                 value of this object using the algorithm described in
                 RFC 2030."
        ::= { rlSntpBroadcastEntry 9 }

rlSntpBroadcastDelay OBJECT-TYPE
        SYNTAX      NTPSignedTimeValue
        UNITS       "seconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The estimated round-trip delay of the server's clock
                 relative to the local clock over the network path
                 between them, in seconds. The host determines the
                 value of this object using the algorithm described in
                 RFC 2030."
        ::= { rlSntpBroadcastEntry 10 }

rlSntpBroadcastRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The Status of this SNTP broadcast interface
                     information."
        ::= { rlSntpBroadcastEntry 11 }


rlSntpConfigAnycastTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RlSntpAnycastEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "A table containing anycast information per
                     interface."
        ::= { rlSntpConfig 11 }

rlSntpAnycastEntry OBJECT-TYPE
        SYNTAX      RlSntpAnycastEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "Private paramters for interface:
                     server info."
        INDEX       { rlSntpAnycastIfIndex }
        ::= { rlSntpConfigAnycastTable 1 }

RlSntpAnycastEntry ::=
        SEQUENCE {
           rlSntpAnycastIfIndex          INTEGER,
           rlSntpAnycastAddress          IpAddress,
           rlSntpAnycastStratum          NTPStratum,
           rlSntpAnycastLastResp         NTPTimeStamp,
           rlSntpAnycastStatus           INTEGER,
           rlSntpAnycastOffset           NTPTimeStamp,
           rlSntpAnycastDelay            NTPSignedTimeValue,
           rlSntpAnycastRowStatus        RowStatus
        }

rlSntpAnycastIfIndex OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "The interface addressed by this entry."
        ::=  {rlSntpAnycastEntry 1}

rlSntpAnycastAddress OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Ip Address of a trusted SNTP server."
        ::= { rlSntpAnycastEntry 2 }

rlSntpAnycastStratum OBJECT-TYPE
        SYNTAX      NTPStratum
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The stratum of this server."
        ::= { rlSntpAnycastEntry 3 }

rlSntpAnycastLastResp OBJECT-TYPE
        SYNTAX      NTPTimeStamp
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "SNTP Anycast Last Response Time"
        ::= { rlSntpAnycastEntry 4 }

rlSntpAnycastStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                       unknown(1),
                       inProcess(2),
                       up(3),
                       down(4)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The Operational State of the remote IP Address of
                     the SNTP Anycast.
                     unknown     - requests were not sent yet.
                     inProcess   - replies were not received yet.
                     up          - server sent SNTP packets.
                     down        - server stopped sending SNTP packets."
        DEFVAL      { unknown }
        ::= { rlSntpAnycastEntry 5 }

rlSntpAnycastOffset OBJECT-TYPE
        SYNTAX      NTPTimeStamp
        UNITS       "seconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The estimated offset of the server's clock relative to
                 the local clock, in seconds.  The host determines the
                 value of this object using the algorithm described in
                 RFC 2030."
        ::= { rlSntpAnycastEntry 6 }

rlSntpAnycastDelay OBJECT-TYPE
        SYNTAX      NTPSignedTimeValue
        UNITS       "seconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The estimated round-trip delay of the server's clock
                 relative to the local clock over the network path
                 between them, in seconds. The host determines the
                 value of this object using the algorithm described in
                 RFC 2030."
        ::= { rlSntpAnycastEntry 7 }

rlSntpAnycastRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The Status of this SNTP anycast interface
                     information."
        ::= { rlSntpAnycastEntry 8 }

-- ----------------------------------------------------------------------
-- Table for configuring Servers (Unicast)
-- ----------------------------------------------------------------------

rlSntpConfigServerTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RlSntpServerEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "A table containing trusted SNTP servers to be queried in
                     unicast or broadcast mode."
        ::= { rlSntpConfig 12 }

rlSntpServerEntry OBJECT-TYPE
        SYNTAX      RlSntpServerEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "A trusted server."
        INDEX       { rlSntpServerAddress }
        ::= { rlSntpConfigServerTable 1 }

RlSntpServerEntry ::=
        SEQUENCE {
           rlSntpServerAddress           IpAddress,
           rlSntpServerPolled            TruthValue,
           rlSntpServerStratum           NTPStratum,
           rlSntpServerLastResp          NTPTimeStamp,
           rlSntpServerStatus            INTEGER,
           rlSntpServersOffset           NTPTimeStamp,
           rlSntpServersDelay            NTPSignedTimeValue,
           rlSntpServersKeyIdentifier    Unsigned32,
           rlSntpServerRowStatus         RowStatus
        }

rlSntpServerAddress OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "Ip Address of a trusted SNTP server."
        ::= { rlSntpServerEntry 1 }

rlSntpServerPolled OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "TRUE if participating in polling cycle, else FALSE."
        DEFVAL { false }
        ::= {  rlSntpServerEntry 2 }

rlSntpServerStratum OBJECT-TYPE
        SYNTAX      NTPStratum
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The stratum of this server."
        ::= { rlSntpServerEntry 3 }

rlSntpServerLastResp OBJECT-TYPE
        SYNTAX      NTPTimeStamp
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "SNTP Server Last Response Time"
        ::= { rlSntpServerEntry 4 }

rlSntpServerStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                       unknown(1),
                       inProcess(2),
                       up(3),
                       down(4)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "The Operational State of the remote IP Address of
                     the SNTP Server.
                     unknown     - requests were not sent yet.
                     inProcess   - replies were not received yet.
                     up          - server sent SNTP packets.
                     down        - server stopped sending SNTP packets."
        DEFVAL      { unknown }
        ::= { rlSntpServerEntry 5 }

rlSntpServersOffset OBJECT-TYPE
        SYNTAX      NTPTimeStamp
        UNITS       "seconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The estimated offset of the server's clock relative to
                 the local clock, in seconds.  The host determines the
                 value of this object using the algorithm described in
                 RFC 2030."
        ::= { rlSntpServerEntry 6 }

rlSntpServersDelay OBJECT-TYPE
        SYNTAX      NTPSignedTimeValue
        UNITS       "seconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
                "The estimated round-trip delay of the server's clock
                 relative to the local clock over the network path
                 between them, in seconds. The host determines the
                 value of this object using the algorithm described in
                 RFC 2030."
        ::= { rlSntpServerEntry 7 }

rlSntpServersKeyIdentifier OBJECT-TYPE
        SYNTAX      Unsigned32
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Authentication key identifier. The valid range is
                     1-4294967295.
                     Value zero, means no authentication is being done."
        ::= { rlSntpServerEntry 8 }

rlSntpServerRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The Status of this SNTP server information."
        ::= { rlSntpServerEntry 9 }

-- ----------------------------------------------------------------------
-- Table for configuring authentication keys
-- ----------------------------------------------------------------------

rlSntpConfigAuthenticationTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RlSntpAuthenticationEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "A table authentication keys."
        ::= { rlSntpConfig 13 }

rlSntpAuthenticationEntry OBJECT-TYPE
        SYNTAX      RlSntpAuthenticationEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "Keys information for authenticationof NTP packets."
        INDEX       { rlSntpAuthenticationKeyID }
        ::= { rlSntpConfigAuthenticationTable 1 }

RlSntpAuthenticationEntry ::=
        SEQUENCE {
           rlSntpAuthenticationKeyID        Unsigned32 (1..4294967295),
           rlSntpAuthenticationKeyValue     DisplayString,
           rlSntpAuthenticationKeyState     INTEGER,
           rlSntpAuthenticationRowStatus    RowStatus
        }

rlSntpAuthenticationKeyID OBJECT-TYPE
        SYNTAX      Unsigned32 (1..4294967295)
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The key identifier. Valid rabge for key identifier
                     is 1-4294967295."
        ::=  {rlSntpAuthenticationEntry 1}

rlSntpAuthenticationKeyValue OBJECT-TYPE
        SYNTAX      DisplayString (SIZE(1..8))
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Key value."
        ::= { rlSntpAuthenticationEntry 2 }

rlSntpAuthenticationKeyState OBJECT-TYPE
        SYNTAX      INTEGER {
                       enabled(1),
                       disabled(2)
                    }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "Authentication key state - Enable/Disable key."
        DEFVAL      { disabled }
        ::= { rlSntpAuthenticationEntry 3 }

rlSntpAuthenticationRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The Status of this Authentication key information."
        ::= { rlSntpAuthenticationEntry 4 }

END
