PRIVATE-FESW-26-MIB DEFINITIONS ::= BEGIN

IMPORTS
    DisplayString FROM SNMPv2-TC
    MODULE-COMPLIANCE,OBJECT-GROUP, NOTIFICATION-GROUP       FROM SNMPv2-CONF
    enterprises,MODULE-IDENTITY,OBJECT-TYPE,NOTIFICATION-TYPE,Counter32,IpAddress        FROM SNMPv2-SMI
    ifIndex    FROM RFC1213-MIB;

privatetech MODULE-IDENTITY
        LAST-UPDATED "200606260000Z"
        ORGANIZATION "XXX Tech Corp."
        CONTACT-INFO
            "XXX"
        DESCRIPTION
            "The MIB module is for XXX Tech."
        ::= { enterprises 5205 }

switch               OBJECT IDENTIFIER ::= { privatetech 2 }

feSW26ProductID	        OBJECT IDENTIFIER ::= { switch 16 }

feSW26Produces            OBJECT IDENTIFIER ::= { feSW26ProductID 1 }

feSW26System          OBJECT IDENTIFIER ::= { feSW26Produces 1 }

feSW26CommonSys           OBJECT IDENTIFIER ::= { feSW26System 1 }

feSW26Reboot OBJECT-TYPE
	SYNTAX		INTEGER(0|1|2)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Reboot the system. Get this OID always return zero.
            0 - do nothing
			1 - Reboot without saving start
			2 - Reboot with saving start"
	::= { feSW26CommonSys 1 }

feSW26BiosVsersion	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the BIOS version of the system."
	::= { feSW26CommonSys 2 }

feSW26FirmwareVersion	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the firmware version of the system."
	::= { feSW26CommonSys 3 }

feSW26HardwareVersion	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the hardware version of the system."
	::= { feSW26CommonSys 4 }

feSW26MechanicalVersion OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS 	    read-only
	STATUS		current
	DESCRIPTION
		"Get the mechanical version of the system."
	::= { feSW26CommonSys 5 }

feSW26SerialNumber	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the Serial number of the system."
	::= { feSW26CommonSys 6 }

feSW26HostMacAddress	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the MAC address of the system."
	::= { feSW26CommonSys 7 }

feSW26DevicePort	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS  	read-only
	STATUS		current
	DESCRIPTION
		"Get the quantity of ports that this system owns now."
	::= { feSW26CommonSys 8 }

feSW26RamSize  OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "Get the RAM size of the system."
	::= { feSW26CommonSys 9 }

feSW26FlashSize  OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS      read-only
    STATUS      current
    DESCRIPTION
        "Get the flash size of the system."
	::= { feSW26CommonSys 10 }

feSW26IP           	OBJECT IDENTIFIER ::= { feSW26System 2 }

feSW26DhcpSetting OBJECT-TYPE
	SYNTAX		    INTEGER(0|1)
	MAX-ACCESS	        read-write
	STATUS		    current
	DESCRIPTION
		"Get/Set DHCP status of the system.
			0 - DHCP disable
			1 - DHCP enable"
	::= { feSW26IP 1 }

feSW26IPAddress OBJECT-TYPE
	SYNTAX      IpAddress
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the IP address of the system.
		 You can't set this OID if DHCP status is enabled."
	::= { feSW26IP 2 }

feSW26NetMask OBJECT-TYPE
	SYNTAX      IpAddress
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the subnet mask of the system.
		 You can't set this OID if DHCP status is enabled."
	::= { feSW26IP 3 }

feSW26DefaultGateway OBJECT-TYPE
	SYNTAX      IpAddress
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the default gateway of the system.
		 You can't set this OID if DHCP status is enabled."
	::= { feSW26IP 4 }

feSW26DnsSetting OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the source of DNS server.
		 You can't set this OID if DHCP status is disabled.
			0 - manual, the DNS server is from manual setting
            1 - auto, the DNS server is assigned by DHCP server."
	::= { feSW26IP 5 }

feSW26DnsServer OBJECT-TYPE
	SYNTAX      IpAddress
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the DNS server of the system."
	::= { feSW26IP 6 }

feSW26Time           	OBJECT IDENTIFIER ::= { feSW26System 3 }

feSW26SystemCurrentTime OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the current time of the system."
	::= { feSW26Time 1 }

