-- *****************************************************************************
-- DGS-3420-52P-L3MGMT-MIB
-- *****************************************************************************
-- MODIFICTION HISTORY:
-- *****************************************************************************
-- Version 0.13
-- 2012/09/11	Dinah Zhou
-- [New Object]
-- 1. Add swL3Route6RedistriTable to support
--    IPv6 route redistribution.
--
-- Version 0.12, 2012/08/14, Kaiser Yang
-- [New Object]
-- 1.Add VRRP related objects.
--
-- Version 0.11, 2012/04/19, King Cao
-- [New Object]
-- 1.Add swL3IpCtrlDhcpv6ClientPDxxx objects to swL3IpCtrlTable and swL3Ipv6DHCPv6CPDAddrCtrlTable
-- to support IPv6 record for DHCPv6 Client PD function.
-- Request by King for DGS-3420. 
--
-- Version 0.10
-- 2010/12/31   Jok Long
-- Description:
-- [New Object]
-- 1. Remove MD5.
-- 2. Remove OSPF.
-- 3. Remove VRRP.
-- 4. Remove ip directed-broadcast.
-- 5. Remove BGP.
-- 6. Remove DVMRP.
-- 7. Remove IP Multicast Static Route.
--
-- Version 0.09
-- 2010/12/2   Kevin Wang
-- Description:
-- [New Object]
-- 1.Add RIP timers related objects.
--
-- Version 0.08
-- 2010/11/24   Kevin Wang
-- Description:
-- [New Object]
-- 1.Modify objects: swL3ospfIfType, swL3ospfIfTransitDelay, swL3ospfIfRetransInterval,
--   swL3ospfIfPollInterval,swL3ospfIfMulticastForwarding, swL3ospfIfDemand, 
--   swL3ospfVirtIfTransitDelay swL3ospfVirtIfRetransInterval to 
--   read-only.
--
-- Version 0.07
-- 2010/11/10   Wesley Wang
-- Description:
-- [New Object]
-- 1.Add swL3IpMcastMgmt to support Static Multicast Route. 
--
-- Version 0.06
-- 2010/11/01   Bruce Ge
-- Description:
-- [New Object]
-- 1. Add object swL3DevCtrlDVMRPState.
-- 2. Add swL3dvmrpInterfaceTable table.

-- Version 0.05
-- 2010/9/8   Sammy Xiao
-- Description:
-- [New Object]
-- 1. Add swL3IpStaticRouteTunnelTable.
--
-- Version 0.04
-- 2010/8/18   Kevin Wang
-- Description:
-- [New Object]
-- 1. Add swL3RoutePreferenceEBGP and swL3RoutePreferenceIBGP objects.
-- 2. Add object swL3RouteRedistriRouteMapName in swL3RouteRedistriTable.
--
-- Version 0.03
-- 2010/7/14   Easion Tang
-- Description:
-- [New Object]
-- 1. Add swL3IpCtrlDhcpv6ClientState and swL3IpCtrlIpDirectedBroadcastState objects.
-- 
-- Version 0.02
-- 2010/6/25   Kevin Wang
-- Description:
-- [New Object]
-- 1. Add MD5, OSPF, VRRP, RIP objects.
--
-- Version 0.01
-- 
-- Description:
-- 
-- *****************************************************************************


DGS-3420-52P-L3MGMT-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        Counter32,MODULE-IDENTITY,OBJECT-TYPE,IpAddress,
        NOTIFICATION-TYPE, Integer32,Unsigned32
                                                  			FROM SNMPv2-SMI
        PhysAddress,TruthValue,DisplayString,RowStatus,MacAddress,TimeStamp       
        							              			FROM SNMPv2-TC
        Ipv6Address			  				FROM IPV6-TC
		dlink-Dgs3420Proj-Dgs3420-52P    	  			    FROM SWDGS3420PRIMGMT-MIB
        InterfaceIndex                   		  FROM IF-MIB;
        
    swL3MgmtMIB MODULE-IDENTITY
	    LAST-UPDATED "1208140000Z"
	    ORGANIZATION " "
	    CONTACT-INFO
	        "     "
	    DESCRIPTION
		    "The Structure of Layer 3 Network Management Information for the
		    proprietary enterprise."
        ::= { dlink-Dgs3420Proj-Dgs3420-52P 3 }

    NodeAddress             ::= OCTET STRING (SIZE(6))
    NetAddress              ::= OCTET STRING (SIZE(4))

    swL3DevMgmt             OBJECT IDENTIFIER ::= { swL3MgmtMIB 1 }
    swL3IpMgmt              OBJECT IDENTIFIER ::= { swL3MgmtMIB 2 }
		swL3RelayMgmt           OBJECT IDENTIFIER ::= { swL3MgmtMIB 3 }
	swL3IpMcastMgmt         OBJECT IDENTIFIER ::= { swL3IpMgmt 6 }
	swL3OspfLsdbMgmt        OBJECT IDENTIFIER ::= { swL3MgmtMIB 13 }
	swL3VrrpOperMgmt        OBJECT IDENTIFIER ::= { swL3MgmtMIB 14 }
--    swL3RoutePreference	    OBJECT IDENTIFIER ::= { swL3MgmtMIB 9 }
    
    swL3IpCtrlMgmt          OBJECT IDENTIFIER ::= { swL3IpMgmt 1 }
    swL3IpFdbMgmt           OBJECT IDENTIFIER ::= { swL3IpMgmt 2 }
--    swL3IpFilterMgmt        OBJECT IDENTIFIER ::= { swL3IpMgmt 3 }

 
--    swL3RelayBootpMgmt      OBJECT IDENTIFIER ::= { swL3RelayMgmt 2 }
    	swL3RelayDnsMgmt        OBJECT IDENTIFIER ::= { swL3RelayMgmt 3 }
	swL3RIPTimerMgmt		OBJECT IDENTIFIER ::= { swL3MgmtMIB 17 }
    
-- ****************************************************************************
-- Textual Conventions
-- ****************************************************************************
 VrId ::= TEXTUAL-CONVENTION
     STATUS       current
     DESCRIPTION
         "A number which, along with an interface index (ifIndex),
         serves to uniquely identify a virtual router on a given VRRP
         router. A set of one or more associated addresses is assigned
         to a VRID."
     SYNTAX      Integer32 (1..255)

-- ********************************************************************
--  swL3DevMgmt             OBJECT IDENTIFIER ::= { swL3MgmtMIB 1 }
-- ********************************************************************

    swL3DevCtrl             OBJECT IDENTIFIER ::= { swL3DevMgmt 1 }

    swL3DevCtrlRIPState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
           "This object indicates if the Routing Information Protocol (RIP) 
           version 2 function is enabled or disabled."
       ::= { swL3DevCtrl 1 }

--  swL3DevCtrlPIMDMState OBJECT-TYPE
--       SYNTAX  INTEGER {
--              other(1),
--              disabled(2),
--              enabled(3)
--              }
--       MAX-ACCESS  read-write
--      STATUS  current
--       DESCRIPTION
--           "This object indicates if the PIM-DM protocol is enabled or disabled."
--       ::= { swL3DevCtrl 4 }

    swL3DevCtrlVRRPState OBJECT-TYPE
       SYNTAX  INTEGER {
             other(1),
             disabled(2),
              enabled(3)
             }
       MAX-ACCESS  read-write
       STATUS  current
       DESCRIPTION
           "This object indicates VRRP protocol is enabled or disabled."
       ::= { swL3DevCtrl 5 }

    swL3DevCtrlVrrpPingState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates VRRP protocol  Ping is enabled or disabled."
        ::= { swL3DevCtrl 6 }
-- ********************************************************************
--  swL3IpCtrlMgmt        OBJECT IDENTIFIER ::= { swL3IpMgmt 1 }
-- ********************************************************************

--    swL3IpCtrlIpv4State OBJECT-TYPE
--        SYNTAX  INTEGER {
--               enabled(1),
--               disabled(2)
--               }
--        MAX-ACCESS  read-write
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the IPv4 function state of the device."
--        ::= { swL3IpCtrlMgmt 1 }

