-- ==========================================================================
-- Copyright (C) 2002 by  HUAWEI TECHNOLOGIES. All rights reserved.
--
-- Description: The purpose of this MIB file is to provide the define of
--              Terminal Server MIB of HUAWEI quidway serial router.
-- Reference:
-- Version: V1.0
-- History:
--
-- ==========================================================================

HUAWEI-TS-MIB    DEFINITIONS ::= BEGIN

IMPORTS
    DisplayString
        FROM  RFC1213-MIB
    IpAddress 
        FROM RFC1155-SMI 
    OBJECT-TYPE
	FROM RFC-1212
    TRAP-TYPE
             FROM RFC-1215
    huawei,mlsr
		FROM HUAWEI-3COM-OID-MIB;    

terminalServer     OBJECT IDENTIFIER ::= { mlsr 1 }

--routerMemory   OBJECT-TYPE
--    SYNTAX  INTEGER
--    ACCESS  read-only
--    STATUS  mandatory
--    DESCRIPTION
--            "Memory value of the router."
--    ::= { router    1 }

EntryStatus ::= INTEGER
                         { valid(1),
                           createRequest(2),
                           underCreation(3),
                           invalid(4)
                         }
              -- The status of a table entry.
              --
              -- Setting this object to the value invalid(4) has the
              -- effect of invalidating the corresponding entry.
              -- That is, it effectively disassociates the mapping
              -- identified with said entry.
              -- It is an implementation-specific matter as to whether
              -- the agent removes an invalidated entry from the table.
              -- Accordingly, management stations must be prepared to
              -- receive tabular information from agents that
              -- corresponds to entries currently not in use.  Proper
              -- interpretation of such entries requires examination
              -- of the relevant EntryStatus object.
              --
              -- An existing instance of this object cannot be set to
              -- createRequest(2).  This object may only be set to
              -- createRequest(2) when this instance is created.  When
              -- this object is created, the agent may wish to create
              -- supplemental object instances with default values
              -- to complete a conceptual row in this table.  Because
              -- the creation of these default objects is entirely at
              -- the option of the agent, the manager must not assume
              -- that any will be created, but may make use of any that
              -- are created. Immediately after completing the create
              -- operation, the agent must set this object to
              -- underCreation(3).
              --
              -- When in the underCreation(3) state, an entry is
              -- allowed to exist in a possibly incomplete, possibly
              -- inconsistent state, usually to allow it to be
              -- modified in mutiple PDUs.  When in this state, an
              -- entry is not fully active.  Entries shall exist in
              -- the underCreation(3) state until the management
              -- station is finished configuring the entry and sets
              -- this object to valid(1) or aborts, setting this
              -- object to invalid(4).  If the agent determines that
              -- an entry has been in the underCreation(3) state for
              -- an abnormally long time, it may decide that the
              -- management station has crashed.  If the agent makes
              -- this decision, it may set this object to invalid(4)
              -- to reclaim the entry.  A prudent agent will
              -- understand that the management station may need to
              -- wait for human input and will allow for that
              -- possibility in its determination of this abnormally
              -- long period.
              --
              -- An entry in the valid(1) state is fully configured and
              -- consistent and fully represents the configuration or
              -- operation such a row is intended to represent.  For
              -- example, it could be a statistical function that is
              -- configured and active, or a filter that is available
              -- in the list of filters processed by the packet capture
              -- process.
              --
              -- A manager is restricted to changing the state of an
              -- entry in the following ways:
              --
              --                       create   under
              --      To:       valid  Request  Creation  invalid
              -- From:
              -- valid             OK       NO        OK       OK
              -- createRequest    N/A      N/A       N/A      N/A
              -- underCreation     OK       NO        OK       OK
              -- invalid           NO       NO        NO       OK
              -- nonExistent       NO       OK        NO       OK
              --
              -- In the table above, it is not applicable to move the
              -- state from the createRequest state to any other
              -- state because the manager will never find the
              -- variable in that state.  The nonExistent state is
              -- not a value of the enumeration, rather it means that
              -- the entryStatus variable does not exist at all.
              --
              -- An agent may allow an entryStatus variable to change
              -- state in additional ways, so long as the semantics
              -- of the states are followed.  This allowance is made
              -- to ease the implementation of the agent and is made
              -- despite the fact that managers should never
              -- excercise these additional state transitions.
