-- SECTION 1: Top Level Definitions

                                     
CENTILLION-CONFIG-MIB DEFINITIONS ::= BEGIN


-- Centillion Configuration MIB Release 2.1.0
-- Revision 07/11/00

-- Copyright 1994-2000 Nortel Networks, Inc.
-- All rights reserved.
-- This Bay Networks SNMP Management Information Base Specification
-- (Specification) embodies Bay Networks' confidential and
-- proprietary intellectual property. Bay Networks retains all
-- title and ownership in the Specification, including any
-- revisions.

-- This Specification is supplied "AS IS," and Bay Networks makes
-- no warranty, either express or implied, as to the use,
-- operation, condition, or performance of the Specification.

-- This file defines the MIB for configuration and maintenance of the
-- system tables.
-- All configuration objects are not saved across system resets unless
-- the configruation is saved in flash memory, unless otherwise specified.


-- Imports

IMPORTS
	DisplayString, PhysAddress
		FROM RFC1213-MIB
	OBJECT-TYPE
		FROM RFC-1212
	Counter, TimeTicks, IpAddress
		FROM RFC1155-SMI
	StatusIndicator, BitField, MacAddress,
	EnableIndicator, sysConfig
		FROM CENTILLION-ROOT-MIB;

-- Textual Conventions

VlanId ::= INTEGER(1..4095)

-- Groups

sysTableConfig		OBJECT IDENTIFIER ::=	{ sysConfig 1 }
sysImgInfo              OBJECT IDENTIFIER ::=   { sysConfig 2 }
sysMcpRedundInfo        OBJECT IDENTIFIER ::=   { sysConfig 3 }
sysNetProtocol		OBJECT IDENTIFIER ::= 	{ sysConfig 14 }
sysTFTPGroup		OBJECT IDENTIFIER ::= 	{ sysConfig 18 }
sysSNMPGroup		OBJECT IDENTIFIER ::= 	{ sysConfig 19 }
netbiosGroup		OBJECT IDENTIFIER ::= 	{ sysConfig 21 }
lnmGroup		OBJECT IDENTIFIER ::= 	{ sysConfig 25 }

sysIpProtocol		OBJECT IDENTIFIER ::= 	{ sysNetProtocol 1 }


-- SECTION 2: MCP System Table Configuration Information
--
-- This information is specific to the system tables and may not be
-- visible to the user.
--

--- System Image Global Information

sysImgGbl OBJECT IDENTIFIER ::= { sysImgInfo 1 }

sysImgGblInvokeSrc OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                image1(2),
                image2(3)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The source of system image to be invoked at next boot.
                 Default setting is image1.

                 If the desired image cannot be invoked,
                 another image (if found and valid) will be invoked 
                 automatically at next boot.

                 Note that if the system does not support
                 dual boot image, then image1 should be used."
        ::= { sysImgGbl 1 }


sysImgGblLoadDst OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                location1(2),
                location2(3)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The non volatile memory destination where 
                 the system image will be (programmed by boot loader)
                 down loaded to at next boot.
                 Default setting is location1.

                 Note that if the system does not support
                 dual boot image, then location1 should be used."
        ::= { sysImgGbl 2 }


--- System Image Table Information

sysImgTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SysImgEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A table that provides additional information
                about the system images. The number of
                entries in the table is determined by the
                number of index of the system image."
        ::= { sysImgInfo 2 }


sysImgEntry OBJECT-TYPE
        SYNTAX  SysImgEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A row in the table of additional information
                about the system images. Entries can not
                be created or deleted via SNMP requests."
        INDEX   { sysImgIndx }
        ::= { sysImgTable 1 }


SysImgEntry ::= SEQUENCE {
        sysImgIndx INTEGER,
        sysImgVer DisplayString,
        sysImgStatus INTEGER
        }
 
 
sysImgIndx OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The index of the system image."
        ::= { sysImgEntry 1 }


sysImgVer OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..127))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The version of the system image stored in
                non volatile memory.

                Note that if the system does not support
                dual boot image, then zero length string
                should be returned for image2."
        ::= { sysImgEntry 2 }


sysImgStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                good(2),
                bad(3)
                }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The status of system image stored in non volatile memory."
        ::= { sysImgEntry 3 }


--- System MCP Redundancy Global Information

sysMcpRedundGbl OBJECT IDENTIFIER ::= { sysMcpRedundInfo 1 }

sysMcpRedundNxtGblState OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                enable(2),
                disable(3)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
		"State of the Redundant MCP during next boot.
		Request to enable or disable redundant MCP.  This
		will update the configuration information for the
		redundant MCP pair.  It takes effect during next
		reset."
        ::= { sysMcpRedundGbl 1 }


--- System MCP Redundancy Table Information

sysMcpRedundTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SysMcpRedundEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A table that provides additional information
                about the system MCP redundancy. The number of
                entries in the table is determined by the
                number of index of the system MCP redundancy."
        ::= { sysMcpRedundInfo 2 }


sysMcpRedundEntry OBJECT-TYPE
        SYNTAX  SysMcpRedundEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A row in the table of additional information
                about the system MCP redundancy. Entries can not
                be created or deleted via SNMP requests."
        INDEX   { sysMcpRedundIndx }
        ::= { sysMcpRedundTable 1 }