--    swL3IpCtrlIpv6State OBJECT-TYPE
--        SYNTAX  INTEGER {
--               enabled(1),
--               disabled(2)
--               }
--        MAX-ACCESS  read-write
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the IPv6 function state of the device."
--        ::= { swL3IpCtrlMgmt 2 }
                
    swL3IpCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3IpCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table contain IP interface information."
        ::= { swL3IpCtrlMgmt 3 }

    swL3IpCtrlEntry OBJECT-TYPE
        SYNTAX  SwL3IpCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information about a specific IP interface."
        INDEX  { swL3IpCtrlInterfaceName }
        ::= { swL3IpCtrlTable 1 }

    SwL3IpCtrlEntry ::= 
        SEQUENCE {
            swL3IpCtrlInterfaceName
                DisplayString,
            swL3IpCtrlIfIndex
                INTEGER,
	    swL3IpCtrlIpAddr
                IpAddress,
            swL3IpCtrlIpSubnetMask
                IpAddress,
            swL3IpCtrlVlanName
                DisplayString,
            swL3IpCtrlProxyArp
                INTEGER, 
            swL3IpCtrlSecondary
                TruthValue,                   
            swL3IpCtrlMode
                INTEGER,
            swL3IpCtrlAdminState
                INTEGER,    
            swL3IpCtrlIpv4AdminState
                INTEGER,
--            swL3IpCtrlIpv4OperState
--                INTEGER,    
            swL3IpCtrlIpv6AdminState
                INTEGER,
--            swL3IpCtrlIpv6OperState
--                INTEGER, 
            swL3IpCtrlIpv6LinkLocalAddress
            	Ipv6Address,
            swL3IpCtrlIpv6LinkLocalPrefixLen
                INTEGER,                   
            swL3IpCtrlState
                RowStatus,
            swL3IpCtrlIpv6LinkLocalAutoState
            	INTEGER,
            swL3IpCtrlLocalProxyArp
                INTEGER,
            swL3IpCtrlIpMtu
                INTEGER,
            swL3IpCtrlDhcpv6ClientState
            	INTEGER,
	    	swL3IpCtrlIpDirectedBroadcastState
	    		INTEGER,
            swL3IpCtrlIpDhcpOption12State
            	INTEGER,
            swL3IpCtrlIpDhcpOption12HostName
            	DisplayString,
            swL3IpCtrlDhcpv6ClientPDState
                INTEGER,
	    swL3IpCtrlDhcpv6ClientPDPrefixName
              	DisplayString,
            swL3IpCtrlDhcpv6ClientPDPrefix
                Ipv6Address,
            swL3IpCtrlDhcpv6ClientPDPrefixLen
                INTEGER
        }
        
    swL3IpCtrlInterfaceName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (1..12))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the name of the IP interface."
        ::= { swL3IpCtrlEntry 1 }

    swL3IpCtrlIfIndex OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object uniquely identifies the IP interface number in the
            swL3IpCtrlTable."
        ::= { swL3IpCtrlEntry 2 }
        
    swL3IpCtrlIpAddr OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The IP address of the interface. This object only can take the
            value of the unicast IP address."
        ::= { swL3IpCtrlEntry 3 }
        
    swL3IpCtrlIpSubnetMask OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The IP net mask for this interface."
        ::= { swL3IpCtrlEntry 4 }

    swL3IpCtrlVlanName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..32))
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the IP control entry's VLAN name. The 
            VLAN name in each entry must be unique in the IP Control Table."
        ::= { swL3IpCtrlEntry 5 }

    swL3IpCtrlProxyArp OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates enable/disable of the proxy ARP function for IPv4."
        ::= { swL3IpCtrlEntry 6 }

    swL3IpCtrlSecondary OBJECT-TYPE
        SYNTAX  TruthValue
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "When this is true(1), the IP address is the secondary IP.  When
            false(2), the IP address is the primary IP."
        ::= { swL3IpCtrlEntry 7 }
                
    swL3IpCtrlMode OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                bootp(3),
                dhcp(4)
                }                
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the IP operation mode. 

            other(1) - This entry is currently in use but the conditions under 
                which it will remain are determined by each of the following values.
            bootp(3) -  The IP address will be set automatically from a BOOTP
                server.
            dhcp(4) - The IP address will be set automatically from a DHCP
                server."
        ::= { swL3IpCtrlEntry 8 }

    swL3IpCtrlAdminState OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The state of the IP interface."
        ::= { swL3IpCtrlEntry 9 }

    swL3IpCtrlIpv4AdminState OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The IPv4 admin state of the IP interface. The default state is determined by project.
             This state will only be effective when the swL3IpCtrlAdminState is enabled."
        ::= { swL3IpCtrlEntry 10 }

--    swL3IpCtrlIpv4OperState OBJECT-TYPE
--        SYNTAX  INTEGER {
--               other(1),	
--               disabled(2)
--                }
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "The current IPv4 operational state of the IP interface.
--             If the swL3IpCtrlIpv4State is disabled, disabled(2) will be displayed.
--             Otherwise, it will be set as other(1)."
--        ::= { swL3IpCtrlEntry 11 }
        
    swL3IpCtrlIpv6AdminState OBJECT-TYPE
        SYNTAX  INTEGER {	
               enabled(1),
               disabled(2)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The IPv6 admin state of the IP interface. The default state is determined by project.
             This state will only be effective when the swL3IpCtrlAdminState is enabled."
        ::= { swL3IpCtrlEntry 12 }

--    swL3IpCtrlIpv6OperState OBJECT-TYPE
--        SYNTAX  INTEGER {
--               other(1),	
--               disabled(2)
--                }
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "The current IPv6 operational state of the IP interface. 
--          If the swL3IpCtrlIpv6State is disabled, disabled(2) will be displayed.
--          Otherwise, it will be set as other(1)."
--     ::= { swL3IpCtrlEntry 13 }
        
    swL3IpCtrlIpv6LinkLocalAddress  OBJECT-TYPE
        SYNTAX  Ipv6Address
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The IPv6 link local address for this interface."
        ::= { swL3IpCtrlEntry 14 }

    swL3IpCtrlIpv6LinkLocalPrefixLen  OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The IPv6 prefix length for this IPv6 link local address."
        ::= { swL3IpCtrlEntry 15 }
                
    swL3IpCtrlState OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This variable displays the status of the entry. The status is used
            for creating, modifying, and deleting instances of the objects 
            in this table."
        ::= { swL3IpCtrlEntry 16 }
        
    swL3IpCtrlIpv6LinkLocalAutoState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               enabled(2),
               disabled(3)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The state of the IPv6 link local auto."
        ::= { swL3IpCtrlEntry 17 } 
        
   swL3IpCtrlLocalProxyArp OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates enable/disable of the local proxy ARP function for IPv4."
        ::= { swL3IpCtrlEntry 18 }   
        
   swL3IpCtrlIpMtu  OBJECT-TYPE
        SYNTAX INTEGER
        UNITS  "bytes"
        MAX-ACCESS read-create
        STATUS  current
        DESCRIPTION
           "The MTU is the largest size of the IP datagram which may be transferred
            using a specific data link connection. The MTU value is a design parameter
            of a LAN and is a mutually agreed value (i.e. both ends of a link agree to
            use the same specific value) for most WAN links.

            The MTU range is based on the chip of the current device.
            The suggested minimum value is 1500 bytes.
            The suggested maximum value is the size of the jumbo frame minus 36.
            The suggested default setting is 1500 bytes."
        DEFVAL { 1500 }
       ::={swL3IpCtrlEntry 19}
   
   swL3IpCtrlDhcpv6ClientState OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The state of the Dhcpv6 Client."
        ::= { swL3IpCtrlEntry 20 }

    swL3IpCtrlIpDirectedBroadcastState OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The state of the IP Directed Broadcast."
        ::= { swL3IpCtrlEntry 21 }
	
    swL3IpCtrlIpDhcpOption12State OBJECT-TYPE
        SYNTAX  INTEGER {
                    enabled(1),
                    disabled(2)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Enable or disable insertion of option 12 in the DHCPDISCOVER and 
             DHCPREQUEST message."
        ::= { swL3IpCtrlEntry 22 }
    swL3IpCtrlIpDhcpOption12HostName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..63))
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Specify the host name to be inserted in the DHCPDISCOVER and 
             DHCPREQUEST message. The specified host name must start with a 
             letter, end with a letter or digit, and have only letters, digits, 
             and hyphen as interior characters; the maximal length is 63. By 
             default, the host name is empty.
             When set an empty host name, means to clear the host name setting and 
             use the default value to encode option 12."
        ::= { swL3IpCtrlEntry 23 }

    swL3IpCtrlDhcpv6ClientPDState OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The state of the Dhcpv6 Client PD."
        ::= { swL3IpCtrlEntry 24 }
        
    swL3IpCtrlDhcpv6ClientPDPrefixName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..12))
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the name for the DHCPv6 Client PD. If the 
            swL3IpCtrlDhcpv6ClientPDState is disabled, this object will be clear and can't write."
        ::= { swL3IpCtrlEntry 25 }
        
    swL3IpCtrlDhcpv6ClientPDPrefix  OBJECT-TYPE
        SYNTAX  Ipv6Address
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The IPv6 prefix obtained form delegation router."
        ::= { swL3IpCtrlEntry 26 }

    swL3IpCtrlDhcpv6ClientPDPrefixLen  OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The IPv6 prefix length for the prefix obtained from delegation router."
        ::= { swL3IpCtrlEntry 27 }
                 
    swL3Ipv6CtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3Ipv6CtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table contains IPv6 information of an IP interface."
        ::= { swL3IpCtrlMgmt 4 }

    swL3Ipv6CtrlEntry OBJECT-TYPE
        SYNTAX  SwL3Ipv6CtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of IPv6 information about a specific IP interface."
        INDEX  { swL3Ipv6CtrlInterfaceName }
        ::= { swL3Ipv6CtrlTable 1 }

    SwL3Ipv6CtrlEntry ::= 
        SEQUENCE {
            swL3Ipv6CtrlInterfaceName
                DisplayString,
            swL3Ipv6CtrlMaxReassmblySize
                INTEGER,   
            swL3Ipv6CtrlNsRetransTimer
                Unsigned32,
--            swL3Ipv6CtrlRsState
--                INTEGER,
            swL3Ipv6CtrlRaState
                INTEGER, 
            swL3Ipv6CtrlRaMinRtrAdvInterval
            	INTEGER,
            swL3Ipv6CtrlRaMaxRtrAdvInterval
            	INTEGER,	                
            swL3Ipv6CtrlRaLifeTime  
                INTEGER, 
            swL3Ipv6CtrlRaReachableTime   
                INTEGER, 
            swL3Ipv6CtrlRaRetransTime   
                Unsigned32, 
            swL3Ipv6CtrlRaHopLimit
            	INTEGER,  
            swL3Ipv6CtrlRaManagedFlag
            	INTEGER,
            swL3Ipv6CtrlRaOtherConfigFlag
            	INTEGER		 
        }
        
    swL3Ipv6CtrlInterfaceName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (1..12))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the name of the IP interface."
        ::= { swL3Ipv6CtrlEntry 1 }

    swL3Ipv6CtrlMaxReassmblySize  OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Maximum Reassembly Size of the IP interface."
        ::= { swL3Ipv6CtrlEntry 2 }
        
    swL3Ipv6CtrlNsRetransTimer  OBJECT-TYPE
        SYNTAX  Unsigned32 (0..4294967295)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Neighbor solicitation's retransmit timer.
             The unit is set in milliseconds."
        ::= { swL3Ipv6CtrlEntry 3 }