feSW26ManualTimeSetting OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the system time of the device.
        The input format is 'Year/Month/Day/Hour/Minute/Second'.
        ex: 2004/1/1/12/34/25  means 2004/1/1 - 12:24:25 .
        The value range:
        Year    : 2000 - 2036,
        Mouth   : 1 - 12,
        Day     : 1 - 31,
        Hour    : 0 - 23,
        Minute  : 0 - 59,
        Sec     : 0 - 59."
	::= { feSW26Time 2 }

feSW26NTPServer OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the NTP Time Server. You can use the IP address or domain name."
	::= { feSW26Time 3 }

feSW26NTPTimeZone OBJECT-TYPE
	SYNTAX      INTEGER(-12..13)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the NTP Time Zone.
		The value range is between -12 and 13
		-12 - GMT -12:00,
		-11 - GMT -11:00,
		-10 - GMT -10:00,
		 -9 - GMT -09:00,
		 -8 - GMT -08:00,
		 -7 - GMT -07:00,
		 -6 - GMT -06:00,
		 -5 - GMT -05:00,
		 -4 - GMT -04:00,
		 -3 - GMT -03:00,
		 -2 - GMT -02:00,
		 -1 - GMT -01:00,
		  0 - GMT +00:00,
		  1 - GMT +01:00,
		  2 - GMT +02:00,
		  3 - GMT +03:00,
		  4 - GMT +04:00,
		  5 - GMT +05:00,
		  6 - GMT +06:00,
		  7 - GMT +07:00,
		  8 - GMT +08:00,
		  9 - GMT +09:00,
		 10 - GMT +10:00,
		 11 - GMT +11:00,
		 12 - GMT +12:00,
		 13 - GMT +13:00. "
	::= { feSW26Time 4 }

feSW26NTPTimeSync OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Sync time from NTP Server. Get this OID always return zero.
		Set the Time Server and Time Zone before doing time sync.
		Notice that time server must be correct!
		The value range (0|1):
		1 - sync.
        0 - do nothing."
	::= { feSW26Time 5 }

feSW26DaylightSavingTime OBJECT-TYPE
	SYNTAX      INTEGER(-5..5)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the daylight saving time.
		The value range is between -5 and 5. (Unit: hour)"
	::= { feSW26Time 6 }

feSW26DaylightStartTime OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the Start time of Daylight Saving.
		The input format is 'MM/DD/HH',
		and daylight saving start month can't equal end month.
		Example: month/day/hour   10/01/00
		Month: 01~12, day: 01~31, hour: 00~23."
	::= { feSW26Time 7 }

feSW26DaylightEndTime OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the End time of Daylight Saving.
		The input format is 'MM/DD/HH',
		and daylight saving start month can't equal end month.
		Example: month/day/hour   04/01/00
		Month: 01~12, day: 01~31, hour: 00~23."
	::= { feSW26Time 8 }

feSW26Account           	OBJECT IDENTIFIER ::= { feSW26System 4 }

feSW26AccountNumber OBJECT-TYPE
	SYNTAX      INTEGER(1..5)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the current account number(s) of the system."
	::= { feSW26Account 1 }

feSW26AccountTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26AccountEntry
	MAX-ACCESS	not-accessible
	STATUS		current
	DESCRIPTION
		"This is a list of feSW26AccountEntry. The numbers of entries are given by
		the value of feSW26AccountNumber."
	::= { feSW26Account 2 }

FESW26AccountEntry ::=
SEQUENCE {
    feSW26AccountIndex		    INTEGER,
    feSW26AccountAuthorization	DisplayString,
    feSW26AccountName             DisplayString,
    feSW26AccountPassword         DisplayString
}

feSW26AccountEntry	OBJECT-TYPE
	SYNTAX		FESW26AccountEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"This is the Entry(s) for account information."
	INDEX {feSW26AccountIndex}
	::= { feSW26AccountTable 1 }

feSW26AccountIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..5)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the index of the account entry."
	::= { feSW26AccountEntry 1 }

feSW26AccountAuthorization	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the authorization of the account entry."
	::= { feSW26AccountEntry 2 }

feSW26AccountName	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the username of the account entry."
	::= { feSW26AccountEntry 3 }

feSW26AccountPassword	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the password of the account entry. The return value is always '********'."
	::= { feSW26AccountEntry 4 }

feSW26AccountAddName OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the account name for adding operation."
	::= { feSW26Account 3 }

feSW26AccountAddPassword OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the account password for adding operation. The return value is always '********'."
	::= { feSW26Account 4 }