SysMcpRedundEntry ::= SEQUENCE {
        sysMcpRedundIndx INTEGER,
        sysMcpRedundPriority INTEGER,
	sysMcpRedundType INTEGER,
	sysMcpRedundOperState INTEGER,
	sysMcpRedundCfgStatus INTEGER
        }
 
 
sysMcpRedundIndx OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
		"The index of the system MCP redundancy. Currently
		represents the slot number that this MCP is in."
        ::= { sysMcpRedundEntry 1 }


sysMcpRedundPriority OBJECT-TYPE
        SYNTAX  INTEGER (0..255)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The MCP redundancy priority which is used for primary
		MCP selection.  Default setting is zero."
        ::= { sysMcpRedundEntry 2 }

sysMcpRedundType OBJECT-TYPE
	SYNTAX  INTEGER {
		other(1),
		regular(2),
		primary(3),
		secondary(4),
		switching(5)
		}
	ACCESS  read-only
	STATUS  mandatory
	DESCRIPTION
		"Functional type of MCP in the chassis. Currently only
		ATM MCPs can be used for the redundant function.  Only
		MCPs in slots 1 and 2 can participate in redundancy.
		But other ATM MCPs can still be plugged into the chasis.
		This field represents the way that an MCP is
		participating in the redundancy."
	::= {sysMcpRedundEntry 3 }

sysMcpRedundOperState OBJECT-TYPE
	SYNTAX  INTEGER {
		other(1),
		active(2),
		inactive(3)
		}
	ACCESS  read-only
	STATUS  mandatory
	DESCRIPTION
		"Current state of this MCP"
	::= {sysMcpRedundEntry 4 }

sysMcpRedundCfgStatus OBJECT-TYPE
	SYNTAX  INTEGER {
		other(1),
		user-enable(2),
		user-disable(3),
		default-enable(4),
		default-disable(5)
		}
	ACCESS  read-only
	STATUS  mandatory
	DESCRIPTION
		"State of the Redundant MCP. Other(1) is used when the
		MCP is not participating in redundancy, default
		enable/disable used to represent the factory default
		case.  User enable/disable used when a user changes
		from the factory default state."
	::= { sysMcpRedundEntry 5 }

-- The following objects for Redundant MCP are for future
-- implementations when there is more time to implement the drivers
-- support.
--
--      sysMcpRedundPriStateChg OBJECT-TYPE
--      SYNTAX  COUNTER
--      ACCESS  read-only
--      STATUS  mandatory
--      DESCRIPTION
--              "Number of times this MCP has been a Primary MCP."
--      ::= { sysMcpRedundEntry 6 }
--
--      sysMcpRedundSecStateChg OBJECT-TYPE
--      SYNTAX  COUNTER
--      ACCESS  read-only
--      STATUS  mandatory
--      DESCRIPTION
--              "Number of times this MCP has been a Secondary MCP."
--      ::= { sysMcpRedundEntry 7 }
--
--      sysMcpRedundLastHeartBeat OBJECT-TYPE
--      SYNTAX  TimeTicks
--      ACCESS  read-only
--      STATUS  mandatory
--      DESCRIPTION
--              "Last time the MCP received a heart beat pulse from
--              the other MCP which is the participant in the redundant
--              MCP paring and does not include other ATM MCPs that may
--              be in the same chassis."
--      ::= { sysMcpRedundEntry 8 }
--
--      sysMcpRedundFailureDetected OBJECT-TYPE
--      SYNTAX  COUNTER
--      ACCESS  read-only
--      STATUS  mandatory
--      DESCRIPTION
--              "Number of times a redundant partner has failed."
--      ::= { sysMcpRedundEntry 9 }




-- SECTION 3: Routing Information
--
-- The RIF Table
--
-- The Routing Information Field (RIF) Table contains routing information
-- used by stations.
--

rifTable OBJECT-TYPE
	SYNTAX	SEQUENCE OF RifEntry
	ACCESS	not-accessible
	STATUS	mandatory
	DESCRIPTION
		"This table contains Routing Information Field (RIF)
		parameters. Entries may be used by one or more stations on
		the switch."
	::= { sysConfig 5 }

rifEntry OBJECT-TYPE
	SYNTAX	RifEntry
	ACCESS	not-accessible
	STATUS	mandatory
	DESCRIPTION
		"A single entry in the RIF table."
	INDEX	{ rifPath }
	::= { rifTable 1 }

RifEntry ::= SEQUENCE {
	rifPath
		OCTET STRING,
	rifIndex
		INTEGER,
	rifInUse
		BitField,
	rifCount
		INTEGER,
	rifLength
		INTEGER,
	rifNext
		INTEGER,
	rifPrevious
		INTEGER
	}

rifPath OBJECT-TYPE
	SYNTAX	OCTET STRING (SIZE (4..28))
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"RIF field, read from left to right, i.e. read from the
		switch."
	::= { rifEntry 1 }

rifIndex OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"Index into the RIF table. This index is used to enter a
		RIF in the station table."
	::= { rifEntry 2 }

rifInUse OBJECT-TYPE
	SYNTAX	BitField
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"Indicates that this RIF entry is valid if set. A unique
		RIF entry may be deleted only if it is not in use by a
		station."
	::= { rifEntry 3 }