--    swL3Ipv6CtrlRsState OBJECT-TYPE
--        SYNTAX  INTEGER {
--               enabled(1),
--               disabled(2)
--               }
--        MAX-ACCESS  read-write
--        STATUS  current
--        DESCRIPTION
--            "Router solicited state."
--        ::= { swL3Ipv6CtrlEntry 4 }

    swL3Ipv6CtrlRaState OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Neighbor solicited state."
        ::= { swL3Ipv6CtrlEntry 5 }

    swL3Ipv6CtrlRaMinRtrAdvInterval  OBJECT-TYPE
        SYNTAX  INTEGER (3..1350)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The minimum time allowed between sending unsolicited multicast Router 
             Advertisements from the interface. The unit is set in seconds.             
             It must be no less than 3 seconds and no greater than .75 * MaxRtrAdvInterval.
             Default value: 0.33 * MaxRtrAdvInterval"     
        ::= { swL3Ipv6CtrlEntry 6 }

    swL3Ipv6CtrlRaMaxRtrAdvInterval  OBJECT-TYPE
        SYNTAX  INTEGER (4..1800)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The maximum time allowed between sending unsolicited multicast Router 
            Advertisements from the interface. The unit is set in seconds."
        DEFVAL {600}    
        ::= { swL3Ipv6CtrlEntry 7 }
        
    swL3Ipv6CtrlRaLifeTime  OBJECT-TYPE
        SYNTAX  INTEGER (0..9000)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Indicates the lifetime of the router as the default router."
        ::= { swL3Ipv6CtrlEntry 8 }

    swL3Ipv6CtrlRaReachableTime  OBJECT-TYPE
        SYNTAX  INTEGER (0..3600000)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Indicates the amount of time that a node can consider a neighboring 
             node reachable after receiving a reachability confirmation."
        ::= { swL3Ipv6CtrlEntry 9 }

    swL3Ipv6CtrlRaRetransTime  OBJECT-TYPE
        SYNTAX  Unsigned32 (0..4294967295)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Indicates the amount of time between retransmissions of neighbor 
             solicited messages.
             The unit is set in millisecond."
        ::= { swL3Ipv6CtrlEntry 10 }

    swL3Ipv6CtrlRaHopLimit  OBJECT-TYPE
        SYNTAX  INTEGER (0..255)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Indicates the default value of the hop limit field in the IPv6 header for 
             packets sent by hosts that receive this RA message."
        ::= { swL3Ipv6CtrlEntry 11 }

    swL3Ipv6CtrlRaManagedFlag OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "When enabled, it indicates that hosts receiving this RA must use a 
             stateful address configuration protocol to obtain an address in the addition 
             to the addresses derived from the stateless address configuration."
        ::= { swL3Ipv6CtrlEntry 12 }
 
    swL3Ipv6CtrlRaOtherConfigFlag OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "When enabled, it indicates that hosts receiving this RA must use a stateful 
             address configuration protocol to obtain an on-link address configuration information."
        ::= { swL3Ipv6CtrlEntry 13 } 
        
    swL3Ipv6AddressCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3Ipv6AddressCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table contains IPv6 address information for each IP interface."
        ::= { swL3IpCtrlMgmt 5 }

    swL3Ipv6AddressCtrlEntry OBJECT-TYPE
        SYNTAX  SwL3Ipv6AddressCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information about a specific IPv6 address."
        INDEX  { swL3Ipv6AddressCtrlInterfaceName, swL3Ipv6Address, swL3Ipv6AddressCtrlPrefixLen }
        ::= { swL3Ipv6AddressCtrlTable 1 }
        
    SwL3Ipv6AddressCtrlEntry ::= 
        SEQUENCE {
            swL3Ipv6AddressCtrlInterfaceName
            	DisplayString,
            swL3Ipv6Address
                Ipv6Address,
            swL3Ipv6AddressCtrlPrefixLen
                INTEGER,
	    swL3Ipv6AddressCtrlPreferredLifeTime
                Unsigned32,
            swL3Ipv6AddressCtrlValidLifeTime
                Unsigned32,
            swL3Ipv6AddressCtrlOnLinkFlag
                INTEGER,
            swL3Ipv6AddressCtrlAutonomousFlag
                INTEGER,
            swL3Ipv6AddressCtrlState
                RowStatus,
            swL3Ipv6AddressCtrlAddressType
            	INTEGER     
            }        

    swL3Ipv6AddressCtrlInterfaceName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (1..12))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the name of the IP interface. "
        ::= { swL3Ipv6AddressCtrlEntry 1 }   
        
    swL3Ipv6Address OBJECT-TYPE
        SYNTAX   Ipv6Address
        MAX-ACCESS read-only
        STATUS   current
        DESCRIPTION
           "Specify the IPv6 address."
        ::= { swL3Ipv6AddressCtrlEntry 2 }  

    swL3Ipv6AddressCtrlPrefixLen OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Indicates the prefix length of this IPv6 address."
        ::= { swL3Ipv6AddressCtrlEntry 3 }  
        
    swL3Ipv6AddressCtrlPreferredLifeTime  OBJECT-TYPE
        SYNTAX  Unsigned32 (0..4294967294)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Indicates the number of seconds that an address, based on the specified prefix, 
             using the stateless address configuration, remains in preferred state.  
             For an infinite valid lifetime, the value can be set to 0xffffffff."
        ::= { swL3Ipv6AddressCtrlEntry 4 }  
        
    swL3Ipv6AddressCtrlValidLifeTime  OBJECT-TYPE
        SYNTAX  Unsigned32 (0..4294967294)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Indicates the number of seconds that an address, based on the specified prefix, 
             using the stateless address configuration, remains valid.  
             For an infinite valid lifetime, the value can be set to 0xffffffff."
        ::= { swL3Ipv6AddressCtrlEntry 5 }             

    swL3Ipv6AddressCtrlOnLinkFlag OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "When enabled, the address implied by the specified prefix is available 
             on the link where the RA message is received."
        ::= { swL3Ipv6AddressCtrlEntry 6 } 

    swL3Ipv6AddressCtrlAutonomousFlag OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "When enabled, the specified prefix will be used to create an autonomous address configuration."
        ::= { swL3Ipv6AddressCtrlEntry 7 } 

    swL3Ipv6AddressCtrlState OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This variable displays the status of the entry. The status is used
            for creating, modifying, and deleting instances of the objects 
            in this table."
        ::= { swL3Ipv6AddressCtrlEntry 8 }

    swL3Ipv6AddressCtrlAddressType OBJECT-TYPE
        SYNTAX  INTEGER {
			manual(1),
			dhcpv6(2),
			stateless(3)
		}    
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
		"This object indicates the type of the IPv6 address.
 		 manual(1): the IPv6 address is configured by user.
		 dhcpv6(2): the IPv6 address is assigned by DHCPv6 server.
		 stateless(3): the IPv6 address is assigned by router advertisement."
        ::= { swL3Ipv6AddressCtrlEntry 9 } 
        
     swL3Ipv6DHCPv6CPDAddrCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3Ipv6DHCPv6CPDAddrCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table contain the information of the IPv6 address which based on DHCPv6 client PD."
        ::= { swL3IpCtrlMgmt 6 }

    swL3Ipv6DHCPv6CPDAddrCtrlEntry OBJECT-TYPE
        SYNTAX  SwL3Ipv6DHCPv6CPDAddrCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information about a specific DHCPv6 Client PD IPv6 address."
        INDEX  { swL3Ipv6DHCPv6CPDAddrCtrlInterfaceName, swL3Ipv6DHCPv6CPDAddrCtrlPrefixName, 
        				 swL3Ipv6DHCPv6CPDAddrCtrlIPv6addr, swL3Ipv6DHCPv6CPDAddrCtrlPrefixLen }
        ::= { swL3Ipv6DHCPv6CPDAddrCtrlTable 1 }
        
    SwL3Ipv6DHCPv6CPDAddrCtrlEntry ::= 
        SEQUENCE {
            swL3Ipv6DHCPv6CPDAddrCtrlInterfaceName
            	DisplayString,
            swL3Ipv6DHCPv6CPDAddrCtrlPrefixName
                DisplayString,
            swL3Ipv6DHCPv6CPDAddrCtrlIPv6addr
                Ipv6Address,
	    swL3Ipv6DHCPv6CPDAddrCtrlPrefixLen
                INTEGER,
            swL3Ipv6DHCPv6CPDAddrCtrlState
                RowStatus     
            }        
            
     swL3Ipv6DHCPv6CPDAddrCtrlInterfaceName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (1..12))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the name of the IP interface. "
        ::= { swL3Ipv6DHCPv6CPDAddrCtrlEntry 1 }   
        
    swL3Ipv6DHCPv6CPDAddrCtrlPrefixName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (1..12))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the name of the prefix based on 
            which the IPv6 address will be generate. "
        ::= { swL3Ipv6DHCPv6CPDAddrCtrlEntry 2 }
        
    swL3Ipv6DHCPv6CPDAddrCtrlIPv6addr OBJECT-TYPE
        SYNTAX   Ipv6Address
        MAX-ACCESS read-only
        STATUS   current
        DESCRIPTION
           "Specify the suffix of the IPv6 address."
        ::= { swL3Ipv6DHCPv6CPDAddrCtrlEntry 3 }  

    swL3Ipv6DHCPv6CPDAddrCtrlPrefixLen OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Indicates the prefix length of this IPv6 address."
        ::= { swL3Ipv6DHCPv6CPDAddrCtrlEntry 4 }  

    swL3Ipv6DHCPv6CPDAddrCtrlState OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This variable displays the status of the entry. The status is used
            for creating and deleting instances of the objects 
            in this table."
        ::= { swL3Ipv6DHCPv6CPDAddrCtrlEntry 5 }
        
     swL3IpCtrlAllIpIfState OBJECT-TYPE                                       
    	SYNTAX  INTEGER {
    	   other(1),                                                 
           enabled(2),                                                
           disabled(3)                                                
           }                                                          
    	MAX-ACCESS  read-write                                            
    	STATUS  current                                                   
    	DESCRIPTION                                                       
        	"This object indicates all interface function state of the device.
        	(except the loopback interface)"
    	::= { swL3IpCtrlMgmt 7 }       
    	
    swL3LoopBackIpCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3LoopBackIpCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table contains loopback IP interface information."
        ::= { swL3IpCtrlMgmt 8 }

    swL3LoopBackIpCtrlEntry OBJECT-TYPE
        SYNTAX  SwL3LoopBackIpCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information about a specific loopback IP interface."
        INDEX  { swL3LoopBackIpCtrlInterfaceName }
        ::= { swL3LoopBackIpCtrlTable 1 }

    SwL3LoopBackIpCtrlEntry ::= 
        SEQUENCE {
            swL3LoopBackIpCtrlInterfaceName
                DisplayString,
            swL3LoopBackIpCtrlIfIndex
                INTEGER,
	    swL3LoopBackIpCtrlIpAddr
                IpAddress,
            swL3LoopBackIpCtrlIpSubnetMask
                IpAddress,                  
            swL3LoopBackIpCtrlAdminState
                INTEGER,
            swL3LoopBackIpCtrlRowStatus
                RowStatus
        }
        
    swL3LoopBackIpCtrlInterfaceName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (1..12))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the name of the loopback IP interface."
        ::= { swL3LoopBackIpCtrlEntry 1 }

    swL3LoopBackIpCtrlIfIndex OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object uniquely identifies the loopback IP interface number in the
            swL3LoopBackIpCtrlTable."
        ::= { swL3LoopBackIpCtrlEntry 2 }
        
    swL3LoopBackIpCtrlIpAddr OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "The IP address of the loopback interface. This object only can take the
            value of the unicast IP address."
        ::= { swL3LoopBackIpCtrlEntry 3 }
        
    swL3LoopBackIpCtrlIpSubnetMask OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "The IP net mask for this loopback interface."
        ::= { swL3LoopBackIpCtrlEntry 4 }

    swL3LoopBackIpCtrlAdminState OBJECT-TYPE
        SYNTAX  INTEGER {
               enabled(1),
               disabled(2)
                }
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "The state of the loopback IP interface."
        ::= { swL3LoopBackIpCtrlEntry 5 }

    swL3LoopBackIpCtrlRowStatus OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This variable displays the status of the entry. The status is used
            for creating, modifying, and deleting instances of the objects 
            in this table."
        ::= { swL3LoopBackIpCtrlEntry 6 }
        
