
RC-NTP-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Counter32, IpAddress, Integer32
        FROM SNMPv2-SMI
    DisplayString, TruthValue, RowStatus
        FROM SNMPv2-TC
    rcNtp
        FROM RAPID-CITY
    InetAddressType, InetAddress
        FROM INET-ADDRESS-MIB;


rcNtpMib MODULE-IDENTITY
       LAST-UPDATED     "202005280000Z"
       ORGANIZATION     "Bay Networks, Rapid-City Group"
       CONTACT-INFO     "
                                        Edwin Tsang
                         Postal:        Bay Networks, Inc.
                                        4401 Great America Parkway
                                        Santa Clara, CA 95052-8185

                         Tel:           408-495-6159
                         Fax:           408-495-5215
                         E-mail:        edwin_tsang@baynetworks.com
                        "
       DESCRIPTION      "Enterprise MIB for the Accelar product family."

       REVISION "202005280000Z" -- 28 May. 2020
       DESCRIPTION "Version 14: Add rcNtpv4ServerHostname
	   			Based on 8.1.60.0 MRT check (Prem)"

       REVISION "201811060000Z" -- 06 Nov. 2018
       DESCRIPTION "Version 13: Add rcNtpRestrictTable
	   			Requested by Mihaela Roxana Dodon - ITC Team (Prem)"

       REVISION "201712070000Z" -- 07 Dec.. 2017
       DESCRIPTION "Version 12: Added rcNtpGlobalVersion
	   			Requested by ITC Team
				stream - 90.17.5.1"

       REVISION "201710100000Z" -- 10 Oct. 2017
       DESCRIPTION "Version 11: Added rcNtpv4GlobalInterval,
	   			rcNtpv4MasterEnable and
				rcNtpv4MasterStratum.
	   			Requested by ITC Team
				stream - 90.17.5.1"
	   
       REVISION "201708240000Z" -- 24 Aug. 2017
       DESCRIPTION "Version 10: Added rcNtpv4ServerTable
	   			Requested by ITC Team
				stream - 90.17.5.0"
	   
       REVISION "201510160000Z" -- 16 Oct. 2015
       DESCRIPTION "Version 9: Added rcNtpKetType"

	   
       REVISION "201406190000Z" -- 19 June 2014
       DESCRIPTION "Version 8: Corrected typo in RcNtpServerEntry"

       REVISION "201303210000Z" -- 21 March 2013
       DESCRIPTION "Version 7: Removed rcNtpGlobalIPAddressSourceType object
           	               and added rcNtpServerSourceIpAddr object"

       REVISION "201303040000Z" -- 04 March 2013
       DESCRIPTION "Version 6: Added rcNtpGlobalIPAddressSourceType object"

       REVISION "201302250000Z" -- 25 February 2013
       DESCRIPTION "Version 5: Added rcNtpGlobalManualSyncRequest object"

       REVISION "200411300000Z" -- 30 November 2004
       DESCRIPTION "Version 4: Modified the default value for rcNtpServerKeyId"

       REVISION "200407200000Z" -- 20 July 2004
       DESCRIPTION "Version 3: Added version info"  

       ::= { rcNtp 0 }

-- Ntp Group
-- Ntp Global Information

rcNtpGlobal   OBJECT IDENTIFIER        ::= { rcNtp 1 }

rcNtpGlobalEnable OBJECT-TYPE
     SYNTAX       TruthValue
     MAX-ACCESS	 read-write
     STATUS       current
     DESCRIPTION  "Enable/disable NTP feature"
     DEFVAL       { false }
     ::= { rcNtpGlobal 1 }

rcNtpGlobalInterval OBJECT-TYPE
     SYNTAX       INTEGER (10..1440)
     MAX-ACCESS	 read-write
     STATUS       current
     DESCRIPTION  "Time interval between successive NTP updates in minutes."
     DEFVAL       { 15 }
     ::= { rcNtpGlobal 2 }