rifCount OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"The number stations that this RIF is associated with."
	::= { rifEntry 4 }

rifLength OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"Byte length of the RIF entry."
	::= { rifEntry 5 }

rifNext OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"Next RIF field."
	::= { rifEntry 6 }

rifPrevious OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"Previous RIF field."
	::= { rifEntry 7 }


-- SECTION 4: Configuration Modes

systemMaxPacketInfoSize OBJECT-TYPE
	SYNTAX	INTEGER (516..17800)
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The system maximum packet information field size. 
		Changing the maximum information size
		does not take effect until the next system reset."
	::= { sysConfig 6 }

systemConfigMode OBJECT-TYPE
	SYNTAX	INTEGER {
		other (1),			-- custom configuration
		transparentSwitchingNoSTP (2),
		source-route-bridging (3),
		transparent-bridging(4),
		noVirtualRingBridging(5)	-- no bridging between Rings
		}
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"This variable describes the current mode of bridging
		configuration in the switch. The bridging mode applies to
		all ports. The value other(1) is a read-only indication that
		the system is in a user customized the system configuration.
		Setting this object will save the configuration into flash
		and issue a system reset command."
	::= { sysConfig 7 }

systemConfigIpOption OBJECT-TYPE
        SYNTAX  INTEGER {
                other (1),
                eraseIP (2),
                preservedIP (3)
        }
        ACCESS read-write
        STATUS mandatory
        DESCRIPTION
               "Reading this object always returns other(1).  Setting of
                this object, which is optional, must be accomplished in
                the same SNMP request that set systemConfigMode."
        ::= { sysConfig 29 }

maxPerfMode OBJECT-TYPE
	SYNTAX	EnableIndicator
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The current value of the system maximum performance mode.
		Setting this value to enabled causes the system to
		perform in maximum performance mode. Default is disabled.
		This variable does not take effect until the next system
		reset."
	::= { sysConfig 8 }


-- defaultConfigReset no longer supported


configSave OBJECT-TYPE
	SYNTAX	BitField
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"Save the current configuration into flash memory.
		When read, this value is always clear (1). The value may only
		be set to the set (2) state."
	::= { sysConfig 10 }

localAdminMacAddress OBJECT-TYPE
	SYNTAX	MacAddress
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The system's locally administered MAC address. The current
		operation MAC address may be obtained by the ifPhysAddress
		entry in the ifTable. This parameter will take effect only
		after a reset is issued."
	::= { sysConfig 12 }


configLogin OBJECT-TYPE
	SYNTAX	OCTET STRING
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The system login object. This object is used to login
		a network management station to the system for configuration.
		The format of the login request follows:
		    login indicator.login password, 
		where the login indicator is a single byte of the value
		1 = logoff, 2 = login, or 3 = set password and the password 
		is the system password. The password must be supplied for 
		upon login or altering the password. A manager must first
		login to the system before altering the password.
		When read, the first octet is returned, indicating whether
		a managment station is currently logged in to the system."
	::= { sysConfig 13 }

configProtocol OBJECT-TYPE
	SYNTAX	INTEGER {
		flash(1),	-- config obtained via flash
		tftpNoSave(2),	-- config obtained via TFTP
		tftpSave(3)
		}
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The protocol used to retrieve system configuration. Flash
		indicates that the configuration is read from the flash.
		tftpNoSave indicates that the TFTP protocol should be used
		to retrieve the current configuration. The new configuration
		is not saved into flash, it is up to the user to save
		the configuration is desired. The new configuration will not
		take effect until the next system reset. tftpSave indicates
		that the newly uploaded configuration will be saved into
		flash, thus may be use to permanently update a configuration.
		The system is automatically reset."
	::= { sysConfig 15 }

configFilename	OBJECT-TYPE
	SYNTAX	DisplayString (SIZE(0..255))
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The name of the configuration file that is sent to the
		server. The actual boot protocol used to retrieve the file
		is determined by configProtocol. This parameter may be
		configured via the network boot protocol."
	::= { sysConfig 16 }

configSource	OBJECT-TYPE
	SYNTAX	INTEGER {
		flashConfig(1),	-- config obtained via flash
		remoteConfig(2)	-- config obtained via remote
		}
	ACCESS	read-only
	STATUS	mandatory
	DESCRIPTION
		"An indication of how the system was actually configured.
		flashConfig indicates that the current configuration was
		obtained via flash. remoteConfig indicates that the
		configuration was obtained via the protocol determined
		by configProtocol."
	::= { sysConfig 17 }
	
sonmpTrConfig OBJECT-TYPE
	SYNTAX   INTEGER {
		 enable(1), 
		 disable(2)
		 }
        ACCESS   read-write
	STATUS   mandatory
	DESCRIPTION
		 "The configuration status of the Token Ring auto-topology.
		 If the value of this object is set to enable(1), the
		 Token Ring auto-topology frames will be sent out on every
		 Token Ring port on every 10 seconds interval.  The auto-
		 topology frames are received from the Token Ring port and
		 logged in the database.  If the value of this object is
		 set to disable(2), no Token ring topology frames are sent
		 and received."
        ::= { sysConfig 28 }