-- Types
-- xxx INTEGER ::= 1


   
tsAppTable   OBJECT-TYPE
   SYNTAX    SEQUENCE OF TSAppEntry
   ACCESS    not-accessible
   STATUS    mandatory
   DESCRIPTION
             "A table containing how to set the application."
               ::= { terminalServer 1 }

tsAppEntry   OBJECT-TYPE
   SYNTAX    TSAppEntry
   ACCESS    not-accessible
   STATUS    mandatory
   DESCRIPTION
             "Management information about how to set the application."
   INDEX     { tsAppID }
   ::= { tsAppTable 1 }


TSAppEntry ::= SEQUENCE {
   tsAppID
        INTEGER,
   tsAppIPAddress
        IpAddress,
   tsAppPort
        INTEGER,             
   tsAppType
        INTEGER,
   tsAppName
        DisplayString,
   tsAppSourceIP
        IpAddress,
   tsAppLocalPort
        INTEGER,
   tsAppTtyServerState
        INTEGER,
   tsAppSocketRecvBufSize
        INTEGER,
   tsAppSocketSendBufSize
        INTEGER,
   tsAppSockRecvByte
        INTEGER,
   tsAppSockSendByte
        INTEGER,
   tsAppLastRecvTime
        DisplayString,
   tsAppLastSendTime
        DisplayString,
   tsAppClearStatistic
        INTEGER,                    
   tsAppUnixIndex
        INTEGER,     
   tsAppStatus
        EntryStatus       
   }

tsAppID   OBJECT-TYPE
   SYNTAX    INTEGER(0..515)
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Set the ID of application."
   ::= { tsAppEntry 1 }

tsAppIPAddress   OBJECT-TYPE
   SYNTAX    IpAddress
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the IP Address of UNIX that offer terminal server,0 indicate no ip address."
   DEFVAL  {0}          
   ::= { tsAppEntry 2 }

tsAppPort   OBJECT-TYPE
   SYNTAX    INTEGER(0|1025..65535)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the port of application,0 indicate no port."
   DEFVAL  {0}          
   ::= { tsAppEntry 3 }   

tsAppType   OBJECT-TYPE
   SYNTAX    INTEGER{
                    normal(1),
                    special(2)
                     }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
             "Set the type of application." 
   DEFVAL  {normal}                      
   ::= { tsAppEntry 4 }

tsAppName   OBJECT-TYPE
   SYNTAX    DisplayString(SIZE(0..18))
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the name of application."
   ::= { tsAppEntry 5 }   

tsAppSourceIP   OBJECT-TYPE
   SYNTAX    IpAddress
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the tcp/ip that will be bound,0 indicate no source ip."
  DEFVAL  {0}           
   ::= { tsAppEntry 6 }

tsAppLocalPort   OBJECT-TYPE
   SYNTAX    INTEGER(1025..65535|0)
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the port of router,0 indicate no port."
   ::= { tsAppEntry 7 }   
     
tsAppTtyServerState   OBJECT-TYPE
   SYNTAX    INTEGER{
                      noset(1), 
                      kept(2),                      
                      linking(3),
                      linked(4),
                      removed(5),
                      overcast(6)
                      }
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the connection-state on the UNIX."
   ::= { tsAppEntry 8 }  
   
tsAppSocketRecvBufSize   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the size of recvbuf for socket."
   ::= { tsAppEntry 9 }
   
tsAppSocketSendBufSize   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the size of sendbuf for socket."
   ::= { tsAppEntry 10 }
           
tsAppSockRecvByte   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the byte number that has already received from socket."
   ::= { tsAppEntry 11 }
   