rcNtpGlobalManualSyncRequest OBJECT-TYPE
     SYNTAX       INTEGER {
                      requestSync(1)
                  }
     MAX-ACCESS   read-write
     STATUS       current
     DESCRIPTION  "This object is used to force the device to 
	           immediately attempt to synchronize with the
		   NTP servers. The value returned on a get is
		   always requestSync(1)."
     ::= { rcNtpGlobal 3 }

rcNtpv4GlobalInterval OBJECT-TYPE
     SYNTAX       INTEGER (4..17)
     MAX-ACCESS	  read-write
     STATUS       current
     DESCRIPTION  "Time interval between successive NTP updates in power of 2."
     DEFVAL       { 6 }
     ::= { rcNtpGlobal 4 }		
     
rcNtpv4MasterEnable OBJECT-TYPE
     SYNTAX       TruthValue
     MAX-ACCESS	  read-write
     STATUS       current
     DESCRIPTION  "Enable or disable ntp server master"
     DEFVAL       { false }  
     ::= { rcNtpGlobal 5 }

rcNtpv4MasterStratum OBJECT-TYPE
     SYNTAX       Integer32 (1..16)
     MAX-ACCESS	  read-write
     STATUS       current
     DESCRIPTION  "The stratum for the ntp server master."
     DEFVAL       { 10 }
     ::= { rcNtpGlobal 6 }

rcNtpGlobalVersion OBJECT-TYPE
     SYNTAX       INTEGER{
     			ntpv3(3),
			ntpv4(4)
			}     	
     MAX-ACCESS	  read-write
     STATUS       current
     DESCRIPTION  "NTP version."
     DEFVAL       { ntpv3 }
     ::= { rcNtpGlobal 7 }

  

-- Ntp Server Table Information

rcNtpServerTable OBJECT-TYPE
     SYNTAX       SEQUENCE OF RcNtpServerEntry
     MAX-ACCESS   not-accessible
     STATUS       current
     DESCRIPTION  "The NTP server table. This table lists the information
                   of a NTP server"
     ::= { rcNtp 2 }

rcNtpServerEntry OBJECT-TYPE
        SYNTAX        RcNtpServerEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION   "A NTP server table entry."
        INDEX         { rcNtpServerAddress }
        ::= { rcNtpServerTable 1 }

RcNtpServerEntry ::=
     SEQUENCE {
             rcNtpServerAddress IpAddress,
             rcNtpServerEnable TruthValue,
             rcNtpServerAuthentication TruthValue,
             rcNtpServerKeyId INTEGER,
             rcNtpServerAccessAttempts Counter32,
             rcNtpServerAccessSuccess Counter32,
             rcNtpServerAccessFailure Counter32,
             rcNtpServerRowStatus RowStatus,
             rcNtpServerStratum DisplayString,
             rcNtpServerVersion DisplayString,
             rcNtpServerRootDelay DisplayString,
             rcNtpServerPrecision DisplayString,
             rcNtpServerReachable DisplayString,
             rcNtpServerSynchronized DisplayString,
             rcNtpServerSourceIpAddr IpAddress
     }

rcNtpServerAddress OBJECT-TYPE
     SYNTAX         IpAddress
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Server IP address of NTP time source referred to in 
                     this table entry." 
     ::= { rcNtpServerEntry 1 }

rcNtpServerEnable OBJECT-TYPE
     SYNTAX         TruthValue
     MAX-ACCESS     read-write
     STATUS         current
     DESCRIPTION    "Enable or disable this server for participation in
                     time update."
     DEFVAL         { true }  
     ::= { rcNtpServerEntry 2 }

rcNtpServerAuthentication OBJECT-TYPE
     SYNTAX         TruthValue
     MAX-ACCESS     read-write
     STATUS         current
     DESCRIPTION    "Enable or disable the MD5 Authentication on this
                     serve."
     DEFVAL         { false }  
     ::= { rcNtpServerEntry 3 }

rcNtpServerKeyId OBJECT-TYPE
     SYNTAX         INTEGER (0..2147483647)
     MAX-ACCESS     read-write
     STATUS         current
     DESCRIPTION    "Public Key used to generate MD5 digest for this 
                     server."
     DEFVAL         { 1 }  
     ::= { rcNtpServerEntry 4 }