sonmpTrSpeed OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                topFast(2),
                topSlow(3)
                }
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "The Token Ring topology message (SONMP frame)
                transmit speed. The values that are read/write are:
                  topFast(2)...short interval between transmitting
                  topSlow(3)...long interval between transmitting

                The value that is readonly is:
                  other(1)...speed unknown, or other value

                In fast mode, the SONMP frame transmit interval
                is 10 seconds for all SONMP frames.

                In slow mode, the interval is 60 seconds for master
                NMM announcement SONMP frames, and 70 seconds for
                adjacent SONMP frames."
        ::= { sysConfig 30 }

srUnknownFrameFlood OBJECT-TYPE
        SYNTAX  EnableIndicator
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
                "Unknown Source Route Frame Flood.
                 Enable/Disable flooding of Source Route Frames to
                 the next hop while the route to the remote ring
                 is being learned and circuit is established."
        ::= { sysConfig 32 }

srbIeeeBpduEnable OBJECT-TYPE
       SYNTAX  EnableIndicator
       ACCESS  read-write
       STATUS  mandatory
       DESCRIPTION
               "Send Srb/Ieee BPDU as explorer.
                Enable/Disable the sending of Srb/IEEE BPDU's as explorers,
                allowing some routers to receive the BPDU with a rif."
       ::= { sysConfig 33 }

tbRifProxyEnable OBJECT-TYPE
       SYNTAX  EnableIndicator
       ACCESS  read-write
       STATUS  mandatory
       DESCRIPTION
               "Process route descriptor LE_ARP requests in token ring
               transparent bridging LANE. Enable/Disable the processing of 
               LE_ARP requests for route descriptors when received from a 
               source route ATM attached device."
       ::= { sysConfig 34 }

cpuClkRate OBJECT-TYPE
       SYNTAX  INTEGER {
           mhz66(1),
           mhz85(2)
       }
       ACCESS  read-only
       STATUS  mandatory
       DESCRIPTION
              "MCP Clock Rate.
              Indicates the speed at which the MCP processor functions."
       ::= { sysConfig 35 }

maxRids OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			   "Maximum number of Reassembly Ids.
			   Indicates the maximum number of RIDs the switch supports. Determined
			   by the XRam installed on the ATM cards in the switch."
        ::= { sysConfig 36 }

-- SECTION 5: Network Protocol Group
--
-- This group contains information used to configure the network
-- protocols supported by the switch. Each protocol will be defined
-- by a set of object identifiers specific to the protocol.
--

-- IP Protocol Group

-- The sysAddr, sysNetMask, sysBcastAddr,
-- defaultGatewayAddr, and ipConfigProtocol
-- are deprecated by ipHostTable. Jan/1997.
--
-- The 'deprecated' status indicates that the object is
-- obsolete, but that an implementor may wish to support that
-- those objects to foster interoperability with older
-- implementations.
--

sysAddr OBJECT-TYPE 
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	deprecated  
	DESCRIPTION
		"The system's IP address. The current operational IP
		address may be obtained by the ipAdEntAddr entry in the
		ipAddrTable. This parameter will take effect only after
		a reset is issued."
	::= { sysIpProtocol 1 }

sysNetMask OBJECT-TYPE
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	deprecated
	DESCRIPTION
		"The system's IP subnet mask. The current operational IP
		subnet mask may be obtained by the ipAdEntNetMask entry in
		the ipAddrTable. This parameter will take effect only after
		a reset is issued. The parameter is not saved unless
		written to flash."
	::= { sysIpProtocol 2 }

sysBcastAddr OBJECT-TYPE
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	deprecated
	DESCRIPTION
		"The system's IP broadcast address. The current operational
		IP broadcast address may be obtained by the ipAdEntBcastAddr
		in the ipAddrTable. This parameter will take effect only after
		a reset is issued. This parameter is not saved unless written
		to flash."
	::= { sysIpProtocol 3 }

defaultGatewayAddr OBJECT-TYPE
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	deprecated
	DESCRIPTION
		"The system's default getway IP address. the current
		operational default gateway's IP address can be obtained from
		the ipRoutingTable. This parameter will take effect only
		after a reset is issued. This parameter is not saved unless
		written to flash."
	::= { sysIpProtocol 4 }

configServerAddr OBJECT-TYPE
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The IP address to which the requests for configuration
		files are sent. The protocol used to retrieve the
		configuration is determined by the configProtocol object.
		This parameter may be set dynamically as established by the
		ipConfigProtocol object."
	::= { sysIpProtocol 5 }

ipConfigProtocol OBJECT-TYPE
	SYNTAX	INTEGER {
		flash(1),	-- IP information obtained via flash
		bootp(2)	-- IP information obtained via BootP
		}
	ACCESS	read-write
	STATUS	deprecated 
	DESCRIPTION
		"The protocol used to obtain this IP
		addressing information."
	::= { sysIpProtocol 6 }


ipHostNumber	OBJECT-TYPE
  	SYNTAX  INTEGER
  	ACCESS  read-only
  	STATUS  mandatory
  	DESCRIPTION
  		"The number of IP entities (regardless of
		their current state) present on this system."
  	::= { sysIpProtocol 7 }