feSW26DoAccountAdd OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Add account name. OID feSW26AccountAddName and feSW26AccountAddPassword must be
        filled first. Get this OID always return zero.
            1 - add account.
            0 - do nothing."
	::= { feSW26Account 5 }

feSW26AccountDel	OBJECT-TYPE
	SYNTAX		INTEGER(2..5)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Delete account. The value is valid feSW26AccountIndex(Can't delete administrator)."
	::= { feSW26Account 6 }


feSW26Snmp           	OBJECT IDENTIFIER ::= { feSW26Produces 2 }

feSW26GetCommunity OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the get-community of the SNMP."
	::= { feSW26Snmp 1 }

feSW26SetCommunity OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the set-community of the SNMP."
	::= { feSW26Snmp 2 }

feSW26TrapHostNumber OBJECT-TYPE
	SYNTAX      INTEGER(1..6)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the number of trap hosts."
	::= { feSW26Snmp 3 }

feSW26TrapHostTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26TrapHostEntry
	MAX-ACCESS	not-accessible
	STATUS		current
	DESCRIPTION
		"A list of trap host entry. The numbers of entries are given by the value of feSW26TrapHostNumber."
    ::= { feSW26Snmp 4 }

FESW26TrapHostEntry ::=
SEQUENCE {
    feSW26TrapHostIndex		    INTEGER,
    feSW26TrapHostIP          	IpAddress,
    feSW26TrapHostPort            INTEGER,
    feSW26TrapHostCommunity       DisplayString
}

feSW26TrapHostEntry	OBJECT-TYPE
	SYNTAX		FESW26TrapHostEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"This is the entry information for trap host."
	INDEX {feSW26TrapHostIndex}
	::= { feSW26TrapHostTable 1 }

feSW26TrapHostIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..6)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"The index of the trap host entry."
	::= { feSW26TrapHostEntry 1 }

feSW26TrapHostIP	OBJECT-TYPE
	SYNTAX		IpAddress
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the IP of the trap host."
	::= { feSW26TrapHostEntry 2 }


feSW26TrapHostPort	OBJECT-TYPE
	SYNTAX		INTEGER(1..65535)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the receiving-port number of the trap host."
	::= { feSW26TrapHostEntry 3 }


feSW26TrapHostCommunity	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"The community name for the trap PDU."
	::= { feSW26TrapHostEntry 4 }


feSW26Alarm           	OBJECT IDENTIFIER ::= { feSW26Produces 3 }

feSW26Event           	OBJECT IDENTIFIER ::= { feSW26Alarm 1 }

feSW26EventNumber OBJECT-TYPE
	SYNTAX      INTEGER(1..2147483647)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the total number of alarm events."
	::= { feSW26Event 1 }

feSW26EventTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26EventEntry
	MAX-ACCESS	not-accessible
	STATUS		current
    DESCRIPTION
        "This is a list of alarm event entry. The numbers of entries are given by the value of feSW26EventNumber."
	::= { feSW26Event 2 }

FESW26EventEntry ::=
SEQUENCE {
    feSW26EventIndex		    INTEGER,
    feSW26EventName          	DisplayString,
    feSW26EventSendEmail      INTEGER,
    feSW26EventSendSMS        INTEGER,
    feSW26EventSendTrap       INTEGER
}

feSW26EventEntry	OBJECT-TYPE
	SYNTAX		FESW26EventEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"This is the entry information for alarm event."
	INDEX {feSW26EventIndex}
	::= { feSW26EventTable 1 }

feSW26EventIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..2147483647)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the index of the alarm event entry."
	::= { feSW26EventEntry 1 }

feSW26EventName	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the alarm event name."
	::= { feSW26EventEntry 2 }

feSW26EventSendEmail	OBJECT-TYPE
	SYNTAX		INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Send email when alarm event is triggered."
	::= { feSW26EventEntry 3 }

feSW26EventSendSMS	OBJECT-TYPE
	SYNTAX		INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Send SMS when alarm event is triggered."
	::= { feSW26EventEntry 4 }

feSW26EventSendTrap	OBJECT-TYPE
	SYNTAX		INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Send trap when alarm event is triggered."
	::= { feSW26EventEntry 5 }


feSW26Email           	OBJECT IDENTIFIER ::= { feSW26Alarm 2 }