-- -----------------------------------------------------------------------------
--  swL3IpFdbMgmt           OBJECT IDENTIFIER ::= { swL3IpMgmt 2 }
-- ********************************************************************

    swL3IpFdbInfoTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3IpFdbInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A table that contains forwarding and/or filtering information.
            This information is used by the switch in determining how to
            propagate the received IP packets."
        ::= { swL3IpFdbMgmt 1 }

    swL3IpFdbInfoEntry OBJECT-TYPE
        SYNTAX  SwL3IpFdbInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "Information about a specific IP address for which the bridge 
            has some forwarding and/or filtering information."
        INDEX  { swL3IpFdbInfoIpAddr }
        ::= { swL3IpFdbInfoTable 1 }

    SwL3IpFdbInfoEntry ::= 
        SEQUENCE {
--            swL3IpFdbInfoRdIndex
--                INTEGER,
            swL3IpFdbInfoIpAddr
                IpAddress,
            swL3IpFdbInfoIpSubnetMask
                IpAddress,
            swL3IpFdbInfoPort
                INTEGER,
            swL3IpFdbInfoType
                INTEGER
        }

--    swL3IpFdbInfoRdIndex OBJECT-TYPE
--        SYNTAX  INTEGER(0..65535)
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "The object indicates the IP routing domain index, and should 
--            be associated with one of swL3IpDomainStatsIndex."
--        ::= { swL3IpFdbInfoEntry 1 }

    swL3IpFdbInfoIpAddr OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "A IP address for which switch has forwarding and/or filtering
            information."
        ::= { swL3IpFdbInfoEntry 1 }

    swL3IpFdbInfoIpSubnetMask OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "A IP net mask for this interface for which the switch has 
            forwarding and/or filtering information."
        ::= { swL3IpFdbInfoEntry 2 }
        
    swL3IpFdbInfoPort OBJECT-TYPE
        SYNTAX  INTEGER(0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Either the value '0', or the port number of the port on which
            packets having an IP address equal to the value of the 
            corresponding instance of swL3IpFdbInfoIpAddr has been seen. A 
            value of '0' indicates that the port number has not been learned
            but that switch does have some forwarding/filtering information
            about this address."
        ::= { swL3IpFdbInfoEntry 3 }

    swL3IpFdbInfoType OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                static(2),
                dynamic(3)
                }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The status of this entry."            
        ::= { swL3IpFdbInfoEntry 4 }

