-- =====================================================================
-- == DIGI-PORTSERVER-TS-MIB :                                        ==
-- ==  PortServer TS Management Information Base                      ==
-- ==                                                                 ==
-- ==   Digi International Part Number: 40002194_G                    ==
-- ==                                                                 ==
-- == (c) Copyright 2000-2001 Digi International, Inc.                ==
-- =====================================================================

DIGI-PORTSERVER-TS-MIB DEFINITIONS ::= BEGIN

IMPORTS 
digiPortServerTS FROM DIGI-SMI
OBJECT-TYPE FROM RFC-1212
IpAddress FROM RFC1155-SMI;

--   digiPortServerTS MODULE-IDENTITY
--       LAST-UPDATED "0201090100Z"
--       ORGANIZATION "Digi International Inc."
--       CONTACT-INFO
--               "        Michael Nicholson
--                Postal: Digi International Inc.
--		          11001 Bren Road East
--                        Minnetonka, MN 55343
--
--                   Tel: 952-912-3146
--                   Fax: 952-912-4952
--                E-mail: Mike.Nicholson@digi.com"
--       DESCRIPTION
--               "Digi PortServer TS MIB"
--       ::= { enterprises 332 }

-- === + Textual Convention Types ============================================

DisplayString ::= OCTET STRING
PhysAddress ::= OCTET STRING
Switch ::= INTEGER { off(1), on(2) }
Action ::= INTEGER { ready(1), execute(2) }
-- === - Textual Convention Types ============================================

-- =======================================================================
-- =======================================================================
-- === + GENERAL + =======================================================
-- =======================================================================
-- =======================================================================

general OBJECT IDENTIFIER ::= { digiPortServerTS 20 }

generalModel OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
         "This is the model description"
::= { general 11 }

generalType OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
         "This is the type of PortServerTS"
::= { general 12 }

generalFirmwareVersion OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
          "This is the version number and date of the firmware"
::= { general 13 }

generalIPAddress OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"IP address of PortServerTS.
	 PortServerTS can obtain this
	 address from a RARP server if
	 one is configured properly on
	 the network."
::= { general 14 }

generalGateway OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"IP address of the default gateway"
::= { general 15 }

generalNameServer OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"IP address of the DNS nameserver"
::= { general 16 }

generalSubMask OBJECT-TYPE 
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the subnet mask for 
	PortServer TS's subnetwork"
::= { general 17 }

generalEtherAddress OBJECT-TYPE
    SYNTAX PhysAddress
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"PortServer TS's ethernet hardware address."
::= { general 18 }

generalPortServerName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"PortServer TS's DNS name"
::= { general 19 }

generalDomain OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the name of PortServer TS's domain"
::= { general 20 }

generalRealPortNumber OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the TCP port number used for RealPort
	 connections. This port number is used by
	 RealPort to establish connections."
::= { general 21 }

generalBaseSocket OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Base socket service for reverse telnet connections."
::= { general 22 }