feSW26EmailServer OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the SMTP server for alarm event."
	::= { feSW26Email 1 }

feSW26EmailUsername OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the Username of SMTP server."
	::= { feSW26Email 2 }

feSW26EmailPassword OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the User Password of SMTP server."
	::= { feSW26Email 3 }

feSW26EmailUserNumber OBJECT-TYPE
	SYNTAX      INTEGER(1..6)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"The number of the email users that you want to send the alarm notification."
	::= { feSW26Email 4 }

feSW26EmailUserTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26EmailUserEntry
	MAX-ACCESS	not-accessible
	STATUS		current
    DESCRIPTION
        "This is a list of email user entry. The numbers of entries are given by the value of feSW26EmailUserNumber."
	::= { feSW26Email 5 }

FESW26EmailUserEntry ::=
SEQUENCE {
    feSW26EmailUserIndex		    INTEGER,
    feSW26EmailUserAddress       	DisplayString
}

feSW26EmailUserEntry	OBJECT-TYPE
	SYNTAX		FESW26EmailUserEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"This is the Entry information for email user entry."
	INDEX {feSW26EmailUserIndex}
	::= { feSW26EmailUserTable 1 }

feSW26EmailUserIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..6)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the index of the email user entry."
	::= { feSW26EmailUserEntry 1 }

feSW26EmailUserAddress	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the email address of the email user entry."
	::= { feSW26EmailUserEntry 2 }

feSW26SMS           	OBJECT IDENTIFIER ::= { feSW26Alarm 3 }

feSW26SMSServer OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the SMS server for alarm event."
	::= { feSW26SMS 1 }

feSW26SMSUsername OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the Username of SMS server."
	::= { feSW26SMS 2 }

feSW26SMSPassword OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the Password of SMS server."
	::= { feSW26SMS 3 }

feSW26SMSUserNumber OBJECT-TYPE
	SYNTAX      INTEGER(1..6)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"The number of the SMS users that you want to send the alarm notification."
	::= { feSW26SMS 4 }

feSW26SMSUserTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26SMSUserEntry
	MAX-ACCESS	not-accessible
	STATUS		current
    DESCRIPTION
        "This is a list of SMS user entry. The numbers of entries are given by the value of feSW26SMSUserNumber."
    ::= { feSW26SMS 5 }

FESW26SMSUserEntry ::=
SEQUENCE {
    feSW26SMSUserIndex		    INTEGER,
    feSW26SMSUserMobilePhone       	DisplayString
}

feSW26SMSUserEntry	OBJECT-TYPE
	SYNTAX		FESW26SMSUserEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"This is the Entry information for SMS user entry."
	INDEX {feSW26SMSUserIndex}
	::= { feSW26SMSUserTable 1 }

feSW26SMSUserIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..6)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the index of the SMS user entry."
	::= { feSW26SMSUserEntry 1 }

feSW26SMSUserMobilePhone	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"The SMS phone number of the SMS user entry."
	::= { feSW26SMSUserEntry 2 }

feSW26Tftp           	OBJECT IDENTIFIER ::= { feSW26Produces 4 }

feSW26TftpServer OBJECT-TYPE
	SYNTAX      IpAddress
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the tftp server."
	::= { feSW26Tftp 1 }


feSW26Configuration           	OBJECT IDENTIFIER ::= { feSW26Produces 5 }

feSW26SaveRestore           	OBJECT IDENTIFIER ::= { feSW26Configuration 1 }

feSW26SaveStart OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Save current configuration into flash memory (Save as Start Configuration).
        Get this OID always return zero.
            1 - Save.
            0 - do nothing. "
	::= { feSW26SaveRestore 1 }

feSW26SaveUser OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Save current configuration into flash memory (Save as User Configuration).
        Get this OID always return zero.
            1 - Save.
            0 - do nothing. "
	::= { feSW26SaveRestore 2 }

feSW26RestoreDefault OBJECT-TYPE
	SYNTAX      INTEGER(0|1|2)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Restore factory default configuration.
        Get this OID always return zero.
            2 - Restore default included default ip address.
	    1 - Restore default without changing current ip address.
            0 - do nothing. "
	::= { feSW26SaveRestore 3 }

feSW26RestoreUser OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Restore user configuration.
        Get this OID always return zero.
            1 - Restore.
            0 - do nothing. "
	::= { feSW26SaveRestore 4 }


feSW26ConfigFile           	OBJECT IDENTIFIER ::= { feSW26Configuration 2 }