tsAppSockSendByte   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the byte number that has already sent from socket."
   ::= { tsAppEntry 12 }
  
tsAppLastRecvTime   OBJECT-TYPE
   SYNTAX    DisplayString
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the time when the tty received from socket for last time."
   ::= { tsAppEntry 13 }
           
tsAppLastSendTime   OBJECT-TYPE
   SYNTAX    DisplayString
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the time when the tty sent from socket for last time."
   ::= { tsAppEntry 14 }

tsAppClearStatistic   OBJECT-TYPE
   SYNTAX    INTEGER{
                     clear(1) 
                     }
   ACCESS    write-only
   STATUS    mandatory
   DESCRIPTION
             "Clear APP's statistic information."
             ::= { tsAppEntry 15 }

tsAppUnixIndex   OBJECT-TYPE
   SYNTAX    INTEGER(0..511)
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the channel number."
             ::= { tsAppEntry 16 }

tsAppStatus   OBJECT-TYPE
   SYNTAX    EntryStatus
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "set the state on terminal server.If you will create a row,the values 
             of tsAppIPAddress,tsAppPort,tsAppType,tsAppName must be not null.
             You can delete a exist row and you can modify a exist row.If you modify
             a row under the status of row,you change the status from valid to
             undercreation.when you have changed them,you change the status to valid"
   ::= { tsAppEntry 17 }   
   
tsAsyModeTtyTable   OBJECT-TYPE
   SYNTAX    SEQUENCE OF TSAsyModeTtyEntry
   ACCESS    not-accessible
   STATUS    mandatory
   DESCRIPTION
             "A table containing how to set the tty mode on interface."
               ::= { terminalServer 2 }

tsAsyModeTtyEntry   OBJECT-TYPE
   SYNTAX    TSAsyModeTtyEntry
   ACCESS    not-accessible
   STATUS    mandatory
   DESCRIPTION
             "Management information about how to set the tty mode on interface."
   INDEX     { tsAsyModeTtyID, tsAsyModeTtyVtyID}
   ::= { tsAsyModeTtyTable 1 }
   
TSAsyModeTtyEntry ::= SEQUENCE {
   tsAsyModeTtyID
        INTEGER,
   tsAsyModeTtyVtyID
        INTEGER,
   tsAsyModeTtyIFIndex
        INTEGER,   
   tsAsyModeTtyAppID
        INTEGER,    
   tsAsyModeTtyDisconnect
        INTEGER,       
   tsAsyModeTtyVtyState
        INTEGER,          
   tsAsyModeTtyFlowCtrlState
        INTEGER,                             
   tsAsyModeTtyStatus
        EntryStatus       
   }

tsAsyModeTtyID   OBJECT-TYPE
   SYNTAX    INTEGER(0..128)
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Set the tty ID."
   ::= { tsAsyModeTtyEntry 1 }
                                 

tsAsyModeTtyVtyID   OBJECT-TYPE
   SYNTAX    INTEGER(0..3)
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Set the vty ID."
   ::= { tsAsyModeTtyEntry 2 }   
                                    
tsAsyModeTtyIFIndex   OBJECT-TYPE
   SYNTAX    INTEGER 
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Select the current interface."
   ::= { tsAsyModeTtyEntry 3 }

tsAsyModeTtyAppID   OBJECT-TYPE
   SYNTAX    INTEGER(-1..515)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the application ID,-1 indicate no app."
   ::= { tsAsyModeTtyEntry 4 }

tsAsyModeTtyDisconnect   OBJECT-TYPE
   SYNTAX    INTEGER{
                     disconnect(1)
                     }
   ACCESS    write-only
   STATUS    mandatory
   DESCRIPTION
             "Disconnect current VTY's tcp."
   ::= { tsAsyModeTtyEntry 5 }

tsAsyModeTtyVtyState   OBJECT-TYPE
   SYNTAX    INTEGER{
                     down(1),
                     up(2),
                     waitaaa(3),
                     ok(4),
                     menu(5)
                      }
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the state of the unix."
   ::= { tsAsyModeTtyEntry 6 }