ipHostTable	OBJECT-TYPE
  	SYNTAX	SEQUENCE OF IpHostEntry
  	ACCESS	not-accessible
  	STATUS	mandatory
  	DESCRIPTION
		"This table contains all the ip entities this
		agent manages. The number of entries is
		given by the value of ipHostNumber."
		::= { sysIpProtocol 8 }


ipHostEntry	OBJECT-TYPE
	SYNTAX	IpHostEntry
	ACCESS	not-accessible
	STATUS  mandatory
	DESCRIPTION
		"An IP entity entry containing objects
		regarding this IP entity."

	INDEX	{ ipHostIndex }
	::= { ipHostTable 1 }

IpHostEntry ::=
	SEQUENCE {
	   ipHostIndex
	       INTEGER, 
           ipHostAddress 
	       IpAddress, 
	   ipHostNetMask
	       IpAddress,
	   ipHostBcastAddr
	       IpAddress,
	   ipHostDefaultGatewayAddr
	       IpAddress, 
	   ipHostConfigProtocol
	       INTEGER,
	   ipHostEnable 
	       INTEGER, 
	   ipHostType
	       INTEGER 
	}


  ipHostIndex	OBJECT-TYPE
  	SYNTAX	INTEGER
  	ACCESS  read-write
  	STATUS  mandatory
  	DESCRIPTION
  		"An index to the ipHostTable. Its value ranges
  		between 1 and the value of ipHostNumber."
		 
  	::= { ipHostEntry 1 }


ipHostAddress 	OBJECT-TYPE 
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The IP address of this entity."
        ::= { ipHostEntry 2 }


ipHostNetMask 	OBJECT-TYPE 
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The subnet mask associated with the Ip
		address of this entry."
        ::= { ipHostEntry 3 }

ipHostBcastAddr	OBJECT-TYPE 
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The Broadcast address associated with the
		IP address of this entry."
        ::= { ipHostEntry 4 }

ipHostDefaultGatewayAddr   OBJECT-TYPE 
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS  mandatory	
	DESCRIPTION
		"The gateway address associated with the IP address of
		this entry."
        ::= { ipHostEntry 5 }

ipHostConfigProtocol	OBJECT-TYPE
	SYNTAX	INTEGER {
		flash(1),	--this Ip information obtained via flash.
		bootp(2) 	--this IP information obtained via BootP.
		}
	ACCESS  read-write
	STATUS  mandatory
	DESCRIPTION
		"The protocol used to obtain this IP
		host's addressing information."
	::= { ipHostEntry 6 }


ipHostEnable	OBJECT-TYPE
	SYNTAX  INTEGER {
		enable (1),
		disable(2)
		}
	ACCESS  read-write
	STATUS  mandatory
	DESCRIPTION
		"Enable or disable of this ip host entry."
	::= { ipHostEntry 7 }


 ipHostType	OBJECT-TYPE
	SYNTAX	INTEGER {
		primary(1),
		secondary(2)
		}
	ACCESS  read-only 
	STATUS  mandatory
	DESCRIPTION
		"A read only object indicating the type of
		this IP entity. "
	::= { ipHostEntry 8}



-- SECTION 6: TFTP Protocol Group
--
-- Implementation of the sysTFTP group is mandatory for all agent
-- products that support TFTP file transfers.
-- 
-- The sysTFTP Group is used by a station to initiate a TFTP transfer
-- from a TFTP server to this system (the TFTP client).  
--
-- In order to initiate a TFTP file transfer, the client must know
-- the following information:
--
-- 1. The operation to perform, either a get or a put (sysTFTPStart).
-- 2. What station is acting as the TFTP server (sysTFTPIpAddress).
-- 3. The file name (sysTFTPFileName) and the file type (sysTFTPFileType).
--        The file name can be a pathname.  The file type indicates to
--	  the agent what kind of information is being transferred.
-- 4. What module should receive the file (sysTFTPSlot).
--
--
-- For example, if one wished to inband download flash code to this agent,
-- one would set:
--
-- File type 	= Flash code
-- File name    = Pathname on the server where the file is located.
-- IP Address   = The IP of the TFTP file server.
-- TFTP Start   = get - retrieve the file from the server.
--
-- After setting the start object, the transfer takes place.  The  
-- sysTFTPResult object contains the result of the last TFTP transfer
-- attempted.
-- 

sysTFTPStart OBJECT-TYPE
	SYNTAX INTEGER {
		tftpNoTransfer(1),
		tftpGet(2),	-- download to agent
		tftpPut(3)	-- upload to server
		}
	ACCESS read-write
	STATUS mandatory
	DESCRIPTION
		"Setting sysTFTPStart to tftpGet(2) initiates a file
		transfer to the agent (download); tftpPut(3) initiates
		a file transfer to the server (upload)."
	::= { sysTFTPGroup 1 }

sysTFTPIpAddress OBJECT-TYPE
	SYNTAX IpAddress
	ACCESS read-write
	STATUS mandatory
	DESCRIPTION
		"The IP Address of the TFTP server."
	::= { sysTFTPGroup 2 }

sysTFTPFileName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..255))
	ACCESS read-write
	STATUS mandatory
	DESCRIPTION
		"The file name of the file to retrieve (tftpGet), or the 
		name of	the file to create (tftpPut). "
	::= { sysTFTPGroup 3 }