feSW26ExportConfigName OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the export file path and name."
	::= { feSW26ConfigFile 1 }

feSW26DoExportConfig OBJECT-TYPE
	SYNTAX      INTEGER(1|2)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Do export-config.
        Get this OID always return zero.
			1	-	Export start section.
			2	-	Export user-conf section."
	::= { feSW26ConfigFile 2 }

feSW26ImportConfigName OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
        "Get/Set the import file path and name."
	::= { feSW26ConfigFile 3 }

feSW26DoImportConfig OBJECT-TYPE
	SYNTAX      INTEGER(1|2)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Do import-config.
        Get this OID always return zero.
			1	-	Import start section.
			2	-	Import user-conf section."
	::= { feSW26ConfigFile 4 }

feSW26Diagnostic           	OBJECT IDENTIFIER ::= { feSW26Produces 6 }

feSW26EEPROMTest OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"EEPROM access test."
	::= { feSW26Diagnostic 1 }

feSW26UartTest OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"UART access test."
	::= { feSW26Diagnostic 2 }

feSW26DramTest OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"DRAM access test."
	::= { feSW26Diagnostic 3 }

feSW26FlashTest OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Flash memory access test."
	::= { feSW26Diagnostic 4 }

feSW26InternalLoopbackTest OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Internal loop back test."
	::= { feSW26Diagnostic 5 }

feSW26ExternalLoopbackTest OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"External loop back test."
	::= { feSW26Diagnostic 6 }

feSW26PingTest OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Set the host address that you want to ping and the system will return the test result."
	::= { feSW26Diagnostic 7 }

feSW26Log           	OBJECT IDENTIFIER ::= { feSW26Produces 7 }

feSW26ClearLog OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Clear system log.
        Get this OID always return zero.
            1 - Clear log.
            0 - do nothing. "
	::= { feSW26Log 1 }

feSW26UploadLog OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Upload current system log. Set the correct tftp server first.
        The format of log file is 'ModelName_SerialNumbuer_YYMMDD_HHMM'.
        Get this OID always return zero.
            1 - Upload log
            0 - do nothing. "
	::= { feSW26Log 2 }

feSW26AutoUploadLogState OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Enable auto-upload log function. Set the correct tftp server first.
        The format of log file is 'ModelName_SerialNumbuer_YYMMDD_HHMM'.
        Get this OID always return zero.
            1 - Enable auto-upload
            0 - do nothing. "
	::= { feSW26Log 3 }

feSW26LogNumber OBJECT-TYPE
	SYNTAX      INTEGER(0..120)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the number of current system log."
	::= { feSW26Log 4 }

feSW26LogTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26LogEntry
	MAX-ACCESS	not-accessible
	STATUS		current
    DESCRIPTION
        "This is a list of log entry. The numbers of entries are given by the value of feSW26LogNumber."
	::= { feSW26Log 5 }

FESW26LogEntry ::=
SEQUENCE {
    feSW26LogIndex		    INTEGER,
    feSW26LogEvent           	DisplayString
}

feSW26LogEntry	OBJECT-TYPE
	SYNTAX		FESW26LogEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"This is the Entry information for system log."
	INDEX {feSW26LogIndex}
	::= { feSW26LogTable 1 }

feSW26LogIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..120)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the index of the log entry."
	::= { feSW26LogEntry 1 }

feSW26LogEvent	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the detail information of the log entry."
	::= { feSW26LogEntry 2 }

feSW26Firmware           	OBJECT IDENTIFIER ::= { feSW26Produces 8 }

feSW26FirmwareFileName OBJECT-TYPE
	SYNTAX      DisplayString
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Get/Set the path and filename for firmware upgrading."
	::= { feSW26Firmware 1 }

feSW26DoFirmwareUpgrade OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Do firmware upgrade. Get this OID always return zero.
            1 - Do firmware upgrade.
            0 - do nothing."
	::= { feSW26Firmware 2 }


feSW26Port           	OBJECT IDENTIFIER ::= { feSW26Produces 9 }

feSW26PortStatus           	OBJECT IDENTIFIER ::= { feSW26Port 1 }

feSW26PortStatusNumber OBJECT-TYPE
	SYNTAX      INTEGER(1..2147483647)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the number of port."
	::= { feSW26PortStatus 1 }