tsAsyModeTtyFlowCtrlState   OBJECT-TYPE
   SYNTAX    INTEGER{
                     start(1),
                     stop(2)
                     }
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display whether set flow control mode."
   ::= { tsAsyModeTtyEntry 7 }

tsAsyModeTtyStatus   OBJECT-TYPE
   SYNTAX    EntryStatus
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the tty state in the interface.It can create a new row 
             and delete a row.But when creat a new row,the application must 
             be set.If you modify a row under the status of row,
             you change the status from valid to undercreation.when you 
             have changed them,you change the status to valid.And if you will
             create a row,the values of tsAsyModeTtyIFIndex,tsAsyModeTtyAppID
             must be not null."
   ::= { tsAsyModeTtyEntry 8 }   

tsTtyTable   OBJECT-TYPE
   SYNTAX    SEQUENCE OF TSTtyEntry
   ACCESS    not-accessible
   STATUS    mandatory
   DESCRIPTION
             "A table containing how to set something about the tty.If the tty no set,you can't set the values"
               ::= { terminalServer 3 }

tsTtyEntry   OBJECT-TYPE
   SYNTAX    TSTtyEntry
   ACCESS    not-accessible
   STATUS    mandatory
   DESCRIPTION
             "Management information about how to set something about the tty."
   INDEX     { tsTtyID}
   ::= { tsTtyTable 1 }
   
TSTtyEntry ::= SEQUENCE {
   tsTtyID
        INTEGER,   
   tsTtyBufferSize
        INTEGER,
   tsTtyAutoLink
        INTEGER,
   tsTtyCloseLink
        INTEGER,
   tsTtyConnPrint
        INTEGER,
   tsTtyDelay
        INTEGER,   
   tsTtyLogoPrint
        INTEGER,
   tsTtyMenuKey1
        INTEGER,
   tsTtyMenuKey2
        INTEGER,
   tsTtyMenuKey3
        INTEGER,   
   tsTtyReadBlock
        INTEGER,
   tsTtyRedrawkey1
        INTEGER,
   tsTtyRedrawkey2
        INTEGER,
   tsTtyRedrawkey3
        INTEGER,
   tsTtyResetKey1
        INTEGER,
   tsTtyResetKey2
        INTEGER,
   tsTtyResetKey3
        INTEGER,
   tsTtyTcpNoDelay
        INTEGER,
   tsTtyTcpRecvBufferSize
        INTEGER,
   tsTtyTcpSendBufferSize
        INTEGER,
   tsTtyTestKey1
        INTEGER,
   tsTtyTestKey2
        INTEGER,
   tsTtyTestKey3
        INTEGER,   
   tsTtyBufferRate
        INTEGER,        
   tsTtyRecvBytes
        INTEGER,
   tsTtySendBytes
        INTEGER,
   tsTtyLastRecvTime
        DisplayString,
   tsTtyLastSendTime
        DisplayString,
   tsTtyCurrentVtyID
        INTEGER,     
   tsTtyCurrentVtyRecv
        INTEGER,
   tsTtyCurrentVtySend
        INTEGER,
   tsTtyCurrentAppID
        INTEGER,     
   tsTtyCurrentAppRecv
        INTEGER,
   tsTtyCurrentAppSend
        INTEGER,     
   tsTtyClearStatistic
        INTEGER,
   tsDebugTtyAll
        INTEGER,
   tsDebugTtyBrief
        INTEGER,
   tsDebugTtySock
        INTEGER,
   tsDebugTtyTimeStamp
        INTEGER,          
   tsDebugTtyTty
        INTEGER
   }

tsTtyID   OBJECT-TYPE
   SYNTAX    INTEGER(0..128)
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Set the tty ID."
   ::= { tsTtyEntry 1 }

tsTtyBufferSize   OBJECT-TYPE
   SYNTAX    INTEGER(4096..204800)
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
             "Set the buffer size(byte)."
   DEFVAL  {4096}                       
   ::= { tsTtyEntry 2 }   