rcNtpServerAccessAttempts OBJECT-TYPE
     SYNTAX         Counter32
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "The number of NTP requests sent to this server"
     ::= { rcNtpServerEntry 5 }

rcNtpServerAccessSuccess OBJECT-TYPE
     SYNTAX         Counter32
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "The number of times this server was selected to
                     update the time"
     ::= { rcNtpServerEntry 6 }

rcNtpServerAccessFailure OBJECT-TYPE
     SYNTAX         Counter32
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "The number of times this server was rejected from
                     updating the time"
     ::= { rcNtpServerEntry 7 }

rcNtpServerRowStatus OBJECT-TYPE
        SYNTAX        RowStatus
        MAX-ACCESS    read-write
        STATUS        current
        DESCRIPTION   "Used to create/delete entries."
        ::= { rcNtpServerEntry 8 }

rcNtpServerStratum OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..16))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Stratum of this server"
     ::= { rcNtpServerEntry 9 }

rcNtpServerVersion OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..16))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "NTP version of this server"
     ::= { rcNtpServerEntry 10 }

rcNtpServerRootDelay OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Root Delay of this server"
     ::= { rcNtpServerEntry 11 }

rcNtpServerPrecision OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "NTP precision of this server in seconds"
     ::= { rcNtpServerEntry 12 }

rcNtpServerReachable OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..16))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "NTP Reachability of this server"
     ::= { rcNtpServerEntry 13 }

rcNtpServerSynchronized OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..16))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Status of synchronization with this server"
     ::= { rcNtpServerEntry 14 }

rcNtpServerSourceIpAddr OBJECT-TYPE
     SYNTAX         IpAddress
     MAX-ACCESS     read-write
     STATUS         current
     DESCRIPTION    "Source IP address for NTP packets."
     ::= { rcNtpServerEntry 15 }

-- Ntp Key Table Information

rcNtpKeyTable OBJECT-TYPE
     SYNTAX       SEQUENCE OF RcNtpKeyEntry
     MAX-ACCESS   not-accessible
     STATUS       current
     DESCRIPTION  "The NTP key table. This table lists the private key
                   of the public key Id"
     ::= {rcNtp 3 }

rcNtpKeyEntry OBJECT-TYPE
        SYNTAX        RcNtpKeyEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION   "A NTP key table entry."
        INDEX         { rcNtpKeyId }
        ::= { rcNtpKeyTable 1 }

RcNtpKeyEntry ::=
     SEQUENCE {
             rcNtpKeyId INTEGER,
             rcNtpKeySecret DisplayString,
             rcNtpKeyRowStatus RowStatus,
	     rcNtpKeyType INTEGER
     }

rcNtpKeyId OBJECT-TYPE
     SYNTAX         INTEGER (1..2147483647)
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Public Key used to generate MD5 digest"
     ::= { rcNtpKeyEntry 1 }

rcNtpKeySecret OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..20))
     MAX-ACCESS     read-write
     STATUS         current
     DESCRIPTION    "Private Key used to generate MD5 Digest"
     ::= { rcNtpKeyEntry 2 }

rcNtpKeyRowStatus OBJECT-TYPE
     SYNTAX        RowStatus
     MAX-ACCESS    read-write
     STATUS        current
     DESCRIPTION   "Used to create/delete entries."
     ::= { rcNtpKeyEntry 3 }

rcNtpKeyType OBJECT-TYPE
    SYNTAX      INTEGER {
                    md5(1),
                    sha1(2)
                }
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION     "Key type: MD5 or SHA1"
    DEFVAL          { 1 }
    ::= { rcNtpKeyEntry 4 }

-- Ntp Server Table Information

rcNtpv4ServerTable OBJECT-TYPE
     SYNTAX       SEQUENCE OF RcNtpv4ServerEntry
     MAX-ACCESS   not-accessible
     STATUS       current
     DESCRIPTION  "The NTPv4 server table. This table lists the information
                   of a NTPv4 server"
     ::= { rcNtp 4 }