feSW26PortStatusTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26PortStatusEntry
	MAX-ACCESS	not-accessible
	STATUS		current
    DESCRIPTION
        "This is a list of port status entry. The numbers of entries are given by the value of feSW26PortStatusNumber."
	::= { feSW26PortStatus 2 }

FESW26PortStatusEntry ::=
SEQUENCE {
    feSW26PortStatusIndex		    INTEGER,
    feSW26PortStatusMedia          DisplayString,
    feSW26PortStatusLink           DisplayString,
    feSW26PortStatusPortState      DisplayString,
    feSW26PortStatusAutoNego       DisplayString,
    feSW26PortStatusSpdDpx         DisplayString,
    feSW26PortStatusRxPause        DisplayString,
    feSW26PortStatusTxPause        DisplayString,
    feSW26PortStatuDescription     DisplayString
}

feSW26PortStatusEntry	OBJECT-TYPE
	SYNTAX		FESW26PortStatusEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"This is the entry(s) for port status information."
	INDEX {feSW26PortStatusIndex}
	::= { feSW26PortStatusTable 1 }

feSW26PortStatusIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..2147483647)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the index of the port status entry."
	::= { feSW26PortStatusEntry 1 }

feSW26PortStatusMedia	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"The port media type of the port status entry."
	::= { feSW26PortStatusEntry 2 }

feSW26PortStatusLink	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the port link of the port status entry."
	::= { feSW26PortStatusEntry 3 }

feSW26PortStatusPortState	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the port state of the port status entry."
	::= { feSW26PortStatusEntry 4 }

feSW26PortStatusAutoNego	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the auto negotiation of the port status entry."
	::= { feSW26PortStatusEntry 5 }

feSW26PortStatusSpdDpx 	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the speed/duplex of the port status entry."
	::= { feSW26PortStatusEntry 6 }

feSW26PortStatusRxPause 	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"The Rx Pause of the port status entry."
	::= { feSW26PortStatusEntry 7 }

feSW26PortStatusTxPause 	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"The Tx Pause of the port status entry."
	::= { feSW26PortStatusEntry 8 }

feSW26PortStatuDescription	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	read-only
	STATUS		current
	DESCRIPTION
		"This is the description of port."
	::= { feSW26PortStatusEntry 9 }

feSW26PortConf           	OBJECT IDENTIFIER ::= { feSW26Port 2 }

feSW26PortConfNumber OBJECT-TYPE
	SYNTAX      INTEGER(1..2147483647)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the number of port configuration."
	::= { feSW26PortConf 1 }

feSW26PortConfTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26PortConfEntry
	MAX-ACCESS	not-accessible
	STATUS		current
    DESCRIPTION
        "This is a list of port configuration entry. The numbers of entries are given by the value of feSW26PortConfNumber."
	::= { feSW26PortConf 2 }

FESW26PortConfEntry ::=
SEQUENCE {
    feSW26PortConfIndex		    INTEGER,
    feSW26PortConfPortState        INTEGER,
    feSW26PortConfSpdDpx           INTEGER,
    feSW26PortConfFlwCtrl          INTEGER,
    feSW26PortConfDescription      DisplayString
}

feSW26PortConfEntry	OBJECT-TYPE
	SYNTAX		FESW26PortConfEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"This is the Entry(s) for port configuration information."
	INDEX {feSW26PortConfIndex}
	::= { feSW26PortConfTable 1 }

feSW26PortConfIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..2147483647)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"This is the index of the port configuration entry."
	::= { feSW26PortConfEntry 1 }

feSW26PortConfPortState	OBJECT-TYPE
	SYNTAX		INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the port state of the port configuration entry.
		 0 - disabled.
		 1 - enabled. "
	::= { feSW26PortConfEntry 2 }

feSW26PortConfSpdDpx	OBJECT-TYPE
	SYNTAX		INTEGER(0..5)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the speed/duplex of the port configuration entry.
		 0 - auto.
		 1 - 10M/Half.
		 2 - 10M/Full.
		 3 - 100M/Half.
		 4 - 100M/Full.
		 5 - 1G/Full.  "
	::= { feSW26PortConfEntry 3 }

feSW26PortConfFlwCtrl	OBJECT-TYPE
	SYNTAX		INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"This is the flow control of the port configuration entry.
		 0 - asymmetric.
		 1 - symmetric.  "
	::= { feSW26PortConfEntry 4 }