tsTtyAutoLink   OBJECT-TYPE
   SYNTAX    INTEGER(0|5..3600)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set auto link interval(second)."
   DEFVAL  {0}          
   ::= { tsTtyEntry 3 }
   
tsTtyCloseLink   OBJECT-TYPE
   SYNTAX    INTEGER(0|5..3600)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set auto close link interval(second)."
   DEFVAL  {0}          
   ::= { tsTtyEntry 4 }
   
tsTtyConnPrint   OBJECT-TYPE
   SYNTAX    INTEGER{
                    english(1),
                    chinese(2),
                    none(3)  
                     }
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Print connection information."
   DEFVAL  {chinese}          
   ::= { tsTtyEntry 5 }
   
tsTtyDelay   OBJECT-TYPE
   SYNTAX    INTEGER(0..1200)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Print connection information(second)."
   DEFVAL  {0}          
   ::= { tsTtyEntry 6 }
   
tsTtyLogoPrint   OBJECT-TYPE
   SYNTAX    INTEGER{
                     enable(1), 
                     disable(2) 
                     }
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Display the logo of terminal server."
   DEFVAL  {disable}          
   ::= { tsTtyEntry 7 }
   
tsTtyMenuKey1   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the hotkey to start-up terminal server."
   DEFVAL  {0}          
   ::= { tsTtyEntry 8 }

tsTtyMenuKey2   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the hotkey to start-up terminal server."
   DEFVAL  {0}          
   ::= { tsTtyEntry 9 }

tsTtyMenuKey3   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set the hotkey to start-up terminal server."
   DEFVAL  {0}          
   ::= { tsTtyEntry 10 }
   
tsTtyReadBlock   OBJECT-TYPE
   SYNTAX    INTEGER{
                     set(1), 
                     noSet(2) 
                     }
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set read TTY data block."
   DEFVAL  {noSet}          
   ::= { tsTtyEntry 11 }
        
tsTtyRedrawkey1   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set redraw screen hot-key."
   DEFVAL  {0}          
   ::= { tsTtyEntry 12 }
        
tsTtyRedrawkey2   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set redraw screen hot-key."
   DEFVAL  {0}          
   ::= { tsTtyEntry 13 }

tsTtyRedrawkey3   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set redraw screen hot-key."
   DEFVAL  {0}          
   ::= { tsTtyEntry 14 }

tsTtyResetKey1   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set reset hot-key."
   DEFVAL  {0}          
   ::= { tsTtyEntry 15 }

tsTtyResetKey2   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set reset hot-key."
  DEFVAL  {0}           
   ::= { tsTtyEntry 16 }

tsTtyResetKey3   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set reset hot-key."
   DEFVAL  {0}          
   ::= { tsTtyEntry 17 }

tsTtyTcpNoDelay   OBJECT-TYPE
   SYNTAX    INTEGER{
                     enable(1), 
                     disable(2) 
                     }
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set tcp NODELAY option."
   DEFVAL  {enable}          
   ::= { tsTtyEntry 18 }

tsTtyTcpRecvBufferSize  OBJECT-TYPE
   SYNTAX    INTEGER(512..16384)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set tcp recv buffer size(byte)."
   DEFVAL  {2048}          
   ::= { tsTtyEntry 19 } 

tsTtyTcpSendBufferSize   OBJECT-TYPE
   SYNTAX    INTEGER(512..16384)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set tcp send buffer size(byte)."
   DEFVAL  {1024}          
   ::= { tsTtyEntry 20 } 

tsTtyTestKey1   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set test hot-key."
   DEFVAL  {0}          
   ::= { tsTtyEntry 21 }

tsTtyTestKey2   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set test hot-key."
   DEFVAL  {0}          
   ::= { tsTtyEntry 22 }

tsTtyTestKey3   OBJECT-TYPE
   SYNTAX    INTEGER(0..127)
   ACCESS    read-write
   STATUS    mandatory
   DESCRIPTION
             "Set test hot-key."
   DEFVAL  {0}          
   ::= { tsTtyEntry 23 }