rcNtpv4ServerEntry OBJECT-TYPE
        SYNTAX        RcNtpv4ServerEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION   "A NTPv4 server table entry."
        INDEX         { rcNtpv4ServerAddressType, rcNtpv4ServerAddress }
        ::= { rcNtpv4ServerTable 1 }

RcNtpv4ServerEntry ::=
     SEQUENCE {
             rcNtpv4ServerAddressType InetAddressType,
             rcNtpv4ServerAddress InetAddress,
             rcNtpv4ServerEnable TruthValue,
             rcNtpv4ServerAuthentication TruthValue,
  	     rcNtpv4ServerKeyId Integer32,
             rcNtpv4ServerRowStatus RowStatus,
             rcNtpv4ServerStratum DisplayString,
             rcNtpv4ServerVersion DisplayString,
             rcNtpv4ServerBroadcast DisplayString,
             rcNtpv4ServerAuthEnabled DisplayString,
             rcNtpv4ServerAuthStatus DisplayString,
             rcNtpv4ServerSynchronized DisplayString,
             rcNtpv4ServerReachable DisplayString,
             rcNtpv4ServerRootDelay DisplayString,
             rcNtpv4ServerRootDisp DisplayString,
             rcNtpv4ServerDelay DisplayString,
             rcNtpv4ServerDispersion DisplayString,
             rcNtpv4ServerOffset DisplayString,
             rcNtpv4ServerPrecision DisplayString,
             rcNtpv4ServerJitter DisplayString,
             rcNtpv4ServerLastEvent DisplayString,
             rcNtpv4ServerHostname DisplayString
     }


rcNtpv4ServerAddressType OBJECT-TYPE
     SYNTAX         InetAddressType
     MAX-ACCESS     not-accessible
     STATUS         current
     DESCRIPTION    "Server IP address type of NTP.
                        It can be either IPv4 or IPv6 ."
     ::= { rcNtpv4ServerEntry 1 }


rcNtpv4ServerAddress OBJECT-TYPE
     SYNTAX         InetAddress
     MAX-ACCESS     not-accessible
     STATUS         current
     DESCRIPTION    "Server IP/IPv6 address of NTP time source referred to in 
                     this table entry." 
     ::= { rcNtpv4ServerEntry 2 }

rcNtpv4ServerEnable OBJECT-TYPE
     SYNTAX         TruthValue
     MAX-ACCESS     read-create
     STATUS         current
     DESCRIPTION    "Enable or disable this server for participation in
                     time update."
     DEFVAL         { true }  
     ::= { rcNtpv4ServerEntry 3 }

rcNtpv4ServerAuthentication OBJECT-TYPE
     SYNTAX         TruthValue
     MAX-ACCESS     read-create
     STATUS         current
     DESCRIPTION    "Enable or disable the MD5/SHA1 Authentication on this
                     server."
     DEFVAL         { false }  
     ::= { rcNtpv4ServerEntry 4 }

rcNtpv4ServerKeyId OBJECT-TYPE
     SYNTAX         Integer32(0..65534)
     MAX-ACCESS     read-create
     STATUS         current
     DESCRIPTION    "Public Key used to generate MD5/Sha1 digest for this 
                     server."
     DEFVAL         { 0 }  
     ::= { rcNtpv4ServerEntry 5 }

rcNtpv4ServerRowStatus OBJECT-TYPE
     SYNTAX        RowStatus
	 MAX-ACCESS    read-create
	 STATUS        current
	 DESCRIPTION   "Used to create/delete entries."
	 ::= { rcNtpv4ServerEntry 6 }
	 
rcNtpv4ServerStratum OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Stratum of this server"
     ::= { rcNtpv4ServerEntry 7 }

rcNtpv4ServerVersion OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "NTP version of this server"
     ::= { rcNtpv4ServerEntry 8 }
     
rcNtpv4ServerBroadcast OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Broadcast enabled/disabled"
     ::= { rcNtpv4ServerEntry 9 }     

rcNtpv4ServerAuthEnabled OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Authentication Enabled"
     ::= { rcNtpv4ServerEntry 10 }

rcNtpv4ServerAuthStatus OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Authentication Status"
     ::= { rcNtpv4ServerEntry 11 }