generalTBreak OBJECT-TYPE
    SYNTAX INTEGER{ standard(1), none(2), any(3) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Telnet break key." 
::= { general 23 }

generalClearStatistics OBJECT-TYPE
    SYNTAX Action
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Clears RFC1213, RFC1658, RFC1659 counters."
::= { general 24 }

generalOptimize OBJECT-TYPE
    SYNTAX INTEGER{ throughput(1), latency(2) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Latency tuning option." 
::= { general 25 }

generalDhcpClientIdentifier OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"DHCP client identifier."
::= { general 26 }

generalDhcpClientIdentifierType OBJECT-TYPE
    SYNTAX INTEGER(0..255)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Type of the DHCP client identifier."
::= { general 27 }

generalEthernetSpeed OBJECT-TYPE
    SYNTAX INTEGER{ auto(1), mbit10(2), mbit100(3) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Ethernet link data rate. Default: - auto(1)"
::= { general 28 }

generalEthernetDuplex OBJECT-TYPE
    SYNTAX INTEGER{ auto(1), halfduplex(2), fullduplex(3) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Ethernet link duplex mode. Default: halfduplex(2)"
::= { general 29 }

generalDhcpIgnoreKeepalive OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Accept (1) : When DHCP is On, accept and use DHCP keepalive settings
         Ignore (2) : When DHCP is On, ignore DHCP keepalive settings"
::= { general 30 }

generalSecureRealPortNumber OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the TCP port number used for Secure RealPort
	 connections. This port number is used by
	 RealPort to establish connections."
::= { general 31 }

-- =======================================================================
-- =======================================================================
-- === + PROCESSOR + =====================================================
-- =======================================================================
-- =======================================================================

processor OBJECT IDENTIFIER ::= {digiPortServerTS 21 }

processorCurrentUtilization OBJECT-TYPE
    SYNTAX INTEGER(1..255)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Current processor utilization from 1-255."
::= { processor 11 }

-- =======================================================================
-- =======================================================================
-- === + MEMORY + ========================================================
-- =======================================================================
-- =======================================================================

memory OBJECT IDENTIFIER ::= { digiPortServerTS 22 }

memoryTotalMemory OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Total memory"
::= { memory 11 }

memoryAvailable OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Total memory available"
::= { memory 12 }

memoryLargestBlockAvailable OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Largest free memory block"
::= { memory 13 }

memorySuccessfulAllocates OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Total successful memory allocations"
::= { memory 14 }

memoryFailedAllocates OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Total failed memory allocations"
::= { memory 15 }

-- =======================================================================
-- =======================================================================
-- === + TIME + ==========================================================
-- =======================================================================
-- =======================================================================

time OBJECT IDENTIFIER ::= { digiPortServerTS 23 }

timeSystemCurrent OBJECT-TYPE
    SYNTAX DisplayString(SIZE(1..128))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"yyyy mm dd hh mm ss"
::= { time 11 }

-- =======================================================================
-- =======================================================================
-- === + BOOT + ==========================================================
-- =======================================================================
-- =======================================================================

boot OBJECT IDENTIFIER ::= { digiPortServerTS 24 }

bootReboot OBJECT-TYPE
    SYNTAX Action
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Execute(2) : Reboots PortServer TS"
::= { boot 11 }

bootDHCPBoot OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"On (1) : DHCP is used to boot the PortServer TS
	 Off(2) : DHCP is not used to boot the PortServer TS"
::= { boot 12 }

-- =======================================================================
-- =======================================================================
-- === + PORT + ==========================================================
-- =======================================================================
-- =======================================================================

port OBJECT IDENTIFIER ::= { digiPortServerTS 25 }

-- === + AUTHORIZATION + ====================================================================

authorizationTable OBJECT-TYPE
    SYNTAX SEQUENCE OF AuthEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Table for port authorization settings"
::= { port 11 }

authEntry OBJECT-TYPE
    SYNTAX AuthEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Authorization entry"
    INDEX { authIndex }
::= { authorizationTable 1 }

AuthEntry ::= SEQUENCE {
authIndex INTEGER,
authIp IpAddress,
authMask IpAddress,
authRealPort DisplayString,
authLogin DisplayString,
authUnrestricted DisplayString
}

authIndex OBJECT-TYPE
    SYNTAX INTEGER(1..32)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Authorization entry index"
::= { authEntry 11 }

authIp OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The IP address of the device to which the index applies."
::= { authEntry 12 }

authMask OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Specifies an IP mask used to extend the scope 
	 of authorization to a range of IP addresses."
::= { authEntry 13 }

authRealPort OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Configures access for the RealPort drivers
	 running on the devices identified by the IP and
	 mask fields to the specified range of ports

	 The default is that RealPort can access a port. 
	 Unless set otherwise, all RealPort drivers can
	 access the port.

	 syntax : A comma and dash delimited field of ports.
	 example: 3, 5-9, 12, 15"
::= { authEntry 14 }

authLogin OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Configures login requirements to the range of ports
	 specified for the IP address specified. Users with
	 other IP addresses continue to have unrestricted
	 access to these ports.

	 syntax : A comma and dash delimited field of ports
	 example: 3, 5-9, 12, 15"
::= { authEntry 15 }

authUnrestricted OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Configures unrestricted access for the IP address
	 specified to the range of ports specified. Users with 
	 other IP addresses must log in.

	 syntax : A comma and dash delimited field of ports
	 example: 3, 5-9, 12, 15"
::= { authEntry 16 }



-- === + LINE + ========================================================================

lineTable OBJECT-TYPE
    SYNTAX SEQUENCE OF LineEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION 
	"Table of line entries"
::= { port 12 }

lineEntry OBJECT-TYPE
    SYNTAX LineEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Line entry"
    INDEX { lineIndex }
::= { lineTable 1 }

LineEntry ::= SEQUENCE {
lineResetSettings INTEGER,
lineIndex INTEGER,
lineBreak INTEGER,
lineError INTEGER,
lineInPCK Switch,
lineIStrip Switch,
lineOnLCR Switch,
lineOTab Switch
}

lineIndex OBJECT-TYPE
    SYNTAX INTEGER(1..32)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Index of line entry by port"
::= { lineEntry 11 }

lineResetSettings OBJECT-TYPE
    SYNTAX INTEGER {ready(1), factory(2), nvram(3)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Factory(2) : This will reset the line referenced by
	              index to its factory default values.
                      
         NVRAM(3)   : This will reset the line referenced by
                      index to the settings stored in NVRAM
                      (at boot time)"
                     
::= { lineEntry 12 }

lineBreak OBJECT-TYPE
    SYNTAX INTEGER {ignore(1), send(2), escape(3)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Ignore(1): The telnet break signal is ignored. This is the default.

         Send(2)  : The PortServer TS sends the telnet break
	            signal on the serial line when the PortServer TS
		    receives a break signal.

         Escape(3): The PortServer TS sends the escape sequence on the
                    serial line when the PortServer TS receives a break
		    signal."
::= { lineEntry 13 }

lineError OBJECT-TYPE
    SYNTAX INTEGER{ignore(1), null(2), dos(3), parMk(4)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Determines how the PortServer TS handles parity errors on the line

         Ignore(1): PortServer TS ignores errors. This is the default.

         Null(2)  : PortServer TS changes the error character to a null character.
	 
	 Dos(3)   : PortServer TS marks the error with an error character.

         ParMk(4) : PortServer TS marks the error with FF (16450 error byte)."

::= { lineEntry 14 }

lineInPCK OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Input error checking is off.
                 This is the default.
 
         On(2) : Input parity checking is on."
::= { lineEntry 15 }

lineIStrip OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): High-order bit is stripped from each byte.
                 This is the default

         On(2) : High-order bit is not stripped from each byte."
::= { lineEntry 16 }

lineOnLCR OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): No mapping of new line characters occurs.
                 This is the default.

         On(2) : New line characters are mapped to carriage
	         return/line feed characters."
::= { lineEntry 17 }

lineOTab OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Output tabs are not converted.
	         This is the default.

         On(2) : Output tabs are converted."
::= { lineEntry 18 }
 
-- === + PORTS + =======================================================================

portsTable OBJECT-TYPE
    SYNTAX SEQUENCE OF PortsEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"A table of port entries"
::= { port 13 }

portsEntry OBJECT-TYPE
    SYNTAX PortsEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"A port entry."
    INDEX { portsIndex }
::= { portsTable 1 }

PortsEntry ::= SEQUENCE {
portsIndex INTEGER,
portsResetSettings INTEGER,
portsAutoConnect Switch,
portsBinaryMode Switch,
portsDevice INTEGER,
portsDPort INTEGER,
portsEDelay INTEGER,
portsGroup INTEGER,
portsSession INTEGER,
portsTermType DisplayString,
portsUID INTEGER,
portsDestIP IpAddress,
portsAltIP IpAddress,
portsKeepalive Switch,
portsFlushStChar INTEGER,
portsAutoService INTEGER,
portsResetSerialSettings INTEGER,
portsAutoDest DisplayString,
portsName DisplayString
}

portsIndex OBJECT-TYPE
    SYNTAX INTEGER(1..32)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Ports entry index by port"
::= { portsEntry 11 }

portsResetSettings OBJECT-TYPE
    SYNTAX INTEGER {ready(1), factory(2), nvram(3)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Factory(2) : This will reset the port referenced by
	              index to its factory default values.
                      
         NVRAM(3)   : This will reset the port referenced by
                      index to the settings stored in NVRAM
                      (at boot time)"
::= { portsEntry 12 }
    

portsAutoConnect OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Port users will not automatically be connected to a 
	         destination. This is the default.

         On(2) : All users of the port will bypass PortServer TS's 
                 login field and be automatically connected to the 
                 destination defined in the portsAutoDest field."
::= { portsEntry 13 }

portsBinaryMode OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Telnet users are provided with normal ASCII connections.
                 This is the default.

         On(2) : Telnet users are provided with telnet binary connections."
::= { portsEntry 14 }

portsDevice OBJECT-TYPE
    SYNTAX INTEGER {term(1), prn(2), min(3), mout(4), mio(5), host(6), hdial(7), hio(8), rp(9), ia(10), power(11), pmodem(12), trane(13)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the device type which defines the device connected
	 to the port.

	 term(1): PortServer TS generates a login when it receives data.
                  PortServer TS ignores loss of carrier (DCD low).
                  DTR and RTS are high when the connection is idle.
                  This type usually requires cable support for transmit,
                  receive and ground only, which means a 3-wire crossover
                  cable will work. Six, eight and ten wire crossover
                  cables work as well.
                  * Do not use term for RealPort and reverse telnet
                    connections.
		  This is the default

         prn(2) : PortServer TS never generates a login.
                  PortServer TS ignores carrier.
                  DTR and RTS are low when the connection is idle.
                  This type usually requires cable support for 
                  transmit receive and ground only, which means a 
		  3-wire crossover cable will work. Six, eight and ten 
                  wire crossover cables will work as well.

         min(3) : PortServer TS generates a login when carrier is detected
                  (DCD high). 
                  PortServer TS closes the connection at carrier
                  loss (DCD low). 
                  DTR and RTS are low when the connection is idle.
                  This type requires a 10-pin straight-through cable
                  or altpin cable.
                  Do not use min for RealPort or reverse telnet connections.

         mout(4): PortServer TS never generates a login.
                  PortServer TS closes the port at carrier loss
                  (DCD low).
                  DTR and RTS are low when the connection is idle. 
                  This type requires a 10-pin straight through cable
                  or altpin cable.
                  Mout supports RealPort and reverse telnet connections.

         mio(5) : PortServer TS generates a login when carrier is detected
                  (DCD high).
                  PortServer TS closes the port at carrier loss (DCD low).
                  DTR and RTS are high when the connection is idle.
                  This type requires a 10-pin straight-through cable or
                  an altpin cable.
                  Mio supports reverse telnet but does not support RealPort.

         host(6): PortServer TS does not generate a login.
                  PortServer TS opens the port at DCD high and closes the port
                  at carrier loss (DCD low).
                  DTR and RTS are low when the connection is idle.
                  This type supports reverse telnet and RealPort.
                  This type requires a cable that supports carrier detect (DCD).

         hdial(7): PortServer TS generates a login when carrier is detected (DCD high)
                   and data is received. 
                   PortServer TS closes the port at carrier loss (DCD low).
                   DTR and RTS are low when the connection is idle.
                   This type does not support reverse telnet or RealPort.
                   This type requires 10-pin cables with DCD and DTR
                   cross connected or an altpin cable.

         hio(8):   PortServer TS generates a login when carrier is detected (DCD high)
                   and data is received.
                   PortServer TS closes the port at carrier loss (DCD low).
                   DTR and RTS are low when the connection is idle.
                   This type requires 10-pin cables with DCD and DTR cross connected
                   or an altpin cable.

	rp(9)  :  PortServer TS never generates a login.
                  PortServer TS ignores carrier.
                  DTR and RTS are low when the connection is idle.
                  This type usually requires cable support for transmit, receive
                  and ground only, which means a 3-wire crossover cable will work.
                  Six, eight and ten wire crossover cables work as well.
                  Use rp for RealPort Connections.
		  
	ia(10): PortServer TS uses this type for its Modbus implementation.

	power(11): PortServer TS uses this type for its Power Managment implementation

	pmodem(12): PortServer TS uses this type for its Pseudo-Modem implementation

	trane(13): TRANE protocol support

"
::= { portsEntry 15 }

portsDPort OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the TCP port for users of autoconnect ports which is :
         23 for telnet
         513 for rlogin
         Any other TCP port or a physical port on the PortServer TS
         is identified by specifying 20 and then the port number. For example,
         to specify autoconnect to port 12, specify portsDPort as 2012.
	 
	 The default is 0. portsDPort of 0 indicates that telnet is used if a
	 specific user is not assigned to this port and rlogin is used if a 
         specific user is assigned for this port.
"
::= { portsEntry 16 }

portsEDelay OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Echo delay in milliseconds "
::= { portsEntry 17 }

portsGroup OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Assigns a group number to this port, which means this port
         is part of a hunt group. Outgoing calls specifying this hunt
         group can then use any available port in the group. Use
         numbers 65-99 to avoid conflicts with regular port numbers."
::= { portsEntry 18 }

portsSession OBJECT-TYPE
    SYNTAX INTEGER(1..9)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The maximum number of sessions any user can run through this port.
         The range is 1-9 and the default is 4."
::= { portsEntry 19 }

portsTermType OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the type of terminal assigned to the port. This information
         is used during multiscreen and multisession operations and is passed
         to the host during telnet negotiations. Use a terminal type that
         is valid with the host operating system."
::= { portsEntry 20 }

portsUID OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"An index number in the user table that identifies a particular
         user for this port. If you use this field, calls from others
         attempting to use this port will be rejected."
::= { portsEntry 21 }

portsDestIP OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS deprecated
    DESCRIPTION
	"This has been replaced by portsAutoDest. Destination IP address 
	for autoconnect. This is the host with which a connection is attempted."
::= { portsEntry 22 }

portsAltIP OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Alternate IP address for this port"
::= { portsEntry 23 }

portsKeepalive OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Keepalive settings for autoconnect sessions. 
	
	 off(1): TCP Keepalive will not be enabled for autoconnect 
	         sessions using this port. This is the default. 

         on(2) : TCP Keepalive will be enabled for autoconnect 
                 sessions using this port if the general TCP 
		 keepalive service is active for this device."
::= { portsEntry 24 }

portsFlushStChar OBJECT-TYPE
    SYNTAX INTEGER{ default(1), on(2), off(3) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Whether to flush the starting character of an autoconnect 
	 session. 

	 default(1): Preserve the default flushing behaviour based 
	             on the autoconnect service type. 

	 on(2):      Flush the initiating character. 

         off(3) :    Dont flush the initiating charcter."
::= { portsEntry 25 }

portsAutoService OBJECT-TYPE
    SYNTAX INTEGER{ default(1), raw(2), rlogin(3), telnet(4) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Definition of the service (or protocol) that will be used 
	 for an autoconnect session on the given port.

	 default(1): The protocol will be based on the Destination 
	             TCP Port. 

	 raw(2):     No protocol will be used. 

	 rlogin(3):  Rlogin protocol will be used. 

	 telnet(4):  Telnet protocol will be used."
::= { portsEntry 26 }

portsResetSerialSettings OBJECT-TYPE
    SYNTAX INTEGER {ready(1), factory(2), nvram(3)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Factory(2) : This will reset the serial settings
	              referenced by index to its factory
	              default values.
                      
         NVRAM(3)   : This will reset the serial settings
                      referenced by index to the settings
                      stored in NVRAM (at boot time)"
::= { portsEntry 27 }

portsAutoDest OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Destination IP address or hostname for autoconnect. 
	This is the host with which a connection is attempted."
::= { portsEntry 28 }

portsName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Friendly name of the port. Allows easy identification 
        of the system/device attached to the port by assigning
        a unique name."
::= { portsEntry 29 }

-- === + FLOW + =========================================================================

flowTable OBJECT-TYPE
    SYNTAX SEQUENCE OF FlowEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"A table of flow entries"
::= { port 14 }

flowEntry OBJECT-TYPE
    SYNTAX FlowEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"A flow entry."
    INDEX { portsIndex }
::= { flowTable 1 }

FlowEntry ::= SEQUENCE {
flowIndex INTEGER,
flowResetSettings INTEGER,
flowAltPin Switch,
flowForceDCD Switch,
flowRts INTEGER,
flowRtsPreDelay INTEGER,
flowRtsPostDelay INTEGER
}

flowIndex OBJECT-TYPE
    SYNTAX INTEGER(1..32)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Flow entry index by port"
::= { flowEntry 11 }

flowResetSettings OBJECT-TYPE
    SYNTAX INTEGER {ready(1), factory(2), nvram(3)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Factory(2) : This will reset the port flow referenced by
	              index to its factory default values.
                      
         NVRAM(3)   : This will reset the port flow referenced by
                      index to the settings stored in NVRAM
                      (at boot time)"
::= { flowEntry 12 }

flowAltPin OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Off(1) : Altpin is off.
         On(2)  : Altpin is on."
         
::= { flowEntry 13 }

flowForceDCD OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Off(1) : ForceDCD is off.
         On(2)  : ForceDCD is on."
         
::= { flowEntry 14 }

flowRts OBJECT-TYPE
    SYNTAX INTEGER {off(1), on(2), toggle(3)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"RTS settings"
::= { flowEntry 15 }

flowRtsPreDelay OBJECT-TYPE
    SYNTAX INTEGER(0..5000)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Time in ms to wait before sending
	 a data after RTS is turned on"
::= { flowEntry 16 }

flowRtsPostDelay OBJECT-TYPE
    SYNTAX INTEGER(0..5000)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Time in ms to wait before turn RTS off
	 after sending a data"
::= { flowEntry 17 }

-- =======================================================================
-- =======================================================================
-- === + NETWORK + =======================================================
-- =======================================================================
-- =======================================================================

network OBJECT IDENTIFIER ::= { digiPortServerTS 26 }

-- === + TCP/IP + ========================================================================

tcpOther OBJECT IDENTIFIER ::= { network 11 }

tcpOtherRetransTimeout OBJECT-TYPE
    SYNTAX INTEGER(1..240)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"TCP maximum retransmission timeout in seconds."
::= { tcpOther 11 }

tcpOtherKeepAliveActive OBJECT-TYPE
     SYNTAX Switch
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
          "TCP keepalive active"
::= { tcpOther 12 }

tcpOtherKeepAliveIdle OBJECT-TYPE
    SYNTAX INTEGER(10..86400)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"TCP keep alive idle time in seconds."
::= { tcpOther 13 }

tcpOtherKeepAliveGarbage OBJECT-TYPE
     SYNTAX Switch
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
        "TCP keep alive garbage"
::= { tcpOther 14 }

tcpOtherProbeCounter OBJECT-TYPE
    SYNTAX INTEGER(5..30)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Probe counter."
::= { tcpOther 15 }

tcpOtherProbeInterval OBJECT-TYPE
    SYNTAX INTEGER(10..75)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Probe interval in seconds"
::= { tcpOther 16 }




-- === + FORWARDING + =====================================================================

forwarding OBJECT IDENTIFIER ::= { network 12 }

forwardingAdvertise OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the interval at which PortServer TS 
	 advertises its routes. This is only used if 
	 bootState is set to active. The range is 
	 10 to 180 seconds. The default is 30 seconds."
::= { forwarding 11 }

forwardingICMPDiscovery OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): The PortServer TS does not send 
	         and answer ICMP router discovery packets. 

	 On(2): The PortServer TS does send and 
	        answer ICMP router discovery packets."
::= { forwarding 12 }

forwardingICMPSendRedirects OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): means the PortServer TS does not send 
	         ICMP redirect messages.
	
	 On(2): means the PortServer TS sends 
	        ICMP redirect messages when it 
	        detects a host is using a non-optimal 
	        route, such as when the host uses 
	        the PortServer TS to route to a 
	        destination that can be reached 
	        more efficiently using another 
	        router or when the destination host 
	        can be reached directly 
	        (that is, without the services of any router)."
::= { forwarding 13 }

forwardingICMPMaskServer OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): means the PortServer TS 
	         does not act as an ICMP mask server.

	 On(2): means the PortServer TS acts 
	        as an ICMP mask server "
::= { forwarding 14 }

forwardingIGMP OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): The PortServer TS does not announce itself
	         as a router when it initializes. This means that 
		 PortServer TS will not be included in the IGMP router's
		 group broadcasts. This is the default setting. 

	 On(2): The PortServer TS announces itself as a 
	        router when it initializes. This means the
		PortServer TS will be included in IGMP router's group 
		broadcasts."
::= { forwarding 15 }

forwardingPoisonReverse OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): means that the poison reverse option is off.

	 On(2): means that the poison reverse is on. When 
        	this option is on, learned routes are propagated 
	        over the same interface on which they are 
	        advertised, but the destination specified in 
	        those routes are advertised as unreachable.
	        The forwardingSplitHorizion option must be on
	        if poison reverse is on."
::= { forwarding 16 }

forwardingProxyArp OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): PortServer TS does not support proxy ARP.
	         This is the default.
	 On(2): PortServer TS provides proxy ARP services. 
	        Proxy ARP is a technique in which a router answers
		ARP requests intended for another system. By 
		pretending to be the other system, the router accepts
		responsibility for forwarding packets to that system.
		Use proxy ARP to route packets to and from serial routes
		on the same IP subnetwork as PortServer TS's ethernet
		interface."
::= { forwarding 17 }

forwardingState OBJECT-TYPE 
    SYNTAX INTEGER {off(1), passive(2), active(3)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"off(1): limits the PortServer TS routing to static routes
	         defined in the route table. This is the default.

	 passive(2): Configures PortServer TS to use the routing information
	             protocol (RIP) to learn routes but not propagate them.

	 active(3): Configures PortServer TS to use RIP both to learn and 
	            propagate routing information."
::= { forwarding 18 }

forwardingSplitHorizon OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Split horizon option is off.

	 On(2): Split horizon option is on. 
                When this option is on, learned routes are not propagated
		from the interface on which they are learned. Use this option
		only if forwardingState is set to active(2). This is the default."
::= { forwarding 19 }

forwardingTimeout OBJECT-TYPE
    SYNTAX INTEGER(60..1080)
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The time (seconds) in which an entry in the routing table must be 
	 updated. If an entry exceeds the value specified here, it will be 
	 discarded. This value must be at least six times the 
	 forwardingAdvertise value. The range is 60 to 1080, and the default 
	 is 180 seconds."
::= { forwarding 20 }


-- === + HOST TABLE  + ======================================================================

hostnameTable OBJECT-TYPE
    SYNTAX SEQUENCE OF HostnameEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"A table of host entries."
::= { network 13 }

hostnameEntry OBJECT-TYPE
    SYNTAX HostnameEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"A host entry."
    INDEX {hostIndex}
::= { hostnameTable 1 }

HostnameEntry ::= SEQUENCE {
hostIndex INTEGER,
hostName DisplayString,
hostIP IpAddress
}

hostIndex OBJECT-TYPE
    SYNTAX INTEGER(1..1024)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"An index number that identifies entries in
	 the host nametable."
::= { hostnameEntry 11 }

hostIP OBJECT-TYPE 
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The IP that is to be mapped to the name specified on the name field"
::= { hostnameEntry 12 }

hostName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The name that is to be mapped to the IP address field specified in hostIP"
::= { hostnameEntry 13 }


-- === + TRACE + =======================================================================

trace OBJECT IDENTIFIER ::= { network 14 }

traceState OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Tracing is off. This is the default
	
	 On(2):  All messages in the trace buffer are displayed. 
	         Once they are displayed, trace remains on."

::= { trace 11 }

traceMode OBJECT-TYPE
    SYNTAX INTEGER {historical(1), concurrent(2)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Historical(1): All trace messages stored in the buffer
	                may be displayed by doing a trace dump.

	 Concurrent(2): All trace messages are printed to the 
	                administrative terminal when traceState is on"
::= { trace 12 }

traceSysLogState OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Trace messages are not sent to a host.
	         This is the default.
	 
	 On(2): Trace messages are sent to the host identified in
	        the traceLogHost field."
::= { trace 13 }

traceLogHost OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the IP address of a host to which trace messages
	 should be sent. This host must be running the syslog 
	 daemon."
::= { trace 14 }

traceTable OBJECT-TYPE
    SYNTAX SEQUENCE OF TraceEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"A Trace table of trace entries"
::= { trace 15 }

traceEntry OBJECT-TYPE
    SYNTAX TraceEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"A trace entry"
    INDEX { traceIndex }
::= {traceTable 1}

TraceEntry ::= SEQUENCE {
traceIndex INTEGER,
traceType INTEGER,
traceSeverity INTEGER
}

traceIndex OBJECT-TYPE
    SYNTAX INTEGER(1..17)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Trace table index, by trace type"
::= { traceEntry 11 }

traceType OBJECT-TYPE
    SYNTAX INTEGER{arp(1), cache(2), connect(3), dialer(4), dhcp(5), dns(6), 
                   esc(7), ether(8), frame(9), forwarding(10), icmp(11), 
                   inetd(12), ip(13), lpd(14), lpdA(15), lpdH(16),
                   netd(17), portsw(18), ppp(19), radius(20), realp(21), 
                   rlogin(22), routed(23), serial(24), snmp(25), stream(26), 
                   tcp(27), telnet(28), udp(29), user(30), vj(31), wan(32)}
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is the type and nature of the event that should be traced"
::= { traceEntry 12 }

traceSeverity OBJECT-TYPE
    SYNTAX INTEGER {critical(1), warning(2), info(3), debug(4), ignore(5)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the severity of the level of the trace
	 The default is Critical(1)."
::= { traceEntry 13 }


-- === + ALTIP + ==============================================================

altIpTable OBJECT-TYPE
    SYNTAX SEQUENCE OF AltIpEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Alternate IP address table"
::= { network 15 }

altIpEntry OBJECT-TYPE
    SYNTAX AltIpEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Alternate IP address entry"
    INDEX { altIpIndex }
::= { altIpTable 1 }

AltIpEntry ::= SEQUENCE {
altIpIndex INTEGER,
altIpIp IpAddress,
altIpGroup INTEGER
}

altIpIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Alternate IP address index"
::= { altIpEntry 11 }

altIpIp OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Alternate IP address"
::= { altIpEntry 12 }

altIpGroup OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Alternate IP group"
::= { altIpEntry 13 }

-- === + SNMPOther + ========================================================

snmpOther OBJECT IDENTIFIER ::= { network 16 }

snmpTrapDest OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "This is the IP address of the host to receive
         trap messages from PortServer TS"
::= {snmpOther 11}

snmpLoginTraps OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Off(1) : SNMP login traps will not be generated.
         On (2) : SNMP login traps will be generated."
::= {snmpOther 12 }

snmpLinkUpTraps OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Off(1) : SNMP Link Up traps will not be generated.
         On (2) : SNMP Link Up traps will be generated."
::= {snmpOther 13 }

snmpColdStartTraps OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Off(1) : SNMP Cold Start traps will not be generated.
         On (2) : SNMP Cold Start traps will be generated."
::= {snmpOther 14 }

-- =======================================================================
-- =======================================================================
-- === + INTERFACE + =====================================================
-- =======================================================================
-- =======================================================================

interface OBJECT IDENTIFIER ::= { digiPortServerTS 27 }

-- === + KEYMAP + =========================================================================

keyMapTable OBJECT-TYPE
    SYNTAX SEQUENCE OF KeyMapEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Key map, by port"
::= { interface 11 }

keyMapEntry OBJECT-TYPE
    SYNTAX KeyMapEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Key map, by port"
    INDEX { keyMapIndex }
::= { keyMapTable 1 }

KeyMapEntry ::= SEQUENCE {
keyMapIndex INTEGER,
keyMapEOF DisplayString,
keyMapErase DisplayString,
keyMapInterrupt DisplayString,
keyMapKill DisplayString,
keyMapTelnetEscape DisplayString,
keyMapXON DisplayString,
keyMapXOFF DisplayString,
keyMapXONAlternate DisplayString,
keyMapXOFFAlternate DisplayString
}

keyMapIndex OBJECT-TYPE
    SYNTAX INTEGER(1..64)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Index by port of key mappings"
::= { keyMapEntry 11 }

keyMapEOF OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"EOF (End of file) character. The default is ^D"
::= { keyMapEntry 12 }

keyMapErase OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Erase character. The default is ^H"
::= { keyMapEntry 13 }

keyMapInterrupt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Interrupt character. The default is ^C"
::= { keyMapEntry 14 }

keyMapKill OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Kill character. The default is ^U."
::= { keyMapEntry 15 }

keyMapTelnetEscape OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Telnet escape character. The default is ^]"
::= { keyMapEntry 16 }

keyMapXON OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"XON (transmit on) character. The default is ^Q."
::= { keyMapEntry 17 }

keyMapXOFF OBJECT-TYPE 
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"XOFF (transmit off) character. The default is ^S."
::= { keyMapEntry 18 }

keyMapXONAlternate OBJECT-TYPE	
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Alternate XON (transmit on) character. The default is ^Q"
::= { keyMapEntry 19 }

keyMapXOFFAlternate OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Alternate XOFF (transmit off) character. The default is ^S."
::= { keyMapEntry 20 }



-- === + LOGINS + =========================================================================

loginsTable OBJECT-TYPE
    SYNTAX SEQUENCE OF LoginsEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Table of login entries"
::= { interface 12 }

loginsEntry OBJECT-TYPE
    SYNTAX LoginsEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Login entry"
    INDEX { loginsIndex }
::= { loginsTable 1 }

LoginsEntry ::= SEQUENCE {
loginsIndex INTEGER,
loginPrompt DisplayString,
loginsAllowed Switch,
loginsPasswordPrompt DisplayString,
loginsPasswordRequired Switch,
loginsVerboseLogins Switch,
loginsCommandPrompt DisplayString,
loginsWriteEnabled Switch,
loginsRootPrompt DisplayString
}

loginsIndex OBJECT-TYPE
    SYNTAX INTEGER(1..32)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Login settings indexed by port"
::= { loginsEntry 11 }

loginPrompt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the login prompt that the PortServer TS displays.
	The maximum length is 10 characters. Enclose the string
	in quotation marks if it includes spaces."
::= { loginsEntry 12 }

loginsAllowed OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): User is not required to login to the port.

	 On(2): User is not required to log into the port."
::= { loginsEntry 13 }

loginsPasswordPrompt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The login prompt PortServer TS displays. The maximum
	 length is 10 characters. Enclose this string in quotation
	 marks if it includes spaces."
::= { loginsEntry 14 }

loginsPasswordRequired OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Users are not required to supply a password
	         to access the port.

	 On(2) : Users must supply a password to access the port."
::= { loginsEntry 15 }

loginsVerboseLogins OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): PortServer TS does not display connection
	         status messages to users before the login
		 prompt.
	 On(2) : PortServer TS displays connection status
	         messages to users before the login prompt."
::= { loginsEntry 16 }

loginsCommandPrompt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The PortServer TS prompt displayed to a regular user
	 who has logged in. The maximum length is eight 
	 characters. Enclose this string in quotation marks
	 if it includes spaces."
::= { loginsEntry 17 }

loginsWriteEnabled OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Configuration changes made by regular users can
	         not be saved and used for subsequent sessions.
		 
         On(2) : Configuration changes made by regular users can
	         be saved and used for subsequent sessions."
::= { loginsEntry 18 }

loginsRootPrompt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The PortServer TS prompt displayed to a root user
	 who has logged in. The maximum length is eight 
	 characters. Enclose this string in quotation marks
	 if it includes spaces."
::= { loginsEntry 19 }


-- === + MENUS + =========================================================================

menuTable OBJECT-TYPE
    SYNTAX SEQUENCE OF MenuEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Menu settings"
::= { interface 13 }

menuEntry OBJECT-TYPE
    SYNTAX MenuEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Menu settings"
    INDEX { menuIndex }
::= { menuTable 1 }

MenuEntry ::= SEQUENCE {
menuIndex INTEGER,
menuName DisplayString,
menuTitleLine1 DisplayString,
menuTitleLine2 DisplayString,
menuText1 DisplayString,
menuCommand1 DisplayString,
menuText2 DisplayString,
menuCommand2 DisplayString,
menuText3 DisplayString,
menuCommand3 DisplayString,
menuText4 DisplayString,
menuCommand4 DisplayString,
menuText5 DisplayString,
menuCommand5 DisplayString,
menuText6 DisplayString,
menuCommand6 DisplayString,
menuText7 DisplayString,
menuCommand7 DisplayString,
menuText8 DisplayString,
menuCommand8 DisplayString,
menuText9 DisplayString,
menuCommand9 DisplayString,
menuText10 DisplayString,
menuCommand10 DisplayString,
menuText11 DisplayString,
menuCommand11 DisplayString,
menuText12 DisplayString,
menuCommand12 DisplayString,
menuText13 DisplayString,
menuCommand13 DisplayString,
menuText14 DisplayString,
menuCommand14 DisplayString,
menuText15 DisplayString,
menuCommand15 DisplayString,
menuText16 DisplayString,
menuCommand16 DisplayString,
menuText17 DisplayString,
menuCommand17 DisplayString,
menuText18 DisplayString,
menuCommand18 DisplayString,
menuText19 DisplayString,
menuCommand19 DisplayString,
menuText20 DisplayString,
menuCommand20 DisplayString
}

menuIndex OBJECT-TYPE
    SYNTAX INTEGER(1..100)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Menu index number"
::= { menuEntry 11 }

menuName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"A unique name which identifies this menu"
::= { menuEntry 12 }

menuTitleLine1 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Menu title line 1"
::= { menuEntry 13 }

menuTitleLine2 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION	
	"Menu title line 2"
::= { menuEntry 14 }

menuText1 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 1"
::= { menuEntry 101 }

menuCommand1 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 1"
::= { menuEntry 201 }

menuText2 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 2"
::= { menuEntry 102 }

menuCommand2 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 2"
::= { menuEntry 202 }

menuText3 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 3"
::= { menuEntry 103 }

menuCommand3 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 3"
::= { menuEntry 203 }

menuText4 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 4"
::= { menuEntry 104 }

menuCommand4 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 4"
::= { menuEntry 204 }

menuText5 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 5"
::= { menuEntry 105 }

menuCommand5 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 5"
::= { menuEntry 205 }

menuText6 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 6"
::= { menuEntry 106 }

menuCommand6 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 6"
::= { menuEntry 206 }

menuText7 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 7"
::= { menuEntry 107 }

menuCommand7 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 7"
::= { menuEntry 207 }

menuText8 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 8"
::= { menuEntry 108 }

menuCommand8 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 8"
::= { menuEntry 208 }

menuText9 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 9"
::= { menuEntry 109 }

menuCommand9 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 9"
::= { menuEntry 209 }

menuText10 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 10"
::= { menuEntry 110 }

menuCommand10 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 10"
::= { menuEntry 210 }

menuText11 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 11"
::= { menuEntry 111 }

menuCommand11 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 11"
::= { menuEntry 211 }

menuText12 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 12"
::= { menuEntry 112 }

menuCommand12 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 12"
::= { menuEntry 212 }

menuText13 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 13"
::= { menuEntry 113 }

menuCommand13 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 13"
::= { menuEntry 213 }

menuText14 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 14"
::= { menuEntry 114 }

menuCommand14 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 14"
::= { menuEntry 214 }

menuText15 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 15"
::= { menuEntry 115 }

menuCommand15 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 15"
::= { menuEntry 215 }
menuText16 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 16"
::= { menuEntry 116 }

menuCommand16 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 16"
::= { menuEntry 216 }

menuText17 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 17"
::= { menuEntry 117 }

menuCommand17 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 17"
::= { menuEntry 217 }
menuText18 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 18"
::= { menuEntry 118 }

menuCommand18 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 18"
::= { menuEntry 218 }
menuText19 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 19"
::= { menuEntry 119 }

menuCommand19 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 19"
::= { menuEntry 219 }
menuText20 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Text of menu item 20"
::= { menuEntry 120 }

menuCommand20 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Command to execute for menu item 20"
::= { menuEntry 220 }

-- === TERMINAL ==============================================

terminalTable OBJECT-TYPE
    SYNTAX SEQUENCE OF TerminalEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Terminal entries"
::= { interface 14 }

terminalEntry OBJECT-TYPE
    SYNTAX TerminalEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Terminal entry"
    INDEX { terminalIndex }
::= { terminalTable 1 }

TerminalEntry ::= SEQUENCE {
terminalIndex INTEGER,
terminalType DisplayString,
terminalNumberofPages INTEGER,
terminalClearSequence DisplayString,
terminalSessionSequence1 DisplayString,
terminalSessionSequence2 DisplayString,
terminalSessionSequence3 DisplayString,
terminalSessionSequence4 DisplayString,
terminalSessionSequence5 DisplayString,
terminalSessionSequence6 DisplayString,
terminalSessionSequence7 DisplayString,
terminalSessionSequence8 DisplayString,
terminalSessionSequence9 DisplayString
}

terminalIndex OBJECT-TYPE 
    SYNTAX INTEGER(1..32)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"Terminal index"
::= { terminalEntry 11 }

terminalType OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The name for the terminal type. This name must match:
	 The name specified in portsTermType, and the name used
	 by hosts on your network for this type of terminal.
	 The two default types are wy60 and wy60-e."
::= { terminalEntry 12 }

terminalNumberofPages OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the number of sessions available to this terminal type.
	 This should be the same as the number of pages of screen memory
	 available on the terminal. The range is 1-99."
::= { terminalEntry 13 }

terminalClearSequence OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the escape sequence that clears the terminal's
	 current screen. This should be the sequence specified 
	 by your terminal's manufacturer."
::= { terminalEntry 14 }

terminalSessionSequence1 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 1 escape sequence."
::= { terminalEntry 21 }

terminalSessionSequence2 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 2 escape sequence"
::= { terminalEntry 22 }

terminalSessionSequence3 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 3 escape sequence"
::= { terminalEntry 23 } 

terminalSessionSequence4 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 4 escape sequence"
::= { terminalEntry 24 }

terminalSessionSequence5 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 5 escape sequence"
::= { terminalEntry 25 }

terminalSessionSequence6 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 6 escape sequence"
::= { terminalEntry 26 }

terminalSessionSequence7 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 7 escape sequence"
::= { terminalEntry 27 }

terminalSessionSequence8 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 8 escape sequence"
::= { terminalEntry 28 }

terminalSessionSequence9 OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Terminal session 9 escape sequence"
::= { terminalEntry 29 }

-- === + Network LOGINS + ==========================================

netLogins OBJECT IDENTIFIER ::= { interface 15 }

netLoginPrompt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the login prompt for the network user
	that the PortServer TS displays.
	The maximum length is 10 characters. Enclose the string
	in quotation marks if it includes spaces."
::= { netLogins 12 }

netLoginsPasswordPrompt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The login prompt PortServer TS displays. The maximum
	 length is 10 characters. Enclose this string in quotation
	 marks if it includes spaces."
::= { netLogins 14 }

netLoginsCommandPrompt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The PortServer TS prompt displayed to a regular user
	 who has logged in. The maximum length is eight 
	 characters. Enclose this string in quotation marks
	 if it includes spaces."
::= { netLogins 17 }

netLoginsRootPrompt OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The PortServer TS prompt displayed to a root user
	 who has logged in. The maximum length is eight 
	 characters. Enclose this string in quotation marks
	 if it includes spaces."
::= { netLogins 19 }


-- =======================================================================
-- =======================================================================
-- === + SECURITY + ======================================================
-- =======================================================================
-- =======================================================================

authentication OBJECT IDENTIFIER ::= { digiPortServerTS 28 }

-- === + RADIUS + ========================================================

radius OBJECT IDENTIFIER ::= { authentication 11 }

radiusRun OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): RADIUS authentication disabled.
	         This is the default.

	 On(2) : RADIUS authentication enabled."
::= { radius 11 }

radiusIgnoreBad OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Ignore bad flag."
::= { radius 12 }

radiusPrimaryIPAddress OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The IP address of the primary RADIUS server.
	 This is the server that PortServer TS queries
	 first. If this server is down or busy, 
	 PortServer TS queries the secondary server 
	 (if there is one)."
::= { radius 13 }

radiusSecondaryIPAddress OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "This is the IP address of the secondary
         RADIUS server. This is the server queried 
         after the primary RADIUS server."
::= { radius 14 }

radiusPrimarySecret OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Is a password used for encryption of messages between
	 the RADIUS server and the PortServer TS. The server 
	 and PortServer TS must use the same password."
::= { radius 15 }

radiusSecondarySecret OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Is a password used for encryption of messages between
	 the RADIUS server and the PortServer TS. The server 
	 and PortServer TS must use the same password."
::= { radius 16 }

radiusPrimaryAuthSocket OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the TCP port number used to specify the
	 primary radius server authentication port."
::= { radius 17 }

radiusSecondaryAuthSocket OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the TCP port number used to specify the
	 secondary radius server authentication port."
::= { radius 18 }

radiusPrimaryAccountingSocket OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the TCP port number used to specify the
	 primmary radius server accounting port."
::= { radius 19 }

radiusSecondaryAccountingSocket OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the TCP port number used to specify the
	 secondary radius server accounting port."
::= { radius 20 }

-- =======================================================================
-- =======================================================================
-- === + USER + ==========================================================
-- =======================================================================
-- =======================================================================

user OBJECT IDENTIFIER ::= { digiPortServerTS 29 }

userTable OBJECT-TYPE
    SYNTAX SEQUENCE OF UserEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"List of user entries"
::= { user 11 }

userEntry OBJECT-TYPE
    SYNTAX UserEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"User entry"
    INDEX { userIndex }
::= { userTable 1 }

UserEntry ::= SEQUENCE {
userIndex INTEGER,
userName DisplayString,
userPassword DisplayString,
userPasswordRequired Switch,
userDefaultAccess INTEGER,
userCommandLine Switch,
userMenu INTEGER,
userAccessTime DisplayString,
userAutoConnect Switch,
userAutoHostIP IpAddress,
userAutoService INTEGER,
userAutoPort INTEGER,
userSessionTimeout INTEGER,
userIdleTimeout INTEGER,
userMaxPort INTEGER,
userPorts DisplayString,
userConnectEscape DisplayString,
userTelnetEscape DisplayString,
userRloginEscape DisplayString,
userKillEscape DisplayString,
userOutgoing Switch,
userRemoteIP IpAddress,
userIpMask IpAddress,
userLocalIP IpAddress,
userPPPAuth INTEGER,
userChapId DisplayString,
userChapKey DisplayString,
userPapId DisplayString,
userPapKey DisplayString,
userCompression INTEGER,
userAddrCompress Switch,
userVJSlots INTEGER,
userProtoCompress Switch,
userDeviceIndex INTEGER,
userLoginScriptIndex INTEGER,
userPhoneNumber DisplayString,
userDialout Switch,
userWanStatus DisplayString,
userFirstParam DisplayString,
userSecondParam DisplayString,
userKeepalive Switch,
userFlushStChar INTEGER,
userAutoHost DisplayString
}

userIndex OBJECT-TYPE
    SYNTAX INTEGER(1..64)
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"UserID"
::= { userEntry 11 }

userName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The name that identifies this user"
::= { userEntry 12 }

userPassword OBJECT-TYPE	
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory	
    DESCRIPTION	
	"Password string for this user"
::= { userEntry 13 }

userPasswordRequired OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Means a password is not required of this user.

	 On(2): A password is required of this user.
	        This is the default."
::= { userEntry 14 }

userDefaultAccess OBJECT-TYPE
    SYNTAX INTEGER {commandLine(1), autoconnect(2), netService(3), menu(4), outgoing(5)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Restricts the service accessible to the user.

	 CommandLine(1): The PortServer TS command line 
	                 is displayed to the user. This is
			 the default.

	 Menu(2):	 A menu is displayed to the user.
	                 A menu must be specified in 
			 userMenu.
		  
	 Autoconnect(3): The PortServer TS automatically connects
	                 the user to the destination specified
			 on the userAutoHost field."

::= { userEntry 15 }

userCommandLine OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): The user cannot access the command line and
	         cannot issue commands.
		
	 On(2): A telnet or rlogin user can access the command
	        line and issue commands."
::= { userEntry 16 }

userMenu OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(0): Means that no menu is presented to the user.

	 Index-Number: Specifies the menu, by index number, presented
	               to a telnet or rlogin user."
::= { userEntry 17 }

userAccessTime OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The period in which the user can access PortServer TS. 
	 use the userAccessTime field to restrict the user's access 
	 to the time specified.  Use the following keywords to specify
	 days and hours

	 working week (monday-friday) : wk
	 Sunday		              : su
	 Monday                       : mo
         Tuesday                      : tu
         Wednesday                    : we
	 Thursday                     : th
         Friday                       : fr
         Saturday                     : sa

	 Specify hour ranges in the form :
	 hr:min-hr:min, or hr-hr. Use spaces to separate keywords and
	 enclose the entire string in quotation marks.

	 Here are some examples:

	 wk9:00-17:00 : provides access monday through friday from 9am until 5pm
	 su mo fr     : provides access all day sunday, monday and friday"
::= { userEntry 18 }

userAutoConnect OBJECT-TYPE 
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION 
	"Off(1): The user will not be automatically connected to another system.
	         This is the default.
		 
	 On(2) : The telnet or rlogin user will be automatically connected
	         to another system without accessing the PortServer TS 
		 command line once the user has satisfied login and 
		 password requirements. If you specify yes, specify
		 the userAutoHost, userAutoPort"
::= { userEntry 19 }

userAutoHostIP OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS deprecated
    DESCRIPTION
	"Replaced by userAutoHost. The IP address of a host to which this 
	 telnet or rlogin user should be automatically connected. Use this 
	 field only if you specify userAutoConnect as On(1)."
::= { userEntry 20 }

userAutoService OBJECT-TYPE
    SYNTAX INTEGER{ default(1), raw(2), rlogin(3), telnet(4) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Alternate way to specify a TCP port for an autoconnect user. 
	 Use this field only if you have specified userAutoConnect as
	 On(1)."
::= { userEntry 21 }

userAutoPort OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The TCP port for an autoconnect user.
	 Use this field only if you have specified 
	 userAutoConnect as On(1)."
::= { userEntry 22 }

userSessionTimeout OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The maximum time in seconds that a user may be connected.

	 The default is 0, which means there is no limit. "
::= { userEntry 23 }

userIdleTimeout OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The time in seconds when a user will be logged off
	 for inactivity. The default is 0, which means there 
	 is no limit."
::= { userEntry 24 }

userMaxPort OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The maximum number of ports that a telnet or rlogin user can 
	 be logged into at the same time.

	 0 indicates that the user can be simultaneously logged in 
	 on all ports."
::= { userEntry 25 }

userPorts OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"A port or range of ports that this user can access"
::= { userEntry 26 }

userConnectEscape OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The users connection escape sequence. The default is ^]"
::= { userEntry 27 }

userTelnetEscape OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The users telnet escape sequence."
::= { userEntry 28 }

userRloginEscape OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The users rlogin escape sequence."
::= { userEntry 29 }

userKillEscape OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The users kill escape sequence."
::= { userEntry 30 }

userOutgoing OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This user is allowed outgoing connections."
::= { userEntry 31 }

userRemoteIP OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The IP address of the remote PPP user.
	 Possible values are:
	   an IP address in dotted decimal format;
	   0.0.0.0, which means that the peer provides an address;
	   255.255.255.254, which means, that IP address for the peer
	   will be provided from the IPPOOL."
::= { userEntry 32 }

userIpMask OBJECT-TYPE 
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"This is the IP mask to apply to the address 
	specified on the userRemoteIp field"
::= { userEntry 33 }

userLocalIP OBJECT-TYPE
    SYNTAX IpAddress
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The IP address of the local end of PPP link.
	 If it is set to 0.0.0.0, the IP address for
	 ethernet interface is used."
::= { userEntry 34 }

userPPPAuth OBJECT-TYPE
    SYNTAX INTEGER {none(1), chap(2), pap(3), both(4)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Kind of authentication - none/chap/pap/both."
::= { userEntry 35 }

userChapId OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"User ID for CHAP authentication.
	 Not more the 16 characters"
::= { userEntry 36 }

userChapKey OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"User password for CHAP authentication.
	 Not more the 16 characters"
::= { userEntry 37 }

userPapId OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"User ID for PAP authentication.
	 Not more the 16 characters"
::= { userEntry 38 }

userPapKey OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"User password for PAP authentication.
	 Not more the 16 characters"
::= { userEntry 39 }

userCompression OBJECT-TYPE
    SYNTAX INTEGER {none(1), vj(2)}
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"vj(2)   - means that Van Jacobsen Header compression
	           is used on PPP and SLIP connections.
	 none(1) - means that the header compression
	           is not used on PPP and SLIP connections."
::= { userEntry 40 }

userAddrCompress OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Means PortServer will not attempt to
	         negotiate address compression.

	 On(2): Means PortServer attempts to negotiate
	        address compression on PPP connections."
::= { userEntry 41 }

userVJSlots OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The number of slots used for 
	 Van Jacobsen Header compression.
	 The default is 16 and the range is 0 to 255."

::= { userEntry 42 }

userProtoCompress OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Means PortServer will not attempt to
	         negotiate protocol compression.

	 On(2): Means PortServer attempts to negotiate
	        protocol compression on PPP connections."
::= { userEntry 43 }

userDeviceIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The index in the device table (one based) of
	 the existing device used for outgoing
	 connections. 0 - device is not used."
::= { userEntry 44 }

userLoginScriptIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The index in the script table (one based) of
	 the existing scripts used to log in
	 to a remote system. 0 - script is not used."
::= { userEntry 45 }

userPhoneNumber OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The phone number can be used by the dialer
	 script for outgoing connection establishment."
::= { userEntry 46 }

userDialout OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Off(1): Means that outgoing PPP conection is not enable.

	 On(2):  Means that outgoing PPP conection is enable."
::= { userEntry 47 }

userWanStatus OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Displays status of WAN connection"
::= { userEntry 48 }

userFirstParam OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The user name used as a first parameter
	 by login script."
::= { userEntry 49 }

userSecondParam OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The user password used as a seccond parameter
	 by login script."
::= { userEntry 50 }

userKeepalive OBJECT-TYPE
    SYNTAX Switch
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The keepalive settings for an autoconnect user.

	 off(1): TCP Keepalive will not be enabled for autoconnect 
	         users. This is the default. 

         on(2) : TCP Keepalive will be enabled for autoconnect 
                 users if the general TCP keepalive service is 
		 active for this device."
::= { userEntry 51 }

userFlushStChar OBJECT-TYPE
    SYNTAX INTEGER{ default(1), on(2), off(3) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"Whether to flush the starting character of an autoconnect 
	 session. 

	 default(1): Preserve the default flushing behaviour based 
	             on the autoconnect service type. 

	 on(2):      Flush the initiating character. 

         off(3) :    Dont flush the initiating charcter."
::= { userEntry 52 }

userAutoHost OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The IP address of a host to which this user should be
	 automatically connected. Use this field only if you specify
	 userAutoConnect as On(1)."
::= { userEntry 53 }

-- =======================================================================
-- =======================================================================
-- === + WHO + ===========================================================
-- =======================================================================
-- =======================================================================

whoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF WhoEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Who table" 
::= { digiPortServerTS 30 }

whoEntry OBJECT-TYPE
    SYNTAX WhoEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION 
	"Who entry"
    INDEX { whoIndex }
::= { whoTable 1 }

WhoEntry ::= SEQUENCE {
whoIndex INTEGER,
whoUser DisplayString,
whoTTY DisplayString,
whoFrom DisplayString,
whoTo DisplayString,
whoSessions INTEGER
}

whoIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is the index of the who table"
::= { whoEntry 11 }

whoUser OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is a user currently logged in to the PortServer TS"
::= { whoEntry 12 }

whoTTY OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is the TTY of a logged in user referenced by the index"
::= { whoEntry 13 }

whoFrom OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is from where the user referenced by index is connected"
::= { whoEntry 14 }

whoTo OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is to where the user referenced by index is connected"
::= { whoEntry 15 }

whoSessions OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is the number of sessions the user has running"
::= { whoEntry 16 }

-- =======================================================================
-- =======================================================================
-- === + DEVICE + ===========================================================
-- =======================================================================
-- =======================================================================

deviceTable OBJECT-TYPE
    SYNTAX SEQUENCE OF DeviceEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Device table" 
::= { digiPortServerTS 31 }

deviceEntry OBJECT-TYPE
    SYNTAX DeviceEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION 
	"device entry"
    INDEX { deviceIndex }
::= { deviceTable 1 }

DeviceEntry ::= SEQUENCE {
deviceIndex INTEGER,
deviceName DisplayString,
deviceBaud INTEGER,
devicePorts DisplayString,
deviceDialer INTEGER
}

deviceIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is the index of the device table"
::= { deviceEntry 11 }

deviceName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"User-defined name for the device"
::= { deviceEntry 12 }

deviceBaud OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The baud rate in the range of 300 to 115200.
	 If 0, the the baud rate specified on the set line
	 command is used."
::= { deviceEntry 13 }

devicePorts OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The port or range of ports available to this device."
::= { deviceEntry 14 }

deviceDialer OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The index in the script table (one based) of
	 the existing scripts used to dial in
	 to a remote system. 0 - script is not used."
::= { deviceEntry 15 }

-- =======================================================================
-- =======================================================================
-- === + SCRIPT + ===========================================================
-- =======================================================================
-- =======================================================================

scriptTable OBJECT-TYPE
    SYNTAX SEQUENCE OF ScriptEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
	"Script table" 
::= { digiPortServerTS 32 }

scriptEntry OBJECT-TYPE
    SYNTAX ScriptEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION 
	"script entry"
    INDEX { scriptIndex }
::= { scriptTable 1 }

ScriptEntry ::= SEQUENCE {
scriptIndex INTEGER,
scriptName DisplayString
}

scriptIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"This is the index of the script table"
::= { scriptEntry 11 }

scriptName OBJECT-TYPE
    SYNTAX DisplayString
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"User-defined name for the script"
::= { scriptEntry 12 }

-- =======================================================================
-- =======================================================================
-- === + SERIAL POWER + ==================================================
-- =======================================================================
-- =======================================================================

serialPowerOutTable OBJECT-TYPE
    SYNTAX SEQUENCE OF SerialPowerOutEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Serial Power Outgoing table"
::= { digiPortServerTS 33 }

serialPowerOutEntry OBJECT-TYPE
    SYNTAX SerialPowerOutEntry
    ACCESS not-accessible
    STATUS mandatory
    DESCRIPTION
        "Serial Power Outgoing entry"
    INDEX { serialPowerOutIndex }
::= { serialPowerOutTable 1 }

SerialPowerOutEntry ::= SEQUENCE {
serialPowerOutIndex INTEGER,
serialPowerOutRI INTEGER,
serialPowerOutDTR INTEGER
}

serialPowerOutIndex OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
        "This is the index of the serial power outgoing table"
::= { serialPowerOutEntry 11 }

serialPowerOutRI OBJECT-TYPE
    SYNTAX INTEGER { off(1), on(2), unavailable(3) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
    	"This is the status of RI outgoing serial power
	
	 off(1):		No serial power outgoing on RI
	 on(2):			Serial power outgoing on RI
	 unavailable(3):	Serial power not allowed on this port"
::= { serialPowerOutEntry 12 }

serialPowerOutDTR OBJECT-TYPE
    SYNTAX INTEGER { off(1), on(2), unavailable(3) }
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
    	"This is the status of DTR outgoing serial power
	
	 off(1):		No serial power outgoing on DTR
	 on(2):			Serial power outgoing on DTR
	 unavailable:		Serial power not allowed on this port"
::= { serialPowerOutEntry 13 }

-- =======================================================================
-- =======================================================================
-- === + END + ==========================================================
-- =======================================================================
-- =======================================================================

END