tsTtyBufferRate   OBJECT-TYPE
   SYNTAX    INTEGER(0..100)
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the rate of flow control(%)."
   ::= { tsTtyEntry 24 }

tsTtyRecvBytes   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the byte number of the tty that has received."
   ::= { tsTtyEntry 25 }

tsTtySendBytes   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the byte number of the tty that has sent."
   ::= { tsTtyEntry 26 }

tsTtyLastRecvTime   OBJECT-TYPE
   SYNTAX    DisplayString
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the last time of the tty that received."
   ::= { tsTtyEntry 27 }

tsTtyLastSendTime   OBJECT-TYPE
   SYNTAX    DisplayString
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the last time of the tty that sent."
   ::= { tsTtyEntry 28 }

tsTtyCurrentVtyID   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the ID of the current vty."
   ::= { tsTtyEntry 29 }

tsTtyCurrentVtyRecv   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the byte number of the vty that received."
   ::= { tsTtyEntry 30 }

tsTtyCurrentVtySend   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the byte number of the vty that sent."
   ::= { tsTtyEntry 31 }

tsTtyCurrentAppID   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the ID of the current vty."
   ::= { tsTtyEntry 32 }

tsTtyCurrentAppRecv   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the byte number of the app that received."
   ::= { tsTtyEntry 33 }

tsTtyCurrentAppSend   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the byte number of the app that sent."
   ::= { tsTtyEntry 34 }

tsTtyClearStatistic   OBJECT-TYPE
   SYNTAX    INTEGER{
                     clear(1) 
                     }
   ACCESS    write-only
   STATUS    mandatory
   DESCRIPTION
             "Clear TTY's statistic information."
             ::= { tsTtyEntry 35 }

tsDebugTtyAll   OBJECT-TYPE
   SYNTAX    INTEGER{
                     enable(1),
                     disable(2)
                      }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
          "Open/close specify tty's all debug information."             
   DEFVAL  {disable}       
           ::= { tsTtyEntry 36 }
               
tsDebugTtyBrief   OBJECT-TYPE
   SYNTAX    INTEGER{
                     enable(1),
                     disable(2)
                      }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
          "Open/close tty brief debug information."             
   DEFVAL  {disable}       
          ::= { tsTtyEntry 37 }

tsDebugTtySock   OBJECT-TYPE
   SYNTAX    INTEGER{
                     all(1),
                     recv(2),
                     send(3),
                     none(4)
                      }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
          "socket data debug information."             
   DEFVAL  {none}       
         ::= { tsTtyEntry 38 }
                              
tsDebugTtyTimeStamp   OBJECT-TYPE
   SYNTAX    INTEGER{
                     enable(1),
                     disable(2)
                      }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
         "dataflow timestamp debug information."             
   DEFVAL  {disable}      
           ::= { tsTtyEntry 39 }
               
tsDebugTtyTty   OBJECT-TYPE
   SYNTAX    INTEGER{
                     all(1),
                     recv(2),
                     send(3),
                     none(4)
                      }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
           "Open/close the debug tty switch of the tty."             
   DEFVAL  {none}        
           ::= { tsTtyEntry 40 }     

tsTtyManageTable   OBJECT-TYPE
   SYNTAX    SEQUENCE OF TSTtyManageEntry
   ACCESS    not-accessible
   STATUS    mandatory
   DESCRIPTION
             "A table containing the information about the channel."
               ::= { terminalServer 4 }

tsTtyManageEntry   OBJECT-TYPE
   SYNTAX    TSTtyManageEntry
   ACCESS    not-accessible
   STATUS    mandatory
   DESCRIPTION
             "Management information about how to bind tcp/ip."
   INDEX     { tsTtyManageUnixIndex }
   ::= { tsTtyManageTable 1 }


TSTtyManageEntry ::= SEQUENCE {
   tsTtyManageUnixIndex
        INTEGER,
   tsTtyManageUnixSockid
        INTEGER,
   tsTtyManageLocalIP
        IpAddress,
   tsTtyManageItemNum
        INTEGER 
   }