rcNtpv4ServerSynchronized OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Status of synchronization with this server"
     ::= { rcNtpv4ServerEntry 12 }
     
rcNtpv4ServerReachable OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Reachability status of the server"
     ::= { rcNtpv4ServerEntry 13 }

rcNtpv4ServerRootDelay OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Root Delay of this server"
     ::= { rcNtpv4ServerEntry 14 }

rcNtpv4ServerRootDisp OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Root Dispersion of this server"
     ::= { rcNtpv4ServerEntry 15 }

rcNtpv4ServerDelay OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Delay of this server"
     ::= { rcNtpv4ServerEntry 16 }

rcNtpv4ServerDispersion OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Dispersion of this server"
     ::= { rcNtpv4ServerEntry 17 }

rcNtpv4ServerOffset OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Offset of this server"
     ::= { rcNtpv4ServerEntry 18 }

rcNtpv4ServerPrecision OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "NTPv4 precision of this server in seconds"
     ::= { rcNtpv4ServerEntry 19 }

rcNtpv4ServerJitter OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "The jitter of this server"
     ::= { rcNtpv4ServerEntry 20 }

rcNtpv4ServerLastEvent OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Last event of this server"
     ::= { rcNtpv4ServerEntry 21 }

rcNtpv4ServerHostname OBJECT-TYPE
     SYNTAX         DisplayString (SIZE (0..32))
     MAX-ACCESS     read-only
     STATUS         current
     DESCRIPTION    "Hostname of a NTP server"
     ::= { rcNtpv4ServerEntry 22 }

-- Ntp Restrict Table Information

rcNtpRestrictTable OBJECT-TYPE
     SYNTAX       SEQUENCE OF RcNtpRestrictEntry
     MAX-ACCESS   not-accessible
     STATUS       current
     DESCRIPTION  "The NTP restrict table."
     ::= {rcNtp 5 }

rcNtpRestrictEntry OBJECT-TYPE
        SYNTAX        RcNtpRestrictEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION   "A NTP restrict table entry."
        INDEX         { rcNtpRestrictRowIndex }
        ::= { rcNtpRestrictTable 1 }

RcNtpRestrictEntry ::=
     SEQUENCE {
             rcNtpRestrictRowIndex Integer32,
             rcNtpRestrictAddressType InetAddressType,
             rcNtpRestrictAddress InetAddress,
             rcNtpRestrictMask Integer32,
             rcNtpRestrictRowStatus RowStatus
     }

rcNtpRestrictRowIndex OBJECT-TYPE
     SYNTAX         Integer32 (1..65534)
     MAX-ACCESS     not-accessible
     STATUS         current
     DESCRIPTION    "NTP Restrict Index table."
     ::= { rcNtpRestrictEntry 1 }

rcNtpRestrictAddressType OBJECT-TYPE
     SYNTAX         InetAddressType
     MAX-ACCESS     read-create
     STATUS         current
     DESCRIPTION    "The NTP address type to restrict.
	 	     Cannot be changed once the entry is created."
     ::= { rcNtpRestrictEntry 2 }

rcNtpRestrictAddress OBJECT-TYPE
     SYNTAX         InetAddress
     MAX-ACCESS     read-create
     STATUS         current
     DESCRIPTION    "The NTP address to restrict. It is associated with rcNtpRestrictAddressType.
	 	     Cannot be changed once the entry is created."
     ::= { rcNtpRestrictEntry 3 }

rcNtpRestrictMask OBJECT-TYPE
     SYNTAX         Integer32 (0..128)
     MAX-ACCESS     read-create
     STATUS         current
     DESCRIPTION    "Prefix length of the IPv4/IPv6 NTP address to restrict.
	 	     Cannot be changed once the entry is created."
     ::= { rcNtpRestrictEntry 4 }
    
rcNtpRestrictRowStatus OBJECT-TYPE
     SYNTAX         RowStatus
     MAX-ACCESS     read-create
     STATUS         current
     DESCRIPTION    "Used to create/delete entries.
	 	     Cannot be changed once the entry is created."
     ::= { rcNtpRestrictEntry 5 }
	
END