feSW26PortConfDescription	OBJECT-TYPE
	SYNTAX		DisplayString
	MAX-ACCESS	read-write
	STATUS		current
	DESCRIPTION
		"This is the description of port."
	::= { feSW26PortConfEntry 5 }

feSW26LoopDetectedConf           	OBJECT IDENTIFIER ::= { feSW26Produces 10 }

feSW26LoopDetectedNumber OBJECT-TYPE
	SYNTAX      INTEGER(1..2147483647)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"Get the number of loop detected entry."
	::= { feSW26LoopDetectedConf 1 }

feSW26LoopDetectedTable	OBJECT-TYPE
	SYNTAX		SEQUENCE OF FESW26LoopDetectedEntry
	MAX-ACCESS	not-accessible
	STATUS		current
    DESCRIPTION
        "A list of loop detected entry. The numbers of entries are given by the value of feSW26LoopDetectedNumber."
	::= { feSW26LoopDetectedConf 2 }

FESW26LoopDetectedEntry ::=
SEQUENCE {
    feSW26LoopDetectedfIndex           INTEGER,
    feSW26LoopDetectedStateEbl         INTEGER,
    feSW26LoopDetectedCurrentStatus    INTEGER,
    feSW26LoopDetectedResumed          INTEGER
}

feSW26LoopDetectedEntry	OBJECT-TYPE
	SYNTAX		FESW26LoopDetectedEntry
	MAX-ACCESS	    not-accessible
	STATUS		current
	DESCRIPTION
		"Entry(s) for loop detected information."
	INDEX {feSW26LoopDetectedfIndex}
	::= { feSW26LoopDetectedTable 1 }

feSW26LoopDetectedfIndex	OBJECT-TYPE
	SYNTAX		INTEGER(1..2147483647)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"The index of the loop detected entry."
	::= { feSW26LoopDetectedEntry 1 }

feSW26LoopDetectedStateEbl	OBJECT-TYPE
	SYNTAX		INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"The state of the loop detected entry.
		 0 - disabled.
		 1 - enabled. "
	::= { feSW26LoopDetectedEntry 2 }

feSW26LoopDetectedCurrentStatus	OBJECT-TYPE
	SYNTAX		INTEGER(0|1)
	MAX-ACCESS	    read-only
	STATUS		current
	DESCRIPTION
		"The current status of the loop detected port.
         0 - unlocked
         1 - Locked due to the loop condition"
	::= { feSW26LoopDetectedEntry 3 }

feSW26LoopDetectedResumed	OBJECT-TYPE
	SYNTAX		INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Unlock the port which is locked due to loop condition. Get this OID always return zero.
         1 - Unlock the port,
         0 - do nothing."
	::= { feSW26LoopDetectedEntry 4 }

feSW26LoopDetectedAction OBJECT-TYPE
	SYNTAX      INTEGER(0|1)
	MAX-ACCESS	    read-write
	STATUS		current
	DESCRIPTION
		"Set the corresponding action while loop is detected.
         1 - Lock the loop port,
         0 - do nothing."
	::= { feSW26LoopDetectedConf 3 }

feSW26TrapEntry	       OBJECT IDENTIFIER ::= { feSW26Produces 20 }

feSW26ModuleInserted NOTIFICATION-TYPE
    OBJECTS { ifIndex }
	STATUS    current
	DESCRIPTION
	    "Send the trap when a module is inserted to the system. The OID value means
	     the port number."
	::= { feSW26TrapEntry 1 }

feSW26ModuleRemoved NOTIFICATION-TYPE
    OBJECTS { ifIndex }
	STATUS    current
	DESCRIPTION
	    "Send the trap when a module is removed from the system. The OID value means
	     the port number."
	::= { feSW26TrapEntry 2 }

feSW26DualMediaSwapped NOTIFICATION-TYPE
    OBJECTS { ifIndex }
	STATUS    current
	DESCRIPTION
	    "Send the trap when the dual media port changed. The OID value means the port number."
	::= { feSW26TrapEntry 3 }

feSW26LoopDetected NOTIFICATION-TYPE
    OBJECTS { ifIndex }
	STATUS    current
	DESCRIPTION
	    "Send the trap when loop condition has been detected. The OID value means the port number."
	::= { feSW26TrapEntry 5 }

feSW26StpStateDisabled NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of STP is from enabled to disabled. "
	::= { feSW26TrapEntry 100 }