tsTtyManageUnixIndex   OBJECT-TYPE
   SYNTAX    INTEGER(0..511)
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "An index for unix."
   ::= { tsTtyManageEntry 1 }

tsTtyManageUnixSockid   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the sock ID that the channel is using."
   ::= { tsTtyManageEntry 2 }
        
tsTtyManageLocalIP   OBJECT-TYPE
   SYNTAX    IpAddress
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the Local IP address."
   ::= { tsTtyManageEntry 3 }
   
tsTtyManageItemNum   OBJECT-TYPE
   SYNTAX    INTEGER
   ACCESS    read-only
   STATUS    mandatory
   DESCRIPTION
             "Display the number of unix item."
   ::= { tsTtyManageEntry 4 }
             
tsEnable   OBJECT-TYPE
   SYNTAX    INTEGER{
                      enable(1),
                      disable(2)
                     }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
             "Decide whether to have the function of terminal server." 
   DEFVAL  {disable}                      
          ::= { terminalServer 5 }

tsEnableTrap   OBJECT-TYPE
   SYNTAX    INTEGER{
                      enable(1),
                      disable(2)
                     }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
             "Decide whether to send terminal server trap." 
   DEFVAL  {disable}                      
          ::= { terminalServer 6 }        
               
tsClearTtyAll   OBJECT-TYPE
   SYNTAX    INTEGER{
                     clear(1)                                          
                     }
   ACCESS    write-only
   STATUS    mandatory   
   DESCRIPTION
             "Clear the information of the app and tty."             
               ::= { terminalServer 7 }

tsLoginTty   OBJECT-TYPE
   SYNTAX    INTEGER{
                      enable(1),
                      disable(2)
                     }
   ACCESS    read-write
   STATUS    obsolete   
   DESCRIPTION
             "Enable HWTTY  EXEC Authentication." 
   DEFVAL  {disable}                      
          ::= { terminalServer 8 }        
                          
tsDebugTtyGroup   OBJECT IDENTIFIER ::= { terminalServer 9 }

tsDebugTtyError   OBJECT-TYPE
   SYNTAX    INTEGER{
                     enable(1),
                     disable(2)
                      }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
             "tty exception error information."  
   DEFVAL  {disable}                     
          ::= { tsDebugTtyGroup 1 }
                              
tsDebugTtyManage   OBJECT-TYPE
   SYNTAX    INTEGER{
                     enable(1),
                     disable(2)
                      }
   ACCESS    read-write
   STATUS    mandatory   
   DESCRIPTION
             "manage channel debug information."             
   DEFVAL  {disable}          
           ::= { tsDebugTtyGroup 2 }
               
tsTrap        OBJECT IDENTIFIER ::= { terminalServer 10 }

tsAppStatusTrap   NOTIFICATION-TYPE
   OBJECTS { tsAppID,tsAppTtyServerState }
   STATUS  current
   DESCRIPTION
             "send a value when the state of application change."
   ::= { tsTrap 1 }

tsTtyStatusTrap   NOTIFICATION-TYPE
   OBJECTS { tsAsyModeTtyID,tsAsyModeTtyVtyID,tsAsyModeTtyVtyState }
   STATUS  current
   DESCRIPTION
             "send a value when the state of tty change."
   ::= { tsTrap 2 }

tsExceptionTrap   NOTIFICATION-TYPE
   STATUS  current
   DESCRIPTION
             "send a Exception when the terminal server has exception."
   ::= { tsTrap 3 }
   
tsClearSuccessTrap   NOTIFICATION-TYPE
   STATUS  current
   DESCRIPTION
             "Clear statistic successfully."
   ::= { tsTrap 4 }

tsDisconnectSuccessTrap   NOTIFICATION-TYPE
   STATUS  current
   DESCRIPTION
             "Disconnect vty successfully."
   ::= { tsTrap 5 }      
END