-- ********************************************************************
--  swL3IpFilterMgmt        OBJECT IDENTIFIER ::= { swL3IpMgmt 3 }
-- ********************************************************************

--    swL3IpFilterAddrConfig  OBJECT IDENTIFIER ::= { swL3IpFilterMgmt 1 }

--    swL3IpFilterAddrMaxSupportedEntries OBJECT-TYPE
--        SYNTAX  INTEGER(0..65535)
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "Maximum number of entries in the IP address filtering table
--            (swL3IpFilterAddrCtrlTable) ."
--        ::= { swL3IpFilterAddrConfig 1 }

--    swL3IpFilterAddrCurrentTotalEntries OBJECT-TYPE
--        SYNTAX  INTEGER(0..65535)
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "Current applied number of entries in the IP address filtering
--            table. If the swL3IpFilterAddrCtrlState = dst-src-addr, then it
--            means there are two entries in swL3IpFilterAddrCtrlTable."
--        ::= { swL3IpFilterAddrConfig 2 }

--    swL3IpFilterAddrCtrlTable OBJECT-TYPE
--        SYNTAX  SEQUENCE OF SwL3IpFilterAddrCtrlEntry
--        MAX-ACCESS  not-accessible
--        STATUS  current
--        DESCRIPTION
--            "This table defines the information for the device to filter packets
--            with specific IP addresses (either as the DA and/or as the SA).
--            The IP address can be either a unicast address or a multicast address.
--            This table has a higher priority then both the static FDB table and
--            the IGMP table. It means that if an IP address appears in this table
--            it will also appear on the static FDB table, the device will use the
--            information provided in this table to process the packet."
--        ::= { swL3IpFilterAddrConfig 3 }

--    swL3IpFilterAddrCtrlEntry OBJECT-TYPE
--        SYNTAX  SwL3IpFilterAddrCtrlEntry
--        MAX-ACCESS  not-accessible
--        STATUS  current
--        DESCRIPTION
--            "A list of information about a specific unicast/multicast IP
--            address for which the switch has filtering information."
--        INDEX  { swL3IpFilterAddrIpAddr }
--        ::= { swL3IpFilterAddrCtrlTable 1 }

--    SwL3IpFilterAddrCtrlEntry ::=
--        SEQUENCE {
--            swL3IpFilterAddrIpAddr
--                IpAddress,
--            swL3IpFilterAddrIpSktGE
--                INTEGER,
--            swL3IpFilterAddrIpSktLE
--                INTEGER,
--            swL3IpFilterAddrCtrlState
--                INTEGER
--        }

--    swL3IpFilterAddrIpAddr OBJECT-TYPE
--        SYNTAX  IpAddress
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "This object indicates a unicast/multicast IP address for which
--            the switch has filtering information. But if the
--            swL3IpFilterAddrCtrlState = src-addr, then the object can not be
--            a multicast IP address (Class D IP address)."
--        ::= { swL3IpFilterAddrCtrlEntry 1 }

--    swL3IpFilterAddrIpSktGE OBJECT-TYPE
--        SYNTAX  INTEGER
--        MAX-ACCESS  read-write
--        STATUS  current
--        DESCRIPTION
--            "This object indicates a socket number which should be greater than
--	       or equal to the used socket number"
--        ::= { swL3IpFilterAddrCtrlEntry 2 }

--    swL3IpFilterAddrIpSktLE OBJECT-TYPE
--        SYNTAX  INTEGER
--        MAX-ACCESS  read-write
--        STATUS  current
--        DESCRIPTION
--            "This object indicates a socket number which should be less than
--	       or equal to the used socket number"
--        ::= { swL3IpFilterAddrCtrlEntry 3 }

--    swL3IpFilterAddrCtrlState OBJECT-TYPE
--        SYNTAX  INTEGER {
--               other(1),
--               dst-addr(2),
--               src-addr(3),
--               dst-src-addr(4),
--               invalid(5)
--               }
--        MAX-ACCESS  read-write
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the status of this entry.

--            other (1) - This entry is currently in use but the conditions
--                under which it will remain so are different from each of the
--                following values.
--            dst-addr (2) - Received frames's destination addresses are
--                currently filtered when they match with an IP
--                address entry of the table.
--            src-addr (3) - Received frames's source addresses are currently
--                filtered when they match with an IP address entry of
--                the table.
--            dst-src-addr (4) - Received frames's destination addresses or
--                source addresses are currently filtered when they match
--                with the IP address of an entry on the table.
--            invalid (5) V If this value is written to the object, the
--                corresponding entry will be removed from the table."
--        ::= { swL3IpFilterAddrCtrlEntry 2 }

-- ********************************************************************
--  swL3IpArpAgingTime        OBJECT IDENTIFIER ::= { swL3IpMgmt 4 }
-- ********************************************************************

    swL3IpArpAgingTime OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The timeout period in minutes for aging out dynamically learned
            arp information."
        ::= { swL3IpMgmt 4 }
        
  -- ********************************************************************