sysTFTPFileType OBJECT-TYPE
	SYNTAX INTEGER {
		configuration(1),
		imageCode(2)
--		bootCode(3)
		}
	ACCESS read-write
	STATUS mandatory
	DESCRIPTION
		"The type of file image to upload/download.  The file
		type indicates to the agent what kind of file it is
		receiving.  configuration(1) indicates an update of the
		system configuration. imageCode(2) indicates a code upgrade of
		the operational proms.  bootCode(3) indicates a code
		upgrade of the boot proms."
	::= { sysTFTPGroup 4 }


sysTFTPResult OBJECT-TYPE
	SYNTAX INTEGER {
		clear(1),		--not initialized
		xferInProgress(2),
		okay(3),
		otherTFTPError(4),
		fileNotFound(5),	-- check for valid file name
		accessError(6),
		diskFull(7),		-- server disk is full
 		illegalTFTPOperation(8),
		invalidTFTPTransactionID(9),
		fileExists(10),		-- file already exists
		noSuchUser(11),		-- no such user
		noResources(12),	-- no resources to start
		noResponse(13),		-- check valid server IP address
		flashError(14),		-- flash programming error
		configMismatch(15),	-- configuration mismatch
		configChecksumError(16)	-- configuration checksum error
		}	
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION
		"The result of the last TFTP operation."
	::= { sysTFTPGroup 5 }


-- SECTION 7: SNMP Group
--
-- The objects in this groups allow a management station control of the
-- SNMP elements of the system.
--

sysSNMPGetCommunity OBJECT-TYPE
	SYNTAX	DisplayString (SIZE(0..30))
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The system get community string."
	::= { sysSNMPGroup 1 }

sysSNMPSetCommunity OBJECT-TYPE
	SYNTAX	DisplayString (SIZE(0..30))
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The system set community string."
	::= { sysSNMPGroup 2 }

sysSNMPEnableTraps OBJECT-TYPE
	SYNTAX	EnableIndicator
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"Indicates whether the SNMP agent process is permitted
		to generate traps. This object provides global trap
		enable status, as specific traps may be enabled or disabled
		on an individual basis."
	::= { sysSNMPGroup 3 }

sysSNMPTrapIPReceiverTable OBJECT-TYPE
	SYNTAX	SEQUENCE OF SysSNMPTrapIPReceiverEntry
	ACCESS	not-accessible
	STATUS	mandatory
	DESCRIPTION
		"A table containing of network management stations that are
		to receive traps generated by the system."
	::= { sysSNMPGroup 4 }

sysSNMPTrapIPReceiverEntry OBJECT-TYPE
	SYNTAX	SysSNMPTrapIPReceiverEntry
	ACCESS	not-accessible
	STATUS	mandatory
	DESCRIPTION
		"A destination address and community string to a particular
		IP trap server. Entries are created by supplying a valid IP
		address of the trap server."
	INDEX	{ trapIPRcvrAddress }
	::= { sysSNMPTrapIPReceiverTable 1 }

SysSNMPTrapIPReceiverEntry ::= SEQUENCE {
	trapIPRcvrAddress
		IpAddress,
	trapIPRcvrStatus
		StatusIndicator,
	trapIPRcvrCommunity
		DisplayString
	}

trapIPRcvrAddress OBJECT-TYPE
	SYNTAX	IpAddress
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The IP network address of the network management entity
		which will receive traps."
	::= { sysSNMPTrapIPReceiverEntry 1 }

trapIPRcvrStatus OBJECT-TYPE
	SYNTAX	StatusIndicator
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"Setting this object to the value invalid(2) has the effect
		of invalidating the corresponding entry in the 
		sysSNMPReceiverTrapTable. On a read, the value of valid(2) 
		is returned. Entries are added into the table by specifying
		a previously unknown trapRcvrNetAddress, along with the
		corresponding trapRcvrCommunity."
	::= { sysSNMPTrapIPReceiverEntry 2 }

trapIPRcvrCommunity OBJECT-TYPE
	SYNTAX	DisplayString (SIZE (0..30))
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The community string to use for traps sent to this trap
		receiver."
	::= { sysSNMPTrapIPReceiverEntry 3 }

sysMgmtRingNumber OBJECT-TYPE
	SYNTAX	INTEGER (0..4095)
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"A unique ring number assigned to the system's managment
		entity. This ring will not appear as a source-route hop
		as it is seen only in frames destined to or sourced from
		the system management entity."
	::= { sysConfig 20 }

--
-- The NetBIOS Group
--
-- This group contains NetBIOS information on a system wide basis.

netbiosNameTableAgingTimer OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The non-zero timeout period in seconds for aging out
		dynamically learned Netbios names. The default value
		is 300 seconds."
	::= { netbiosGroup 1 }

netbiosNameQueryInterval OBJECT-TYPE
	SYNTAX	INTEGER (0..255)
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"The time period in hundreds of milliseconds in which
		NetBIOS name queries are allowed to be bridged. A value of
		0 disables briding NetBIOS name queries. The default value
		is 5 (a half second)."
	::= { netbiosGroup 2 }

