-- ****************************************************************************
-- ****************************************************************************
--             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-CLI-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;

cliMIB 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  " Command Line Interface

                The Command Line Interface (CLI) service allows the
                administrator to manage the unit using the SSH or TELNET
                protocols.
                "
 ::= { mediatrixServices 2700 }

cliMIBObjects OBJECT IDENTIFIER ::= { cliMIB 1 }

-- Scalar:Inactivity Timeout Delay

inactivityTimeOut OBJECT-TYPE
 SYNTAX        Unsigned32 ( 1..90 )
 MAX-ACCESS    read-write
 STATUS        current
 DESCRIPTION " Inactivity Timeout Delay

               Inactivity expiration delay for exiting the CLI session. This
               value is expressed in minutes.
               "
 DEFVAL        { 15 }
 ::= { cliMIBObjects 100 }

-- Scalar:Welcome Message

welcomeMessage OBJECT-TYPE
 SYNTAX        OCTET STRING ( SIZE(0..1024) )
 MAX-ACCESS    read-write
 STATUS        current
 DESCRIPTION " Welcome Message

               Message displayed when connecting to the CLI.

               The following escape characters are supported: \\n for new line,
               \\t for tab and \\\\ for \\ character. Other characters are left
               unchanged.

               "
 DEFVAL        { "" }
 ::= { cliMIBObjects 200 }

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

-- Group:Telnet Interface

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

telnetGroup OBJECT IDENTIFIER
 ::= { cliMIBObjects 1000 }
 -- Scalar:Enable Telnet

 enableTelnet OBJECT-TYPE
  SYNTAX        MxEnableState
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Enable Telnet

                Enable/Disable access to the system by Telnet.
                "
  DEFVAL        { disable }
  ::= { telnetGroup 100 }

 -- Scalar:Listen Port

 telnetPort OBJECT-TYPE
  SYNTAX        MxIpPort
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Listen Port

                Port on which the Telnet service should listen for incoming
                Telnet requests.
                "
  DEFVAL        { 23 }
  ::= { telnetGroup 200 }

-- End of group:Telnet Interface

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

-- Group:SSH Interface

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

sshGroup OBJECT IDENTIFIER
 ::= { cliMIBObjects 1100 }
 -- Scalar:Enable SSH

 enableSsh OBJECT-TYPE
  SYNTAX        MxEnableState
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Enable SSH

                Enable/Disable access to the system by SSH.
                "
  DEFVAL        { enable }
  ::= { sshGroup 100 }

 -- Scalar:Listen Port

 sshPort OBJECT-TYPE
  SYNTAX        MxIpPort
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " Listen Port

                Port on which the SSH service should listen for incoming SSH
                requests.
                "
  DEFVAL        { 22 }
  ::= { sshGroup 200 }

 -- Scalar:SSH Security Level

 sshSecurityLevel OBJECT-TYPE
  SYNTAX        INTEGER { permissive(100) , standard(200) , mostSecure(300) }
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION " SSH Security Level

                Selects the encryption group for the required security level.

                  * Permissive: All available encryption algorithms are
                    allowed. Should be used only if SSH clients cannot connect
                    properly.
                      + cipher: aes256-ctr, aes256-cbc, aes128-ctr,
                        aes128-cbc, 3des-ctr, 3des-cbc
                      + mac: hmac-sha1, hmac-sha2-256
                      + key exchange: diffie-hellman-group1-sha1,
                        diffie-hellman-group14-sha1,
                        diffie-hellman-group14-sha256, ecdh-sha2-nistp256,
                        ecdh-sha2-nistp384, ecdh-sha2-nistp521,
                        curve25519-sha256@libssh.org
                  * Standard: Good compromise between security and
                    interoperability. Weakest encryption algorithms are
                    excluded.
                      + cipher: aes256-ctr, aes128-ctr
                      + mac: hmac-sha1, hmac-sha2-256
                      + key exchange: diffie-hellman-group14-sha1,
                        diffie-hellman-group14-sha256, ecdh-sha2-nistp256,
                        ecdh-sha2-nistp384, ecdh-sha2-nistp521,
                        curve25519-sha256@libssh.org
                  * Most Secure: Only the most secure encryption algorithms
                    are included. May not work for some SSH clients.
                      + cipher: aes256-ctr
                      + mac: hmac-sha2-256
                      + key exchange: ecdh-sha2-nistp256, ecdh-sha2-nistp384,
                        ecdh-sha2-nistp521, curve25519-sha256@libssh.org

                "
  DEFVAL        { standard }
  ::= { sshGroup 300 }

-- End of group:SSH Interface

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

-- Group:Notification Messages Configuration

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

notificationsGroup OBJECT IDENTIFIER
 ::= { cliMIBObjects 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
 ::= { cliMIBObjects 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