--  swL3IpStaticRouteTable        OBJECT IDENTIFIER ::= { swL3IpMgmt 5 }
-- ********************************************************************  
    swL3IpStaticRouteTable OBJECT-TYPE
        SYNTAX   SEQUENCE OF SwL3IpStaticRouteEntry
        MAX-ACCESS not-accessible
        STATUS   current
        DESCRIPTION
        "This entity's IP static Routing table."
        ::= { swL3IpMgmt 5 }

    swL3IpStaticRouteEntry OBJECT-TYPE
        SYNTAX   SwL3IpStaticRouteEntry
        MAX-ACCESS not-accessible
        STATUS   current
        DESCRIPTION
           "A particular route to  a  particular  destination, under a particular policy.
           Once an entry is built,it shouldn't be modified.That is,it just supports
           create and delete actions."
        INDEX {
            swL3IpStaticRouteDest,
            swL3IpStaticRouteMask,
            swL3IpStaticRouteNextHop
            }
        ::= { swL3IpStaticRouteTable 1 }
    
    SwL3IpStaticRouteEntry ::=
        SEQUENCE {
            swL3IpStaticRouteDest
                IpAddress,
            swL3IpStaticRouteMask
                IpAddress,
            swL3IpStaticRouteBkupState
            	INTEGER,
            swL3IpStaticRouteNextHop
                IpAddress,
            swL3IpStaticRouteMetric
                INTEGER,
            swL3IpStaticRouteStatus
                INTEGER,
            swL3IpStaticRouteWeight
                INTEGER,
             swL3IpStaticRouteInterfaceName
                DisplayString

        }
    
    swL3IpStaticRouteDest OBJECT-TYPE
        SYNTAX   IpAddress
        MAX-ACCESS read-only
        STATUS   current
        DESCRIPTION
           "The destination IP address of this route.
    
           This object may not take a Multicast (Class  D)
           address value.
    
           Any assignment (implicit or  otherwise)  of  an
           instance  of  this  object to a value x must be
           rejected if the bitwise logical-AND of  x  with
           the  value of the corresponding instance of the
           swL3IpStaticRouteMask object is not equal to x."
        ::= { swL3IpStaticRouteEntry 1 }
    
    swL3IpStaticRouteMask OBJECT-TYPE
        SYNTAX   IpAddress
        MAX-ACCESS read-only
        STATUS   current
        DESCRIPTION
           "Indicate the mask to be logical-AND with the
           destination  address  before  being compared to
           the value  in  the  swL3IpStaticRouteDest  field.
           For those  systems  that  do  not support arbitrary
           subnet masks, an agent constructs the value  of
           the  swL3IpStaticRouteMask  by  reference to the IP 
           Address Class.
    
           Any assignment (implicit or  otherwise)  of  an
           instance  of  this  object to a value x must be
           rejected if the bitwise logical-AND of  x  with
           the  value of the corresponding instance of the
           swL3IpStaticRouteDest object is not equal to 
           swL3IpStaticRouteDest."
        ::= { swL3IpStaticRouteEntry 2 }

    swL3IpStaticRouteBkupState OBJECT-TYPE
        SYNTAX   INTEGER {
                    primary(1),
                    backup(2),
                    none(3)
                }
        MAX-ACCESS read-create
        STATUS   current
        DESCRIPTION
            "The routing state for this route.The value SHOULD be
            primary(1), backup(2) or none(3)."
        ::= { swL3IpStaticRouteEntry 3 }
        
    swL3IpStaticRouteNextHop OBJECT-TYPE
        SYNTAX   IpAddress
        MAX-ACCESS read-create
        STATUS   current
        DESCRIPTION
           "Specifies the IP address for the next hop router.
            An IP address of 255.255.255.255 denotes a Null interface
            as the next hop."
        ::= { swL3IpStaticRouteEntry 4 }

    swL3IpStaticRouteMetric OBJECT-TYPE
        SYNTAX   INTEGER (1..65535)
        MAX-ACCESS read-create
        STATUS   current
        DESCRIPTION
            "Specifies the routing metric for this route."
        ::= { swL3IpStaticRouteEntry 5 }

    swL3IpStaticRouteStatus OBJECT-TYPE
        SYNTAX   INTEGER {
                    other(1),
                    invalid(2),
                    valid(3),
                    active(4),
                    inActive(5)
                }
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This object indicates the status of this entry.

            other(1) - this entry is currently in use but the conditions
                under which it will remain so are different from each of
                the following values.
            invalid(2) - writing this value to the object, and then the
                corresponding entry will be removed from the table.
            valid(3) - this entry resides in the table.
            active(4) - the nextHop of this entry exists in the ARP table.
            inActive(5) - the next hop of this entry does not exist in the
            	ARP table."
        ::= { swL3IpStaticRouteEntry 6 }

     swL3IpStaticRouteWeight OBJECT-TYPE
        SYNTAX   INTEGER (0..4)
        MAX-ACCESS read-create
        STATUS   current
        DESCRIPTION
            "Specifies the weight value. Used for the weighted multipath."
        ::= { swL3IpStaticRouteEntry 7 }

     swL3IpStaticRouteInterfaceName  OBJECT-TYPE
         SYNTAX    DisplayString
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "Specifies the name of the IP interface."
        ::={ swL3IpStaticRouteEntry 8}
 
 -- -----------------------------------------------------------------------------
--  swL3IpStaticRouteTunnelTable         OBJECT IDENTIFIER ::= { swL3IpMgmt 7 }
-- -----------------------------------------------------------------------------
   swL3IpStaticRouteTunnelTable OBJECT-TYPE
        SYNTAX   SEQUENCE OF SwL3IpStaticRouteTunnelEntry 
        MAX-ACCESS not-accessible
        STATUS   current
        DESCRIPTION
        "This entity's IPv4 static Routing tunnel table."
        ::= { swL3IpMgmt 7 }

    swL3IpStaticRouteTunnelEntry OBJECT-TYPE
        SYNTAX   SwL3IpStaticRouteTunnelEntry
        MAX-ACCESS not-accessible
        STATUS   current
        DESCRIPTION
           "A particular route to a particular destination, under a particular policy.
            Once an entry is built, it cannot be modified. That is, it just supports create
            and delete actions."
        INDEX {
            swL3IpStaticRouteDest,
            swL3IpStaticRouteMask,
		   swL3IpStaticRouteTunnelInterfaceName 
            }
        ::= { swL3IpStaticRouteTunnelTable 1 }

    SwL3IpStaticRouteTunnelEntry ::=
        SEQUENCE {
            swL3IpStaticRouteTunnelInterfaceName
	    	DisplayString,       
             swL3IpStaticRouteTunnelRowStatus 
                RowStatus 
        }

    swL3IpStaticRouteTunnelInterfaceName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..12))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the name of the IP tunnel interface."
        ::= { swL3IpStaticRouteTunnelEntry 1 }   

    swL3IpStaticRouteTunnelRowStatus OBJECT-TYPE
        SYNTAX   RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { swL3IpStaticRouteTunnelEntry 2 }   

-- ********************************************************************
--  swL3RelayDnsMgmt        OBJECT IDENTIFIER ::= { swL3RelayMgmt 3 }
-- ********************************************************************

    swL3RelayDnsState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates if the DNS Relay function is enabled or 
            disabled."
        ::= { swL3RelayDnsMgmt 1 }
        
    swL3RelayDnsPrimaryServer OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the address of the primary DNS server."
        ::= { swL3RelayDnsMgmt 2 }
        
    swL3RelayDnsSecondaryServer OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the address of the secondary DNS server."
        ::= { swL3RelayDnsMgmt 3 }
    
    swL3RelayDnsCacheState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates DNS Relay cache is enabled or 
            disabled."
        ::= { swL3RelayDnsMgmt 4 }
        
    swL3RelayDnsStaticTableState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates DNS Relay static table is enabled or 
            disabled."
        ::= { swL3RelayDnsMgmt 5 }
        
    swL3RelayDnsCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3RelayDnsCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table displays the current DNS relay static table."
        ::= { swL3RelayDnsMgmt 6 }

    swL3RelayDnsCtrlEntry OBJECT-TYPE
        SYNTAX  SwL3RelayDnsCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information display the current DNS relay static 
            table."
        INDEX  { swL3RelayDnsCtrlDomainName,  swL3RelayDnsCtrlIpAddr}
        ::= { swL3RelayDnsCtrlTable 1 }

    SwL3RelayDnsCtrlEntry ::= 
        SEQUENCE {
            swL3RelayDnsCtrlDomainName
                DisplayString,
            swL3RelayDnsCtrlIpAddr
                IpAddress,
            swL3RelayDnsCtrlState
                INTEGER    
        }

    swL3RelayDnsCtrlDomainName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(1..32))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The domain name of the entry."
        ::= { swL3RelayDnsCtrlEntry 1 }
        
    swL3RelayDnsCtrlIpAddr OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS  read-only
        STATUS current
        DESCRIPTION
            "The IP address of the entry."
        ::= { swL3RelayDnsCtrlEntry 2 }

    swL3RelayDnsCtrlState OBJECT-TYPE
        SYNTAX  INTEGER {
                    other(1),
                    invalid(2),
                    valid(3)
                }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the status of this entry.
 
            other(1) - this entry is currently in use but the conditions
                under which it will remain so are different from each of
                the following values.
            invalid(2) - writing this value to the object, and then the
                corresponding entry will be removed from the table.
            valid(3) - this entry is reside in the table."
        ::= { swL3RelayDnsCtrlEntry 3 }