netbiosNameTableFlush OBJECT-TYPE
	SYNTAX	BitField
	ACCESS	read-write
	STATUS	mandatory
	DESCRIPTION
		"If set, indicates that the NetBIOS name table should be
		flushed. Flushing the table removes all of the dynamically
		learned entries from the NetBIOS name table. When read,
		this object always returns a value of clear."
	::= { netbiosGroup 3 }

netbiosNameTableEntry OBJECT-TYPE
	SYNTAX	SEQUENCE OF NetbiosNameEntry
	ACCESS	not-accessible
	STATUS	deprecated
	DESCRIPTION
		"A NetBIOS name table. This table is a list of the NetBIOS
		names learned or configured on the switch."
	::= { netbiosGroup 4 }

netbiosNameEntry OBJECT-TYPE
	SYNTAX	NetbiosNameEntry
	ACCESS	not-accessible
	STATUS	deprecated
	DESCRIPTION
		"A NetBIOS name table entry. Entries may be deleted by
		setting the status object to invalid (2). Entries are added
		by specifying the name, station and ring or card/port as
		appropriate."
	INDEX { netbiosNameName }
	::= { netbiosNameTableEntry 1 }

NetbiosNameEntry ::= SEQUENCE {
	netbiosNameName
		DisplayString,
	netbiosNameStatus
		StatusIndicator,
	netbiosNameStationAddress
		PhysAddress,
	netbiosNameVirtualRingNumber
		INTEGER,
	netbiosNameCardNumber
		INTEGER,
	netbiosNamePortNumber
		INTEGER,
	netbiosNamePortType
		INTEGER,
	netbiosNameAge
		TimeTicks,
	netbiosNameProxies
		Counter,
	netbiosNameSuppressedQueries
		Counter
	}

netbiosNameName OBJECT-TYPE
	SYNTAX	DisplayString (SIZE(15))
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The NetBIOS name."
	::= { netbiosNameEntry 1 }

netbiosNameStatus OBJECT-TYPE
	SYNTAX	StatusIndicator
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The status of the NetBIOS name entry. Setting this object to
		invalid (2) causes the entry to be deleted from the name
		table. The value should always be read as valid(1)."
	::= { netbiosNameEntry 2 }

netbiosNameStationAddress OBJECT-TYPE
	SYNTAX	PhysAddress (SIZE(6))
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The address of the station from which this name was
		learned or configured. This object must be specified when
		adding an entry into the table."
	::= { netbiosNameEntry 3 }

netbiosNameVirtualRingNumber OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The virtual ring number from which the entry was learned or 
		configured. If the switch is operating is a mode where
		virtual rings are invalid, then this number will be 0. This
		object must be specified when adding an entry in the table
		if appropriate."
	::= { netbiosNameEntry 4 }

netbiosNameCardNumber OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The card number from which the entry was learned or 
		configured. If the switch is operating is a mode where
		virtual rings are valid, then this number will be 0. This
		object must be specified when adding an entry in the table
		if appropriate."
	::= { netbiosNameEntry 5 }

netbiosNamePortNumber OBJECT-TYPE
	SYNTAX	INTEGER
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The port number from which the entry was learned or 
		configured. If the switch is operating is a mode where
		virtual rings are valid, then this number will be 0. This
		object must be specified when adding an entry in the table
		if appropriate."
	::= { netbiosNameEntry 6 }

netbiosNamePortType OBJECT-TYPE
	SYNTAX	INTEGER {
		other(1),
		token-ring(2),
		fddi(3),
		ethernet(4),
		atm(5)
		}
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The type of port from which the entry was learned or 
		configured."
	::= { netbiosNameEntry 7 }

netbiosNameAge OBJECT-TYPE
	SYNTAX	TimeTicks
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The amount of time (in hundredths of a second) before
		this entry is aged, or the elapsed time since the
		entry was learned or configured."
	::= { netbiosNameEntry 8 }

netbiosNameProxies OBJECT-TYPE
	SYNTAX	Counter
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The number of times that the switch has proxied for
		this station."
	::= { netbiosNameEntry 9 }

netbiosNameSuppressedQueries OBJECT-TYPE
	SYNTAX	Counter
	ACCESS	read-only
	STATUS	deprecated
	DESCRIPTION
		"The number of NetBIOS name queries from this station
		which were suppressed by the switch due to the configured
		name query interval (netbiosNameQueryInterval)"
	::= { netbiosNameEntry 10 }

cnnetbiosNameTableEntry OBJECT-TYPE
        SYNTAX  SEQUENCE OF CnnetbiosNameEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A NetBIOS name table with VLAN information. This table is
                a list of the NetBIOS
                names learned or configured on the switch."
        ::= { netbiosGroup 5 }
 
cnnetbiosNameEntry OBJECT-TYPE
        SYNTAX  CnnetbiosNameEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
                "A NetBIOS name table entry. Entries may be deleted by
                setting the status object to invalid (2). Entries are added
                by specifying the name, station, ring or card/port, vlan
                id as appropriate."
        INDEX { cnnetbiosNameVlanId, cnnetbiosNameName }
        ::= { cnnetbiosNameTableEntry 1 }
 