feSW26StpStateEnabled NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of STP is from disabled to enabled. "
	::= { feSW26TrapEntry 101 }

feSW26StpTopologyChanged NOTIFICATION-TYPE
    OBJECTS { ifIndex }
	STATUS		current
	DESCRIPTION
	   "Send the trap when RSTP determines a port should enter the FORWARDING state
	    (a topology change occurs). The OID value is the ifIndex of the port that
	    produces the topology change"
	::= { feSW26TrapEntry 102 }

feSW26RmonRisingAlarm NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
	   "Send the trap when an RMON rising alarm happened. The OID value is the value
	    of another OID variable sampled by the RMON Alarm Group that exceeds its
	    own RisingThreshold "
	::= { feSW26TrapEntry 110 }

feSW26RmonFallingAlarm NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
           "Send the trap when an RMON falling alarm happened. The OID value is the value
	    of another OID variable sampled by the RMON Alarm Group that is smaller than its
	    own FallingThreshold "
	::= { feSW26TrapEntry 111 }

feSW26LacpStateDisabled NOTIFICATION-TYPE
    OBJECTS {ifIndex, groupId}
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of LACP is from enabled to disabled.
	    The OID value means the disabled Group ID."
	::= { feSW26TrapEntry 120 }

feSW26LacpStateEnabled NOTIFICATION-TYPE
    OBJECTS {ifIndex, groupId}
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of LACP is from disabled to enabled.
	    The OID value means the disabled Group ID."
	::= { feSW26TrapEntry 121 }

feSW26LacpPortAdded NOTIFICATION-TYPE
    OBJECTS   { ifIndex, actorkey, partnerkey }
	STATUS		current
	DESCRIPTION
	   "Send the trap when the state of port is in 'trunk ready'."
	::= { feSW26TrapEntry 123 }

feSW26LacpPortTrunkFailure NOTIFICATION-TYPE
    OBJECTS   { ifIndex, actorkey, partnerkey}
	STATUS		current
	DESCRIPTION
	   "Send the trap when one port is not able to be aggregated
	    due to duplex-mode of the port. "
	::= { feSW26TrapEntry 124 }

feSW26GvrpStateDisabled NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of GVRP is from enabled to disabled. "
	::= { feSW26TrapEntry 140 }

feSW26GvrpStateEnabled NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of LACP is from disabled to enabled. "
	::= { feSW26TrapEntry 141 }

feSW26VlanPortBaseEnabled NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of vlan is changed to port-based vlan."
	::= { feSW26TrapEntry 151 }

feSW26VlanTagBaseEnabled NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of vlan is changed to tag-based vlan."
	::= { feSW26TrapEntry 152 }

feSW26VlanMetroBaseEnabled NOTIFICATION-TYPE
	STATUS		current
	DESCRIPTION
	   "Send the trap when the operational state of vlan is changed to metro-based vlan."
	::= { feSW26TrapEntry 153 }

feSW26UserLogin NOTIFICATION-TYPE
    OBJECTS   {username}
	STATUS		current
	DESCRIPTION
	   "Send the trap when one user logins the system."
	::= { feSW26TrapEntry 200 }

feSW26UserLogout NOTIFICATION-TYPE
    OBJECTS   {username}
	STATUS		current
	DESCRIPTION
	   "Send the trap when one user logouts the system."
	::= { feSW26TrapEntry 201 }

feSW26TrapVariable	OBJECT IDENTIFIER ::= { feSW26Produces 21 }

username OBJECT-TYPE
    SYNTAX      DisplayString
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION
	    "System account name."
	::= { feSW26TrapVariable 1 }

groupId OBJECT-TYPE
    SYNTAX      INTEGER(1..8)
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION
	    "The Trunk group ID of LACP."
	::= { feSW26TrapVariable 2 }

actorkey OBJECT-TYPE
    SYNTAX	INTEGER(1..2147483647)
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION
	    "This is the actor key information for LACP."
	::= { feSW26TrapVariable 3 }

partnerkey OBJECT-TYPE
    SYNTAX	INTEGER(1..2147483647)
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION
	    "This is the partner key information for LACP."
	::= { feSW26TrapVariable 4 }

uplink OBJECT-TYPE
    SYNTAX	DisplayString
	MAX-ACCESS  read-only
	STATUS      current
	DESCRIPTION
	    "Uplink port(s) in the metro-mode vlan."
	::= { feSW26TrapVariable 5 }

END