-- ********************************************************************
--  swL3RouteRedistriTable          OBJECT IDENTIFIER ::= { swL3MgmtMIB 5 }
-- ********************************************************************
    
    swL3RouteRedistriTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3RouteRedistriEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "Route redistribution allows routers on the network that are 
            running different routing protocols to exchange routing 
            information. This is accomplished by comparing the routes stored
            in the varios routers' routing tables and assigning appropriate
            metrics. This information is then exchanged among the various 
            routers according to the individual routers current routing 
            protocol."
        ::= { swL3MgmtMIB 5 }

    swL3RouteRedistriEntry OBJECT-TYPE
        SYNTAX  SwL3RouteRedistriEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information displaying the route redistribution table."
        INDEX  { swL3RouteRedistriSrcProtocol, swL3RouteRedistriDstProtocol}
        ::= { swL3RouteRedistriTable 1 }

    SwL3RouteRedistriEntry ::= 
        SEQUENCE {
            swL3RouteRedistriSrcProtocol
                INTEGER,
            swL3RouteRedistriDstProtocol
                INTEGER,
            swL3RouteRedistriType
                INTEGER,
            swL3RouteRedistriMetric
                Unsigned32,
            swL3RouteRedistriRowStatus
                RowStatus
        }

    swL3RouteRedistriSrcProtocol OBJECT-TYPE
        SYNTAX  INTEGER {
                    other(1),
                    rip(2),
                    ospf(3),
                    static(4),
                    local(5),
                    bgp(6)
                }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Allows the selection of the protocol of the source device."
        ::= { swL3RouteRedistriEntry 1 }
        
    swL3RouteRedistriDstProtocol OBJECT-TYPE
        SYNTAX  INTEGER {
                    other(1),
                    rip(2),
                    ospf(3),
                    bgp(6)
                }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Allows the selection of the protocol of the destination device."
        ::= { swL3RouteRedistriEntry 2 }
        
    swL3RouteRedistriType OBJECT-TYPE
        SYNTAX  INTEGER {
                    other(1),
                    all(2),
                    type-1(3),
                    type-2(4),
                    internal(5),
                    external(6),
                    inter-E1(7),
                    inter-E2(8),
                    extType1(9),
                    extType2(10)
                }
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "Allows the selection of one of the methods for calculating 
            the metric value."
        ::= { swL3RouteRedistriEntry 3 }
        
    swL3RouteRedistriMetric OBJECT-TYPE
        SYNTAX  Unsigned32
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "Allows the entry of an OSPF interface cost. This is analogous 
            to a Hop Count in the RIP routing protocol. The value '0'
            indicates default value."
        ::= { swL3RouteRedistriEntry 4 }

    swL3RouteRedistriRowStatus OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { swL3RouteRedistriEntry 5 }

-- *******************************************************************       
-- swL3RoutePreference	    OBJECT IDENTIFIER ::= { swL3MgmtMIB 9 }
-- *******************************************************************       
swL3RoutePreference	OBJECT IDENTIFIER ::= { swL3MgmtMIB 9 }
	
	swL3RoutePreferenceRIP OBJECT-TYPE
        SYNTAX  INTEGER (1..999)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Used to configure the route preference of RIP."
        ::= { swL3RoutePreference 1 }
       
	swL3RoutePreferenceStatic OBJECT-TYPE
        SYNTAX  INTEGER (1..999)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Used to configure the route preference of Static."
        ::= { swL3RoutePreference 3 }
  
    swL3RoutePreferenceLocal OBJECT-TYPE
        SYNTAX  INTEGER (0..999)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Used to read the route preference of Local."
        ::= { swL3RoutePreference 4 }    


	swL3RoutePreferenceDefault OBJECT-TYPE
        SYNTAX  INTEGER (1..999)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Used to configure the route preference of Default route."
        ::= { swL3RoutePreference 8 }