CnnetbiosNameEntry ::= SEQUENCE {
        cnnetbiosNameName
                DisplayString,
        cnnetbiosNameStatus
                StatusIndicator,
        cnnetbiosNameStationAddress
                PhysAddress,
        cnnetbiosNameVirtualRingNumber
                INTEGER,
        cnnetbiosNameCardNumber
                INTEGER,
        cnnetbiosNamePortNumber
                INTEGER,
        cnnetbiosNameVlanId
                VlanId,
        cnnetbiosNamePortType
                INTEGER,
        cnnetbiosNameAge
                TimeTicks,
        cnnetbiosNameProxies
                Counter,
        cnnetbiosNameSuppressedQueries
                Counter
        }
 
cnnetbiosNameName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(15))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The NetBIOS name."
        ::= { cnnetbiosNameEntry 1 }
 
cnnetbiosNameStatus OBJECT-TYPE
        SYNTAX  StatusIndicator
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The status of the NetBIOS name entry. Setting this object to
                invalid (2) causes the entry to be deleted from the name
                table. The value should always be read as valid(1)."
        ::= { cnnetbiosNameEntry 2 }
 
cnnetbiosNameStationAddress OBJECT-TYPE
        SYNTAX  PhysAddress (SIZE(6))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The address of the station from which this name was
                learned or configured. This object must be specified when
                adding an entry into the table."
        ::= { cnnetbiosNameEntry 3 }
 
cnnetbiosNameVirtualRingNumber OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The virtual ring number from which the entry was learned or
                configured. If the switch is operating is a mode where
                virtual rings are invalid, then this number will be 0.  This
                object must be specified when adding an entry in the table
                if appropriate."
        ::= { cnnetbiosNameEntry 4 }
 
cnnetbiosNameCardNumber OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The card number from which the entry was learned or
                configured. If the switch is operating is a mode where
                virtual rings are valid, then this number will be 0.  This
                object must be specified when adding an entry in the table
                if appropriate."
        ::= { cnnetbiosNameEntry 5 }

cnnetbiosNamePortNumber OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The port number from which the entry was learned or
                configured. If the switch is operating is a mode where
                virtual rings are valid, then this number will be 0.  This
                object must be specified when adding an entry in the table
                if appropriate."
        ::= { cnnetbiosNameEntry 6 }
 
cnnetbiosNameVlanId OBJECT-TYPE
        SYNTAX  VlanId
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The 802.1q vid for the VLan from which the entry was
                learned or configured. This object must be specified
                when adding an entry in the table if appropriate."
        ::= { cnnetbiosNameEntry 7 }
 
cnnetbiosNamePortType OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                token-ring(2),
                fddi(3),
                ethernet(4),
                atm(5)
                }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The type of port from which the entry was learned or
                configured."
        ::= { cnnetbiosNameEntry 8 }
 
cnnetbiosNameAge OBJECT-TYPE
        SYNTAX  TimeTicks
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The amount of time (in hundredths of a second) before
                this entry is aged, or the elapsed time since the
                entry was learned or configured."
        ::= { cnnetbiosNameEntry 9 }
 
cnnetbiosNameProxies OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The number of times that the switch has proxied for
                this station."
        ::= { cnnetbiosNameEntry 10 }
 
cnnetbiosNameSuppressedQueries OBJECT-TYPE
        SYNTAX  Counter
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
                "The number of NetBIOS name queries from this station
                which were suppressed by the switch due to the configured
                name query interval (netbiosNameQueryInterval)"
        ::= { cnnetbiosNameEntry 11 }


 --
 -- The LAN Network Manager (LNM) Group
 --
 -- This group contains LAN Network Manager information on a system wide basis.
 
 lnmOperStatus OBJECT-TYPE
     SYNTAX INTEGER {
         up(1),
         down(2),
         other(3)
         }
     ACCESS read-only
     STATUS mandatory
     DESCRIPTION
         " This object reflects the actual  
         state of LNM which  may differ  
         from that of the lnmAdminStatus
         object. This can occur when    
         the LNM task has failed but the
         the corresponding lnmAdminStatus 
 	is 'up'."
     ::= { lnmGroup 1 }
 
 lnmAdminStatus OBJECT-TYPE
     SYNTAX INTEGER {
         up(1),
         down(2)
         }
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
         "The desired  state of the LNM on 
         the switch as prescribed by the 
         operator.   The actions of the agent
         will,  if  at all possible,  eventually  
         result in the desired  state being 
         reflected in the lnmOperStatus."
     DEFVAL { down }
     ::= { lnmGroup 2 }
 
 lnmBridgeGroupDisplayMode OBJECT-TYPE
     SYNTAX INTEGER {
         aggregate(1),
         separate(2)
         }
     ACCESS read-write
     STATUS mandatory
     DESCRIPTION
         "Indicates how LNM should display 
         spanning tree groups. If set to aggregate,
 	 LNM displays all spanning tree groups as
 	 one internal management ring.
 	 If set to separate, LNM displays
 	 each spanning tree group as a separate
         internal management ring."
     DEFVAL { aggregate }
     ::= { lnmGroup 3 }

 lnmLinkPassword OBJECT-TYPE
    SYNTAX EnableIndicator
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
        "Indicates the use of the default LNM management
        password or the first 6 to 8 characters of the 
        system password."
    ::= { lnmGroup 4 }
END