-- -----------------------------------------------------------------------------    
-- swL3VrrpOperMgmt        OBJECT IDENTIFIER ::= { swL3MgmtMIB 14 }
-- -----------------------------------------------------------------------------
-- -----------------------------------------------------------------------------
--  L3 VRRP Operations Table
-- -----------------------------------------------------------------------------

 swL3VrrpOperTable OBJECT-TYPE
     SYNTAX       SEQUENCE OF SwL3VrrpOperEntry
     MAX-ACCESS   not-accessible
     STATUS       current
     DESCRIPTION
         "Operations table for a VRRP router which consists of a
          sequence (i.e., one or more conceptual rows) of
          'swL3vrrpOperEntry' items."
     ::= { swL3VrrpOperMgmt 1 }

 swL3VrrpOperEntry OBJECT-TYPE
     SYNTAX       SwL3VrrpOperEntry
     MAX-ACCESS   not-accessible
     STATUS       current
     DESCRIPTION
         "An entry in the vrrpOperTable containing the operational
          characteristics of a virtual router. On a VRRP router,
          a given virtual router is identified by a combination
          of the IF index and VRID.

          Rows in the table cannot be modified unless the value
          of `swL3VrrpOperAdminState' is `disabled' and the
          `swL3VrrpOperState' has transitioned to `initialize'."

     INDEX    { swL3VrrpOperIfIndex, swL3VrrpOperVrId }
     ::= { swL3VrrpOperTable 1 }

 SwL3VrrpOperEntry ::=
     SEQUENCE {
     	 swL3VrrpOperIfIndex
     	     Integer32,	
         swL3VrrpOperVrId
             VrId,
         swL3VrrpOperVirtualMacAddr
             MacAddress,
         swL3VrrpOperState
             INTEGER,
         swL3VrrpOperAdminState
             INTEGER,
         swL3VrrpOperPriority
             Integer32,
         swL3VrrpOperMasterIpAddr
             IpAddress,
         swL3VrrpOperCriticalIpAddr
             IpAddress,
         swL3VrrpOperCheckCriticalIpState
             INTEGER,             
         swL3VrrpOperAuthType
             INTEGER,
         swL3VrrpOperAuthKey
             OCTET STRING,
         swL3VrrpOperAdvertisementInterval
             Integer32,
         swL3VrrpOperPreemptMode
             TruthValue,
         swL3VrrpOperVirtualRouterUpTime
             TimeStamp,
         swL3VrrpOperVirtualIpAddr
             IpAddress,
         swL3VrrpOperRowStatus
             RowStatus   
 }
 
 swL3VrrpOperIfIndex OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
            "The ifIndex value of the interface for which VRRP is
            enabled."
    ::= { swL3VrrpOperEntry 1 }

 swL3VrrpOperVrId OBJECT-TYPE
     SYNTAX       VrId
     MAX-ACCESS   read-only
     STATUS       current
     DESCRIPTION
         "This object contains the Virtual Router Identifier (VRID)."
     ::= { swL3VrrpOperEntry 2 }

 swL3VrrpOperVirtualMacAddr OBJECT-TYPE
     SYNTAX       MacAddress
     MAX-ACCESS   read-only
     STATUS       current
     DESCRIPTION
         "The virtual MAC address of the virtual router. Although this
         object can be derived from the 'swL3VrrpOperVrId' object, it is
         defined so that it is easily obtainable by a management
         application and can be included in VRRP-related SNMP traps."
     ::= { swL3VrrpOperEntry 3 }

 swL3VrrpOperState OBJECT-TYPE
     SYNTAX       INTEGER {
         initialize(1),
         backup(2),
         master(3)
     }
     MAX-ACCESS   read-only
     STATUS       current

     DESCRIPTION
         "The current state of the virtual router. This object has
         three defined values:

           - `initialize', which indicates that all the
             virtual router is waiting for a startup event.

           - `backup', which indicates the virtual router is
             monitoring the availability of the master router.

           - `master', which indicates that the virtual router
             is forwarding packets for IP addresses that are
             associated with this router.

         Setting the `swL3VrrpOperAdminState' object (below) initiates


         transitions in the value of this object."
     ::= { swL3VrrpOperEntry 4 }

 swL3VrrpOperAdminState OBJECT-TYPE
     SYNTAX       INTEGER {
         up(1),
         down(2)
     }
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "This object will enable/disable the virtual router
         function. Setting the value to `up', will transition
         the state of the virtual router from `initialize' to `backup'
         or `master', depending on the value of `swL3VrrpOperPriority'.
         Setting the value to `down', will transition  the
         router from `master' or `backup' to `initialize'. State
         transitions may not be immediate; they sometimes depend on
         other factors, such as the interface (IF) state.

         The `swL3VrrpOperAdminState' object must be set to `down' prior
         to modifying the other read-create objects in the conceptual
         row. The value of the `swL3VrrpOperRowStatus' object (below)
         must be `active', signifying that the conceptual row
         is valid (i.e., the objects are correctly set),
         in order for this object to be set to `up'."
     DEFVAL    { down }
     ::= { swL3VrrpOperEntry 5 }

 swL3VrrpOperPriority OBJECT-TYPE
     SYNTAX       Integer32 (0..255)
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "This object specifies the priority to be used for the
         virtual router master election process. Higher values imply
         higher priority.

         A priority of '0', although not settable, is sent by
         the master router to indicate that this router has ceased
         to participate in VRRP and a backup virtual router should
         transition  to become a new master.

         A priority of 255 is used for the router that owns the
         associated IP address(es)."
     DEFVAL       { 100 }
     ::= { swL3VrrpOperEntry 6 }

 swL3VrrpOperMasterIpAddr OBJECT-TYPE
     SYNTAX       IpAddress
     MAX-ACCESS   read-only
     STATUS       current
     DESCRIPTION
         "The master router's real (primary) IP address. This is
         the IP address listed as the source in VRRP advertisement
         last received by this virtual router."
     ::= { swL3VrrpOperEntry 7 }

 swL3VrrpOperCriticalIpAddr OBJECT-TYPE
     SYNTAX       IpAddress
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "In the case where there is more than one IP address for
         a given `ifIndex', this object is used to specify the IP
         address that will become the `swL3VrrpOperMasterIpAddr', should
         the virtual router transition from backup to master. If
         this object is set to 0.0.0.0, the IP address which is
         numerically lowest will be selected."
     DEFVAL       { '00000000'H } -- 0.0.0.0
     ::= { swL3VrrpOperEntry 8 }
     
 swL3VrrpOperCheckCriticalIpState OBJECT-TYPE
     SYNTAX       INTEGER{
     			other(0),
     			disabled(1),
     			enabled(2)
     			}
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "Critical IP state."
     ::= { swL3VrrpOperEntry 9 }

 swL3VrrpOperAuthType OBJECT-TYPE
     SYNTAX       INTEGER {
         noAuthentication(1),       -- VRRP protocol exchanges are not
                                    -- authenticated.
         simpleTextPassword(2),     -- Exchanges are authenticated by a
                                    -- clear text password.
         ipAuthenticationHeader(3)  -- Exchanges are authenticated using
                                    -- the IP authentication header.
     }
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "Authentication type used for VRRP protocol exchanges between
         virtual routers. This value of this object is the same for a
         given ifIndex.

         New enumerations to this list can only be added via a new
         RFC on the standards track."
     DEFVAL       { noAuthentication }
     ::= { swL3VrrpOperEntry 10 }

 swL3VrrpOperAuthKey OBJECT-TYPE
     SYNTAX       OCTET STRING (SIZE (0..16))
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "The Authentication Key. This object is set according to
         the value of the 'swL3VrrpOperAuthType' object
         ('simpleTextPassword' or 'ipAuthenticationHeader'). If the
         length of the value is less than 16 octets, the agent will
         left adjust and zero fill to 16 octets. The value of this
         object is the same for a given ifIndex.

         When read, swL3VrrpOperAuthKey always returns an Octet String
         of length zero."
     ::= { swL3VrrpOperEntry 11 }

 swL3VrrpOperAdvertisementInterval OBJECT-TYPE
     SYNTAX       Integer32 (1..255)
     UNITS        "seconds"
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "The time interval, in seconds, between sending
         advertisement messages. Only the master router sends
         VRRP advertisements."
     DEFVAL       { 1 }
     ::= { swL3VrrpOperEntry 12 }

 swL3VrrpOperPreemptMode OBJECT-TYPE
     SYNTAX       TruthValue
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "Controls whether a higher priority virtual router will
         preempt a lower priority master."
     DEFVAL       { true }
     ::= { swL3VrrpOperEntry 13 }

 swL3VrrpOperVirtualRouterUpTime OBJECT-TYPE
     SYNTAX       TimeStamp
     MAX-ACCESS   read-only
     STATUS       current
     DESCRIPTION
         "This is the value of the `sysUpTime' object when this
         virtual router (i.e., the `swL3VrrpOperState') transitioned
         out of `initialized'."
     ::= { swL3VrrpOperEntry 14 }
     
 swL3VrrpOperVirtualIpAddr OBJECT-TYPE
         SYNTAX       IpAddress
         MAX-ACCESS   read-create
         STATUS       current
         DESCRIPTION
           "The assigned IP addresses that a virtual router is
            responsible for backing up."
     ::= { swL3VrrpOperEntry 15 }

 swL3VrrpOperRowStatus OBJECT-TYPE
     SYNTAX       RowStatus
     MAX-ACCESS   read-create
     STATUS       current
     DESCRIPTION
         "The row status variable, used in accordance to installation
         and removal conventions for conceptual rows. The rowstatus of
         a currently active row in the vrrpOperTable is constrained
         by the operational state of the corresponding virtual router.
         When `vrrpOperRowStatus' is set to active(1), no other
         objects in the conceptual row, with the exception of
         `swL3VrrpOperAdminState', can be modified. Prior to setting the
         `swL3VrrpOperRowStatus' object from `active' to a different value,
         the `swL3VrrpOperAdminState' object must be set to `down' and the
         `vrrpOperState' object be transitioned to `initialize'.

         To create a row in this table, a manager sets this object
         to either createAndGo(4) or createAndWait(5). Until instances
         of all corresponding columns are appropriately configured,
         the value of the corresponding instance of the `vrrpOperRowStatus'
         column will be read as notReady(3).


         In particular, a newly created row cannot be made active(1)
         until (minimally) the corresponding instance of
         `swL3VrrpOperVrId' has been set and there is at least one active
         row in the `swL3VrrpAssoIpAddrTable' defining an associated
         IP address for the virtual router."
     ::= { swL3VrrpOperEntry 16 }

 swL3RIPUpdateTime   OBJECT-TYPE
      SYNTAX   INTEGER (5..65535)
      MAX-ACCESS    read-write
      STATUS       current
      DESCRIPTION
          "This object specifies the RIP update timer."
      DEFVAL {30}
      ::={swL3RIPTimerMgmt 1}

 swL3RIPTimeOutTime   OBJECT-TYPE
      SYNTAX   INTEGER (5..65535)
      MAX-ACCESS    read-write
      STATUS       current
      DESCRIPTION
          "This object specifies the RIP time out timer."
      DEFVAL {180}
      ::={swL3RIPTimerMgmt 2}

 swL3RIPGarbageCollectionTime   OBJECT-TYPE
      SYNTAX   INTEGER (5..65535)
      MAX-ACCESS    read-write
      STATUS       current
      DESCRIPTION
          "This object specifies the RIP garbage collection timer."
      DEFVAL {120}
      ::={swL3RIPTimerMgmt 3}

-- -----------------------------------------------------------------------------
--  swL3Route6RedistriTable          OBJECT IDENTIFIER ::= { swL3MgmtMIB 20 }
-- -----------------------------------------------------------------------------
    
    swL3Route6RedistriTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL3Route6RedistriEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "IPv6 Route redistribution allows routers on the network that are 
            running different routing protocols to exchange routing 
            information. This is accomplished by comparing the routes stored
            in the varios routers' routing tables and assigning appropriate
            metrics. This information is then exchanged among the various 
            routers according to the individual routers current routing 
            protocol."
        ::= { swL3MgmtMIB 20 }

    swL3Route6RedistriEntry OBJECT-TYPE
        SYNTAX  SwL3Route6RedistriEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information displaying the IPv6 route redistribution table."
        INDEX  { swL3Route6RedistriSrcProtocol, swL3Route6RedistriDstProtocol}
        ::= { swL3Route6RedistriTable 1 }

    SwL3Route6RedistriEntry ::= 
        SEQUENCE {
            swL3Route6RedistriSrcProtocol
                INTEGER,
            swL3Route6RedistriDstProtocol
                INTEGER,
            swL3Route6RedistriType
                INTEGER,
            swL3Route6RedistriMetric
                Unsigned32,
            swL3Route6RedistriRowStatus
                RowStatus
        }

    swL3Route6RedistriSrcProtocol OBJECT-TYPE
        SYNTAX  INTEGER {
                    local(1),
                    static(2),
                    ripng(3),
                    ospfv3(4)
                }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Allows the selection of the protocol of the source device."
        ::= { swL3Route6RedistriEntry 1 }
        
    swL3Route6RedistriDstProtocol OBJECT-TYPE
        SYNTAX  INTEGER {
                    ripng(1),
                    ospfv3(2)
                }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Allows the selection of the protocol of the destination device."
        ::= { swL3Route6RedistriEntry 2 }
        
    swL3Route6RedistriType OBJECT-TYPE
        SYNTAX  INTEGER {
                    type-1(1),
                    type-2(2),
                    all(3)
                }
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "Allows the selection of one of the methods for calculating 
            the metric value."
        ::= { swL3Route6RedistriEntry 3 }
        
    swL3Route6RedistriMetric OBJECT-TYPE
        SYNTAX  Unsigned32
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "Allows the entry of an OSPFv3 interface cost. This is analogous 
            to a Hop Count in the RIPng routing protocol. The value '0'
            indicates default value."
        ::= { swL3Route6RedistriEntry 4 }

    swL3Route6RedistriRowStatus OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This object indicates the status of this entry."
        ::= { swL3Route6RedistriEntry 5 }

END


